Hermes DevTree — 树形多项目多任务多 Session 并行开发模式
原始需求开发场景
- repos-root 目录集中管理多个 Git 仓库,
git clone git.atibm.com/xxx→repos-root/project-dir - 在 Hermes 创建
repos-root/project-dir的项目空间 A - 切换到 A,创建迭代任务 A1,在 A1 下开启 Session A1S1,从 Trilium 笔记加载待开发的需求笔记 ID,完善需求设计
- 用 stdd 技能开发:设计→编程→测试→归档。人工验收通过后:
- stdd 文档归档
- 更新 Trilium 需求笔记的开发记录
- Git commit → push
- A1 完成 → 开始 A2、A3
- 同时有 B、C 项目的迭代,按工作节奏来回切换
Hermes AI 风格方案
核心理念
用户只说业务,不记命令。Hermes 在后台自动完成所有书签工作。
用户交互层(最小对话)
| Session内你说的 | Hermes 在后台做的 | |
|---|---|---|
| 工作空间 | "把 repos-root/myapp 注册为 myapp 项目" | hermes project create myapphermes project add-folder myapp repos-root/myapphermes kanban inithermes project bind-board myapp --board myapp写入 .hermes.md 项目上下文 |
"切到 B 项目" | 查 memory 中 B 项目的路径和看板名hermes project use B如需切换看板 → hermes kanban boards switch B | |
| 迭代任务 | "建个迭代:v0.0.1 xxxxx" | hermes project use myapphermes kanban create --board myapp --title "..." --body "需求: xyz"取需求标题和版本 → hermes sessions rename <id> "myapp - xxx vN" |
/title myapp-v0.0.1 xxxxx | 修改session标题 | |
"切到 myapp 继续做迭代:v0.0.1 xxxxx" | session_search("myapp 登录") → 找到上次 sessionhermes kanban list --board myapp → 确认迭代状态查 stdd changes/ → 回到当前阶段 session_search(上次 session ID) → 回顾上下文 | |
| 编程 | "/stdd 开发需求笔记 xxxxxxxx" | 读取 Trilium 笔记 xxxxxxxx,用 stdd 流程进行开发 |
底层能力映射
| 能力 | 承载机制 | 用户可见? |
|---|---|---|
| 项目管理 | hermes project | ❌ 后台 |
| 迭代任务 | hermes kanban | ❌ 后台 |
| Session 追踪 | /title + session_search | ❌ 后台 |
| 需求笔记 | Trilium MCP (mcp__trilium__*) | ❌ 后台 |
| 开发流程 | stdd skill (slash commands) | ✅ 对话交互 |
| 代码提交 | git commit/push | ❌ 后台 |
| 项目上下文 | .hermes.md | ❌ 自动加载 |
| 版本归档 | stdd Phase 6 + Git tag | ❌ 后台 |
三层自动化的完整闭环
用户: "做 myapp 登录功能,需求笔记 xyz"
│
┌───────────────┴───────────────┐
│ Hermes 自动层 │
│ ┌─────────────────────────┐ │
│ │ 1. project use myapp │ │
│ │ 2. kanban create "登录" │ │
│ │ 3. 读 Trilium 笔记 xyz │ │
│ │ 4. /title myapp-登录-v2 │ │
│ │ 5. cd 项目目录 │ │
│ │ 6. 加载 stdd Phase 1 │ │
│ └─────────────────────────┘ │
│ │ │
│ ▼ │
│ stdd 流程层(1 Session) │
│ ┌─────────────────────────┐ │
│ │ Phase 1: 需求理解 │ │
│ │ Phase 2: 规格设计 │ │
│ │ Phase 3: 实现 │ │
│ │ Phase 4: 门控确认 │←──人工验收
│ │ Phase 5: 审查 │ │
│ │ Phase 6: 完成 │ │
│ └─────────────────────────┘ │
│ │ │
│ ▼ │
│ 归档层 │
│ ┌─────────────────────────┐ │
│ │ 1. stdd 归档 │ │
│ │ 2. 更新 Trilium 笔记 │ │
│ │ 3. Git commit + push │ │
│ │ 4. kanban complete │ │
│ └─────────────────────────┘ │
└───────────────────────────────┘
│
用户看到: ✅ 登录功能完成,可以开始下一个交互界面矩阵
| 界面 | 在方案中的角色 |
|---|---|
| Dashboard TUI | 主要交互入口。聊天下指令,Hermes 在后台执行所有操作 |
| stdd slash command | 开发流程中直接使用(/stdd-understand 等),Hermes 内部触发 |
| Hermes CLI | 用户不直接使用,由 Hermes 内部调用 |
| Trilium | 需求笔记的存储和版本管理,通过 MCP 读写 |