@fro.bot/systematic 1.11.1 → 1.13.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/LICENSE +1 -1
- package/README.md +93 -29
- package/commands/workflows/brainstorm.md +17 -8
- package/commands/workflows/compound.md +95 -60
- package/commands/workflows/plan.md +22 -24
- package/commands/workflows/review.md +45 -32
- package/commands/workflows/work.md +91 -19
- package/dist/cli.js +14 -2
- package/dist/{index-we4f9de3.js → index-bky4p9gw.js} +171 -66
- package/dist/index.js +8 -5
- package/dist/lib/agents.d.ts +3 -1
- package/dist/lib/manifest.d.ts +35 -0
- package/dist/lib/validation.d.ts +2 -0
- package/package.json +1 -1
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# The MIT License (MIT)
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2026 Marcus R. Brown <git@mrbro.dev>
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
6
6
|
this software and associated documentation files (the "Software"), to deal in
|
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
<br>
|
|
17
17
|
|
|
18
|
-
**[Overview](#overview)** · **[Quick Start](#quick-start)** · **[Skills](#skills)** · **[Agents](#agents)** · **[Commands](#commands)** · **[Development](#development)**
|
|
18
|
+
**[Overview](#overview)** · **[Quick Start](#quick-start)** · **[Skills](#skills)** · **[Agents](#agents)** · **[Commands](#commands)** · **[CLI](#cli)** · **[Configuration](#configuration)** · **[Development](#development)**
|
|
19
19
|
|
|
20
20
|
</div>
|
|
21
21
|
|
|
@@ -38,11 +38,12 @@ Most AI coding assistants respond to requests without structure or methodology.
|
|
|
38
38
|
|
|
39
39
|
### Key Features
|
|
40
40
|
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
41
|
+
- **Structured Skills** — Pre-built workflows for brainstorming, planning, and code review
|
|
42
|
+
- **Specialized Agents** — Purpose-built subagents for architecture, security, and performance
|
|
43
|
+
- **Zero Configuration** — Works immediately after installation via config hooks
|
|
44
|
+
- **Extensible** — Add project-specific skills and commands alongside bundled ones
|
|
45
|
+
- **Batteries Included** — 8 skills, 11 agents, and 9 commands ship with the npm package
|
|
46
|
+
- **CLI Tooling** — Inspect, list, and convert assets from the command line
|
|
46
47
|
|
|
47
48
|
## Quick Start
|
|
48
49
|
|
|
@@ -145,7 +146,7 @@ Agents are specialized subagents with pre-configured prompts and expertise. They
|
|
|
145
146
|
|
|
146
147
|
### Using Agents
|
|
147
148
|
|
|
148
|
-
Agents are invoked via OpenCode's `@mention` syntax or `
|
|
149
|
+
Agents are invoked via OpenCode's `@mention` syntax or `task`:
|
|
149
150
|
|
|
150
151
|
```
|
|
151
152
|
@architecture-strategist Review the authentication refactoring in this PR
|
|
@@ -154,7 +155,7 @@ Agents are invoked via OpenCode's `@mention` syntax or `delegate_task`:
|
|
|
154
155
|
Or programmatically in skills/commands:
|
|
155
156
|
|
|
156
157
|
```
|
|
157
|
-
|
|
158
|
+
task(subagent_type="architecture-strategist", prompt="Review...")
|
|
158
159
|
```
|
|
159
160
|
|
|
160
161
|
## Commands
|
|
@@ -169,16 +170,52 @@ Commands are slash-invokable shortcuts that trigger workflows or actions.
|
|
|
169
170
|
| `/workflows:plan` | Create detailed implementation plans |
|
|
170
171
|
| `/workflows:review` | Run code review with specialized agents |
|
|
171
172
|
| `/workflows:work` | Execute planned work systematically |
|
|
172
|
-
| `/workflows:compound` |
|
|
173
|
+
| `/workflows:compound` | Document recently solved problems to build team knowledge |
|
|
173
174
|
|
|
174
175
|
### Utility Commands
|
|
175
176
|
|
|
176
177
|
| Command | Description |
|
|
177
178
|
|---------|-------------|
|
|
178
|
-
| `/systematic:lfg` |
|
|
179
|
-
| `/systematic:create-agent-skill` | Create a new skill with guidance |
|
|
180
|
-
| `/systematic:deepen-plan` |
|
|
181
|
-
| `/systematic:agent-native-audit` | Audit code for agent-native patterns |
|
|
179
|
+
| `/systematic:lfg` | Full autonomous engineering workflow — plan, then execute |
|
|
180
|
+
| `/systematic:create-agent-skill` | Create a new skill with expert guidance |
|
|
181
|
+
| `/systematic:deepen-plan` | Enhance a plan with parallel research for each section |
|
|
182
|
+
| `/systematic:agent-native-audit` | Audit code for agent-native architecture patterns |
|
|
183
|
+
|
|
184
|
+
## CLI
|
|
185
|
+
|
|
186
|
+
Systematic includes a CLI for inspecting and converting assets outside of OpenCode.
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
systematic <command> [options]
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### Commands
|
|
193
|
+
|
|
194
|
+
| Command | Description |
|
|
195
|
+
|---------|-------------|
|
|
196
|
+
| `list [type]` | List available skills, agents, or commands |
|
|
197
|
+
| `convert <type> <file>` | Convert a CEP file and output the result to stdout |
|
|
198
|
+
| `config show` | Show current configuration and file contents |
|
|
199
|
+
| `config path` | Print config file locations |
|
|
200
|
+
|
|
201
|
+
### Examples
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
# List all bundled skills
|
|
205
|
+
systematic list skills
|
|
206
|
+
|
|
207
|
+
# List all bundled agents
|
|
208
|
+
systematic list agents
|
|
209
|
+
|
|
210
|
+
# Convert a Claude Code agent to OpenCode format
|
|
211
|
+
systematic convert agent ./agents/my-agent.md
|
|
212
|
+
|
|
213
|
+
# Convert with a specific agent mode
|
|
214
|
+
systematic convert agent ./agents/my-agent.md --mode=primary
|
|
215
|
+
|
|
216
|
+
# Show configuration
|
|
217
|
+
systematic config show
|
|
218
|
+
```
|
|
182
219
|
|
|
183
220
|
## Configuration
|
|
184
221
|
|
|
@@ -186,16 +223,31 @@ Systematic works out of the box, but you can customize it via configuration file
|
|
|
186
223
|
|
|
187
224
|
### Plugin Configuration
|
|
188
225
|
|
|
189
|
-
|
|
226
|
+
Configuration is loaded from multiple locations and merged (later sources override earlier ones):
|
|
227
|
+
|
|
228
|
+
1. **User config:** `~/.config/opencode/systematic.json`
|
|
229
|
+
2. **Project config:** `.opencode/systematic.json`
|
|
230
|
+
3. **Custom config:** `$OPENCODE_CONFIG_DIR/systematic.json` (if `OPENCODE_CONFIG_DIR` is set)
|
|
190
231
|
|
|
191
232
|
```json
|
|
192
233
|
{
|
|
193
234
|
"disabled_skills": ["git-worktree"],
|
|
194
235
|
"disabled_agents": [],
|
|
195
|
-
"disabled_commands": []
|
|
236
|
+
"disabled_commands": [],
|
|
237
|
+
"bootstrap": {
|
|
238
|
+
"enabled": true
|
|
239
|
+
}
|
|
196
240
|
}
|
|
197
241
|
```
|
|
198
242
|
|
|
243
|
+
| Option | Type | Default | Description |
|
|
244
|
+
|--------|------|---------|-------------|
|
|
245
|
+
| `disabled_skills` | `string[]` | `[]` | Skills to exclude from registration |
|
|
246
|
+
| `disabled_agents` | `string[]` | `[]` | Agents to exclude from registration |
|
|
247
|
+
| `disabled_commands` | `string[]` | `[]` | Commands to exclude from registration |
|
|
248
|
+
| `bootstrap.enabled` | `boolean` | `true` | Inject the `using-systematic` guide into system prompts |
|
|
249
|
+
| `bootstrap.file` | `string` | — | Custom bootstrap file path (overrides default) |
|
|
250
|
+
|
|
199
251
|
### Project-Specific Content
|
|
200
252
|
|
|
201
253
|
Add your own skills, agents, and commands alongside bundled ones:
|
|
@@ -219,7 +271,7 @@ The plugin exposes one tool to OpenCode:
|
|
|
219
271
|
|
|
220
272
|
| Tool | Description |
|
|
221
273
|
|------|-------------|
|
|
222
|
-
| `systematic_skill` | Load Systematic bundled skills by name |
|
|
274
|
+
| `systematic_skill` | Load Systematic bundled skills by name. Lists available skills in its description and returns formatted skill content when invoked. |
|
|
223
275
|
|
|
224
276
|
For non-Systematic skills (project or user-level), use OpenCode's native `skill` tool.
|
|
225
277
|
|
|
@@ -247,9 +299,9 @@ flowchart TB
|
|
|
247
299
|
style G fill:#0f0f23,stroke:#F5A623,color:#B2F5EA
|
|
248
300
|
```
|
|
249
301
|
|
|
250
|
-
1. **`config` hook** —
|
|
251
|
-
2. **`tool` hook** — Registers the `systematic_skill` tool
|
|
252
|
-
3. **`system.transform` hook** — Injects the "Using Systematic" guide into system prompts
|
|
302
|
+
1. **`config` hook** — Discovers and merges bundled skills, agents, and commands into your OpenCode configuration. Existing config takes precedence over bundled content. Skills are registered as commands with the `systematic:` prefix.
|
|
303
|
+
2. **`tool` hook** — Registers the `systematic_skill` tool, which lists available skills in its XML description and loads skill content on demand.
|
|
304
|
+
3. **`system.transform` hook** — Injects the "Using Systematic" bootstrap guide into system prompts, teaching the AI how to discover and invoke skills.
|
|
253
305
|
|
|
254
306
|
This architecture ensures skills, agents, and commands are available immediately without manual setup.
|
|
255
307
|
|
|
@@ -286,20 +338,27 @@ bun test
|
|
|
286
338
|
### Project Structure
|
|
287
339
|
|
|
288
340
|
```
|
|
341
|
+
systematic/
|
|
289
342
|
├── src/
|
|
290
|
-
│ ├── index.ts # Plugin entry point
|
|
343
|
+
│ ├── index.ts # Plugin entry point (SystematicPlugin)
|
|
291
344
|
│ ├── cli.ts # CLI entry point
|
|
292
345
|
│ └── lib/
|
|
293
346
|
│ ├── bootstrap.ts # System prompt injection
|
|
294
|
-
│ ├── config.ts # JSONC config loading
|
|
295
|
-
│ ├── config-handler.ts # OpenCode config hook
|
|
296
|
-
│ ├──
|
|
347
|
+
│ ├── config.ts # JSONC config loading + merging
|
|
348
|
+
│ ├── config-handler.ts # OpenCode config hook implementation
|
|
349
|
+
│ ├── converter.ts # CEP-to-OpenCode content conversion
|
|
350
|
+
│ ├── skill-tool.ts # systematic_skill tool factory
|
|
351
|
+
│ ├── skill-loader.ts # Skill content loading + formatting
|
|
297
352
|
│ ├── skills.ts # Skill discovery
|
|
298
353
|
│ ├── agents.ts # Agent discovery
|
|
299
|
-
│
|
|
300
|
-
├──
|
|
301
|
-
├──
|
|
302
|
-
|
|
354
|
+
│ ├── commands.ts # Command discovery
|
|
355
|
+
│ ├── frontmatter.ts # YAML frontmatter parsing
|
|
356
|
+
│ ├── validation.ts # Agent config validation + type guards
|
|
357
|
+
│ └── walk-dir.ts # Recursive directory walker
|
|
358
|
+
├── skills/ # 8 bundled skills (SKILL.md files)
|
|
359
|
+
├── agents/ # 11 bundled agents (4 categories)
|
|
360
|
+
├── commands/ # 9 bundled commands (with workflows/ subdir)
|
|
361
|
+
├── docs/ # Starlight documentation site
|
|
303
362
|
├── tests/
|
|
304
363
|
│ ├── unit/ # Unit tests
|
|
305
364
|
│ └── integration/ # Integration tests
|
|
@@ -317,6 +376,9 @@ bun test tests/unit/skills.test.ts
|
|
|
317
376
|
|
|
318
377
|
# Run integration tests
|
|
319
378
|
bun test tests/integration
|
|
379
|
+
|
|
380
|
+
# Run all tests
|
|
381
|
+
bun test
|
|
320
382
|
```
|
|
321
383
|
|
|
322
384
|
### Contributing
|
|
@@ -325,13 +387,15 @@ See [`AGENTS.md`](./AGENTS.md) for detailed development guidelines, code style c
|
|
|
325
387
|
|
|
326
388
|
## Converting from Claude Code
|
|
327
389
|
|
|
328
|
-
Migrating skills, agents, or commands from Claude Code
|
|
390
|
+
Migrating skills, agents, or commands from CEP or other Claude Code-format sources to Systematic? See the [Conversion Guide](https://fro.bot/systematic/guides/conversion-guide/) for field mappings and examples. Also available as [local Markdown](./docs/CONVERSION-GUIDE.md).
|
|
329
391
|
|
|
330
392
|
## References
|
|
331
393
|
|
|
394
|
+
- [Systematic Documentation](https://fro.bot/systematic) — Full documentation site
|
|
332
395
|
- [OpenCode Documentation](https://opencode.ai/docs/) — Official OpenCode platform docs
|
|
396
|
+
- [OpenCode Plugin API](https://opencode.ai/docs/plugins) — Plugin development reference
|
|
333
397
|
- [Compound Engineering Plugin](https://github.com/EveryInc/compound-engineering-plugin) — Original Claude Code workflows
|
|
334
|
-
- [
|
|
398
|
+
- [Source Code](https://github.com/marcusrbrown/systematic) — View the implementation
|
|
335
399
|
|
|
336
400
|
## License
|
|
337
401
|
|
|
@@ -33,7 +33,7 @@ Evaluate whether brainstorming is needed based on the feature description.
|
|
|
33
33
|
- Constrained, well-defined scope
|
|
34
34
|
|
|
35
35
|
**If requirements are already clear:**
|
|
36
|
-
Use **
|
|
36
|
+
Use the **question tool** to suggest: "Your requirements seem detailed enough to proceed directly to planning. Should I run `/workflows:plan` instead, or would you like to explore the idea further?"
|
|
37
37
|
|
|
38
38
|
### Phase 1: Understand the Idea
|
|
39
39
|
|
|
@@ -41,13 +41,13 @@ Use **AskUserQuestion tool** to suggest: "Your requirements seem detailed enough
|
|
|
41
41
|
|
|
42
42
|
Run a quick repo scan to understand existing patterns:
|
|
43
43
|
|
|
44
|
-
-
|
|
44
|
+
- task repo-research-analyst("Understand existing patterns related to: <feature_description>")
|
|
45
45
|
|
|
46
|
-
Focus on: similar features, established patterns,
|
|
46
|
+
Focus on: similar features, established patterns, AGENTS.md guidance.
|
|
47
47
|
|
|
48
48
|
#### 1.2 Collaborative Dialogue
|
|
49
49
|
|
|
50
|
-
Use the **
|
|
50
|
+
Use the **question tool** to ask questions **one at a time**.
|
|
51
51
|
|
|
52
52
|
**Guidelines (see `brainstorming` skill for detailed techniques):**
|
|
53
53
|
- Prefer multiple choice when natural options exist
|
|
@@ -68,7 +68,7 @@ For each approach, provide:
|
|
|
68
68
|
|
|
69
69
|
Lead with your recommendation and explain why. Apply YAGNI—prefer simpler solutions.
|
|
70
70
|
|
|
71
|
-
Use **
|
|
71
|
+
Use the **question tool** to ask which approach the user prefers.
|
|
72
72
|
|
|
73
73
|
### Phase 3: Capture the Design
|
|
74
74
|
|
|
@@ -80,15 +80,24 @@ Ensure `docs/brainstorms/` directory exists before writing.
|
|
|
80
80
|
|
|
81
81
|
### Phase 4: Handoff
|
|
82
82
|
|
|
83
|
-
Use **
|
|
83
|
+
Use the **question tool** to present next steps:
|
|
84
84
|
|
|
85
85
|
**Question:** "Brainstorm captured. What would you like to do next?"
|
|
86
86
|
|
|
87
87
|
**Options:**
|
|
88
|
-
1. **
|
|
89
|
-
2. **
|
|
88
|
+
1. **Review and refine** - Improve the document through structured self-review
|
|
89
|
+
2. **Proceed to planning** - Run `/workflows:plan` (will auto-detect this brainstorm)
|
|
90
90
|
3. **Done for now** - Return later
|
|
91
91
|
|
|
92
|
+
**If user selects "Review and refine":**
|
|
93
|
+
|
|
94
|
+
Load the `document-review` skill and apply it to the brainstorm document.
|
|
95
|
+
|
|
96
|
+
When document-review returns "Review complete", present next steps:
|
|
97
|
+
|
|
98
|
+
1. **Move to planning** - Continue to `/workflows:plan` with this document
|
|
99
|
+
2. **Done for now** - Brainstorming complete. To start planning later: `/workflows:plan [document-path]`
|
|
100
|
+
|
|
92
101
|
## Output Summary
|
|
93
102
|
|
|
94
103
|
When complete, display:
|
|
@@ -21,53 +21,83 @@ Captures problem solutions while context is fresh, creating structured documenta
|
|
|
21
21
|
/workflows:compound [brief context] # Provide additional context hint
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
## Execution Strategy:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
24
|
+
## Execution Strategy: Two-Phase Orchestration
|
|
25
|
+
|
|
26
|
+
<critical_requirement>
|
|
27
|
+
**Only ONE file gets written - the final documentation.**
|
|
28
|
+
|
|
29
|
+
Phase 1 subagents return TEXT DATA to the orchestrator. They must NOT use Write, Edit, or create any files. Only the orchestrator (Phase 2) writes the final documentation file.
|
|
30
|
+
</critical_requirement>
|
|
31
|
+
|
|
32
|
+
### Phase 1: Parallel Research
|
|
33
|
+
|
|
34
|
+
<parallel_tasks>
|
|
35
|
+
|
|
36
|
+
Launch these subagents IN PARALLEL. Each returns text data to the orchestrator.
|
|
37
|
+
|
|
38
|
+
#### 1. **Context Analyzer**
|
|
39
|
+
- Extracts conversation history
|
|
40
|
+
- Identifies problem type, component, symptoms
|
|
41
|
+
- Validates against schema
|
|
42
|
+
- Returns: YAML frontmatter skeleton
|
|
43
|
+
|
|
44
|
+
#### 2. **Solution Extractor**
|
|
45
|
+
- Analyzes all investigation steps
|
|
46
|
+
- Identifies root cause
|
|
47
|
+
- Extracts working solution with code examples
|
|
48
|
+
- Returns: Solution content block
|
|
49
|
+
|
|
50
|
+
#### 3. **Related Docs Finder**
|
|
51
|
+
- Searches `docs/solutions/` for related documentation
|
|
52
|
+
- Identifies cross-references and links
|
|
53
|
+
- Finds related GitHub issues
|
|
54
|
+
- Returns: Links and relationships
|
|
55
|
+
|
|
56
|
+
#### 4. **Prevention Strategist**
|
|
57
|
+
- Develops prevention strategies
|
|
58
|
+
- Creates best practices guidance
|
|
59
|
+
- Generates test cases if applicable
|
|
60
|
+
- Returns: Prevention/testing content
|
|
61
|
+
|
|
62
|
+
#### 5. **Category Classifier**
|
|
63
|
+
- Determines optimal `docs/solutions/` category
|
|
64
|
+
- Validates category against schema
|
|
65
|
+
- Suggests filename based on slug
|
|
66
|
+
- Returns: Final path and filename
|
|
67
|
+
|
|
68
|
+
</parallel_tasks>
|
|
69
|
+
|
|
70
|
+
### Phase 2: Assembly & Write
|
|
71
|
+
|
|
72
|
+
<sequential_tasks>
|
|
73
|
+
|
|
74
|
+
**WAIT for all Phase 1 subagents to complete before proceeding.**
|
|
75
|
+
|
|
76
|
+
The orchestrating agent (main conversation) performs these steps:
|
|
77
|
+
|
|
78
|
+
1. Collect all text results from Phase 1 subagents
|
|
79
|
+
2. Assemble complete markdown file from the collected pieces
|
|
80
|
+
3. Validate YAML frontmatter against schema
|
|
81
|
+
4. Create directory if needed: `mkdir -p docs/solutions/[category]/`
|
|
82
|
+
5. Write the SINGLE final file: `docs/solutions/[category]/[filename].md`
|
|
83
|
+
|
|
84
|
+
</sequential_tasks>
|
|
85
|
+
|
|
86
|
+
### Phase 3: Optional Enhancement
|
|
87
|
+
|
|
88
|
+
**WAIT for Phase 2 to complete before proceeding.**
|
|
89
|
+
|
|
90
|
+
<parallel_tasks>
|
|
91
|
+
|
|
92
|
+
Based on problem type, optionally invoke specialized agents to review the documentation:
|
|
93
|
+
|
|
94
|
+
- **performance_issue** → `performance-oracle`
|
|
95
|
+
- **security_issue** → `security-sentinel`
|
|
96
|
+
- **database_issue** → `data-integrity-guardian`
|
|
97
|
+
- **test_failure** → `cora-test-reviewer`
|
|
98
|
+
- Any code-heavy issue → `kieran-rails-reviewer` + `code-simplicity-reviewer`
|
|
99
|
+
|
|
100
|
+
</parallel_tasks>
|
|
71
101
|
|
|
72
102
|
## What It Captures
|
|
73
103
|
|
|
@@ -110,24 +140,29 @@ This command launches multiple specialized subagents IN PARALLEL to maximize eff
|
|
|
110
140
|
- integration-issues/
|
|
111
141
|
- logic-errors/
|
|
112
142
|
|
|
143
|
+
## Common Mistakes to Avoid
|
|
144
|
+
|
|
145
|
+
| Wrong | Correct |
|
|
146
|
+
|----------|-----------:|
|
|
147
|
+
| Subagents write files like `context-analysis.md`, `solution-draft.md` | Subagents return text data; orchestrator writes one final file |
|
|
148
|
+
| Research and assembly run in parallel | Research completes, then assembly runs |
|
|
149
|
+
| Multiple files created during workflow | Single file: `docs/solutions/[category]/[filename].md` |
|
|
150
|
+
|
|
113
151
|
## Success Output
|
|
114
152
|
|
|
115
153
|
```
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
✓ Prevention Strategist: Generated test cases
|
|
123
|
-
✓ Category Classifier: docs/solutions/performance-issues/
|
|
124
|
-
✓ Documentation Writer: Created complete markdown
|
|
154
|
+
Subagent Results:
|
|
155
|
+
Context Analyzer: Identified performance_issue in brief_system
|
|
156
|
+
Solution Extractor: 3 code fixes
|
|
157
|
+
Related Docs Finder: 2 related issues
|
|
158
|
+
Prevention Strategist: Prevention strategies, test suggestions
|
|
159
|
+
Category Classifier: `performance-issues`
|
|
125
160
|
|
|
126
161
|
Specialized Agent Reviews (Auto-Triggered):
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
162
|
+
performance-oracle: Validated query optimization approach
|
|
163
|
+
kieran-rails-reviewer: Code examples meet Rails standards
|
|
164
|
+
code-simplicity-reviewer: Solution is appropriately minimal
|
|
165
|
+
every-style-editor: Documentation style verified
|
|
131
166
|
|
|
132
167
|
File created:
|
|
133
168
|
- docs/solutions/performance-issues/n-plus-one-brief-generation.md
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: workflows:plan
|
|
3
3
|
description: Transform feature descriptions into well-structured project plans following conventions
|
|
4
|
-
argument-hint:
|
|
4
|
+
argument-hint: '[feature description, bug report, or improvement idea]'
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Create a plan for a new feature or bug fix
|
|
@@ -43,11 +43,11 @@ ls -la docs/brainstorms/*.md 2>/dev/null | head -10
|
|
|
43
43
|
5. Use brainstorm decisions as input to the research phase
|
|
44
44
|
|
|
45
45
|
**If multiple brainstorms could match:**
|
|
46
|
-
Use **
|
|
46
|
+
Use **question tool** to ask which brainstorm to use, or whether to proceed without one.
|
|
47
47
|
|
|
48
48
|
**If no brainstorm found (or not relevant), run idea refinement:**
|
|
49
49
|
|
|
50
|
-
Refine the idea through collaborative dialogue using the **
|
|
50
|
+
Refine the idea through collaborative dialogue using the **question tool**:
|
|
51
51
|
|
|
52
52
|
- Ask questions one at a time to understand the idea fully
|
|
53
53
|
- Prefer multiple choice questions when natural options exist
|
|
@@ -74,11 +74,11 @@ First, I need to understand the project's conventions, existing patterns, and an
|
|
|
74
74
|
|
|
75
75
|
Run these agents **in parallel** to gather local context:
|
|
76
76
|
|
|
77
|
-
-
|
|
78
|
-
-
|
|
77
|
+
- task repo-research-analyst(feature_description)
|
|
78
|
+
- task learnings-researcher(feature_description)
|
|
79
79
|
|
|
80
80
|
**What to look for:**
|
|
81
|
-
- **Repo research:** existing patterns,
|
|
81
|
+
- **Repo research:** existing patterns, AGENTS.md guidance, technology familiarity, pattern consistency
|
|
82
82
|
- **Learnings:** documented solutions in `docs/solutions/` that might apply (gotchas, patterns, lessons learned)
|
|
83
83
|
|
|
84
84
|
These findings inform the next step.
|
|
@@ -89,7 +89,7 @@ Based on signals from Step 0 and findings from Step 1, decide on external resear
|
|
|
89
89
|
|
|
90
90
|
**High-risk topics → always research.** Security, payments, external APIs, data privacy. The cost of missing something is too high. This takes precedence over speed signals.
|
|
91
91
|
|
|
92
|
-
**Strong local context → skip external research.** Codebase has good patterns,
|
|
92
|
+
**Strong local context → skip external research.** Codebase has good patterns, AGENTS.md has guidance, user knows what they want. External research adds little value.
|
|
93
93
|
|
|
94
94
|
**Uncertainty or unfamiliar territory → research.** User is exploring, codebase has no examples, new technology. External perspective is valuable.
|
|
95
95
|
|
|
@@ -105,8 +105,8 @@ Examples:
|
|
|
105
105
|
|
|
106
106
|
Run these agents in parallel:
|
|
107
107
|
|
|
108
|
-
-
|
|
109
|
-
-
|
|
108
|
+
- task best-practices-researcher(feature_description)
|
|
109
|
+
- task framework-docs-researcher(feature_description)
|
|
110
110
|
|
|
111
111
|
### 1.6. Consolidate Research
|
|
112
112
|
|
|
@@ -116,7 +116,7 @@ After all research steps complete, consolidate findings:
|
|
|
116
116
|
- **Include relevant institutional learnings** from `docs/solutions/` (key insights, gotchas to avoid)
|
|
117
117
|
- Note external documentation URLs and best practices (if external research was done)
|
|
118
118
|
- List related issues or PRs discovered
|
|
119
|
-
- Capture
|
|
119
|
+
- Capture AGENTS.md conventions
|
|
120
120
|
|
|
121
121
|
**Optional validation:** Briefly summarize findings and ask if anything looks off or missing before proceeding to planning.
|
|
122
122
|
|
|
@@ -150,7 +150,7 @@ Think like a product manager - what would make this issue clear and actionable?
|
|
|
150
150
|
|
|
151
151
|
After planning the issue structure, run SpecFlow Analyzer to validate and refine the feature specification:
|
|
152
152
|
|
|
153
|
-
-
|
|
153
|
+
- task spec-flow-analyzer(feature_description, research_findings)
|
|
154
154
|
|
|
155
155
|
**SpecFlow Analyzer Output:**
|
|
156
156
|
|
|
@@ -491,38 +491,36 @@ Examples:
|
|
|
491
491
|
|
|
492
492
|
## Post-Generation Options
|
|
493
493
|
|
|
494
|
-
After writing the plan file, use the **
|
|
494
|
+
After writing the plan file, use the **question tool** to present these options:
|
|
495
495
|
|
|
496
496
|
**Question:** "Plan ready at `docs/plans/YYYY-MM-DD-<type>-<name>-plan.md`. What would you like to do next?"
|
|
497
497
|
|
|
498
498
|
**Options:**
|
|
499
499
|
1. **Open plan in editor** - Open the plan file for review
|
|
500
500
|
2. **Run `/deepen-plan`** - Enhance each section with parallel research agents (best practices, performance, UI)
|
|
501
|
-
3. **Run `/
|
|
502
|
-
4. **
|
|
503
|
-
5. **Start `/workflows:work
|
|
501
|
+
3. **Run `/technical_review`** - Technical feedback from code-focused reviewers (DHH, Kieran, Simplicity)
|
|
502
|
+
4. **Review and refine** - Improve the document through structured self-review
|
|
503
|
+
5. **Start `/workflows:work`** - Begin implementing this plan locally
|
|
504
504
|
6. **Create Issue** - Create issue in project tracker (GitHub/Linear)
|
|
505
|
-
7. **Simplify** - Reduce detail level
|
|
506
505
|
|
|
507
506
|
Based on selection:
|
|
508
507
|
- **Open plan in editor** → Run `open docs/plans/<plan_filename>.md` to open the file in the user's default editor
|
|
509
508
|
- **`/deepen-plan`** → Call the /deepen-plan command with the plan file path to enhance with research
|
|
510
|
-
- **`/
|
|
509
|
+
- **`/technical_review`** → Call the /technical_review command with the plan file path
|
|
510
|
+
- **Review and refine** → Load `document-review` skill.
|
|
511
511
|
- **`/workflows:work`** → Call the /workflows:work command with the plan file path
|
|
512
|
-
- **`/workflows:work` on remote** → Run `/workflows:work docs/plans/<plan_filename>.md &` to start work in background for Claude Code web
|
|
513
512
|
- **Create Issue** → See "Issue Creation" section below
|
|
514
|
-
- **Simplify** → Ask "What should I simplify?" then regenerate simpler version
|
|
515
513
|
- **Other** (automatically provided) → Accept free text for rework or specific changes
|
|
516
514
|
|
|
517
515
|
**Note:** If running `/workflows:plan` with ultrathink enabled, automatically run `/deepen-plan` after plan creation for maximum depth and grounding.
|
|
518
516
|
|
|
519
|
-
Loop back to options after Simplify or Other changes until user selects `/workflows:work` or `/
|
|
517
|
+
Loop back to options after Simplify or Other changes until user selects `/workflows:work` or `/technical_review`.
|
|
520
518
|
|
|
521
519
|
## Issue Creation
|
|
522
520
|
|
|
523
|
-
When user selects "Create Issue", detect their project tracker from
|
|
521
|
+
When user selects "Create Issue", detect their project tracker from AGENTS.md:
|
|
524
522
|
|
|
525
|
-
1. **Check for tracker preference** in user's
|
|
523
|
+
1. **Check for tracker preference** in user's AGENTS.md (global or project):
|
|
526
524
|
- Look for `project_tracker: github` or `project_tracker: linear`
|
|
527
525
|
- Or look for mentions of "GitHub Issues" or "Linear" in their workflow section
|
|
528
526
|
|
|
@@ -542,10 +540,10 @@ When user selects "Create Issue", detect their project tracker from CLAUDE.md:
|
|
|
542
540
|
|
|
543
541
|
4. **If no tracker configured:**
|
|
544
542
|
Ask user: "Which project tracker do you use? (GitHub/Linear/Other)"
|
|
545
|
-
- Suggest adding `project_tracker: github` or `project_tracker: linear` to their
|
|
543
|
+
- Suggest adding `project_tracker: github` or `project_tracker: linear` to their AGENTS.md
|
|
546
544
|
|
|
547
545
|
5. **After creation:**
|
|
548
546
|
- Display the issue URL
|
|
549
|
-
- Ask if they want to proceed to `/workflows:work` or `/
|
|
547
|
+
- Ask if they want to proceed to `/workflows:work` or `/technical_review`
|
|
550
548
|
|
|
551
549
|
NEVER CODE! Just research and write the plan.
|