IRIS — 终端自动补全的快速 Fig 替代方案
如果你曾在 macOS 终端中使用过 Fig 进行命令自动补全,你可能还记得 2024 年秋季的坏消息。该项目被关闭,相关工作被整合到 Amazon Q Developer 中,需要强制登录云端且界面笨重。
终端中的 IntelliSense 风格自动补全确实很有用。你很快就会习惯这种便利:开始输入一个工具名称,菜单就会弹出,显示参数、Git 分支或选项。
IRIS 项目作者决定从头重建这个概念。他们没有使用 Electron 和服务器依赖,而是创建了一个单一的 Go 二进制文件,直接在 TTY 中渲染弹出建议。

为什么 TTY 能改变一切
像 Fig 这样的传统图形覆盖层与特定的操作系统和图形终端紧密耦合。尝试将 Fig 的覆盖层转发到远程 Linux 服务器的 SSH 会话中,或在裸虚拟控制台中运行它——什么都行不通。
IRIS 采用了不同的方法。它直接注入终端输出(TTY),使其在各种环境中原生工作:
- macOS 和 Linux 上的本地终端
- 通过 SSH 的远程会话
- tmux 内的会话
- 没有图形界面的 Linux 虚拟控制台
在服务器上设置环境就像复制一个文件一样简单。无需为 Zsh 或 Fish 安装插件管理器,无需寻找主题,也无需下载数 GB 的依赖项。
内部结构和工作原理
IRIS 为你的别名和命令历史建立索引。当你开始输入时,该工具会从你的历史记录或命令规范中提取最相关的建议。
提供两种视觉样式:现代和经典。现代样式看起来更柔和,使用 Nerd Fonts 图标,而经典样式更简单,更接近传统的 TUI 界面。

一个突出的特点是神经网络支持。如果你想要上下文感知的建议,你可以在配置中启用 AI 提供商。开箱即用,它支持:
- Groq(通过云 API 工作,一个免费密钥即可)
- Ollama(适用于运行本地模型的用户,如
qwen2.5-coder)
输入防抖由 debounce_ms 参数控制。如果你习惯快速打字,AI 不会在每次按键时都向你发送请求。

配置文件使用简单的 TOML 结构,位于 ~/.config/iris/config.toml。更改会被即时获取,因此无需重启 shell。
[core]
mode = "last"
expand-alias = true
[ui]
style = "modern"
ghost-text = true
nerd-fonts = true
[ai]
enabled = false
provider = "ollama"
[ai.providers.ollama]
endpoint = "http://localhost:11434/v1/chat/completions"
model = "qwen2.5-coder"
timeout_ms = 5000
注意事项和安装提示
有多种方式可以安装该工具。AUR 有 iris-autocomplete 包,Homebrew 有 versenilvis/iris/iris formula。Nix Flakes 用户也可以找到预构建的包,以及 GitHub releases 中的常规 Debian .deb 和 .rpm 包。
启动前,禁用你正在使用的任何现有自动补全插件。诸如 zsh-autosuggestions 或 atuin 之类的工具会拦截按键组合,并在屏幕上显示重复文本。
Windows 暂不支持。该操作系统的开发者需要在 WSL 内运行该工具。
菜单导航使用熟悉的快捷键:
- Alt+1 — 隐藏或显示菜单
- Alt+2 — 插入选定的命令
- Alt+3 — 接受幽灵文本建议
- Alt+4 — 切换模式(历史或规格)
在调试模式下,Alt+5 会记录你在控制台中输入的所有内容。提交错误报告时记住这一点,以避免意外泄露密码或私钥。
值得一试吗
如果你怀念 Fig,或者厌倦了在十几台服务器上配置相同的自动补全插件,IRIS 看起来是一个明智的选择。它不需要注册,轻量级,启动快速。
该项目采用 0BSD 许可证开源,这意味着代码可以完全免费用于任何用途。
相关项目