Repolode
mrnugget

mrnugget/jev-shell-history

zsh 插件,基于 TypeSafe Jev API 对近期历史命令排序,以鱼式灰色提示补全输入。

Star
119
Fork
10
未关闭 Issue
4
最近提交
上个月

这是什么?

jev-shell-history 为 zsh 增加类似 fish 的命令自动建议。输入时,插件会读取最近的若干条不重复历史命令,并调用 TypeSafe Jev API 判断你最可能要补全的是哪一条。最佳匹配会以灰色显示在光标后,并附带分数,按右方向键、^E 或 End 即可接受。

插件有两种工作模式。前缀模式下,如果历史中有命令以当前输入开头,则只在这些命令中给出建议。模糊模式下,若没有前缀匹配,则让 API 从整个近期列表中挑选可能的命令,并且只有分数超过可配置阈值时才显示建议。每次按键发起一次后台请求,缓冲区变化后过期的响应会被丢弃。

运行需要 zsh 5.9+、Node 22+ 和 TypeSafe API 密钥。历史条数、最少输入字符数、阈值、高亮样式和模型等均可通过环境变量配置。

核心功能

  • 01输入时在光标后以灰色显示近期 zsh 历史的内联建议。
  • 02支持在 emacs 和 vi 键位下用右方向键、^E 或 End 接受建议。
  • 03借助 TypeSafe Jev API 对候选命令排序并显示分数。
  • 04没有历史命令以当前输入开头时,回退到模糊匹配。
  • 05请求在后台执行,不会阻塞命令行提示符。

适用场景

  • 快速调出之前执行过的长命令或带多个参数的命令。
  • 补全与历史记录开头不同但语义相近的命令。
  • 在个人机器上体验 AI 排序的 shell 命令建议。

快速上手

  1. 1

    将仓库克隆到 ~/.zsh/jev-shell-history

    git clone <this repo> ~/.zsh/jev-shell-history
  2. 2

    安装 npm 依赖

    cd ~/.zsh/jev-shell-history && npm install
  3. 3

    在 ~/.zshrc 中设置 TypeSafe API 密钥

    export TYPESAFE_API_KEY=...
  4. 4

    在 ~/.zshrc 中加载插件

    source ~/.zsh/jev-shell-history/zsh/jev-shell-history.plugin.zsh

使用前须知

  • 需要 TypeSafe API 密钥,并会将你的命令历史发送到 Jev API。
  • 每次按键都会发起一次 API 请求,每次延迟约 0.7–0.9 秒。
  • 需要 zsh 5.9 及以上版本和 Node 22 及以上版本。
  • README 未说明许可证。

标签

常见问题

jev-shell-history 是什么?
zsh 插件,基于 TypeSafe Jev API 对近期历史命令排序,以鱼式灰色提示补全输入。 jev-shell-history 为 zsh 增加类似 fish 的命令自动建议。输入时,插件会读取最近的若干条不重复历史命令,并调用 TypeSafe Jev API 判断你最可能要补全的是哪一条。最佳匹配会以灰色显示在光标后,并附带分数,按右方向键、^E 或 End 即可接受。
jev-shell-history 可以免费使用吗?用的什么许可证?
jev-shell-history 没有声明许可证。代码虽然公开,但没有许可证就没有明确的使用授权,正式使用前建议先联系作者。
jev-shell-history 还在维护吗?
半年内有更新。jev-shell-history 最近一次提交是在 2026年9月18日。
jev-shell-history 适合用来做什么?
快速调出之前执行过的长命令或带多个参数的命令。 补全与历史记录开头不同但语义相近的命令。 在个人机器上体验 AI 排序的 shell 命令建议。
jev-shell-history 怎么安装和运行?
将仓库克隆到 ~/.zsh/jev-shell-history: git clone <this repo> ~/.zsh/jev-shell-history 安装 npm 依赖: cd ~/.zsh/jev-shell-history && npm install 在 ~/.zshrc 中设置 TypeSafe API 密钥: export TYPESAFE_API_KEY=... 在 ~/.zshrc 中加载插件: source ~/.zsh/jev-shell-history/zsh/jev-shell-history.plugin.zsh
在哪里获取 jev-shell-history?
源代码和安装说明在 GitHub 上:https://github.com/mrnugget/jev-shell-history

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目