@rune-kit/rune 2.3.3 → 2.6.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 (77) hide show
  1. package/README.md +86 -17
  2. package/compiler/__tests__/pack-split.test.js +141 -1
  3. package/compiler/__tests__/parser.test.js +147 -55
  4. package/compiler/__tests__/scripts-bundling.test.js +283 -0
  5. package/compiler/__tests__/skill-index.test.js +218 -0
  6. package/compiler/__tests__/tier-override.test.js +41 -0
  7. package/compiler/adapters/antigravity.js +71 -53
  8. package/compiler/adapters/codex.js +4 -0
  9. package/compiler/adapters/cursor.js +4 -0
  10. package/compiler/adapters/generic.js +4 -0
  11. package/compiler/adapters/openclaw.js +4 -0
  12. package/compiler/adapters/opencode.js +4 -0
  13. package/compiler/adapters/windsurf.js +4 -0
  14. package/compiler/bin/rune.js +355 -355
  15. package/compiler/doctor.js +11 -1
  16. package/compiler/emitter.js +678 -386
  17. package/compiler/parser.js +267 -247
  18. package/compiler/transforms/scripts-path.js +18 -0
  19. package/extensions/zalo/PACK.md +20 -1
  20. package/extensions/zalo/references/conversation-management.md +214 -0
  21. package/extensions/zalo/references/eval-scenarios.md +157 -0
  22. package/extensions/zalo/references/listen-mode.md +237 -0
  23. package/extensions/zalo/references/mcp-production.md +274 -0
  24. package/extensions/zalo/references/multi-account-proxy.md +224 -0
  25. package/extensions/zalo/references/vietqr-banking.md +160 -0
  26. package/hooks/hooks.json +12 -0
  27. package/hooks/intent-router/index.cjs +108 -0
  28. package/hooks/pre-tool-guard/index.cjs +177 -68
  29. package/package.json +63 -64
  30. package/skills/brainstorm/SKILL.md +2 -0
  31. package/skills/cook/SKILL.md +661 -648
  32. package/skills/debug/SKILL.md +394 -392
  33. package/skills/deploy/SKILL.md +2 -0
  34. package/skills/fix/SKILL.md +283 -281
  35. package/skills/marketing/SKILL.md +3 -0
  36. package/skills/onboard/SKILL.md +7 -0
  37. package/skills/plan/SKILL.md +344 -342
  38. package/skills/preflight/SKILL.md +362 -360
  39. package/skills/review/SKILL.md +491 -489
  40. package/skills/scout/SKILL.md +1 -0
  41. package/skills/sentinel/SKILL.md +319 -296
  42. package/skills/sentinel/references/auth-crypto-reference.md +192 -0
  43. package/skills/sentinel/references/desktop-security.md +201 -0
  44. package/skills/sentinel/references/supply-chain.md +160 -0
  45. package/skills/session-bridge/SKILL.md +1 -0
  46. package/skills/slides/SKILL.md +142 -0
  47. package/skills/slides/scripts/build-deck.js +158 -0
  48. package/skills/team/SKILL.md +1 -0
  49. package/skills/test/SKILL.md +587 -585
  50. package/skills/verification/SKILL.md +1 -0
  51. package/skills/watchdog/SKILL.md +2 -0
  52. package/docs/ANTIGRAVITY-GAP-ANALYSIS.md +0 -369
  53. package/docs/ARCHITECTURE.md +0 -332
  54. package/docs/COMMUNITY-PACKS.md +0 -109
  55. package/docs/CONTRIBUTING-L4.md +0 -215
  56. package/docs/CROSS-IDE-ANALYSIS.md +0 -164
  57. package/docs/EXTENSION-TEMPLATE.md +0 -126
  58. package/docs/MESH-RULES.md +0 -34
  59. package/docs/MULTI-PLATFORM.md +0 -804
  60. package/docs/SKILL-DEPTH-AUDIT.md +0 -191
  61. package/docs/SKILL-TEMPLATE.md +0 -118
  62. package/docs/TRADE-MATRIX.md +0 -327
  63. package/docs/VERSIONING.md +0 -91
  64. package/docs/VISION.md +0 -263
  65. package/docs/assets/demo-subtitles.srt +0 -215
  66. package/docs/assets/end-card.html +0 -276
  67. package/docs/assets/mesh-diagram.html +0 -654
  68. package/docs/assets/thumbnail.html +0 -295
  69. package/docs/guides/cli.md +0 -403
  70. package/docs/guides/index.html +0 -1450
  71. package/docs/index.html +0 -1005
  72. package/docs/references/claudekit-analysis.md +0 -414
  73. package/docs/references/voltagent-analysis.md +0 -189
  74. package/docs/script.js +0 -495
  75. package/docs/skills/index.html +0 -832
  76. package/docs/style.css +0 -958
  77. package/docs/video-demo-plan.md +0 -172
@@ -1,91 +0,0 @@
1
- # Versioning Policy
2
-
3
- > **H2 Document** — Semver policy for Rune core and L4 extension packs.
4
-
5
- ---
6
-
7
- ## Core Plugin Versioning
8
-
9
- The Rune plugin uses semantic versioning (`MAJOR.MINOR.PATCH`):
10
-
11
- | Version | When to bump | Example |
12
- |---------|-------------|---------|
13
- | **PATCH** (`1.0.N`) | Bug fixes, content corrections in SKILL.md | Fixing a wrong command in `verification`, correcting a Sharp Edge |
14
- | **MINOR** (`1.N.0`) | New features, new connections, new sections added | Adding a new `## Done When` condition, new mesh connection |
15
- | **MAJOR** (`N.0.0`) | Breaking change to skill interface or output contract | Renaming a skill, changing output format structure, removing a section |
16
-
17
- **Current version:** `1.0.0` (H1 complete — 40 skills, full mesh, all constraints)
18
-
19
- ---
20
-
21
- ## What Counts as a Breaking Change?
22
-
23
- A breaking change is any modification that would cause a **calling skill to fail or produce incorrect output** without code changes on its end.
24
-
25
- ### Breaking (MAJOR bump required)
26
- - Renaming a skill (e.g., `sentinel` → `security-guard`)
27
- - Changing the structure of `## Output Format` in a way callers depend on
28
- - Removing a section that callers parse (e.g., removing `## Calls`)
29
- - Changing skill layer assignment (L2 → L3 changes invocation context)
30
- - Removing an existing connection from `## Calls` or `## Called By`
31
-
32
- ### Non-breaking (MINOR or PATCH)
33
- - Adding new skills (MINOR)
34
- - Adding new connections (MINOR)
35
- - Adding `## Sharp Edges`, `## Done When`, or documentation content (PATCH)
36
- - Fixing incorrect commands or examples (PATCH)
37
- - Clarifying constraint wording without changing behavior (PATCH)
38
- - Updating `## Cost Profile` estimates (PATCH)
39
-
40
- ---
41
-
42
- ## Skill API Stability Contract
43
-
44
- Each skill's **stable API** consists of:
45
- 1. Skill name (used in `## Calls` references across the mesh)
46
- 2. `## Output Format` structure (the contract for calling skills)
47
- 3. Layer assignment (L1/L2/L3)
48
- 4. Required input parameters (documented in `## Executable Steps`)
49
-
50
- Everything else (Sharp Edges, Done When, Cost Profile, wording improvements) is non-API and can change freely.
51
-
52
- ---
53
-
54
- ## L4 Extension Pack Versioning
55
-
56
- L4 packs version independently of the core. Each `PACK.md` has its own `metadata.version`.
57
-
58
- L4 packs start at `0.1.0` (experimental). When stable:
59
- - `1.0.0` = skill interface is locked, callers can rely on output format
60
- - Minor bumps = new skills added to pack (additive, non-breaking)
61
- - Major bumps = skill renamed, removed, or output format changed
62
-
63
- **L4 packs MUST NOT change their mesh connection interface (how they connect to L1-L3 core) in a patch release.** Connection changes are at minimum a minor version bump.
64
-
65
- ---
66
-
67
- ## Version in SKILL.md Frontmatter
68
-
69
- Every `SKILL.md` has a `metadata.version` field:
70
-
71
- ```yaml
72
- metadata:
73
- version: "0.2.0"
74
- ```
75
-
76
- This tracks the individual skill's version, independent of the plugin version. Use it to:
77
- - Track which skills have been updated in a release
78
- - Help users identify if their cached version is outdated
79
- - Signal to CI that a skill's contract changed
80
-
81
- **Convention:** When the plugin bumps MAJOR, all skill versions bump to match (e.g., all skills go to `1.0.0`). For MINOR/PATCH, only the modified skills bump.
82
-
83
- ---
84
-
85
- ## Changelog
86
-
87
- | Version | Date | Summary |
88
- |---------|------|---------|
89
- | `0.1.0` | 2026-01-15 | Initial release — 36 core skills (Waves 0-4) |
90
- | `0.2.0` | 2026-02-10 | Add perf, db, incident, design skills. Behavioral constraints. HARD-GATE pattern. |
91
- | `1.0.0` | 2026-02-25 | H1 complete — 40 skills, Sharp Edges + Done When on all skills, 0 broken mesh connections |
package/docs/VISION.md DELETED
@@ -1,263 +0,0 @@
1
- # Rune Vision
2
-
3
- > **"Less skills. Deeper connections."**
4
- >
5
- > This document is the primary decision-making compass for Rune.
6
- > When in doubt about a design direction, a new feature, or a skill addition — consult this file first.
7
- > Last updated: 2026-03-14
8
-
9
- ---
10
-
11
- ## 1. Why Rune Exists
12
-
13
- The problem is not that developers lack AI tools. The problem is that AI tools behave like interns with amnesia — capable, but stateless, siloed, and unable to hand work off cleanly.
14
-
15
- Three specific failures motivated Rune:
16
-
17
- **Failure 1: Isolation.** Most skill ecosystems are collections, not systems. 500+ skills exist that don't know each other. When `debug` finds a root cause, nothing hands that diagnosis to `fix`. The developer becomes the integration layer — which defeats the purpose of AI tooling.
18
-
19
- **Failure 2: Fragility.** Pipeline-based tools (A→B→C) break at every seam. If B fails, everything stops. There's no mesh, no alternative path, no resilience. One broken step means starting over.
20
-
21
- **Failure 3: Amnesia.** Each session starts from zero. The AI re-discovers conventions, re-reads the codebase, re-asks questions that were answered two sessions ago. Context dies at the end of every conversation.
22
-
23
- **Rune's insight:** the value is in the connections, not the nodes. A mesh of 40 well-connected skills outperforms 500 isolated ones. Resilience comes from redundant paths. Memory comes from structured persistence. The goal is not to give developers more AI tools — it's to give them an AI that behaves like a senior engineer who was actually there last week.
24
-
25
- ---
26
-
27
- ## 2. What Rune Is
28
-
29
- Rune is a **skill mesh** — not a skill collection, not a pipeline, not an AI agent framework.
30
-
31
- **Technical definition:**
32
-
33
- > **Rune = 59 skills × 200+ bidirectional connections × cross-session memory × multi-platform compiler**
34
-
35
- All three components are equally essential:
36
- - Remove connections → becomes a collection (The Bloat wins)
37
- - Remove memory → becomes a stateless chatbot
38
- - Remove skills → nothing remains
39
-
40
- **Rune operates on mesh principles:**
41
- - Every skill knows who to call when it hits the edge of its scope
42
- - When a skill fails, the mesh finds an alternate path — it does not stop
43
- - Skills pass structured output to each other; the developer is not the integration layer
44
- - Context flows in one direction: L1 holds the full picture, L2 gets a relevant slice, L3 gets a minimal query
45
-
46
- **Rune serves the complete development lifecycle:** idea → design → code → quality → deploy → rescue. Not a tool for one phase. A system for all of them.
47
-
48
- **The mesh is the product.** A new skill that doesn't increase connection density is not a Rune skill — it's a feature that happens to live in the same repo.
49
-
50
- ---
51
-
52
- ## 3. What Rune Is NOT
53
-
54
- *This is where The Bloat gets defeated.*
55
-
56
- **The Bloat** is the persistent temptation to add features that seem useful in isolation but erode Rune's identity as a mesh. The Bloat speaks in reasonable-sounding arguments: *"users would love this"*, *"it only takes 50 lines"*, *"it's just one more skill."* The Bloat is not wrong about usefulness. It is wrong about what Rune is for.
57
-
58
- ### Anti-Goals
59
-
60
- **Rune is NOT a general-purpose AI assistant.**
61
- `email-writer`, `meeting-summarizer`, `travel-planner` — these are not development lifecycle skills. They don't connect to the mesh. A user asking Rune to write an email has the wrong mental model of what Rune is. We do not want to correct that mental model by adding email skills; we want to reinforce the correct one.
62
-
63
- **Rune is NOT a skill marketplace.**
64
- More skills ≠ more value. The benchmark is not "how many skills does Rune have?" It is "what is the average connection depth of each skill?" A skill with 0 inbound and 0 outbound connections is a dead node. Dead nodes dilute the mesh.
65
-
66
- **Rune is NOT an IDE or code editor.**
67
- Rune does not manage files directly, run terminal sessions, or provide a UI. It operates through Claude Code's existing tooling. Rune extends Claude's reasoning — it does not replace the environment.
68
-
69
- **Rune is NOT a replacement for the developer.**
70
- Rune amplifies developer judgment, not replaces it. `cook` presents a plan and waits for approval before writing code. `brainstorm` proposes options, not decisions. The developer remains in the loop at every consequential step. Rune without a developer at the helm is half a system.
71
-
72
- **Rune is NOT a pipeline.**
73
- `cook` is not a rigid A→B→C→D sequence that fails if one step breaks. It's a mesh-orchestrated workflow where each phase can invoke any skill needed, retry via alternatives, and skip phases that don't apply. If someone tries to build a Rune skill as a strict sequential pipeline with no branching — they've misunderstood the architecture.
74
-
75
- **Rune is NOT trying to cover every programming language or domain at the core layer.**
76
- That's what L4 extension packs are for. The core (L1-L3) is language-agnostic. Domain specifics (React patterns, Rust idioms, trading algorithms) belong in L4. Adding language-specific logic to L1-L3 is scope creep disguised as helpfulness.
77
-
78
- ---
79
-
80
- ## 4. Design Principles
81
-
82
- These are the rules that govern every decision in Rune — skill design, connection design, naming, layer assignment, model selection. When two options conflict, these principles break the tie.
83
-
84
- ### P1 — Connection Density Over Feature Count
85
-
86
- Every new skill must increase the total mesh connection density, not just add a node. Before adding a skill, count its inbound + outbound connections. A skill with fewer than 2 connections is a dead node.
87
-
88
- **Test:** *"If I remove this skill, how many workflows break?"* If the answer is zero, the skill should not exist.
89
-
90
- ### P2 — Structured Output Is a Contract
91
-
92
- Skills communicate through structured, predictable output formats — not natural language summaries. A skill's `## Output Format` section is a contract with callers. Changing it is a breaking change. Natural language output that cannot be parsed by a calling skill is a design failure.
93
-
94
- **Test:** *"Can `cook` consume this skill's output without re-reading the context?"* If no, fix the output format.
95
-
96
- ### P3 — Fail Loud, Route Around
97
-
98
- When a skill fails, it must fail loudly (specific error, not silent empty output) so the mesh can route around it. Silent failures are the most dangerous failure mode — the calling skill proceeds with incomplete data.
99
-
100
- **Test:** *"If this skill returns nothing, does the caller know something went wrong?"* If no, add explicit error output.
101
-
102
- ### P4 — Layer Discipline Is Non-Negotiable
103
-
104
- L3 utilities do not call L1 or L2. L1 orchestrators do not implement business logic directly — they delegate to L2. This is not a suggestion; it's what makes the mesh predictable. Violating layer discipline for "just this one case" introduces coupling that spreads.
105
-
106
- **Test:** *"Is this skill calling something above its layer?"* If yes, restructure. No exceptions.
107
-
108
- ### P5 — The Mesh Is More Valuable Than Any Single Skill
109
-
110
- No skill is indispensable. If a skill consistently causes issues (wrong model, bad output format, poor connections), replace or remove it. Protecting a skill because it was hard to build is The Bloat thinking. The mesh's health matters more than any individual node.
111
-
112
- **Test:** *"Would removing this skill and re-routing its callers make the mesh stronger?"* If yes, remove it.
113
-
114
- ### P6 — Constraints Block Rationalization
115
-
116
- Behavioral constraints (MUST/MUST NOT rules) exist to prevent the most common AI failure mode: rationalization. The AI will always find a reason to skip a step, abbreviate a check, or declare success without verification. Constraints don't suggest — they block. If a constraint can be argued away, it is not a constraint; it's a guideline.
117
-
118
- **Test:** *"Can the AI talk itself out of following this constraint?"* If yes, rewrite it to be more specific.
119
-
120
- ### P7 — Cost Is a Feature
121
-
122
- Model selection is a design decision, not an afterthought. Haiku for scans. Sonnet for code. Opus for architecture and security. Using opus for a file glob is waste. Using haiku for a security audit is negligence. Every skill's `## Cost Profile` is a design constraint, not documentation.
123
-
124
- **Test:** *"Is this skill using the cheapest model that can do the job correctly?"* If not, downgrade.
125
-
126
- ---
127
-
128
- ## 5. The Skill Addition Filter
129
-
130
- *Use this checklist every time a new skill is proposed — by the team, by users, or by an AI session that thinks "we should add X."*
131
-
132
- A proposed skill must pass **all 5 gates** to be added to the core mesh (L1-L3). L4 extension packs have a lighter filter (gates 1 and 5 only).
133
-
134
- ### Gate 1 — Lifecycle Fit
135
- > Does this skill serve the software development lifecycle?
136
-
137
- The skill must fit one of these phases: planning, coding, testing, reviewing, deploying, monitoring, rescuing. If it primarily serves a non-development task (communication, content, business ops), it belongs outside Rune's core — possibly as a user's private skill.
138
-
139
- ❌ **Fail example:** `slack-notifier` — communication, not development
140
- ✅ **Pass example:** `audit` — project health assessment, fits the quality phase
141
-
142
- ### Gate 2 — Connection Requirement
143
- > Does this skill have ≥2 meaningful mesh connections (inbound + outbound combined)?
144
-
145
- A skill must either call at least one existing skill OR be called by at least two existing skills — and ideally both. Connections must be meaningful (actual data flow), not ceremonial.
146
-
147
- ❌ **Fail example:** `code-formatter` — no inbound, no outbound, pure L3 with 0 connections
148
- ✅ **Pass example:** `audit` — calls `sentinel`, `dependency-doctor`, `autopsy`, `scout`, `journal`; called by `cook`, `launch`
149
-
150
- ### Gate 3 — Non-Redundancy
151
- > Can this skill's function be achieved by composing 2 existing skills?
152
-
153
- If yes, add a new workflow to an existing skill instead of creating a new one. Rune's philosophy is deepening connections in existing skills before adding new nodes.
154
-
155
- ❌ **Fail example:** `quick-security-check` — just `sentinel` with fewer checks; redundant
156
- ✅ **Pass example:** `audit` — orchestrates multiple skills into a unified 7-phase report; not achievable by a single existing skill
157
-
158
- ### Gate 4 — Layer Assignment
159
- > Is the correct layer assignment clear and unambiguous?
160
-
161
- If it's unclear whether the skill should be L1, L2, or L3 — that's a signal the skill's scope is not well-defined yet. Clarify the scope first.
162
-
163
- L3 if: stateless, single-purpose, no orchestration
164
- L2 if: workflow with multiple steps, may call other skills
165
- L1 if: full lifecycle orchestration, user-facing entry point
166
-
167
- ### Gate 5 — The Removal Test
168
- > If this skill is removed in 6 months, does the mesh lose something irreplaceable?
169
-
170
- This test separates essential skills from convenience features. If the skill's absence could be worked around trivially, it's not core.
171
-
172
- ❌ **Fail example:** `git-log-formatter` — convenience wrapper; absence has no workflow impact
173
- ✅ **Pass example:** `sentinel` — no other skill provides security scanning; its absence leaves a critical gap
174
-
175
- ---
176
-
177
- ## 6. Roadmap Horizons
178
-
179
- Rune operates on three time horizons. The roadmap is intentionally non-prescriptive about dates — Rune is a solo/small-team project and date-driven roadmaps create pressure to ship The Bloat.
180
-
181
- ### H1 — Consolidation ✅ COMPLETE
182
-
183
- **Goal:** Make the existing skills excellent before adding more.
184
-
185
- - Deepen mesh connections: audit every skill's `## Calls` and `## Called By` for accuracy
186
- - Harden behavioral constraints: identify constraints that can be rationalized away and rewrite them
187
- - Validate L4 extension packs: ensure all 12 packs have complete, executable `PACK.md` files
188
- - Publish to Claude Code plugin marketplace
189
-
190
- **Constraint:** No new L1-L3 core skills until Consolidation is complete. L4 packs are allowed.
191
-
192
- ### H2 — Ecosystem ✅ COMPLETE
193
-
194
- **Goal:** Make Rune extensible by others without compromising the core mesh.
195
-
196
- - Community L4 extension packs: documented contribution process, review criteria
197
- - Plugin versioning: semver for skill APIs so callers don't break on updates
198
- - Skill testing framework: automated validation of mesh connections and output format contracts
199
- - `rune:onboard` generates project-specific L4 suggestions based on detected stack
200
-
201
- **Constraint:** Core mesh (L1-L3) is frozen at ≤49 skills. Growth happens in L4.
202
-
203
- ### H3 — Intelligence ✅ COMPLETE
204
-
205
- **Goal:** Make the mesh self-aware and self-improving.
206
-
207
- - ✅ Mesh analytics: `metrics-collector` hook captures skill invocations, `post-session-reflect` flushes to `.rune/metrics/`, `audit` Phase 8 surfaces insights via `/rune metrics`
208
- - ✅ Adaptive routing: `skill-router` Step 0 reads `.rune/metrics/routing-overrides.json`, `cook` Phase 8 auto-generates overrides from failure patterns
209
- - ✅ Skill performance metrics: `skills.json` tracks invocations, phase outcomes, quality gate results, debug loops per skill
210
- - ✅ Community skill sharing: `/rune pack install/list/remove/create` commands, `validate-pack.js` script, `COMMUNITY-PACKS.md` guide, `onboard` discovers installed packs
211
-
212
- **Implementation**: Zero new L1-L3 skills added. 1 new hook (`metrics-collector`), 3 modified hooks, 4 extended skills (`audit`, `cook`, `skill-router`, `onboard`), 2 new commands (`/rune metrics`, `/rune pack`).
213
-
214
- **Constraint:** Core mesh expanded to 59 skills (v2.1.0+). Further growth happens in L4 and community packs.
215
-
216
- ---
217
-
218
- ## 7. Success Metrics
219
-
220
- *Rune is successful when these are true. Not when the feature list is long.*
221
-
222
- ### Mesh Health
223
- - **Connection density** ≥ 3.0 connections/skill (currently: 3.4 at 200+ connections / 59 skills) — do not let this drop below 2.5
224
- - **Dead nodes** = 0 — every skill has ≥1 inbound and ≥1 outbound connection
225
- - **Max chain depth used** < 6 in practice (ceiling is 8) — if chains regularly hit 8, the mesh needs restructuring
226
- - **Bloat Index** = 0.00 — dead nodes / total skills
227
-
228
- ### Behavioral Quality
229
- - **Constraint coverage** = 100% — every skill has a `## Constraints` section
230
- - **HARD-GATE consistency** — all hard gates use `<HARD-GATE>` XML format, none can be silently bypassed
231
- - **Output format coverage** = 100% — every skill has a structured `## Output Format`
232
-
233
- ### Developer Experience
234
- - A developer can go from `/rune onboard` to first working feature with `/rune cook` in one session
235
- - A developer can pick up work across sessions with zero manual context re-loading (`.rune/` handles it)
236
- - The most common workflows (`cook`, `debug`, `rescue`) work without reading any documentation
237
-
238
- ### The Bloat Index
239
- *This is the most important metric.*
240
-
241
- > **Bloat Index = dead nodes / total skills**
242
-
243
- Target: **0.00**. If any skill has 0 inbound AND 0 outbound connections, it is dead weight. Review quarterly and remove or reconnect.
244
-
245
- ---
246
-
247
- ## Appendix: The Bloat's Greatest Hits
248
-
249
- *A record of feature requests and ideas that The Bloat has whispered — and why they were rejected.*
250
-
251
- | Proposal | The Bloat's argument | Why rejected |
252
- |----------|---------------------|--------------|
253
- | `code-formatter` | "Devs always need formatting" | 0 mesh connections. Use the project's existing linter instead. |
254
- | `email-writer` | "Devs write emails about their code all the time" | Not a development lifecycle task. Wrong product category. |
255
- | `quick-fix` | "Sometimes `fix` is overkill" | Redundant. Use `fix` with a narrow scope. Don't duplicate skills. |
256
- | `explain-code` | "Junior devs need code explained" | Claude's base capability handles this. No mesh value added by wrapping it in a skill. |
257
- | `changelog-generator` | "Every project needs changelogs" | `journal` + `session-bridge` + a git log command covers this. Non-core. |
258
-
259
- *When The Bloat returns with a new proposal — and it will — add it here with the rejection reason. This log is part of the VISION.*
260
-
261
- ---
262
-
263
- *This document is a living compass, not a frozen spec. Update it when Rune's direction genuinely shifts — not to justify a decision already made.*
@@ -1,215 +0,0 @@
1
- 1
2
- 00:00:00,000 --> 00:00:04,000
3
- You're debugging for the 4th time.
4
- Claude keeps suggesting the same fix.
5
-
6
- 2
7
- 00:00:04,000 --> 00:00:06,500
8
- Same loop. Same frustration.
9
-
10
- 3
11
- 00:00:06,500 --> 00:00:08,000
12
- What if your AI assistant had a
13
- structured workflow that actually worked?
14
-
15
- 4
16
- 00:00:08,000 --> 00:00:12,000
17
- This is Rune — a 57-skill mesh
18
- that turns your AI coding assistant
19
-
20
- 5
21
- 00:00:12,000 --> 00:00:15,000
22
- from a chatbot into
23
- an engineering team.
24
-
25
- 6
26
- 00:00:15,000 --> 00:00:18,000
27
- It works on Claude Code, Cursor,
28
- Windsurf, and Antigravity.
29
-
30
- 7
31
- 00:00:18,000 --> 00:00:20,000
32
- Let me show you.
33
-
34
- 8
35
- 00:00:20,000 --> 00:00:22,000
36
- Install takes 10 seconds.
37
-
38
- 9
39
- 00:00:22,000 --> 00:00:27,000
40
- claude plugin install rune-kit/rune
41
-
42
- 10
43
- 00:00:27,000 --> 00:00:30,000
44
- 57 skills loaded.
45
-
46
- 11
47
- 00:00:30,000 --> 00:00:34,000
48
- For Cursor or Windsurf, one command
49
- compiles all skills into your IDE's format.
50
-
51
- 12
52
- 00:00:34,000 --> 00:00:40,000
53
- npx --yes @rune-kit/rune init
54
- --platform cursor
55
-
56
- 13
57
- 00:00:40,000 --> 00:00:44,000
58
- First thing — let Rune
59
- understand your project.
60
-
61
- 14
62
- 00:00:44,000 --> 00:00:47,000
63
- /rune onboard
64
-
65
- 15
66
- 00:00:47,000 --> 00:00:52,000
67
- Rune scans your codebase, detects
68
- your stack, and creates context files
69
-
70
- 16
71
- 00:00:52,000 --> 00:00:57,000
72
- that persist across sessions.
73
- No more re-explaining your project.
74
-
75
- 17
76
- 00:00:57,000 --> 00:01:00,000
77
- Now let's debug.
78
-
79
- 18
80
- 00:01:00,000 --> 00:01:04,000
81
- Users report login returns 401
82
- for valid credentials.
83
-
84
- 19
85
- 00:01:04,000 --> 00:01:08,000
86
- /rune debug "login returns 401
87
- for valid credentials"
88
-
89
- 20
90
- 00:01:08,000 --> 00:01:14,000
91
- Rune's debug skill traces the code path,
92
- finds the root cause —
93
-
94
- 21
95
- 00:01:14,000 --> 00:01:18,000
96
- an expired JWT secret rotation —
97
- and hands it to fix.
98
-
99
- 22
100
- 00:01:18,000 --> 00:01:22,000
101
- Fix writes the code change.
102
- Verification runs automatically.
103
-
104
- 23
105
- 00:01:22,000 --> 00:01:26,000
106
- Lint pass. Typecheck pass.
107
- Tests pass.
108
-
109
- 24
110
- 00:01:26,000 --> 00:01:30,000
111
- Fixed. Verified. One command.
112
-
113
- 25
114
- 00:01:30,000 --> 00:01:34,000
115
- Now let's build something.
116
- Add Stripe billing to our SaaS app.
117
-
118
- 26
119
- 00:01:34,000 --> 00:01:40,000
120
- /rune cook "add Stripe subscription
121
- billing with plan management"
122
-
123
- 27
124
- 00:01:40,000 --> 00:01:46,000
125
- Cook activates: scout scans the codebase,
126
- detects the @rune/saas extension pack.
127
-
128
- 28
129
- 00:01:46,000 --> 00:01:50,000
130
- Plan creates implementation steps.
131
-
132
- 29
133
- 00:01:50,000 --> 00:01:56,000
134
- See that? Before writing a single line
135
- of code, Rune's adversary skill
136
-
137
- 30
138
- 00:01:56,000 --> 00:02:00,000
139
- red-teams the plan. Found a missing
140
- webhook security check.
141
-
142
- 31
143
- 00:02:00,000 --> 00:02:04,000
144
- Plan updated. User approves.
145
-
146
- 32
147
- 00:02:04,000 --> 00:02:08,000
148
- Test writes failing tests first.
149
- TDD from the start.
150
-
151
- 33
152
- 00:02:08,000 --> 00:02:12,000
153
- Fix implements the code.
154
- Preflight, sentinel, and review
155
-
156
- 34
157
- 00:02:12,000 --> 00:02:15,000
158
- run quality checks in parallel.
159
-
160
- 35
161
- 00:02:15,000 --> 00:02:19,000
162
- 8 phases. TDD. Security scan.
163
- Code review.
164
-
165
- 36
166
- 00:02:19,000 --> 00:02:22,000
167
- All orchestrated automatically.
168
-
169
- 37
170
- 00:02:22,000 --> 00:02:26,000
171
- This isn't a list of
172
- independent tools. It's a mesh.
173
-
174
- 38
175
- 00:02:26,000 --> 00:02:30,000
176
- When debug can't find the cause,
177
- it escalates to problem-solver.
178
-
179
- 39
180
- 00:02:30,000 --> 00:02:34,000
181
- When cook hits a wall 3 times,
182
- it pivots to brainstorm.
183
-
184
- 40
185
- 00:02:34,000 --> 00:02:38,000
186
- When sentinel finds a vulnerability,
187
- it blocks the commit.
188
-
189
- 41
190
- 00:02:38,000 --> 00:02:42,000
191
- 57 skills. 200+ connections.
192
- They talk to each other
193
-
194
- 42
195
- 00:02:42,000 --> 00:02:45,000
196
- so you don't have to.
197
-
198
- 43
199
- 00:02:45,000 --> 00:02:48,000
200
- Rune is free and open source.
201
- MIT license.
202
-
203
- 44
204
- 00:02:48,000 --> 00:02:52,000
205
- claude plugin install rune-kit/rune
206
-
207
- 45
208
- 00:02:52,000 --> 00:02:55,000
209
- Or for any IDE:
210
- npx --yes @rune-kit/rune init
211
-
212
- 46
213
- 00:02:55,000 --> 00:03:00,000
214
- Less skills. Deeper connections.
215
- Link in description.