peaks-cli 1.0.22 → 1.0.24
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.
- package/bin/peaks.js +0 -0
- package/dist/src/cli/commands/capability-commands.d.ts +11 -0
- package/dist/src/cli/commands/capability-commands.js +7 -6
- package/dist/src/cli/commands/core-artifact-commands.js +31 -1
- package/dist/src/cli/commands/workflow-commands.js +26 -0
- package/dist/src/services/artifacts/workspace-service.d.ts +1 -1
- package/dist/src/services/artifacts/workspace-service.js +2 -11
- package/dist/src/services/config/config-safety.d.ts +1 -1
- package/dist/src/services/config/config-safety.js +4 -6
- package/dist/src/services/config/config-service.d.ts +1 -1
- package/dist/src/services/config/config-service.js +17 -4
- package/dist/src/services/scan/acceptance-coverage-service.js +1 -4
- package/dist/src/services/scan/archetype-service.js +4 -15
- package/dist/src/services/scan/diff-scope-service.js +3 -3
- package/dist/src/services/scan/file-size-scan.js +2 -7
- package/dist/src/services/scan/type-sanity-service.js +1 -3
- package/dist/src/services/skills/skill-presence-service.d.ts +2 -0
- package/dist/src/services/skills/skill-presence-service.js +22 -1
- package/dist/src/services/standards/project-standards-service.js +21 -0
- package/dist/src/services/workflow/pipeline-verify-service.d.ts +31 -0
- package/dist/src/services/workflow/pipeline-verify-service.js +180 -0
- package/dist/src/shared/change-id.js +0 -3
- package/dist/src/shared/version.d.ts +1 -1
- package/dist/src/shared/version.js +1 -1
- package/output-styles/peaks-skill-swarm.md +34 -34
- package/package.json +2 -1
- package/skills/peaks-prd/SKILL.md +10 -10
- package/skills/peaks-qa/SKILL.md +48 -36
- package/skills/peaks-rd/SKILL.md +53 -53
- package/skills/peaks-sc/SKILL.md +9 -9
- package/skills/peaks-solo/SKILL.md +127 -91
- package/skills/peaks-txt/SKILL.md +17 -17
- package/skills/peaks-ui/SKILL.md +14 -14
|
@@ -1,24 +1,57 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: peaks-solo
|
|
3
|
-
description: Full-auto orchestration facade for the Peaks skill family. Use when the user asks Peaks to handle a project workflow end-to-end (端到端/全流程/需求开发), especially from a product document (产品文档/PRD/飞书文档/Feishu doc) through implementation and validation. Coordinates peaks-prd, peaks-rd, peaks-ui, peaks-qa, peaks-sc, and peaks-txt while preserving user confirmation gates. Triggers on `/peaks-solo`, "peaks solo", "全流程开发", "端到端迭代", "根据产品文档开发", "从需求到上线".
|
|
3
|
+
description: Full-auto orchestration facade for the Peaks-Cli skill family. Use when the user asks Peaks-Cli to handle a project workflow end-to-end (端到端/全流程/需求开发), especially from a product document (产品文档/PRD/飞书文档/Feishu doc) through implementation and validation. Coordinates peaks-prd, peaks-rd, peaks-ui, peaks-qa, peaks-sc, and peaks-txt while preserving user confirmation gates. Triggers on `/peaks-solo`, "peaks solo", "全流程开发", "端到端迭代", "根据产品文档开发", "从需求到上线".
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Peaks Solo
|
|
6
|
+
# Peaks-Cli Solo
|
|
7
7
|
|
|
8
|
-
Peaks Solo is the orchestration facade for the Peaks short skill family.
|
|
8
|
+
Peaks-Cli Solo is the orchestration facade for the Peaks-Cli short skill family.
|
|
9
9
|
|
|
10
10
|
Use this skill to identify the user scenario, recommend an execution mode, coordinate role skills, and produce the final handoff report. Do not collapse role responsibilities into this skill.
|
|
11
11
|
|
|
12
|
-
##
|
|
12
|
+
## Code-Change Red Line (BLOCKING — read before ANY tool call)
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
**Peaks-Cli Solo is an orchestrator, NOT an implementer. You MUST NOT write, edit, or modify any application source code directly.**
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
Every code change — bugfix, feature, refactor, or config — MUST go through the full pipeline:
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
```
|
|
19
|
+
peaks-solo (orchestrate only)
|
|
20
|
+
→ Skill(skill="peaks-rd") ← ALL code changes happen HERE
|
|
21
|
+
→ Unit tests written + pass (Peaks-Cli Gate B2)
|
|
22
|
+
→ Karpathy standards enforced (file-size ≤800 lines, TypeScript rules)
|
|
23
|
+
→ Code review evidence (Peaks-Cli Gate B3)
|
|
24
|
+
→ Security review evidence (Peaks-Cli Gate B4)
|
|
25
|
+
→ Skill(skill="peaks-qa") ← ALL validation happens HERE
|
|
26
|
+
→ Functional test execution (Peaks-Cli Gate A2)
|
|
27
|
+
→ Performance check (Peaks-Cli Gate A4)
|
|
28
|
+
→ Security test (Peaks-Cli Gate A3)
|
|
29
|
+
→ Browser E2E (when frontend; Peaks-Cli Gate D)
|
|
30
|
+
→ Verdict: pass | return-to-rd | blocked
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Violations (BLOCKING — Solo must refuse to proceed):**
|
|
34
|
+
|
|
35
|
+
1. Writing implementation code directly instead of calling `Skill(skill="peaks-rd")`
|
|
36
|
+
2. Declaring work "done" without invoking `Skill(skill="peaks-qa")` after RD
|
|
37
|
+
3. Skipping unit tests ("it's a small change")
|
|
38
|
+
4. Skipping code review or security review
|
|
39
|
+
5. Skipping QA functional/performance/security validation
|
|
40
|
+
|
|
41
|
+
**If you catch yourself about to write code in this skill, STOP. Call `Skill(skill="peaks-rd")` instead.**
|
|
42
|
+
|
|
43
|
+
**Before declaring workflow complete, run:** `peaks workflow verify-pipeline --rid <rid> --project <repo> --json`
|
|
44
|
+
|
|
45
|
+
## Peaks-Cli Startup sequence (MANDATORY — execute in order)
|
|
46
|
+
|
|
47
|
+
### Peaks-Cli Step 1: Mode selection (MUST run before presence:set)
|
|
48
|
+
|
|
49
|
+
When the user invokes Peaks-Cli Solo without explicitly naming an execution profile, use `AskUserQuestion` BEFORE any other action. Present the recommended full-auto path as the first/default option with a practical description for each:
|
|
50
|
+
|
|
51
|
+
1. **Full auto (Recommended)** — Peaks-Cli handles planning, role coordination, validation, and compact handoff end-to-end while preserving required confirmation gates for risky or shared-state actions.
|
|
52
|
+
2. **Assisted** — Peaks-Cli proposes plans, artifacts, and checks, then pauses for user decisions at major workflow boundaries.
|
|
53
|
+
3. **Swarm** — Peaks-Cli maximizes safe parallel role/worker execution for larger RD or QA workloads while keeping reducer validation and artifact boundaries explicit.
|
|
54
|
+
4. **Strict** — Peaks-Cli uses the most conservative gates: explicit confirmations, strict slice specs, coverage evidence, QA acceptance, and commit boundaries before continuing.
|
|
22
55
|
|
|
23
56
|
Map the user's selection to the `--mode` flag value (used by `peaks skill presence:set`; `presence:set --mode` accepts any string, so the name matches the user-facing label rather than overloading "solo" which is also the skill name):
|
|
24
57
|
|
|
@@ -33,7 +66,7 @@ Map the user's selection to the `--mode` flag value (used by `peaks skill presen
|
|
|
33
66
|
|
|
34
67
|
If the user already names a profile in their invocation (e.g. `/peaks-solo --full-auto`, "用全自动模式"), skip this question and use the named profile directly.
|
|
35
68
|
|
|
36
|
-
### Step 2: Set skill presence
|
|
69
|
+
### Peaks-Cli Step 2: Set skill presence
|
|
37
70
|
|
|
38
71
|
Only after the mode is known (user selected or explicitly named), run:
|
|
39
72
|
|
|
@@ -41,22 +74,22 @@ Only after the mode is known (user selected or explicitly named), run:
|
|
|
41
74
|
peaks skill presence:set peaks-solo --mode <mode-value> --gate startup
|
|
42
75
|
```
|
|
43
76
|
|
|
44
|
-
Then display the compact status header: `Peaks Skill: peaks-solo | Gate: startup | Next: <one short action>`. Display this header on EVERY turn while the skill is active.
|
|
77
|
+
Then display the compact status header: `Peaks-Cli Skill: peaks-solo | Peaks-Cli Gate: startup | Next: <one short action>`. Display this header on EVERY turn while the skill is active.
|
|
45
78
|
|
|
46
|
-
Update with `peaks skill presence:set peaks-solo --mode <mode> --gate <gate>` when gates change.
|
|
79
|
+
Update with `peaks skill presence:set peaks-solo --mode <mode> --gate <gate>` when gates change. The presence file persists across the full workflow lifecycle — do NOT clear it at workflow end.
|
|
47
80
|
|
|
48
81
|
## Boundaries
|
|
49
82
|
|
|
50
|
-
Peaks Solo may:
|
|
83
|
+
Peaks-Cli Solo may:
|
|
51
84
|
|
|
52
85
|
- identify scenarios such as refactor, bugfix, QA hardening, release validation, and incident response;
|
|
53
86
|
- recommend Solo, Assisted, Swarm, or Strict profiles;
|
|
54
|
-
- coordinate Peaks role skills through artifacts;
|
|
87
|
+
- coordinate Peaks-Cli role skills through artifacts;
|
|
55
88
|
- coordinate project memory extraction from stable skill artifact sections;
|
|
56
89
|
- request user confirmation at risk and commit boundaries;
|
|
57
90
|
- read CLI doctor/profile/artifact reports.
|
|
58
91
|
|
|
59
|
-
Peaks Solo must not silently:
|
|
92
|
+
Peaks-Cli Solo must not silently:
|
|
60
93
|
|
|
61
94
|
- install hooks;
|
|
62
95
|
- create agents;
|
|
@@ -65,19 +98,19 @@ Peaks Solo must not silently:
|
|
|
65
98
|
- create GitHub repositories;
|
|
66
99
|
- bypass role-skill artifacts.
|
|
67
100
|
|
|
68
|
-
Use the Peaks CLI for runtime side effects.
|
|
101
|
+
Use the Peaks-Cli CLI for runtime side effects.
|
|
69
102
|
|
|
70
|
-
## GStack integration
|
|
103
|
+
## Peaks-Cli GStack integration
|
|
71
104
|
|
|
72
|
-
Map gstack stages to Peaks role artifacts; preserve Peaks confirmation gates. Do not delegate orchestration to gstack commands.
|
|
105
|
+
Map gstack stages to Peaks-Cli role artifacts; preserve Peaks-Cli confirmation gates. Do not delegate orchestration to gstack commands.
|
|
73
106
|
|
|
74
107
|
For frontend workflows, RD and QA must use Playwright MCP (`mcp__playwright__` tool namespace) for real browser E2E (`peaks mcp plan/apply --capability playwright-mcp.browser-validation --yes`). Chrome DevTools MCP is a secondary CDP surface only. Sanitize browser artifacts before retention (no login URLs, cookies, tokens, PII). See `references/browser-workflow.md`.
|
|
75
108
|
|
|
76
|
-
## Local intermediate artifact workspace (MANDATORY)
|
|
109
|
+
## Peaks-Cli Local intermediate artifact workspace (MANDATORY)
|
|
77
110
|
|
|
78
111
|
### Workspace initialization gate
|
|
79
112
|
|
|
80
|
-
Before ANY role handoff or artifact write, Peaks Solo MUST create the workspace. Session IDs are now **auto-generated** with the format `YYYY-MM-DD-session-<6位hex>` (e.g. `2026-05-26-session-a3f8b1`). The user does not provide a session ID — the system creates and persists it in `.peaks/.session.json`.
|
|
113
|
+
Before ANY role handoff or artifact write, Peaks-Cli Solo MUST create the workspace. Session IDs are now **auto-generated** with the format `YYYY-MM-DD-session-<6位hex>` (e.g. `2026-05-26-session-a3f8b1`). The user does not provide a session ID — the system creates and persists it in `.peaks/.session.json`.
|
|
81
114
|
|
|
82
115
|
When `peaks workspace init` is run without `--session-id`, it automatically generates a new session ID using today's date and a random hex suffix. If `.peaks/.session.json` already exists with a valid session, the existing session is reused.
|
|
83
116
|
|
|
@@ -116,7 +149,7 @@ Files written into these directories during the workflow (not pre-created — th
|
|
|
116
149
|
|
|
117
150
|
### Root pollution prohibition (CRITICAL)
|
|
118
151
|
|
|
119
|
-
**NEVER write Peaks intermediate artifacts to the project root directory.** Specifically prohibited at root level:
|
|
152
|
+
**NEVER write Peaks-Cli intermediate artifacts to the project root directory.** Specifically prohibited at root level:
|
|
120
153
|
|
|
121
154
|
- PRD snapshots, document extracts, or requirement notes (`feishu-doc-*.md`, `*-snapshot.md`, etc.)
|
|
122
155
|
- RD tech docs, scan reports, slice specs, or architecture notes
|
|
@@ -133,7 +166,7 @@ If you are about to Write/Edit an intermediate artifact in the project root, STO
|
|
|
133
166
|
|
|
134
167
|
Do not default to git-backed storage or automatic commits for intermediate artifacts. Git inclusion or sync requires explicit user confirmation or an active profile that authorizes it.
|
|
135
168
|
|
|
136
|
-
## Pre-RD project scan checklist (MANDATORY)
|
|
169
|
+
## Peaks-Cli Pre-RD project scan checklist (MANDATORY)
|
|
137
170
|
|
|
138
171
|
Before handing off to `peaks-rd`, scan the project and record findings to `.peaks/<session-id>/rd/project-scan.md`. RD and UI roles read this before starting work. **project-scan.md is a session-scoped singleton** — check if it already exists before regenerating (e.g. via `ls .peaks/<session-id>/rd/project-scan.md`). If it exists and is complete (has `## Archetype` and `## Project mode` sections), reuse it. Only regenerate if missing or incomplete.
|
|
139
172
|
|
|
@@ -263,7 +296,7 @@ Grep `src/` for outdated patterns and list them as constraints in `project-scan.
|
|
|
263
296
|
- <bullet list of legacy signals from section 5; empty for greenfield>
|
|
264
297
|
```
|
|
265
298
|
|
|
266
|
-
## Frontend-only development mode
|
|
299
|
+
## Peaks-Cli Frontend-only development mode
|
|
267
300
|
|
|
268
301
|
When the project has no live backend (no swagger.json, no API server), Solo must activate frontend-only mode.
|
|
269
302
|
|
|
@@ -335,7 +368,7 @@ When the PRD source is a Feishu/Lark document that requires authentication:
|
|
|
335
368
|
|
|
336
369
|
Never silently fall back to unauthenticated `fetch` or `WebFetch` for authenticated documents.
|
|
337
370
|
|
|
338
|
-
## Request type classification (MANDATORY before `peaks request init`)
|
|
371
|
+
## Peaks-Cli Request type classification (MANDATORY before `peaks request init`)
|
|
339
372
|
|
|
340
373
|
Before initializing any role artifact, classify the request into exactly one of six types. The choice drives RD/QA gate strictness (see "Mandatory RD QA repair loop"). Pick the **primary intent** — if a request could fit two types, the higher-strictness one wins.
|
|
341
374
|
|
|
@@ -352,34 +385,34 @@ Before initializing any role artifact, classify the request into exactly one of
|
|
|
352
385
|
|
|
353
386
|
For ambiguous cases (e.g. "improve login flow"), ask the user to clarify before initializing. The cost of one `AskUserQuestion` round is much lower than running the wrong gate matrix for the whole workflow.
|
|
354
387
|
|
|
355
|
-
When Peaks Solo coordinates development in a code repository, keep this order explicit:
|
|
388
|
+
When Peaks-Cli Solo coordinates development in a code repository, keep this order explicit:
|
|
356
389
|
|
|
357
|
-
0. **Snapshot** — `peaks doctor` + `peaks project dashboard` to capture baseline state before anything else;
|
|
358
|
-
0.5. **Workspace initialization** — `.peaks/<session-id>/` created, directory structure verified;
|
|
359
|
-
0.6. **Project scan** — archetype, component library, CSS framework, build tool, state management, routing, data fetching, legacy signals detected and recorded to `.peaks/<session-id>/rd/project-scan.md`;
|
|
360
|
-
0.7. **Existing-system extraction** (MANDATORY when archetype ∈ {legacy-frontend, legacy-fullstack, frontend-monorepo}; SKIP for greenfield) — extract visual tokens and code conventions from the live codebase to `.peaks/<session-id>/system/existing-system.md`. The path lives under `system/` (not `ui/`) because the file also records non-UI conventions (service-layer signatures, hooks, naming) that backend-only or legacy-fullstack work consumes. See `references/existing-system-extraction.md`. UI design-draft and RD implementation MUST treat the extracted tokens and conventions as hard constraints;
|
|
361
|
-
1. **Standards preflight** — `peaks standards init/update --dry-run`, must reference concrete project-scan findings (never emit generic templates);
|
|
362
|
-
2. **PRD phase** — capture request as canonical artifact, extract scope and acceptance criteria:
|
|
390
|
+
0. **Peaks-Cli Snapshot** — `peaks doctor` + `peaks project dashboard` to capture baseline state before anything else;
|
|
391
|
+
0.5. **Peaks-Cli Workspace initialization** — `.peaks/<session-id>/` created, directory structure verified;
|
|
392
|
+
0.6. **Peaks-Cli Project scan** — archetype, component library, CSS framework, build tool, state management, routing, data fetching, legacy signals detected and recorded to `.peaks/<session-id>/rd/project-scan.md`;
|
|
393
|
+
0.7. **Peaks-Cli Existing-system extraction** (MANDATORY when archetype ∈ {legacy-frontend, legacy-fullstack, frontend-monorepo}; SKIP for greenfield) — extract visual tokens and code conventions from the live codebase to `.peaks/<session-id>/system/existing-system.md`. The path lives under `system/` (not `ui/`) because the file also records non-UI conventions (service-layer signatures, hooks, naming) that backend-only or legacy-fullstack work consumes. See `references/existing-system-extraction.md`. UI design-draft and RD implementation MUST treat the extracted tokens and conventions as hard constraints;
|
|
394
|
+
1. **Peaks-Cli Standards preflight** — `peaks standards init/update --dry-run`, must reference concrete project-scan findings (never emit generic templates);
|
|
395
|
+
2. **Peaks-Cli PRD phase** — capture request as canonical artifact, extract scope and acceptance criteria:
|
|
363
396
|
- Full-auto/Swarm: auto-transition to `confirmed-by-user` once the artifact is complete;
|
|
364
397
|
- Assisted/Strict: pause with `AskUserQuestion` for explicit user confirmation before proceeding;
|
|
365
|
-
3. **Swarm parallel phase** — after PRD confirmed, launch UI, RD(planning), QA(test-cases) simultaneously:
|
|
398
|
+
3. **Peaks-Cli Swarm parallel phase** — after PRD confirmed, launch UI, RD(planning), QA(test-cases) simultaneously:
|
|
366
399
|
3a. UI design draft and visual direction (MANDATORY when request is frontend/user-visible; skipped for `--type docs|chore|config` or pure-backend requests);
|
|
367
400
|
3b. RD planning artifact — `rd/tech-doc.md` for feature/refactor, `rd/bug-analysis.md` for bugfix, skipped for docs/chore/config;
|
|
368
401
|
3c. QA test-case generation (skipped for docs/chore — no acceptance surface to validate);
|
|
369
|
-
4. **RD implementation** — consumes the type-appropriate inputs: project-scan + standards + (if UI involved) UI design-draft + RD planning artifact + QA test-cases. Includes unit tests for new/changed behavior (TDD) unless `--type` is docs/chore;
|
|
370
|
-
5. **Code review + security review** — CRITICAL/HIGH issues fixed before progression; marked-blocked issues only allow a blocked handoff;
|
|
371
|
-
6. **QA validation** (auto-proceed from RD in full-auto) — execute test cases + API checks + Playwright MCP headed browser E2E for frontend + security/perf checks + test report;
|
|
372
|
-
7. **RD↔QA repair loop** — if QA verdict is `return-to-rd`, loop back to step 4 (RD implementation) and re-run through QA; max 3 repair cycles, then emit blocked TXT regardless;
|
|
373
|
-
8. **SC phase** — change-control evidence: impact, retention, validate, boundary;
|
|
374
|
-
9. **OpenSpec archive** — exit gate: validate → archive only after QA verdict=pass (when `openspec/` exists);
|
|
375
|
-
10. **TXT handoff capsule** — mode, validated decisions, artifact paths, standards deltas, open questions, next action;
|
|
376
|
-
11. **Final snapshot** — `peaks project dashboard` + `peaks skill doctor` to confirm the workflow closed cleanly.
|
|
402
|
+
4. **Peaks-Cli RD implementation** — consumes the type-appropriate inputs: project-scan + standards + (if UI involved) UI design-draft + RD planning artifact + QA test-cases. Includes unit tests for new/changed behavior (TDD) unless `--type` is docs/chore;
|
|
403
|
+
5. **Peaks-Cli Code review + security review** — CRITICAL/HIGH issues fixed before progression; marked-blocked issues only allow a blocked handoff;
|
|
404
|
+
6. **Peaks-Cli QA validation** (auto-proceed from RD in full-auto) — execute test cases + API checks + Playwright MCP headed browser E2E for frontend + security/perf checks + test report;
|
|
405
|
+
7. **Peaks-Cli RD↔QA repair loop** — if QA verdict is `return-to-rd`, loop back to step 4 (RD implementation) and re-run through QA; max 3 repair cycles, then emit blocked TXT regardless;
|
|
406
|
+
8. **Peaks-Cli SC phase** — change-control evidence: impact, retention, validate, boundary;
|
|
407
|
+
9. **Peaks-Cli OpenSpec archive** — exit gate: validate → archive only after QA verdict=pass (when `openspec/` exists);
|
|
408
|
+
10. **Peaks-Cli TXT handoff capsule** — mode, validated decisions, artifact paths, standards deltas, open questions, next action;
|
|
409
|
+
11. **Peaks-Cli Final snapshot** — `peaks project dashboard` + `peaks skill doctor` to confirm the workflow closed cleanly.
|
|
377
410
|
|
|
378
|
-
### Transition verification gates (MANDATORY — run the command, see the output)
|
|
411
|
+
### Peaks-Cli Transition verification gates (MANDATORY — run the command, see the output)
|
|
379
412
|
|
|
380
413
|
You cannot declare a phase complete from memory. Each gate below is a `ls` command you **MUST run** and whose output you **MUST see** before proceeding. If any file shows "No such file", the phase is incomplete.
|
|
381
414
|
|
|
382
|
-
**Gate A — After workspace init + project scan:**
|
|
415
|
+
**Peaks-Cli Gate A — After workspace init + project scan:**
|
|
383
416
|
```bash
|
|
384
417
|
ls .peaks/<id>/rd/project-scan.md
|
|
385
418
|
# Expected output: .peaks/<id>/rd/project-scan.md
|
|
@@ -388,7 +421,7 @@ ls .peaks/<id>/rd/project-scan.md
|
|
|
388
421
|
# File present and complete → reuse (project-scan is a session-scoped singleton)
|
|
389
422
|
```
|
|
390
423
|
|
|
391
|
-
**Gate A.5 — Existing-system extraction (legacy projects only):**
|
|
424
|
+
**Peaks-Cli Gate A.5 — Existing-system extraction (legacy projects only):**
|
|
392
425
|
```bash
|
|
393
426
|
# If project-scan.md `## Archetype` is greenfield → skip this gate
|
|
394
427
|
# Otherwise:
|
|
@@ -397,9 +430,9 @@ ls .peaks/<id>/system/existing-system.md
|
|
|
397
430
|
# (see references/existing-system-extraction.md)
|
|
398
431
|
```
|
|
399
432
|
|
|
400
|
-
**Gate B — After swarm convergence (UI + RD planning + QA test-cases):**
|
|
433
|
+
**Peaks-Cli Gate B — After swarm convergence (UI + RD planning + QA test-cases):**
|
|
401
434
|
|
|
402
|
-
Gate B has two sub-checks: a HARD gate (blocks progression) and an INFORMATIONAL check (records degradation but does not block).
|
|
435
|
+
Peaks-Cli Gate B has two sub-checks: a HARD gate (blocks progression) and an INFORMATIONAL check (records degradation but does not block).
|
|
403
436
|
|
|
404
437
|
```bash
|
|
405
438
|
# B.hard — REQUIRED before continuing to RD implementation.
|
|
@@ -425,7 +458,7 @@ ls .peaks/<id>/ui/design-draft.md 2>&1
|
|
|
425
458
|
# "No such file" + pure backend / docs / chore / config → state skip reason in TXT, proceed.
|
|
426
459
|
```
|
|
427
460
|
|
|
428
|
-
**Gate C — After RD implementation (before QA handoff):**
|
|
461
|
+
**Peaks-Cli Gate C — After RD implementation (before QA handoff):**
|
|
429
462
|
|
|
430
463
|
The CLI gate (`peaks request transition --state qa-handoff`) is the authoritative check; running this `ls` first lets you produce missing files before the CLI rejects the transition.
|
|
431
464
|
|
|
@@ -441,7 +474,7 @@ ls .peaks/<id>/rd/requests/<rid>.md
|
|
|
441
474
|
# Missing any required file → DO NOT attempt the qa-handoff transition; CLI will reject with PREREQUISITES_MISSING.
|
|
442
475
|
```
|
|
443
476
|
|
|
444
|
-
**Gate D — After QA validation:**
|
|
477
|
+
**Peaks-Cli Gate D — After QA validation:**
|
|
445
478
|
|
|
446
479
|
The CLI gate at `qa:verdict-issued` is the authoritative check; this `ls` lets you produce missing evidence before the CLI rejects the transition.
|
|
447
480
|
|
|
@@ -457,17 +490,17 @@ ls .peaks/<id>/qa/requests/<rid>.md
|
|
|
457
490
|
# Missing required file → QA incomplete; do not transition to verdict-issued.
|
|
458
491
|
```
|
|
459
492
|
|
|
460
|
-
**Gate E — Before declaring workflow complete:**
|
|
493
|
+
**Peaks-Cli Gate E — Before declaring workflow complete:**
|
|
461
494
|
```bash
|
|
462
495
|
find .peaks/<id>/ -type f | sort
|
|
463
496
|
# Verify: files from gates A-D all appear in this list.
|
|
464
497
|
# Any mandatory file missing → NOT complete. Do not emit TXT.
|
|
465
|
-
# Gate G (CLAUDE.md + .claude/rules/**) must ALSO pass before TXT is emitted.
|
|
498
|
+
# Peaks-Cli Gate G (CLAUDE.md + .claude/rules/**) must ALSO pass before TXT is emitted.
|
|
466
499
|
```
|
|
467
500
|
|
|
468
|
-
**Gate F — Root pollution check (BLOCKING before completion):**
|
|
501
|
+
**Peaks-Cli Gate F — Root pollution check (BLOCKING before completion):**
|
|
469
502
|
```bash
|
|
470
|
-
# Verify no Peaks intermediate artifacts leaked to project root.
|
|
503
|
+
# Verify no Peaks-Cli intermediate artifacts leaked to project root.
|
|
471
504
|
ls feishu-doc-*.md *-snapshot.md qa-server.js 2>&1
|
|
472
505
|
# Expected: "No such file or directory" for ALL patterns.
|
|
473
506
|
# Any file found → ROOT POLLUTION. Move it to .peaks/<id>/prd/source/
|
|
@@ -478,11 +511,11 @@ ls feishu-doc-*.md *-snapshot.md qa-server.js 2>&1
|
|
|
478
511
|
```bash
|
|
479
512
|
# Extended check for common leak patterns
|
|
480
513
|
find . -maxdepth 1 -name "*.png" -o -name "*.jpg" -o -name "qa-*.js" -o -name "mock-server.*" 2>&1
|
|
481
|
-
# Any Peaks QA/UI intermediate files here → ROOT POLLUTION. Move and note.
|
|
482
|
-
# Legitimate project files (e.g. favicon.png) are fine — only move Peaks artifacts.
|
|
514
|
+
# Any Peaks-Cli QA/UI intermediate files here → ROOT POLLUTION. Move and note.
|
|
515
|
+
# Legitimate project files (e.g. favicon.png) are fine — only move Peaks-Cli artifacts.
|
|
483
516
|
```
|
|
484
517
|
|
|
485
|
-
**Gate G — Project standards present (BLOCKING before workflow completion):**
|
|
518
|
+
**Peaks-Cli Gate G — Project standards present (BLOCKING before workflow completion):**
|
|
486
519
|
```bash
|
|
487
520
|
# After `peaks standards init/update --apply`, verify the files actually landed
|
|
488
521
|
# at the project root. The CLAUDE.md and rules files are required so that
|
|
@@ -496,15 +529,15 @@ ls <repo>/.claude/rules/common/coding-style.md \
|
|
|
496
529
|
<repo>/.claude/rules/common/security.md
|
|
497
530
|
# Any "No such file" → BLOCKED. The standards apply step did not complete; re-run
|
|
498
531
|
# standards init/update with --apply and re-verify.
|
|
499
|
-
# Skipping Gate G (e.g. because the user did not explicitly authorize writes) is
|
|
532
|
+
# Skipping Peaks-Cli Gate G (e.g. because the user did not explicitly authorize writes) is
|
|
500
533
|
# only acceptable in `assisted`/`strict` modes where the user actively declined; in
|
|
501
534
|
# `full-auto`/`swarm` the absence of these files is a workflow violation.
|
|
502
535
|
```
|
|
503
536
|
|
|
504
537
|
|
|
505
|
-
## Swarm parallel phase
|
|
538
|
+
## Peaks-Cli Swarm parallel phase
|
|
506
539
|
|
|
507
|
-
After PRD reaches `confirmed-by-user`, Solo launches peaks-ui, peaks-rd(planning), and peaks-qa(test-cases) simultaneously using parallel Agent calls. All three derive independently from the same PRD and write to separate artifact paths. Solo waits for all three, checks convergence (Gate B), then enters RD implementation.
|
|
540
|
+
After PRD reaches `confirmed-by-user`, Solo launches peaks-ui, peaks-rd(planning), and peaks-qa(test-cases) simultaneously using parallel Agent calls. All three derive independently from the same PRD and write to separate artifact paths. Solo waits for all three, checks convergence (Peaks-Cli Gate B), then enters RD implementation.
|
|
508
541
|
|
|
509
542
|
### Degradation when swarm roles fail
|
|
510
543
|
|
|
@@ -514,9 +547,9 @@ After PRD reaches `confirmed-by-user`, Solo launches peaks-ui, peaks-rd(planning
|
|
|
514
547
|
4. **Two or more missing**: Fall back to sequential mode (PRD → RD → QA); note "swarm-degraded-to-sequential".
|
|
515
548
|
5. **All three missing**: Pause workflow; report to user; request confirmation to continue.
|
|
516
549
|
|
|
517
|
-
**UI phase mandatory for frontend**: When the request affects user-visible behavior (pages, components, forms, modals, tables, styling, interaction, or layout), Peaks Solo MUST invoke `peaks-ui` in the swarm parallel phase alongside RD planning and QA test-case generation. UI produces design drafts that RD implementation later consumes. Skipping UI for frontend work is a blocking violation. The only valid reason to skip UI is when the request is purely backend (API, database, CLI, config, or build tooling).
|
|
550
|
+
**UI phase mandatory for frontend**: When the request affects user-visible behavior (pages, components, forms, modals, tables, styling, interaction, or layout), Peaks-Cli Solo MUST invoke `peaks-ui` in the swarm parallel phase alongside RD planning and QA test-case generation. UI produces design drafts that RD implementation later consumes. Skipping UI for frontend work is a blocking violation. The only valid reason to skip UI is when the request is purely backend (API, database, CLI, config, or build tooling).
|
|
518
551
|
|
|
519
|
-
## Mandatory RD QA repair loop (AUTO-PROCEED)
|
|
552
|
+
## Peaks-Cli Mandatory RD QA repair loop (AUTO-PROCEED)
|
|
520
553
|
|
|
521
554
|
> **CLI gate enforcement**: `peaks request transition` now refuses to move RD/QA to gated states when required artifacts are missing. The required files depend on `--type` chosen at `peaks request init` (default `feature`):
|
|
522
555
|
>
|
|
@@ -527,7 +560,7 @@ After PRD reaches `confirmed-by-user`, Solo launches peaks-ui, peaks-rd(planning
|
|
|
527
560
|
>
|
|
528
561
|
> When PRD lands, classify the request type before running `peaks request init` for every role — pass `--type <type>` so the artifact records it and downstream transitions enforce the right gates. Misclassifying a feature as `docs` to skip gates is a workflow violation. If a transition fails with `code: PREREQUISITES_MISSING`, the response lists every missing path — produce them, then re-transition. For one-off exceptions, the escape hatch `--allow-incomplete --reason "<text>"` records the bypass in the artifact transition note.
|
|
529
562
|
|
|
530
|
-
After `peaks-rd` finishes any implementation, repair, or code-output slice, Peaks Solo MUST automatically route the result to `peaks-qa` without waiting for user confirmation. This is not optional in full-auto mode. Solo must not declare the workflow complete, emit a TXT handoff, or stop at RD completion.
|
|
563
|
+
After `peaks-rd` finishes any implementation, repair, or code-output slice, Peaks-Cli Solo MUST automatically route the result to `peaks-qa` without waiting for user confirmation. This is not optional in full-auto mode. Solo must not declare the workflow complete, emit a TXT handoff, or stop at RD completion.
|
|
531
564
|
|
|
532
565
|
**How Solo invokes another role skill (mechanism, not metaphor):**
|
|
533
566
|
|
|
@@ -558,25 +591,25 @@ When `peaks-qa` returns `verdict=return-to-rd`, Solo does NOT manually rewrite R
|
|
|
558
591
|
|
|
559
592
|
In full-auto mode, treat the RD↔QA repair loop as a built-in controller objective: loop through RD→QA until all acceptance items pass (max 3 cycles). Do not exit the loop on a non-passing QA verdict unless the TXT handoff marks the workflow as blocked.
|
|
560
593
|
|
|
561
|
-
## Default runbook
|
|
594
|
+
## Peaks-Cli Default runbook
|
|
562
595
|
|
|
563
596
|
> **Maintenance**: The numbered workflow list above (steps 0-11) is the canonical phase sequence. This runbook is the executable CLI transcription. When updating this skill, keep both in lockstep — a change to one must be reflected in the other.
|
|
564
597
|
|
|
565
598
|
The end-to-end CLI sequence for the `full-auto` profile. `assisted` and `strict` profiles pause at `[CONFIRM]` markers below. `full-auto` and `swarm` auto-proceed through all gates. See Transition Gates for artifact verification at each stage.
|
|
566
599
|
|
|
567
600
|
```bash
|
|
568
|
-
# 0. Snapshot + 0.5 Workspace + 0.6 Project scan + 0.7 Existing-system extraction
|
|
601
|
+
# 0. Peaks-Cli Snapshot + 0.5 Peaks-Cli Workspace + 0.6 Peaks-Cli Project scan + 0.7 Peaks-Cli Existing-system extraction
|
|
569
602
|
peaks doctor --json
|
|
570
603
|
peaks project dashboard --project <repo> --json
|
|
571
604
|
peaks skill runbook peaks-solo --json
|
|
572
605
|
peaks workspace init --project <repo> --json
|
|
573
606
|
peaks scan archetype --project <repo> --json
|
|
574
|
-
# → copy archetype, frontendOnly, signals into .peaks/<session-id>/rd/project-scan.md (Gate A)
|
|
607
|
+
# → copy archetype, frontendOnly, signals into .peaks/<session-id>/rd/project-scan.md (Peaks-Cli Gate A)
|
|
575
608
|
# → if archetype != greenfield AND archetype != unknown:
|
|
576
609
|
peaks scan existing-system --project <repo> --json
|
|
577
|
-
# → copy tokens, sources, conventions, inconsistencies into .peaks/<session-id>/system/existing-system.md (Gate A.5)
|
|
610
|
+
# → copy tokens, sources, conventions, inconsistencies into .peaks/<session-id>/system/existing-system.md (Peaks-Cli Gate A.5)
|
|
578
611
|
|
|
579
|
-
# 1. Standards preflight + apply
|
|
612
|
+
# 1. Peaks-Cli Standards preflight + apply
|
|
580
613
|
# Run dry-run first to inspect deltas, then APPLY. In full-auto and swarm modes,
|
|
581
614
|
# --apply is the default — Standards files (CLAUDE.md, .claude/rules/**) live INSIDE
|
|
582
615
|
# the target project and are required for downstream skill preflight, so producing
|
|
@@ -586,9 +619,9 @@ peaks standards init --project <repo> --dry-run --json
|
|
|
586
619
|
# or: peaks standards update --project <repo> --dry-run --json
|
|
587
620
|
peaks standards init --project <repo> --apply --json
|
|
588
621
|
# or: peaks standards update --project <repo> --apply --json
|
|
589
|
-
# After apply, verify the files actually exist on disk (see Gate G).
|
|
622
|
+
# After apply, verify the files actually exist on disk (see Peaks-Cli Gate G).
|
|
590
623
|
|
|
591
|
-
# 2. PRD (Assisted/Strict: [CONFIRM] before confirmed-by-user)
|
|
624
|
+
# 2. Peaks-Cli PRD (Assisted/Strict: [CONFIRM] before confirmed-by-user)
|
|
592
625
|
# Classify the request type from the PRD: feature | bugfix | refactor | docs | config | chore
|
|
593
626
|
# This drives RD/QA gate strictness — see "Mandatory RD QA repair loop" for the matrix.
|
|
594
627
|
peaks request init --role prd --id <rid> --project <repo> --apply --type <type> --json
|
|
@@ -602,7 +635,7 @@ peaks request lint <rid> --role prd --project <repo> --json
|
|
|
602
635
|
peaks request transition <rid> --role prd --state confirmed-by-user --project <repo> --json
|
|
603
636
|
peaks request transition <rid> --role prd --state handed-off --project <repo> --json
|
|
604
637
|
|
|
605
|
-
# 3. Swarm parallel — launch UI + RD(planning) + QA(test-cases) simultaneously
|
|
638
|
+
# 3. Peaks-Cli Swarm parallel — launch UI + RD(planning) + QA(test-cases) simultaneously
|
|
606
639
|
# Pass the same --type chosen for PRD so RD/QA gate matrix lines up.
|
|
607
640
|
peaks request init --role ui --id <rid> --project <repo> --apply --type <type> --json
|
|
608
641
|
peaks request transition <rid> --role ui --state direction-locked --project <repo> --json
|
|
@@ -610,23 +643,23 @@ peaks request transition <rid> --role ui --state handed-off --project <repo> --j
|
|
|
610
643
|
peaks request init --role rd --id <rid> --project <repo> --apply --type <type> --json
|
|
611
644
|
peaks request transition <rid> --role rd --state spec-locked --project <repo> --json
|
|
612
645
|
peaks request init --role qa --id <rid> --project <repo> --apply --type <type> --json
|
|
613
|
-
# → Gate B convergence check. Assisted/Strict: [CONFIRM]
|
|
646
|
+
# → Peaks-Cli Gate B convergence check. Assisted/Strict: [CONFIRM]
|
|
614
647
|
|
|
615
|
-
# 4. RD planning artifact (the file required by the prerequisite gate)
|
|
648
|
+
# 4. Peaks-Cli RD planning artifact (the file required by the prerequisite gate)
|
|
616
649
|
# feature / refactor → write .peaks/<id>/rd/tech-doc.md
|
|
617
650
|
# bugfix → write .peaks/<id>/rd/bug-analysis.md
|
|
618
651
|
# config → no planning artifact required at this state
|
|
619
652
|
# docs / chore → no planning artifact required
|
|
620
653
|
peaks request transition <rid> --role rd --state implemented --project <repo> --json
|
|
621
654
|
|
|
622
|
-
# 5. Code review + security review BEFORE qa-handoff transition.
|
|
655
|
+
# 5. Peaks-Cli Code review + security review BEFORE qa-handoff transition.
|
|
623
656
|
# Produce the evidence files the CLI gate enforces:
|
|
624
657
|
# - .peaks/<id>/rd/code-review.md (CRITICAL/HIGH findings + fixes; required for feature/bugfix/refactor)
|
|
625
658
|
# - .peaks/<id>/rd/security-review.md (required for feature/bugfix/refactor/config)
|
|
626
659
|
# Then transition. If --type is docs/chore the gate is empty and the transition is unguarded.
|
|
627
660
|
peaks request transition <rid> --role rd --state qa-handoff --project <repo> --json
|
|
628
661
|
|
|
629
|
-
# 6. QA validation (AUTO-PROCEED from RD in full-auto)
|
|
662
|
+
# 6. Peaks-Cli QA validation (AUTO-PROCEED from RD in full-auto)
|
|
630
663
|
# Before each QA transition, produce the evidence files the CLI gate enforces:
|
|
631
664
|
# Before qa:running → .peaks/<id>/qa/test-cases/<rid>.md
|
|
632
665
|
peaks request transition <rid> --role qa --state running --project <repo> --json
|
|
@@ -634,9 +667,9 @@ peaks request transition <rid> --role qa --state running --project <repo> --json
|
|
|
634
667
|
# + .peaks/<id>/qa/security-findings.md
|
|
635
668
|
# + .peaks/<id>/qa/performance-findings.md (feature/refactor only)
|
|
636
669
|
peaks request transition <rid> --role qa --state verdict-issued --project <repo> --json
|
|
637
|
-
# → Gate D check. Assisted/Strict: [CONFIRM]
|
|
670
|
+
# → Peaks-Cli Gate D check. Assisted/Strict: [CONFIRM]
|
|
638
671
|
|
|
639
|
-
# 7. RD↔QA repair loop — if verdict is return-to-rd, re-run 4 through 6 until QA passes or blocked TXT.
|
|
672
|
+
# 7. Peaks-Cli RD↔QA repair loop — if verdict is return-to-rd, re-run 4 through 6 until QA passes or blocked TXT.
|
|
640
673
|
# Before invoking peaks-rd again, check the cycle count so you don't blow past the cap silently:
|
|
641
674
|
peaks request repair-status <rid> --project <repo> --json
|
|
642
675
|
# → atCap=true → STOP and emit a blocked TXT handoff. Do NOT enter another cycle.
|
|
@@ -646,35 +679,34 @@ peaks request repair-status <rid> --project <repo> --json
|
|
|
646
679
|
peaks scan request-type-sanity --project <repo> --type <type> --json
|
|
647
680
|
# → consistent=false → RD scope-creeped during repair; review before re-handoff.
|
|
648
681
|
|
|
649
|
-
# 8. SC phase
|
|
682
|
+
# 8. Peaks-Cli SC phase
|
|
650
683
|
peaks sc impact --change-id <cid> --module <module> --file <path> --json
|
|
651
684
|
peaks sc retention --slice-id <rid> --prd <prd> --rd <rd> --qa <qa> --json
|
|
652
685
|
peaks sc validate --slice-id <rid> --json
|
|
653
686
|
peaks sc boundary --slice-id <rid> --artifact <artifact> --code <file> --json
|
|
654
687
|
|
|
655
|
-
# 9. OpenSpec archive (exit gate; only after QA pass, when openspec/ exists)
|
|
688
|
+
# 9. Peaks-Cli OpenSpec archive (exit gate; only after QA pass, when openspec/ exists)
|
|
656
689
|
peaks openspec validate <cid> --project <repo> --json
|
|
657
690
|
peaks openspec archive <cid> --project <repo> --apply --json
|
|
658
691
|
|
|
659
|
-
# 10. TXT handoff
|
|
692
|
+
# 10. Peaks-Cli TXT handoff
|
|
660
693
|
peaks memory extract --project <repo> --artifact <qa-artifact> --dry-run --json
|
|
661
694
|
|
|
662
|
-
# 11. Final snapshot
|
|
695
|
+
# 11. Peaks-Cli Final snapshot
|
|
663
696
|
peaks project dashboard --project <repo> --json
|
|
664
697
|
peaks skill doctor --json
|
|
665
|
-
peaks skill presence:clear
|
|
666
698
|
```
|
|
667
699
|
|
|
668
700
|
Repair loop details: see `## Mandatory RD QA repair loop` above for the full 5-step procedure and the 3-cycle cap. Append transition notes via `--reason` rather than rewriting artifacts during repair cycles.
|
|
669
701
|
|
|
670
|
-
## Project standards preflight
|
|
702
|
+
## Peaks-Cli Project standards preflight
|
|
671
703
|
|
|
672
|
-
Before orchestrating an end-to-end code repository workflow, gather the project standards preflight status from RD and QA by calling the Peaks CLI:
|
|
704
|
+
Before orchestrating an end-to-end code repository workflow, gather the project standards preflight status from RD and QA by calling the Peaks-Cli CLI:
|
|
673
705
|
|
|
674
706
|
- `peaks standards init --project <path> --dry-run`
|
|
675
707
|
- `peaks standards update --project <path> --dry-run`
|
|
676
708
|
|
|
677
|
-
Use `standards init` for first-time creation and `standards update` for existing `CLAUDE.md` append/review behavior. In `full-auto` and `swarm` profiles, `--apply` runs automatically after `--dry-run` succeeds — these files live inside the target project, are required for downstream skill preflight, and producing them is part of finishing the workflow (Gate G enforces this). `assisted` and `strict` profiles pause for explicit user confirmation between dry-run and apply.
|
|
709
|
+
Use `standards init` for first-time creation and `standards update` for existing `CLAUDE.md` append/review behavior. In `full-auto` and `swarm` profiles, `--apply` runs automatically after `--dry-run` succeeds — these files live inside the target project, are required for downstream skill preflight, and producing them is part of finishing the workflow (Peaks-Cli Gate G enforces this). `assisted` and `strict` profiles pause for explicit user confirmation between dry-run and apply.
|
|
678
710
|
|
|
679
711
|
**CRITICAL — Standards must reflect the project scan.** When generating or updating `CLAUDE.md`, the content must reference concrete findings from `.peaks/<id>/rd/project-scan.md`: the detected component library (e.g. "This project uses antd 5.x"), CSS solution (e.g. "Uses Less via Umi"), build tool, state management, and routing. Never emit a generic template that says "read .claude/rules/..." without naming the actual project stack. If the project-scan has not been run yet, run it before standards init/update.
|
|
680
712
|
|
|
@@ -691,7 +723,7 @@ For project-analysis requests such as "分析项目", the handoff must include a
|
|
|
691
723
|
|
|
692
724
|
If the dry-run output lacks enough detail to explain those deltas, say that the standards increment is unknown and keep standards application blocked until another `peaks standards init/update --dry-run` provides evidence.
|
|
693
725
|
|
|
694
|
-
## Refactor mode
|
|
726
|
+
## Peaks-Cli Refactor mode
|
|
695
727
|
|
|
696
728
|
Read `references/refactor-mode.md` before handling refactor requests.
|
|
697
729
|
|
|
@@ -707,7 +739,7 @@ It must enforce the shared refactor red lines:
|
|
|
707
739
|
6. require 100% acceptance for each slice;
|
|
708
740
|
7. require code changes and sanitized intermediate artifacts to be traceable in local `.peaks/<session-id>/` storage before the next slice; commit or sync sanitized artifacts only when explicitly authorized.
|
|
709
741
|
|
|
710
|
-
## Quality-gate commands (CLI cheat sheet)
|
|
742
|
+
## Peaks-Cli Quality-gate commands (CLI cheat sheet)
|
|
711
743
|
|
|
712
744
|
These commands harden the workflow against silent skips. Use them in the runbook at the points indicated; they all support `--json` and `--session-id`.
|
|
713
745
|
|
|
@@ -719,23 +751,27 @@ These commands harden the workflow against silent skips. Use them in the runbook
|
|
|
719
751
|
|
|
720
752
|
Together with `peaks request transition` (which already CLI-enforces per-type artifact prerequisites), these four commands form the runtime quality net. SKILL.md prose is descriptive; the CLI is what physically blocks bad workflows.
|
|
721
753
|
|
|
722
|
-
## Completion handoff
|
|
754
|
+
## Peaks-Cli Completion handoff
|
|
723
755
|
|
|
724
756
|
After final validation, refresh project-local standards via `peaks standards init/update` (never hand-write). Merge scan-backed changes incrementally; preserve hand-maintained content unless user confirms deletion.
|
|
725
757
|
|
|
726
|
-
Use Peaks TXT for the compact handoff capsule: mode, validated decisions, artifact paths, standards deltas (`CLAUDE.md` and `.claude/rules/**` statuses), open questions, next action. Do not restate the full workflow log.
|
|
758
|
+
Use Peaks-Cli TXT for the compact handoff capsule: mode, validated decisions, artifact paths, standards deltas (`CLAUDE.md` and `.claude/rules/**` statuses), open questions, next action. Do not restate the full workflow log.
|
|
759
|
+
|
|
760
|
+
### Workflow completion (no auto-exit)
|
|
761
|
+
|
|
762
|
+
Do NOT call `peaks skill presence:clear` at workflow end. The presence file and header remain active so the user stays inside the workflow context. The user can continue with follow-up requirements naturally — no need to re-invoke `/peaks-solo`. The header continues to display the active skill and current gate.
|
|
727
763
|
|
|
728
|
-
## External references and lifecycle
|
|
764
|
+
## Peaks-Cli External references and lifecycle
|
|
729
765
|
|
|
730
766
|
**Codegraph**: Optional project-analysis before RD handoff. Use `peaks codegraph affected --project <path> <changed-files...> --json` for regression-surface hints. Output as untrusted supporting evidence only; never commit `.codegraph/` artifacts.
|
|
731
767
|
|
|
732
|
-
## Codegraph orchestration context
|
|
768
|
+
## Peaks-Cli Codegraph orchestration context
|
|
733
769
|
|
|
734
770
|
Solo treats `peaks codegraph affected --project <path> <changed-files...> --json` as an optional project-analysis enhancement that informs the role handoff between PRD, RD, and QA. The output is untrusted supporting evidence — Solo must not treat codegraph output as approval for scope, design, or QA verdict.
|
|
735
771
|
|
|
736
|
-
Do not run upstream installer flows, mutate agent settings, or commit `.codegraph/` artifacts into git. Peaks gates remain authoritative; codegraph context is a hint, never a substitute for role-skill output.
|
|
772
|
+
Do not run upstream installer flows, mutate agent settings, or commit `.codegraph/` artifacts into git. Peaks-Cli gates remain authoritative; codegraph context is a hint, never a substitute for role-skill output.
|
|
737
773
|
|
|
738
|
-
**External skills**: All external skill references (`mattpocock/skills`, `awesome-design-md`, `taste-skill`, `shadcn/ui`, `Chrome DevTools MCP`, `Figma Context MCP`, `Context7`, etc.) follow the three-stage pattern: capability discovery via `peaks capabilities` before naming, references only (no execute/install/persist), Peaks CLI for all side effects. Do not execute upstream installers, do not install upstream resources, do not persist sensitive examples — Peaks gates remain authoritative. External skills inform, they do not approve.
|
|
774
|
+
**External skills**: All external skill references (`mattpocock/skills`, `awesome-design-md`, `taste-skill`, `shadcn/ui`, `Chrome DevTools MCP`, `Figma Context MCP`, `Context7`, etc.) follow the three-stage pattern: capability discovery via `peaks capabilities` before naming, references only (no execute/install/persist), Peaks-Cli CLI for all side effects. Do not execute upstream installers, do not install upstream resources, do not persist sensitive examples — Peaks-Cli gates remain authoritative. External skills inform, they do not approve.
|
|
739
775
|
|
|
740
776
|
**OpenSpec lifecycle**: `render → validate → show → to-rd → validate → archive`. Solo's default runbook handles the exit gate (validate → archive after QA pass). Entry-gate validation (to-rd before slicing) is available when `openspec/` exists pre-workflow; Solo delegates it to `peaks-rd` during implementation.
|
|
741
777
|
|