feat: Phase1 核心——模型/状态机 + SQLite Store(守卫+审批闸) + REST/WS API + daemon

- src/model: 复杂度分级、16 状态状态机、实体类型
- src/store: better-sqlite3 接 schema,transition 受 canTransition 守卫,
  decide 审批闸(reject 必带改进意见),事件订阅广播,nextExecutable
- src/api: Fastify REST + ws 事件广播(/ws)
- src/daemon: maestrod 入口(env 配置,默认 ~/.maestro :4517)
- test: 9 个生命周期单测全过;typecheck/build 干净;REST+WS 端到端实跑验证

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
wangjia
2026-06-12 20:44:45 +08:00
commit 3172718a94
18 changed files with 2757 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
# maestro
多项目 TODO 管理与 Agent 执行系统(本地优先 daemon · Node/TypeScript)。
按任务复杂度(Hard / Medium / Easy)分级驱动审批闸,用后台 agentClaude Code)在隔离 git worktree 自动执行可执行任务,改动不自动合并、等你审。
- 完整设计见 **[DESIGN.md](./DESIGN.md)**。
- 当前状态:**脚手架 + 基础模型/状态机/schema**Phase 1 起步)。
## 结构
```
src/model/ 复杂度、状态机、实体类型(已落地)
src/store/ SQLite schema + 访问层
src/api/ REST + WebSocket
src/mcp/ MCP server(给 Claude Code
src/executor/ Agent SDK 封装、worktree 管理、verify
src/daemon/ maestrod 入口、编排器、worker
web/ 看板 cli/ maestro CLI
```
## 开发
```bash
npm install
npm run typecheck # tsc --noEmit
npm run build # → dist/
npm run dev # 启动 daemon(开发)
```
> 依赖版本为初始值;MCP SDK 与 Claude Agent SDK 在 Phase 2 接入时按官方文档核定后再加。