opencode-goopspec 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +650 -0
  3. package/agents/goop-debugger.md +265 -0
  4. package/agents/goop-designer.md +244 -0
  5. package/agents/goop-executor.md +217 -0
  6. package/agents/goop-explorer.md +252 -0
  7. package/agents/goop-librarian.md +197 -0
  8. package/agents/goop-orchestrator.md +224 -0
  9. package/agents/goop-planner.md +231 -0
  10. package/agents/goop-researcher.md +246 -0
  11. package/agents/goop-tester.md +245 -0
  12. package/agents/goop-verifier.md +266 -0
  13. package/agents/goop-writer.md +293 -0
  14. package/agents/memory-distiller.md +226 -0
  15. package/commands/goop-accept.md +183 -0
  16. package/commands/goop-amend.md +175 -0
  17. package/commands/goop-complete.md +206 -0
  18. package/commands/goop-debug.md +318 -0
  19. package/commands/goop-discuss.md +138 -0
  20. package/commands/goop-execute.md +137 -0
  21. package/commands/goop-help.md +82 -0
  22. package/commands/goop-map-codebase.md +501 -0
  23. package/commands/goop-memory.md +66 -0
  24. package/commands/goop-milestone.md +213 -0
  25. package/commands/goop-pause.md +61 -0
  26. package/commands/goop-plan.md +78 -0
  27. package/commands/goop-quick.md +165 -0
  28. package/commands/goop-recall.md +48 -0
  29. package/commands/goop-remember.md +71 -0
  30. package/commands/goop-research.md +98 -0
  31. package/commands/goop-resume.md +57 -0
  32. package/commands/goop-setup.md +208 -0
  33. package/commands/goop-specify.md +145 -0
  34. package/commands/goop-status.md +153 -0
  35. package/dist/index.js +31017 -0
  36. package/dist/memory/index.js +48752 -0
  37. package/package.json +73 -0
  38. package/references/agent-patterns.md +334 -0
  39. package/references/boundary-system.md +141 -0
  40. package/references/deviation-rules.md +80 -0
  41. package/references/dispatch-patterns.md +176 -0
  42. package/references/model-profiles.md +109 -0
  43. package/references/orchestrator-philosophy.md +280 -0
  44. package/references/security-checklist.md +163 -0
  45. package/references/subagent-protocol.md +393 -0
  46. package/references/tdd.md +231 -0
  47. package/references/ui-brand.md +261 -0
  48. package/references/workflow-accept.md +325 -0
  49. package/references/workflow-execute.md +315 -0
  50. package/references/workflow-plan.md +179 -0
  51. package/references/workflow-research.md +234 -0
  52. package/references/workflow-specify.md +278 -0
  53. package/skills/README.md +362 -0
  54. package/skills/accessibility/skill.md +41 -0
  55. package/skills/accessibility-testing/skill.md +47 -0
  56. package/skills/api-docs/skill.md +50 -0
  57. package/skills/architecture-design/skill.md +168 -0
  58. package/skills/atomic-commits/skill.md +53 -0
  59. package/skills/code-review/skill.md +59 -0
  60. package/skills/codebase-mapping/skill.md +54 -0
  61. package/skills/convention-detection/skill.md +68 -0
  62. package/skills/debugging/skill.md +59 -0
  63. package/skills/deviation-handling/skill.md +187 -0
  64. package/skills/documentation/skill.md +213 -0
  65. package/skills/goop-core/skill.md +383 -0
  66. package/skills/memory-usage/skill.md +208 -0
  67. package/skills/parallel-planning/skill.md +170 -0
  68. package/skills/pattern-extraction/skill.md +73 -0
  69. package/skills/performance-optimization/skill.md +188 -0
  70. package/skills/playwright/skill.md +69 -0
  71. package/skills/playwright-testing/skill.md +93 -0
  72. package/skills/progress-tracking/skill.md +155 -0
  73. package/skills/readme-generation/skill.md +87 -0
  74. package/skills/research/skill.md +161 -0
  75. package/skills/responsive-design/skill.md +76 -0
  76. package/skills/scientific-method/skill.md +67 -0
  77. package/skills/security-audit/skill.md +152 -0
  78. package/skills/task-decomposition/skill.md +153 -0
  79. package/skills/task-delegation/skill.md +127 -0
  80. package/skills/technical-writing/skill.md +69 -0
  81. package/skills/testing/skill.md +202 -0
  82. package/skills/ui-design/skill.md +73 -0
  83. package/skills/ux-patterns/skill.md +82 -0
  84. package/skills/verification/skill.md +178 -0
  85. package/skills/visual-regression/skill.md +86 -0
  86. package/templates/blueprint.md +141 -0
  87. package/templates/chronicle.md +156 -0
  88. package/templates/milestone.md +131 -0
  89. package/templates/research.md +117 -0
  90. package/templates/retrospective.md +188 -0
  91. package/templates/spec.md +103 -0
  92. package/templates/summary.md +202 -0
@@ -0,0 +1,383 @@
1
+ ---
2
+ name: goop-core
3
+ description: Core GoopSpec 0.1.0 operations - the 5-phase spec-driven workflow
4
+ category: core
5
+ triggers:
6
+ - goop
7
+ - spec
8
+ - workflow
9
+ - plan
10
+ - execute
11
+ version: 0.1.0
12
+ ---
13
+
14
+ # GoopSpec 0.1.0 Core Operations
15
+
16
+ ## The 5-Phase Workflow
17
+
18
+ GoopSpec follows a disciplined spec-driven development cycle:
19
+
20
+ ```
21
+ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
22
+ │ Phase 1 │ │ Phase 2 │ │ Phase 3 │
23
+ │ DISCUSS │ ──▶ │ PLAN │ ──▶ │ EXECUTE │
24
+ │ (Gather │ │ (Create │ │ (Wave-based │
25
+ │ reqs) │ │ PLAN.md) │ │ impl) │
26
+ └─────────────┘ └─────────────┘ └─────────────┘
27
+
28
+
29
+ ┌─────────────┐ ┌─────────────┐
30
+ │ Phase 5 │ │ Phase 4 │
31
+ │ CONFIRM │ ◀── │ AUDIT │
32
+ │ (User │ │ (Verify │
33
+ │ approval) │ │ against │
34
+ └─────────────┘ │ spec) │
35
+ └─────────────┘
36
+ ```
37
+
38
+ **Phase 0**: Intent Gate (classify every incoming request)
39
+ **Phase 1**: Discuss (gather requirements, clarify scope)
40
+ **Phase 2**: Plan (create detailed execution plan)
41
+ **Phase 3**: Execute (wave-based implementation)
42
+ **Phase 4**: Audit (verify against requirements)
43
+ **Phase 5**: Confirm (get user approval)
44
+
45
+ ### Phase 1: Discuss
46
+ - Gather requirements through conversation
47
+ - Ask clarifying questions
48
+ - Identify edge cases and constraints
49
+ - Challenge assumptions respectfully
50
+ - Output: Clear understanding of what to build
51
+
52
+ ### Phase 2: Plan
53
+ - Create detailed PLAN.md with waves and tasks
54
+ - Break work into atomic, verifiable tasks
55
+ - Identify dependencies between tasks
56
+ - Define acceptance criteria for each task
57
+ - Output: PLAN.md ready for execution
58
+
59
+ ### Phase 3: Execute
60
+ - Wave-based implementation
61
+ - Atomic commits per task
62
+ - Track progress with checkpoints
63
+ - Apply deviation rules (auto-fix vs ask)
64
+ - Output: Working code
65
+
66
+ ### Phase 4: Audit
67
+ - Verify implementation against requirements
68
+ - Check all acceptance criteria are met
69
+ - Review code quality and security
70
+ - Identify any gaps or issues
71
+ - Output: Audit report
72
+
73
+ ### Phase 5: Confirm (ACCEPTANCE GATE)
74
+ - Present summary to user
75
+ - Get explicit user approval
76
+ - Handle change requests if needed
77
+ - Archive completed work
78
+ - Output: Accepted deliverable
79
+
80
+ ---
81
+
82
+ ## Planning Markdown Files
83
+
84
+ GoopSpec uses markdown files for state and coordination:
85
+
86
+ | File | Purpose |
87
+ |------|---------|
88
+ | `SPEC.md` | Locked specification with must-haves and nice-to-haves |
89
+ | `BLUEPRINT.md` | Execution plan with waves and tasks |
90
+ | `CHRONICLE.md` | Journey log tracking progress and decisions |
91
+ | `RESEARCH.md` | Research findings from exploration phase |
92
+ | `RETROSPECTIVE.md` | Post-completion analysis (for milestones) |
93
+ | `LEARNINGS.md` | Extracted patterns and insights (archived) |
94
+
95
+ ### Directory Structure
96
+
97
+ ```
98
+ .goopspec/
99
+ ├── SPEC.md # Current specification
100
+ ├── BLUEPRINT.md # Current execution plan
101
+ ├── CHRONICLE.md # Current journey log
102
+ ├── RESEARCH.md # Current research findings
103
+ ├── quick/ # Quick task history
104
+ │ └── 001-task-name/
105
+ │ └── SUMMARY.md
106
+ ├── milestones/ # Active milestones
107
+ │ └── v1.0-feature/
108
+ └── archive/ # Completed milestones
109
+ └── v0.9-setup/
110
+ ├── RETROSPECTIVE.md
111
+ └── LEARNINGS.md
112
+ ```
113
+
114
+ ---
115
+
116
+ ## Task Modes
117
+
118
+ GoopSpec scales to the task size:
119
+
120
+ | Mode | When | Workflow |
121
+ |------|------|----------|
122
+ | **Quick** | Bug fixes, small changes | Plan → Execute → Accept |
123
+ | **Standard** | Features, moderate work | Full 5-phase workflow |
124
+ | **Comprehensive** | Complex systems | Full workflow + deep research |
125
+ | **Milestone** | Major releases | Multiple cycles + archive |
126
+
127
+ ### Quick Mode
128
+ - Skip Research and Specify phases
129
+ - For tasks under ~30 minutes
130
+ - Still uses memory and atomic commits
131
+ - Tracked in `.goopspec/quick/`
132
+
133
+ ### Standard Mode
134
+ - Full 5-phase workflow
135
+ - For features taking hours to a day
136
+ - Contract gate at Specify
137
+ - Acceptance gate at end
138
+
139
+ ### Comprehensive Mode
140
+ - Extended research phase
141
+ - Multiple parallel research agents
142
+ - Detailed specification
143
+ - Multiple execution waves
144
+
145
+ ### Milestone Mode
146
+ - Groups related work into versioned milestone
147
+ - Archives on completion
148
+ - Extracts learnings to memory
149
+ - Tags git with version
150
+
151
+ ---
152
+
153
+ ## Task Format
154
+
155
+ GoopSpec uses markdown for task definitions (not XML):
156
+
157
+ ```markdown
158
+ ### Task 1.1: [Action-oriented name]
159
+
160
+ **Files**: path/to/file.ext, other/file.ext
161
+ **Action**: [What to do, how, and why]
162
+ **Verify**: [Command or check to prove completion]
163
+ **Done**: [Measurable acceptance criteria]
164
+ ```
165
+
166
+ ### Wave Structure
167
+
168
+ ```markdown
169
+ ## Wave 1: [Theme]
170
+
171
+ ### Task 1.1: [Name]
172
+ ...
173
+
174
+ ### Task 1.2: [Name]
175
+ ...
176
+
177
+ ## Wave 2: [Theme]
178
+ ...
179
+ ```
180
+
181
+ ---
182
+
183
+ ## Contract Gates
184
+
185
+ Two mandatory confirmation points:
186
+
187
+ ### Specify Gate (Pre-Execution)
188
+ ```
189
+ "I've captured the requirements in SPEC.md:
190
+ - Must have: [list]
191
+ - Nice to have: [list]
192
+ - Out of scope: [list]
193
+
194
+ Please confirm this specification before I proceed."
195
+ ```
196
+
197
+ User must explicitly confirm before execution begins.
198
+
199
+ ### Accept Gate (Post-Execution)
200
+ ```
201
+ "Implementation complete. Verification against spec:
202
+ - [Requirement 1]: ✓ Implemented
203
+ - [Requirement 2]: ✓ Implemented
204
+
205
+ Please confirm acceptance or request changes."
206
+ ```
207
+
208
+ User must explicitly accept before marking complete.
209
+
210
+ ---
211
+
212
+ ## Core Principles
213
+
214
+ ### The Continuation Mandate
215
+ The agent continues until spec tasks are complete. If todos remain incomplete, enforced task continuation keeps work moving. Checkpoints allow pausing, but completion requires all must-haves delivered.
216
+
217
+ ### Goal-Backward Verification
218
+ Don't just complete tasks - verify that the code delivers what was promised. Task completion ≠ Goal achievement. Always trace back to the original intent.
219
+
220
+ ### Vertical Slices Over Horizontal Layers
221
+ ```
222
+ PREFER: Wave 1 = Complete User Feature (model + API + UI)
223
+ AVOID: Wave 1 = All Models, Wave 2 = All APIs, Wave 3 = All UIs
224
+ ```
225
+
226
+ ### Memory-First Protocol
227
+ All agents follow the memory protocol:
228
+ 1. Search memory for relevant past decisions before starting
229
+ 2. Save important observations and decisions during work
230
+ 3. Persist learnings to memory after completion
231
+
232
+ ### Orchestrator as Conductor
233
+ The orchestrator NEVER writes code. It coordinates, delegates, and maintains context. All implementation is delegated to specialized subagents.
234
+
235
+ ---
236
+
237
+ ## Deviation Rules
238
+
239
+ ### Rule 1: Auto-fix Bugs
240
+ Fix immediately without asking:
241
+ - Wrong logic, type errors, infinite loops
242
+ - Security vulnerabilities (SQL injection, XSS)
243
+ - Broken validation, race conditions
244
+ - Memory/resource leaks
245
+
246
+ ### Rule 2: Auto-add Missing Critical Functionality
247
+ Add immediately without asking:
248
+ - Error handling (try-catch, promise rejection)
249
+ - Input validation and sanitization
250
+ - Null/undefined checks
251
+ - Authentication/authorization checks
252
+ - Rate limiting on public APIs
253
+
254
+ ### Rule 3: Auto-fix Blocking Issues
255
+ Fix immediately without asking:
256
+ - Missing dependencies
257
+ - Broken import paths
258
+ - Missing environment variables
259
+ - Config errors
260
+ - Circular dependencies
261
+
262
+ ### Rule 4: Ask About Architectural Changes
263
+ STOP and ask user for:
264
+ - New database tables (not just columns)
265
+ - Schema changes (primary keys, table splits)
266
+ - Framework/library switches
267
+ - New infrastructure (queues, caches, CDNs)
268
+ - Breaking API changes
269
+ - New deployment environments
270
+
271
+ ---
272
+
273
+ ## Commands
274
+
275
+ ### Workflow Commands
276
+ | Command | Description |
277
+ |---------|-------------|
278
+ | `/goop-discuss [description]` | Capture user vision, gather requirements |
279
+ | `/goop-plan [description]` | Create detailed execution plan |
280
+ | `/goop-execute` | Begin wave-based execution |
281
+ | `/goop-accept` | Verify and accept completion |
282
+
283
+ ### Task Mode Commands
284
+ | Command | Description |
285
+ |---------|-------------|
286
+ | `/goop-quick [task]` | Fast-track small task |
287
+ | `/goop-milestone [name]` | Start versioned milestone |
288
+ | `/goop-complete` | Complete and archive milestone |
289
+
290
+ ### Utility Commands
291
+ | Command | Description |
292
+ |---------|-------------|
293
+ | `/goop-status` | Show workflow status |
294
+ | `/goop-amend` | Propose spec changes |
295
+ | `/goop-recall [query]` | Search persistent memory |
296
+ | `/goop-remember [content]` | Save to persistent memory |
297
+ | `/goop-pause [name]` | Save checkpoint |
298
+ | `/goop-resume [id]` | Resume from checkpoint |
299
+
300
+ ---
301
+
302
+ ## Commit Format
303
+
304
+ ```
305
+ type(wave-task): description
306
+
307
+ - Detail 1
308
+ - Detail 2
309
+ ```
310
+
311
+ Types: `feat`, `fix`, `test`, `refactor`, `docs`, `perf`, `chore`
312
+
313
+ Example:
314
+ ```
315
+ feat(w1-t2): implement user authentication API
316
+
317
+ - Add /auth/login and /auth/logout endpoints
318
+ - Integrate JWT token generation
319
+ - Add refresh token rotation
320
+ ```
321
+
322
+ ---
323
+
324
+ ## Status Indicators
325
+
326
+ | Symbol | Meaning |
327
+ |--------|---------|
328
+ | `[OK]` | Complete/Passed |
329
+ | `[FAIL]` | Failed/Error |
330
+ | `[WARN]` | Warning/Attention Required |
331
+ | `[INFO]` | Informational |
332
+ | `[WORK]` | In Progress |
333
+ | `[WAIT]` | Waiting/Blocked |
334
+ | `[GATE]` | User Confirmation Required |
335
+
336
+ ---
337
+
338
+ ## Archive System
339
+
340
+ When a milestone completes:
341
+
342
+ 1. **Move** milestone to `archive/`
343
+ 2. **Generate** RETROSPECTIVE.md (what worked, what didn't)
344
+ 3. **Extract** LEARNINGS.md (patterns, decisions, gotchas)
345
+ 4. **Persist** learnings to memory for future recall
346
+ 5. **Tag** git with milestone version
347
+
348
+ ### Learning Extraction
349
+
350
+ Learnings are persisted with semantic concepts for search:
351
+
352
+ ```
353
+ memory_save({
354
+ type: "observation",
355
+ title: "Milestone Learning: [name]",
356
+ concepts: ["auth", "jwt", "security"],
357
+ facts: ["jose library better than jsonwebtoken for ESM"],
358
+ importance: 0.8
359
+ })
360
+ ```
361
+
362
+ ### Recall
363
+
364
+ Use `/goop-recall` to search past work:
365
+
366
+ ```
367
+ /goop-recall "how did we handle auth?"
368
+ → Returns relevant learnings from archived milestones
369
+ ```
370
+
371
+ ---
372
+
373
+ ## Quick Reference
374
+
375
+ ```
376
+ WORKFLOW: Discuss → Plan → Execute → Audit → Confirm
377
+ FILES: PLAN.md, SPEC.md, ADL.md (decisions), checkpoints
378
+ MODES: Quick, Standard, Comprehensive, Milestone
379
+ GATES: Confirm (user approval required)
380
+ RULES: Auto-fix bugs/blocking, Ask for architecture
381
+ AGENTS: Orchestrator coordinates, Subagents execute
382
+ MEMORY: Search before, save during, persist after
383
+ ```
@@ -0,0 +1,208 @@
1
+ ---
2
+ name: memory-usage
3
+ description: How to effectively use the memory system to remember and recall information
4
+ category: core
5
+ triggers:
6
+ - memory
7
+ - remember
8
+ - recall
9
+ - save for later
10
+ - persistent
11
+ version: 0.1.0
12
+ ---
13
+
14
+ # Memory System Usage Guide
15
+
16
+ You have access to a persistent memory system that allows you to save and retrieve information across sessions. Use it wisely to provide better context-aware assistance.
17
+
18
+ ## Available Tools
19
+
20
+ ### `memory_save`
21
+ Save important information to persistent memory.
22
+
23
+ **When to use:**
24
+ - User expresses a preference ("I prefer TypeScript")
25
+ - You make an architectural decision
26
+ - You discover important patterns in the codebase
27
+ - You learn something that should persist
28
+
29
+ **Example:**
30
+ ```
31
+ memory_save(
32
+ title="User prefers functional React components",
33
+ content="User explicitly stated preference for functional components with hooks over class components.",
34
+ type="observation",
35
+ facts=["User prefers functional components", "Hooks preferred over class lifecycle"],
36
+ concepts=["react", "components", "preference"],
37
+ importance=8
38
+ )
39
+ ```
40
+
41
+ ### `memory_search`
42
+ Search your memory for relevant information.
43
+
44
+ **When to use:**
45
+ - Before making decisions that might have prior context
46
+ - When user asks about previous work
47
+ - When you need to recall preferences or patterns
48
+ - At the start of new conversations about familiar topics
49
+
50
+ **Example:**
51
+ ```
52
+ memory_search(
53
+ query="user preferences for React components",
54
+ limit=5,
55
+ types=["observation", "decision"]
56
+ )
57
+ ```
58
+
59
+ ### `memory_note`
60
+ Quick way to save brief notes.
61
+
62
+ **When to use:**
63
+ - Quick observations that might be useful later
64
+ - Temporary reminders
65
+ - Brief insights
66
+
67
+ **Example:**
68
+ ```
69
+ memory_note(
70
+ note="The authentication service is in /src/services/auth.ts",
71
+ concepts=["auth", "services"]
72
+ )
73
+ ```
74
+
75
+ ### `memory_decision`
76
+ Record important decisions with reasoning.
77
+
78
+ **When to use:**
79
+ - Architecture decisions
80
+ - Technology choices
81
+ - Design trade-offs
82
+ - Any decision that might need to be referenced later
83
+
84
+ **Example:**
85
+ ```
86
+ memory_decision(
87
+ decision="Use PostgreSQL for the database",
88
+ reasoning="Better JSON support needed for storing user preferences, and we anticipate complex analytical queries",
89
+ alternatives=["MySQL", "MongoDB"],
90
+ impact="high",
91
+ concepts=["database", "architecture"]
92
+ )
93
+ ```
94
+
95
+ ### `memory_forget`
96
+ Delete memories that are outdated or incorrect.
97
+
98
+ **When to use:**
99
+ - Information becomes outdated
100
+ - You stored something incorrect
101
+ - Cleaning up temporary notes
102
+
103
+ **Example:**
104
+ ```
105
+ memory_forget(id=123) // Delete by ID
106
+ memory_forget(query="outdated API endpoint", confirm=true) // Delete by search
107
+ ```
108
+
109
+ ## Best Practices
110
+
111
+ ### What to Remember
112
+
113
+ **HIGH PRIORITY (importance 8-10):**
114
+ - User preferences and coding style
115
+ - Project-specific decisions
116
+ - Architecture patterns
117
+ - Technology choices
118
+
119
+ **MEDIUM PRIORITY (importance 5-7):**
120
+ - Codebase patterns discovered
121
+ - Bug fixes and their solutions
122
+ - Feature implementation details
123
+ - Configuration details
124
+
125
+ **LOW PRIORITY (importance 3-4):**
126
+ - Routine observations
127
+ - Temporary context
128
+ - Session-specific notes
129
+
130
+ ### What NOT to Remember
131
+
132
+ **NEVER store:**
133
+ - API keys, passwords, tokens
134
+ - Private keys or secrets
135
+ - Personal information
136
+ - Content inside `<private>` tags
137
+ - Large code blocks (store file paths instead)
138
+
139
+ ### Memory Hygiene
140
+
141
+ 1. **Be specific with titles** - They show up in search results
142
+ 2. **Extract atomic facts** - Each fact should stand alone
143
+ 3. **Use consistent concepts** - Helps with future searches
144
+ 4. **Set appropriate importance** - Higher importance = more likely to surface
145
+ 5. **Include source files** - Helps locate related code
146
+
147
+ ## Search Strategy
148
+
149
+ 1. **Before starting work:** Search for relevant context
150
+ ```
151
+ memory_search(query="<topic I'm about to work on>")
152
+ ```
153
+
154
+ 2. **After learning something:** Save it for later
155
+ ```
156
+ memory_save(title="...", content="...", ...)
157
+ ```
158
+
159
+ 3. **When asked about history:** Search first
160
+ ```
161
+ memory_search(query="previous work on <topic>")
162
+ ```
163
+
164
+ ## Integration with Goop Workflow
165
+
166
+ Memory integrates with the Goop workflow phases:
167
+
168
+ - **Discuss:** Search for relevant prior context
169
+ - **Plan:** Save important decisions and constraints
170
+ - **Execute:** Save observations about the codebase
171
+ - **Audit:** Note any issues discovered
172
+ - **Confirm:** Save summary of what was accomplished
173
+
174
+ ## Privacy
175
+
176
+ Always respect privacy:
177
+ - Content in `<private>...</private>` tags is never stored
178
+ - Sensitive patterns (API keys, etc.) are automatically redacted
179
+ - When in doubt, ask before storing
180
+
181
+ ## Examples of Good Memories
182
+
183
+ **User Preference:**
184
+ ```
185
+ Title: User prefers tabs over spaces
186
+ Content: User explicitly stated preference for tabs (width 2) for indentation in all code.
187
+ Facts: ["Use tabs for indentation", "Tab width should be 2"]
188
+ Concepts: ["formatting", "preference", "style"]
189
+ Importance: 9
190
+ ```
191
+
192
+ **Architecture Decision:**
193
+ ```
194
+ Title: Chose event sourcing for order system
195
+ Content: Decided to use event sourcing pattern for the order management system to maintain complete audit history.
196
+ Facts: ["Order system uses event sourcing", "Full audit history required"]
197
+ Concepts: ["architecture", "event-sourcing", "orders"]
198
+ Importance: 8
199
+ ```
200
+
201
+ **Codebase Pattern:**
202
+ ```
203
+ Title: API routes follow RESTful naming convention
204
+ Content: All API routes in /src/api/ follow strict RESTful naming: GET /resources, GET /resources/:id, POST /resources, etc.
205
+ Facts: ["RESTful API naming", "Routes in /src/api/"]
206
+ Concepts: ["api", "rest", "conventions"]
207
+ Importance: 6
208
+ ```