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
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
# STATUS Mode — Project Progress Report
|
|
2
|
+
|
|
3
|
+
This mode reads all project artifacts and generates a comprehensive progress report.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## When This Mode Activates
|
|
8
|
+
|
|
9
|
+
| EN Signals | ES Signals |
|
|
10
|
+
|-----------|-----------|
|
|
11
|
+
| "project status", "progress", "progress report", "technical debt", "how's the project going" | "estado del proyecto", "progreso", "reporte de progreso", "deuda técnica", "cómo va el proyecto" |
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Prerequisites
|
|
16
|
+
|
|
17
|
+
- INIT mode must have been run (README.md, ROADMAP.md, and at least one finding file exist)
|
|
18
|
+
- At least one sprint should exist for meaningful metrics (but STATUS works even with zero sprints)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Workflow
|
|
23
|
+
|
|
24
|
+
### Step 0 — Locate Output Directory
|
|
25
|
+
|
|
26
|
+
Before reading any files, determine `{output_kyro_dir}`:
|
|
27
|
+
|
|
28
|
+
1. If the user's request includes an explicit path, use it
|
|
29
|
+
2. Otherwise, check `{cwd}/.agents/kyro/scopes/` — if a single project directory exists, use it
|
|
30
|
+
3. If multiple directories exist, ask: "Which project? Found: {list}"
|
|
31
|
+
4. If none found, ask: "Where are your kyro-ai documents? (e.g. `.agents/kyro/scopes/my-project/`)"
|
|
32
|
+
|
|
33
|
+
### Step 1 — Read Project State
|
|
34
|
+
|
|
35
|
+
Read the following files:
|
|
36
|
+
|
|
37
|
+
1. `{output_kyro_dir}/README.md` — Project overview and paths
|
|
38
|
+
2. `{output_kyro_dir}/ROADMAP.md` — Planned sprints, dependencies, execution rules
|
|
39
|
+
3. All sprint files in `{output_kyro_dir}/phases/` — Progress, debt, retros
|
|
40
|
+
|
|
41
|
+
### Step 2 — Calculate Metrics
|
|
42
|
+
|
|
43
|
+
From the roadmap and sprint files, compute:
|
|
44
|
+
|
|
45
|
+
| Metric | How to Calculate |
|
|
46
|
+
|--------|-----------------|
|
|
47
|
+
| **Total Planned Sprints** | Count sprints defined in ROADMAP.md |
|
|
48
|
+
| **Completed Sprints** | Count sprint files with all DoD items checked |
|
|
49
|
+
| **In-Progress Sprints** | Sprint files with some tasks done but DoD incomplete |
|
|
50
|
+
| **Remaining Sprints** | Total - Completed - In-Progress |
|
|
51
|
+
| **Total Tasks** | Sum of all tasks across all generated sprint files |
|
|
52
|
+
| **Completed Tasks** | Sum of `[x]` tasks |
|
|
53
|
+
| **Blocked Tasks** | Sum of `[!]` tasks |
|
|
54
|
+
| **Skipped Tasks** | Sum of `[-]` tasks |
|
|
55
|
+
| **Open Debt Items** | Count debt items with status `open` or `in-progress` in latest sprint |
|
|
56
|
+
| **Resolved Debt Items** | Count debt items with status `resolved` in latest sprint |
|
|
57
|
+
| **Deferred Debt Items** | Count debt items with status `deferred` in latest sprint |
|
|
58
|
+
| **Emergent Phases** | Count of emergent phases added across all sprints |
|
|
59
|
+
|
|
60
|
+
### Step 3 — Generate Report
|
|
61
|
+
|
|
62
|
+
Output the report directly to the console (do NOT write to a file):
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
# {scope} — Status Report
|
|
66
|
+
|
|
67
|
+
> Generated: {date}
|
|
68
|
+
> Codebase: `{codebase_path}`
|
|
69
|
+
> Working Dir: `{output_kyro_dir}`
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Progress Overview
|
|
74
|
+
|
|
75
|
+
| Metric | Value |
|
|
76
|
+
|--------|-------|
|
|
77
|
+
| Sprints | {completed}/{total} completed ({percentage}%) |
|
|
78
|
+
| Tasks | {done}/{total} completed, {blocked} blocked, {skipped} skipped |
|
|
79
|
+
| Debt | {open} open, {resolved} resolved, {deferred} deferred |
|
|
80
|
+
| Emergent Phases | {count} added during execution |
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Sprint Progress
|
|
85
|
+
|
|
86
|
+
| Sprint | Status | Tasks | Key Deliverables |
|
|
87
|
+
|--------|--------|-------|-----------------|
|
|
88
|
+
| Sprint 1 | completed | 12/12 | Architecture cleanup |
|
|
89
|
+
| Sprint 2 | completed | 10/14 | API surface audit |
|
|
90
|
+
| Sprint 3 | in-progress | 3/8 | Component quality |
|
|
91
|
+
| Sprint 4 | pending | — | Testing infrastructure |
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Accumulated Technical Debt
|
|
96
|
+
|
|
97
|
+
{Copy the debt table from the latest sprint file}
|
|
98
|
+
|
|
99
|
+
**Debt Trend**: {Is open count growing or shrinking?}
|
|
100
|
+
**Oldest Open Item**: {Item that has been open the longest}
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Roadmap Health
|
|
105
|
+
|
|
106
|
+
- **Adaptations Made**: {Number of times the roadmap was modified}
|
|
107
|
+
- **Original Sprint Count**: {From initial INIT}
|
|
108
|
+
- **Current Sprint Count**: {After adaptations}
|
|
109
|
+
- **Sprints Added**: {count}
|
|
110
|
+
- **Sprints Removed**: {count}
|
|
111
|
+
- **Assessment**: {Is the roadmap still serving the project well?}
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Next Sprint Preview
|
|
116
|
+
|
|
117
|
+
**Sprint {N}**: {title}
|
|
118
|
+
- Focus: {focus}
|
|
119
|
+
- Source: `findings/{finding_file}`
|
|
120
|
+
- Dependencies: {which sprints must complete first}
|
|
121
|
+
- Carry-over: {count} recommendations from Sprint {N-1}
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Re-entry Prompt
|
|
126
|
+
|
|
127
|
+
{The appropriate re-entry prompt for the next action — usually Scenario 2 or 3 from RE-ENTRY-PROMPTS.md}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Edge Cases
|
|
133
|
+
|
|
134
|
+
| Situation | Handling |
|
|
135
|
+
|-----------|---------|
|
|
136
|
+
| No sprints generated yet | Show INIT results only (findings count, roadmap overview). Suggest generating Sprint 1. |
|
|
137
|
+
| All sprints complete | Show final metrics. Highlight any remaining open debt. Suggest project closure or maintenance phase. |
|
|
138
|
+
| Sprint in progress | Show current sprint progress. Highlight blocked tasks. Suggest resuming execution. |
|
|
139
|
+
| No debt items | Note that no technical debt has been logged. This could mean the project is clean or debt isn't being tracked. |
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## References
|
|
144
|
+
|
|
145
|
+
- [debt-tracker.md](../helpers/debt-tracker.md) — Debt table format and reporting rules
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "{scope} — Working Project"
|
|
3
|
+
date: "{date}"
|
|
4
|
+
updated: "{date}"
|
|
5
|
+
scope: "{scope}"
|
|
6
|
+
type: "progress"
|
|
7
|
+
status: "active"
|
|
8
|
+
version: "1.0"
|
|
9
|
+
agents:
|
|
10
|
+
- "{agent_model}"
|
|
11
|
+
tags:
|
|
12
|
+
- "{scope}"
|
|
13
|
+
- "progress"
|
|
14
|
+
- "kyro-ai"
|
|
15
|
+
changelog:
|
|
16
|
+
- version: "1.0"
|
|
17
|
+
date: "{date}"
|
|
18
|
+
changes: ["Project initialized"]
|
|
19
|
+
related:
|
|
20
|
+
- "[[ROADMAP]]"
|
|
21
|
+
- "[[RE-ENTRY-PROMPTS]]"
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
# {scope} — Working Project
|
|
25
|
+
|
|
26
|
+
> Type: {work_type}
|
|
27
|
+
> Created: {date}
|
|
28
|
+
> Codebase: `{codebase_path}`
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## What Is This
|
|
33
|
+
|
|
34
|
+
This directory contains the working artifacts for {description_of_work}. It is managed by the `kyro-ai` skill and follows an adaptive sprint workflow.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## For AI Agents — Mandatory Reading Order
|
|
39
|
+
|
|
40
|
+
If you are an AI agent resuming work on this project, read these files in order:
|
|
41
|
+
|
|
42
|
+
1. **This README** — You are here. Understand the project structure.
|
|
43
|
+
2. **ROADMAP.md** — The adaptive roadmap with all planned sprints and execution rules.
|
|
44
|
+
3. **Last completed sprint** — The most recent sprint file in `phases/`. Read its retro, recommendations, and debt table.
|
|
45
|
+
4. **RE-ENTRY-PROMPTS.md** — Pre-written prompts for common actions. Copy the appropriate one.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Directory Structure
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
{output_kyro_dir}/
|
|
53
|
+
├── README.md ← This file
|
|
54
|
+
├── ROADMAP.md ← Adaptive roadmap (living document)
|
|
55
|
+
├── RE-ENTRY-PROMPTS.md ← Context recovery prompts
|
|
56
|
+
├── findings/ ← Analysis findings (one file per area)
|
|
57
|
+
│ ├── 01-{slug}.md
|
|
58
|
+
│ ├── 02-{slug}.md
|
|
59
|
+
│ └── ...
|
|
60
|
+
└── phases/ ← Sprint documents (generated one at a time)
|
|
61
|
+
├── SPRINT-1-{slug}.md
|
|
62
|
+
├── SPRINT-2-{slug}.md
|
|
63
|
+
└── ...
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Absolute Paths
|
|
69
|
+
|
|
70
|
+
| Resource | Path |
|
|
71
|
+
|----------|------|
|
|
72
|
+
| Codebase | `{codebase_path}` |
|
|
73
|
+
| Working Directory | `{output_kyro_dir}` |
|
|
74
|
+
| Findings | `{output_kyro_dir}/findings/` |
|
|
75
|
+
| Sprints | `{output_kyro_dir}/phases/` |
|
|
76
|
+
| Roadmap | `{output_kyro_dir}/ROADMAP.md` |
|
|
77
|
+
| Re-entry Prompts | `{output_kyro_dir}/RE-ENTRY-PROMPTS.md` |
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Sprint System Rules
|
|
82
|
+
|
|
83
|
+
1. Sprints are generated **one at a time** — never pre-generated
|
|
84
|
+
2. Each sprint feeds from the previous sprint's retro and recommendations
|
|
85
|
+
3. The accumulated debt table passes from sprint to sprint, never losing items
|
|
86
|
+
4. The roadmap adapts based on what execution reveals
|
|
87
|
+
5. Re-entry prompts are updated after each sprint for context persistence
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Current State — Baseline
|
|
92
|
+
|
|
93
|
+
<!-- Filled during INIT with baseline metrics -->
|
|
94
|
+
|
|
95
|
+
| Metric | Value |
|
|
96
|
+
|--------|-------|
|
|
97
|
+
| {metric_name} | {metric_value} |
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Sprint Map
|
|
102
|
+
|
|
103
|
+
<!-- Updated as sprints are completed -->
|
|
104
|
+
|
|
105
|
+
| Sprint | Status | Focus | Key Deliverables |
|
|
106
|
+
|--------|--------|-------|-----------------|
|
|
107
|
+
| 1 | {status} | {focus} | {deliverables} |
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "{scope} — Re-entry Prompts"
|
|
3
|
+
date: "{date}"
|
|
4
|
+
updated: "{date}"
|
|
5
|
+
scope: "{scope}"
|
|
6
|
+
type: "execution-plan"
|
|
7
|
+
status: "active"
|
|
8
|
+
version: "1.0"
|
|
9
|
+
agents:
|
|
10
|
+
- "{agent_model}"
|
|
11
|
+
tags:
|
|
12
|
+
- "{scope}"
|
|
13
|
+
- "execution-plan"
|
|
14
|
+
- "reentry"
|
|
15
|
+
- "kyro-ai"
|
|
16
|
+
changelog:
|
|
17
|
+
- version: "1.0"
|
|
18
|
+
date: "{date}"
|
|
19
|
+
changes: ["Re-entry prompts created"]
|
|
20
|
+
related:
|
|
21
|
+
- "[[README]]"
|
|
22
|
+
- "[[ROADMAP]]"
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# {scope} — Re-entry Prompts
|
|
26
|
+
|
|
27
|
+
> Last updated: {date}
|
|
28
|
+
> Current sprint: {current_sprint_number}
|
|
29
|
+
|
|
30
|
+
These prompts help you (or a new agent) recover full project context in a new session.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Output Directory
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
{output_kyro_dir}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
This is where all kyro-ai documents for this project live. All file paths below are relative to this directory.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Quick Reference
|
|
45
|
+
|
|
46
|
+
| Sprint | File | Status |
|
|
47
|
+
|--------|------|--------|
|
|
48
|
+
| 1 | `phases/SPRINT-1-{slug}.md` | {status} |
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Dynamic Paths
|
|
53
|
+
|
|
54
|
+
| Resource | Path |
|
|
55
|
+
|----------|------|
|
|
56
|
+
| Codebase | `{codebase_path}` |
|
|
57
|
+
| Working Directory | `{output_kyro_dir}` |
|
|
58
|
+
| Roadmap | `{output_kyro_dir}/ROADMAP.md` |
|
|
59
|
+
| Latest Sprint | `{output_kyro_dir}/phases/{latest_sprint_file}` |
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Scenario 1 — First Sprint (after INIT)
|
|
64
|
+
|
|
65
|
+
Use this prompt when INIT has been completed and you need to generate Sprint 1.
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
I'm working on the {scope} project. The analysis and roadmap have been created.
|
|
69
|
+
|
|
70
|
+
Read these files in order:
|
|
71
|
+
1. {output_kyro_dir}/README.md
|
|
72
|
+
2. {output_kyro_dir}/ROADMAP.md
|
|
73
|
+
3. The finding files in {output_kyro_dir}/findings/
|
|
74
|
+
|
|
75
|
+
Then use /kyro:forge to generate Sprint 1. Follow the roadmap's Sprint 1 definition
|
|
76
|
+
and the corresponding finding file(s) as input.
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Scenario 2 — Next Sprint (Sprint N)
|
|
82
|
+
|
|
83
|
+
Use this prompt when Sprint N-1 is complete and you need to generate Sprint N.
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
I'm continuing work on the {scope} project. Sprint {N-1} has been completed.
|
|
87
|
+
|
|
88
|
+
Read these files in order:
|
|
89
|
+
1. {output_kyro_dir}/README.md
|
|
90
|
+
2. {output_kyro_dir}/ROADMAP.md
|
|
91
|
+
3. {output_kyro_dir}/phases/{last_sprint_file} (pay attention to Retro, Recommendations, and Debt table)
|
|
92
|
+
4. The finding file(s) for Sprint {N}: {output_kyro_dir}/findings/{next_finding_file}
|
|
93
|
+
|
|
94
|
+
Then use /kyro:forge to generate Sprint {N}. Ensure all recommendations from Sprint {N-1}
|
|
95
|
+
are addressed in the Disposition table.
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Scenario 3 — Execute Current Sprint
|
|
101
|
+
|
|
102
|
+
Use this prompt when a sprint has been generated but not yet executed.
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
I'm working on the {scope} project. Sprint {N} has been generated and needs execution.
|
|
106
|
+
|
|
107
|
+
Read these files in order:
|
|
108
|
+
1. {output_kyro_dir}/README.md
|
|
109
|
+
2. {output_kyro_dir}/ROADMAP.md
|
|
110
|
+
3. {output_kyro_dir}/phases/{current_sprint_file}
|
|
111
|
+
|
|
112
|
+
Then use /kyro:forge to execute Sprint {N}. Work through each phase and task,
|
|
113
|
+
marking progress as you go. Add emergent phases if new work is discovered.
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Scenario 4 — Check Project Status
|
|
119
|
+
|
|
120
|
+
Use this prompt to get a progress report.
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
I need a status report on the {scope} project.
|
|
124
|
+
|
|
125
|
+
Read these files:
|
|
126
|
+
1. {output_kyro_dir}/README.md
|
|
127
|
+
2. {output_kyro_dir}/ROADMAP.md
|
|
128
|
+
3. All sprint files in {output_kyro_dir}/phases/
|
|
129
|
+
|
|
130
|
+
Then use /kyro:forge to generate a status report showing: completed sprints,
|
|
131
|
+
accumulated debt, metrics, and what's planned next.
|
|
132
|
+
```
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "{scope} — Adaptive Roadmap"
|
|
3
|
+
date: "{date}"
|
|
4
|
+
updated: "{date}"
|
|
5
|
+
scope: "{scope}"
|
|
6
|
+
type: "plan"
|
|
7
|
+
status: "active"
|
|
8
|
+
version: "1.0"
|
|
9
|
+
agents:
|
|
10
|
+
- "{agent_model}"
|
|
11
|
+
tags:
|
|
12
|
+
- "{scope}"
|
|
13
|
+
- "plan"
|
|
14
|
+
- "roadmap"
|
|
15
|
+
- "kyro-ai"
|
|
16
|
+
changelog:
|
|
17
|
+
- version: "1.0"
|
|
18
|
+
date: "{date}"
|
|
19
|
+
changes: ["Roadmap created"]
|
|
20
|
+
related:
|
|
21
|
+
- "[[README]]"
|
|
22
|
+
- "[[RE-ENTRY-PROMPTS]]"
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# {scope} — Adaptive Roadmap
|
|
26
|
+
|
|
27
|
+
> Generated by `kyro-ai` on {date}
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Project Paths
|
|
32
|
+
|
|
33
|
+
| Path | Value |
|
|
34
|
+
|------|-------|
|
|
35
|
+
| Codebase | `{codebase_path}` |
|
|
36
|
+
| Working Directory | `{output_kyro_dir}` |
|
|
37
|
+
| Findings | `{output_kyro_dir}/findings/` |
|
|
38
|
+
| Sprints | `{output_kyro_dir}/phases/` |
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Execution Rules
|
|
43
|
+
|
|
44
|
+
These rules govern the entire sprint lifecycle. They are non-negotiable.
|
|
45
|
+
|
|
46
|
+
1. **Sprint-by-Sprint** — Sprints are generated ONE AT A TIME. Never pre-generate all sprints. Each sprint is informed by the results of the previous one.
|
|
47
|
+
2. **Retro Feeds Forward** — The retrospective and recommendations of Sprint N-1 are formal inputs for Sprint N. They cannot be ignored.
|
|
48
|
+
3. **Recommendations are Dispositioned** — Every recommendation from the previous sprint must either become a task or have its deferral justified in the Disposition table.
|
|
49
|
+
4. **Debt is Inherited** — The Accumulated Technical Debt table passes from sprint to sprint in full. Items are never deleted, only resolved.
|
|
50
|
+
5. **Phases are Suggested** — The roadmap defines suggested phases per sprint. During execution, emergent phases MUST be added when new work is discovered.
|
|
51
|
+
6. **Emergent Findings Generate Phases** — If execution reveals issues not covered by the plan, new phases are added to the current sprint.
|
|
52
|
+
7. **Re-entry Prompts are Updated** — After INIT and after each executed sprint, re-entry prompts are refreshed to reflect current state.
|
|
53
|
+
8. **Roadmap Adapts** — If execution reveals that planned sprints need modification, this roadmap is updated. The plan serves execution, not the reverse.
|
|
54
|
+
9. **Definition of Done** — Each sprint has explicit completion criteria. A sprint is not done until all DoD items are checked.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Task States
|
|
59
|
+
|
|
60
|
+
| Symbol | State | Meaning |
|
|
61
|
+
|--------|-------|---------|
|
|
62
|
+
| `[ ]` | Pending | Not started |
|
|
63
|
+
| `[~]` | In Progress | Currently being worked on |
|
|
64
|
+
| `[x]` | Done | Completed and verified |
|
|
65
|
+
| `[!]` | Blocked | Cannot proceed — blocker documented |
|
|
66
|
+
| `[-]` | Skipped | Intentionally skipped with justification |
|
|
67
|
+
| `[>]` | Carry-over | Not completed — carried over to next sprint |
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Sprint Template
|
|
72
|
+
|
|
73
|
+
Each sprint in this roadmap follows this structure:
|
|
74
|
+
|
|
75
|
+
| Field | Description |
|
|
76
|
+
|-------|-------------|
|
|
77
|
+
| Sprint # | Sequential number |
|
|
78
|
+
| Finding Source | Which finding file(s) this sprint addresses |
|
|
79
|
+
| Version Target | Target version after this sprint (if applicable) |
|
|
80
|
+
| Type | audit / refactor / feature / bugfix / debt |
|
|
81
|
+
| Focus | One-line description of the sprint's primary goal |
|
|
82
|
+
| Suggested Phases | Initial phases suggested by this roadmap (may expand during execution) |
|
|
83
|
+
| Dependencies | Which sprints must complete before this one |
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Dependency Map
|
|
88
|
+
|
|
89
|
+
<!-- Fill during INIT: show which sprints depend on others -->
|
|
90
|
+
<!-- Example:
|
|
91
|
+
Sprint 1 → Sprint 2 → Sprint 3
|
|
92
|
+
↘ Sprint 4 → Sprint 5
|
|
93
|
+
-->
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
{dependency_diagram}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Sprint Summary
|
|
102
|
+
|
|
103
|
+
<!-- Fill during INIT: one row per planned sprint -->
|
|
104
|
+
|
|
105
|
+
| Sprint | Finding Source | Version | Type | Focus | Dependencies | Status |
|
|
106
|
+
|--------|--------------|---------|------|-------|-------------|--------|
|
|
107
|
+
| 1 | `{finding_file}` | {version} | {type} | {focus} | — | pending |
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Detailed Sprint Definitions
|
|
112
|
+
|
|
113
|
+
<!-- Fill during INIT: expand each sprint with suggested phases -->
|
|
114
|
+
|
|
115
|
+
### Sprint 1 — {title}
|
|
116
|
+
|
|
117
|
+
- **Source**: `findings/{finding_file}`
|
|
118
|
+
- **Version Target**: {version}
|
|
119
|
+
- **Type**: {type}
|
|
120
|
+
- **Focus**: {focus}
|
|
121
|
+
- **Dependencies**: None
|
|
122
|
+
- **Suggested Phases**:
|
|
123
|
+
1. {phase_1_name} — {phase_1_description}
|
|
124
|
+
2. {phase_2_name} — {phase_2_description}
|
|
125
|
+
|
|
126
|
+
<!-- Add more sprints as needed. The number of sprints is determined by the analysis. -->
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Sprint {N} — {title}"
|
|
3
|
+
date: "{date}"
|
|
4
|
+
updated: "{date}"
|
|
5
|
+
scope: "{scope}"
|
|
6
|
+
type: "sprint-plan"
|
|
7
|
+
status: "active"
|
|
8
|
+
version: "1.0"
|
|
9
|
+
sprint: {N}
|
|
10
|
+
progress: 0
|
|
11
|
+
previous_doc: "[[SPRINT-{N-1}-{previous_slug}]]"
|
|
12
|
+
next_doc: "[[SPRINT-{N+1}-{next_slug}]]"
|
|
13
|
+
parent_doc: "[[ROADMAP]]"
|
|
14
|
+
agents:
|
|
15
|
+
- "{agent_model}"
|
|
16
|
+
tags:
|
|
17
|
+
- "{scope}"
|
|
18
|
+
- "sprint-plan"
|
|
19
|
+
- "sprint-{N}"
|
|
20
|
+
changelog:
|
|
21
|
+
- version: "1.0"
|
|
22
|
+
date: "{date}"
|
|
23
|
+
changes: ["Sprint generated"]
|
|
24
|
+
related:
|
|
25
|
+
- "[[ROADMAP]]"
|
|
26
|
+
- "[[{finding_file_ref}]]"
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# Sprint {N} — {title}
|
|
30
|
+
|
|
31
|
+
> Source: `findings/{finding_file}`
|
|
32
|
+
> Previous Sprint: `phases/{previous_sprint_file}` | None
|
|
33
|
+
> Version Target: {version}
|
|
34
|
+
> Type: {type}
|
|
35
|
+
> Carry-over: {carry_over_count} items from previous sprint
|
|
36
|
+
> Execution Date: {execution_date}
|
|
37
|
+
> Executed By: {executor}
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Sprint Objective
|
|
42
|
+
|
|
43
|
+
{Clear, one-paragraph description of what this sprint aims to accomplish.}
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Disposition of Previous Sprint Recommendations
|
|
48
|
+
|
|
49
|
+
<!-- Skip this section for Sprint 1 (no previous sprint). -->
|
|
50
|
+
<!-- For Sprint 2+, EVERY recommendation from Sprint N-1 must appear here. -->
|
|
51
|
+
|
|
52
|
+
| # | Recommendation | Action | Where | Justification |
|
|
53
|
+
|---|---------------|--------|-------|---------------|
|
|
54
|
+
| 1 | {recommendation_text} | Incorporated / Deferred / Resolved / N/A | Phase X, Task Y / Sprint Z | {why} |
|
|
55
|
+
|
|
56
|
+
**Actions**:
|
|
57
|
+
- **Incorporated**: Added as a task in this sprint. Specify phase and task.
|
|
58
|
+
- **Deferred**: Postponed to a future sprint. Specify target sprint and justify.
|
|
59
|
+
- **Resolved**: Already resolved by previous work. Explain when/how.
|
|
60
|
+
- **N/A**: No longer applicable. Explain why.
|
|
61
|
+
- **Converted to Phase**: Recommendation was significant enough to become an entire phase (not just a task). Specify which phase.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Phases
|
|
66
|
+
|
|
67
|
+
### Phase 1 — {phase_name}
|
|
68
|
+
|
|
69
|
+
**Objective**: {What this phase accomplishes}
|
|
70
|
+
|
|
71
|
+
**Tasks**:
|
|
72
|
+
|
|
73
|
+
- [ ] **T1.1**: {task_description}
|
|
74
|
+
- Files: `{file_path}`
|
|
75
|
+
- Evidence: {inline_evidence — e.g., trace logs, before/after snapshots, table of affected items, verification marks}
|
|
76
|
+
- Verification: {how_to_verify}
|
|
77
|
+
|
|
78
|
+
- [ ] **T1.2**: {task_description}
|
|
79
|
+
- Files: `{file_path}`
|
|
80
|
+
- Evidence: {inline_evidence}
|
|
81
|
+
- Verification: {how_to_verify}
|
|
82
|
+
|
|
83
|
+
### Phase 2 — {phase_name}
|
|
84
|
+
|
|
85
|
+
**Objective**: {What this phase accomplishes}
|
|
86
|
+
|
|
87
|
+
**Tasks**:
|
|
88
|
+
|
|
89
|
+
- [ ] **T2.1**: {task_description}
|
|
90
|
+
- Files: `{file_path}`
|
|
91
|
+
- Verification: {how_to_verify}
|
|
92
|
+
|
|
93
|
+
<!-- Add more phases as needed. Phases come from the roadmap's suggested phases + recommendations + debt items. -->
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Emergent Phases
|
|
98
|
+
|
|
99
|
+
<!-- This section starts EMPTY. It is populated during sprint EXECUTION when new work is discovered.
|
|
100
|
+
Emergent phases are expected and encouraged. They represent the adaptive nature of this workflow. -->
|
|
101
|
+
|
|
102
|
+
<!-- Example:
|
|
103
|
+
### Emergent Phase — {name}
|
|
104
|
+
|
|
105
|
+
**Reason**: {Why this phase was added during execution}
|
|
106
|
+
|
|
107
|
+
**Tasks**:
|
|
108
|
+
|
|
109
|
+
- [ ] **TE.1**: {task_description}
|
|
110
|
+
- Files: `{file_path}`
|
|
111
|
+
- Verification: {how_to_verify}
|
|
112
|
+
-->
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Findings Consolidation
|
|
117
|
+
|
|
118
|
+
<!-- This section is filled during sprint CLOSE, before the Retro. Consolidate ALL significant discoveries made during execution into a single reference table. -->
|
|
119
|
+
|
|
120
|
+
| # | Finding | Origin Phase | Impact | Action Taken |
|
|
121
|
+
|---|---------|-------------|--------|-------------|
|
|
122
|
+
| 1 | {finding_description} | Phase {X} / Emergent | {high/medium/low} | {task_ref / debt_ref / deferred} |
|
|
123
|
+
|
|
124
|
+
<!-- Include every significant discovery, not just those that generated tasks. This table becomes a quick-reference for future sprints. -->
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Accumulated Technical Debt
|
|
129
|
+
|
|
130
|
+
<!-- For Sprint 1: start fresh. For Sprint 2+: copy the FULL table from Sprint N-1 and add new items. -->
|
|
131
|
+
|
|
132
|
+
| # | Item | Origin | Sprint Target | Status | Resolved In |
|
|
133
|
+
|---|------|--------|--------------|--------|-------------|
|
|
134
|
+
| 1 | {debt_item} | {where_discovered} | Sprint {X} | open | — |
|
|
135
|
+
|
|
136
|
+
**Status values**: `open` | `in-progress` | `resolved` | `deferred` | `carry-over`
|
|
137
|
+
|
|
138
|
+
**Rules**:
|
|
139
|
+
- Never delete a row — only change status
|
|
140
|
+
- New items are appended at the bottom
|
|
141
|
+
- Inherited items keep their original numbers
|
|
142
|
+
- When resolved, fill "Resolved In" with the sprint number
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Definition of Done
|
|
147
|
+
|
|
148
|
+
- [ ] All phase tasks completed or explicitly skipped with justification
|
|
149
|
+
- [ ] All emergent phase tasks completed
|
|
150
|
+
- [ ] Accumulated debt table updated (new items added, resolved items marked)
|
|
151
|
+
- [ ] Retro section filled
|
|
152
|
+
- [ ] Recommendations for next sprint documented
|
|
153
|
+
- [ ] Re-entry prompts updated to reflect current state
|
|
154
|
+
- [ ] {project_specific_criteria}
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Retro
|
|
159
|
+
|
|
160
|
+
<!-- Filled when the sprint is CLOSED. Do not fill during generation. -->
|
|
161
|
+
|
|
162
|
+
### What Went Well
|
|
163
|
+
|
|
164
|
+
-
|
|
165
|
+
|
|
166
|
+
### What Didn't Go Well
|
|
167
|
+
|
|
168
|
+
-
|
|
169
|
+
|
|
170
|
+
### Surprises / Unexpected Findings
|
|
171
|
+
|
|
172
|
+
-
|
|
173
|
+
|
|
174
|
+
### New Technical Debt Detected
|
|
175
|
+
|
|
176
|
+
<!-- List new debt items discovered during this sprint, referencing their D{n} numbers from the Accumulated Debt table. -->
|
|
177
|
+
|
|
178
|
+
-
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Recommendations for Sprint {N+1}
|
|
183
|
+
|
|
184
|
+
<!-- Filled when the sprint is CLOSED. Each recommendation becomes a candidate task for the next sprint.
|
|
185
|
+
The next sprint's Disposition table will address each one. -->
|
|
186
|
+
|
|
187
|
+
1.
|
|
188
|
+
2.
|
|
189
|
+
3.
|