agileflow 2.77.0 → 2.79.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.
Files changed (128) hide show
  1. package/README.md +6 -6
  2. package/package.json +6 -1
  3. package/scripts/agileflow-configure.js +174 -2
  4. package/scripts/agileflow-statusline.sh +171 -78
  5. package/scripts/agileflow-welcome.js +88 -64
  6. package/scripts/auto-self-improve.js +23 -45
  7. package/scripts/check-update.js +35 -42
  8. package/scripts/damage-control/bash-tool-damage-control.js +257 -0
  9. package/scripts/damage-control/edit-tool-damage-control.js +279 -0
  10. package/scripts/damage-control/patterns.yaml +227 -0
  11. package/scripts/damage-control/write-tool-damage-control.js +274 -0
  12. package/scripts/damage-control-bash.js +232 -0
  13. package/scripts/damage-control-edit.js +243 -0
  14. package/scripts/damage-control-write.js +243 -0
  15. package/scripts/obtain-context.js +22 -3
  16. package/scripts/ralph-loop.js +191 -63
  17. package/scripts/screenshot-verifier.js +213 -0
  18. package/scripts/session-manager.js +12 -33
  19. package/src/core/agents/accessibility.md +124 -53
  20. package/src/core/agents/adr-writer.md +192 -52
  21. package/src/core/agents/analytics.md +139 -60
  22. package/src/core/agents/api.md +173 -63
  23. package/src/core/agents/ci.md +139 -57
  24. package/src/core/agents/compliance.md +159 -68
  25. package/src/core/agents/configuration/damage-control.md +356 -0
  26. package/src/core/agents/configuration-damage-control.md +248 -0
  27. package/src/core/agents/database.md +162 -61
  28. package/src/core/agents/datamigration.md +179 -66
  29. package/src/core/agents/design.md +179 -57
  30. package/src/core/agents/devops.md +160 -3
  31. package/src/core/agents/documentation.md +204 -60
  32. package/src/core/agents/epic-planner.md +147 -55
  33. package/src/core/agents/integrations.md +197 -69
  34. package/src/core/agents/mentor.md +158 -57
  35. package/src/core/agents/mobile.md +159 -67
  36. package/src/core/agents/monitoring.md +154 -65
  37. package/src/core/agents/multi-expert.md +115 -43
  38. package/src/core/agents/orchestrator.md +77 -24
  39. package/src/core/agents/performance.md +130 -75
  40. package/src/core/agents/product.md +151 -55
  41. package/src/core/agents/qa.md +162 -74
  42. package/src/core/agents/readme-updater.md +178 -76
  43. package/src/core/agents/refactor.md +148 -95
  44. package/src/core/agents/research.md +143 -72
  45. package/src/core/agents/security.md +154 -65
  46. package/src/core/agents/testing.md +176 -97
  47. package/src/core/agents/ui.md +170 -79
  48. package/src/core/commands/adr/list.md +171 -0
  49. package/src/core/commands/adr/update.md +235 -0
  50. package/src/core/commands/adr/view.md +252 -0
  51. package/src/core/commands/adr.md +207 -50
  52. package/src/core/commands/agent.md +16 -0
  53. package/src/core/commands/assign.md +148 -44
  54. package/src/core/commands/auto.md +18 -1
  55. package/src/core/commands/babysit.md +391 -38
  56. package/src/core/commands/baseline.md +14 -0
  57. package/src/core/commands/blockers.md +170 -51
  58. package/src/core/commands/board.md +144 -66
  59. package/src/core/commands/changelog.md +15 -0
  60. package/src/core/commands/ci.md +179 -69
  61. package/src/core/commands/compress.md +18 -0
  62. package/src/core/commands/configure.md +16 -0
  63. package/src/core/commands/context/export.md +193 -4
  64. package/src/core/commands/context/full.md +191 -18
  65. package/src/core/commands/context/note.md +248 -4
  66. package/src/core/commands/debt.md +17 -0
  67. package/src/core/commands/deploy.md +208 -65
  68. package/src/core/commands/deps.md +15 -0
  69. package/src/core/commands/diagnose.md +16 -0
  70. package/src/core/commands/docs.md +196 -64
  71. package/src/core/commands/epic/list.md +170 -0
  72. package/src/core/commands/epic/view.md +242 -0
  73. package/src/core/commands/epic.md +192 -69
  74. package/src/core/commands/feedback.md +191 -71
  75. package/src/core/commands/handoff.md +162 -48
  76. package/src/core/commands/help.md +9 -0
  77. package/src/core/commands/ideate.md +446 -0
  78. package/src/core/commands/impact.md +16 -0
  79. package/src/core/commands/metrics.md +141 -37
  80. package/src/core/commands/multi-expert.md +77 -0
  81. package/src/core/commands/packages.md +16 -0
  82. package/src/core/commands/pr.md +161 -67
  83. package/src/core/commands/readme-sync.md +16 -0
  84. package/src/core/commands/research/analyze.md +568 -0
  85. package/src/core/commands/research/ask.md +345 -20
  86. package/src/core/commands/research/import.md +562 -19
  87. package/src/core/commands/research/list.md +173 -5
  88. package/src/core/commands/research/view.md +181 -8
  89. package/src/core/commands/retro.md +135 -48
  90. package/src/core/commands/review.md +219 -47
  91. package/src/core/commands/session/end.md +209 -0
  92. package/src/core/commands/session/history.md +210 -0
  93. package/src/core/commands/session/init.md +116 -0
  94. package/src/core/commands/session/new.md +296 -0
  95. package/src/core/commands/session/resume.md +166 -0
  96. package/src/core/commands/session/status.md +166 -0
  97. package/src/core/commands/setup/visual-e2e.md +462 -0
  98. package/src/core/commands/skill/create.md +115 -17
  99. package/src/core/commands/skill/delete.md +117 -0
  100. package/src/core/commands/skill/edit.md +104 -0
  101. package/src/core/commands/skill/list.md +128 -0
  102. package/src/core/commands/skill/test.md +135 -0
  103. package/src/core/commands/skill/upgrade.md +542 -0
  104. package/src/core/commands/sprint.md +17 -1
  105. package/src/core/commands/status.md +133 -21
  106. package/src/core/commands/story/list.md +176 -0
  107. package/src/core/commands/story/view.md +265 -0
  108. package/src/core/commands/story-validate.md +101 -1
  109. package/src/core/commands/story.md +204 -51
  110. package/src/core/commands/template.md +16 -1
  111. package/src/core/commands/tests.md +226 -64
  112. package/src/core/commands/update.md +17 -1
  113. package/src/core/commands/validate-expertise.md +16 -0
  114. package/src/core/commands/velocity.md +140 -36
  115. package/src/core/commands/verify.md +14 -0
  116. package/src/core/commands/whats-new.md +30 -0
  117. package/src/core/skills/_learnings/README.md +91 -0
  118. package/src/core/skills/_learnings/_template.yaml +106 -0
  119. package/src/core/skills/_learnings/code-review.yaml +118 -0
  120. package/src/core/skills/_learnings/commit.yaml +69 -0
  121. package/src/core/skills/_learnings/story-writer.yaml +71 -0
  122. package/src/core/templates/damage-control-patterns.yaml +234 -0
  123. package/src/core/templates/skill-template.md +53 -11
  124. package/tools/cli/commands/start.js +180 -0
  125. package/tools/cli/installers/ide/claude-code.js +127 -0
  126. package/tools/cli/tui/Dashboard.js +66 -0
  127. package/tools/cli/tui/StoryList.js +69 -0
  128. package/tools/cli/tui/index.js +16 -0
@@ -1,12 +1,89 @@
1
1
  ---
2
2
  description: Deploy multiple domain experts on the same problem for higher confidence
3
3
  argument-hint: <question or task>
4
+ compact_context:
5
+ priority: high
6
+ preserve_rules:
7
+ - "ACTIVE COMMAND: /agileflow:multi-expert - Parallel expert orchestration"
8
+ - "CRITICAL: Deploy ALL experts in SINGLE message with multiple Task tool calls (not sequential)"
9
+ - "MUST wait for all experts via TaskOutput with block=true before synthesis"
10
+ - "MUST analyze agreement: 3+ experts agree = HIGH confidence, 2 agree = MEDIUM, 1 = unique insight"
11
+ - "MUST detect domain keywords from user question to select 3-5 experts"
12
+ - "Synthesis format: Key Findings (agreement) | Unique Insights (single expert) | Disagreements (needs review)"
13
+ state_fields:
14
+ - selected_experts
15
+ - user_question
16
+ - expert_results
17
+ - confidence_scores
4
18
  ---
5
19
 
6
20
  # /agileflow-multi-expert
7
21
 
8
22
  Deploy multiple Agent Experts on the same problem. Each expert validates independently, then results are synthesized for higher confidence answers.
9
23
 
24
+ <!-- COMPACT_SUMMARY_START -->
25
+ ## Compact Summary
26
+
27
+ **Command**: `/agileflow:multi-expert` - Deploy 3-5 domain experts in parallel for high-confidence analysis
28
+
29
+ **Quick Usage**:
30
+ ```
31
+ /agileflow:multi-expert Is our authentication implementation secure?
32
+ ```
33
+
34
+ **What It Does**: Analyze question for domains → Select 3-5 experts → Deploy in PARALLEL → Collect results → Synthesize with confidence scoring
35
+
36
+ **Experts Available**: Security, API, Testing, Database, Performance, CI/CD, DevOps, Accessibility, Architecture
37
+
38
+ **Critical Rules**:
39
+ - 🚨 Deploy ALL experts in ONE message with multiple Task calls (not sequential)
40
+ - 🚨 Wait for all results before synthesis (use TaskOutput with block=true)
41
+ - 🚨 Confidence: HIGH (3+ agree) | MEDIUM (2 agree) | UNIQUE INSIGHT (1 expert with evidence)
42
+ - Detect domain keywords to select 3-5 experts (max 5 to avoid overhead)
43
+
44
+ **Output Format**: Key Findings (high confidence) | Unique Insights (single expert) | Disagreements (needs review) | Recommended Actions
45
+
46
+ **Tool Usage Examples**:
47
+
48
+ **Task** (deploy expert in parallel):
49
+ ```xml
50
+ <invoke name="Task">
51
+ <parameter name="description">[Domain] analysis of: {question}</parameter>
52
+ <parameter name="prompt">EXPERTISE FIRST: Read packages/cli/src/core/experts/{domain}/expertise.yaml
53
+
54
+ QUESTION: {user_question}
55
+
56
+ Analyze from your {domain} perspective:
57
+ 1. What do you observe in your domain?
58
+ 2. What concerns or issues do you see?
59
+ 3. What recommendations do you have?
60
+ 4. Confidence level (High/Medium/Low) and why?
61
+
62
+ Be specific with file paths and code references.</parameter>
63
+ <parameter name="subagent_type">agileflow-{domain}</parameter>
64
+ <parameter name="run_in_background">true</parameter>
65
+ </invoke>
66
+ ```
67
+
68
+ **TaskOutput** (collect all results):
69
+ ```xml
70
+ <invoke name="TaskOutput">
71
+ <parameter name="task_id">{expert_task_id}</parameter>
72
+ <parameter name="block">true</parameter>
73
+ </invoke>
74
+ ```
75
+
76
+ **Domain Detection Keywords**:
77
+ | Domain | Keywords |
78
+ |--------|----------|
79
+ | Security | auth, JWT, OAuth, vulnerability, XSS, CSRF, secure, encrypt |
80
+ | API | endpoint, REST, GraphQL, route, controller, backend |
81
+ | Testing | test, spec, coverage, mock, assertion |
82
+ | Database | schema, table, query, migration, SQL, model |
83
+ | Performance | optimize, cache, latency, profiling, slow |
84
+
85
+ <!-- COMPACT_SUMMARY_END -->
86
+
10
87
  ## When to Use
11
88
 
12
89
  - **Complex cross-domain questions** - "How does user authentication flow from login to API?"
@@ -1,5 +1,21 @@
1
1
  ---
2
2
  description: Manage dependencies with updates and security audits
3
+ compact_context:
4
+ priority: high
5
+ preserve_rules:
6
+ - "Auto-detect package manager (npm, pip, cargo, etc.) from manifest files"
7
+ - "MUST use TodoWrite to track 8-step workflow (inputs, detect, analyze, generate, preview, confirm, apply, save)"
8
+ - "ALWAYS show diff-first before applying updates (YES/NO confirmation)"
9
+ - "Prioritize security updates - run ACTION=audit first if vulnerabilities suspected"
10
+ - "For major updates: Create stories, don't auto-update (may require code changes)"
11
+ - "NEVER auto-update without approval (AUTO_PR default is no)"
12
+ - "Update/create reports in docs/08-project/ (dependencies-dashboard.md, dependency-report-*.md)"
13
+ - "If critical CVEs found, create story: 'US-XXXX: Fix security vulnerabilities in dependencies'"
14
+ state_fields:
15
+ - package_manager_detected
16
+ - vulnerabilities_found
17
+ - updates_applied
18
+ - report_saved
3
19
  ---
4
20
 
5
21
  # packages
@@ -1,9 +1,26 @@
1
1
  ---
2
2
  description: Generate pull request description from story
3
3
  argument-hint: STORY=<US-ID> [TITLE=<text>] [TEST_EVIDENCE=<text>]
4
+ compact_context:
5
+ priority: high
6
+ preserve_rules:
7
+ - "STORY ID is REQUIRED - always ask if missing"
8
+ - "Read story file FIRST from docs/06-stories/<STORY>.md"
9
+ - "Extract: epic reference, summary, dependencies, acceptance criteria"
10
+ - "NEVER guess AC or dependencies - read from story file"
11
+ - "Output is PASTE-READY - format as GitHub PR markdown"
12
+ - "Include ALL dependencies found in story file"
13
+ - "Preserve AC checkbox states from AC_CHECKED input"
14
+ - "Suggest conventional commit format: feat/fix/chore based on story type"
15
+ state_fields:
16
+ - story_id
17
+ - title
18
+ - ac_checked
19
+ - test_evidence
20
+ - notes
4
21
  ---
5
22
 
6
- # pr-template
23
+ # pr
7
24
 
8
25
  ## STEP 0: Gather Context
9
26
 
@@ -16,91 +33,168 @@ This gathers git status, stories/epics, session state, and registers for PreComp
16
33
  ---
17
34
 
18
35
  <!-- COMPACT_SUMMARY_START -->
19
- ## Compact Summary
20
-
21
- **Purpose**: Generate complete, paste-ready pull request descriptions from user story files and test evidence.
22
-
23
- **Role**: PR Author
24
-
25
- **Key Inputs**:
26
- - `STORY=<US-ID>` - User story identifier (required)
27
- - `TITLE=<text>` - Short PR title (optional)
28
- - `AC_CHECKED=<checkbox list>` - Acceptance criteria with checked/unchecked state (optional)
29
- - `TEST_EVIDENCE=<bullets/paths>` - Test results, screenshots, logs (optional)
30
- - `NOTES=<text>` - Additional context or notes (optional)
31
-
32
- **Core Workflow**:
33
- 1. Parse all input arguments (STORY, TITLE, AC_CHECKED, TEST_EVIDENCE, NOTES)
34
- 2. Read the story file from `docs/06-stories/<STORY>.md` to extract:
35
- - Epic reference and context
36
- - Story summary and description
37
- - Dependencies on other stories
38
- - Acceptance criteria
39
- 3. Generate comprehensive PR description with all standard sections
40
- 4. Output paste-ready PR body in markdown format
41
- 5. Suggest Conventional Commit subject line for squash merges
42
-
43
- **PR Description Structure**:
44
- - **Title**: `<STORY>: <TITLE>` format
45
- - **Summary**: High-level overview of changes
46
- - **Linked Issues**: Story ID + dependencies from story file
47
- - **Checklist**: Acceptance criteria with checkbox states from AC_CHECKED
48
- - **Test Evidence**: Formatted test results, paths, screenshots from TEST_EVIDENCE
49
- - **Screenshots/GIFs**: Placeholder section for visual evidence
50
- - **Risk Assessment**: Potential risks and rollback plan
51
- - **Code Owners**: Auto-populated from @CODEOWNERS
52
-
53
- **Output Format**:
54
- ```markdown
55
- ## Summary
56
- [Generated from story summary + NOTES]
57
36
 
58
- ## Linked Issues
59
- - Implements #<STORY>
60
- - Depends on #<DEP-1>, #<DEP-2>
37
+ ## ⚠️ COMPACT SUMMARY - /agileflow:pr IS ACTIVE
38
+
39
+ **CRITICAL**: You are generating pull request descriptions from stories. These are paste-ready GitHub PR bodies.
61
40
 
62
- ## Checklist
63
- - [x] AC1: Description
64
- - [ ] AC2: Description
41
+ **ROLE**: PR Description Generator
42
+
43
+ ---
65
44
 
66
- ## Test Evidence
67
- [Formatted TEST_EVIDENCE content]
45
+ ### 🚨 RULE #1: STORY ID IS REQUIRED (ALWAYS)
46
+
47
+ Always require `STORY=<US-ID>` input. If missing, ask user: "Which story is this PR for? (e.g., US-0042)"
48
+
49
+ ---
50
+
51
+ ### 🚨 RULE #2: READ STORY FILE FIRST (MANDATORY)
52
+
53
+ **BEFORE ANYTHING ELSE**: Read the story file from `docs/06-stories/<STORY>.md`
54
+
55
+ Extract these from the story file (NEVER guess):
56
+ - Epic reference
57
+ - Story summary and description
58
+ - Dependencies on other stories
59
+ - Acceptance criteria (exact text)
60
+ - Owner/assignee
61
+
62
+ ❌ WRONG: Generate PR description without reading story file
63
+ ✅ RIGHT: Read story file, extract actual AC and deps
64
+
65
+ ---
68
66
 
69
- ## Screenshots/GIFs
70
- [Placeholder or provided content]
67
+ ### 🚨 RULE #3: PR DESCRIPTION STRUCTURE (EXACT FORMAT)
71
68
 
72
- ## Risk Assessment
73
- [Analysis of potential risks and rollback strategy]
69
+ Generate GitHub PR body with these sections in order:
74
70
 
75
- ## Code Owners
76
- @team-name
71
+ | Section | Source | Format |
72
+ |---------|--------|--------|
73
+ | Title | Input TITLE or story summary | `<STORY>: <TITLE>` |
74
+ | Summary | Story summary + NOTES input | 2-3 paragraph description |
75
+ | Linked Issues | Story ID + dependencies from file | Bullet list of #STORY |
76
+ | Checklist | AC_CHECKED input (preserve state) | `- [x]` / `- [ ]` format |
77
+ | Test Evidence | TEST_EVIDENCE input | Formatted bullets/paths/links |
78
+ | Screenshots | User-provided or placeholder | Links or "See attached" |
79
+ | Risk Assessment | Analyze potential risks | Bulleted risks + rollback plan |
80
+ | Code Owners | From @CODEOWNERS file | @team or specific users |
81
+
82
+ ---
83
+
84
+ ### 🚨 RULE #4: OUTPUT IS PASTE-READY
85
+
86
+ The PR body output MUST be copy-paste-ready for GitHub:
87
+ - Use proper markdown formatting
88
+ - No internal notes or meta-commentary
89
+ - No "Here's what I generated:" prefixes
90
+ - No instructions about what to do next
91
+
92
+ **SHOW OUTPUT**:
93
+ ```markdown
94
+ [Actual PR body here - ready to paste into GitHub]
77
95
  ```
78
96
 
79
- **Conventional Commit Suggestion**: Provides a proper commit message following conventional commit format (feat/fix/chore) based on story type.
97
+ Then ask: "Copy the PR body above. Continue? (YES/NO)"
80
98
 
81
- **File Operations**: Read-only - no file writes, only reads story file for context.
99
+ ---
100
+
101
+ ### 🚨 RULE #5: CONVENTIONAL COMMIT SUGGESTION
102
+
103
+ Suggest a commit message following conventional format:
104
+
105
+ | Story Type | Format | Example |
106
+ |-----------|--------|---------|
107
+ | New feature | `feat: <description>` | `feat: add user authentication` |
108
+ | Bug fix | `fix: <description>` | `fix: resolve login timeout issue` |
109
+ | Refactor | `refactor: <description>` | `refactor: simplify user service` |
110
+ | Chore | `chore: <description>` | `chore: update dependencies` |
111
+
112
+ ---
82
113
 
83
- **Best Practices**:
84
- - Always read the story file first to ensure accurate context
85
- - Include all dependencies found in story file
86
- - Preserve checkbox states from AC_CHECKED input
87
- - Format test evidence clearly and readably
88
- - Suggest meaningful commit messages aligned with change type
114
+ ### ANTI-PATTERNS (DON'T DO THESE)
89
115
 
90
- **Tool Usage Examples**:
116
+ Generate PR description without reading story file
117
+ ❌ Guess at acceptance criteria instead of extracting them
118
+ ❌ Add meta-commentary or instructions to PR body
119
+ ❌ Forget to include dependencies
120
+ ❌ Lose checkbox states from AC_CHECKED input
121
+ ❌ Include internal development notes in PR body
91
122
 
92
- TodoWrite:
123
+ ### DO THESE INSTEAD
124
+
125
+ ✅ Always read story file first
126
+ ✅ Extract actual AC and dependencies from story
127
+ ✅ Output paste-ready PR markdown
128
+ ✅ Include all dependencies as linked issues
129
+ ✅ Preserve AC checkbox states
130
+ ✅ Suggest meaningful conventional commit message
131
+
132
+ ---
133
+
134
+ ### KEY FILES TO REMEMBER
135
+
136
+ | File | Purpose |
137
+ |------|---------|
138
+ | `docs/06-stories/<STORY>.md` | Story source - read for AC and deps |
139
+ | `docs/09-agents/status.json` | Story metadata reference |
140
+ | `.github/CODEOWNERS` | Code owners for PR section |
141
+
142
+ ---
143
+
144
+ ### WORKFLOW
145
+
146
+ 1. **Input Validation**: Ensure STORY is provided or ask user
147
+ 2. **Read Story File**: Load story from `docs/06-stories/<STORY>.md`
148
+ 3. **Extract Metadata**: Get epic, summary, dependencies, AC
149
+ 4. **Generate PR Body**: Build complete markdown (using template above)
150
+ 5. **Show Output**: Display paste-ready PR body
151
+ 6. **Suggest Commit**: Provide conventional commit message
152
+ 7. **Confirm**: Ask user to confirm and copy
153
+
154
+ ---
155
+
156
+ ### TOOL USAGE EXAMPLES
157
+
158
+ **TodoWrite** (to track PR generation):
93
159
  ```xml
94
160
  <invoke name="TodoWrite">
95
161
  <parameter name="content">1. Parse inputs (STORY, TITLE, AC_CHECKED, TEST_EVIDENCE, NOTES)
96
- 2. Read story file to extract epic/summary/deps
97
- 3. Generate PR description with all sections
98
- 4. Output paste-ready PR body
99
- 5. Suggest Conventional Commit subject</parameter>
162
+ 2. Read story file from docs/06-stories/
163
+ 3. Extract: epic, summary, deps, AC
164
+ 4. Generate PR description with all sections
165
+ 5. Output paste-ready PR body
166
+ 6. Suggest conventional commit message</parameter>
100
167
  <parameter name="status">in-progress</parameter>
101
168
  </invoke>
102
169
  ```
103
170
 
171
+ **AskUserQuestion** (for confirmation):
172
+ ```xml
173
+ <invoke name="AskUserQuestion">
174
+ <parameter name="questions">[{
175
+ "question": "Use this PR description?",
176
+ "header": "Confirm",
177
+ "multiSelect": false,
178
+ "options": [
179
+ {"label": "Copy to clipboard", "description": "Ready to paste into GitHub"},
180
+ {"label": "Edit it", "description": "Let me modify sections"},
181
+ {"label": "Cancel", "description": "Don't create PR now"}
182
+ ]
183
+ }]</parameter>
184
+ </invoke>
185
+ ```
186
+
187
+ ---
188
+
189
+ ### REMEMBER AFTER COMPACTION
190
+
191
+ - `/agileflow:pr` IS ACTIVE - generating PR descriptions
192
+ - STORY ID required - ask if missing
193
+ - Read story file FIRST - extract AC, deps, summary
194
+ - Output MUST be paste-ready for GitHub
195
+ - Include conventional commit suggestion
196
+ - Preserve AC checkbox states from input
197
+
104
198
  <!-- COMPACT_SUMMARY_END -->
105
199
 
106
200
  ---
@@ -1,6 +1,22 @@
1
1
  ---
2
2
  description: Synchronize a folder's README.md with its current contents
3
3
  argument-hint: FOLDER=<path> | FOLDER=all
4
+ compact_context:
5
+ priority: medium
6
+ preserve_rules:
7
+ - "FOLDER is REQUIRED or ask user (single folder or 'all')"
8
+ - "Spawn readme-updater agent to do actual work"
9
+ - "If FOLDER=all, spawn agent for each docs/* subfolder in parallel"
10
+ - "List all files and subdirectories with descriptions"
11
+ - "Build '## Contents' section with file descriptions"
12
+ - "Always show diff/preview FIRST, wait for YES/NO BEFORE updating"
13
+ - "Only update '## Contents' section - preserve other sections"
14
+ - "Use Edit tool to update README only after approval"
15
+ state_fields:
16
+ - folder_path
17
+ - all_folders_flag
18
+ - files_count
19
+ - updated_flag
4
20
  ---
5
21
 
6
22
  # readme-sync