Skip to main content

Crate hey

Crate hey 

Source
Expand description

hey — minimal terminal AI coding agent 内核(库化入口)。

设计见 docs/DESIGN.md。库化用法:直接调用模块 API—— agent::run_agent(核心循环,不 exit)、tools::Registryui::Output trait、 config::Config。错误通过 RunStats.end_reason 传播,调用方决定退出行为 (二进制 CLI 在 main 层处理退出码,库化嵌入不受影响)。

Modules§

agent
Agent 循环(docs/DESIGN.md §4):请求 → 流式 → 工具 → 回填。
config
配置:单文件 TOML + env(HEY_*)+ CLI 覆盖(见 docs/DESIGN.md §8)。
llm
Provider trait + 流式增量 + 错误分类 + 工厂。
mcp
MCP stdio 客户端(docs/DESIGN.md §9.2):启动子进程,JSON-RPC 2.0 走 stdin/stdout。
proxy
代理:解析(CLI > 配置 > 环境变量)+ reqwest client 构建(见 docs/DESIGN.md §9)。
sessions
会话(docs/DESIGN.md §7):JSONL 追加,每条带稳定 id。
skills
Skills(docs/DESIGN.md §6.1):文件级指令的载体,自我进化闭环的刀片。
tools
工具抽象 + bash 输出过滤 + 5 个内建工具(docs/DESIGN.md §5/§13)。
trust
项目信任(docs/DESIGN.md §8):~/.config/hey/trust.json
ui
输出层:Output trait(唯一 UI 契约)+ 终端打印 / JSON 事件流实现。