Hermes:云端 agent 工作流与阶段化项目执行
一个云端 agent 执行环境,负责分阶段完成从代码编写到部署验证的完整闭环。conanxin.com 的 HP-1 到 HP-10 全部由 Hermes 执行。
Why this project exists
2025 年底,我开始频繁使用 AI 辅助编程。最初只是简单的代码生成,但很快发现 AI 的能力不止于此:它可以执行命令、读写文件、提交代码、验证部署状态。
问题是,这些操作是零散的。每次会话都是独立的,没有上下文延续,没有状态跟踪,没有验收标准。一个任务可能需要多轮对话才能完成,但中间断开后就得重新开始。
Hermes 的目标是把这种"零散辅助"变成"系统化执行"。
Starting point
最初的形态很简单:一个可以执行终端命令的 agent 环境。我给它一个任务描述,它执行命令、读取输出、决定下一步。
但很快遇到几个问题:
- 长任务容易中断,没有检查点
- 执行结果没有结构化记录
- 无法验证线上状态是否真正生效
- 多个任务之间没有关联
First principles
阶段化执行:任何任务都必须拆成阶段。每个阶段有明确目标、验收标准和报告。阶段之间可以暂停、恢复、回滚。 状态收口:每个阶段结束时必须生成结构化报告,记录做了什么、结果如何、下一步是什么。 验证优先:不验证不算完成。代码提交后要验证构建状态,部署后要验证线上访问,修改后要验证功能正常。 上下文延续:通过文件系统和 Git 历史保持上下文。agent 可以读取之前的报告、查看 Git log、检查文件变更。Key decisions
云端执行 vs 本地执行:选择云端执行,因为可以 24/7 运行,不受本地机器状态影响。同时保留本地开发环境用于快速验证。 结构化报告模板:每个阶段报告必须包含固定字段(状态、commit hash、验证结果、影响分析等),这样不同阶段的报告可以互相引用。 Git 作为状态载体:所有变更都通过 Git 提交,报告也作为文件提交到仓库。这样状态是持久的、可回溯的。 与 GitHub 集成:agent 可以直接操作 GitHub(创建 PR、查看 Actions 状态、读取 Issues),这样项目管理和代码执行可以在同一个闭环中完成。System architecture
Hermes 的核心是一个执行循环:
1. 接收任务:从用户或调度系统接收任务描述 2. 审计与计划:检查当前状态,制定执行计划,识别风险 3. 分阶段执行:按阶段执行,每阶段结束后验证 4. 生成报告:记录执行过程和结果 5. 状态收口:更新相关数据文件,确保系统状态一致
执行环境基于 Linux,支持 Node.js、Python、Git、GitHub CLI 等工具。agent 可以读写文件、执行命令、调用 API、验证线上状态。
Phase timeline
早期:简单的命令执行 agent,可以运行脚本和读取输出。 中期:引入阶段化概念,每个任务拆成多个阶段,阶段间有检查点。 当前:完整的项目执行环境,支持:- 多阶段任务规划与执行
- 结构化报告生成
- Git 操作与版本控制
- GitHub Actions 状态监控
- 线上访问验证
- 数据文件更新(JSON、Markdown)
- 静态站点构建与部署
What changed
最大的变化是工作流的标准化。以前执行一个项目改版需要手动完成很多步骤:编辑文件、验证语法、构建、提交、推送、等待部署、验证线上状态。现在这些步骤由 agent 自动执行,我只需要在关键节点确认或调整方向。
具体变化:
- 从手动执行升级为自动化执行
- 从临时命令升级为结构化阶段
- 从口头描述升级为结构化报告
- 从单点验证升级为全链路验证
Current status
当前状态:active。Hermes 是 conanxin.com 的主要维护者,HP-1 到 HP-10 全部由 Hermes 分阶段执行。
当前能力边界:
- 可以执行静态站点相关的完整工作流
- 可以读写 JSON/Markdown/HTML/CSS
- 可以操作 Git 和 GitHub
- 可以验证 HTTP 状态
- 不适合:大规模数据处理、长时间运行任务、需要图形界面的操作
Impact
对个人工作流的影响:把"执行"交给了 agent,我可以把更多精力放在"决策"和"设计"上。一个典型的 HP 阶段,我只需要提供任务描述和验收标准,agent 就能完成从审计到报告的全过程。
复用价值:这个执行模式可以应用于任何需要阶段化执行和验证的项目,不限于静态站点。
What I learned
关于 agent 协作:agent 不是替代人,而是放大人的能力。agent 擅长执行和验证,人擅长决策和设计。关键是明确分工。 关于阶段化:大任务必须拆成小阶段。不仅是为了防止中断,更是为了在每个阶段结束后有机会重新评估方向。 关于验证:验证不是可选步骤,而是执行的一部分。没有验证的执行等于没有执行。Next
- 增加更多项目类型的执行模板
- 探索 agent 之间的协作模式
- 建立更完善的错误恢复机制
- 考虑引入更复杂的任务调度系统