@fro.bot/systematic 1.22.8 → 1.23.1

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 (60) hide show
  1. package/agents/research/best-practices-researcher.md +9 -3
  2. package/agents/research/framework-docs-researcher.md +2 -0
  3. package/agents/research/git-history-analyzer.md +9 -6
  4. package/agents/research/issue-intelligence-analyst.md +232 -0
  5. package/agents/research/repo-research-analyst.md +6 -10
  6. package/commands/.gitkeep +0 -0
  7. package/package.json +1 -1
  8. package/skills/agent-browser/SKILL.md +511 -169
  9. package/skills/agent-browser/references/authentication.md +303 -0
  10. package/skills/agent-browser/references/commands.md +266 -0
  11. package/skills/agent-browser/references/profiling.md +120 -0
  12. package/skills/agent-browser/references/proxy-support.md +194 -0
  13. package/skills/agent-browser/references/session-management.md +193 -0
  14. package/skills/agent-browser/references/snapshot-refs.md +194 -0
  15. package/skills/agent-browser/references/video-recording.md +173 -0
  16. package/skills/agent-browser/templates/authenticated-session.sh +105 -0
  17. package/skills/agent-browser/templates/capture-workflow.sh +69 -0
  18. package/skills/agent-browser/templates/form-automation.sh +62 -0
  19. package/skills/ce-brainstorm/SKILL.md +336 -0
  20. package/{commands/ce/compound.md → skills/ce-compound/SKILL.md} +106 -9
  21. package/skills/ce-compound-refresh/SKILL.md +528 -0
  22. package/skills/ce-ideate/SKILL.md +371 -0
  23. package/{commands/ce/plan.md → skills/ce-plan/SKILL.md} +73 -66
  24. package/skills/ce-plan-beta/SKILL.md +572 -0
  25. package/{commands/ce/review.md → skills/ce-review/SKILL.md} +53 -18
  26. package/{commands/ce/work.md → skills/ce-work/SKILL.md} +88 -63
  27. package/{commands/create-agent-skill.md → skills/create-agent-skill/SKILL.md} +1 -0
  28. package/skills/create-agent-skills/SKILL.md +9 -19
  29. package/{commands/deepen-plan.md → skills/deepen-plan/SKILL.md} +35 -36
  30. package/skills/deepen-plan-beta/SKILL.md +323 -0
  31. package/{commands/deploy-docs.md → skills/deploy-docs/SKILL.md} +26 -33
  32. package/skills/document-review/SKILL.md +14 -8
  33. package/{commands/generate_command.md → skills/generate_command/SKILL.md} +5 -5
  34. package/{commands/heal-skill.md → skills/heal-skill/SKILL.md} +1 -0
  35. package/skills/lfg/SKILL.md +37 -0
  36. package/{commands/report-bug.md → skills/report-bug/SKILL.md} +16 -15
  37. package/{commands/reproduce-bug.md → skills/reproduce-bug/SKILL.md} +10 -9
  38. package/{commands/resolve_todo_parallel.md → skills/resolve_todo_parallel/SKILL.md} +2 -1
  39. package/{commands/slfg.md → skills/slfg/SKILL.md} +8 -4
  40. package/{commands/test-browser.md → skills/test-browser/SKILL.md} +67 -13
  41. package/{commands/test-xcode.md → skills/test-xcode/SKILL.md} +4 -3
  42. package/{commands/triage.md → skills/triage/SKILL.md} +2 -1
  43. package/skills/workflows-brainstorm/SKILL.md +11 -0
  44. package/{commands/workflows/compound.md → skills/workflows-compound/SKILL.md} +2 -2
  45. package/{commands/workflows/plan.md → skills/workflows-plan/SKILL.md} +2 -2
  46. package/{commands/workflows/review.md → skills/workflows-review/SKILL.md} +2 -2
  47. package/{commands/workflows/work.md → skills/workflows-work/SKILL.md} +2 -2
  48. package/agents/workflow/every-style-editor.md +0 -66
  49. package/commands/ce/brainstorm.md +0 -145
  50. package/commands/lfg.md +0 -20
  51. package/commands/workflows/brainstorm.md +0 -145
  52. package/skills/brainstorming/SKILL.md +0 -190
  53. package/skills/skill-creator/SKILL.md +0 -210
  54. package/skills/skill-creator/scripts/init_skill.py +0 -303
  55. package/skills/skill-creator/scripts/package_skill.py +0 -110
  56. package/skills/skill-creator/scripts/quick_validate.py +0 -65
  57. /package/{commands/agent-native-audit.md → skills/agent-native-audit/SKILL.md} +0 -0
  58. /package/{commands/changelog.md → skills/changelog/SKILL.md} +0 -0
  59. /package/{commands/feature-video.md → skills/feature-video/SKILL.md} +0 -0
  60. /package/{commands/resolve_parallel.md → skills/resolve_parallel/SKILL.md} +0 -0
@@ -0,0 +1,336 @@
1
+ ---
2
+ name: ce:brainstorm
3
+ description: Explore requirements and approaches through collaborative dialogue before writing a right-sized requirements document and planning implementation. Use for feature ideas, problem framing, when the user says 'let's brainstorm', or when they want to think through options before deciding what to build. Also use when a user describes a vague or ambitious feature request, asks 'what should we build', 'help me think through X', presents a problem with multiple valid solutions, or seems unsure about scope or direction — even if they don't explicitly ask to brainstorm.
4
+ argument-hint: '[feature idea or problem to explore]'
5
+ ---
6
+
7
+ # Brainstorm a Feature or Improvement
8
+
9
+ **Note: The current year is 2026.** Use this when dating requirements documents.
10
+
11
+ Brainstorming helps answer **WHAT** to build through collaborative dialogue. It precedes `/systematic:ce-plan`, which answers **HOW** to build it.
12
+
13
+ The durable output of this workflow is a **requirements document**. In other workflows this might be called a lightweight PRD or feature brief. In compound engineering, keep the workflow name `brainstorm`, but make the written artifact strong enough that planning does not need to invent product behavior, scope boundaries, or success criteria.
14
+
15
+ This skill does not implement code. It explores, clarifies, and documents decisions for later planning or execution.
16
+
17
+ ## Core Principles
18
+
19
+ 1. **Assess scope first** - Match the amount of ceremony to the size and ambiguity of the work.
20
+ 2. **Be a thinking partner** - Suggest alternatives, challenge assumptions, and explore what-ifs instead of only extracting requirements.
21
+ 3. **Resolve product decisions here** - User-facing behavior, scope boundaries, and success criteria belong in this workflow. Detailed implementation belongs in planning.
22
+ 4. **Keep implementation out of the requirements doc by default** - Do not include libraries, schemas, endpoints, file layouts, or code-level design unless the brainstorm itself is inherently about a technical or architectural change.
23
+ 5. **Right-size the artifact** - Simple work gets a compact requirements document or brief alignment. Larger work gets a fuller document. Do not add ceremony that does not help planning.
24
+ 6. **Apply YAGNI to carrying cost, not coding effort** - Prefer the simplest approach that delivers meaningful value. Avoid speculative complexity and hypothetical future-proofing, but low-cost polish or delight is worth including when its ongoing cost is small and easy to maintain.
25
+
26
+ ## Interaction Rules
27
+
28
+ 1. **Ask one question at a time** - Do not batch several unrelated questions into one message.
29
+ 2. **Prefer single-select multiple choice** - Use single-select when choosing one direction, one priority, or one next step.
30
+ 3. **Use multi-select rarely and intentionally** - Use it only for compatible sets such as goals, constraints, non-goals, or success criteria that can all coexist. If prioritization matters, follow up by asking which selected item is primary.
31
+ 4. **Use the platform's question tool when available** - When asking the user a question, prefer the platform's blocking question tool if one exists (`AskUserQuestion` in OpenCode, `request_user_input` in Codex, `ask_user` in Gemini). Otherwise, present numbered options in chat and wait for the user's reply before proceeding.
32
+
33
+ ## Output Guidance
34
+
35
+ - **Keep outputs concise** - Prefer short sections, brief bullets, and only enough detail to support the next decision.
36
+
37
+ ## Feature Description
38
+
39
+ <feature_description> #$ARGUMENTS </feature_description>
40
+
41
+ **If the feature description above is empty, ask the user:** "What would you like to explore? Please describe the feature, problem, or improvement you're thinking about."
42
+
43
+ Do not proceed until you have a feature description from the user.
44
+
45
+ ## Execution Flow
46
+
47
+ ### Phase 0: Resume, Assess, and Route
48
+
49
+ #### 0.1 Resume Existing Work When Appropriate
50
+
51
+ If the user references an existing brainstorm topic or document, or there is an obvious recent matching `*-requirements.md` file in `docs/brainstorms/`:
52
+ - Read the document
53
+ - Confirm with the user before resuming: "Found an existing requirements doc for [topic]. Should I continue from this, or start fresh?"
54
+ - If resuming, summarize the current state briefly, continue from its existing decisions and outstanding questions, and update the existing document instead of creating a duplicate
55
+
56
+ #### 0.2 Assess Whether Brainstorming Is Needed
57
+
58
+ **Clear requirements indicators:**
59
+ - Specific acceptance criteria provided
60
+ - Referenced existing patterns to follow
61
+ - Described exact expected behavior
62
+ - Constrained, well-defined scope
63
+
64
+ **If requirements are already clear:**
65
+ Keep the interaction brief. Confirm understanding and present concise next-step options rather than forcing a long brainstorm. Only write a short requirements document when a durable handoff to planning or later review would be valuable. Skip Phase 1.1 and 1.2 entirely — go straight to Phase 1.3 or Phase 3.
66
+
67
+ #### 0.3 Assess Scope
68
+
69
+ Use the feature description plus a light repo scan to classify the work:
70
+ - **Lightweight** - small, well-bounded, low ambiguity
71
+ - **Standard** - normal feature or bounded refactor with some decisions to make
72
+ - **Deep** - cross-cutting, strategic, or highly ambiguous
73
+
74
+ If the scope is unclear, ask one targeted question to disambiguate and then proceed.
75
+
76
+ ### Phase 1: Understand the Idea
77
+
78
+ #### 1.1 Existing Context Scan
79
+
80
+ Scan the repo before substantive brainstorming. Match depth to scope:
81
+
82
+ **Lightweight** — Search for the topic, check if something similar already exists, and move on.
83
+
84
+ **Standard and Deep** — Two passes:
85
+
86
+ *Constraint Check* — Check project instruction files (`AGENTS.md`, `CLAUDE.md`) for workflow, product, or scope constraints that affect the brainstorm. If these add nothing, move on.
87
+
88
+ *Topic Scan* — Search for relevant terms. Read the most relevant existing artifact if one exists (brainstorm, plan, spec, skill, feature doc). Skim adjacent examples covering similar behavior.
89
+
90
+ If nothing obvious appears after a short scan, say so and continue. Do not drift into technical planning — avoid inspecting tests, migrations, deployment, or low-level architecture unless the brainstorm is itself about a technical decision.
91
+
92
+ #### 1.2 Product Pressure Test
93
+
94
+ Before generating approaches, challenge the request to catch misframing. Match depth to scope:
95
+
96
+ **Lightweight:**
97
+ - Is this solving the real user problem?
98
+ - Are we duplicating something that already covers this?
99
+ - Is there a clearly better framing with near-zero extra cost?
100
+
101
+ **Standard:**
102
+ - Is this the right problem, or a proxy for a more important one?
103
+ - What user or business outcome actually matters here?
104
+ - What happens if we do nothing?
105
+ - Is there a nearby framing that creates more user value without more carrying cost? If so, what complexity does it add?
106
+ - Given the current project state, user goal, and constraints, what is the single highest-leverage move right now: the request as framed, a reframing, one adjacent addition, a simplification, or doing nothing?
107
+ - Favor moves that compound value, reduce future carrying cost, or make the product meaningfully more useful or compelling
108
+ - Use the result to sharpen the conversation, not to bulldoze the user's intent
109
+
110
+ **Deep** — Standard questions plus:
111
+ - What durable capability should this create in 6-12 months?
112
+ - Does this move the product toward that, or is it only a local patch?
113
+
114
+ #### 1.3 Collaborative Dialogue
115
+
116
+ Use the platform's blocking question tool when available (see Interaction Rules). Otherwise, present numbered options in chat and wait for the user's reply before proceeding.
117
+
118
+ **Guidelines:**
119
+ - Ask questions **one at a time**
120
+ - Prefer multiple choice when natural options exist
121
+ - Prefer **single-select** when choosing one direction, one priority, or one next step
122
+ - Use **multi-select** only for compatible sets that can all coexist; if prioritization matters, ask which selected item is primary
123
+ - Start broad (problem, users, value) then narrow (constraints, exclusions, edge cases)
124
+ - Clarify the problem frame, validate assumptions, and ask about success criteria
125
+ - Make requirements concrete enough that planning will not need to invent behavior
126
+ - Surface dependencies or prerequisites only when they materially affect scope
127
+ - Resolve product decisions here; leave technical implementation choices for planning
128
+ - Bring ideas, alternatives, and challenges instead of only interviewing
129
+
130
+ **Exit condition:** Continue until the idea is clear OR the user explicitly wants to proceed.
131
+
132
+ ### Phase 2: Explore Approaches
133
+
134
+ If multiple plausible directions remain, propose **2-3 concrete approaches** based on research and conversation. Otherwise state the recommended direction directly.
135
+
136
+ When useful, include one deliberately higher-upside alternative:
137
+ - Identify what adjacent addition or reframing would most increase usefulness, compounding value, or durability without disproportionate carrying cost. Present it as a challenger option alongside the baseline, not as the default. Omit it when the work is already obviously over-scoped or the baseline request is clearly the right move.
138
+
139
+ For each approach, provide:
140
+ - Brief description (2-3 sentences)
141
+ - Pros and cons
142
+ - Key risks or unknowns
143
+ - When it's best suited
144
+
145
+ Lead with your recommendation and explain why. Prefer simpler solutions when added complexity creates real carrying cost, but do not reject low-cost, high-value polish just because it is not strictly necessary.
146
+
147
+ If one approach is clearly best and alternatives are not meaningful, skip the menu and state the recommendation directly.
148
+
149
+ If relevant, call out whether the choice is:
150
+ - Reuse an existing pattern
151
+ - Extend an existing capability
152
+ - Build something net new
153
+
154
+ ### Phase 3: Capture the Requirements
155
+
156
+ Write or update a requirements document only when the conversation produced durable decisions worth preserving.
157
+
158
+ This document should behave like a lightweight PRD without PRD ceremony. Include what planning needs to execute well, and skip sections that add no value for the scope.
159
+
160
+ The requirements document is for product definition and scope control. Do **not** include implementation details such as libraries, schemas, endpoints, file layouts, or code structure unless the brainstorm is inherently technical and those details are themselves the subject of the decision.
161
+
162
+ **Required content for non-trivial work:**
163
+ - Problem frame
164
+ - Concrete requirements or intended behavior with stable IDs
165
+ - Scope boundaries
166
+ - Success criteria
167
+
168
+ **Include when materially useful:**
169
+ - Key decisions and rationale
170
+ - Dependencies or assumptions
171
+ - Outstanding questions
172
+ - Alternatives considered
173
+ - High-level technical direction only when the work is inherently technical and the direction is part of the product/architecture decision
174
+
175
+ **Document structure:** Use this template and omit clearly inapplicable optional sections:
176
+
177
+ ```markdown
178
+ ---
179
+ date: YYYY-MM-DD
180
+ topic: <kebab-case-topic>
181
+ ---
182
+
183
+ # <Topic Title>
184
+
185
+ ## Problem Frame
186
+ [Who is affected, what is changing, and why it matters]
187
+
188
+ ## Requirements
189
+ - R1. [Concrete user-facing behavior or requirement]
190
+ - R2. [Concrete user-facing behavior or requirement]
191
+
192
+ ## Success Criteria
193
+ - [How we will know this solved the right problem]
194
+
195
+ ## Scope Boundaries
196
+ - [Deliberate non-goal or exclusion]
197
+
198
+ ## Key Decisions
199
+ - [Decision]: [Rationale]
200
+
201
+ ## Dependencies / Assumptions
202
+ - [Only include if material]
203
+
204
+ ## Outstanding Questions
205
+
206
+ ### Resolve Before Planning
207
+ - [Affects R1][User decision] [Question that must be answered before planning can proceed]
208
+
209
+ ### Deferred to Planning
210
+ - [Affects R2][Technical] [Question that should be answered during planning or codebase exploration]
211
+ - [Affects R2][Needs research] [Question that likely requires research during planning]
212
+
213
+ ## Next Steps
214
+ [If `Resolve Before Planning` is empty: `→ /systematic:ce-plan` for structured implementation planning]
215
+ [If `Resolve Before Planning` is not empty: `→ Resume /systematic:ce-brainstorm` to resolve blocking questions before planning]
216
+ ```
217
+
218
+ For **Standard** and **Deep** brainstorms, a requirements document is usually warranted.
219
+
220
+ For **Lightweight** brainstorms, keep the document compact. Skip document creation when the user only needs brief alignment and no durable decisions need to be preserved.
221
+
222
+ For very small requirements docs with only 1-3 simple requirements, plain bullet requirements are acceptable. For **Standard** and **Deep** requirements docs, use stable IDs like `R1`, `R2`, `R3` so planning and later review can refer to them unambiguously.
223
+
224
+ When the work is simple, combine sections rather than padding them. A short requirements document is better than a bloated one.
225
+
226
+ Before finalizing, check:
227
+ - What would `ce:plan` still have to invent if this brainstorm ended now?
228
+ - Do any requirements depend on something claimed to be out of scope?
229
+ - Are any unresolved items actually product decisions rather than planning questions?
230
+ - Did implementation details leak in when they shouldn't have?
231
+ - Is there a low-cost change that would make this materially more useful?
232
+
233
+ If planning would need to invent product behavior, scope boundaries, or success criteria, the brainstorm is not complete yet.
234
+
235
+ Ensure `docs/brainstorms/` directory exists before writing.
236
+
237
+ If a document contains outstanding questions:
238
+ - Use `Resolve Before Planning` only for questions that truly block planning
239
+ - If `Resolve Before Planning` is non-empty, keep working those questions during the brainstorm by default
240
+ - If the user explicitly wants to proceed anyway, convert each remaining item into an explicit decision, assumption, or `Deferred to Planning` question before proceeding
241
+ - Do not force resolution of technical questions during brainstorming just to remove uncertainty
242
+ - Put technical questions, or questions that require validation or research, under `Deferred to Planning` when they are better answered there
243
+ - Use tags like `[Needs research]` when the planner should likely investigate the question rather than answer it from repo context alone
244
+ - Carry deferred questions forward explicitly rather than treating them as a failure to finish the requirements doc
245
+
246
+ ### Phase 4: Handoff
247
+
248
+ #### 4.1 Present Next-Step Options
249
+
250
+ Present next steps using the platform's blocking question tool when available (see Interaction Rules). Otherwise present numbered options in chat and end the turn.
251
+
252
+ If `Resolve Before Planning` contains any items:
253
+ - Ask the blocking questions now, one at a time, by default
254
+ - If the user explicitly wants to proceed anyway, first convert each remaining item into an explicit decision, assumption, or `Deferred to Planning` question
255
+ - If the user chooses to pause instead, present the handoff as paused or blocked rather than complete
256
+ - Do not offer `Proceed to planning` or `Proceed directly to work` while `Resolve Before Planning` remains non-empty
257
+
258
+ **Question when no blocking questions remain:** "Brainstorm complete. What would you like to do next?"
259
+
260
+ **Question when blocking questions remain and user wants to pause:** "Brainstorm paused. Planning is blocked until the remaining questions are resolved. What would you like to do next?"
261
+
262
+ Present only the options that apply:
263
+ - **Proceed to planning (Recommended)** - Run `/systematic:ce-plan` for structured implementation planning
264
+ - **Proceed directly to work** - Only offer this when scope is lightweight, success criteria are clear, scope boundaries are clear, and no meaningful technical or research questions remain
265
+ - **Review and refine** - Offer this only when a requirements document exists and can be improved through structured review
266
+ - **Ask more questions** - Continue clarifying scope, preferences, or edge cases
267
+ - **Share to Proof** - Offer this only when a requirements document exists
268
+ - **Done for now** - Return later
269
+
270
+ If the direct-to-work gate is not satisfied, omit that option entirely.
271
+
272
+ #### 4.2 Handle the Selected Option
273
+
274
+ **If user selects "Proceed to planning (Recommended)":**
275
+
276
+ Immediately run `/systematic:ce-plan` in the current session. Pass the requirements document path when one exists; otherwise pass a concise summary of the finalized brainstorm decisions. Do not print the closing summary first.
277
+
278
+ **If user selects "Proceed directly to work":**
279
+
280
+ Immediately run `/systematic:ce-work` in the current session using the finalized brainstorm output as context. If a compact requirements document exists, pass its path. Do not print the closing summary first.
281
+
282
+ **If user selects "Share to Proof":**
283
+
284
+ ```bash
285
+ CONTENT=$(cat docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md)
286
+ TITLE="Requirements: <topic title>"
287
+ RESPONSE=$(curl -s -X POST https://www.proofeditor.ai/share/markdown \
288
+ -H "Content-Type: application/json" \
289
+ -d "$(jq -n --arg title "$TITLE" --arg markdown "$CONTENT" --arg by "ai:compound" '{title: $title, markdown: $markdown, by: $by}')")
290
+ PROOF_URL=$(echo "$RESPONSE" | jq -r '.tokenUrl')
291
+ ```
292
+
293
+ Display the URL prominently: `View & collaborate in Proof: <PROOF_URL>`
294
+
295
+ If the curl fails, skip silently. Then return to the Phase 4 options.
296
+
297
+ **If user selects "Ask more questions":** Return to Phase 1.3 (Collaborative Dialogue) and continue asking the user questions one at a time to further refine the design. Probe deeper into edge cases, constraints, preferences, or areas not yet explored. Continue until the user is satisfied, then return to Phase 4. Do not show the closing summary yet.
298
+
299
+ **If user selects "Review and refine":**
300
+
301
+ Load the `document-review` skill and apply it to the requirements document.
302
+
303
+ When document-review returns "Review complete", return to the normal Phase 4 options and present only the options that still apply. Do not show the closing summary yet.
304
+
305
+ #### 4.3 Closing Summary
306
+
307
+ Use the closing summary only when this run of the workflow is ending or handing off, not when returning to the Phase 4 options.
308
+
309
+ When complete and ready for planning, display:
310
+
311
+ ```text
312
+ Brainstorm complete!
313
+
314
+ Requirements doc: docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md # if one was created
315
+
316
+ Key decisions:
317
+ - [Decision 1]
318
+ - [Decision 2]
319
+
320
+ Recommended next step: `/systematic:ce-plan`
321
+ ```
322
+
323
+ If the user pauses with `Resolve Before Planning` still populated, display:
324
+
325
+ ```text
326
+ Brainstorm paused.
327
+
328
+ Requirements doc: docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md # if one was created
329
+
330
+ Planning is blocked by:
331
+ - [Blocking question 1]
332
+ - [Blocking question 2]
333
+
334
+ Resume with `/systematic:ce-brainstorm` when ready to resolve these before planning.
335
+ ```
336
+
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ce:compound
3
3
  description: Document a recently solved problem to compound your team's knowledge
4
- argument-hint: "[optional: brief context about the fix]"
4
+ argument-hint: '[optional: brief context about the fix]'
5
5
  ---
6
6
 
7
7
  # /compound
@@ -17,11 +17,19 @@ Captures problem solutions while context is fresh, creating structured documenta
17
17
  ## Usage
18
18
 
19
19
  ```bash
20
- /ce:compound # Document the most recent fix
21
- /ce:compound [brief context] # Provide additional context hint
20
+ /systematic:ce-compound # Document the most recent fix
21
+ /systematic:ce-compound [brief context] # Provide additional context hint
22
22
  ```
23
23
 
24
- ## Execution Strategy: Two-Phase Orchestration
24
+ ## Execution Strategy
25
+
26
+ **Always run full mode by default.** Proceed directly to Phase 1 unless the user explicitly requests compact-safe mode (e.g., `/systematic:ce-compound --compact` or "use compact mode").
27
+
28
+ Compact-safe mode exists as a lightweight alternative — see the **Compact-Safe Mode** section below. It's there if the user wants it, not something to push.
29
+
30
+ ---
31
+
32
+ ### Full Mode
25
33
 
26
34
  <critical_requirement>
27
35
  **Only ONE file gets written - the final documentation.**
@@ -51,7 +59,8 @@ Launch these subagents IN PARALLEL. Each returns text data to the orchestrator.
51
59
  - Searches `docs/solutions/` for related documentation
52
60
  - Identifies cross-references and links
53
61
  - Finds related GitHub issues
54
- - Returns: Links and relationships
62
+ - Flags any related learning or pattern docs that may now be stale, contradicted, or overly broad
63
+ - Returns: Links, relationships, and any refresh candidates
55
64
 
56
65
  #### 4. **Prevention Strategist**
57
66
  - Develops prevention strategies
@@ -83,6 +92,53 @@ The orchestrating agent (main conversation) performs these steps:
83
92
 
84
93
  </sequential_tasks>
85
94
 
95
+ ### Phase 2.5: Selective Refresh Check
96
+
97
+ After writing the new learning, decide whether this new solution is evidence that older docs should be refreshed.
98
+
99
+ `ce:compound-refresh` is **not** a default follow-up. Use it selectively when the new learning suggests an older learning or pattern doc may now be inaccurate.
100
+
101
+ It makes sense to invoke `ce:compound-refresh` when one or more of these are true:
102
+
103
+ 1. A related learning or pattern doc recommends an approach that the new fix now contradicts
104
+ 2. The new fix clearly supersedes an older documented solution
105
+ 3. The current work involved a refactor, migration, rename, or dependency upgrade that likely invalidated references in older docs
106
+ 4. A pattern doc now looks overly broad, outdated, or no longer supported by the refreshed reality
107
+ 5. The Related Docs Finder surfaced high-confidence refresh candidates in the same problem space
108
+
109
+ It does **not** make sense to invoke `ce:compound-refresh` when:
110
+
111
+ 1. No related docs were found
112
+ 2. Related docs still appear consistent with the new learning
113
+ 3. The overlap is superficial and does not change prior guidance
114
+ 4. Refresh would require a broad historical review with weak evidence
115
+
116
+ Use these rules:
117
+
118
+ - If there is **one obvious stale candidate**, invoke `ce:compound-refresh` with a narrow scope hint after the new learning is written
119
+ - If there are **multiple candidates in the same area**, ask the user whether to run a targeted refresh for that module, category, or pattern set
120
+ - If context is already tight or you are in compact-safe mode, do not expand into a broad refresh automatically; instead recommend `ce:compound-refresh` as the next step with a scope hint
121
+
122
+ When invoking or recommending `ce:compound-refresh`, be explicit about the argument to pass. Prefer the narrowest useful scope:
123
+
124
+ - **Specific file** when one learning or pattern doc is the likely stale artifact
125
+ - **Module or component name** when several related docs may need review
126
+ - **Category name** when the drift is concentrated in one solutions area
127
+ - **Pattern filename or pattern topic** when the stale guidance lives in `docs/solutions/patterns/`
128
+
129
+ Examples:
130
+
131
+ - `/systematic:ce-compound-refresh plugin-versioning-requirements`
132
+ - `/systematic:ce-compound-refresh payments`
133
+ - `/systematic:ce-compound-refresh performance-issues`
134
+ - `/systematic:ce-compound-refresh critical-patterns`
135
+
136
+ A single scope hint may still expand to multiple related docs when the change is cross-cutting within one domain, category, or pattern area.
137
+
138
+ Do not invoke `ce:compound-refresh` without an argument unless the user explicitly wants a broad sweep.
139
+
140
+ Always capture the new learning first. Refresh is a targeted maintenance follow-up, not a prerequisite for documentation.
141
+
86
142
  ### Phase 3: Optional Enhancement
87
143
 
88
144
  **WAIT for Phase 2 to complete before proceeding.**
@@ -99,6 +155,46 @@ Based on problem type, optionally invoke specialized agents to review the docume
99
155
 
100
156
  </parallel_tasks>
101
157
 
158
+ ---
159
+
160
+ ### Compact-Safe Mode
161
+
162
+ <critical_requirement>
163
+ **Single-pass alternative for context-constrained sessions.**
164
+
165
+ When context budget is tight, this mode skips parallel subagents entirely. The orchestrator performs all work in a single pass, producing a minimal but complete solution document.
166
+ </critical_requirement>
167
+
168
+ The orchestrator (main conversation) performs ALL of the following in one sequential pass:
169
+
170
+ 1. **Extract from conversation**: Identify the problem, root cause, and solution from conversation history
171
+ 2. **Classify**: Determine category and filename (same categories as full mode)
172
+ 3. **Write minimal doc**: Create `docs/solutions/[category]/[filename].md` with:
173
+ - YAML frontmatter (title, category, date, tags)
174
+ - Problem description (1-2 sentences)
175
+ - Root cause (1-2 sentences)
176
+ - Solution with key code snippets
177
+ - One prevention tip
178
+ 4. **Skip specialized agent reviews** (Phase 3) to conserve context
179
+
180
+ **Compact-safe output:**
181
+ ```
182
+ ✓ Documentation complete (compact-safe mode)
183
+
184
+ File created:
185
+ - docs/solutions/[category]/[filename].md
186
+
187
+ Note: This was created in compact-safe mode. For richer documentation
188
+ (cross-references, detailed prevention strategies, specialized reviews),
189
+ re-run /compound in a fresh session.
190
+ ```
191
+
192
+ **No subagents are launched. No parallel tasks. One file written.**
193
+
194
+ In compact-safe mode, only suggest `ce:compound-refresh` if there is an obvious narrow refresh target. Do not broaden into a large refresh sweep from a compact-safe session.
195
+
196
+ ---
197
+
102
198
  ## What It Captures
103
199
 
104
200
  - **Problem symptom**: Exact error messages, observable behavior
@@ -203,7 +299,7 @@ Build → Test → Find Issue → Research → Improve → Document → Validate
203
299
 
204
300
  <auto_invoke> <trigger_phrases> - "that worked" - "it's fixed" - "working now" - "problem solved" </trigger_phrases>
205
301
 
206
- <manual_override> Use /ce:compound [context] to document immediately without waiting for auto-detection. </manual_override> </auto_invoke>
302
+ <manual_override> Use /systematic:ce-compound [context] to document immediately without waiting for auto-detection. </manual_override> </auto_invoke>
207
303
 
208
304
  ## Routes To
209
305
 
@@ -231,10 +327,11 @@ Based on problem type, these agents can enhance documentation:
231
327
 
232
328
  ### When to Invoke
233
329
  - **Auto-triggered** (optional): Agents can run post-documentation for enhancement
234
- - **Manual trigger**: User can invoke agents after /ce:compound completes for deeper review
235
- - **Customize agents**: Edit `systematic.local.md` or invoke the `setup` skill to configure which review agents are used across all workflows
330
+ - **Manual trigger**: User can invoke agents after /systematic:ce-compound completes for deeper review
331
+ - **Customize agents**: Edit `compound-engineering.local.md` or invoke the `setup` skill to configure which review agents are used across all workflows
236
332
 
237
333
  ## Related Commands
238
334
 
239
335
  - `/research [topic]` - Deep investigation (searches docs/solutions/ for patterns)
240
- - `/ce:plan` - Planning workflow (references documented solutions)
336
+ - `/systematic:ce-plan` - Planning workflow (references documented solutions)
337
+