@fro.bot/systematic 2.0.1 → 2.0.3

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 (57) hide show
  1. package/agents/design/figma-design-sync.md +1 -1
  2. package/agents/document-review/coherence-reviewer.md +40 -0
  3. package/agents/document-review/design-lens-reviewer.md +46 -0
  4. package/agents/document-review/feasibility-reviewer.md +42 -0
  5. package/agents/document-review/product-lens-reviewer.md +50 -0
  6. package/agents/document-review/scope-guardian-reviewer.md +54 -0
  7. package/agents/document-review/security-lens-reviewer.md +38 -0
  8. package/agents/research/best-practices-researcher.md +2 -1
  9. package/agents/research/git-history-analyzer.md +1 -1
  10. package/agents/research/repo-research-analyst.md +164 -9
  11. package/agents/review/api-contract-reviewer.md +49 -0
  12. package/agents/review/correctness-reviewer.md +49 -0
  13. package/agents/review/data-migrations-reviewer.md +53 -0
  14. package/agents/review/maintainability-reviewer.md +49 -0
  15. package/agents/review/pattern-recognition-specialist.md +2 -1
  16. package/agents/review/performance-reviewer.md +51 -0
  17. package/agents/review/reliability-reviewer.md +49 -0
  18. package/agents/review/schema-drift-detector.md +12 -10
  19. package/agents/review/security-reviewer.md +51 -0
  20. package/agents/review/testing-reviewer.md +48 -0
  21. package/agents/workflow/pr-comment-resolver.md +1 -1
  22. package/agents/workflow/spec-flow-analyzer.md +60 -89
  23. package/dist/index.js +3 -3
  24. package/package.json +1 -1
  25. package/skills/agent-browser/SKILL.md +69 -48
  26. package/skills/ce-brainstorm/SKILL.md +2 -1
  27. package/skills/ce-compound/SKILL.md +26 -1
  28. package/skills/ce-compound-refresh/SKILL.md +11 -1
  29. package/skills/ce-ideate/SKILL.md +2 -1
  30. package/skills/ce-plan/SKILL.md +424 -414
  31. package/skills/ce-review/SKILL.md +12 -13
  32. package/skills/ce-review-beta/SKILL.md +506 -0
  33. package/skills/ce-review-beta/references/diff-scope.md +31 -0
  34. package/skills/ce-review-beta/references/findings-schema.json +128 -0
  35. package/skills/ce-review-beta/references/persona-catalog.md +50 -0
  36. package/skills/ce-review-beta/references/review-output-template.md +115 -0
  37. package/skills/ce-review-beta/references/subagent-template.md +56 -0
  38. package/skills/ce-work/SKILL.md +14 -6
  39. package/skills/ce-work-beta/SKILL.md +14 -8
  40. package/skills/claude-permissions-optimizer/SKILL.md +15 -14
  41. package/skills/deepen-plan/SKILL.md +348 -483
  42. package/skills/document-review/SKILL.md +160 -52
  43. package/skills/feature-video/SKILL.md +209 -178
  44. package/skills/file-todos/SKILL.md +72 -94
  45. package/skills/frontend-design/SKILL.md +243 -27
  46. package/skills/git-worktree/SKILL.md +37 -28
  47. package/skills/lfg/SKILL.md +7 -7
  48. package/skills/reproduce-bug/SKILL.md +154 -60
  49. package/skills/resolve-pr-parallel/SKILL.md +19 -12
  50. package/skills/resolve-todo-parallel/SKILL.md +9 -6
  51. package/skills/setup/SKILL.md +33 -56
  52. package/skills/slfg/SKILL.md +5 -5
  53. package/skills/test-browser/SKILL.md +69 -145
  54. package/skills/test-xcode/SKILL.md +61 -183
  55. package/skills/triage/SKILL.md +10 -10
  56. package/skills/ce-plan-beta/SKILL.md +0 -571
  57. package/skills/deepen-plan-beta/SKILL.md +0 -323
@@ -1,88 +1,191 @@
1
1
  ---
2
2
  name: document-review
3
- description: This skill should be used to refine requirements or plan documents before proceeding to the next workflow step. It applies when a requirements document or plan document exists and the user wants to improve it.
3
+ description: Review requirements or plan documents using parallel persona agents that surface role-specific issues. Use when a requirements document or plan document exists and the user wants to improve it.
4
4
  ---
5
5
 
6
6
  # Document Review
7
7
 
8
- Improve requirements or plan documents through structured review.
8
+ Review requirements or plan documents through multi-persona analysis. Dispatches specialized reviewer agents in parallel, auto-fixes quality issues, and presents strategic questions for user decision.
9
9
 
10
- ## Step 1: Get the Document
10
+ ## Phase 1: Get and Analyze Document
11
11
 
12
- **If a document path is provided:** Read it, then proceed to Step 2.
12
+ **If a document path is provided:** Read it, then proceed.
13
13
 
14
- **If no document is specified:** Ask which document to review, or look for the most recent requirements/plan in `docs/brainstorms/` or `docs/plans/`.
14
+ **If no document is specified:** Ask which document to review, or find the most recent in `docs/brainstorms/` or `docs/plans/` using a file-search/glob tool (e.g., Glob in OpenCode).
15
15
 
16
- ## Step 2: Assess
16
+ ### Classify Document Type
17
17
 
18
- Read through the document and ask:
18
+ After reading, classify the document:
19
+ - **requirements** -- from `docs/brainstorms/`, focuses on what to build and why
20
+ - **plan** -- from `docs/plans/`, focuses on how to build it with implementation details
19
21
 
20
- - What is unclear?
21
- - What is unnecessary?
22
- - What decision is being avoided?
23
- - What assumptions are unstated?
24
- - Where could scope accidentally expand?
22
+ ### Select Conditional Personas
25
23
 
26
- These questions surface issues. Don't fix yet—just note what you find.
24
+ Analyze the document content to determine which conditional personas to activate. Check for these signals:
27
25
 
28
- ## Step 3: Evaluate
26
+ **product-lens** -- activate when the document contains:
27
+ - User-facing features, user stories, or customer-focused language
28
+ - Market claims, competitive positioning, or business justification
29
+ - Scope decisions, prioritization language, or priority tiers with feature assignments
30
+ - Requirements with user/customer/business outcome focus
29
31
 
30
- Score the document against these criteria:
32
+ **design-lens** -- activate when the document contains:
33
+ - UI/UX references, frontend components, or visual design language
34
+ - User flows, wireframes, screen/page/view mentions
35
+ - Interaction descriptions (forms, buttons, navigation, modals)
36
+ - References to responsive behavior or accessibility
31
37
 
32
- | Criterion | What to Check |
33
- |-----------|---------------|
34
- | **Clarity** | Problem statement is clear, no vague language ("probably," "consider," "try to") |
35
- | **Completeness** | Required sections present, constraints stated, and outstanding questions clearly marked as blocking or deferred |
36
- | **Specificity** | Concrete enough for next step (requirements → can plan, plan → can implement) |
37
- | **Appropriate Level** | Requirements doc stays at behavior/scope level and does not drift into implementation unless the document is inherently technical |
38
- | **YAGNI** | Avoid speculative complexity whose carrying cost outweighs its value; keep low-cost, meaningful polish when it is easy to maintain |
38
+ **security-lens** -- activate when the document contains:
39
+ - Auth/authorization mentions, login flows, session management
40
+ - API endpoints exposed to external clients
41
+ - Data handling, PII, payments, tokens, credentials, encryption
42
+ - Third-party integrations with trust boundary implications
39
43
 
40
- If invoked within a workflow (after `/ce:brainstorm` or `/ce:plan`), also check:
41
- - **User intent fidelity** — Document reflects what was discussed, assumptions validated
44
+ **scope-guardian** -- activate when the document contains:
45
+ - Multiple priority tiers (P0/P1/P2, must-have/should-have/nice-to-have)
46
+ - Large requirement count (>8 distinct requirements or implementation units)
47
+ - Stretch goals, nice-to-haves, or "future work" sections
48
+ - Scope boundary language that seems misaligned with stated goals
49
+ - Goals that don't clearly connect to requirements
42
50
 
43
- ## Step 4: Identify the Critical Improvement
51
+ ## Phase 2: Announce and Dispatch Personas
44
52
 
45
- Among everything found in Steps 2-3, does one issue stand out? If something would significantly improve the document's quality, this is the "must address" item. Highlight it prominently.
53
+ ### Announce the Review Team
46
54
 
47
- ## Step 5: Make Changes
55
+ Tell the user which personas will review and why. For conditional personas, include the justification:
48
56
 
49
- Present your findings, then:
57
+ ```
58
+ Reviewing with:
59
+ - coherence-reviewer (always-on)
60
+ - feasibility-reviewer (always-on)
61
+ - scope-guardian-reviewer -- plan has 12 requirements across 3 priority levels
62
+ - security-lens-reviewer -- plan adds API endpoints with auth flow
63
+ ```
50
64
 
51
- 1. **Auto-fix** minor issues (vague language, formatting) without asking
52
- 2. **Ask approval** before substantive changes (restructuring, removing sections, changing meaning)
53
- 3. **Update** the document inline—no separate files, no metadata sections
65
+ ### Build Agent List
54
66
 
55
- ### Simplification Guidance
67
+ Always include:
68
+ - `systematic:document-review:coherence-reviewer`
69
+ - `systematic:document-review:feasibility-reviewer`
56
70
 
57
- Simplification is purposeful removal of unnecessary complexity, not shortening for its own sake.
71
+ Add activated conditional personas:
72
+ - `systematic:document-review:product-lens-reviewer`
73
+ - `systematic:document-review:design-lens-reviewer`
74
+ - `systematic:document-review:security-lens-reviewer`
75
+ - `systematic:document-review:scope-guardian-reviewer`
58
76
 
59
- **Simplify when:**
60
- - Content serves hypothetical future needs without enough current value to justify its carrying cost
61
- - Sections repeat information already covered elsewhere
62
- - Detail exceeds what's needed to take the next step
63
- - Abstractions or structure add overhead without clarity
77
+ ### Dispatch
64
78
 
65
- **Don't simplify:**
66
- - Constraints or edge cases that affect implementation
67
- - Rationale that explains why alternatives were rejected
68
- - Open questions that need resolution
69
- - Deferred technical or research questions that are intentionally carried forward to the next stage
79
+ Dispatch all agents in **parallel** using the platform's task/agent tool (e.g., Agent tool in OpenCode, spawn in Codex). Each agent receives the prompt built from the [subagent template](./references/subagent-template.md) with these variables filled:
70
80
 
71
- **Also remove when inappropriate:**
72
- - Library choices, file structures, endpoints, schemas, or other implementation details that do not belong in a non-technical requirements document
81
+ | Variable | Value |
82
+ |----------|-------|
83
+ | `{persona_file}` | Full content of the agent's markdown file |
84
+ | `{schema}` | Content of [findings-schema.json](./references/findings-schema.json) |
85
+ | `{document_type}` | "requirements" or "plan" from Phase 1 classification |
86
+ | `{document_path}` | Path to the document |
87
+ | `{document_content}` | Full text of the document |
73
88
 
74
- ## Step 6: Offer Next Action
89
+ Pass each agent the **full document** -- do not split into sections.
75
90
 
76
- After changes are complete, ask:
91
+ **Error handling:** If an agent fails or times out, proceed with findings from agents that completed. Note the failed agent in the Coverage section. Do not block the entire review on a single agent failure.
77
92
 
78
- 1. **Refine again** - Another review pass
79
- 2. **Review complete** - Document is ready
93
+ **Dispatch limit:** Even at maximum (6 agents), use parallel dispatch. These are document reviewers with bounded scope reading a single document -- parallel is safe and fast.
80
94
 
81
- ### Iteration Guidance
95
+ ## Phase 3: Synthesize Findings
82
96
 
83
- After 2 refinement passes, recommend completion—diminishing returns are likely. But if the user wants to continue, allow it.
97
+ Process findings from all agents through this pipeline. **Order matters** -- each step depends on the previous.
84
98
 
85
- Return control to the caller (workflow or user) after selection.
99
+ ### 3.1 Validate
100
+
101
+ Check each agent's returned JSON against [findings-schema.json](./references/findings-schema.json):
102
+ - Drop findings missing any required field defined in the schema
103
+ - Drop findings with invalid enum values
104
+ - Note the agent name for any malformed output in the Coverage section
105
+
106
+ ### 3.2 Confidence Gate
107
+
108
+ Suppress findings below 0.50 confidence. Store them as residual concerns for potential promotion in step 3.4.
109
+
110
+ ### 3.3 Deduplicate
111
+
112
+ Fingerprint each finding using `normalize(section) + normalize(title)`. Normalization: lowercase, strip punctuation, collapse whitespace.
113
+
114
+ When fingerprints match across personas:
115
+ - If the findings recommend **opposing actions** (e.g., one says cut, the other says keep), do not merge -- preserve both for contradiction resolution in 3.5
116
+ - Otherwise merge: keep the highest severity, keep the highest confidence, union all evidence arrays, note all agreeing reviewers (e.g., "coherence, feasibility")
117
+
118
+ ### 3.4 Promote Residual Concerns
119
+
120
+ Scan the residual concerns (findings suppressed in 3.2) for:
121
+ - **Cross-persona corroboration**: A residual concern from Persona A overlaps with an above-threshold finding from Persona B. Promote at P2 with confidence 0.55-0.65.
122
+ - **Concrete blocking risks**: A residual concern describes a specific, concrete risk that would block implementation. Promote at P2 with confidence 0.55.
123
+
124
+ ### 3.5 Resolve Contradictions
125
+
126
+ When personas disagree on the same section:
127
+ - Create a **combined finding** presenting both perspectives
128
+ - Set `autofix_class: present`
129
+ - Frame as a tradeoff, not a verdict
130
+
131
+ Specific conflict patterns:
132
+ - Coherence says "keep for consistency" + scope-guardian says "cut for simplicity" -> combined finding, let user decide
133
+ - Feasibility says "this is impossible" + product-lens says "this is essential" -> P1 finding framed as a tradeoff
134
+ - Multiple personas flag the same issue -> merge into single finding, note consensus, increase confidence
135
+
136
+ ### 3.6 Route by Autofix Class
137
+
138
+ | Autofix Class | Route |
139
+ |---------------|-------|
140
+ | `auto` | Apply automatically -- local deterministic fix (terminology, formatting, cross-references) |
141
+ | `present` | Present to user for judgment |
142
+
143
+ Demote any `auto` finding that lacks a `suggested_fix` to `present` -- the orchestrator cannot apply a fix without concrete replacement text.
144
+
145
+ ### 3.7 Sort
146
+
147
+ Sort findings for presentation: P0 -> P1 -> P2 -> P3, then by confidence (descending), then by document order (section position).
148
+
149
+ ## Phase 4: Apply and Present
150
+
151
+ ### Apply Auto-fixes
152
+
153
+ Apply all `auto` findings to the document in a **single pass**:
154
+ - Edit the document inline using the platform's edit tool
155
+ - Track what was changed for the "Auto-fixes Applied" section
156
+ - Do not ask for approval -- these are unambiguously correct (terminology fixes, formatting, cross-references)
157
+
158
+ ### Present Remaining Findings
159
+
160
+ Present all other findings to the user using the format from [review-output-template.md](./references/review-output-template.md):
161
+ - Group by severity (P0 -> P3)
162
+ - Include the Coverage table showing which personas ran
163
+ - Show auto-fixes that were applied
164
+ - Include residual concerns and deferred questions if any
165
+
166
+ Brief summary at the top: "Applied N auto-fixes. M findings to consider (X at P0/P1)."
167
+
168
+ ### Protected Artifacts
169
+
170
+ During synthesis, discard any finding that recommends deleting or removing files in:
171
+ - `docs/brainstorms/`
172
+ - `docs/plans/`
173
+ - `docs/solutions/`
174
+
175
+ These are pipeline artifacts and must not be flagged for removal.
176
+
177
+ ## Phase 5: Next Action
178
+
179
+ Use the platform's blocking question tool when available (question in OpenCode, request_user_input in Codex, ask_user in Gemini). Otherwise present numbered options and wait for the user's reply.
180
+
181
+ Offer:
182
+
183
+ 1. **Refine again** -- another review pass
184
+ 2. **Review complete** -- document is ready
185
+
186
+ After 2 refinement passes, recommend completion -- diminishing returns are likely. But if the user wants to continue, allow it.
187
+
188
+ Return "Review complete" as the terminal signal for callers.
86
189
 
87
190
  ## What NOT to Do
88
191
 
@@ -90,4 +193,9 @@ Return control to the caller (workflow or user) after selection.
90
193
  - Do not add new sections or requirements the user didn't discuss
91
194
  - Do not over-engineer or add complexity
92
195
  - Do not create separate review files or add metadata sections
196
+ - Do not modify any of the 4 caller skills (ce-brainstorm, ce-plan, ce-plan-beta, deepen-plan-beta)
197
+
198
+ ## Iteration Guidance
199
+
200
+ On subsequent passes, re-dispatch personas and re-synthesize. The auto-fix mechanism and confidence gating prevent the same findings from recurring once fixed. If findings are repetitive across passes, recommend completion.
93
201