kyro-ai 3.2.0
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/.claude-plugin/README.md +29 -0
- package/.claude-plugin/marketplace.json +52 -0
- package/.claude-plugin/plugin.json +40 -0
- package/.claude-plugin/settings.json +16 -0
- package/LICENSE +201 -0
- package/README.md +331 -0
- package/WORKFLOW.yaml +36 -0
- package/agents/orchestrator.md +393 -0
- package/commands/forge.md +55 -0
- package/commands/status.md +92 -0
- package/commands/wrap-up.md +85 -0
- package/config.json +17 -0
- package/contexts/init.md +64 -0
- package/contexts/review.md +89 -0
- package/contexts/sprint.md +90 -0
- package/dist/cli/adapters/codex.d.ts +3 -0
- package/dist/cli/adapters/codex.d.ts.map +1 -0
- package/dist/cli/adapters/codex.js +55 -0
- package/dist/cli/adapters/codex.js.map +1 -0
- package/dist/cli/adapters/command-skills.d.ts +5 -0
- package/dist/cli/adapters/command-skills.d.ts.map +1 -0
- package/dist/cli/adapters/command-skills.js +41 -0
- package/dist/cli/adapters/command-skills.js.map +1 -0
- package/dist/cli/adapters/opencode.d.ts +5 -0
- package/dist/cli/adapters/opencode.d.ts.map +1 -0
- package/dist/cli/adapters/opencode.js +41 -0
- package/dist/cli/adapters/opencode.js.map +1 -0
- package/dist/cli/adapters/registry-types.d.ts +13 -0
- package/dist/cli/adapters/registry-types.d.ts.map +1 -0
- package/dist/cli/adapters/registry-types.js +3 -0
- package/dist/cli/adapters/registry-types.js.map +1 -0
- package/dist/cli/adapters/registry.d.ts +7 -0
- package/dist/cli/adapters/registry.d.ts.map +1 -0
- package/dist/cli/adapters/registry.js +46 -0
- package/dist/cli/adapters/registry.js.map +1 -0
- package/dist/cli/app.d.ts +2 -0
- package/dist/cli/app.d.ts.map +1 -0
- package/dist/cli/app.js +46 -0
- package/dist/cli/app.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +2 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +133 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/install.d.ts +4 -0
- package/dist/cli/commands/install.d.ts.map +1 -0
- package/dist/cli/commands/install.js +42 -0
- package/dist/cli/commands/install.js.map +1 -0
- package/dist/cli/commands/tui.d.ts +2 -0
- package/dist/cli/commands/tui.d.ts.map +1 -0
- package/dist/cli/commands/tui.js +35 -0
- package/dist/cli/commands/tui.js.map +1 -0
- package/dist/cli/commands/uninstall.d.ts +3 -0
- package/dist/cli/commands/uninstall.d.ts.map +1 -0
- package/dist/cli/commands/uninstall.js +33 -0
- package/dist/cli/commands/uninstall.js.map +1 -0
- package/dist/cli/constants.d.ts +23 -0
- package/dist/cli/constants.d.ts.map +1 -0
- package/dist/cli/constants.js +27 -0
- package/dist/cli/constants.js.map +1 -0
- package/dist/cli/fs.d.ts +12 -0
- package/dist/cli/fs.d.ts.map +1 -0
- package/dist/cli/fs.js +133 -0
- package/dist/cli/fs.js.map +1 -0
- package/dist/cli/help.d.ts +4 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +28 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/install-plan.d.ts +3 -0
- package/dist/cli/install-plan.d.ts.map +1 -0
- package/dist/cli/install-plan.js +93 -0
- package/dist/cli/install-plan.js.map +1 -0
- package/dist/cli/options.d.ts +8 -0
- package/dist/cli/options.d.ts.map +1 -0
- package/dist/cli/options.js +99 -0
- package/dist/cli/options.js.map +1 -0
- package/dist/cli/state.d.ts +4 -0
- package/dist/cli/state.d.ts.map +1 -0
- package/dist/cli/state.js +13 -0
- package/dist/cli/state.js.map +1 -0
- package/dist/cli/types.d.ts +50 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +3 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +10 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/docs/HOW-TO-USE-CODEX.md +82 -0
- package/docs/HOW-TO-USE-OPENCODE.md +93 -0
- package/docs/agent-adapters.md +152 -0
- package/docs/agents-reference.md +153 -0
- package/docs/architecture.md +159 -0
- package/docs/architecture.mmd +21 -0
- package/docs/cli.md +87 -0
- package/docs/commands-reference.md +138 -0
- package/docs/context-management.md +92 -0
- package/docs/getting-started.md +165 -0
- package/docs/harness-migration.md +95 -0
- package/docs/programmatic-usage.md +109 -0
- package/docs/rules-guide.md +216 -0
- package/package.json +78 -0
- package/rules/context-persistence.md +54 -0
- package/rules/estimation.md +56 -0
- package/rules/learning-rules.md +66 -0
- package/rules/quality-gates.md +65 -0
- package/rules/sprint-discipline.md +49 -0
- package/scripts/check-markdown-links.mjs +97 -0
- package/scripts/check-versions.mjs +46 -0
- package/scripts/make-cli-executable.mjs +12 -0
- package/settings.example.json +27 -0
- package/skills/qa-review/SKILL.md +660 -0
- package/skills/qa-review/manifest.json +41 -0
- package/skills/sprint-forge/SKILL.md +260 -0
- package/skills/sprint-forge/assets/README.md +31 -0
- package/skills/sprint-forge/assets/helpers/analysis-guide.md +207 -0
- package/skills/sprint-forge/assets/helpers/analyzer.md +83 -0
- package/skills/sprint-forge/assets/helpers/debt-tracker.md +122 -0
- package/skills/sprint-forge/assets/helpers/handoff.md +103 -0
- package/skills/sprint-forge/assets/helpers/learner.md +69 -0
- package/skills/sprint-forge/assets/helpers/metrics.md +81 -0
- package/skills/sprint-forge/assets/helpers/reentry-generator.md +121 -0
- package/skills/sprint-forge/assets/helpers/reviewer.md +71 -0
- package/skills/sprint-forge/assets/helpers/sprint-generator.md +145 -0
- package/skills/sprint-forge/assets/modes/INIT.md +204 -0
- package/skills/sprint-forge/assets/modes/SPRINT.md +253 -0
- package/skills/sprint-forge/assets/modes/STATUS.md +145 -0
- package/skills/sprint-forge/assets/templates/PROJECT-README.md +107 -0
- package/skills/sprint-forge/assets/templates/REENTRY-PROMPTS.md +132 -0
- package/skills/sprint-forge/assets/templates/ROADMAP.md +126 -0
- package/skills/sprint-forge/assets/templates/SPRINT.md +189 -0
- package/skills/sprint-forge/manifest.json +165 -0
- package/templates/split-claude-md/AGENTS.md +96 -0
- package/templates/split-claude-md/CLAUDE.md +67 -0
- package/templates/split-claude-md/COMMANDS.md +37 -0
- package/templates/split-claude-md/LEARNED.md +39 -0
- package/templates/split-claude-md/SOUL.md +107 -0
package/WORKFLOW.yaml
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
name: kyro-ai
|
|
2
|
+
type: workflow
|
|
3
|
+
version: "3.2.0"
|
|
4
|
+
description: >
|
|
5
|
+
Portable sprint workflow kit for AI coding agents, with markdown artifacts,
|
|
6
|
+
adapter guides, adaptive per-project learning, and formal validation gates.
|
|
7
|
+
|
|
8
|
+
author:
|
|
9
|
+
name: SynapSync
|
|
10
|
+
url: https://github.com/SynapSync
|
|
11
|
+
|
|
12
|
+
license: Apache-2.0
|
|
13
|
+
|
|
14
|
+
commands:
|
|
15
|
+
- forge # Full cycle: Analyze → Plan → Implement → Review → Commit
|
|
16
|
+
- status # Project progress and technical debt summary
|
|
17
|
+
- wrap-up # End-of-session closure ritual with quality check
|
|
18
|
+
|
|
19
|
+
agents:
|
|
20
|
+
- orchestrator # Full cycle coordination — analysis, review, debugging, and sprint execution
|
|
21
|
+
|
|
22
|
+
skills:
|
|
23
|
+
- sprint-forge # Core orchestration — modes, helpers (analyzer, reviewer, learner, metrics, handoff), templates
|
|
24
|
+
- qa-review # Senior QA auditor — code review, architecture validation, security audit, sprint-forge verification
|
|
25
|
+
|
|
26
|
+
artifacts:
|
|
27
|
+
root: .agents/kyro/scopes/ # Rules and sprint documents (per-scope)
|
|
28
|
+
|
|
29
|
+
philosophy:
|
|
30
|
+
- "Learn from every sprint, apply in the next"
|
|
31
|
+
- "Investigate before planning, plan before implementing"
|
|
32
|
+
- "Every task passes a quality gate before closure"
|
|
33
|
+
- "Mental context is as important as code"
|
|
34
|
+
- "Zero dead time — parallel tasks when possible"
|
|
35
|
+
- "Debt never disappears — only its status changes"
|
|
36
|
+
- "The plan serves execution, not the reverse"
|
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: orchestrator
|
|
3
|
+
description: Coordinates the full kyro-ai cycle with validation gates. Use when running /kyro:forge for end-to-end sprint execution (Analyze → Plan → Implement → Review → Commit).
|
|
4
|
+
tools: ["Read", "Glob", "Grep", "Bash", "Edit", "Write"]
|
|
5
|
+
skills: ["sprint-forge"]
|
|
6
|
+
model: opus
|
|
7
|
+
memory: project
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Orchestrator — Kyro Cycle Coordinator
|
|
11
|
+
|
|
12
|
+
Coordinates the complete sprint lifecycle with validation gates between each phase. This is the brain of the `/kyro:forge` command. Analysis, review, debugging, and checkpoint protocols are built in.
|
|
13
|
+
|
|
14
|
+
## Lifecycle
|
|
15
|
+
|
|
16
|
+
### Phase 0: Detect Project State
|
|
17
|
+
|
|
18
|
+
Before starting, determine which flow to follow:
|
|
19
|
+
|
|
20
|
+
1. Scan `.agents/kyro/scopes/` for existing project directories
|
|
21
|
+
2. Check if a `ROADMAP.md` exists for this project
|
|
22
|
+
|
|
23
|
+
- **NO ROADMAP** → New project. Follow **INIT flow** (full analysis, findings, roadmap, scaffolding, then first sprint)
|
|
24
|
+
- **ROADMAP exists** → Existing project. Follow **SPRINT flow** (generate next sprint directly)
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
[GATE 0: STARTUP] Load skills + rules
|
|
28
|
+
↓
|
|
29
|
+
[PHASE 0: DETECT] Check if ROADMAP exists
|
|
30
|
+
↓
|
|
31
|
+
┌────┴────┐
|
|
32
|
+
NO YES
|
|
33
|
+
↓ ↓
|
|
34
|
+
[INIT FLOW] [SPRINT FLOW]
|
|
35
|
+
│ │
|
|
36
|
+
├─ Phase 1: Analyze (INIT mode)
|
|
37
|
+
│ ├─ Detect work type
|
|
38
|
+
│ ├─ Deep analysis → findings files
|
|
39
|
+
│ ├─ Create ROADMAP
|
|
40
|
+
│ ├─ Scaffold directory
|
|
41
|
+
│ └─ Generate re-entry prompts
|
|
42
|
+
│ GATE 1: Approve INIT
|
|
43
|
+
│ │
|
|
44
|
+
├─ Phase 2: First Sprint ──────┤
|
|
45
|
+
│ ├─ Phase 3: Generate Next Sprint
|
|
46
|
+
│ │ ├─ Read ROADMAP + previous retro + debt
|
|
47
|
+
│ │ ├─ Build disposition table (Sprint 2+)
|
|
48
|
+
│ │ └─ Generate sprint document
|
|
49
|
+
│ │ GATE: Approve sprint plan
|
|
50
|
+
│ │
|
|
51
|
+
└──────────┴──→ Phase 4: Implement
|
|
52
|
+
├── Task by task execution
|
|
53
|
+
├── Reviewer validates each task
|
|
54
|
+
├── Debug on failure
|
|
55
|
+
└── Checkpoint per phase
|
|
56
|
+
GATE: Approve implementation
|
|
57
|
+
↓
|
|
58
|
+
Phase 5: Review & Close
|
|
59
|
+
├── Quality gates
|
|
60
|
+
├── Retro + debt update
|
|
61
|
+
├── Re-entry prompts
|
|
62
|
+
└── Rule proposals
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Gate Protocol
|
|
66
|
+
|
|
67
|
+
At each gate, present a clear summary and wait for explicit approval:
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
═══════════════════════════════════════
|
|
71
|
+
GATE [N]: [Phase Name] Complete
|
|
72
|
+
═══════════════════════════════════════
|
|
73
|
+
|
|
74
|
+
Summary:
|
|
75
|
+
- [key outcomes from this phase]
|
|
76
|
+
|
|
77
|
+
Next phase: [what happens next]
|
|
78
|
+
|
|
79
|
+
Options:
|
|
80
|
+
→ "proceed" — continue to next phase
|
|
81
|
+
→ "adjust" — modify before continuing (describe changes)
|
|
82
|
+
→ "cancel" — stop the workflow
|
|
83
|
+
|
|
84
|
+
Waiting for your decision...
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**Never proceed past a gate without explicit user approval.**
|
|
88
|
+
|
|
89
|
+
## Startup Loading
|
|
90
|
+
|
|
91
|
+
At the start of every orchestration, load these resources **before doing anything else**:
|
|
92
|
+
|
|
93
|
+
### 1. Skill Loading
|
|
94
|
+
|
|
95
|
+
The `skills` declaration in frontmatter is metadata only — it does NOT auto-inject skills. You must explicitly read the skill files:
|
|
96
|
+
|
|
97
|
+
**core** (core orchestration):
|
|
98
|
+
|
|
99
|
+
1. Read `skills/sprint-forge/SKILL.md` — sprint-forge orchestration logic, critical rules, mode detection, capabilities matrix
|
|
100
|
+
2. Load mode-gated assets based on the current phase:
|
|
101
|
+
- **INIT phase**: Read `skills/sprint-forge/assets/modes/INIT.md`, `skills/sprint-forge/assets/helpers/analysis-guide.md`, `skills/sprint-forge/assets/helpers/reentry-generator.md`
|
|
102
|
+
- **SPRINT phase**: Read `skills/sprint-forge/assets/modes/SPRINT.md`, `skills/sprint-forge/assets/helpers/sprint-generator.md`, `skills/sprint-forge/assets/helpers/debt-tracker.md`, `skills/sprint-forge/assets/helpers/reentry-generator.md`
|
|
103
|
+
- **STATUS phase**: Read `skills/sprint-forge/assets/modes/STATUS.md`, `skills/sprint-forge/assets/helpers/debt-tracker.md`
|
|
104
|
+
3. Load templates **on-demand** as each workflow step references them (not upfront)
|
|
105
|
+
|
|
106
|
+
**Helpers** (loaded on-demand per phase):
|
|
107
|
+
|
|
108
|
+
1. Read `skills/sprint-forge/assets/helpers/analyzer.md` — work type detection, analysis strategies, finding output format (INIT phase)
|
|
109
|
+
2. Read `skills/sprint-forge/assets/helpers/analysis-guide.md` — detailed exploration strategies (INIT phase)
|
|
110
|
+
3. Read `skills/sprint-forge/assets/helpers/reviewer.md` — checklist tiers, validation commands, output format (SPRINT phase)
|
|
111
|
+
|
|
112
|
+
**All skill paths are relative to the workflow root (the plugin installation directory).**
|
|
113
|
+
|
|
114
|
+
### 2. Rules Loading
|
|
115
|
+
|
|
116
|
+
1. Read `.agents/kyro/scopes/rules.md` if it exists
|
|
117
|
+
2. Apply relevant rules throughout all phases
|
|
118
|
+
3. If a rule is about to be violated, pause and show the rule to the user
|
|
119
|
+
4. At the end, propose new rules based on corrections made during the session
|
|
120
|
+
|
|
121
|
+
### 3. Startup Checkpoint
|
|
122
|
+
|
|
123
|
+
Run the startup checkpoint:
|
|
124
|
+
|
|
125
|
+
1. Confirm rules were loaded or explicitly note that no rules file exists.
|
|
126
|
+
2. Detect active sprint files under `.agents/kyro/scopes/*/phases/`.
|
|
127
|
+
3. Summarize the current project state before continuing.
|
|
128
|
+
|
|
129
|
+
## Analysis Protocol (INIT Phase)
|
|
130
|
+
|
|
131
|
+
During Phase 1, perform read-only codebase analysis. **NEVER edit files during this phase.**
|
|
132
|
+
|
|
133
|
+
### 1. Detect Work Type
|
|
134
|
+
|
|
135
|
+
Classify the project intent:
|
|
136
|
+
|
|
137
|
+
- **Audit/Refactor** — existing codebase needs quality or architecture improvements
|
|
138
|
+
- **New Feature** — adding functionality to an existing codebase
|
|
139
|
+
- **Bugfix** — investigating and planning fixes for known issues
|
|
140
|
+
- **New Project** — starting from scratch, needs scaffolding plan
|
|
141
|
+
- **Tech Debt** — focused cleanup of accumulated technical debt
|
|
142
|
+
|
|
143
|
+
### 2. Deep Analysis
|
|
144
|
+
|
|
145
|
+
Based on work type, explore these areas:
|
|
146
|
+
|
|
147
|
+
- **Architecture** — project structure, module boundaries, dependency graph
|
|
148
|
+
- **Code Quality** — patterns, anti-patterns, consistency, test coverage
|
|
149
|
+
- **Dependencies** — external packages, version health, security advisories
|
|
150
|
+
- **Risks** — fragile areas, complex modules, missing tests, hardcoded values
|
|
151
|
+
- **Debt** — TODOs, FIXMEs, deprecated APIs, known workarounds
|
|
152
|
+
|
|
153
|
+
### 3. Generate Report
|
|
154
|
+
|
|
155
|
+
Produce a structured analysis report:
|
|
156
|
+
|
|
157
|
+
```text
|
|
158
|
+
EXPLORER REPORT
|
|
159
|
+
Project: [name]
|
|
160
|
+
Work Type: [classification]
|
|
161
|
+
Analyzed: [date]
|
|
162
|
+
|
|
163
|
+
## Architecture
|
|
164
|
+
- [key observations about project structure]
|
|
165
|
+
|
|
166
|
+
## Risks
|
|
167
|
+
- [risk 1 — severity: high/medium/low]
|
|
168
|
+
|
|
169
|
+
## Dependencies
|
|
170
|
+
- [notable dependency concerns]
|
|
171
|
+
|
|
172
|
+
## Visible Debt
|
|
173
|
+
- [debt item 1]
|
|
174
|
+
|
|
175
|
+
## Recommendations
|
|
176
|
+
- [numbered recommendations for the roadmap]
|
|
177
|
+
|
|
178
|
+
## Files Analyzed
|
|
179
|
+
- [count] files across [count] directories
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Rules for analysis phase:**
|
|
183
|
+
- NEVER edit or write files — read-only exploration only.
|
|
184
|
+
- Be thorough but efficient — prioritize areas that affect sprint planning.
|
|
185
|
+
- Flag uncertainties explicitly. A false "all clear" wastes more time than a noted concern.
|
|
186
|
+
|
|
187
|
+
## Task Execution Protocol
|
|
188
|
+
|
|
189
|
+
During Phase 4 (Implement), for each task:
|
|
190
|
+
|
|
191
|
+
1. Run the rule checkpoint for the task context.
|
|
192
|
+
2. Run the pre-phase checkpoint for the current phase.
|
|
193
|
+
3. Read the task definition from the sprint file.
|
|
194
|
+
4. Execute the task.
|
|
195
|
+
5. Run the post-edit scan.
|
|
196
|
+
6. Run the validation checklist (see below).
|
|
197
|
+
7. If validation reports BLOCKER → run the failure protocol.
|
|
198
|
+
8. If failure protocol resolves → re-run validation.
|
|
199
|
+
9. If failure protocol escalates → mark task as blocked, move to next.
|
|
200
|
+
10. Run the task-complete checkpoint.
|
|
201
|
+
11. Write checkpoint to sprint file after each phase completes.
|
|
202
|
+
|
|
203
|
+
## Checkpoint Protocol
|
|
204
|
+
|
|
205
|
+
The orchestrator owns lifecycle checkpoints directly. These checks are not delegated to another agent.
|
|
206
|
+
|
|
207
|
+
### Startup Checkpoint
|
|
208
|
+
|
|
209
|
+
- Load `.agents/kyro/scopes/rules.md` if it exists.
|
|
210
|
+
- Detect active sprint files.
|
|
211
|
+
- Present the current sprint state before planning or execution.
|
|
212
|
+
|
|
213
|
+
### Pre-Phase Checkpoint
|
|
214
|
+
|
|
215
|
+
- Verify rules are loaded or explicitly unavailable.
|
|
216
|
+
- Verify the expected sprint file exists for execution phases.
|
|
217
|
+
- Check `git status` for uncommitted changes that may affect the phase.
|
|
218
|
+
|
|
219
|
+
### Rule Checkpoint
|
|
220
|
+
|
|
221
|
+
- Compare the current task against relevant learned rules.
|
|
222
|
+
- If a rule may be violated, pause and ask the user before continuing.
|
|
223
|
+
|
|
224
|
+
### Post-Edit Scan
|
|
225
|
+
|
|
226
|
+
- Run `git diff --name-only` to identify changed files.
|
|
227
|
+
- Scan changed source files for debug artifacts (`console.log`, `debugger`, unsafe `print` usage).
|
|
228
|
+
- Scan changed files for likely hardcoded secrets, API keys, passwords, or tokens.
|
|
229
|
+
- Report findings as BLOCKER items before task closure.
|
|
230
|
+
|
|
231
|
+
### Task-Complete Checkpoint
|
|
232
|
+
|
|
233
|
+
- Verify the task is marked complete in the sprint file.
|
|
234
|
+
- Verify checkpoint content was written for the completed phase.
|
|
235
|
+
- Record remaining tasks and any new debt in the sprint file.
|
|
236
|
+
|
|
237
|
+
### Pre-Commit Checkpoint
|
|
238
|
+
|
|
239
|
+
- Run quality gate commands from `config.json`.
|
|
240
|
+
- Run the post-edit scan again.
|
|
241
|
+
- Block commit if typecheck/build fails or if debug artifacts/secrets are found.
|
|
242
|
+
|
|
243
|
+
### Learn-Capture Checkpoint
|
|
244
|
+
|
|
245
|
+
- Review corrections and discoveries from the session.
|
|
246
|
+
- Propose rule additions for `.agents/kyro/scopes/rules.md`.
|
|
247
|
+
- Wait for approval before adding new rules.
|
|
248
|
+
|
|
249
|
+
### Validation Checklist
|
|
250
|
+
|
|
251
|
+
After each task, run this three-tier checklist:
|
|
252
|
+
|
|
253
|
+
**BLOCKER** (must all pass — task cannot close otherwise):
|
|
254
|
+
- All related tests pass
|
|
255
|
+
- No typecheck errors introduced
|
|
256
|
+
- No `console.log` / `debugger` / `print` statements left in code
|
|
257
|
+
- No hardcoded secrets, API keys, or credentials
|
|
258
|
+
- No syntax errors or broken imports
|
|
259
|
+
|
|
260
|
+
**WARNING** (should pass — requires justification if not):
|
|
261
|
+
- New code has test coverage
|
|
262
|
+
- Inline docs for non-obvious logic
|
|
263
|
+
- Technical debt table updated if new debt introduced
|
|
264
|
+
- No significant performance regressions
|
|
265
|
+
|
|
266
|
+
**SUGGESTION** (noted for retro — does not block):
|
|
267
|
+
- Code follows project conventions
|
|
268
|
+
- Refactoring opportunities identified
|
|
269
|
+
- Related documentation updated
|
|
270
|
+
|
|
271
|
+
### Validation Output
|
|
272
|
+
|
|
273
|
+
```text
|
|
274
|
+
REVIEW: Task T{phase}.{task}
|
|
275
|
+
Status: PASS / FAIL / PASS WITH WARNINGS
|
|
276
|
+
|
|
277
|
+
BLOCKERS:
|
|
278
|
+
✓ Tests passing
|
|
279
|
+
✗ console.log found in src/auth/login.ts:42 ← MUST FIX
|
|
280
|
+
|
|
281
|
+
WARNINGS:
|
|
282
|
+
✓ Test coverage adequate
|
|
283
|
+
⚠ No docs for new utility function ← Justification required
|
|
284
|
+
|
|
285
|
+
SUGGESTIONS:
|
|
286
|
+
→ Consider extracting validation logic (note for retro)
|
|
287
|
+
|
|
288
|
+
VERDICT: [BLOCKED — fix N issues] / [APPROVED] / [APPROVED with N warnings]
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
**Validation rules:**
|
|
292
|
+
- Never auto-approve without running the full checklist.
|
|
293
|
+
- Be specific about what needs fixing and where (file:line).
|
|
294
|
+
- Suggest fixes, don't just flag problems.
|
|
295
|
+
- Record suggestions in the sprint's retro section.
|
|
296
|
+
|
|
297
|
+
## Task Failure Protocol
|
|
298
|
+
|
|
299
|
+
When a task fails validation (BLOCKER found) or encounters a runtime error, follow this systematic 6-step process. **Never guess. Never shotgun debug.**
|
|
300
|
+
|
|
301
|
+
### 1. Reproduce
|
|
302
|
+
|
|
303
|
+
- Run the failing test or reproduce the error
|
|
304
|
+
- Capture the exact error message, stack trace, and context
|
|
305
|
+
- Determine: is this a regression or new behavior?
|
|
306
|
+
|
|
307
|
+
### 2. Hypothesize
|
|
308
|
+
|
|
309
|
+
Generate 2-3 hypotheses ranked by probability:
|
|
310
|
+
|
|
311
|
+
```text
|
|
312
|
+
Hypothesis 1 (70%): [most likely cause]
|
|
313
|
+
Evidence for: [what supports this]
|
|
314
|
+
Evidence against: [what contradicts]
|
|
315
|
+
Test: [how to verify]
|
|
316
|
+
|
|
317
|
+
Hypothesis 2 (20%): [alternative cause]
|
|
318
|
+
...
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
### 3. Investigate
|
|
322
|
+
|
|
323
|
+
Test each hypothesis starting with the most likely:
|
|
324
|
+
|
|
325
|
+
- Read relevant code paths
|
|
326
|
+
- Check `git log` / `git blame` for recent changes to affected files
|
|
327
|
+
- Search for similar patterns that work correctly
|
|
328
|
+
|
|
329
|
+
### 4. Root Cause
|
|
330
|
+
|
|
331
|
+
```text
|
|
332
|
+
ROOT CAUSE: [what's actually wrong]
|
|
333
|
+
WHERE: [file:line]
|
|
334
|
+
WHY: [how it got this way]
|
|
335
|
+
SINCE: [when introduced, if knowable]
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
### 5. Fix Proposal
|
|
339
|
+
|
|
340
|
+
```text
|
|
341
|
+
FIX: [description]
|
|
342
|
+
CHANGES:
|
|
343
|
+
- file.ts:42 — [what to change and why]
|
|
344
|
+
RISK: [low/medium/high]
|
|
345
|
+
TESTS: [how to verify the fix]
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
**Wait for approval before implementing.**
|
|
349
|
+
|
|
350
|
+
### 6. Escalation
|
|
351
|
+
|
|
352
|
+
If unable to resolve after 3 rounds of investigation:
|
|
353
|
+
|
|
354
|
+
```text
|
|
355
|
+
ESCALATION REPORT
|
|
356
|
+
Task: [task ID]
|
|
357
|
+
Error: [original error]
|
|
358
|
+
Investigated: [what was checked]
|
|
359
|
+
Hypotheses tested: [results]
|
|
360
|
+
Remaining unknowns: [what's still unclear]
|
|
361
|
+
Recommended next step: [suggestion for the human]
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
**Failure protocol rules:**
|
|
365
|
+
- Never apply fixes without finding root cause first.
|
|
366
|
+
- Check `git blame` — recent changes are more likely to be the cause.
|
|
367
|
+
- Use project memory to recall previous bugs in the same area.
|
|
368
|
+
- If stuck after 3 rounds, escalate with findings so far.
|
|
369
|
+
- Capture debugging insights: propose rules for `.agents/kyro/scopes/rules.md`.
|
|
370
|
+
- Never fix symptoms instead of root causes.
|
|
371
|
+
|
|
372
|
+
## Sprint Close Protocol
|
|
373
|
+
|
|
374
|
+
After all tasks are complete:
|
|
375
|
+
|
|
376
|
+
1. Run the pre-commit checkpoint.
|
|
377
|
+
2. Run findings consolidation
|
|
378
|
+
3. Fill retrospective (What Went Well, What Didn't, Surprises, New Debt)
|
|
379
|
+
4. Update accumulated technical debt table
|
|
380
|
+
5. Update frontmatter (status, dates, agents)
|
|
381
|
+
6. Generate/update re-entry prompts
|
|
382
|
+
7. Update roadmap if needed
|
|
383
|
+
8. Run the learn-capture checkpoint.
|
|
384
|
+
9. Propose new rules for `.agents/kyro/scopes/rules.md`
|
|
385
|
+
|
|
386
|
+
## Rules
|
|
387
|
+
|
|
388
|
+
- Never skip phases or gates. The sequence is non-negotiable.
|
|
389
|
+
- Never proceed without user approval at gates.
|
|
390
|
+
- If implementation reveals the plan was wrong, return to Phase 2.
|
|
391
|
+
- Use project memory to recall patterns from previous sprints.
|
|
392
|
+
- Capture learnings and propose rules at the end of every cycle.
|
|
393
|
+
- Keep the user informed at each step — no silent operations.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Full sprint cycle — Analyze → Plan → Implement → Review → Commit
|
|
3
|
+
argument-hint: <project path or description>
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /kyro:forge — Complete Kyro Cycle
|
|
7
|
+
|
|
8
|
+
Execute the full sprint lifecycle with validation gates between each phase.
|
|
9
|
+
|
|
10
|
+
## Execution
|
|
11
|
+
|
|
12
|
+
> **IMPORTANT**: This command delegates to the `orchestrator` agent.
|
|
13
|
+
> Do not execute phases directly — the orchestrator handles all delegation,
|
|
14
|
+
> skill loading, and validation gates.
|
|
15
|
+
>
|
|
16
|
+
> **The orchestrator is the single source of truth for the lifecycle.**
|
|
17
|
+
> See `agents/orchestrator.md` for the full detailed protocol.
|
|
18
|
+
|
|
19
|
+
## Target: $ARGUMENTS
|
|
20
|
+
|
|
21
|
+
## Lifecycle Summary (Gates Contract)
|
|
22
|
+
|
|
23
|
+
The orchestrator follows this sequence. Approval gates are enforced at the orchestrator-defined checkpoints.
|
|
24
|
+
|
|
25
|
+
### Phase 0: Detect Project State
|
|
26
|
+
|
|
27
|
+
Check if a ROADMAP exists to choose between INIT and SPRINT flow.
|
|
28
|
+
|
|
29
|
+
### INIT Flow (no ROADMAP)
|
|
30
|
+
|
|
31
|
+
- **Phase 1**: Analyze (INIT mode) — codebase exploration, findings, roadmap creation
|
|
32
|
+
- GATE 1: Approve INIT summary
|
|
33
|
+
- **Phase 2**: First Sprint — generate Sprint 1 from roadmap
|
|
34
|
+
- GATE 2: Approve sprint plan
|
|
35
|
+
|
|
36
|
+
### SPRINT Flow (ROADMAP exists)
|
|
37
|
+
|
|
38
|
+
- **Phase 3**: Generate Next Sprint — read roadmap, retro, and debt; build sprint
|
|
39
|
+
- GATE 3: Approve sprint plan
|
|
40
|
+
|
|
41
|
+
### Both Flows Converge
|
|
42
|
+
|
|
43
|
+
- **Phase 4**: Implement — task by task execution with review and debug protocols
|
|
44
|
+
- GATE 4: Approve implementation
|
|
45
|
+
- **Phase 5**: Review & Close — quality gates, retro, debt update, rule proposals
|
|
46
|
+
|
|
47
|
+
### Learning Capture
|
|
48
|
+
|
|
49
|
+
Review corrections and propose new rules for `.agents/kyro/scopes/rules.md`.
|
|
50
|
+
|
|
51
|
+
## Rules
|
|
52
|
+
|
|
53
|
+
- Never skip phases or gates. The sequence is non-negotiable.
|
|
54
|
+
- Never proceed past a gate without explicit user approval.
|
|
55
|
+
- See `agents/orchestrator.md` for full gate protocol, checkpoints, validation, and failure recovery.
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Show project status, sprint progress, and technical debt summary
|
|
3
|
+
argument-hint: [brief|full|debt|debt-add|debt-resolve|debt-escalate]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /kyro:status — Project Status
|
|
7
|
+
|
|
8
|
+
Report project progress, technical debt status, and next sprint preview from markdown artifacts.
|
|
9
|
+
|
|
10
|
+
## Execution
|
|
11
|
+
|
|
12
|
+
> **IMPORTANT**: Before generating the report, read the sprint-forge skill's STATUS mode:
|
|
13
|
+
> 1. Read `skills/sprint-forge/SKILL.md` — capabilities matrix, configuration resolution
|
|
14
|
+
> 2. Read `skills/sprint-forge/assets/modes/STATUS.md` — report workflow and format
|
|
15
|
+
> 3. Read `skills/sprint-forge/assets/helpers/debt-tracker.md` — debt table rules
|
|
16
|
+
|
|
17
|
+
## View: $ARGUMENTS
|
|
18
|
+
|
|
19
|
+
### Standard Report
|
|
20
|
+
|
|
21
|
+
1. **Locate output directory** — resolve `{output_kyro_dir}`
|
|
22
|
+
2. **Read project state** — README, ROADMAP, all sprint files
|
|
23
|
+
3. **Summarize state** and generate report:
|
|
24
|
+
|
|
25
|
+
```text
|
|
26
|
+
══════════════════════════════════════
|
|
27
|
+
KYRO — Project Status
|
|
28
|
+
══════════════════════════════════════
|
|
29
|
+
|
|
30
|
+
## Sprint Progress
|
|
31
|
+
Sprint 1: ██████████ 10/10 (100%) ✓ Complete
|
|
32
|
+
Sprint 2: ████████░░ 8/10 ( 80%) ✓ Complete
|
|
33
|
+
Sprint 3: ███████░░░ 7/10 ( 70%) ~ In Progress
|
|
34
|
+
Sprint 4: ░░░░░░░░░░ 0/10 ( 0%) Planned
|
|
35
|
+
|
|
36
|
+
## Technical Debt
|
|
37
|
+
- Open: 4
|
|
38
|
+
- In progress: 1
|
|
39
|
+
- Aged: 2
|
|
40
|
+
- Critical: 1
|
|
41
|
+
|
|
42
|
+
## Roadmap Health
|
|
43
|
+
- Sprints completed: 2/5
|
|
44
|
+
- Roadmap adaptations: 1 (Sprint 3 scope reduced)
|
|
45
|
+
- Carry-over tasks: 3
|
|
46
|
+
|
|
47
|
+
## Next Sprint Preview
|
|
48
|
+
Sprint 4: [title from roadmap]
|
|
49
|
+
- Suggested phases: [count]
|
|
50
|
+
- Carry-over tasks: [count]
|
|
51
|
+
- Critical debt items due: [count]
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Variants
|
|
55
|
+
|
|
56
|
+
- **brief** — Sprint progress + next sprint preview only
|
|
57
|
+
- **full** — Complete report with all sections
|
|
58
|
+
- **debt** — Focus on technical debt table and aged items
|
|
59
|
+
|
|
60
|
+
## Debt Management
|
|
61
|
+
|
|
62
|
+
The `debt-*` variants provide direct debt lifecycle actions. Read `skills/sprint-forge/assets/helpers/debt-tracker.md` before executing any of these.
|
|
63
|
+
|
|
64
|
+
### debt-add
|
|
65
|
+
|
|
66
|
+
Add a new debt item:
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
/kyro:status debt-add "Missing error boundary in dashboard" --origin "Sprint 3 retro" --target "Sprint 4"
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### debt-resolve
|
|
73
|
+
|
|
74
|
+
Mark a debt item as resolved:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
/kyro:status debt-resolve 3 --sprint "Sprint 3"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### debt-escalate
|
|
81
|
+
|
|
82
|
+
Flag aged debt items (open >3 sprints) and prompt for triage:
|
|
83
|
+
- Should this become a dedicated sprint?
|
|
84
|
+
- Should the priority be increased?
|
|
85
|
+
- Is this still relevant or can it be closed as N/A?
|
|
86
|
+
|
|
87
|
+
### Debt Rules
|
|
88
|
+
|
|
89
|
+
- Debt items are never deleted — only their status changes
|
|
90
|
+
- Every sprint inherits the full debt table from the previous sprint
|
|
91
|
+
- Items open for >3 sprints should be escalated during status review
|
|
92
|
+
- New debt discovered during execution gets added with origin "Sprint N phase"
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: End-of-session closure ritual with quality check and context handoff
|
|
3
|
+
argument-hint: [session notes]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /kyro:wrap-up — Session Closure Ritual
|
|
7
|
+
|
|
8
|
+
Structured 5-step checklist to close the current session cleanly. Ensures no work is lost, quality is maintained, learnings are captured, and the next session has full context.
|
|
9
|
+
|
|
10
|
+
## Execution
|
|
11
|
+
|
|
12
|
+
> **IMPORTANT**: Before running the closure ritual:
|
|
13
|
+
> 1. Read `skills/sprint-forge/assets/helpers/handoff.md` — context transfer format and checklist
|
|
14
|
+
> 2. Run the orchestrator's session-end checkpoint — check uncommitted changes, sprint progress, and pending learnings
|
|
15
|
+
|
|
16
|
+
## Session Notes: $ARGUMENTS
|
|
17
|
+
|
|
18
|
+
### Step 1: Changes Audit
|
|
19
|
+
|
|
20
|
+
Check for uncommitted or unsaved work:
|
|
21
|
+
|
|
22
|
+
1. Run `git status` — list modified, staged, and untracked files
|
|
23
|
+
2. Run `git stash list` — check for stashed work
|
|
24
|
+
3. If there are uncommitted changes:
|
|
25
|
+
- Ask: "Should I commit these changes before closing?"
|
|
26
|
+
- If yes, create a descriptive commit
|
|
27
|
+
- If no, document the uncommitted state in step 4
|
|
28
|
+
|
|
29
|
+
### Step 2: Quality Check
|
|
30
|
+
|
|
31
|
+
Run quality gates from `config.json`:
|
|
32
|
+
|
|
33
|
+
1. **Lint**: Run the project's lint command (if configured)
|
|
34
|
+
2. **Typecheck**: Run the project's typecheck command (if configured)
|
|
35
|
+
3. **Tests**: Run related tests (if configured)
|
|
36
|
+
4. Report results — if failures exist, ask whether to fix now or defer
|
|
37
|
+
|
|
38
|
+
### Step 3: Learning Capture
|
|
39
|
+
|
|
40
|
+
Prompt for learnings from this session:
|
|
41
|
+
|
|
42
|
+
1. Review corrections made during the session — any patterns?
|
|
43
|
+
2. Review unexpected discoveries — worth capturing?
|
|
44
|
+
3. For each learning, format as:
|
|
45
|
+
```
|
|
46
|
+
[LEARN] Category: One-line rule
|
|
47
|
+
```
|
|
48
|
+
4. Learnings are proposed for `.agents/kyro/scopes/rules.md` and recorded in the sprint retro after approval
|
|
49
|
+
|
|
50
|
+
### Step 4: Next Session Context
|
|
51
|
+
|
|
52
|
+
Generate a context note for the next session:
|
|
53
|
+
|
|
54
|
+
1. **What was being worked on**: Current task/sprint, files modified
|
|
55
|
+
2. **What's done**: Tasks completed this session
|
|
56
|
+
3. **What's next**: Remaining tasks, next priorities
|
|
57
|
+
4. **Blockers**: Any unresolved issues or decisions needed
|
|
58
|
+
5. If a sprint is active, update re-entry prompts with current state
|
|
59
|
+
|
|
60
|
+
### Step 5: Session Summary
|
|
61
|
+
|
|
62
|
+
Display session summary:
|
|
63
|
+
|
|
64
|
+
1. Inspect sprint artifacts and git history for current progress:
|
|
65
|
+
- Tasks completed this session
|
|
66
|
+
- Learnings proposed or captured
|
|
67
|
+
- Commits created this session
|
|
68
|
+
2. Display summary table:
|
|
69
|
+
```
|
|
70
|
+
Session Summary
|
|
71
|
+
───────────────────────
|
|
72
|
+
Duration: {time}
|
|
73
|
+
Tasks: {completed}/{total}
|
|
74
|
+
Learnings: {count} captured
|
|
75
|
+
Commits: {count} this session
|
|
76
|
+
Status: {clean/uncommitted changes}
|
|
77
|
+
```
|
|
78
|
+
3. Confirm the handoff and re-entry prompts reflect the current state
|
|
79
|
+
|
|
80
|
+
### Output
|
|
81
|
+
|
|
82
|
+
After completing all 5 steps:
|
|
83
|
+
1. Display the summary
|
|
84
|
+
2. Confirm session is ready to close
|
|
85
|
+
3. Suggest running `/kyro:forge` if a sprint milestone was reached and a retrospective is needed
|
package/config.json
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"rules": {
|
|
3
|
+
"path": ".agents/kyro/scopes/rules.md",
|
|
4
|
+
"auto_load": true,
|
|
5
|
+
"require_approval": true
|
|
6
|
+
},
|
|
7
|
+
"quality_gates": {
|
|
8
|
+
"typecheck": "npm run typecheck",
|
|
9
|
+
"build": "npm run build"
|
|
10
|
+
},
|
|
11
|
+
"sprint": {
|
|
12
|
+
"max_tasks_per_sprint": 10,
|
|
13
|
+
"checkpoint_per_phase": true,
|
|
14
|
+
"require_retro": true,
|
|
15
|
+
"debt_aged_threshold_sprints": 3
|
|
16
|
+
}
|
|
17
|
+
}
|