Citadel 编码代理运行层
让 Claude Code 与 Codex 的多步骤仓库工作可恢复、可验证、可协调。
按维度查看评分与理由
证据显示有权限最小化设计:默认本地状态、禁止自动传输、.env保护、路径检查、外部操作门控。用户确认机制存在(审批门、明确同意)。数据流透明性有文档(SECURITY.md、THREAT_MODEL.md)。敏感数据处理有保护(.env保护、私有状态指导)。依赖安全仅部分:有依赖固定(GitHub Actions),但未提供依赖审计或漏洞扫描证据。外部影响有控制(禁止推送、发布等)。回滚有文档(INSTALL.md、/unharness)。来源归属:作者身份未验证,但许可证和仓库元数据存在。扣分:依赖安全证据不足,来源归属因发布者未验证而受限。
自一致性:README、SECURITY.md、package.json 描述一致,功能与文档匹配。依赖可用性:Node.js 18+ 要求明确,但未提供依赖锁定文件或完整性校验。失败消息:有错误处理文档(stderr 镜像、阻止原因)。扣分:依赖可用性证据不足。
受众和场景:明确面向 Claude Code 和 Codex 用户,提供多种使用场景。能力边界:文档明确说明不替代代码审查、分支保护等。触发精度:/do 命令有明确路由逻辑。环境适配:支持 Windows、Node.js 18+,有运行时适配器。扣分:无重大扣分。
信息架构:文档结构清晰,有 docs/ 目录。安装说明:详细,有快速安装和手动安装。命名稳定性:版本 1.3.0,但未提供命名稳定性保证。示例和 FAQ:有 DEMO.md 和常见问题。已知限制:有 SECURITY.md 和 THREAT_MODEL.md 说明边界。许可证:MIT 明确。版本和变更日志:有 CHANGELOG.md。维护责任:作者未验证,但仓库有贡献指南。扣分:命名稳定性证据不足,维护责任因发布者未验证而受限。
输出可用性:提供 CLI、文档、演示。边际价值:明确说明何时有用,何时不需要。成本效益:有基准测试报告,但未验证。扣分:成本效益证据基于未验证的基准。
声明可追溯:有证据清单和基准报告。跨来源佐证:有多个基准报告,但未独立验证。事实与推断分离:明确区分验证结果和推断。扣分:跨来源佐证不足。
- 发布者身份未验证,需谨慎评估供应链风险。
- 依赖安全证据不足,建议检查依赖锁定和漏洞扫描。
- 基准测试结果未独立验证,成本效益声明需谨慎对待。
这个 Agent 能做什么,适合哪些场景?
Citadel 是面向 Claude Code 和 OpenAI Codex 的开源仓库运行层,而不是替代编码代理本身。它以 /do 作为自然语言入口,为请求选择工作流、协调会话、持久化 campaign 或并行 Fleet。项目状态、交接记录、发现与遥测默认保存在仓库本地,支持后续会话恢复工作。它还提供生命周期 hooks、验证结果、操作回执和受约束的 portable operations。安装后,Citadel 在现有 Git 仓库中生成运行时配置与本地状态;可选的跨克隆记忆会写入用户级 SQLite 数据库。
用户执行 /do <request> 后,Citadel 会把请求路由到聚焦 skill、协调会话、campaign 或 Fleet,并在执行期间通过 hooks 应用仓库规则、为重要操作设置审批边界、记录所需检查。它将结果、handoff 和 next action 写入仓库本地状态;/do next 或 /do continue 可据此恢复工作。对于需要稳定契约的任务,citadel operation ... 可添加质量、隐私、工具、时间、模型回退和成本约束,并产出 attempts、intents、evidence 与 receipts。Operation Fork 可在隔离的 Claude Code 与 Codex worktree 中执行同一目标;citadel memory enable 则在 Node.js 22.13+ 上启用用户级 SQLite 跨克隆记忆。
- 使用 Claude Code 的维护者需要在多次会话之间延续重构任务,并通过 /do continue 获取明确的下一步。
- 使用 OpenAI Codex 的团队要在有仓库规则和验证要求的代码库中处理多步骤修改。
- 需要让多名代理或多个分支并行处理工作、同时保留 worktree 隔离和共享发现的工程团队。
- 希望比较 Claude Code 与 Codex 对同一目标执行结果的评估者,可使用 Operation Fork 的隔离分支流程。
- 需要为可重复操作保存权限、检查、停止条件和可验证回执的负责人。
这个 Agent 有哪些优点和局限?
- 同时直接支持 Claude Code 与 OpenAI Codex,并为各自提供安装路径。
- 通过 campaign、handoff、discoveries 和 next action 将工作状态保存下来,适合会中断的仓库任务。
- 以 hooks、验证状态和 receipts 记录操作;缺失证据不会被标记为成功。
- Operation Fork 支持在隔离的 Claude Code 与 Codex worktree 中比较同一目标。
- 需要 Claude Code 或 OpenAI Codex、Node.js 18+ 和 Git 仓库,不能作为独立编码运行时使用。
- Citadel 以代理已有权限运行,不能取代代码审查、分支保护或仓库专属检查。
- 跨克隆记忆需 Node.js 22.13+,并会使用用户级 SQLite 存储。
- 公开的代表性 shakedown 未达到冻结的 20% 能耗门槛;README 明确将该结果标为失败。
如何安装或部署这个 Agent?
前提是已有 Claude Code 或 OpenAI Codex、Node.js 18+ 和 Git 仓库。在目标仓库中让编码代理安装 Citadel,随后按其打印的启用步骤操作并开启新会话,执行 /do setup --express。手动安装时,先运行 git clone https://github.com/SethGammon/Citadel.git ~/Citadel;Codex 运行 node ~/Citadel/scripts/install.js --runtime codex --add-marketplace,Claude Code 运行 node ~/Citadel/scripts/install.js --runtime claude --install --scope local,然后在同一仓库的新会话执行 /do setup --express。
如何使用这个 Agent?
完成 setup 后,直接运行如 /do review README.md、/do generate tests for the changed files 或 /do next。需要显式操作约束时使用 citadel operation ...;需要跨克隆记忆时,在 Node.js 22.13+ 环境运行 citadel memory enable。
这个 Agent 与同类方案有什么区别?
Citadel 不替代 CLAUDE.md 或 AGENTS.md:这些文件描述项目规则,Citadel 提供将规则持续执行的工作流与状态。对于一次性短小修改,现有编码代理可能已足够;Citadel 面向工作流选择、恢复、协调与验证成为主要难点的场景。
常见问题
Citadel 会把项目状态或遥测上传吗?
它能保证代理生成的代码质量吗?
验证失败或证据缺失时会怎样?
如何移除 Citadel?
/unharness 创建由 receipt 管理的离开计划,审核其具体足迹后用计划 token 应用。旧版安装会先盘点,且不能声称精确移除。