Directories
¶
| Path | Synopsis |
|---|---|
|
Package core 实现 loop 引擎:NewAgent 组装 Provider、Hook 与工具,
|
Package core 实现 loop 引擎:NewAgent 组装 Provider、Hook 与工具, |
|
examples
|
|
|
chat
command
ezloop 完整 agent 示例:集成框架全部能力(openai 流式 + 全部 warp/hook, 含并行分身 task 与人机交互 approve/askuser/taskplan 的 CLI 桥接)。
|
ezloop 完整 agent 示例:集成框架全部能力(openai 流式 + 全部 warp/hook, 含并行分身 task 与人机交互 approve/askuser/taskplan 的 CLI 桥接)。 |
|
provider
command
ezloop 完整 agent 示例:集成框架全部能力。
|
ezloop 完整 agent 示例:集成框架全部能力。 |
|
ext
|
|
|
fs
Package fs 定义 ext 层共享的最小文件系统接口:filetools、offload、 skill、localsession 等中间件依赖此抽象,便于注入内存 FS(测试) 或本地实现(生产)。
|
Package fs 定义 ext 层共享的最小文件系统接口:filetools、offload、 skill、localsession 等中间件依赖此抽象,便于注入内存 FS(测试) 或本地实现(生产)。 |
|
hook/approve
Package approve 提供工具调用审批:工具执行前发审批事件并阻塞等待 使用方经 Decisions channel 送回的决策。
|
Package approve 提供工具调用审批:工具执行前发审批事件并阻塞等待 使用方经 Decisions channel 送回的决策。 |
|
hook/askuser
Package askuser 提供 ask_user 工具:模型向用户提问,循环中断等待回答, 回答作为工具结果进入消息历史。
|
Package askuser 提供 ask_user 工具:模型向用户提问,循环中断等待回答, 回答作为工具结果进入消息历史。 |
|
hook/contextfix
Package contextfix 在每次 Run 开始时修理消息历史,双向修补: 补缺 —— assistant 的 tool_call 缺少对应 tool 结果时补占位消息; 删孤 —— tool 结果消息对应的 assistant 调用已丢失时删除(保留会被 API 拒绝)。
|
Package contextfix 在每次 Run 开始时修理消息历史,双向修补: 补缺 —— assistant 的 tool_call 缺少对应 tool 结果时补占位消息; 删孤 —— tool 结果消息对应的 assistant 调用已丢失时删除(保留会被 API 拒绝)。 |
|
hook/filetools
Package filetools 提供四个原子工具:read_file / write_file / edit_file / terminal,通过 StartHook 注入,依赖 fs.FileSystem 最小接口。
|
Package filetools 提供四个原子工具:read_file / write_file / edit_file / terminal,通过 StartHook 注入,依赖 fs.FileSystem 最小接口。 |
|
hook/internal/await
Package await 提供决策路由器:人机交互 hook(approve/askuser/taskplan) 的多个等待者共享同一个决策 channel,并发判定下投递到谁 是随机的—— Router 按 key(CallID)把值路由到正确的等待者:错配的暂存并广播唤醒, 等待者重查暂存。
|
Package await 提供决策路由器:人机交互 hook(approve/askuser/taskplan) 的多个等待者共享同一个决策 channel,并发判定下投递到谁 是随机的—— Router 按 key(CallID)把值路由到正确的等待者:错配的暂存并广播唤醒, 等待者重查暂存。 |
|
hook/localsession
Package localsession 将 session 以文件形式持久化到本地文件系统: EndHook 时把完整可恢复状态(消息历史、用量、停止原因)写入 sessions/<id>.json,同一 ID 每轮滚动覆盖为最新快照。
|
Package localsession 将 session 以文件形式持久化到本地文件系统: EndHook 时把完整可恢复状态(消息历史、用量、停止原因)写入 sessions/<id>.json,同一 ID 每轮滚动覆盖为最新快照。 |
|
hook/mcp
Package mcp 通过单一 mcp_router 工具封装全部 MCP 调用。
|
Package mcp 通过单一 mcp_router 工具封装全部 MCP 调用。 |
|
hook/offload
Package offload 是 ToolEndHook:超大工具结果卸载到文件系统, 上下文里只保留头部摘要与文件路径,防止大输出(日志、转储、目录遍历) 撑爆上下文。
|
Package offload 是 ToolEndHook:超大工具结果卸载到文件系统, 上下文里只保留头部摘要与文件路径,防止大输出(日志、转储、目录遍历) 撑爆上下文。 |
|
hook/skill
Package skill 将预定义技能指令按需注入 system prompt。
|
Package skill 将预定义技能指令按需注入 system prompt。 |
|
hook/summary
Package summary 在 loop 结束时调用模型对整个过程生成摘要, 结果写入 state.Metadata["summary"](失败不阻断主流程)。
|
Package summary 在 loop 结束时调用模型对整个过程生成摘要, 结果写入 state.Metadata["summary"](失败不阻断主流程)。 |
|
hook/task
Package task 提供 task 工具:一个"并行分身"工具(fork)。
|
Package task 提供 task 工具:一个"并行分身"工具(fork)。 |
|
hook/taskplan
Package taskplan 提供 task_plan 工具:模型提交任务规划后中断等待 用户处置——执行 / 拒绝 / 按修改意见调整后重新提交。
|
Package taskplan 提供 task_plan 工具:模型提交任务规划后中断等待 用户处置——执行 / 拒绝 / 按修改意见调整后重新提交。 |
|
provider/openai
Package openai 实现 OpenAI 兼容协议的 Provider, 任何兼容 /chat/completions 的端点(OpenAI/DeepSeek/vLLM/Ollama 等) 只需替换 BaseURL 即可接入。
|
Package openai 实现 OpenAI 兼容协议的 Provider, 任何兼容 /chat/completions 的端点(OpenAI/DeepSeek/vLLM/Ollama 等) 只需替换 BaseURL 即可接入。 |
|
warp/model/modelretry
Package modelretry 是 provider 装饰器:对模型调用做指数退避重试。
|
Package modelretry 是 provider 装饰器:对模型调用做指数退避重试。 |
|
warp/tool/limit
Package limit 是工具节点中间件:跨全部工具共享一个信号量,限制同一 时刻实际执行的工具调用数——模型一轮 fan-out N 个调用时(引擎默认全并发), 保护外部资源不被 N 路同时打挂(rate-limit / DB 连接 / 外呼风暴)。
|
Package limit 是工具节点中间件:跨全部工具共享一个信号量,限制同一 时刻实际执行的工具调用数——模型一轮 fan-out N 个调用时(引擎默认全并发), 保护外部资源不被 N 路同时打挂(rate-limit / DB 连接 / 外呼风暴)。 |
|
warp/tool/safetool
Package safetool 是工具节点中间件:panic 恢复为 error、error 附带工具名, 单个工具的崩溃不会炸掉整个 agent loop(工具错误由引擎回传模型自纠)。
|
Package safetool 是工具节点中间件:panic 恢复为 error、error 附带工具名, 单个工具的崩溃不会炸掉整个 agent loop(工具错误由引擎回传模型自纠)。 |
|
Package hook 定义 loop 引擎的全部扩展点,采用小接口隔离: 扩展只需实现关心的接口,NewAgent 内部类型断言归位。
|
Package hook 定义 loop 引擎的全部扩展点,采用小接口隔离: 扩展只需实现关心的接口,NewAgent 内部类型断言归位。 |
|
internal
|
|
|
testutil
Package testutil 提供各包测试共享的 mock:脚本式 Provider、 阻塞 Provider、echo 工具与响应构造器。
|
Package testutil 提供各包测试共享的 mock:脚本式 Provider、 阻塞 Provider、echo 工具与响应构造器。 |
|
Package provider 抽象模型调用节点,换模型/多模型路由均通过实现本接口扩展。
|
Package provider 抽象模型调用节点,换模型/多模型路由均通过实现本接口扩展。 |
|
Package warp 定义节点装饰器:与 hook(横向切面,管节点前后)平级,
|
Package warp 定义节点装饰器:与 hook(横向切面,管节点前后)平级, |
Click to show internal directories.
Click to hide internal directories.