cadence-skill-installer 0.2.39 → 0.2.41

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cadence-skill-installer",
3
- "version": "0.2.39",
3
+ "version": "0.2.41",
4
4
  "description": "Install the Cadence skill into supported AI tool skill directories.",
5
5
  "repository": "https://github.com/snowdamiz/cadence",
6
6
  "private": false,
package/skill/SKILL.md CHANGED
@@ -64,6 +64,15 @@ description: Structured project operating system for end-to-end greenfield or br
64
64
  - user explicitly asks to continue/resume/status/reroute
65
65
  - a route assertion failed and recovery is required
66
66
 
67
+ ## Initial Bootstrap Auto-Run (Mandatory)
68
+ 1. For first-run bootstrap on a net-new project, automatically execute setup gates in one continuous flow: `scaffold` -> `prerequisite-gate` -> project mode intake (`brownfield-intake`).
69
+ 2. After each successful setup gate checkpoint, rerun `read-workflow-state.py` and immediately continue with the next routed setup gate in the same turn.
70
+ 3. Do not stop after scaffold or prerequisite success just to ask the user to trigger the next gate manually.
71
+ 4. Pause only when a gate requires an explicit user decision (for example remote configuration or `.cadence` git policy in scaffold).
72
+ 5. After brownfield-intake completes:
73
+ - if route advances to `ideator`, end with the exact ideation handoff line
74
+ - if route advances to `brownfield-documenter`, end with the exact brownfield handoff line
75
+
67
76
  ## Prerequisite Gate (Conditional)
68
77
  1. Invoke `skills/prerequisite-gate/SKILL.md` only when `route.skill_name` is `prerequisite-gate`.
69
78
  2. If `route.skill_name` is not `prerequisite-gate` (for example `brownfield-intake`, `brownfield-documenter`, `ideator`, `researcher`, or `planner`), skip prerequisite gate and follow the active route instead.
@@ -72,6 +81,7 @@ description: Structured project operating system for end-to-end greenfield or br
72
81
  1. Invoke `skills/brownfield-intake/SKILL.md` only when `route.skill_name` is `brownfield-intake`.
73
82
  2. Use this gate to classify `greenfield` vs `brownfield` execution mode and capture baseline inventory for existing codebases.
74
83
  3. If `route.skill_name` is not `brownfield-intake`, skip this gate and follow the active route instead.
84
+ 4. In user-facing wording, call this step `project mode intake`; avoid calling the project brownfield until mode resolution returns `brownfield`.
75
85
 
76
86
  ## Brownfield Documentation Gate (Conditional)
77
87
  1. Invoke `skills/brownfield-documenter/SKILL.md` only when `route.skill_name` is `brownfield-documenter`.
@@ -7,7 +7,10 @@ interface:
7
7
  If "$PROJECT_ROOT/.cadence" exists, run scripts/check-project-repo-status.py --project-root "$PROJECT_ROOT";
8
8
  otherwise scaffold first. If .cadence exists but cadence.json is missing, run scaffold recovery.
9
9
  After scaffold handling, run scripts/read-workflow-state.py --project-root "$PROJECT_ROOT" and only invoke
10
- the skill in route.skill_name. For manual subskill requests, assert route first with
10
+ the skill in route.skill_name. During first-run bootstrap, auto-chain scaffold -> prerequisite-gate ->
11
+ project mode intake (brownfield-intake) in one continuous run and do not stop between these gates unless a user
12
+ decision is required. In user-facing replies before mode resolution, refer to this step as project mode intake.
13
+ For manual subskill requests, assert route first with
11
14
  scripts/assert-workflow-route.py --skill-name <subskill> --project-root "$PROJECT_ROOT".
12
15
  Never edit .cadence/cadence.json manually. Keep replies concise, do not expose internal traces unless asked,
13
16
  and do not announce successful internal checks.
@@ -3,7 +3,7 @@ name: brownfield-intake
3
3
  description: Classify project mode (greenfield vs brownfield) and capture a deterministic baseline inventory for existing codebases before ideation routing.
4
4
  ---
5
5
 
6
- # Brownfield Intake
6
+ # Project Mode Intake
7
7
 
8
8
  1. Run shared skill entry gates once at conversation start:
9
9
  - `python3 ../../scripts/run-skill-entry-gate.py --require-cadence`
@@ -16,24 +16,25 @@ description: Classify project mode (greenfield vs brownfield) and capture a dete
16
16
  5. If the user explicitly asks to force a specific mode, rerun intake with explicit mode selection:
17
17
  - `python3 "$CADENCE_SCRIPTS_DIR/run-brownfield-intake.py" --project-root "$PROJECT_ROOT" --project-mode <greenfield|brownfield>`
18
18
  6. `run-brownfield-intake.py` performs workflow route assertion internally; if assertion fails, stop and surface the exact error.
19
- 7. If mode is `brownfield`, summarize captured baseline highlights for the user:
19
+ 7. In user-facing updates before mode is determined, refer to this step as `project mode intake`; do not call the repository brownfield before the result is known.
20
+ 8. If mode is `brownfield`, summarize captured baseline highlights for the user:
20
21
  - repository scale (file/directory counts)
21
22
  - detected manifests/tooling
22
23
  - CI workflows
23
24
  - monorepo signal
24
- 8. If mode is `brownfield`, tell the user this gate will route to `skills/brownfield-documenter/SKILL.md` next (not ideator), and end with this exact handoff line: `Start a new chat and say "document my existing project".`
25
- 9. If mode is `greenfield`, state that brownfield baseline capture was skipped and workflow advanced.
26
- 10. At end of this successful skill conversation, run `cd "$PROJECT_ROOT" && python3 "$CADENCE_SCRIPTS_DIR/finalize-skill-checkpoint.py" --scope brownfield-intake --checkpoint baseline-captured --paths .`.
27
- 11. If `finalize-skill-checkpoint.py` returns `status=no_changes`, continue without failure.
28
- 12. If `finalize-skill-checkpoint.py` reports an error, stop and surface it verbatim.
29
- 13. In normal user-facing updates, report mode decision and baseline outcome without raw command traces or internal routing details unless explicitly requested.
25
+ 9. If mode is `brownfield`, tell the user this gate will route to `skills/brownfield-documenter/SKILL.md` next (not ideator), and end with this exact handoff line: `Start a new chat and say "document my existing project".`
26
+ 10. If mode is `greenfield`, state that existing-code baseline capture was skipped and workflow advanced.
27
+ 11. At end of this successful skill conversation, run `cd "$PROJECT_ROOT" && python3 "$CADENCE_SCRIPTS_DIR/finalize-skill-checkpoint.py" --scope brownfield-intake --checkpoint baseline-captured --paths .`.
28
+ 12. If `finalize-skill-checkpoint.py` returns `status=no_changes`, continue without failure.
29
+ 13. If `finalize-skill-checkpoint.py` reports an error, stop and surface it verbatim.
30
+ 14. In normal user-facing updates, report mode decision and baseline outcome without raw command traces or internal routing details unless explicitly requested.
30
31
 
31
32
  ## Strict Response Format
32
33
 
33
34
  - If resulting mode is `brownfield`, respond exactly in this shape:
34
35
 
35
36
  ```text
36
- Brownfield intake result:
37
+ Project mode intake result:
37
38
 
38
39
  - Mode: brownfield (source: <mode_source>; detected: <detected_mode>)
39
40
  - Repository scale: files=<file_count>, directories=<directory_count>
@@ -48,10 +49,10 @@ description: Classify project mode (greenfield vs brownfield) and capture a dete
48
49
  - If resulting mode is `greenfield`, respond exactly in this shape:
49
50
 
50
51
  ```text
51
- Brownfield intake result:
52
+ Project mode intake result:
52
53
 
53
54
  - Mode: greenfield (source: <mode_source>; detected: <detected_mode>)
54
- - Baseline capture: skipped (clean repository)
55
+ - Existing-code baseline: skipped (clean repository)
55
56
  - Checkpoint: brownfield-intake/baseline-captured (<ok|no_changes>)
56
57
  - Next step: Continue with ideation.
57
58
 
@@ -1,5 +1,5 @@
1
1
  interface:
2
- display_name: "Brownfield Intake"
2
+ display_name: "Project Mode Intake"
3
3
  short_description: "Classify project mode and capture existing-codebase baseline"
4
4
  default_prompt: >-
5
5
  Follow skills/brownfield-intake/SKILL.md for exact gate behavior.
@@ -8,6 +8,7 @@ interface:
8
8
  Never edit .cadence/cadence.json manually.
9
9
  Enforce the strict user-facing response templates from skills/brownfield-intake/SKILL.md.
10
10
  Run scripts/run-brownfield-intake.py --project-root "$PROJECT_ROOT" --project-mode auto.
11
+ In user-facing messages before mode resolution, refer to this step as project mode intake (not brownfield intake).
11
12
  Do not ask the user to choose mode up front; clean repositories should resolve to greenfield automatically.
12
13
  If the user explicitly asks to force a mode, rerun with --project-mode <greenfield|brownfield>.
13
14
  If brownfield is selected, summarize key baseline signals and end with:
@@ -20,6 +20,9 @@ description: Run and persist Cadence runtime prerequisite checks. Use when Caden
20
20
  9. If `finalize-skill-checkpoint.py` reports an error, stop and surface it verbatim.
21
21
  10. Surface script failures verbatim instead of adding custom fallback logic.
22
22
  11. In normal user-facing updates, share the prerequisite outcome without raw command traces or internal routing details unless explicitly requested.
23
+ 12. Bootstrap continuation rule:
24
+ - When prerequisite-gate is routed from root Cadence during first-run bootstrap and no error is present, do not stop the conversation after prerequisite completion.
25
+ - Immediately return to root routing so project mode intake (`brownfield-intake`) can run automatically in the same turn.
23
26
 
24
27
  ## Strict Response Format
25
28
 
@@ -34,7 +37,7 @@ description: Run and persist Cadence runtime prerequisite checks. Use when Caden
34
37
  Action required: repair or reinstall Cadence skill files, then rerun the prerequisite gate.
35
38
  ```
36
39
 
37
- - On successful prerequisite completion, respond exactly:
40
+ - On successful prerequisite completion, respond exactly only when prerequisite-gate is the terminal action for the turn (for example direct subskill runs or explicit prerequisite status requests). During root bootstrap auto-run, continue to project mode intake without emitting this terminal template.
38
41
 
39
42
  ```text
40
43
  Prerequisite gate complete:
@@ -43,5 +46,5 @@ description: Run and persist Cadence runtime prerequisite checks. Use when Caden
43
46
  - Cadence prerequisite gate: passed
44
47
  - Checkpoint: prerequisite-gate/prerequisites-passed (<ok|no_changes>)
45
48
 
46
- Next step: Run project mode and baseline intake.
49
+ Next step: Auto-continue to project mode and baseline intake.
47
50
  ```
@@ -8,6 +8,8 @@ interface:
8
8
  Never edit .cadence/cadence.json manually.
9
9
  Enforce the strict user-facing response templates from skills/prerequisite-gate/SKILL.md.
10
10
  Run scripts/run-prerequisite-gate.py --project-root "$PROJECT_ROOT" --scripts-dir "$CADENCE_SCRIPTS_DIR".
11
+ During root Cadence first-run bootstrap, do not stop after prerequisite success; continue routing so
12
+ project mode intake (brownfield-intake) runs automatically in the same turn when there are no prerequisite errors.
11
13
  Finalize from PROJECT_ROOT with scripts/finalize-skill-checkpoint.py --scope prerequisite-gate
12
14
  --checkpoint prerequisites-passed --paths . (allow status=no_changes; treat failures as blocking).
13
15
  Keep replies focused on prerequisite outcomes and hide internal traces unless asked.
@@ -37,6 +37,9 @@ description: Initialize Cadence project scaffolding for first-time setup. Use wh
37
37
  13. If `finalize-skill-checkpoint.py` reports an error, stop and surface it verbatim.
38
38
  14. Execute scaffold actions serially. Do not run this flow in parallel with other setup gates.
39
39
  15. In user-facing replies, summarize only the result. Do not expose internal command lines, skill chains, or execution traces unless explicitly requested.
40
+ 16. Bootstrap continuation rule:
41
+ - When scaffold is routed from root Cadence during first-run bootstrap and no scaffold decision is pending, do not stop the conversation after scaffold completion.
42
+ - Immediately return to root routing so `prerequisite-gate` can run automatically in the same turn.
40
43
 
41
44
  ## Strict Response Format
42
45
 
@@ -52,7 +55,7 @@ description: Initialize Cadence project scaffolding for first-time setup. Use wh
52
55
  Decision needed: <one required decision>
53
56
  ```
54
57
 
55
- - For successful completion, respond exactly in this shape:
58
+ - For successful completion, respond exactly in this shape only when scaffold is the terminal action for the turn (for example direct scaffold runs or explicit scaffold status requests). During root bootstrap auto-run, continue to prerequisite without emitting this terminal template.
56
59
 
57
60
  ```text
58
61
  Scaffold complete:
@@ -62,5 +65,5 @@ description: Initialize Cadence project scaffolding for first-time setup. Use wh
62
65
  - Repo mode: <remote-enabled|local-only>
63
66
  - .cadence git policy: <tracked|ignored>
64
67
  - Checkpoint: scaffold/<cadence-tracked|cadence-ignored> (<ok|no_changes>)
65
- - Next step: Run prerequisite gate.
68
+ - Next step: Auto-continue to prerequisite gate.
66
69
  ```
@@ -11,6 +11,8 @@ interface:
11
11
  --gitignore-path "$PROJECT_ROOT/.gitignore" only (do not pass --project-root).
12
12
  Never edit .cadence/cadence.json manually.
13
13
  Enforce the strict user-facing response templates from skills/scaffold/SKILL.md.
14
+ During root Cadence first-run bootstrap, do not stop after scaffold success; continue routing so
15
+ prerequisite-gate runs automatically in the same turn when no scaffold decision is pending.
14
16
  Only rerun repo-status after remote setup to confirm repo_enabled=true; do not run an extra write pass
15
17
  just to persist false in local-only mode.
16
18
  Finalize with scripts/finalize-skill-checkpoint.py --paths . --project-root "$PROJECT_ROOT" and the scope/checkpoint