@sulhadin/orchestrator 3.1.4 → 4.0.0-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +14 -23
  2. package/bin/build-template.js +0 -1
  3. package/bin/index.js +12 -24
  4. package/package.json +1 -1
  5. package/template/.claude-plugin/plugin.json +1 -1
  6. package/template/.orchestra/README.md +55 -73
  7. package/template/.orchestra/blueprints/README.md +7 -7
  8. package/template/.orchestra/blueprints/api-only.md +7 -7
  9. package/template/.orchestra/blueprints/component-crud-resource.md +3 -3
  10. package/template/.orchestra/blueprints/saas-starter.md +17 -17
  11. package/template/.orchestra/config.yml +1 -1
  12. package/template/.orchestra/roles/orchestrator.md +2 -3
  13. package/template/.orchestra/roles/product-manager.md +48 -25
  14. package/template/CLAUDE.md +5 -9
  15. package/template/agents/{conductor.md → lead.md} +123 -91
  16. package/template/agents/reviewer.md +2 -2
  17. package/template/commands/create-role.md +1 -1
  18. package/template/commands/help.md +7 -12
  19. package/template/commands/hotfix.md +1 -2
  20. package/template/commands/pm.md +1 -2
  21. package/template/commands/rewind.md +0 -1
  22. package/template/commands/start.md +5 -5
  23. package/template/commands/status.md +1 -1
  24. package/template/rules/role-boundaries.orchestra.md +2 -2
  25. package/template/.orchestra/knowledge.md +0 -99
  26. package/template/.orchestra/roles/adaptive.md +0 -38
  27. package/template/.orchestra/roles/architect.md +0 -33
  28. package/template/.orchestra/roles/backend-engineer.md +0 -27
  29. package/template/.orchestra/roles/frontend-engineer.md +0 -27
  30. package/template/commands/adaptive.md +0 -7
  31. package/template/commands/architect.md +0 -7
  32. package/template/commands/backend.md +0 -7
  33. package/template/commands/frontend.md +0 -7
@@ -9,9 +9,9 @@ API layer, dashboard UI, and deployment. Produces a working, deployed MVP.
9
9
  ### M1 — Project Setup + Database
10
10
  - Complexity: full
11
11
  - Phases:
12
- 1. (architect) Tech stack RFC — runtime, framework, DB, ORM, auth strategy
13
- 2. (backend) Project skeleton — monorepo/single, configs, linting, base structure
14
- 3. (backend) Database setup — ORM config, connection, base migration [skills: deployment]
12
+ 1. (design) Tech stack RFC — runtime, framework, DB, ORM, auth strategy
13
+ 2. (impl) Project skeleton — monorepo/single, configs, linting, base structure
14
+ 3. (impl) Database setup — ORM config, connection, base migration [skills: deployment]
15
15
  - Acceptance Criteria:
16
16
  - [ ] Project builds and runs locally
17
17
  - [ ] Database connection works
@@ -21,11 +21,11 @@ API layer, dashboard UI, and deployment. Produces a working, deployed MVP.
21
21
  ### M2 — Authentication
22
22
  - Complexity: full
23
23
  - Phases:
24
- 1. (architect) Auth RFC — strategy, token flow, session management
25
- 2. (backend) User model + migration + auth endpoints [skills: auth-setup, crud-api]
26
- 3. (backend) Auth middleware + protected route pattern [skills: auth-setup]
27
- 4. (frontend) Login + signup pages + auth state management
28
- 5. (frontend) Protected route wrapper + logout flow
24
+ 1. (design) Auth RFC — strategy, token flow, session management
25
+ 2. (impl) User model + migration + auth endpoints [skills: auth-setup, crud-api]
26
+ 3. (impl) Auth middleware + protected route pattern [skills: auth-setup]
27
+ 4. (impl) Login + signup pages + auth state management
28
+ 5. (impl) Protected route wrapper + logout flow
29
29
  - Acceptance Criteria:
30
30
  - [ ] User can sign up, log in, log out
31
31
  - [ ] Protected routes reject unauthenticated users
@@ -36,10 +36,10 @@ API layer, dashboard UI, and deployment. Produces a working, deployed MVP.
36
36
  ### M3 — Core API + Dashboard
37
37
  - Complexity: standard
38
38
  - Phases:
39
- 1. (backend) Core resource CRUD endpoints + validation [skills: crud-api]
40
- 2. (backend) Pagination, filtering, sorting on list endpoints [skills: crud-api]
41
- 3. (frontend) Dashboard layout — sidebar, header, responsive shell
42
- 4. (frontend) Core resource list + detail + create/edit forms
39
+ 1. (impl) Core resource CRUD endpoints + validation [skills: crud-api]
40
+ 2. (impl) Pagination, filtering, sorting on list endpoints [skills: crud-api]
41
+ 3. (impl) Dashboard layout — sidebar, header, responsive shell
42
+ 4. (impl) Core resource list + detail + create/edit forms
43
43
  - Acceptance Criteria:
44
44
  - [ ] CRUD operations work end-to-end
45
45
  - [ ] Dashboard is responsive (mobile + desktop)
@@ -49,9 +49,9 @@ API layer, dashboard UI, and deployment. Produces a working, deployed MVP.
49
49
  ### M4 — CI/CD + Deployment
50
50
  - Complexity: standard
51
51
  - Phases:
52
- 1. (backend) Dockerfile + docker-compose for local dev [skills: deployment]
53
- 2. (backend) CI pipeline — lint, type check, test, build [skills: deployment]
54
- 3. (backend) Health check endpoint + graceful shutdown [skills: deployment]
52
+ 1. (impl) Dockerfile + docker-compose for local dev [skills: deployment]
53
+ 2. (impl) CI pipeline — lint, type check, test, build [skills: deployment]
54
+ 3. (impl) Health check endpoint + graceful shutdown [skills: deployment]
55
55
  - Acceptance Criteria:
56
56
  - [ ] `docker-compose up` starts full local environment
57
57
  - [ ] CI pipeline runs on every push
@@ -61,8 +61,8 @@ API layer, dashboard UI, and deployment. Produces a working, deployed MVP.
61
61
  ### M5 — Polish + Launch Readiness
62
62
  - Complexity: quick
63
63
  - Phases:
64
- 1. (frontend) Error boundaries, 404 page, loading skeletons
65
- 2. (backend) Rate limiting, request logging, error formatting
64
+ 1. (impl) Error boundaries, 404 page, loading skeletons
65
+ 2. (impl) Rate limiting, request logging, error formatting
66
66
  - Acceptance Criteria:
67
67
  - [ ] No unhandled errors in UI
68
68
  - [ ] API returns consistent error format
@@ -23,7 +23,7 @@ pipeline:
23
23
  parallel: disabled
24
24
 
25
25
  # Milestone isolation mode: inline | agent
26
- # inline: conductor runs milestones directly, stops after each. User compacts manually. (default)
26
+ # inline: lead runs milestones directly, stops after each. User compacts manually. (default)
27
27
  # agent: each milestone runs in its own sub-agent. Context freed automatically. Best for --auto.
28
28
  milestone_isolation: inline
29
29
 
@@ -19,12 +19,11 @@ You are NOT above the system — you ARE the system.
19
19
  | Create/edit/delete role files | `.orchestra/roles/*.md` |
20
20
  | Edit config | `.orchestra/config.yml` |
21
21
  | Edit CLAUDE.md | `CLAUDE.md` |
22
- | Edit conductor/reviewer agents | `.claude/agents/conductor.md`, `.claude/agents/reviewer.md` |
22
+ | Edit lead/reviewer agents | `.claude/agents/lead.md`, `.claude/agents/reviewer.md` |
23
23
  | Create/edit rules | `.claude/rules/*.orchestra.md` |
24
24
  | Create/edit skills | `.claude/skills/*/SKILL.md` |
25
25
  | Create/edit blueprints | `.orchestra/blueprints/*.md` |
26
26
  | Create/edit commands | `.claude/commands/orchestra/*.md` |
27
- | Edit knowledge log | `.orchestra/knowledge.md` |
28
27
  | Maintain documentation | `docs/*.md` |
29
28
 
30
29
  ## Cannot Do
@@ -41,7 +40,7 @@ When evolving the Orchestra system, follow this 6-phase process:
41
40
  3. **Challenge** — present, invite pushback, genuinely rethink, reach consensus
42
41
  4. **Plan** — exact files, line numbers, insertion order. ALWAYS preview first.
43
42
  5. **Implement** — task list, bottom-up, verify each change
44
- 6. **Capture** — knowledge.md, docs/, cross-file consistency check
43
+ 6. **Capture** — docs/, cross-file consistency check
45
44
 
46
45
  **Phase 4 is NOT optional.** Always preview before implementing.
47
46
 
@@ -20,13 +20,7 @@ Cannot write: feature code, RFCs, architecture docs, review findings, system fil
20
20
 
21
21
  1. Read `.orchestra/config.yml` for pipeline settings
22
22
  2. Check `.orchestra/milestones/` for active milestones
23
- 3. Check `.orchestra/knowledge.md` Active Knowledge for recent lessons
24
- 4. Greet: "PM ready. What's on your mind?" + milestone status summary
25
-
26
- ## Knowledge: Where to Save What You Learn
27
-
28
- - **knowledge.md** → project-level lessons (other roles read this)
29
- - **Auto memory** → personal behavior adjustments (only you read this)
23
+ 3. Greet: "PM ready. What's on your mind?" + milestone status summary
30
24
 
31
25
  ## Milestone Creation
32
26
 
@@ -45,7 +39,7 @@ Cannot write: feature code, RFCs, architecture docs, review findings, system fil
45
39
  ### Milestone Review Loop
46
40
 
47
41
  After creating milestone files, launch a milestone-reviewer sub-agent before
48
- marking the milestone as ready. This catches planning errors before conductor executes.
42
+ marking the milestone as ready. This catches planning errors before lead executes.
49
43
 
50
44
  **Flow:** PM creates → reviewer sub-agent → PM fixes → reviewer again → max `pipeline.max_milestone_review_rounds`
51
45
 
@@ -57,15 +51,18 @@ in {milestone_path}/: prd.md, milestone.md, grooming.md, and all files in phases
57
51
  (rfc.md and context.md don't exist yet — don't flag them as missing.)
58
52
 
59
53
  ## Checklist
60
- 1. Every phase has `role:` set?
61
- 2. Every phase has `complexity:` set?
62
- 3. Every phase has `skills:` appropriate for the role and task?
63
- 4. Every phase has `scope:` defining which files/dirs to touch?
64
- 5. Acceptance criteria are testable? (not vague like "works well" — specific like "returns 200")
65
- 6. `milestone.md` has `Complexity:` set?
66
- 7. Phase order and `depends_on` are correct? (frontend depends on backend, etc.)
67
- 8. No overlapping scope between phases? (two phases writing same files)
68
- 9. PRD explains WHY, not just WHAT?
54
+ 1. Every phase has `complexity:` set?
55
+ 2. Every phase has `skills:` appropriate for the task?
56
+ 3. Every phase has `## Scope` defining specific files/dirs to touch?
57
+ 4. Acceptance criteria are testable? (not vague like "works well" — specific like "returns 200")
58
+ 5. `milestone.md` has `Complexity:` set?
59
+ 6. Phase order and `depends_on` are correct?
60
+ 7. No overlapping scope between phases? (two phases writing same files)
61
+ 8. PRD explains WHY, not just WHAT?
62
+ 9. Every non-trivial phase has `## Context` explaining what the project is?
63
+ 10. Every non-trivial phase has `## Technical Decisions` with NO unresolved "X OR Y" choices?
64
+ 11. Standard+ phases have `## References` for technologies that may have changed since training cutoff?
65
+ 12. Standard+ phases have `## Constraints` with at least 2 negative scenarios?
69
66
 
70
67
  ## Return Format
71
68
  verdict: approved | changes-requested
@@ -99,19 +96,46 @@ summary: {2-3 sentences}
99
96
 
100
97
  ```markdown
101
98
  ---
102
- role: backend-engineer | frontend-engineer | architect | adaptive
103
- status: pending | in-progress | done | failed
104
- order: 1
105
- complexity: standard # trivial | quick | standard | complex — conductor uses this for model selection
106
- skills: [] # list .claude/skills/, assign relevant ones by name
99
+ status: pending
100
+ order: 1
101
+ complexity: standard # trivial | quick | standard | complex
102
+ skills: [] # .claude/skills/ names
107
103
  depends_on: []
108
104
  ---
109
105
 
110
106
  ## Objective
107
+ What this phase must accomplish. One paragraph, specific.
108
+
109
+ ## Context
110
+ What is this project? Why does it exist? What does the user do with it?
111
+ This grounds the implementer so they understand the bigger picture.
112
+ Can reference prd.md for detail. (Optional for trivial complexity.)
113
+
114
+ ## Technical Decisions
115
+ All technical choices resolved. NO "X or Y" — every decision is final.
116
+ Include versions for all named technologies.
117
+ (Optional for trivial complexity.)
118
+
111
119
  ## Scope
120
+ Files and directories this phase touches. Be specific:
121
+ - src/services/auth.ts (new)
122
+ - src/routes/login.ts (modify)
123
+ - tests/auth.test.ts (new)
124
+
125
+ ## References
126
+ Links to official docs for anything where training data may be stale.
127
+ (Optional, recommended for standard+.)
128
+
112
129
  ## Acceptance Criteria
130
+ Testable criteria. Each must be verifiable by running a command or checking output.
131
+ - [ ] `POST /api/login` with valid credentials returns 200 with JWT
132
+
133
+ ## Constraints
134
+ Negative scenarios, boundary conditions, and hard limits. (Optional for trivial/quick.)
135
+ - [ ] Max 5 login attempts per minute per IP
136
+
113
137
  ## Result
114
- (filled by conductor)
138
+ (filled by lead after execution)
115
139
  ```
116
140
 
117
141
  ### Complexity Levels
@@ -121,7 +145,7 @@ depends_on: []
121
145
  | `trivial` | Haiku | Phases → Commit → Push | Version bumps, env vars, config changes |
122
146
  | `quick` | Sonnet | Phases → Commit → Push (skip review) | Single-file fixes, simple CRUD |
123
147
  | `standard` | Sonnet | Phases → Review → Push | Typical features (default) |
124
- | `complex` | Opus | Architect → Phases → Review → Push | New subsystems, unfamiliar territory |
148
+ | `complex` | Opus | Design → Phases → Review → Push | New subsystems, unfamiliar territory |
125
149
 
126
150
  ### Blueprint Command
127
151
 
@@ -130,7 +154,6 @@ depends_on: []
130
154
 
131
155
  ### Grooming
132
156
 
133
- Before grooming, check `.orchestra/knowledge.md` (Active + Archive) for relevant patterns.
134
157
 
135
158
  ### Status Command
136
159
 
@@ -16,14 +16,10 @@ Call `ask_user_questions` with:
16
16
  - options:
17
17
  1. Orchestrator — Maintain and evolve Orchestra system files, roles, and rules
18
18
  2. Product Manager — Write PRDs, create milestones with phases, orchestrate pipeline
19
- 3. ArchitectDesign system architecture, choose technologies, set up project skeleton
20
- 4. Backend Engineer — Implement features, write code + tests, build APIs
21
- 5. Frontend Engineer — Design + build user interfaces, write frontend tests
22
- 6. Adaptive — Adaptive expert role (iOS, DevOps, ML, etc.) — domain defined per phase
23
- 7. Discussion — Just brainstorm, no role needed
19
+ 3. DiscussionJust brainstorm, no role needed
24
20
 
25
21
  If user skips or starts giving instructions directly — work with them normally.
26
- Sub-agents spawned by conductor skip role selection — they already have a role assigned in their prompt.
22
+ Sub-agents spawned by lead skip role selection — they already have a role assigned in their prompt.
27
23
  Do NOT greet. Do NOT explain. The role selection IS your greeting.
28
24
 
29
25
  **AFTER ROLE SELECTED:**
@@ -33,15 +29,15 @@ Do NOT greet. Do NOT explain. The role selection IS your greeting.
33
29
  3. Check `.orchestra/milestones/` for active work
34
30
  4. If work exists → announce and start. If not → report and wait.
35
31
 
36
- Role IDs: orchestrator, product-manager, architect, backend-engineer, frontend-engineer, adaptive
32
+ Role IDs: orchestrator, product-manager
37
33
 
38
34
  **ROLE ACTIVATION:** Only via `/orchestra {role}` commands. Never switch on free text.
39
35
 
40
- **`/orchestra start`** → read `.claude/agents/conductor.md`, run in **separate terminal** from PM.
36
+ **`/orchestra start`** → read `.claude/agents/lead.md`, run in **separate terminal** from PM.
41
37
 
42
38
  ### Rules
43
39
 
44
- - Two-terminal model: PM plans in one terminal, conductor executes in another
40
+ - Two-terminal model: PM plans in one terminal, lead executes in another
45
41
  - Each role writes only to its ownership scope (defined in role file)
46
42
  - Rules (`.claude/rules/*.orchestra.md`) auto-loaded. Skills loaded per phase.
47
43
  - **PROTECTED:** Non-Orchestrator roles NEVER modify `.orchestra/roles/`, `.orchestra/config.yml`, `.orchestra/README.md`, `.orchestra/blueprints/`, `.claude/agents/`, `.claude/rules/*.orchestra.md`, `.claude/skills/*/SKILL.md`, `.claude/commands/orchestra/`, `CLAUDE.md`, or `docs/`.