
deja 是一个给 zsh 做预测式行内建议的命令行工具,可以把它理解成更聪明的 zsh-autosuggestions 替代方案。传统历史补全通常只会找“从你当前输入开头匹配”的命令;deja 则会结合模糊匹配、当前目录、最近使用频率和命令序列,尽量猜出你真正想运行的下一条命令,并以灰色 ghost text 的形式直接显示在当前行。
它的重点是轻和本地。README 里写得很直接:没有账号、没有同步服务器、没有 TUI,所有数据都留在本机 SQLite 数据库里。架构上,一个 Go 写的后台 daemon 服务所有终端窗口,zsh widget 每次按键通过 Unix socket 查询建议,目标响应时间小于 1ms。对经常在终端里重复跑构建、测试、git、部署命令的人来说,这种“不打断当前输入”的提示比弹出面板更顺手。
deja 的排序信号也比较朴素但实用:fuzzy match 负责容错输入,frecency 把频率和近期使用合在一起,directory affinity 让某个项目目录里的常用命令排得更靠前,sequence score 则学习“你通常在 make build 之后会跑什么”。比如你刚在某个仓库里跑完构建,它就更有机会把测试命令提前推出来,而不是只机械复读历史记录。
安装路径也偏开发者友好:可以通过 Homebrew tap 安装,也可以用 curl installer;首次使用会导入 ~/.zsh_history,再把 eval "$(deja init zsh)" 加进 ~/.zshrc。截至这次整理,项目约 72 stars,主语言是 Go,许可证为 MIT,最新 release 是 v0.2.5。它还很年轻,但方向清晰:不是做一个新的终端界面,而是把命令建议这件小事做得更懂上下文。
传送门
https://github.com/Giammarco-Ferranti/deja
原创文章,如若转载,请注明出处:https://wefound.cc/p/3173.html