refactor(agent): split Codex and Claude Code into direct runtimes - #1108
Closed
akazwz wants to merge 2 commits into
Closed
refactor(agent): split Codex and Claude Code into direct runtimes#1108akazwz wants to merge 2 commits into
akazwz wants to merge 2 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
将 Codex 和 Claude Code 从 ACP 内置实现中拆出,改为与通用 ACP 同级的 direct External Agent runtime。
codexruntime,直接连接 app-server 协议claude-coderuntime,直接连接 stream-json 协议acp_agent,保留自定义 ACP command 能力主要改动
external.Driver边界,Codex、Claude Code 和 ACP 共用 application orchestration、会话 fencing、事件投影、审批、Ask User 和历史持久化数据库与兼容性
新增迁移:
0144_external_agent_runtimes0145_agent_session_state0146_agent_turn_markers迁移会把旧 Codex / Claude Code ACP 配置、默认 Agent、Session、History 和 Schedule 转换为 direct runtime,并将 ACP 命名的 session state 表迁移到 Agent 命名。迁移包含对应 down 文件,已验证
146 → 143 → 146往返。凭证不会复制回 Bot metadata;direct runtime 只读取加密的 Agent credential。旧 Hermes workspace 目录仍保留 backup secret redaction,避免升级前遗留密钥进入普通备份。
QA
已完成:
工程检查:
go test ./...mise run lintgit diff --check核心场景已完成人工 QA。
已知边界
本 PR 不包含以下能力:
Continue on/ workspace target 选择bot_agentscreate_schedule工具新增 direct Agent 选择发布注意
Workspace contract 已从 v2 升到 v3。发布时必须先提供 v3 workspace image,并对旧 Bot 执行保留
/data的 workspace 重建;现有容器不会随 Server 自动升级。