接入 AGC 独立 Agent 试验模式
新增 agent_runtime 配置并通过 stdio App Server 启动独立 Agent 接通后台、交互和 DirectProject 文本回合,保留旧 Codex 回退 对未接入的 function tool 明确失败,避免静默丢失工具调用 补充 AGC 配置回归与实施边界文档
This commit is contained in:
@@ -5,19 +5,20 @@
|
||||
让 AGC 的 Codex 模式改由独立 `rust/` workspace 的 Agent Kernel/Engine 执行,
|
||||
同时保留 AGC 宿主对项目、工具权限、审批、Runtime 持久化、预览和完成门的控制。
|
||||
|
||||
## 第一阶段:兼容桥(当前)
|
||||
## 第一阶段:独立进程试验(已完成)
|
||||
|
||||
- 在 AGC 与独立 workspace 之间建立明确的 `AgentTurnAdapter` 边界,不让两套
|
||||
`agent-runtime-core` 类型直接互相泄漏。
|
||||
- 输入:AGC 的消息历史、模型配置、工具定义、当前 Agent 身份和取消信号。
|
||||
- 输出:文本增量、结构化 tool call、工具结果、终态错误和可审计事件。
|
||||
- AGC 继续执行工具动作并写入自己的 Runtime;新 Engine 不创建第二套项目状态机。
|
||||
- 同步 Engine 与 AGC Tokio 的连接通过独立受控线程/有界 channel,禁止在同一 Tokio
|
||||
worker 内直接 `block_on`。
|
||||
- `agent-cli app-server --stdio` 已提供独立 JSON-RPC JSONL 服务;AGC 通过
|
||||
`agent_runtime_client.rs` 以外部子进程连接,不共享 Rust 类型、SQLite 或 Codex。
|
||||
- `agent_runtime` 模式已接入后台 Provider 回合、交互回合和 DirectProject/首页直聊入口;
|
||||
文本消息会转换为新 Agent 的一次 `run/start`,结果再映射回现有 `LlmRunResponse`。
|
||||
- `GENARRATIVE_AGENT_RUNTIME_PROGRAM` 可指定 Agent 可执行文件,默认从 PATH 查找 `agent`;
|
||||
子进程使用独立临时目录、HOME、DB 和环境,旧 Codex 模式仍可回退。
|
||||
- 当前只替换无 function tool 的文本推理;带工具的 AGC 回合会明确失败,不伪装迁移
|
||||
AGC 工具调用、审批、项目 Runtime 或预览完成门。这些仍留在 AGC,后续按协议逐项接入。
|
||||
|
||||
## 第二阶段:实验模式
|
||||
## 第二阶段:工具协议实验(下一步)
|
||||
|
||||
- 新增 `agent_runtime` 模式,仅作为可回滚实验开关,默认仍使用现有 Codex 模式。
|
||||
- 保持 `agent_runtime` 为可回滚实验开关,默认仍使用现有 Codex 模式。
|
||||
- 先覆盖文本回复、单工具调用、工具结果回传、拒绝/取消/超时和事件顺序。
|
||||
- 使用现有 AGC fixture 对比旧 Codex 模式和新 Engine:消息、工具调用参数、Runtime
|
||||
事件、错误分类和终态必须一致。
|
||||
|
||||
Reference in New Issue
Block a user