superkit-mcp-server 1.2.1 → 1.2.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.
- package/ARCHITECTURE.md +102 -102
- package/README.md +71 -71
- package/SUPERKIT.md +168 -168
- package/agents/code-archaeologist.md +106 -106
- package/agents/coder.md +90 -90
- package/agents/data-engineer.md +28 -28
- package/agents/devops-engineer.md +242 -242
- package/agents/git-manager.md +203 -203
- package/agents/orchestrator.md +420 -420
- package/agents/penetration-tester.md +188 -188
- package/agents/performance-optimizer.md +187 -187
- package/agents/planner.md +270 -270
- package/agents/qa-automation-engineer.md +103 -103
- package/agents/quant-developer.md +32 -32
- package/agents/reviewer.md +100 -100
- package/agents/scout.md +222 -222
- package/agents/security-auditor.md +3 -2
- package/agents/tester.md +274 -274
- package/agents/ui-designer.md +208 -208
- package/build/index.js +21 -2
- package/build/tools/__tests__/loggerTools.test.js +5 -5
- package/build/tools/archTools.js +2 -19
- package/build/tools/autoPreview.js +2 -2
- package/build/tools/compoundTools.js +4 -4
- package/build/tools/docsTools.js +5 -10
- package/build/tools/loggerTools.js +1 -1
- package/build/tools/todoTools.js +39 -39
- package/build/tools/validators/__tests__/apiSchema.test.js +23 -23
- package/build/tools/validators/__tests__/convertRules.test.js +5 -5
- package/build/tools/validators/__tests__/frontendDesign.test.js +12 -12
- package/build/tools/validators/__tests__/geoChecker.test.js +19 -19
- package/build/tools/validators/__tests__/mobileAudit.test.js +12 -12
- package/build/tools/validators/__tests__/reactPerformanceChecker.test.js +17 -17
- package/build/tools/validators/__tests__/securityScan.test.js +6 -6
- package/build/tools/validators/__tests__/seoChecker.test.js +16 -16
- package/build/tools/validators/__tests__/typeCoverage.test.js +14 -14
- package/build/tools/validators/convertRules.js +2 -2
- package/commands/README.md +122 -122
- package/commands/ask.toml +72 -72
- package/commands/brainstorm.toml +119 -119
- package/commands/chat.toml +77 -77
- package/commands/code-preview.toml +37 -37
- package/commands/code.toml +28 -28
- package/commands/content.toml +200 -200
- package/commands/cook.toml +77 -77
- package/commands/copywrite.toml +131 -131
- package/commands/db.toml +192 -192
- package/commands/debug.toml +166 -166
- package/commands/design.toml +158 -158
- package/commands/dev-rules.toml +14 -14
- package/commands/do.toml +117 -117
- package/commands/doc-rules.toml +14 -14
- package/commands/docs.toml +148 -148
- package/commands/fix.toml +440 -440
- package/commands/fullstack.toml +175 -175
- package/commands/git.toml +235 -235
- package/commands/help.toml +84 -84
- package/commands/integrate.toml +127 -127
- package/commands/journal.toml +136 -136
- package/commands/kit-setup.toml +40 -40
- package/commands/mcp.toml +183 -183
- package/commands/orchestration.toml +15 -15
- package/commands/plan.toml +171 -171
- package/commands/pm.toml +148 -148
- package/commands/pr.toml +50 -50
- package/commands/project.toml +32 -32
- package/commands/research.toml +117 -117
- package/commands/review-pr.toml +63 -63
- package/commands/review.toml +190 -190
- package/commands/scout-ext.toml +97 -97
- package/commands/scout.toml +79 -79
- package/commands/screenshot.toml +65 -65
- package/commands/session.toml +102 -102
- package/commands/skill.toml +384 -384
- package/commands/status.toml +22 -22
- package/commands/team.toml +56 -56
- package/commands/test.toml +164 -164
- package/commands/ticket.toml +70 -70
- package/commands/use.toml +106 -106
- package/commands/video.toml +83 -83
- package/commands/watzup.toml +71 -71
- package/commands/workflow.toml +14 -14
- package/package.json +35 -35
- package/skills/meta/README.md +30 -30
- package/skills/meta/api-design/SKILL.md +134 -134
- package/skills/meta/code-review/SKILL.md +44 -44
- package/skills/meta/code-review/checklists/pre-merge.md +25 -25
- package/skills/meta/code-review/workflows/architecture-pass.md +26 -26
- package/skills/meta/code-review/workflows/performance-pass.md +27 -27
- package/skills/meta/code-review/workflows/security-pass.md +29 -29
- package/skills/meta/compound-docs/SKILL.md +133 -133
- package/skills/meta/debug/SKILL.md +40 -40
- package/skills/meta/debug/templates/bug-report.template.md +31 -31
- package/skills/meta/debug/workflows/reproduce-issue.md +20 -20
- package/skills/meta/docker/SKILL.md +126 -126
- package/skills/meta/examples/supabase/SKILL.md +46 -46
- package/skills/meta/examples/supabase/references/best-practices.md +319 -319
- package/skills/meta/examples/supabase/references/common-patterns.md +373 -373
- package/skills/meta/examples/supabase/templates/migration-template.sql +49 -49
- package/skills/meta/examples/supabase/templates/rls-policy-template.sql +77 -77
- package/skills/meta/examples/supabase/workflows/debugging.md +260 -260
- package/skills/meta/examples/supabase/workflows/migration-workflow.md +211 -211
- package/skills/meta/examples/supabase/workflows/rls-policies.md +244 -244
- package/skills/meta/examples/supabase/workflows/schema-design.md +321 -321
- package/skills/meta/file-todos/SKILL.md +88 -88
- package/skills/meta/mobile/SKILL.md +140 -140
- package/skills/meta/nextjs/SKILL.md +101 -101
- package/skills/meta/performance/SKILL.md +130 -130
- package/skills/meta/react-patterns/SKILL.md +83 -83
- package/skills/meta/security/SKILL.md +114 -114
- package/skills/meta/session-resume/SKILL.md +96 -96
- package/skills/meta/tailwind/SKILL.md +139 -139
- package/skills/meta/testing/SKILL.md +43 -43
- package/skills/meta/testing/references/vitest-patterns.md +45 -45
- package/skills/meta/testing/templates/component-test.template.tsx +37 -37
- package/skills/tech/alpha-vantage/SKILL.md +142 -142
- package/skills/tech/alpha-vantage/references/commodities.md +153 -153
- package/skills/tech/alpha-vantage/references/economic-indicators.md +158 -158
- package/skills/tech/alpha-vantage/references/forex-crypto.md +154 -154
- package/skills/tech/alpha-vantage/references/fundamentals.md +223 -223
- package/skills/tech/alpha-vantage/references/intelligence.md +138 -138
- package/skills/tech/alpha-vantage/references/options.md +93 -93
- package/skills/tech/alpha-vantage/references/technical-indicators.md +374 -374
- package/skills/tech/alpha-vantage/references/time-series.md +157 -157
- package/skills/tech/doc.md +6 -6
- package/skills/tech/financial-modeling/SKILL.md +18 -18
- package/skills/tech/financial-modeling/skills/3-statements/SKILL.md +368 -368
- package/skills/tech/financial-modeling/skills/3-statements/references/formatting.md +118 -118
- package/skills/tech/financial-modeling/skills/3-statements/references/formulas.md +292 -292
- package/skills/tech/financial-modeling/skills/3-statements/references/sec-filings.md +125 -125
- package/skills/tech/financial-modeling/skills/dcf-model/SKILL.md +1210 -1210
- package/skills/tech/financial-modeling/skills/dcf-model/TROUBLESHOOTING.md +40 -40
- package/skills/tech/financial-modeling/skills/dcf-model/requirements.txt +8 -8
- package/skills/tech/financial-modeling/skills/dcf-model/scripts/validate_dcf.py +292 -292
- package/skills/tech/financial-modeling/skills/lbo-model/SKILL.md +236 -236
- package/skills/tech/financial-modeling/skills/merger-model/SKILL.md +108 -108
- package/skills/workflows/README.md +203 -203
- package/skills/workflows/adr.md +174 -174
- package/skills/workflows/changelog.md +74 -74
- package/skills/workflows/compound.md +323 -323
- package/skills/workflows/compound_health.md +74 -74
- package/skills/workflows/create-agent-skill.md +138 -139
- package/skills/workflows/cycle.md +144 -144
- package/skills/workflows/deploy-docs.md +84 -84
- package/skills/workflows/development-rules.md +42 -42
- package/skills/workflows/doc.md +95 -95
- package/skills/workflows/documentation-management.md +34 -34
- package/skills/workflows/explore.md +146 -146
- package/skills/workflows/generate_command.md +106 -106
- package/skills/workflows/heal-skill.md +97 -97
- package/skills/workflows/housekeeping.md +229 -229
- package/skills/workflows/kit-setup.md +102 -102
- package/skills/workflows/map-codebase.md +78 -78
- package/skills/workflows/orchestration-protocol.md +43 -43
- package/skills/workflows/plan-compound.md +439 -439
- package/skills/workflows/plan_review.md +269 -269
- package/skills/workflows/primary-workflow.md +37 -37
- package/skills/workflows/promote_pattern.md +86 -86
- package/skills/workflows/release-docs.md +82 -82
- package/skills/workflows/report-bug.md +135 -135
- package/skills/workflows/reproduce-bug.md +118 -118
- package/skills/workflows/resolve_pr.md +133 -133
- package/skills/workflows/resolve_todo.md +128 -128
- package/skills/workflows/review-compound.md +376 -376
- package/skills/workflows/skill-review.md +127 -127
- package/skills/workflows/specs.md +257 -257
- package/skills/workflows/triage-sprint.md +102 -102
- package/skills/workflows/triage.md +152 -152
- package/skills/workflows/work.md +399 -399
- package/skills/workflows/xcode-test.md +93 -93
|
@@ -1,323 +1,323 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Document reusable knowledge (solutions, features, decisions) to compound project capability.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /compound - Compound Your Knowledge
|
|
6
|
-
|
|
7
|
-
Capture reusable knowledge while context is fresh—solutions to problems, feature implementations, architectural decisions—creating structured documentation for searchability and future reference.
|
|
8
|
-
|
|
9
|
-
> **Why "compound"?** Each documented piece of knowledge compounds your capability. The first time you solve a problem OR build a feature takes research. Document it, and the next occurrence takes minutes.
|
|
10
|
-
|
|
11
|
-
## When To Use
|
|
12
|
-
|
|
13
|
-
**Auto-trigger on phrases:**
|
|
14
|
-
- "that worked"
|
|
15
|
-
- "it's fixed"
|
|
16
|
-
- "working now"
|
|
17
|
-
- "problem solved"
|
|
18
|
-
|
|
19
|
-
**Also trigger when completing features:**
|
|
20
|
-
- "Feature complete"
|
|
21
|
-
- "Shipped the {feature}"
|
|
22
|
-
- "Implementation done"
|
|
23
|
-
|
|
24
|
-
**Manual invocation:**
|
|
25
|
-
- `/compound` after solving a non-trivial problem
|
|
26
|
-
- `/compound` after completing a feature
|
|
27
|
-
|
|
28
|
-
**Skip documentation for:**
|
|
29
|
-
- Simple typos
|
|
30
|
-
- Obvious syntax errors
|
|
31
|
-
- Trivial fixes (<5 minutes to solve)
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Workflow
|
|
36
|
-
|
|
37
|
-
### Step 0: Instrumentation
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
Call MCP `call_tool_logger_manager` { action: "logWorkflow", name: "/compound", outcome: "success" }
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### Step 0.5: Search for Similar Solutions (Recommended)
|
|
44
|
-
|
|
45
|
-
> [!TIP]
|
|
46
|
-
> Check if a similar solution already exists to avoid duplication. Search for keywords related to the problem or feature you are documenting.
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
Call MCP `call_tool_compound_manager` { action: "search", terms: [ "{primary symptom or feature keywords}"] }
|
|
50
|
-
```
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Step 1: Gather Context from Conversation
|
|
54
|
-
|
|
55
|
-
Extract the following from the current conversation:
|
|
56
|
-
|
|
57
|
-
**Required:**
|
|
58
|
-
- [ ] **Problem/Feature:** What was solved or built?
|
|
59
|
-
- [ ] **Details:** Root cause (for problems) or Implementation details (for features)
|
|
60
|
-
- [ ] **Solution:** What fixed it? (if problem)
|
|
61
|
-
|
|
62
|
-
**Optional but valuable:**
|
|
63
|
-
- [ ] **Investigation attempts:** What didn't work and why?
|
|
64
|
-
- [ ] **Prevention strategies:** How to avoid in future?
|
|
65
|
-
- [ ] **Related issues:** Similar problems encountered before?
|
|
66
|
-
|
|
67
|
-
### Step 2: Determine Documentation Type
|
|
68
|
-
|
|
69
|
-
| If you are documenting... | Output |
|
|
70
|
-
|---------------------------|--------|
|
|
71
|
-
| A solved problem | Create in `docs/solutions/{category}/` |
|
|
72
|
-
| A new feature | Create in `docs/features/` OR update README |
|
|
73
|
-
| An architectural decision | Create in `docs/decisions/` (ADR) |
|
|
74
|
-
|
|
75
|
-
### Step 3: Determine Details (if Problem)
|
|
76
|
-
|
|
77
|
-
If documenting a **Solved Problem**, map to one of these categories:
|
|
78
|
-
|
|
79
|
-
| If the problem involves... | Category |
|
|
80
|
-
|---------------------------|----------|
|
|
81
|
-
| Slow performance, N+1 queries, memory | `performance-issues` |
|
|
82
|
-
| Vulnerabilities, auth, data exposure | `security-issues` |
|
|
83
|
-
| Schema, migrations, data integrity | `database-issues` |
|
|
84
|
-
| Compilation, bundling, dependencies | `build-errors` |
|
|
85
|
-
| Failing tests, flaky tests | `test-failures` |
|
|
86
|
-
| Exceptions, crashes, runtime errors | `runtime-errors` |
|
|
87
|
-
| Visual glitches, responsive, accessibility | `ui-bugs` |
|
|
88
|
-
| API failures, third-party services | `integration-issues` |
|
|
89
|
-
| Business logic, calculations | `logic-errors` |
|
|
90
|
-
|
|
91
|
-
### Step 4: Generate Filename
|
|
92
|
-
|
|
93
|
-
Format: `{sanitized-symptom}-{YYYYMMDD}.md`
|
|
94
|
-
|
|
95
|
-
**Sanitization rules:**
|
|
96
|
-
- Lowercase
|
|
97
|
-
- Replace spaces with hyphens
|
|
98
|
-
- Remove special characters except hyphens
|
|
99
|
-
- Truncate to <60 characters
|
|
100
|
-
|
|
101
|
-
**Examples:**
|
|
102
|
-
- `n-plus-one-query-user-list-20251219.md`
|
|
103
|
-
- `auth-cookie-mismatch-20251219.md`
|
|
104
|
-
- `missing-env-variable-supabase-20251219.md`
|
|
105
|
-
|
|
106
|
-
### Step 5: Create Solution Document (if Problem)
|
|
107
|
-
|
|
108
|
-
Load the template from `docs/solutions/templates/solution-template.md` and fill in:
|
|
109
|
-
|
|
110
|
-
**YAML Frontmatter:**
|
|
111
|
-
```yaml
|
|
112
|
-
---
|
|
113
|
-
date: "{TODAY'S DATE: YYYY-MM-DD}"
|
|
114
|
-
problem_type: "{FROM SCHEMA: performance_issue, security_issue, etc.}"
|
|
115
|
-
component: "{FROM SCHEMA: api_endpoint, database_model, etc.}"
|
|
116
|
-
severity: "{critical | high | medium | low}"
|
|
117
|
-
symptoms:
|
|
118
|
-
- "{EXACT ERROR MESSAGE OR BEHAVIOR}"
|
|
119
|
-
root_cause: "{FROM SCHEMA: missing_include, null_check_missing, etc.}"
|
|
120
|
-
tags:
|
|
121
|
-
- "{relevant-tag-1}"
|
|
122
|
-
- "{relevant-tag-2}"
|
|
123
|
-
related_issues: []
|
|
124
|
-
---
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
**Document Sections:**
|
|
128
|
-
1. Problem Statement with impact
|
|
129
|
-
2. Symptoms observed
|
|
130
|
-
3. Investigation steps with results table
|
|
131
|
-
4. Root cause analysis
|
|
132
|
-
5. Working solution with code examples
|
|
133
|
-
6. Prevention strategies
|
|
134
|
-
7. Cross-references
|
|
135
|
-
|
|
136
|
-
**For Feature Documentation:**
|
|
137
|
-
- Use `docs/features/templates/feature-template.md`
|
|
138
|
-
- Create in `docs/features/{feature-name}.md`
|
|
139
|
-
|
|
140
|
-
### Step 6: Validate YAML
|
|
141
|
-
|
|
142
|
-
Before creating the file, validate:
|
|
143
|
-
|
|
144
|
-
- [ ] `problem_type` is a valid enum from schema.yaml
|
|
145
|
-
- [ ] `severity` is one of: critical, high, medium, low
|
|
146
|
-
- [ ] `component` is a valid enum from schema.yaml
|
|
147
|
-
- [ ] `root_cause` is a valid enum from schema.yaml
|
|
148
|
-
- [ ] `symptoms` is a non-empty array
|
|
149
|
-
- [ ] `tags` is a non-empty array
|
|
150
|
-
|
|
151
|
-
If validation fails, fix the values before proceeding.
|
|
152
|
-
|
|
153
|
-
### Step 7: Write Solution File
|
|
154
|
-
|
|
155
|
-
Create the file at: `docs/solutions/{category}/{filename}.md`
|
|
156
|
-
|
|
157
|
-
### Step 8: Check for Pattern Promotion
|
|
158
|
-
|
|
159
|
-
After creating the solution, **dynamically count** similar solutions:
|
|
160
|
-
|
|
161
|
-
```bash
|
|
162
|
-
# Count similar solutions
|
|
163
|
-
grep -l "{key symptom terms}" docs/solutions/**/*.md | wc -l
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
**If count ≥ 3:**
|
|
167
|
-
1. Create a pattern promotion todo with a **DRAFT**:
|
|
168
|
-
|
|
169
|
-
```bash
|
|
170
|
-
# Create todo for pattern promotion
|
|
171
|
-
Call MCP `call_tool_todo_manager` { action: "create", priority: "p2", title: "Promote Pattern: {Pattern Name}", description: "TODO description" }
|
|
172
|
-
"Pattern identified during solution documentation: {Pattern Name}.\n\nContext:\n(Description of the pattern and why it matters)" \
|
|
173
|
-
"Draft the pattern in docs/solutions/patterns/critical-patterns.md" \
|
|
174
|
-
"Add 'WRONG' vs 'CORRECT' examples" \
|
|
175
|
-
"Link to original solution: ${filename}"
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
2. The todo should include:
|
|
179
|
-
- Pattern name
|
|
180
|
-
- List of 3+ related solutions
|
|
181
|
-
- Proposed ❌ WRONG vs ✅ CORRECT format
|
|
182
|
-
- Source cross-references
|
|
183
|
-
|
|
184
|
-
### Step 9: Capture Follow-up Opportunities (Conditional)
|
|
185
|
-
|
|
186
|
-
> [!TIP]
|
|
187
|
-
> **Safety Net.** If you already ran `/review` and captured deferred work there, **SKIP THIS STEP.**
|
|
188
|
-
|
|
189
|
-
**If running standalone (no prior review), check:**
|
|
190
|
-
- [ ] Did the solution defer any enhancements for later?
|
|
191
|
-
- [ ] Are there related optimizations not yet implemented?
|
|
192
|
-
- [ ] Did we close/reject alternatives that have value to port later?
|
|
193
|
-
|
|
194
|
-
**Also check for NEW opportunities (discovered during documentation):**
|
|
195
|
-
- [ ] Did writing this solution reveal a gap in another area?
|
|
196
|
-
|
|
197
|
-
**If YES, create todo files:**
|
|
198
|
-
|
|
199
|
-
```bash
|
|
200
|
-
# Get next ID
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
# Create todo from template
|
|
204
|
-
cp todos/todo-template.md todos/${next_id}-pending-p2-{description}.md
|
|
205
|
-
# Edit the file with specific details of deferred tasks
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
> [!TIP]
|
|
209
|
-
> Use the standardized naming convention: `{id}-{status}-{priority}-{description}.md`.
|
|
210
|
-
> See [todos/README.md](../../todos/README.md) for details.
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
### Step 10: Mandatory Validation
|
|
214
|
-
|
|
215
|
-
> [!CAUTION]
|
|
216
|
-
> **Do not skip.** Auto-validation protects the knowledge base.
|
|
217
|
-
|
|
218
|
-
Before closing the `/compound` workflow, run:
|
|
219
|
-
|
|
220
|
-
```bash
|
|
221
|
-
Call MCP `call_tool_compound_manager` { action: "validate" }
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
- [ ] Script passed?
|
|
225
|
-
- [ ] Pattern promotion todo created (if count ≥ 3)?
|
|
226
|
-
- [ ] Deferred work converted to todos?
|
|
227
|
-
|
|
228
|
-
**If any failure, FIX IT before closing.**
|
|
229
|
-
|
|
230
|
-
---
|
|
231
|
-
|
|
232
|
-
### Phase 5: Completion & Handoff
|
|
233
|
-
|
|
234
|
-
#### Step 1: Establish Terminal UI State
|
|
235
|
-
|
|
236
|
-
> [!IMPORTANT]
|
|
237
|
-
> **Visual Completion Signal**
|
|
238
|
-
> Call `task_boundary` one last time to signal completion in the user's UI. This prevents the "task" from appearing active after you've finished.
|
|
239
|
-
|
|
240
|
-
```javascript
|
|
241
|
-
await task_boundary({
|
|
242
|
-
TaskName: "[COMPLETED] Compound Knowledge: {filename}",
|
|
243
|
-
TaskStatus: "Solution documented and validated. Offering next steps.",
|
|
244
|
-
Mode: "VERIFICATION",
|
|
245
|
-
TaskSummary: "Documented {type} at docs/solutions/{category}/{filename}.md. Validated YAML and pattern promotion."
|
|
246
|
-
});
|
|
247
|
-
```
|
|
248
|
-
|
|
249
|
-
#### Step 2: Mandatory Handoff
|
|
250
|
-
|
|
251
|
-
> [!IMPORTANT]
|
|
252
|
-
> **Exit Transition**
|
|
253
|
-
> Do not stop here. Offer the user clear paths to the next logical workflow.
|
|
254
|
-
|
|
255
|
-
```bash
|
|
256
|
-
✓ Solution documented
|
|
257
|
-
|
|
258
|
-
File created:
|
|
259
|
-
- docs/solutions/{category}/{filename}.md
|
|
260
|
-
|
|
261
|
-
Next steps:
|
|
262
|
-
1. /housekeeping - Archive and cleanup before push (Recommended)
|
|
263
|
-
2. /review - Get feedback on documentation or associated changes
|
|
264
|
-
3. /work - Return to previous task or start new implementation
|
|
265
|
-
4. Continue working - Perform manual follow-ups
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
---
|
|
269
|
-
|
|
270
|
-
## Quality Guidelines
|
|
271
|
-
|
|
272
|
-
**Good documentation has:**
|
|
273
|
-
- ✅ Exact error messages (copy-paste from output)
|
|
274
|
-
- ✅ Specific file:line references
|
|
275
|
-
- ✅ Observable symptoms (what you saw, not interpretations)
|
|
276
|
-
- ✅ Failed attempts documented (helps avoid wrong paths)
|
|
277
|
-
- ✅ Technical explanation (not just "what" but "why")
|
|
278
|
-
- ✅ Code examples (before/after if applicable)
|
|
279
|
-
- ✅ Prevention guidance (how to catch early)
|
|
280
|
-
|
|
281
|
-
**Avoid:**
|
|
282
|
-
- ❌ Vague descriptions ("something was wrong")
|
|
283
|
-
- ❌ Missing technical details ("fixed the code")
|
|
284
|
-
- ❌ No context (which file? which version?)
|
|
285
|
-
- ❌ Just code dumps (explain why it works)
|
|
286
|
-
|
|
287
|
-
---
|
|
288
|
-
|
|
289
|
-
## Example
|
|
290
|
-
|
|
291
|
-
**User:** "That worked! The N+1 query is fixed."
|
|
292
|
-
|
|
293
|
-
**Agent creates:**
|
|
294
|
-
|
|
295
|
-
```
|
|
296
|
-
docs/solutions/performance-issues/n-plus-one-user-list-20251219.md
|
|
297
|
-
```
|
|
298
|
-
|
|
299
|
-
With frontmatter:
|
|
300
|
-
```yaml
|
|
301
|
-
---
|
|
302
|
-
date: "2025-12-19"
|
|
303
|
-
problem_type: "performance_issue"
|
|
304
|
-
component: "database_model"
|
|
305
|
-
severity: "high"
|
|
306
|
-
symptoms:
|
|
307
|
-
- "User list API taking >5 seconds"
|
|
308
|
-
- "N+1 query detected in logs"
|
|
309
|
-
root_cause: "missing_include"
|
|
310
|
-
tags:
|
|
311
|
-
- n-plus-one
|
|
312
|
-
- eager-loading
|
|
313
|
-
- performance
|
|
314
|
-
---
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
---
|
|
318
|
-
|
|
319
|
-
## References
|
|
320
|
-
|
|
321
|
-
- Schema: `docs/solutions/schema.yaml`
|
|
322
|
-
- Template: `docs/solutions/templates/solution-template.md`
|
|
323
|
-
- Patterns: `docs/solutions/patterns/critical-patterns.md`
|
|
1
|
+
---
|
|
2
|
+
description: Document reusable knowledge (solutions, features, decisions) to compound project capability.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /compound - Compound Your Knowledge
|
|
6
|
+
|
|
7
|
+
Capture reusable knowledge while context is fresh—solutions to problems, feature implementations, architectural decisions—creating structured documentation for searchability and future reference.
|
|
8
|
+
|
|
9
|
+
> **Why "compound"?** Each documented piece of knowledge compounds your capability. The first time you solve a problem OR build a feature takes research. Document it, and the next occurrence takes minutes.
|
|
10
|
+
|
|
11
|
+
## When To Use
|
|
12
|
+
|
|
13
|
+
**Auto-trigger on phrases:**
|
|
14
|
+
- "that worked"
|
|
15
|
+
- "it's fixed"
|
|
16
|
+
- "working now"
|
|
17
|
+
- "problem solved"
|
|
18
|
+
|
|
19
|
+
**Also trigger when completing features:**
|
|
20
|
+
- "Feature complete"
|
|
21
|
+
- "Shipped the {feature}"
|
|
22
|
+
- "Implementation done"
|
|
23
|
+
|
|
24
|
+
**Manual invocation:**
|
|
25
|
+
- `/compound` after solving a non-trivial problem
|
|
26
|
+
- `/compound` after completing a feature
|
|
27
|
+
|
|
28
|
+
**Skip documentation for:**
|
|
29
|
+
- Simple typos
|
|
30
|
+
- Obvious syntax errors
|
|
31
|
+
- Trivial fixes (<5 minutes to solve)
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Workflow
|
|
36
|
+
|
|
37
|
+
### Step 0: Instrumentation
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
Call MCP `call_tool_logger_manager` { action: "logWorkflow", name: "/compound", outcome: "success" }
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Step 0.5: Search for Similar Solutions (Recommended)
|
|
44
|
+
|
|
45
|
+
> [!TIP]
|
|
46
|
+
> Check if a similar solution already exists to avoid duplication. Search for keywords related to the problem or feature you are documenting.
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
Call MCP `call_tool_compound_manager` { action: "search", terms: [ "{primary symptom or feature keywords}"] }
|
|
50
|
+
```
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Step 1: Gather Context from Conversation
|
|
54
|
+
|
|
55
|
+
Extract the following from the current conversation:
|
|
56
|
+
|
|
57
|
+
**Required:**
|
|
58
|
+
- [ ] **Problem/Feature:** What was solved or built?
|
|
59
|
+
- [ ] **Details:** Root cause (for problems) or Implementation details (for features)
|
|
60
|
+
- [ ] **Solution:** What fixed it? (if problem)
|
|
61
|
+
|
|
62
|
+
**Optional but valuable:**
|
|
63
|
+
- [ ] **Investigation attempts:** What didn't work and why?
|
|
64
|
+
- [ ] **Prevention strategies:** How to avoid in future?
|
|
65
|
+
- [ ] **Related issues:** Similar problems encountered before?
|
|
66
|
+
|
|
67
|
+
### Step 2: Determine Documentation Type
|
|
68
|
+
|
|
69
|
+
| If you are documenting... | Output |
|
|
70
|
+
|---------------------------|--------|
|
|
71
|
+
| A solved problem | Create in `docs/solutions/{category}/` |
|
|
72
|
+
| A new feature | Create in `docs/features/` OR update README |
|
|
73
|
+
| An architectural decision | Create in `docs/decisions/` (ADR) |
|
|
74
|
+
|
|
75
|
+
### Step 3: Determine Details (if Problem)
|
|
76
|
+
|
|
77
|
+
If documenting a **Solved Problem**, map to one of these categories:
|
|
78
|
+
|
|
79
|
+
| If the problem involves... | Category |
|
|
80
|
+
|---------------------------|----------|
|
|
81
|
+
| Slow performance, N+1 queries, memory | `performance-issues` |
|
|
82
|
+
| Vulnerabilities, auth, data exposure | `security-issues` |
|
|
83
|
+
| Schema, migrations, data integrity | `database-issues` |
|
|
84
|
+
| Compilation, bundling, dependencies | `build-errors` |
|
|
85
|
+
| Failing tests, flaky tests | `test-failures` |
|
|
86
|
+
| Exceptions, crashes, runtime errors | `runtime-errors` |
|
|
87
|
+
| Visual glitches, responsive, accessibility | `ui-bugs` |
|
|
88
|
+
| API failures, third-party services | `integration-issues` |
|
|
89
|
+
| Business logic, calculations | `logic-errors` |
|
|
90
|
+
|
|
91
|
+
### Step 4: Generate Filename
|
|
92
|
+
|
|
93
|
+
Format: `{sanitized-symptom}-{YYYYMMDD}.md`
|
|
94
|
+
|
|
95
|
+
**Sanitization rules:**
|
|
96
|
+
- Lowercase
|
|
97
|
+
- Replace spaces with hyphens
|
|
98
|
+
- Remove special characters except hyphens
|
|
99
|
+
- Truncate to <60 characters
|
|
100
|
+
|
|
101
|
+
**Examples:**
|
|
102
|
+
- `n-plus-one-query-user-list-20251219.md`
|
|
103
|
+
- `auth-cookie-mismatch-20251219.md`
|
|
104
|
+
- `missing-env-variable-supabase-20251219.md`
|
|
105
|
+
|
|
106
|
+
### Step 5: Create Solution Document (if Problem)
|
|
107
|
+
|
|
108
|
+
Load the template from `docs/solutions/templates/solution-template.md` and fill in:
|
|
109
|
+
|
|
110
|
+
**YAML Frontmatter:**
|
|
111
|
+
```yaml
|
|
112
|
+
---
|
|
113
|
+
date: "{TODAY'S DATE: YYYY-MM-DD}"
|
|
114
|
+
problem_type: "{FROM SCHEMA: performance_issue, security_issue, etc.}"
|
|
115
|
+
component: "{FROM SCHEMA: api_endpoint, database_model, etc.}"
|
|
116
|
+
severity: "{critical | high | medium | low}"
|
|
117
|
+
symptoms:
|
|
118
|
+
- "{EXACT ERROR MESSAGE OR BEHAVIOR}"
|
|
119
|
+
root_cause: "{FROM SCHEMA: missing_include, null_check_missing, etc.}"
|
|
120
|
+
tags:
|
|
121
|
+
- "{relevant-tag-1}"
|
|
122
|
+
- "{relevant-tag-2}"
|
|
123
|
+
related_issues: []
|
|
124
|
+
---
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Document Sections:**
|
|
128
|
+
1. Problem Statement with impact
|
|
129
|
+
2. Symptoms observed
|
|
130
|
+
3. Investigation steps with results table
|
|
131
|
+
4. Root cause analysis
|
|
132
|
+
5. Working solution with code examples
|
|
133
|
+
6. Prevention strategies
|
|
134
|
+
7. Cross-references
|
|
135
|
+
|
|
136
|
+
**For Feature Documentation:**
|
|
137
|
+
- Use `docs/features/templates/feature-template.md`
|
|
138
|
+
- Create in `docs/features/{feature-name}.md`
|
|
139
|
+
|
|
140
|
+
### Step 6: Validate YAML
|
|
141
|
+
|
|
142
|
+
Before creating the file, validate:
|
|
143
|
+
|
|
144
|
+
- [ ] `problem_type` is a valid enum from schema.yaml
|
|
145
|
+
- [ ] `severity` is one of: critical, high, medium, low
|
|
146
|
+
- [ ] `component` is a valid enum from schema.yaml
|
|
147
|
+
- [ ] `root_cause` is a valid enum from schema.yaml
|
|
148
|
+
- [ ] `symptoms` is a non-empty array
|
|
149
|
+
- [ ] `tags` is a non-empty array
|
|
150
|
+
|
|
151
|
+
If validation fails, fix the values before proceeding.
|
|
152
|
+
|
|
153
|
+
### Step 7: Write Solution File
|
|
154
|
+
|
|
155
|
+
Create the file at: `docs/solutions/{category}/{filename}.md`
|
|
156
|
+
|
|
157
|
+
### Step 8: Check for Pattern Promotion
|
|
158
|
+
|
|
159
|
+
After creating the solution, **dynamically count** similar solutions:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# Count similar solutions
|
|
163
|
+
grep -l "{key symptom terms}" docs/solutions/**/*.md | wc -l
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**If count ≥ 3:**
|
|
167
|
+
1. Create a pattern promotion todo with a **DRAFT**:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
# Create todo for pattern promotion
|
|
171
|
+
Call MCP `call_tool_todo_manager` { action: "create", priority: "p2", title: "Promote Pattern: {Pattern Name}", description: "TODO description" }
|
|
172
|
+
"Pattern identified during solution documentation: {Pattern Name}.\n\nContext:\n(Description of the pattern and why it matters)" \
|
|
173
|
+
"Draft the pattern in docs/solutions/patterns/critical-patterns.md" \
|
|
174
|
+
"Add 'WRONG' vs 'CORRECT' examples" \
|
|
175
|
+
"Link to original solution: ${filename}"
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
2. The todo should include:
|
|
179
|
+
- Pattern name
|
|
180
|
+
- List of 3+ related solutions
|
|
181
|
+
- Proposed ❌ WRONG vs ✅ CORRECT format
|
|
182
|
+
- Source cross-references
|
|
183
|
+
|
|
184
|
+
### Step 9: Capture Follow-up Opportunities (Conditional)
|
|
185
|
+
|
|
186
|
+
> [!TIP]
|
|
187
|
+
> **Safety Net.** If you already ran `/review` and captured deferred work there, **SKIP THIS STEP.**
|
|
188
|
+
|
|
189
|
+
**If running standalone (no prior review), check:**
|
|
190
|
+
- [ ] Did the solution defer any enhancements for later?
|
|
191
|
+
- [ ] Are there related optimizations not yet implemented?
|
|
192
|
+
- [ ] Did we close/reject alternatives that have value to port later?
|
|
193
|
+
|
|
194
|
+
**Also check for NEW opportunities (discovered during documentation):**
|
|
195
|
+
- [ ] Did writing this solution reveal a gap in another area?
|
|
196
|
+
|
|
197
|
+
**If YES, create todo files:**
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
# Get next ID
|
|
201
|
+
Call MCP `call_tool_todo_manager` { action: "nextId" }
|
|
202
|
+
|
|
203
|
+
# Create todo from template
|
|
204
|
+
cp todos/todo-template.md todos/${next_id}-pending-p2-{description}.md
|
|
205
|
+
# Edit the file with specific details of deferred tasks
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
> [!TIP]
|
|
209
|
+
> Use the standardized naming convention: `{id}-{status}-{priority}-{description}.md`.
|
|
210
|
+
> See [todos/README.md](../../todos/README.md) for details.
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### Step 10: Mandatory Validation
|
|
214
|
+
|
|
215
|
+
> [!CAUTION]
|
|
216
|
+
> **Do not skip.** Auto-validation protects the knowledge base.
|
|
217
|
+
|
|
218
|
+
Before closing the `/compound` workflow, run:
|
|
219
|
+
|
|
220
|
+
```bash
|
|
221
|
+
Call MCP `call_tool_compound_manager` { action: "validate" }
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
- [ ] Script passed?
|
|
225
|
+
- [ ] Pattern promotion todo created (if count ≥ 3)?
|
|
226
|
+
- [ ] Deferred work converted to todos?
|
|
227
|
+
|
|
228
|
+
**If any failure, FIX IT before closing.**
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
### Phase 5: Completion & Handoff
|
|
233
|
+
|
|
234
|
+
#### Step 1: Establish Terminal UI State
|
|
235
|
+
|
|
236
|
+
> [!IMPORTANT]
|
|
237
|
+
> **Visual Completion Signal**
|
|
238
|
+
> Call `task_boundary` one last time to signal completion in the user's UI. This prevents the "task" from appearing active after you've finished.
|
|
239
|
+
|
|
240
|
+
```javascript
|
|
241
|
+
await task_boundary({
|
|
242
|
+
TaskName: "[COMPLETED] Compound Knowledge: {filename}",
|
|
243
|
+
TaskStatus: "Solution documented and validated. Offering next steps.",
|
|
244
|
+
Mode: "VERIFICATION",
|
|
245
|
+
TaskSummary: "Documented {type} at docs/solutions/{category}/{filename}.md. Validated YAML and pattern promotion."
|
|
246
|
+
});
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
#### Step 2: Mandatory Handoff
|
|
250
|
+
|
|
251
|
+
> [!IMPORTANT]
|
|
252
|
+
> **Exit Transition**
|
|
253
|
+
> Do not stop here. Offer the user clear paths to the next logical workflow.
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
✓ Solution documented
|
|
257
|
+
|
|
258
|
+
File created:
|
|
259
|
+
- docs/solutions/{category}/{filename}.md
|
|
260
|
+
|
|
261
|
+
Next steps:
|
|
262
|
+
1. /housekeeping - Archive and cleanup before push (Recommended)
|
|
263
|
+
2. /review - Get feedback on documentation or associated changes
|
|
264
|
+
3. /work - Return to previous task or start new implementation
|
|
265
|
+
4. Continue working - Perform manual follow-ups
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
## Quality Guidelines
|
|
271
|
+
|
|
272
|
+
**Good documentation has:**
|
|
273
|
+
- ✅ Exact error messages (copy-paste from output)
|
|
274
|
+
- ✅ Specific file:line references
|
|
275
|
+
- ✅ Observable symptoms (what you saw, not interpretations)
|
|
276
|
+
- ✅ Failed attempts documented (helps avoid wrong paths)
|
|
277
|
+
- ✅ Technical explanation (not just "what" but "why")
|
|
278
|
+
- ✅ Code examples (before/after if applicable)
|
|
279
|
+
- ✅ Prevention guidance (how to catch early)
|
|
280
|
+
|
|
281
|
+
**Avoid:**
|
|
282
|
+
- ❌ Vague descriptions ("something was wrong")
|
|
283
|
+
- ❌ Missing technical details ("fixed the code")
|
|
284
|
+
- ❌ No context (which file? which version?)
|
|
285
|
+
- ❌ Just code dumps (explain why it works)
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Example
|
|
290
|
+
|
|
291
|
+
**User:** "That worked! The N+1 query is fixed."
|
|
292
|
+
|
|
293
|
+
**Agent creates:**
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
docs/solutions/performance-issues/n-plus-one-user-list-20251219.md
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
With frontmatter:
|
|
300
|
+
```yaml
|
|
301
|
+
---
|
|
302
|
+
date: "2025-12-19"
|
|
303
|
+
problem_type: "performance_issue"
|
|
304
|
+
component: "database_model"
|
|
305
|
+
severity: "high"
|
|
306
|
+
symptoms:
|
|
307
|
+
- "User list API taking >5 seconds"
|
|
308
|
+
- "N+1 query detected in logs"
|
|
309
|
+
root_cause: "missing_include"
|
|
310
|
+
tags:
|
|
311
|
+
- n-plus-one
|
|
312
|
+
- eager-loading
|
|
313
|
+
- performance
|
|
314
|
+
---
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
---
|
|
318
|
+
|
|
319
|
+
## References
|
|
320
|
+
|
|
321
|
+
- Schema: `docs/solutions/schema.yaml`
|
|
322
|
+
- Template: `docs/solutions/templates/solution-template.md`
|
|
323
|
+
- Patterns: `docs/solutions/patterns/critical-patterns.md`
|