Skip to content

v0.1.6 — Tab 补全

Choose a tag to compare

@shiftu shiftu released this 28 Aug 11:05
· 6 commits to main since this release

按 Tab 就有

aivet completion          # 认出你在用哪个 shell,把安装命令直接给你,照抄一行
aivet completion zsh      # 或者自己决定脚本放哪

支持 bash / zsh / fish / PowerShell。装完之后每一级都能补:

敲的 补出来
aivet <Tab> 全部命令 + 一行说明
aivet check <Tab> claude codex hermes pi dsh ccswitch(敲过的不再提示)
aivet check --<Tab> --json --live --offline --help
aivet fix <Tab> 这台机器上此刻真能修的那几项
aivet skill <Tab> install / show
aivet ask --with <Tab> 只列真能接手的 agent
aivet setup --tools claude,<Tab> 逗号续写,已选的不再出现
aivet help <Tab> 全部命令名

zsh 和 fish 还会把说明显示在候选旁边。

装一次就够

补全脚本只有十行胶水 —— 每按一次 Tab 回头问 aivet 要候选,候选从帮助那份说明书现算。
所以帮助里有什么就能补什么,两边不可能对不上;以后 aivet 升级、加命令、加修复项,
补全跟着变,不用重装。

顺带

  • aivet help --json 多了 positional 和 values:agent 不用再从 args 那句自由文本里猜某个位置能填哪几个
  • 参数解析里那份重复的「哪些选项要取值」清单删掉了,和补全共用同一处判断
  • 命令总览的名字列宽度跟着最长命令走,不再写死

已知

fish 和 PowerShell 的脚本在打包这台机器上没有对应 shell,只做了静态审查,没有实按 Tab 跑过。
两者共同的坑(空的当前词被吞掉)已经在协议层解决 —— 正在敲的词走 --cur=,永远是个非空参数。