智能目录跳转
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_a10ab3ad/zoxide。
技能介绍
你在终端里反复输全路径的问题
日常开发里,cd 只能认完整路径或相对路径。项目名很长、目录层级很深时,你会不断翻历史命令或依赖 TAB 补全。更麻烦的是同名片段(例如多个 foo)——cd 不会记住你「更常去哪一个」。
这个技能怎么工作
本技能封装 zoxide:用 frecency(访问频率 + 最近使用)给目录打分,把「部分名称」映射到最可能的目标路径。
- 智能匹配:输入关键词,调用
zoxide query,返回当前权重最高的目录。 - 交互式选择:多个候选接近时,用
zoxide query -i列出列表,避免误跳。 - 历史维护:进入目录会被记录;可用
add手动写入、prune清理已不存在的路径。
典型流程是:先让 zoxide 在 Shell 里接管跳转(z / zi),需要脚本或 Agent 集成时,用附带的 Python 封装做 query / add / prune,把路径字符串交给后续步骤(例如再 cd 或打开工程)。
边界与注意点
- 依赖本机 zoxide:未安装或
PATH里没有zoxide时,封装层无法代替二进制本身。 - 匹配不是魔法:长期不用的陈旧条目、权重相近的同名目录,可能跳到「你以为的另一个」——应清理数据库或走交互模式确认。
- 权限与数据库:默认库在
~/.local/share/zoxide/db.zo(各平台路径可能不同);权限异常或库损坏时需要初始化/备份重建,而不是盲目重复查询。
使用场景
- 在十几个 Git 仓库之间频繁切换时,输入项目名片段,用 zoxide 跳到权重最高的仓库根目录。
- 编写 Agent 或 CI 脚本时,根据用户给出的目录关键词调用 `query`,拿到绝对路径再执行后续命令。
- 迁移或删除本地目录后,运行 `prune` 清理数据库中已失效的路径,避免误跳到旧位置。
- 多个候选目录得分接近时,用 `zoxide query -i` 在交互列表里选定本次要进入的工程目录。
适合人员
- 每天在十多个 monorepo / 服务仓库根目录间来回 `cd` 的后端工程师,想用短关键词代替完整路径。
- 按客户或环境维护多套部署目录的 DevOps,需要快速进入指定环境的配置或发布目录。
- 为 coding agent 实现「打开某项目」能力的集成开发者,要把用户说的项目名片段解析为真实路径。
- 长期用 tmux 多窗格、各窗格 cwd 不同的全栈开发者,希望减少重复输入深层目录路径。