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 +1 -1
- package/skill/SKILL.md +10 -0
- package/skill/agents/openai.yaml +4 -1
- package/skill/skills/brownfield-intake/SKILL.md +12 -11
- package/skill/skills/brownfield-intake/agents/openai.yaml +2 -1
- package/skill/skills/prerequisite-gate/SKILL.md +5 -2
- package/skill/skills/prerequisite-gate/agents/openai.yaml +2 -0
- package/skill/skills/scaffold/SKILL.md +5 -2
- package/skill/skills/scaffold/agents/openai.yaml +2 -0
package/package.json
CHANGED
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`.
|
package/skill/agents/openai.yaml
CHANGED
|
@@ -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.
|
|
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
|
-
#
|
|
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.
|
|
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
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
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
|
-
|
|
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
|
-
|
|
52
|
+
Project mode intake result:
|
|
52
53
|
|
|
53
54
|
- Mode: greenfield (source: <mode_source>; detected: <detected_mode>)
|
|
54
|
-
-
|
|
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: "
|
|
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:
|
|
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:
|
|
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
|