@rune-kit/rune 2.1.1 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +40 -34
  2. package/compiler/__tests__/pack-split.test.js +145 -0
  3. package/compiler/adapters/antigravity.js +1 -1
  4. package/compiler/adapters/codex.js +77 -0
  5. package/compiler/adapters/cursor.js +1 -1
  6. package/compiler/adapters/generic.js +1 -1
  7. package/compiler/adapters/index.js +4 -0
  8. package/compiler/adapters/opencode.js +86 -0
  9. package/compiler/adapters/windsurf.js +1 -1
  10. package/compiler/bin/rune.js +10 -7
  11. package/compiler/doctor.js +42 -0
  12. package/compiler/emitter.js +64 -10
  13. package/compiler/parser.js +42 -3
  14. package/compiler/transformer.js +10 -6
  15. package/compiler/transforms/branding.js +1 -1
  16. package/compiler/transforms/compliance.js +40 -0
  17. package/extensions/ai-ml/PACK.md +38 -474
  18. package/extensions/ai-ml/skills/ai-agents.md +172 -0
  19. package/extensions/ai-ml/skills/code-sandbox.md +187 -0
  20. package/extensions/ai-ml/skills/deep-research.md +146 -0
  21. package/extensions/ai-ml/skills/embedding-search.md +66 -0
  22. package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -0
  23. package/extensions/ai-ml/skills/llm-architect.md +125 -0
  24. package/extensions/ai-ml/skills/llm-integration.md +64 -0
  25. package/extensions/ai-ml/skills/prompt-patterns.md +72 -0
  26. package/extensions/ai-ml/skills/rag-patterns.md +66 -0
  27. package/extensions/ai-ml/skills/web-extraction.md +114 -0
  28. package/extensions/analytics/PACK.md +19 -484
  29. package/extensions/analytics/skills/ab-testing.md +72 -0
  30. package/extensions/analytics/skills/dashboard-patterns.md +83 -0
  31. package/extensions/analytics/skills/data-validation.md +68 -0
  32. package/extensions/analytics/skills/funnel-analysis.md +81 -0
  33. package/extensions/analytics/skills/sql-patterns.md +57 -0
  34. package/extensions/analytics/skills/statistical-analysis.md +79 -0
  35. package/extensions/analytics/skills/tracking-setup.md +71 -0
  36. package/extensions/backend/PACK.md +44 -618
  37. package/extensions/backend/skills/api-patterns.md +84 -0
  38. package/extensions/backend/skills/async-pipeline.md +193 -0
  39. package/extensions/backend/skills/auth-patterns.md +97 -0
  40. package/extensions/backend/skills/background-jobs.md +133 -0
  41. package/extensions/backend/skills/caching-patterns.md +108 -0
  42. package/extensions/backend/skills/cli-generation.md +133 -0
  43. package/extensions/backend/skills/database-patterns.md +87 -0
  44. package/extensions/backend/skills/middleware-patterns.md +104 -0
  45. package/extensions/chrome-ext/PACK.md +19 -921
  46. package/extensions/chrome-ext/skills/cws-preflight.md +143 -0
  47. package/extensions/chrome-ext/skills/cws-publish.md +104 -0
  48. package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -0
  49. package/extensions/chrome-ext/skills/ext-messaging.md +139 -0
  50. package/extensions/chrome-ext/skills/ext-storage.md +133 -0
  51. package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -0
  52. package/extensions/content/PACK.md +43 -335
  53. package/extensions/content/skills/blog-patterns.md +88 -0
  54. package/extensions/content/skills/cms-integration.md +131 -0
  55. package/extensions/content/skills/content-scoring.md +107 -0
  56. package/extensions/content/skills/i18n.md +83 -0
  57. package/extensions/content/skills/mdx-authoring.md +137 -0
  58. package/extensions/content/skills/reference.md +1014 -0
  59. package/extensions/content/skills/seo-patterns.md +67 -0
  60. package/extensions/content/skills/video-repurpose.md +153 -0
  61. package/extensions/devops/PACK.md +38 -457
  62. package/extensions/devops/skills/chaos-testing.md +67 -0
  63. package/extensions/devops/skills/ci-cd.md +75 -0
  64. package/extensions/devops/skills/docker.md +58 -0
  65. package/extensions/devops/skills/edge-serverless.md +163 -0
  66. package/extensions/devops/skills/infra-as-code.md +158 -0
  67. package/extensions/devops/skills/kubernetes.md +110 -0
  68. package/extensions/devops/skills/monitoring.md +57 -0
  69. package/extensions/devops/skills/server-setup.md +64 -0
  70. package/extensions/devops/skills/ssl-domain.md +42 -0
  71. package/extensions/ecommerce/PACK.md +62 -226
  72. package/extensions/ecommerce/skills/cart-system.md +79 -0
  73. package/extensions/ecommerce/skills/inventory-mgmt.md +102 -0
  74. package/extensions/ecommerce/skills/order-management.md +126 -0
  75. package/extensions/ecommerce/skills/payment-integration.md +472 -0
  76. package/extensions/ecommerce/skills/shopify-dev.md +69 -0
  77. package/extensions/ecommerce/skills/subscription-billing.md +93 -0
  78. package/extensions/ecommerce/skills/tax-compliance.md +117 -0
  79. package/extensions/gamedev/PACK.md +66 -317
  80. package/extensions/gamedev/skills/asset-pipeline.md +74 -0
  81. package/extensions/gamedev/skills/audio-system.md +129 -0
  82. package/extensions/gamedev/skills/camera-system.md +87 -0
  83. package/extensions/gamedev/skills/ecs.md +98 -0
  84. package/extensions/gamedev/skills/game-loops.md +72 -0
  85. package/extensions/gamedev/skills/input-system.md +199 -0
  86. package/extensions/gamedev/skills/multiplayer.md +180 -0
  87. package/extensions/gamedev/skills/particles.md +105 -0
  88. package/extensions/gamedev/skills/physics-engine.md +89 -0
  89. package/extensions/gamedev/skills/scene-management.md +146 -0
  90. package/extensions/gamedev/skills/threejs-patterns.md +90 -0
  91. package/extensions/gamedev/skills/webgl.md +71 -0
  92. package/extensions/mobile/PACK.md +56 -223
  93. package/extensions/mobile/skills/app-store-connect.md +152 -0
  94. package/extensions/mobile/skills/app-store-prep.md +66 -0
  95. package/extensions/mobile/skills/deep-linking.md +109 -0
  96. package/extensions/mobile/skills/flutter.md +60 -0
  97. package/extensions/mobile/skills/ios-build-pipeline.md +142 -0
  98. package/extensions/mobile/skills/native-bridge.md +66 -0
  99. package/extensions/mobile/skills/ota-updates.md +97 -0
  100. package/extensions/mobile/skills/push-notifications.md +111 -0
  101. package/extensions/mobile/skills/react-native.md +82 -0
  102. package/extensions/saas/PACK.md +26 -720
  103. package/extensions/saas/skills/billing-integration.md +121 -0
  104. package/extensions/saas/skills/feature-flags.md +130 -0
  105. package/extensions/saas/skills/multi-tenant.md +103 -0
  106. package/extensions/saas/skills/onboarding-flow.md +139 -0
  107. package/extensions/saas/skills/subscription-flow.md +95 -0
  108. package/extensions/saas/skills/team-management.md +144 -0
  109. package/extensions/security/PACK.md +10 -448
  110. package/extensions/security/skills/api-security.md +140 -0
  111. package/extensions/security/skills/compliance.md +68 -0
  112. package/extensions/security/skills/owasp-audit.md +64 -0
  113. package/extensions/security/skills/pentest-patterns.md +77 -0
  114. package/extensions/security/skills/secret-mgmt.md +65 -0
  115. package/extensions/security/skills/supply-chain.md +65 -0
  116. package/extensions/trading/PACK.md +18 -535
  117. package/extensions/trading/skills/chart-components.md +55 -0
  118. package/extensions/trading/skills/experiment-loop.md +125 -0
  119. package/extensions/trading/skills/fintech-patterns.md +47 -0
  120. package/extensions/trading/skills/indicator-library.md +58 -0
  121. package/extensions/trading/skills/quant-analysis.md +111 -0
  122. package/extensions/trading/skills/realtime-data.md +58 -0
  123. package/extensions/trading/skills/trade-logic.md +104 -0
  124. package/extensions/ui/PACK.md +34 -853
  125. package/extensions/ui/skills/a11y-audit.md +91 -0
  126. package/extensions/ui/skills/animation-patterns.md +106 -0
  127. package/extensions/ui/skills/component-patterns.md +75 -0
  128. package/extensions/ui/skills/design-decision.md +98 -0
  129. package/extensions/ui/skills/design-system.md +68 -0
  130. package/extensions/ui/skills/landing-patterns.md +155 -0
  131. package/extensions/ui/skills/palette-picker.md +162 -0
  132. package/extensions/ui/skills/react-health.md +90 -0
  133. package/extensions/ui/skills/type-system.md +125 -0
  134. package/extensions/ui/skills/web-vitals.md +153 -0
  135. package/extensions/zalo/PACK.md +117 -0
  136. package/extensions/zalo/skills/zalo-oa-mcp.md +317 -0
  137. package/extensions/zalo/skills/zalo-oa-messaging.md +429 -0
  138. package/extensions/zalo/skills/zalo-oa-setup.md +236 -0
  139. package/extensions/zalo/skills/zalo-oa-webhook.md +189 -0
  140. package/extensions/zalo/skills/zalo-personal-messaging.md +194 -0
  141. package/extensions/zalo/skills/zalo-personal-setup.md +153 -0
  142. package/extensions/zalo/skills/zalo-rate-guard.md +219 -0
  143. package/package.json +5 -2
  144. package/skills/brainstorm/SKILL.md +63 -1
  145. package/skills/cook/SKILL.md +89 -6
  146. package/skills/debug/SKILL.md +5 -0
  147. package/skills/fix/SKILL.md +5 -0
  148. package/skills/mcp-builder/SKILL.md +48 -1
  149. package/skills/neural-memory/SKILL.md +362 -0
  150. package/skills/plan/SKILL.md +3 -0
  151. package/skills/rescue/SKILL.md +5 -0
  152. package/skills/review/SKILL.md +44 -5
  153. package/skills/review-intake/SKILL.md +17 -1
  154. package/skills/skill-router/SKILL.md +106 -8
  155. package/skills/team/SKILL.md +24 -1
  156. package/skills/test/SKILL.md +18 -0
  157. package/skills/verification/SKILL.md +40 -1
@@ -0,0 +1,362 @@
1
+ ---
2
+ name: neural-memory
3
+ description: "Cross-session cognitive persistence via Neural Memory MCP. Captures decisions, patterns, errors, and insights with rich semantic links. Provides recall, hypothesis tracking, and evidence-based reasoning across projects."
4
+ metadata:
5
+ author: rune-kit
6
+ version: 0.1.0
7
+ layer: L3
8
+ model: haiku
9
+ group: state
10
+ tools:
11
+ - mcp__neural-memory__nmem_remember
12
+ - mcp__neural-memory__nmem_recall
13
+ - mcp__neural-memory__nmem_auto
14
+ - mcp__neural-memory__nmem_hypothesize
15
+ - mcp__neural-memory__nmem_evidence
16
+ - mcp__neural-memory__nmem_predict
17
+ - mcp__neural-memory__nmem_verify
18
+ - mcp__neural-memory__nmem_edit
19
+ - mcp__neural-memory__nmem_forget
20
+ - mcp__neural-memory__nmem_health
21
+ - mcp__neural-memory__nmem_consolidate
22
+ - mcp__neural-memory__nmem_explain
23
+ - mcp__neural-memory__nmem_gaps
24
+ - mcp__neural-memory__nmem_stats
25
+ - mcp__neural-memory__nmem_review
26
+ - mcp__neural-memory__nmem_cognitive
27
+ - Read
28
+ - Grep
29
+ ---
30
+
31
+ # neural-memory
32
+
33
+ ## Purpose
34
+
35
+ Bridges Rune's file-based persistence (session-bridge, journal) with Neural Memory MCP's semantic graph. While session-bridge saves decisions to `.rune/` files and journal tracks ADRs locally, neural-memory captures **cross-project learnable patterns** — decisions, error root causes, architectural insights, and workflow preferences — into a persistent cognitive layer that compounds across every project and session.
36
+
37
+ Without this skill, each project is an island. With it, a caching pattern discovered in Project A auto-surfaces when Project B faces a similar problem.
38
+
39
+ ## Triggers
40
+
41
+ **Auto-trigger:**
42
+ - Session start → Run **Recall Mode** (load relevant context before any work)
43
+ - After `cook` completes a feature → Run **Capture Mode** (save learnings)
44
+ - After `debug` finds root cause → Run **Capture Mode** (save error pattern)
45
+ - After `review` finds issues → Run **Capture Mode** (save code quality insight)
46
+ - After `rescue` completes a phase → Run **Capture Mode** (save refactoring pattern)
47
+ - After `journal` writes an ADR → Run **Capture Mode** (extract to nmem)
48
+ - Session end / before compaction → Run **Flush Mode** (capture remaining context)
49
+
50
+ **Manual trigger:**
51
+ - `/rune recall <topic>` — search neural memory for a topic
52
+ - `/rune remember <text>` — save a specific memory
53
+ - `/rune brain-health` — check neural memory health + maintenance
54
+ - `/rune hypothesize <question>` — start hypothesis tracking
55
+
56
+ ## Calls (outbound)
57
+
58
+ | Skill | When | Why |
59
+ |-------|------|-----|
60
+ | `session-bridge` | After Capture Mode | Sync key decisions back to `.rune/` files |
61
+
62
+ ## Called By (inbound)
63
+
64
+ | Skill | When | Why |
65
+ |-------|------|-----|
66
+ | `cook` | Phase 0 (resume) + Phase 8 (complete) | Recall project context at start, capture learnings at end |
67
+ | `debug` | After root cause found | Capture error pattern for future recognition |
68
+ | `fix` | After fix verified | Capture fix pattern (cause → solution) |
69
+ | `review` | After review complete | Capture code quality insight |
70
+ | `rescue` | Phase start + phase end | Recall past refactoring patterns, capture new ones |
71
+ | `plan` | Before architecture decisions | Recall past decisions on similar problems |
72
+ | `session-bridge` | Step 6 (cross-project extraction) | Extract generalizable patterns to nmem |
73
+ | `journal` | After ADR written | Extract decision + rejected alternatives to nmem |
74
+ | `context-engine` | Before compaction | Trigger Flush Mode to preserve context |
75
+ | `sentinel` | After security finding | Capture vulnerability pattern |
76
+ | `incident` | After resolution | Capture incident root cause + fix |
77
+
78
+ ## Modes
79
+
80
+ ### Mode 1: Recall (Session Start / Before Decisions)
81
+
82
+ Load relevant context from neural memory before starting work.
83
+
84
+ **Step 1 — Identify Recall Topics**
85
+ Read `.rune/progress.md` and current task context to determine 3-5 diverse recall topics.
86
+ Always prefix queries with the project name to avoid cross-project noise.
87
+
88
+ ```
89
+ GOOD: "Rune compiler cross-reference resolution"
90
+ GOOD: "MyTrend PocketBase auth session handling"
91
+ BAD: "cross-reference" (too generic, returns all projects)
92
+ BAD: "auth" (returns noise from every project)
93
+ ```
94
+
95
+ **Step 2 — Execute Recall**
96
+ Call `nmem_recall` for each topic. Use diverse angles:
97
+ - Technology-specific: `"<project> React state management"`
98
+ - Problem-specific: `"<project> caching strategy decision"`
99
+ - Pattern-specific: `"<project> error handling approach"`
100
+
101
+ **Step 3 — Synthesize Context**
102
+ Summarize recalled memories into actionable context:
103
+ - Decisions that apply to current task
104
+ - Patterns that worked (or failed) before
105
+ - Constraints or preferences from past sessions
106
+ - Open hypotheses still being tracked
107
+
108
+ **Step 4 — Surface Gaps**
109
+ If recall returns thin results for the current domain, note the gap.
110
+ Call `nmem_gaps(action="detect")` if working in a domain with sparse memories.
111
+
112
+ ---
113
+
114
+ ### Mode 2: Capture (After Task Completion)
115
+
116
+ Extract learnable patterns from completed work and save to neural memory.
117
+
118
+ **Step 1 — Classify What Happened**
119
+ Determine which memory types to create from the completed task:
120
+
121
+ | What happened | Memory type | Priority | Example |
122
+ |---------------|-------------|----------|---------|
123
+ | Chose approach A over B | `decision` | 7 | "Chose Zustand over Redux because single-store simpler for this scale" |
124
+ | Found and fixed a bug | `error` | 7 | "Root cause was stale closure in useEffect — fixed by adding dep array" |
125
+ | Discovered a reusable pattern | `insight` | 6 | "This codebase uses barrel exports for every feature module" |
126
+ | Learned user preference | `preference` | 8 | "User prefers Phosphor Icons over Lucide for all UI work" |
127
+ | Established a workflow | `workflow` | 6 | "Deploy: build → test → push → verify CI → tag" |
128
+ | Found a fact worth keeping | `fact` | 5 | "API rate limit is 100 req/min on free tier" |
129
+ | Received instruction to follow | `instruction` | 8 | "Always run prettier before commit in this project" |
130
+
131
+ **Step 2 — Craft Rich Memories**
132
+ Each memory MUST use cognitive language patterns for strong neural connections:
133
+
134
+ ```
135
+ BAD: "PostgreSQL" (flat, no context — orphan neuron)
136
+ GOOD: "Chose PostgreSQL over MongoDB because ACID needed for payment processing"
137
+
138
+ BAD: "Fixed auth bug" (no root cause — useless for future recall)
139
+ GOOD: "Auth cookie expired silently because SameSite=Lax blocked cross-origin. Fixed by setting SameSite=None + Secure flag"
140
+
141
+ BAD: "React project structure" (vague — won't match specific queries)
142
+ GOOD: "Rune compiler uses 3-stage pipeline: Parse SKILL.md → Transform cross-refs → Emit per-platform files"
143
+ ```
144
+
145
+ **Cognitive patterns to use:**
146
+ - **Causal**: "X caused Y because Z", "Root cause was X which led to Y"
147
+ - **Temporal**: "After upgrading to v3, the middleware broke because of new cookie format"
148
+ - **Decisional**: "Chose X over Y because Z", "Rejected X due to Y"
149
+ - **Comparative**: "X is 3x faster than Y for read-heavy workloads"
150
+ - **Relational**: "X depends on Y", "X replaced Y", "X connects to Y through Z"
151
+
152
+ **Step 3 — Tag and Prioritize**
153
+ Every memory MUST include:
154
+ - **Tags**: `[project-name, technology, topic]` — lowercase, specific
155
+ - **Priority**: 5 (normal), 7-8 (important decisions/errors), 9-10 (critical security/breaking)
156
+ - **Max length**: 1-3 sentences. If longer, split into focused pieces.
157
+
158
+ **Step 4 — Save Memories**
159
+ Call `nmem_remember` for each memory. Save 2-5 memories per completed task:
160
+ - A bug fix has: root cause, fix approach, prevention insight
161
+ - A feature has: architecture decision, pattern used, trade-off made
162
+ - A review has: quality issue found, fix suggestion, pattern to avoid
163
+
164
+ **Step 5 — Reinforce Connections**
165
+ After saving, call `nmem_recall` on the topic to reinforce new neural connections.
166
+ This activates related neurons and strengthens the memory graph.
167
+
168
+ ---
169
+
170
+ ### Mode 3: Hypothesis Tracking
171
+
172
+ Track uncertain decisions with evidence over time.
173
+
174
+ **Step 1 — Form Hypothesis**
175
+ When making an uncertain architectural or design decision:
176
+ ```
177
+ nmem_hypothesize("Redis will handle our session load better than Memcached
178
+ because our access pattern is 80% reads with complex data types")
179
+ ```
180
+
181
+ **Step 2 — Collect Evidence**
182
+ As you work, update the hypothesis with evidence:
183
+ ```
184
+ nmem_evidence(hypothesis_id, "Redis handled 10K concurrent sessions with
185
+ p99 < 5ms in load test — SUPPORTS hypothesis")
186
+
187
+ nmem_evidence(hypothesis_id, "Memory usage 2x higher than Memcached estimate
188
+ — WEAKENS hypothesis for memory-constrained deployments")
189
+ ```
190
+
191
+ **Step 3 — Make Predictions**
192
+ Create falsifiable predictions:
193
+ ```
194
+ nmem_predict("If we switch to Redis Cluster, session failover time will drop
195
+ from 30s to < 2s")
196
+ ```
197
+
198
+ **Step 4 — Verify Outcomes**
199
+ After deployment/testing, verify:
200
+ ```
201
+ nmem_verify(prediction_id, outcome="Failover time dropped to 1.2s — CONFIRMED")
202
+ ```
203
+
204
+ ---
205
+
206
+ ### Mode 4: Flush (Session End / Pre-Compaction)
207
+
208
+ Capture remaining context before session ends.
209
+
210
+ **Step 1 — Scan Unsaved Context**
211
+ Review the current session for:
212
+ - Decisions made but not yet captured
213
+ - Errors encountered and their resolutions
214
+ - Patterns discovered during exploration
215
+ - User preferences expressed
216
+
217
+ **Step 2 — Batch Save**
218
+ Call `nmem_auto(action="process", text="<session summary>")` with a concise summary
219
+ of the session's key outcomes, decisions, and learnings.
220
+
221
+ **Step 3 — Update Session Bridge**
222
+ If significant decisions were captured, also call `session-bridge` to sync
223
+ the most important ones to `.rune/decisions.md` for local persistence.
224
+
225
+ ---
226
+
227
+ ### Mode 5: Maintenance (Weekly / On-Demand)
228
+
229
+ Keep the neural memory healthy and useful.
230
+
231
+ **Step 1 — Health Check**
232
+ Call `nmem_health()` to assess brain status. Key metrics:
233
+ - Consolidation % (low = run consolidation)
234
+ - Orphan % (>20% = prune disconnected memories)
235
+ - Activation levels (low = recall more diverse topics)
236
+ - Connectivity (low = use richer cognitive language)
237
+ - Diversity (low = vary memory types)
238
+
239
+ **Step 2 — Consolidation**
240
+ If brain has >100 memories or consolidation is low:
241
+ ```
242
+ nmem_consolidate — merge episodic → semantic memories
243
+ ```
244
+
245
+ **Step 3 — Review Queue**
246
+ Call `nmem_review(action="queue")` to surface memories needing attention:
247
+ - Outdated decisions that may no longer apply
248
+ - Low-confidence memories that need evidence
249
+ - Wall-of-text memories (>500 chars) that should be split
250
+
251
+ **Step 4 — Corrections**
252
+ Fix bad memories:
253
+ - Wrong type → `nmem_edit(memory_id, type="correct_type")`
254
+ - Wrong content → `nmem_edit(memory_id, content="corrected text")`
255
+ - Outdated → `nmem_forget(memory_id, reason="outdated")`
256
+ - Sensitive/garbage → `nmem_forget(memory_id, hard=true)`
257
+
258
+ **Step 5 — Connection Tracing**
259
+ Use `nmem_explain(entity_a, entity_b)` to trace paths between concepts.
260
+ Useful for understanding why certain memories surface together.
261
+
262
+ ## Output Format
263
+
264
+ ### Recall Report
265
+ ```
266
+ ## Neural Memory Recall — <project>
267
+
268
+ ### Loaded Context
269
+ - <memory 1 summary — decision/pattern/insight>
270
+ - <memory 2 summary>
271
+ - <memory 3 summary>
272
+
273
+ ### Applicable to Current Task
274
+ - <how memory X applies>
275
+ - <how memory Y applies>
276
+
277
+ ### Gaps Detected
278
+ - <domain with sparse coverage>
279
+ ```
280
+
281
+ ### Capture Report
282
+ ```
283
+ ## Neural Memory Capture — <task summary>
284
+
285
+ ### Saved Memories
286
+ | # | Type | Priority | Tags | Content (preview) |
287
+ |---|------|----------|------|--------------------|
288
+ | 1 | decision | 7 | [project, tech, topic] | Chose X over Y because... |
289
+ | 2 | error | 7 | [project, bug, tech] | Root cause was X... |
290
+ | 3 | insight | 6 | [project, pattern] | This codebase uses... |
291
+
292
+ ### Reinforced Topics
293
+ - <topic recalled to strengthen connections>
294
+ ```
295
+
296
+ ### Health Report
297
+ ```
298
+ ## Neural Memory Health
299
+
300
+ | Metric | Value | Status |
301
+ |--------|-------|--------|
302
+ | Total memories | N | — |
303
+ | Consolidation | N% | ✅ / ⚠️ |
304
+ | Orphans | N% | ✅ / ⚠️ |
305
+ | Activation | level | ✅ / ⚠️ |
306
+ | Top penalty | <metric> | Fix: <action> |
307
+
308
+ ### Recommended Actions
309
+ 1. <action with command>
310
+ ```
311
+
312
+ ## Constraints
313
+
314
+ 1. **MUST prefix all recall queries with project name** — generic queries return cross-project noise that confuses the AI. The ONLY exception is intentional cross-project searches.
315
+ 2. **MUST use rich cognitive language** — flat facts ("X exists") create orphan neurons with zero connections. Every memory MUST include WHY, BECAUSE, or relationship context.
316
+ 3. **MUST NOT save wall-of-text memories** — max 1-3 sentences per memory. Split longer content into focused pieces. Memories >500 chars degrade recall quality.
317
+ 4. **MUST NOT duplicate file-based state** — don't save task progress, file paths, or git history to nmem. Those belong in `.rune/` files (session-bridge) or git. nmem is for *learnable patterns* only.
318
+ 5. **MUST save 2-5 memories per completed task** — a single memory per task is insufficient. Capture the decision, the reasoning, the pattern, and the prevention insight separately.
319
+ 6. **MUST NOT save sensitive data** — no API keys, passwords, tokens, or PII. Mask or omit sensitive values.
320
+ 7. **MUST tag every memory** — always include `[project-name, technology, topic]`. Tags enable future recall precision.
321
+
322
+ ## Sharp Edges
323
+
324
+ | Failure Mode | Severity | Mitigation |
325
+ |---|---|---|
326
+ | Cross-project noise from generic queries | HIGH | Always prefix queries with project name. Use `nmem_explain` to trace unexpected connections |
327
+ | Orphan neurons from flat facts | HIGH | Enforce cognitive language patterns (causal, decisional, comparative). Run `nmem_health` to detect orphan % |
328
+ | Memory bloat from over-saving | MEDIUM | Cap at 5 memories per task. Run `nmem_consolidate` weekly. Use `nmem_review` to prune |
329
+ | Stale decisions applied to changed codebase | MEDIUM | Include temporal context ("As of v2.1, ..."). Verify recalled decisions against current code before applying |
330
+ | Duplicate memories from repeated sessions | MEDIUM | Before saving, `nmem_recall` the topic first to check for existing memories. Update rather than create duplicates |
331
+ | Loss of nuance from oversimplification | LOW | Save rejected alternatives alongside chosen approach. Use `nmem_hypothesize` for uncertain decisions |
332
+
333
+ ## Done When
334
+
335
+ **Recall Mode:**
336
+ - 3-5 diverse topics recalled with project-name prefix
337
+ - Applicable context summarized for current task
338
+ - Gaps noted if coverage is thin
339
+
340
+ **Capture Mode:**
341
+ - 2-5 memories saved with rich cognitive language
342
+ - All memories tagged with `[project, technology, topic]`
343
+ - Priority assigned (5-10 scale)
344
+ - Connections reinforced via post-save recall
345
+
346
+ **Flush Mode:**
347
+ - All significant unsaved decisions captured
348
+ - `nmem_auto` called with session summary
349
+ - Session-bridge synced if major decisions made
350
+
351
+ **Maintenance Mode:**
352
+ - `nmem_health` run and metrics assessed
353
+ - Top penalty addressed with specific action
354
+ - Review queue processed (outdated/bloated memories fixed)
355
+
356
+ ## Cost Profile
357
+
358
+ - **Recall**: ~200-500 tokens (3-5 queries + synthesis)
359
+ - **Capture**: ~300-600 tokens (2-5 memories + reinforcement)
360
+ - **Flush**: ~100-300 tokens (auto-process + sync)
361
+ - **Maintenance**: ~500-1000 tokens (health + consolidate + review)
362
+ - **Hypothesis**: ~200-400 tokens per hypothesis lifecycle
@@ -88,6 +88,7 @@ High-level multi-feature planning — organize features into milestones.
88
88
  - `research` (L3): external knowledge lookup
89
89
  - `sequential-thinking` (L3): complex architecture with many trade-offs
90
90
  - L4 extension packs: domain-specific architecture patterns
91
+ - `neural-memory` | Before architecture decisions | Recall past decisions on similar problems
91
92
 
92
93
  ## Called By (inbound)
93
94
 
@@ -113,6 +114,8 @@ High-level multi-feature planning — organize features into milestones.
113
114
 
114
115
  Use findings from `rune:scout` if already available. If not, invoke `rune:scout` with the project root to scan directory structure, detect framework, identify key files, and extract existing patterns. Do NOT skip this step — plans without context produce wrong file paths.
115
116
 
117
+ Call `neural-memory` (Recall Mode) to check for past architecture decisions on similar problems before making new ones.
118
+
116
119
  ### Step 2 — Classify Complexity
117
120
 
118
121
  Determine if the task needs master plan + phase files or inline plan:
@@ -40,6 +40,7 @@ Legacy refactoring orchestrator for safely modernizing messy codebases. Rescue r
40
40
  - `session-bridge` (L3): save rescue state between sessions
41
41
  - `onboard` (L2): generate context for unfamiliar legacy project
42
42
  - `dependency-doctor` (L3): audit dependencies in legacy project
43
+ - `neural-memory` | Phase start + phase end | Recall past refactoring patterns, capture new ones
43
44
 
44
45
  ## Called By (inbound)
45
46
 
@@ -72,6 +73,8 @@ Note: SURGERY todos are added dynamically — one per module identified in Phase
72
73
 
73
74
  Mark todo[0] `in_progress`.
74
75
 
76
+ Call `neural-memory` (Recall Mode) for past refactoring patterns in similar codebases.
77
+
75
78
  **0a. Full health assessment.**
76
79
 
77
80
  ```
@@ -344,6 +347,8 @@ REQUIRED SUB-SKILL: rune:journal
344
347
  Bash: git tag rune-rescue-complete
345
348
  ```
346
349
 
350
+ Call `neural-memory` (Capture Mode) to save refactoring patterns and decisions from this rescue.
351
+
347
352
  Mark VERIFY todo `completed`.
348
353
 
349
354
  ---
@@ -3,7 +3,7 @@ name: review
3
3
  description: Code quality review — patterns, security, performance, correctness. Finds bugs, suggests improvements, triggers fix for issues found. Escalates to opus for security-critical code.
4
4
  metadata:
5
5
  author: runedev
6
- version: "0.2.0"
6
+ version: "0.3.0"
7
7
  layer: L2
8
8
  model: sonnet
9
9
  group: development
@@ -41,6 +41,7 @@ Every review MUST cite at least one specific concern, suggestion, or explicit ap
41
41
  - `review-intake` (L2): structured intake for complex multi-file reviews
42
42
  - `sast` (L3): static analysis security scan on reviewed code
43
43
  - L4 extension packs: domain-specific review patterns when context matches (e.g., @rune/ui for frontend, @rune/security for auth code)
44
+ - `neural-memory` | After review complete | Capture code quality insight
44
45
 
45
46
  ## Called By (inbound)
46
47
 
@@ -69,14 +70,17 @@ Determine what to review.
69
70
  - If context is unclear: use `rune:scout` to identify all files touched by the change
70
71
  - List every file in scope before proceeding — do not review files outside the stated scope
71
72
 
72
- ### Step 2: Logic Check
73
+ ### Step 2: Logic Check (Production-Critical Focus)
73
74
 
74
- Read each changed file and check for correctness.
75
+ Read each changed file. Prioritize bugs that **pass CI but break production** — these are the highest-value findings because linters and type checkers already catch the rest.
75
76
 
76
77
  - Use `Read` on every file in scope
78
+ - **Race conditions**: async operations without proper sequencing, shared mutable state, missing locks
79
+ - **State corruption**: mutations that affect other consumers, cache invalidation gaps, stale closures
80
+ - **Silent failures**: caught errors that swallow context, empty catch blocks, promises without rejection handling
81
+ - **Data loss paths**: write operations without confirmation, delete without soft-delete, truncation without backup
82
+ - **Edge cases**: empty input, null/undefined, zero, negative numbers, empty arrays, Unicode, timezone boundaries
77
83
  - Check for: logic errors, off-by-one errors, incorrect conditionals, broken async/await patterns
78
- - Check for: missing error handling, uncaught promise rejections, silent failures
79
- - Check for: edge cases — empty input, null/undefined, zero, negative numbers, empty arrays
80
84
  - Flag each finding with file path, line number, and severity
81
85
 
82
86
  **Common patterns to flag:**
@@ -162,6 +166,39 @@ Identify gaps in test coverage.
162
166
  - If untested code found: call `rune:test` with specific instructions on what to test
163
167
  - Flag as HIGH if business logic is untested, MEDIUM if utility code is untested
164
168
 
169
+ ### Step 5.5: Two-Stage Review Gate
170
+
171
+ Separate spec compliance from code quality. Most reviews conflate both — this gate forces the distinction.
172
+
173
+ **Stage 1 — Spec Compliance (check FIRST)**
174
+
175
+ Before evaluating code quality, verify the implementation matches what was asked:
176
+
177
+ - Load the originating plan, task, ticket, or `requirements.md` if available
178
+ - Does the implementation cover every acceptance criterion? Check each one explicitly
179
+ - Is there **under-engineering** — requirements stated but not implemented?
180
+ - Is there **over-engineering** — abstractions, generalization, or features beyond scope?
181
+ - Does the file/function structure match what the plan specified?
182
+
183
+ Flag spec deviations as HIGH — clean code that misses requirements ships broken products.
184
+
185
+ ```
186
+ # Spec Compliance Checklist
187
+ [ ] All acceptance criteria from plan/ticket covered
188
+ [ ] No stated requirements missing from implementation
189
+ [ ] No unrequested features added (scope creep)
190
+ [ ] API surface matches what was specified (signatures, endpoints, return types)
191
+ [ ] File structure matches plan (no renamed or relocated files without justification)
192
+ ```
193
+
194
+ If spec violations found: document them separately from code quality findings in the report. Label as `SPEC-MISS` or `SPEC-CREEP`.
195
+
196
+ **Stage 2 — Code Quality**
197
+
198
+ Proceed to Step 6 only after Stage 1 passes. Code quality findings (bugs, patterns, security, coverage) are the existing Steps 2–5 above.
199
+
200
+ The review report MUST show both stages: spec compliance verdict first, then code quality findings.
201
+
165
202
  ### Step 6: Report
166
203
 
167
204
  Produce a structured severity-ranked report.
@@ -181,6 +218,7 @@ After reporting:
181
218
  - If any CRITICAL findings: call `rune:fix` immediately with the finding details
182
219
  - If any HIGH findings: call `rune:fix` with the finding details
183
220
  - If untested code: call `rune:test` with specific coverage gaps identified
221
+ - Call `neural-memory` (Capture Mode) to save any novel code quality patterns or recurring issues found.
184
222
 
185
223
  ## Framework-Specific Checks
186
224
 
@@ -338,6 +376,7 @@ LOW — style inconsistency, naming suggestion, minor refactor opportunity
338
376
  | Expanding review scope beyond the diff | MEDIUM | Limit to `git diff` scope — do not creep into adjacent unchanged files |
339
377
  | Security finding without sentinel escalation | HIGH | Any auth/crypto/payment code touched → MUST call rune:sentinel |
340
378
  | Skipping UI anti-pattern checks for frontend changes | MEDIUM | Any .tsx/.jsx/.svelte/.vue in diff → MUST run UI/UX Anti-Pattern Checks section |
379
+ | Skipping spec compliance check (Step 5.5 Stage 1) | HIGH | Code quality without spec check ships clean code that does the wrong thing — always load the plan/ticket before reviewing quality |
341
380
  | Treating purple/indigo accent as "just a color choice" | MEDIUM | It is a documented AI-generated UI signature — always flag for domain justification |
342
381
 
343
382
  ## Done When
@@ -3,7 +3,7 @@ name: review-intake
3
3
  description: Use when receiving code review feedback, PR comments, or external suggestions before implementing any changes. Prevents blind implementation, enforces verification-first discipline.
4
4
  metadata:
5
5
  author: runedev
6
- version: "1.0.0"
6
+ version: "1.1.0"
7
7
  layer: L2
8
8
  model: sonnet
9
9
  group: quality
@@ -112,9 +112,25 @@ UNCLEAR: "Need clarification on [specific aspect]."
112
112
  BANNED: "You're absolutely right!"
113
113
  BANNED: "Great point!" / "Great catch!"
114
114
  BANNED: "Thanks for catching that!"
115
+ BANNED: "I agree with your suggestion"
116
+ BANNED: "That's a good idea"
117
+ BANNED: "I see what you mean"
118
+ BANNED: Any sentence that adds no technical information
115
119
  BANNED: Any performative gratitude — actions speak, not words.
116
120
  ```
117
121
 
122
+ <HARD-GATE>
123
+ Every response to a review item MUST start with an ACTION VERB:
124
+ - "Fixed — [description]"
125
+ - "Reverted — [reason]"
126
+ - "Deferred — [reason + ticket]"
127
+ - "Pushed back — [technical evidence]"
128
+ - "Clarifying — [question]"
129
+
130
+ Responses starting with praise, agreement, or social pleasantries are BLOCKED.
131
+ This is a professional code review, not a conversation — signal with actions, not words.
132
+ </HARD-GATE>
133
+
118
134
  When replying to GitHub PR comments, reply in the thread:
119
135
  ```bash
120
136
  gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies \