@rune-kit/rune 2.8.0 → 2.11.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 (287) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +68 -34
  3. package/agents/adversary.md +27 -0
  4. package/agents/architect.md +19 -29
  5. package/agents/asset-creator.md +18 -4
  6. package/agents/audit.md +25 -4
  7. package/agents/autopsy.md +19 -4
  8. package/agents/ba.md +35 -0
  9. package/agents/brainstorm.md +31 -4
  10. package/agents/browser-pilot.md +21 -4
  11. package/agents/coder.md +21 -29
  12. package/agents/completion-gate.md +20 -4
  13. package/agents/constraint-check.md +18 -4
  14. package/agents/context-engine.md +22 -4
  15. package/agents/context-pack.md +32 -0
  16. package/agents/cook.md +41 -4
  17. package/agents/db.md +19 -4
  18. package/agents/debug.md +33 -4
  19. package/agents/dependency-doctor.md +20 -4
  20. package/agents/deploy.md +27 -4
  21. package/agents/design.md +22 -4
  22. package/agents/doc-processor.md +27 -0
  23. package/agents/docs-seeker.md +19 -4
  24. package/agents/docs.md +31 -0
  25. package/agents/fix.md +37 -4
  26. package/agents/git.md +29 -0
  27. package/agents/hallucination-guard.md +20 -4
  28. package/agents/incident.md +21 -4
  29. package/agents/integrity-check.md +18 -4
  30. package/agents/journal.md +19 -4
  31. package/agents/launch.md +32 -4
  32. package/agents/logic-guardian.md +26 -11
  33. package/agents/marketing.md +23 -4
  34. package/agents/mcp-builder.md +26 -0
  35. package/agents/neural-memory.md +30 -0
  36. package/agents/onboard.md +22 -4
  37. package/agents/perf.md +21 -4
  38. package/agents/plan.md +29 -4
  39. package/agents/preflight.md +22 -4
  40. package/agents/problem-solver.md +20 -4
  41. package/agents/rescue.md +23 -4
  42. package/agents/research.md +19 -4
  43. package/agents/researcher.md +19 -29
  44. package/agents/retro.md +32 -0
  45. package/agents/review-intake.md +20 -4
  46. package/agents/review.md +32 -4
  47. package/agents/reviewer.md +20 -28
  48. package/agents/safeguard.md +19 -4
  49. package/agents/sast.md +18 -4
  50. package/agents/scaffold.md +41 -0
  51. package/agents/scanner.md +19 -28
  52. package/agents/scope-guard.md +18 -4
  53. package/agents/scout.md +23 -4
  54. package/agents/sentinel-env.md +26 -0
  55. package/agents/sentinel.md +33 -4
  56. package/agents/sequential-thinking.md +20 -4
  57. package/agents/session-bridge.md +24 -4
  58. package/agents/skill-forge.md +22 -4
  59. package/agents/skill-router.md +26 -4
  60. package/agents/slides.md +24 -0
  61. package/agents/surgeon.md +19 -4
  62. package/agents/team.md +30 -4
  63. package/agents/test.md +36 -4
  64. package/agents/trend-scout.md +17 -4
  65. package/agents/verification.md +20 -4
  66. package/agents/video-creator.md +20 -4
  67. package/agents/watchdog.md +19 -4
  68. package/agents/worktree.md +17 -4
  69. package/commands/rune.md +168 -168
  70. package/compiler/__tests__/analytics.test.js +370 -0
  71. package/compiler/adapters/openclaw.js +2 -2
  72. package/compiler/analytics.js +385 -0
  73. package/compiler/bin/rune.js +68 -2
  74. package/compiler/dashboard.js +883 -0
  75. package/compiler/transforms/branding.js +1 -1
  76. package/contexts/dev.md +34 -34
  77. package/contexts/research.md +43 -43
  78. package/contexts/review.md +55 -55
  79. package/extensions/ai-ml/PACK.md +88 -88
  80. package/extensions/ai-ml/skills/ai-agents.md +172 -172
  81. package/extensions/ai-ml/skills/code-sandbox.md +187 -187
  82. package/extensions/ai-ml/skills/deep-research.md +146 -146
  83. package/extensions/ai-ml/skills/embedding-search.md +66 -66
  84. package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -74
  85. package/extensions/ai-ml/skills/llm-architect.md +125 -125
  86. package/extensions/ai-ml/skills/llm-integration.md +64 -64
  87. package/extensions/ai-ml/skills/prompt-patterns.md +72 -72
  88. package/extensions/ai-ml/skills/rag-patterns.md +66 -66
  89. package/extensions/ai-ml/skills/web-extraction.md +114 -114
  90. package/extensions/analytics/PACK.md +92 -92
  91. package/extensions/analytics/skills/ab-testing.md +72 -72
  92. package/extensions/analytics/skills/dashboard-patterns.md +83 -83
  93. package/extensions/analytics/skills/data-validation.md +68 -68
  94. package/extensions/analytics/skills/funnel-analysis.md +81 -81
  95. package/extensions/analytics/skills/sql-patterns.md +57 -57
  96. package/extensions/analytics/skills/statistical-analysis.md +79 -79
  97. package/extensions/analytics/skills/tracking-setup.md +71 -71
  98. package/extensions/backend/PACK.md +104 -104
  99. package/extensions/backend/skills/api-patterns.md +84 -84
  100. package/extensions/backend/skills/async-pipeline.md +193 -193
  101. package/extensions/backend/skills/auth-patterns.md +97 -97
  102. package/extensions/backend/skills/background-jobs.md +133 -133
  103. package/extensions/backend/skills/caching-patterns.md +108 -108
  104. package/extensions/backend/skills/cli-generation.md +133 -133
  105. package/extensions/backend/skills/database-patterns.md +87 -87
  106. package/extensions/backend/skills/middleware-patterns.md +104 -104
  107. package/extensions/chrome-ext/PACK.md +93 -93
  108. package/extensions/chrome-ext/skills/cws-preflight.md +143 -143
  109. package/extensions/chrome-ext/skills/cws-publish.md +104 -104
  110. package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -251
  111. package/extensions/chrome-ext/skills/ext-messaging.md +139 -139
  112. package/extensions/chrome-ext/skills/ext-storage.md +133 -133
  113. package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -164
  114. package/extensions/content/PACK.md +96 -96
  115. package/extensions/content/skills/blog-patterns.md +88 -88
  116. package/extensions/content/skills/cms-integration.md +131 -131
  117. package/extensions/content/skills/content-scoring.md +107 -107
  118. package/extensions/content/skills/i18n.md +83 -83
  119. package/extensions/content/skills/mdx-authoring.md +137 -137
  120. package/extensions/content/skills/reference.md +1014 -1014
  121. package/extensions/content/skills/seo-patterns.md +67 -67
  122. package/extensions/content/skills/video-repurpose.md +153 -153
  123. package/extensions/devops/PACK.md +101 -101
  124. package/extensions/devops/skills/chaos-testing.md +67 -67
  125. package/extensions/devops/skills/ci-cd.md +75 -75
  126. package/extensions/devops/skills/docker.md +58 -58
  127. package/extensions/devops/skills/edge-serverless.md +163 -163
  128. package/extensions/devops/skills/infra-as-code.md +158 -158
  129. package/extensions/devops/skills/kubernetes.md +110 -110
  130. package/extensions/devops/skills/monitoring.md +57 -57
  131. package/extensions/devops/skills/server-setup.md +64 -64
  132. package/extensions/devops/skills/ssl-domain.md +42 -42
  133. package/extensions/ecommerce/PACK.md +116 -116
  134. package/extensions/ecommerce/skills/cart-system.md +79 -79
  135. package/extensions/ecommerce/skills/inventory-mgmt.md +102 -102
  136. package/extensions/ecommerce/skills/order-management.md +126 -126
  137. package/extensions/ecommerce/skills/payment-integration.md +472 -472
  138. package/extensions/ecommerce/skills/shopify-dev.md +69 -69
  139. package/extensions/ecommerce/skills/subscription-billing.md +93 -93
  140. package/extensions/ecommerce/skills/tax-compliance.md +117 -117
  141. package/extensions/gamedev/PACK.md +142 -142
  142. package/extensions/gamedev/skills/asset-pipeline.md +74 -74
  143. package/extensions/gamedev/skills/audio-system.md +129 -129
  144. package/extensions/gamedev/skills/camera-system.md +87 -87
  145. package/extensions/gamedev/skills/ecs.md +98 -98
  146. package/extensions/gamedev/skills/game-loops.md +72 -72
  147. package/extensions/gamedev/skills/input-system.md +199 -199
  148. package/extensions/gamedev/skills/multiplayer.md +180 -180
  149. package/extensions/gamedev/skills/particles.md +105 -105
  150. package/extensions/gamedev/skills/physics-engine.md +89 -89
  151. package/extensions/gamedev/skills/scene-management.md +146 -146
  152. package/extensions/gamedev/skills/threejs-patterns.md +90 -90
  153. package/extensions/gamedev/skills/webgl.md +71 -71
  154. package/extensions/mobile/PACK.md +106 -106
  155. package/extensions/mobile/skills/app-store-connect.md +152 -152
  156. package/extensions/mobile/skills/app-store-prep.md +66 -66
  157. package/extensions/mobile/skills/deep-linking.md +109 -109
  158. package/extensions/mobile/skills/flutter.md +60 -60
  159. package/extensions/mobile/skills/ios-build-pipeline.md +142 -142
  160. package/extensions/mobile/skills/native-bridge.md +66 -66
  161. package/extensions/mobile/skills/ota-updates.md +97 -97
  162. package/extensions/mobile/skills/push-notifications.md +111 -111
  163. package/extensions/mobile/skills/react-native.md +82 -82
  164. package/extensions/saas/PACK.md +116 -116
  165. package/extensions/saas/skills/billing-integration.md +200 -200
  166. package/extensions/saas/skills/feature-flags.md +130 -130
  167. package/extensions/saas/skills/multi-tenant.md +103 -103
  168. package/extensions/saas/skills/onboarding-flow.md +139 -139
  169. package/extensions/saas/skills/subscription-flow.md +95 -95
  170. package/extensions/saas/skills/team-management.md +144 -144
  171. package/extensions/security/PACK.md +99 -99
  172. package/extensions/security/skills/api-security.md +140 -140
  173. package/extensions/security/skills/compliance.md +68 -68
  174. package/extensions/security/skills/owasp-audit.md +64 -64
  175. package/extensions/security/skills/pentest-patterns.md +77 -77
  176. package/extensions/security/skills/secret-mgmt.md +65 -65
  177. package/extensions/security/skills/supply-chain.md +65 -65
  178. package/extensions/trading/PACK.md +80 -80
  179. package/extensions/trading/skills/chart-components.md +55 -55
  180. package/extensions/trading/skills/experiment-loop.md +125 -125
  181. package/extensions/trading/skills/fintech-patterns.md +47 -47
  182. package/extensions/trading/skills/indicator-library.md +58 -58
  183. package/extensions/trading/skills/quant-analysis.md +111 -111
  184. package/extensions/trading/skills/realtime-data.md +58 -58
  185. package/extensions/trading/skills/trade-logic.md +104 -104
  186. package/extensions/ui/PACK.md +130 -130
  187. package/extensions/ui/skills/a11y-audit.md +91 -91
  188. package/extensions/ui/skills/animation-patterns.md +127 -106
  189. package/extensions/ui/skills/component-patterns.md +100 -75
  190. package/extensions/ui/skills/design-decision.md +108 -108
  191. package/extensions/ui/skills/design-system.md +68 -68
  192. package/extensions/ui/skills/landing-patterns.md +155 -155
  193. package/extensions/ui/skills/palette-picker.md +173 -173
  194. package/extensions/ui/skills/react-health.md +90 -90
  195. package/extensions/ui/skills/type-system.md +125 -125
  196. package/extensions/ui/skills/web-vitals.md +153 -153
  197. package/extensions/zalo/PACK.md +145 -145
  198. package/extensions/zalo/skills/zalo-oa-mcp.md +317 -317
  199. package/extensions/zalo/skills/zalo-oa-messaging.md +429 -429
  200. package/extensions/zalo/skills/zalo-oa-setup.md +236 -236
  201. package/extensions/zalo/skills/zalo-oa-webhook.md +189 -189
  202. package/extensions/zalo/skills/zalo-personal-messaging.md +194 -194
  203. package/extensions/zalo/skills/zalo-personal-setup.md +153 -153
  204. package/extensions/zalo/skills/zalo-rate-guard.md +219 -219
  205. package/hooks/auto-format/index.cjs +48 -48
  206. package/hooks/context-watch/index.cjs +95 -68
  207. package/hooks/hooks.json +111 -111
  208. package/hooks/metrics-collector/index.cjs +86 -42
  209. package/hooks/post-session-reflect/index.cjs +189 -153
  210. package/hooks/pre-compact/index.cjs +95 -95
  211. package/hooks/run-hook.cmd +1 -1
  212. package/hooks/secrets-scan/index.cjs +100 -100
  213. package/hooks/session-start/index.cjs +71 -65
  214. package/hooks/typecheck/index.cjs +65 -65
  215. package/package.json +63 -63
  216. package/references/ui-pro-max-data/LICENSE-UI-PRO-MAX +21 -21
  217. package/references/ui-pro-max-data/charts.csv +26 -26
  218. package/references/ui-pro-max-data/colors.csv +161 -161
  219. package/references/ui-pro-max-data/styles.csv +68 -68
  220. package/references/ui-pro-max-data/typography.csv +74 -74
  221. package/references/ui-pro-max-data/ui-reasoning.csv +162 -162
  222. package/references/ui-pro-max-data/ux-guidelines.csv +99 -99
  223. package/skills/adversary/SKILL.md +283 -283
  224. package/skills/asset-creator/SKILL.md +157 -157
  225. package/skills/audit/SKILL.md +148 -2
  226. package/skills/autopsy/SKILL.md +335 -259
  227. package/skills/autopsy/references/repo-analysis-patterns.md +113 -0
  228. package/skills/ba/SKILL.md +72 -2
  229. package/skills/brainstorm/SKILL.md +342 -341
  230. package/skills/browser-pilot/SKILL.md +168 -168
  231. package/skills/constraint-check/SKILL.md +165 -165
  232. package/skills/context-engine/SKILL.md +404 -404
  233. package/skills/cook/SKILL.md +917 -834
  234. package/skills/cook/references/output-format.md +33 -0
  235. package/skills/db/SKILL.md +273 -272
  236. package/skills/debug/SKILL.md +465 -443
  237. package/skills/dependency-doctor/SKILL.md +265 -235
  238. package/skills/deploy/SKILL.md +274 -231
  239. package/skills/design/DESIGN-REFERENCE.md +365 -365
  240. package/skills/design/SKILL.md +589 -482
  241. package/skills/doc-processor/SKILL.md +254 -254
  242. package/skills/docs/SKILL.md +374 -373
  243. package/skills/docs-seeker/SKILL.md +177 -177
  244. package/skills/fix/SKILL.md +330 -308
  245. package/skills/git/SKILL.md +339 -339
  246. package/skills/graft/SKILL.md +352 -0
  247. package/skills/graft/references/challenge-framework.md +98 -0
  248. package/skills/graft/references/mode-decision.md +44 -0
  249. package/skills/hallucination-guard/SKILL.md +219 -219
  250. package/skills/incident/SKILL.md +254 -251
  251. package/skills/integrity-check/SKILL.md +169 -169
  252. package/skills/journal/SKILL.md +240 -238
  253. package/skills/launch/SKILL.md +344 -342
  254. package/skills/logic-guardian/SKILL.md +251 -251
  255. package/skills/marketing/SKILL.md +290 -245
  256. package/skills/mcp-builder/SKILL.md +425 -423
  257. package/skills/mcp-builder/references/auto-discovery-pattern.md +169 -0
  258. package/skills/neural-memory/SKILL.md +362 -362
  259. package/skills/onboard/SKILL.md +404 -403
  260. package/skills/perf/SKILL.md +346 -346
  261. package/skills/plan/SKILL.md +433 -370
  262. package/skills/plan/references/feature-map.md +84 -0
  263. package/skills/preflight/SKILL.md +415 -396
  264. package/skills/problem-solver/SKILL.md +380 -284
  265. package/skills/rescue/SKILL.md +474 -450
  266. package/skills/retro/SKILL.md +5 -1
  267. package/skills/review/SKILL.md +612 -535
  268. package/skills/review-intake/SKILL.md +249 -249
  269. package/skills/safeguard/SKILL.md +200 -200
  270. package/skills/sast/SKILL.md +190 -190
  271. package/skills/scaffold/SKILL.md +328 -286
  272. package/skills/scope-guard/SKILL.md +180 -162
  273. package/skills/scout/SKILL.md +263 -263
  274. package/skills/sentinel/SKILL.md +382 -353
  275. package/skills/sentinel-env/SKILL.md +254 -254
  276. package/skills/sequential-thinking/SKILL.md +234 -234
  277. package/skills/session-bridge/SKILL.md +543 -397
  278. package/skills/skill-forge/SKILL.md +581 -539
  279. package/skills/skill-router/{skill.md → SKILL.md} +30 -2
  280. package/skills/surgeon/SKILL.md +215 -215
  281. package/skills/team/SKILL.md +556 -514
  282. package/skills/test/SKILL.md +614 -587
  283. package/skills/trend-scout/SKILL.md +145 -145
  284. package/skills/verification/SKILL.md +326 -325
  285. package/skills/video-creator/SKILL.md +201 -201
  286. package/skills/watchdog/SKILL.md +168 -168
  287. package/skills/worktree/SKILL.md +140 -140
@@ -1,238 +1,240 @@
1
- ---
2
- name: journal
3
- description: Persistent state tracking and Architecture Decision Records across sessions. Manages progress state, module health, dependency graphs, and ADRs for any workflow.
4
- metadata:
5
- author: runedev
6
- version: "0.3.0"
7
- layer: L3
8
- model: haiku
9
- group: state
10
- tools: "Read, Write, Edit, Glob, Grep"
11
- ---
12
-
13
- # journal
14
-
15
- ## Purpose
16
-
17
- Persistent state tracking and Architecture Decision Records across sessions. Journal manages the state files that allow any workflow to span multiple sessions without losing progress — rescue operations, feature development, deploy decisions, or audit findings. Separate from session-bridge which handles general context injection — journal writes durable, human-readable state that survives compaction.
18
-
19
- ## Triggers
20
-
21
- - Called by any skill needing decision persistence or progress tracking
22
- - Auto-trigger: after surgeon completes a module, after deploy, after audit phases
23
-
24
- ## Calls (outbound)
25
-
26
- None — pure L3 state management utility.
27
-
28
- ## Called By (inbound)
29
-
30
- - `surgeon` (L2): update progress after each surgery session
31
- - `rescue` (L1): read state for rescue dashboard
32
- - `autopsy` (L2): save initial health assessment
33
- - `cook` (L1): record key architectural decisions made during feature development
34
- - `deploy` (L2): record deploy decision, rollback plan, and post-deploy status
35
- - `audit` (L2): save AUDIT-REPORT.md and record health trend entry
36
- - `incident` (L2): record incident timeline and postmortem
37
- - `skill-forge` (L2): record skill creation decisions and rationale
38
-
39
- ## Files Managed
40
-
41
- ```
42
- .rune/RESCUE-STATE.md — Human-readable rescue progress (loaded into context)
43
- .rune/module-status.json — Machine-readable module states
44
- .rune/dependency-graph.mmd Mermaid diagram, color-coded by health
45
- .rune/adr/ Architecture Decision Records (one per decision)
46
- .rune/risks/ Risk Register entries (one per identified risk)
47
- ```
48
-
49
- ## Execution
50
-
51
- ### Step 1 — Load state
52
-
53
- Use `Read` to load current rescue state:
54
-
55
- ```
56
- Read: .rune/RESCUE-STATE.md
57
- Read: .rune/module-status.json
58
- ```
59
-
60
- If either file does not exist, initialize it with an empty template:
61
-
62
- - `RESCUE-STATE.md`: create with header `# Rescue State\n\n**Started**: [date]\n**Phase**: 1\n`
63
- - `module-status.json`: create with `{ "modules": [], "lastUpdated": "[iso-date]" }`
64
-
65
- Parse `module-status.json` to extract current module states and health scores.
66
-
67
- ### Step 2 Update progress
68
-
69
- For each module that was completed during this session:
70
-
71
- 1. Locate the module entry in the parsed `module-status.json`
72
- 2. Update its fields:
73
- - `status`: set to `"complete"` (or `"in-progress"` / `"blocked"` as appropriate)
74
- - `healthScore`: set to the post-surgery score (0-100)
75
- - `completedAt`: set to current ISO timestamp
76
- 3. Mark the active module pointer in `RESCUE-STATE.md` update the `**Current Module**` line to the next pending module
77
-
78
- Use `Write` to save the updated `module-status.json`.
79
-
80
- Use `Edit` to update the relevant lines in `RESCUE-STATE.md` (current phase, current module, counts of completed vs pending).
81
-
82
- ### Step 3 Record decisions
83
-
84
- For each architectural decision or trade-off made during this session (applies to any workflow feature development, deploy, rescue, audit):
85
-
86
- 1. Generate an ADR filename: `.rune/adr/ADR-[NNN]-[slug].md` where NNN is the next sequential number
87
- 2. Use `Write` to create the ADR file with this format:
88
-
89
- ```markdown
90
- # ADR-[NNN]: [Decision Title]
91
-
92
- **Date**: [YYYY-MM-DD]
93
- **Status**: Accepted
94
- **Workflow**: [rescue | cook | deploy | audit | other]
95
- **Scope**: [affected module, feature, or system area]
96
-
97
- ## Context
98
- [Why this decision was needed — what problem or trade-off prompted it]
99
-
100
- ## Decision
101
- [What was decided — be specific, not "we chose X" but "we chose X over Y"]
102
-
103
- ## Rationale
104
- [Why this approach over alternatives — cite specific constraints or evidence]
105
-
106
- ## Consequences
107
- [Impact on files/modules/future work — include rollback path if relevant]
108
-
109
- ## Rejected Alternatives
110
- [List what was considered but NOT chosen, and why. This prevents future sessions from re-visiting dead ends.]
111
- - **[Alternative A]**: Rejected because [specific reason — constraint, performance, complexity]
112
- - **[Alternative B]**: Rejected because [specific reason]. May reconsider if [condition changes].
113
- ```
114
-
115
- ### Step 3.5 — Record risks
116
-
117
- For each risk identified during the session (technical, schedule, dependency, security):
118
-
119
- 1. Generate a risk filename: `.rune/risks/RISK-[NNN]-[slug].md` where NNN is next sequential number
120
- 2. Use `Write` to create the risk file:
121
-
122
- ```markdown
123
- # RISK-[NNN]: [Risk Title]
124
-
125
- **Date Identified**: [YYYY-MM-DD]
126
- **Identified By**: [workflow — cook | plan | deploy | audit | adversary]
127
- **Severity**: Critical | High | Medium | Low
128
- **Likelihood**: High | Medium | Low
129
- **Status**: Open | Mitigated | Accepted | Closed
130
-
131
- ## Description
132
- [What could go wrong — specific scenario, not vague "things might break"]
133
-
134
- ## Impact
135
- [What happens if this risk materializes — quantify if possible]
136
-
137
- ## Mitigation
138
- [Actions to reduce likelihood or impact]
139
- - [ ] [Action 1 — owner, deadline]
140
- - [ ] [Action 2]
141
-
142
- ## Trigger Conditions
143
- [How to detect this risk is materializing — monitoring, alerts, symptoms]
144
-
145
- ## Contingency
146
- [What to do if risk materializes despite mitigation — the Plan B]
147
- ```
148
-
149
- 3. **Risk classification matrix**:
150
-
151
- | Likelihood \ Severity | Critical | High | Medium | Low |
152
- |----------------------|----------|------|--------|-----|
153
- | **High** | 🔴 Immediate action | 🔴 This sprint | 🟡 This quarter | Backlog |
154
- | **Medium** | 🔴 This sprint | 🟡 This quarter | ⚪ Backlog | ⚪ Accept |
155
- | **Low** | 🟡 This quarter | Backlog | Accept | ⚪ Accept |
156
-
157
- 4. Risks marked 🔴 MUST have mitigation actions with deadlines. ⚪ Accept = documented acknowledgment, no action required.
158
-
159
- ### Step 4 Update dependency graph
160
-
161
- If any module dependencies changed during this session (new imports, removed dependencies, refactored interfaces):
162
-
163
- Use `Read` on `.rune/dependency-graph.mmd` to load the current Mermaid diagram.
164
-
165
- Use `Edit` to update the affected node entries:
166
- - Change node color/style to reflect new health status (e.g., `style ModuleName fill:#00d084` for healthy, `fill:#ff6b6b` for broken)
167
- - Add or remove edges as dependencies changed
168
-
169
- Use `Write` to save the updated `.rune/dependency-graph.mmd`.
170
-
171
- ### Step 5 Save state
172
-
173
- Use `Write` to finalize any remaining state file changes not already saved in Steps 2-4.
174
-
175
- Confirm all four managed files are consistent:
176
- - `RESCUE-STATE.md` reflects current phase and module
177
- - `module-status.json` has updated scores and timestamps
178
- - ADR files exist for all decisions made
179
- - `dependency-graph.mmd` reflects current module relationships
180
-
181
- ### Step 6 Report
182
-
183
- Emit the journal update summary to the calling skill.
184
-
185
- ## Output Format
186
-
187
- ```
188
- ## Journal Update
189
- - **Phase**: [current rescue phase]
190
- - **Module**: [current module]
191
- - **Health**: [before] [after]
192
- - **ADRs Written**: [count]
193
- - **Risks Logged**: [count] ([severity breakdown])
194
- - **Files Updated**: [list of .rune/ files modified]
195
- - **Next Module**: [next in queue, or "rescue complete"]
196
- ```
197
-
198
- ## Context Recovery (new session)
199
-
200
- ```
201
- 1. Read .rune/RESCUE-STATE.md → full rescue history
202
- 2. Read .rune/module-status.json → module states and health scores
203
- 3. Read .rune/risks/ open risks and their status
204
- 4. Read git log latest changes since last session
205
- 5. Read CLAUDE.md project conventions
206
- Result: Zero context loss across rescue sessions
207
- ```
208
-
209
- ## Constraints
210
-
211
- 1. MUST record decisions with rationale — not just "decided to use X"
212
- 2. MUST timestamp all entries
213
- 3. MUST NOT log sensitive data (secrets, tokens, credentials)
214
- 4. MUST work for any workflow — never require rescue-specific fields to be present
215
-
216
- ## Sharp Edges
217
-
218
- Known failure modes for this skill. Check these before declaring done.
219
-
220
- | Failure Mode | Severity | Mitigation |
221
- |---|---|---|
222
- | ADR written from memory instead of actual session events | HIGH | Only record decisions that were explicitly made in this session — don't reconstruct |
223
- | RESCUE-STATE.md initialized without content when called from non-rescue workflows | MEDIUM | If caller is not rescue/surgeon, skip RESCUE-STATE.md initialization — use progress.md instead |
224
- | Overwriting human-written ADR content on re-run | CRITICAL | MUST check if ADR-[NNN].md exists before writing never overwrite, increment NNN |
225
- | Empty ADR Rationale field ("decided to use X") | MEDIUM | Constraint 1 blocks this re-prompt for rationale before writing |
226
-
227
- ## Done When
228
-
229
- - All decisions from the session recorded as ADR files with rationale
230
- - All identified risks recorded as RISK files with severity, mitigation, and trigger conditions
231
- - Progress state updated (module status, phase, or deploy event as appropriate)
232
- - Dependency graph updated if module relationships changed
233
- - Journal Update summary emitted to calling skill
234
- - No existing ADR files overwritten
235
-
236
- ## Cost Profile
237
-
238
- ~200-500 tokens input, ~100-300 tokens output. Haiku. Pure file management.
1
+ ---
2
+ name: journal
3
+ description: Persistent state tracking and Architecture Decision Records across sessions. Manages progress state, module health, dependency graphs, and ADRs for any workflow.
4
+ metadata:
5
+ author: runedev
6
+ version: "0.3.0"
7
+ layer: L3
8
+ model: haiku
9
+ group: state
10
+ tools: "Read, Write, Edit, Glob, Grep"
11
+ listen: graft.complete
12
+ ---
13
+
14
+ # journal
15
+
16
+ ## Purpose
17
+
18
+ Persistent state tracking and Architecture Decision Records across sessions. Journal manages the state files that allow any workflow to span multiple sessions without losing progress — rescue operations, feature development, deploy decisions, or audit findings. Separate from session-bridge which handles general context injection — journal writes durable, human-readable state that survives compaction.
19
+
20
+ ## Triggers
21
+
22
+ - Called by any skill needing decision persistence or progress tracking
23
+ - Auto-trigger: after surgeon completes a module, after deploy, after audit phases
24
+
25
+ ## Calls (outbound)
26
+
27
+ None — pure L3 state management utility.
28
+
29
+ ## Called By (inbound)
30
+
31
+ - `surgeon` (L2): update progress after each surgery session
32
+ - `rescue` (L1): read state for rescue dashboard
33
+ - `autopsy` (L2): save initial health assessment
34
+ - `cook` (L1): record key architectural decisions made during feature development
35
+ - `deploy` (L2): record deploy decision, rollback plan, and post-deploy status
36
+ - `audit` (L2): save AUDIT-REPORT.md and record health trend entry
37
+ - `incident` (L2): record incident timeline and postmortem
38
+ - `skill-forge` (L2): record skill creation decisions and rationale
39
+ - `graft` (L2): auto-log graft operations — source URL, mode, challenge score, files changed
40
+
41
+ ## Files Managed
42
+
43
+ ```
44
+ .rune/RESCUE-STATE.md Human-readable rescue progress (loaded into context)
45
+ .rune/module-status.json Machine-readable module states
46
+ .rune/dependency-graph.mmd Mermaid diagram, color-coded by health
47
+ .rune/adr/ — Architecture Decision Records (one per decision)
48
+ .rune/risks/ — Risk Register entries (one per identified risk)
49
+ ```
50
+
51
+ ## Execution
52
+
53
+ ### Step 1 Load state
54
+
55
+ Use `Read` to load current rescue state:
56
+
57
+ ```
58
+ Read: .rune/RESCUE-STATE.md
59
+ Read: .rune/module-status.json
60
+ ```
61
+
62
+ If either file does not exist, initialize it with an empty template:
63
+
64
+ - `RESCUE-STATE.md`: create with header `# Rescue State\n\n**Started**: [date]\n**Phase**: 1\n`
65
+ - `module-status.json`: create with `{ "modules": [], "lastUpdated": "[iso-date]" }`
66
+
67
+ Parse `module-status.json` to extract current module states and health scores.
68
+
69
+ ### Step 2 Update progress
70
+
71
+ For each module that was completed during this session:
72
+
73
+ 1. Locate the module entry in the parsed `module-status.json`
74
+ 2. Update its fields:
75
+ - `status`: set to `"complete"` (or `"in-progress"` / `"blocked"` as appropriate)
76
+ - `healthScore`: set to the post-surgery score (0-100)
77
+ - `completedAt`: set to current ISO timestamp
78
+ 3. Mark the active module pointer in `RESCUE-STATE.md` update the `**Current Module**` line to the next pending module
79
+
80
+ Use `Write` to save the updated `module-status.json`.
81
+
82
+ Use `Edit` to update the relevant lines in `RESCUE-STATE.md` (current phase, current module, counts of completed vs pending).
83
+
84
+ ### Step 3Record decisions
85
+
86
+ For each architectural decision or trade-off made during this session (applies to any workflow — feature development, deploy, rescue, audit):
87
+
88
+ 1. Generate an ADR filename: `.rune/adr/ADR-[NNN]-[slug].md` where NNN is the next sequential number
89
+ 2. Use `Write` to create the ADR file with this format:
90
+
91
+ ```markdown
92
+ # ADR-[NNN]: [Decision Title]
93
+
94
+ **Date**: [YYYY-MM-DD]
95
+ **Status**: Accepted
96
+ **Workflow**: [rescue | cook | deploy | audit | other]
97
+ **Scope**: [affected module, feature, or system area]
98
+
99
+ ## Context
100
+ [Why this decision was needed — what problem or trade-off prompted it]
101
+
102
+ ## Decision
103
+ [What was decided — be specific, not "we chose X" but "we chose X over Y"]
104
+
105
+ ## Rationale
106
+ [Why this approach over alternatives — cite specific constraints or evidence]
107
+
108
+ ## Consequences
109
+ [Impact on files/modules/future work — include rollback path if relevant]
110
+
111
+ ## Rejected Alternatives
112
+ [List what was considered but NOT chosen, and why. This prevents future sessions from re-visiting dead ends.]
113
+ - **[Alternative A]**: Rejected because [specific reason — constraint, performance, complexity]
114
+ - **[Alternative B]**: Rejected because [specific reason]. May reconsider if [condition changes].
115
+ ```
116
+
117
+ ### Step 3.5 Record risks
118
+
119
+ For each risk identified during the session (technical, schedule, dependency, security):
120
+
121
+ 1. Generate a risk filename: `.rune/risks/RISK-[NNN]-[slug].md` where NNN is next sequential number
122
+ 2. Use `Write` to create the risk file:
123
+
124
+ ```markdown
125
+ # RISK-[NNN]: [Risk Title]
126
+
127
+ **Date Identified**: [YYYY-MM-DD]
128
+ **Identified By**: [workflow — cook | plan | deploy | audit | adversary]
129
+ **Severity**: Critical | High | Medium | Low
130
+ **Likelihood**: High | Medium | Low
131
+ **Status**: Open | Mitigated | Accepted | Closed
132
+
133
+ ## Description
134
+ [What could go wrong — specific scenario, not vague "things might break"]
135
+
136
+ ## Impact
137
+ [What happens if this risk materializes — quantify if possible]
138
+
139
+ ## Mitigation
140
+ [Actions to reduce likelihood or impact]
141
+ - [ ] [Action 1 — owner, deadline]
142
+ - [ ] [Action 2]
143
+
144
+ ## Trigger Conditions
145
+ [How to detect this risk is materializing — monitoring, alerts, symptoms]
146
+
147
+ ## Contingency
148
+ [What to do if risk materializes despite mitigation — the Plan B]
149
+ ```
150
+
151
+ 3. **Risk classification matrix**:
152
+
153
+ | Likelihood \ Severity | Critical | High | Medium | Low |
154
+ |----------------------|----------|------|--------|-----|
155
+ | **High** | 🔴 Immediate action | 🔴 This sprint | 🟡 This quarter | ⚪ Backlog |
156
+ | **Medium** | 🔴 This sprint | 🟡 This quarter | ⚪ Backlog | ⚪ Accept |
157
+ | **Low** | 🟡 This quarter | Backlog | ⚪ Accept | Accept |
158
+
159
+ 4. Risks marked 🔴 MUST have mitigation actions with deadlines. ⚪ Accept = documented acknowledgment, no action required.
160
+
161
+ ### Step 4 Update dependency graph
162
+
163
+ If any module dependencies changed during this session (new imports, removed dependencies, refactored interfaces):
164
+
165
+ Use `Read` on `.rune/dependency-graph.mmd` to load the current Mermaid diagram.
166
+
167
+ Use `Edit` to update the affected node entries:
168
+ - Change node color/style to reflect new health status (e.g., `style ModuleName fill:#00d084` for healthy, `fill:#ff6b6b` for broken)
169
+ - Add or remove edges as dependencies changed
170
+
171
+ Use `Write` to save the updated `.rune/dependency-graph.mmd`.
172
+
173
+ ### Step 5 Save state
174
+
175
+ Use `Write` to finalize any remaining state file changes not already saved in Steps 2-4.
176
+
177
+ Confirm all four managed files are consistent:
178
+ - `RESCUE-STATE.md` reflects current phase and module
179
+ - `module-status.json` has updated scores and timestamps
180
+ - ADR files exist for all decisions made
181
+ - `dependency-graph.mmd` reflects current module relationships
182
+
183
+ ### Step 6 Report
184
+
185
+ Emit the journal update summary to the calling skill.
186
+
187
+ ## Output Format
188
+
189
+ ```
190
+ ## Journal Update
191
+ - **Phase**: [current rescue phase]
192
+ - **Module**: [current module]
193
+ - **Health**: [before] [after]
194
+ - **ADRs Written**: [count]
195
+ - **Risks Logged**: [count] ([severity breakdown])
196
+ - **Files Updated**: [list of .rune/ files modified]
197
+ - **Next Module**: [next in queue, or "rescue complete"]
198
+ ```
199
+
200
+ ## Context Recovery (new session)
201
+
202
+ ```
203
+ 1. Read .rune/RESCUE-STATE.md full rescue history
204
+ 2. Read .rune/module-status.jsonmodule states and health scores
205
+ 3. Read .rune/risks/ open risks and their status
206
+ 4. Read git log → latest changes since last session
207
+ 5. Read CLAUDE.md → project conventions
208
+ → Result: Zero context loss across rescue sessions
209
+ ```
210
+
211
+ ## Constraints
212
+
213
+ 1. MUST record decisions with rationale not just "decided to use X"
214
+ 2. MUST timestamp all entries
215
+ 3. MUST NOT log sensitive data (secrets, tokens, credentials)
216
+ 4. MUST work for any workflow — never require rescue-specific fields to be present
217
+
218
+ ## Sharp Edges
219
+
220
+ Known failure modes for this skill. Check these before declaring done.
221
+
222
+ | Failure Mode | Severity | Mitigation |
223
+ |---|---|---|
224
+ | ADR written from memory instead of actual session events | HIGH | Only record decisions that were explicitly made in this session don't reconstruct |
225
+ | RESCUE-STATE.md initialized without content when called from non-rescue workflows | MEDIUM | If caller is not rescue/surgeon, skip RESCUE-STATE.md initialization use progress.md instead |
226
+ | Overwriting human-written ADR content on re-run | CRITICAL | MUST check if ADR-[NNN].md exists before writing — never overwrite, increment NNN |
227
+ | Empty ADR Rationale field ("decided to use X") | MEDIUM | Constraint 1 blocks this — re-prompt for rationale before writing |
228
+
229
+ ## Done When
230
+
231
+ - All decisions from the session recorded as ADR files with rationale
232
+ - All identified risks recorded as RISK files with severity, mitigation, and trigger conditions
233
+ - Progress state updated (module status, phase, or deploy event as appropriate)
234
+ - Dependency graph updated if module relationships changed
235
+ - Journal Update summary emitted to calling skill
236
+ - No existing ADR files overwritten
237
+
238
+ ## Cost Profile
239
+
240
+ ~200-500 tokens input, ~100-300 tokens output. Haiku. Pure file management.