文件读写与精确编辑
读取带行号的文件内容,写入新文件,并用精确字符串替换完成可审计修改。
一个面向真实编码工作的 AI Agent Runtime。Bash 版本保持零运行时依赖,C、Go、Rust 版本对齐同一套 session、tool、display queue、events.jsonl 和 stream-json 行为。
页面新增的信息集中在架构一致性、事件持久化和机器可消费输出上,这些是 bash-agent 和普通 CLI wrapper 最大的差别。
按项目保存会话、turn、缓存统计和事件流。中断、compact、continue、replay 都围绕同一份 session 状态工作。
Human 输出由 display queue 消费,stream-json 模式直接面向事件,不再把展示格式和事件格式混在一起。
Bash、C、Go、Rust 共用工具定义和调用语义,上层客户端不需要为不同运行时写多套解析逻辑。
长 session 下优先保持 prompt/cache 边界稳定,降低重复输入成本,也让统计数据在版本切换后仍可兼容读取。
支持 fork 上下文、后台运行、等待结果和隔离失败,适合把探索、验证、实现拆成并行工作流。
Bash 权限模型把命令分类到 system、external、network、workspace 四个 scope,并使用类似 Linux rwx 的 read、write、execute 三种权限位;四个运行时共用同一套分类和报错语义。
下面是 2026 年 5 月基于 DeepSeek API 长会话使用数据的缓存命中趋势。它不是对所有模型的承诺,而是展示 cache-aware session、prompt 和 compact 设计在真实使用中的效果。
注:数据来自 DeepSeek API 长会话使用记录;不同 provider、模型、任务形态和缓存策略会产生不同结果。
Bash 是规格源头,C、Go、Rust 保持对应的链路层次。不同语言可以传结构体,不需要强行复制 Bash 的文件描述符限制。
最小依赖、最容易审计,适合作为行为基准。
原生二进制,保留 display queue 和 replay 展示一致性。
结构化 chain 层传递事件和展示消息,便于集成。
异步执行和强类型状态管理,保持同层队列边界。
这也解释了为什么 stream-json 更适合抽象在 event append 层:同一个事件可以同时写入 session 文件,并在机器模式下输出到 stdout。
macOS 推荐 Homebrew;Arch Linux 保留 AUR 安装;只想验证 Bash 版时也可以直接下载单文件脚本。
# install all runtimes
brew install lloydzhou/tap/bash-agent
export DEEPSEEK_API_KEY="sk-..."
bash-agent "hello"
curl -fsSL \ https://github.com/lloydzhou/bash-agent/releases/latest/download/agent.sh \ -o ~/.local/bin/bash-agent chmod +x ~/.local/bin/bash-agent
# yay yay -S bash-agent # paru paru -S bash-agent
OPENAI_BASE_URL=http://localhost:11434/v1 \ bash-agent -p openai -m llama3 "review this repo" bash-agent --output-format stream-json "run tests"
文件读写、搜索、Shell、Web、计划和子 Agent 都通过统一 tool schema 暴露。
读取带行号的文件内容,写入新文件,并用精确字符串替换完成可审计修改。
用 glob 和 ripgrep 快速定位上下文、文件和匹配片段,为后续编辑、测试和重构提供精确入口。
执行测试、构建和诊断命令;Shell 权限按类似 Linux 文件权限的 rwx 位受控,并区分 system、external、network、workspace 四个 scope。
把复杂任务拆成可跟踪步骤,锁定计划,并按需加载项目或用户定义的技能说明。
需要当前信息时搜索网页,或直接抓取 URL 内容并以结构化结果交给模型处理。
把独立调查或验证任务交给子会话并行执行,结果回注主对话继续推理。