Autohand Code CLI
一个运行在终端里的快速自我进化 AI 编码代理,读懂你的代码库、规划并执行修改,同时通过权限系统保留人工控制。
按维度查看评分与理由
证据显示存在权限模式(restricted/plan/YOLO)、危险操作需确认(测试验证 delete_path 需确认)、--dry-run/--patch/worktree/checkpoint 等回滚手段,Apache-2.0 完整文本与版权头齐备。扣分点:安装脚本会静默扫描 PATH 并覆盖任何名为 agent 的第三方命令(README 自认'无提示'),属过宽且默认生效的副作用;设置同步默认开启(--sync-settings default true)、代码内容发送至 LLM 的数据流仅在特性表中一笔带过,敏感数据处理无专门文档;auto-commit、git push、web search 等外部效应面广但默认行为描述不足。
vitest 测试套件(含终端集成测试 tuistory)、CI 类型检查、--frozen-lockfile、多平台构建冒烟测试均可见;actionExecutor 验证测试表明失败信息明确('search_replace requires a path argument'等)。扣分点:可靠性仅为静态推断,node-llama-cpp 等重依赖在打包中需 external 处理,postinstall 脚本执行权限修改存在环境脆弱性。
面向场景覆盖充分:交互/命令/RPC/ACP 模式、CI/CD、编辑器集成、五种语言 SDK、多模型提供商、跨平台矩阵构建并有 Windows 安装器测试,故 audience_and_scenarios 满分。扣分点:能力边界(上下文上限、失败率、'self-improving'实际程度)文档未量化;--yolo 允许/拒绝模式提供触发精度但文档深度一般。
信息架构优秀:多语言配置文档、workflows README 详尽、目录结构清晰,故满分。许可证为完整 Apache-2.0 文本且 package. 一致。扣分点:npm 包名 autohand-cli 与仓库名 code-cli、三个 bin 名并存,且 agent 这一通用名通过覆盖他人命令来'稳定',实为命名不稳定;已知限制章节缺失;有 SemVer 与发布说明生成但未见 CHANGELOG 文件;维护流程(CI、issue 表单、Dependabot)文档化但发布者身份未经核实。
输出可用性较好:stream- 事件流、-- local、git patch 输出、会话导出均有文档并有对应测试。成本控制(--max-cost、--max-iterations、--max-runtime、checkpoint)明确。扣分点:边际价值需在与 Claude Code/Codex 等同类工具对比中才能证实,仓库仅以'fast''self-evolving'等断言支撑,未提供基准;成本收益依赖未验证的性能声明。
README、package.、测试与 CI 之间交叉印证良好(版本、构建、测试命令、bin 名称一致),故 cross_source_corroboration 得分。扣分点:'Ultra fast''self-evolving'等核心营销声明无任何可追溯的测量或基准支撑;宣传语与可验证事实在 README 中未分离;本次仅静态审阅,所有执行类声明均未独立验证。
- 安装器会在无提示的情况下覆盖 PATH 上任何名为 agent 的第三方命令,安装前请确认该名称未被其他工具占用。
- curl | bash 安装方式与未验证发布者结合,建议改用 Homebrew 或源码构建并审查 install.sh。
- --sync-settings 默认开启且代码内容会发送至所选 LLM 提供商,处理敏感代码库前请核查数据流向。
- 避免在默认模式外使用 -y / --unrestricted / --yolo 等自动批准选项,并利用 --dry-run 与 worktree 隔离先行验证。
- 性能与自进化能力声明未经基准验证,评估前请自行在小规模仓库上实测。
这个 Agent 能做什么,适合哪些场景?
Autohand Code CLI 是一个终端原生的 AI 编码代理,由 Bun/TypeScript 构建,通过 `autohand` 命令在交互式 Ink REPL 或单次命令模式下运行。它读取项目上下文、规划变更、编辑文件、执行 shell 与 Git 操作,并在风险操作前请求确认,也可通过权限配置放宽或收紧控制。它提供 40 多个工具(文件操作、Git、规划、记忆、浏览器集成、子代理委派)、模块化 Agent Skills 系统、声明式代码扩展机制,以及 JSON Lines 流式输出以便脚本和 CI/CD 使用。支持 OpenRouter、OpenAI、AWS Bedrock、DeepSeek、Ollama/llama.cpp/MLX 等多种模型提供方,并有配套的 Code Agent SDK(TypeScript、Go、Python、Java、Swift)。可通过 Homebrew、curl 安装脚本、手动构建或 Docker 部署,并附带 VS Code 扩展与面向 Zed/JetBrains 的 ACP 集成。
运行 autohand 进入交互式 REPL,或用 autohand -p "..." 执行单条指令。它会读取工作区文件与项目上下文,调用 plan、read_file、write_file、apply_patch、search、semantic_search 等工具生成并应用修改,通过 run_command 执行 shell 命令,并使用 git_commit、git_push、auto_commit 等工具管理版本控制(-c/--auto-commit 可在任务完成后自动提交)。它支持 @ 文件提及、/ 斜杠命令、$ 技能补全、会话保存与 /resume 恢复。--auto-skill 会分析项目结构并生成技能包;--output-format stream- 输出 thinking、tool_start、tool_end、file_modified、result、error 等事件;--dry-run、--patch 可预览改动而不落盘。它还提供 /goal 持久目标队列、--auto-mode 自主循环(带迭代数、运行时长、成本上限)、/mcp 管理 MCP 服务器,以及 spawn_subagent 子代理委派。
- 在终端内工作的开发者,希望在不切换窗口的情况下让 AI 理解代码库并直接修复 lint/类型错误、写测试或小规模重构
- 需要把重复性工程任务接入 CI/CD 或脚本的团队,使用命令模式加
--output-format stream-解析结构化结果 - 维护多语言或陌生代码库的工程师,借助
/init生成 AGENTS.md、--auto-skill生成项目专属技能包来沉淀工作流 - 需要审查或隔离性试运行的用户,使用
--plan只读规划模式或--dry-run/--patch在应用前预览变更 - 自主批量处理任务的高级用户,启用
--auto-mode并设置--max-cost、--max-runtime、worktree 隔离与 checkpoint 间隔 - 希望在自己工具或 IDE 中嵌入代理能力的开发者,通过 Code Agent SDK(TypeScript/Go/Python/Java/Swift)或 ACP 协议集成
这个 Agent 有哪些优点和局限?
- 终端原生、无上下文切换:REPL 支持文件提及、斜杠命令、技能补全和会话恢复,全部在一个提示符内完成
- 多提供方支持(OpenRouter、OpenAI、Bedrock、DeepSeek、本地 Ollama/llama.cpp/MLX 等),避免单一模型锁定
- 权限分级明确:交互式确认、
--unrestricted、--restricted、白名单/黑名单模式,以及--plan只读规划作为安全入口 - 可扩展性强:Agent Skills(兼容 Codex 与 Claude 技能格式)、声明式代码扩展、MCP 服务器管理、40+ 内置工具
- 面向自动化的工程化输出:stream- 事件流、
--patch、worktree 隔离、成本/时长/迭代上限,适合脚本与 CI/CD
- 运行时依赖 Bun ≥1.0 和 Git(ripgrep 可选),不使用 Node 生态常规工具链的团队需额外引入 Bun
- 安装脚本会自动替换 PATH 上任何已存在的通用
agent命令且不提示,可能破坏其他工具的同名命令 - 自定义 provider 配置需手工编辑 JSON/TOML/YAML 并自行管理 API key,初次配置有一定成本
- README 声称'自我进化',但对应证据主要是技能自动生成与记忆工具;其长期自我改进效果的独立验证证据未在源中提供
- 遥测默认关闭是隐私优点,但采用前需自行审计代码(Apache-2.0 且对 ARR 超过 $5M 的公司有商业条款,见 COMMERCIAL.md)
如何安装或部署这个 Agent?
快速安装:curl -fsSL https://autohand.ai/install.sh | bash。Homebrew:brew install autohandai/code/autohand-code。手动构建需要 Bun ≥1.0 与 Git:git clone https://github.com/autohandai/code-cli.git && cd code-cli && bun install && bun run build && bun add -g .。也可使用源码中的 Dockerfile(基于 oven/bun:1)。可选安装 ripgrep 加速搜索。安装后可运行 autohand --setup 进入配置向导。
如何使用这个 Agent?
1) 配置提供方:创建 ~/.autohand/config.(或 config.toml/yaml),填入如 {"provider":"openrouter","openrouter":{"apiKey":"sk-or-...","model":"..."}};2) 交互式会话:运行 autohand,输入自然语言描述目标,用 @ 引用文件、/skills 管理技能、Shift+Tab 切换编辑/规划/YOLO/自动模式;3) 单条指令:autohand -p "add a dark mode toggle to the settings page",可加 -y 自动确认、-c 自动提交、--dry-run 预览、--output-format stream- 流式输出事件;4) 恢复会话:autohand resume --last。编辑器场景:在 VS Code 安装 AutohandAI.vscode-autohand 扩展,或在 Zed/JetBrains 通过 --acp(Agent Client Protocol)以原生外部代理运行。