TOKREPO · 主题包
本周新建

终端原生 AI 工作流

vim/tmux/zsh 老用户、想把 AI 灌进终端而不切走的开发者,这十个就是顺序:tmux + Neovim + kickstart.nvim + Atuin + fish-ai + AI Shell + AGENTS.md + Claude Code Hooks + Desktop Commander MCP + gptme。IDE 一次都不打开。

10 个资产

这个 pack 包含什么

2026 年用 AI 写代码有两条路。第一条:打开 Cursor(或装一把扩展的 VS Code),让 IDE 当门面。第二条:留在你住了十年的终端里,把 AI 喊过来。这个 pack 是第二条路

它假设一种很具体的开发者:vim / Neovim 用得熟、住在 tmux 里、fzf 和 ripgrep 是肌肉记忆、有一套调过的 zsh。你不想要一个 Mac 桌面 app 形态的编码 agent。你想要 AI 集成进你已经信任的那个终端,新增 GUI 越少越好。CLI 编码 agent、暴露终端工具的 MCP server、能装就装的 vim AI 插件、没有就退回 shell 层的自然语言。

十个资产,按安装顺序:workspace 基础(tmux)、塞进去的真正编辑器(Neovim + 真能教你 Lua 的 starter config)、升级的 shell 循环(真正能搜的历史、想不起 flag 时的自然语言兜底)、AI 集成层 —— 一个让所有 CLI agent 读同一份的指令文件、自动化事件循环的 hooks、给 agent 安全本地工具的 MCP server、再加一个真能塞进脚本里的终端原生自主 agent,作为 Aider / Claude Code 的替代品。

这个 pack 包含基础 CLI 工具腰带(fzf / ripgrep / lazygit / delta / yazi / btop)—— 那是另一个 pack:现代 CLI 工具腰带。两个都装。这个 pack 也不深挖单一 agent(比如 Aider)—— 那个看 Aider 终端结对编程必备这个 pack 是把所有东西串起来的工作流

推荐安装顺序(shell → 复用器 → 编辑器 → AI agent → 粘合层)

  1. tmux — 终端复用器 — 其他所有东西都在 tmux 里。编辑器一个 pane、测试 runner 看文件一个 pane、agent 一个 pane、日志一个 pane。SSH 上 detach session、明天回来一切还在。这个 pack 你只装一个,就装 tmux —— 它是「AI 在我终端里」和「AI 跟我终端打架」的分水岭。配一个 20 行的 ~/.tmux.conf:prefix 设成 C-a、pane 切换走 vim 键、scrollback 5 万行。
  2. Neovim — Vim 系超可扩展编辑器 — 编辑器 pane。Lua 脚本、原生 LSP、Tree-sitter、async job、浮动窗口 —— 所有让 vim 不像 90 年代古董的现代特性。如果你还在跑经典 Vim 8,切吧,插件生态早就搬家了。别第一天就从零写自己的配置 —— 用下一项。
  3. kickstart.nvim — 个人 Neovim 配置的起跑点 — 单文件、约 600 行、注释极详细的 Lua。开箱就是一个 IDE 级 Neovim:LSP、补全、模糊查找、Tree-sitter 全齐。关键是:你能用 20 分钟把整份配置读完,知道每一个插件干啥的。fork 它、删掉不要的、加你想要的。装满两周、知道自己要啥之前,当 NvChad / LazyVim 不存在
  4. Atuin — 带同步和搜索的魔法 shell 历史 — 把你的 shell 历史换成一个 SQLite 库,每条命令记录 cwd、退出码、耗时、主机名。按上箭头就是跨机器的模糊搜索 + 端到端加密同步。这是这个 pack 里被低估最严重的 AI 邻居工具:你想不起三周前那条 ripgrep 的精确 flag 时,Atuin 的 Ctrl-R 200 毫秒给你 —— 不调 LLM、不烧 token,纯粹是更好的基础设施。
  5. fish-ai — Fish Shell AI 快捷键(插件) — 如果你切到 fish 了:这个插件加三组快捷键 —— 注释↔命令(写 # 统计所有 js 文件的行数,转成 find . -name '*.js' | xargs wc -l)、上一条命令的 typo 修复、AI 驱动的自动补全。零切换。配置一次让它指向本地 Ollama 或云 API,然后忘掉它存在 —— 需要时才出现。如果你死守 zsh,跳到第 6 个。
  6. AI Shell — 自然语言转 shell 命令 — 第 5 个的 shell 无关版本。打 ai "列出 node_modules 里最大的 10 个文件",它建议一条命令、问你要不要跑、让你改。zsh / bash / fish 都行。心智模型和编码 agent 不一样:你不是在结对开发一个功能,是在把意图翻译成一条 pipe。当回忆助手用(忘了 find 的 flag)、当安全网用(陌生人的命令跑之前让它解释一下)。
  7. AGENTS.md — 编码 agent 指令的开放格式 — repo 根目录单个 Markdown 文件。告诉走进你代码库的任何 CLI agent:dev 环境怎么搭、测试咋跑、lint 规则、PR 规范、绝对不能动的边界。Aider / Claude Code / Codex CLI / Cursor agent 模式 / Gemini CLI —— 全部都读它(大多数是作为各自专用文件的 fallback)。一份真理来源,胜过 N 份 CLAUDE.md / .cursorrules / .windsurfrules / GEMINI.md 副本。一个 AI 沾过的 repo 里你能写的最高杠杆的 50 行 Markdown。
  8. Claude Code Hooks — 自动化你的 AI 工作流 — 工具调用、文件编辑、通知事件的前后 hook。保存时 lint、文件编辑后跑测试、长任务完成弹桌面通知、阻止写到 repo 之外的文件。Hook 配置就是事件触发的 shell 命令 —— 没有插件系统要学。就算你不用 Claude Code 当主 agent,模式也通:每个现代 CLI agent 都有 hook 对等物。从一个开始:PostToolUse: Write → ruff check $file
  9. Desktop Commander MCP — 本地终端 + 文件 — 把安全的本地终端 + 文件系统工具(含 PDF / DOCX / Excel 读取)暴露给任何支持 MCP 的 agent 的 MCP server。npx 装、把 Claude Code 或 Codex CLI 指过去,你的 agent 就能通过一个审计过的统一接口跑 shell 命令、读本地文件 —— 而不是每个 agent 重新发明自己的 shell 工具。这是不开 --dangerously-skip-permissions 就给 CLI agent 受控本地访问的办法。
  10. gptme — 终端 AI agent,自带 tools 和 MCP — 你的终端原生自主 agent。pipx install gptme、指向任何模型(Anthropic / OpenAI / 本地 Ollama),你就有一个能跑 shell、改文件、浏览网页、支持 MCP server 的 agent —— 包括 CI 脚本里能用的非交互模式。Claude Code / Codex CLI 觉得太重时用它、想脚本化 gptme "总结过去 24 小时的 git log" 时用它、需要大牌 agent 不支持的模型时用它。「agent 当 Unix 工具」的终端原生版本

它们怎么协同

┌─────────────────────────────────────────────────────────────┐
│  tmux session (#1) — workspace                              │
│                                                             │
│  ┌───────────────────┐  ┌─────────────────────────────────┐ │
│  │ Neovim (#2)       │  │ shell pane                      │ │
│  │  + kickstart (#3) │  │                                 │ │
│  │  + LSP / Treesitter│  │  zsh / fish                     │ │
│  │                   │  │   ├─ Atuin (#4)  ← 历史搜索      │ │
│  │  改文件 ────────┐  │  │   ├─ fish-ai (#5) ← NL → 命令   │ │
│  └────────────────┼──┘  │   └─ ai-shell (#6) ← NL → 命令  │ │
│                   │     │                                 │ │
│                   ▼     └──────────────┬──────────────────┘ │
│  ┌──────────────────────────────────────▼────────────────┐  │
│  │ AGENTS.md (#7) ← 每个 agent 入场必读                  │  │
│  │                                                       │  │
│  │ Claude Code Hooks (#8)                                │  │
│  │   PostToolUse: Write → lint + test                    │  │
│  │                                                       │  │
│  │ Desktop Commander MCP (#9)                            │  │
│  │   给 agent 提供 shell + 文件工具                       │  │
│  │                                                       │  │
│  │ gptme (#10) — 兜底的自主 agent,供脚本使用             │  │
│  └───────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────┘

承重墙:tmux + Neovim + AGENTS.md。没 tmux 你 alt-tab、没 Neovim 一周内回 VS Code、没 AGENTS.md 每个 agent 每次 session 都要重新认识你的 repo。其他全是升级。

如果你只有一小时:装 tmux、放 20 行 .tmux.conf、包管理器装 Neovim、git clone kickstart.nvim、写 50 行描述你技术栈的 AGENTS.md。完事。剩下六个是周末作业。

你会遇到的取舍(终端 AI vs IDE AI)

  • 可视化 diff vs 文本 diff — Cursor 和 VS Code 的 inline diff + 并排预览在大重构时确实难打。终端这边你看的是 unified diff(git diff 或 agent 自己打出来的)。反方:大多数 edit 小到 delta(在 现代 CLI 工具腰带 pack 里)给你的语法高亮 diff 完全够用。真的大重构,掉进 nvim -d 看真正的 diff 视图。95% 时间你不会想念 IDE;想念的是 30 文件大重构那天
  • inline 补全 vs 显式 prompt — Copilot 那种编辑器里的 ghost text 跟「prompt 一下 agent」是两种心智模型。Neovim 通过 copilot.vim(Microsoft 出品,TokRepo 写稿时没收 —— 直接从 GitHub 装)能上 Copilot,也有 LSP 风格的 AI 插件。但终端原生工作流倾向于显式 prompt(fish-ai / AI Shell / agent 调用),因为终端里 ghost text 很跳戏。选一种心智模型、死磕,混用会模式混乱
  • AI Shell / fish-ai vs 完整编码 agent — AI Shell 把一句话翻译成一条命令。Aider / Claude Code / gptme 跟你结对开发一个功能。别用编码 agent 跑 find . -name '*.log' -mtime +7 -delete —— 杀鸡用牛刀、慢、风险更大。别用 AI Shell 跑「给这个新 endpoint 加测试」 —— 工具错了。形态不同的活、用形态不同的工具。
  • MCP server 数量 vs 认知负担 — 你给 Claude Code / Codex CLI 加的每一个 MCP server,都是 agent 多一个要选的东西。Desktop Commander MCP(#9)把 shell + 文件包成一个 server,这是特性、不是缺陷忍住「以防万一」装 12 个 MCP server 的冲动。从一个开始(#9)、真撞到缺口再加。
  • 本地模型 vs 云端用作 shell 层 — fish-ai 和 AI Shell 支持本地 Ollama。Shell 命令对延迟很敏感 —— 你想要亚秒级响应;本地 13B 模型 2-3 秒。Shell 层 NL→命令用云(Claude Haiku / GPT-4o-mini / DeepSeek)—— 请求短、便宜。本地模型留给 agent 跑、隐私优先于速度的场景。

常见踩坑

  • dotfiles 过度工程 — 终端开发者经典翻车现场。周一装 kickstart.nvim、周五已经 fork 成 200 文件的 Lua 大楼、40 个插件一半不用。铁律:一个插件,没有三次「我真缺它」之前不装。最小可用配置就是你能读懂、能 debug、新机器上 10 分钟能复现的那个。
  • AI 套进 pipe = 越狱风险curl example.com | ai-shell 或者把任意 stdin 喂进能跑命令的编码 agent 是危险的。远程内容能藏 prompt injection,翻转 agent 的指令、跑你没让它跑的命令。硬规则:永远不要把不可信文本 pipe 进任何能执行命令的 AI 工具。AGENTS.md(#7)很好;从陌生人 repo 抓来的 AGENTS.md 盲信不好。让 agent 跟着走之前自己先读一遍
  • 文件保存自动跑 hook — Claude Code Hooks(#8)让你每次 Write 跑 shell。ruff check 很好;接到 git push 或任何破坏性操作就是灾难。让 hook 默认幂等 + 只读。长 agent session 里 hook 被触发 50 次,不应该把你的 repo 弄砖。
  • 把 agent 当主角 — 终端原生工作流是反过来的。你是主角,agent 是工具。如果你发现自己在 Neovim 里能直接干的活也在跟 gptme / Claude Code 描述,agent 已经变成拐杖了。大多数 edit 打字比 prompt 快。Agent 适合:3 文件以上重构、陌生代码库、本来要 Google 的代码。不适合:改个变量名、补个 import、修个 typo。
  • 两个 agent 抢同一个文件 — 一个 tmux pane 跑 gptme、另一个跑 Claude Code、都在改 app.py —— diff 混乱的配方。要么给它们不同文件(AGENTS.md 能约束)、要么用 git worktree 给它们不同工作树、要么 agent 跑之间 commit 一下,撞车了能 git reset
  • 跳过 AGENTS.md 因为「agent 自己能搞清楚」 — Agent 搞不清楚你的测试命令、linter、「永远别动这个文件」规则,除非你告诉它。写 AGENTS.md 的成本是一次 30 分钟。不写的成本是你的 agent 在用 pnpm 的 repo 里跑 npm test、一小时六次、永远。写。新加 linter 就更新。这是你今年能写的最高杠杆的一份文档。
安装 · 一行命令
$ tokrepo install pack/terminal-first-workflow-ai
丢给 agent,或粘到终端
包内含什么

10 个资产打包就绪

Skill#01
tmux — Terminal Multiplexer for Sessions, Windows, Panes

tmux is a terminal multiplexer that lets you switch between several programs in one terminal, detach them, and reattach them to a different terminal. Essential for SSH workflows, long-running processes, and pair programming.

by AI Open Source·97 views
$ tokrepo install tmux-terminal-multiplexer-sessions-windows-panes-6ed07802
Skill#02
Neovim — Hyperextensible Vim-Based Text Editor

Neovim is a Vim-fork focused on extensibility and usability. First-class Lua scripting, native LSP client, Tree-sitter for incremental parsing, async job control, and floating windows. The modern heir to Vim loved by developers worldwide.

by AI Open Source·117 views
$ tokrepo install neovim-hyperextensible-vim-based-text-editor-6ed06dab
Skill#03
kickstart.nvim — A Launch Point for Your Personal Neovim Configuration

Minimal single-file Neovim starter configuration that teaches you to build your own IDE from scratch using Lua and modern Neovim APIs.

by Script Depot·63 views
$ tokrepo install kickstart-nvim-launch-point-your-personal-neovim-79908211
Skill#04
Atuin — Magical Shell History with Sync and Search

Atuin replaces your existing shell history with a SQLite database, recording additional context (cwd, exit code, duration, hostname). Sync history across machines end-to-end encrypted. Interactive fuzzy search with rich filtering.

by AI Open Source·154 views
$ tokrepo install atuin-magical-shell-history-sync-search-d3b64b0c
Skill#05
fish-ai — Fish Shell AI Shortcuts (Plugin)

fish-ai adds LLM shortcuts to the Fish shell: comment↔command, typo fixing, and autocomplete via hotkeys; install it with `fisher install`.

by Script Depot·14 views
$ tokrepo install fish-ai-fish-shell-ai-shortcuts-plugin
Script#06
AI Shell — Natural Language to Shell Commands

AI Shell converts natural language into shell commands using AI. 5.2K+ stars. 13+ languages, chat mode, custom endpoints. MIT. By Builder.io.

by Script Depot·85 views
$ tokrepo install ai-shell-natural-language-shell-commands-da61dedb
Skill#07
AGENTS.md — Open Format for Coding Agent Instructions

AGENTS.md defines a predictable instruction file for coding agents: dev env tips, tests, PR rules, and repo context. Drop it at repo root.

by Prompt Lab·83 views
$ tokrepo install agents-md-open-format-for-coding-agent-instructions
Skill#08
Claude Code Hooks — Automate Your AI Workflow

Built-in automation system for Claude Code. Run shell commands on events like file edits, tool calls, and notifications. Lint on save, auto-test, and more.

by Skill Factory·187 views
$ tokrepo install claude-code-hooks-automate-your-ai-workflow-587e4918
MCP#09
Desktop Commander MCP — Local Terminal + Files

Desktop Commander MCP gives agents controlled local terminal + filesystem tools (including PDF/DOCX/Excel). Install via npx and verify by listing tools.

by MCP Hub·64 views
$ tokrepo install desktop-commander-mcp-local-terminal-files
Script#10
gptme — Terminal AI Agent with Tools & MCP

Run an autonomous AI agent in your terminal with tool-use, MCP support, and non-interactive modes for CI. Installs via pipx/uv; Python 3.10+.

by Script Depot·49 views
$ tokrepo install gptme-terminal-ai-agent-with-tools-mcp
常见问题

常见问题

用 Cursor / VS Code + Copilot 不就行吗?这不就是自虐?

如果 Cursor 对你管用就用 Cursor。这个 pack 是给那些因为非 AI 原因偏好终端的开发者(延迟、可定制性、SSH 工作流、多年攒下的肌肉记忆)—— 不想为了用 AI 就抛弃这个环境的人。赢点是一致性:本地、SSH 上的 server、远程 dev container、树莓派 —— 同一个编辑器。Cursor SSH 上跑不了。tmux + Neovim + CLI agent 能。没有道德高地 —— 这是一个部署目标的论证

用 Neovim + kickstart.nvim 必须学 Lua 吗?

它,不用。kickstart 开箱就是一个能用的编辑器:LSP、补全、模糊查找、Tree-sitter 全齐,第一天就能高效写代码。它,就要学 —— 但 kickstart 整个教学要点就在于:整份配置是一个注释极详细的 Lua 文件。你通过读 600 行学 Lua,不是靠刷教程。大多数人第一周加三四个定制(配色方案、leader 键绑定、多一个 LSP server),这点 Lua 用量够你顶几个月。别预先学 Lua —— 改 kickstart 的时候顺便学

Claude Code 和 Codex CLI 已经在终端工作了。为啥还要装其他层?

Claude Code 很优秀,但它是一个 agent、基本锁 Anthropic、有自己的 UI。其他选品不冗余 —— 它们补的是空缺。tmux(#1)让 Claude Code 跟你的编辑器和测试 runner 并存。AGENTS.md(#7)让 Claude Code / Codex / Aider / Gemini 读同一份简报。Hooks(#8)自动化 Claude Code 自己做不了的「edit 后循环」。Desktop Commander MCP(#9)给 Claude Code 统一的文件 + shell 工具。gptme(#10)是 Claude Code 不支持那个模型时的兜底、或者你想把 agent 嵌进非交互 CI 脚本时的选择。Claude Code 是好 agent;这个 pack 是围绕它的 workspace

AI Shell(#6)在生产服务器上跑安全吗?

走只读姿态:AI Shell 建议、确认。只要你保留确认这一步(别开 --yes 自动跑),它不比从 Stack Overflow 复制粘贴更危险 —— 甚至更安全,因为它会在跑之前解释这条命令做啥。硬规则:别让 AI Shell 自动执行(不开 --yes、不 pipe 进非交互脚本)、永远不要在一次失误就毁数据的服务器上跑。在生产,手动把建议的命令复制进终端、读两遍。模型没问题;自动执行才是风险。

第一天的真正赢点是什么 —— 我先做什么?

两小时、按顺序。(1) brew install tmux neovim atuin(或 apt / dnf 对应)。(2) 写 20 行 ~/.tmux.confset -g prefix C-abind | split-window -hbind - split-window -v、vim 键 pane 切换、鼠标开、scrollback 5 万行。(3) git clone https://github.com/nvim-lua/kickstart.nvim ~/.config/nvim、跑 nvim —— 等插件装完、重启。(4) 跑 atuin init zsh(或 fish / bash)、source 一下;按上箭头感受差别。(5) 打开你主项目、根目录写 30 行 AGENTS.md:技术栈说明、测试命令、lint 命令、三个永远别动的东西。第一天就这些。#5-10 是第二个周末的活。

更多主题包

12 个主题包 · 80+ 精选资产

回首页浏览全部精选合集

返回主题包总览