@rune-kit/rune 2.10.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.
- package/LICENSE +21 -21
- package/README.md +8 -6
- package/commands/rune.md +168 -168
- package/contexts/dev.md +34 -34
- package/contexts/research.md +43 -43
- package/contexts/review.md +55 -55
- package/extensions/ai-ml/PACK.md +88 -88
- package/extensions/ai-ml/skills/ai-agents.md +172 -172
- package/extensions/ai-ml/skills/code-sandbox.md +187 -187
- package/extensions/ai-ml/skills/deep-research.md +146 -146
- package/extensions/ai-ml/skills/embedding-search.md +66 -66
- package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -74
- package/extensions/ai-ml/skills/llm-architect.md +125 -125
- package/extensions/ai-ml/skills/llm-integration.md +64 -64
- package/extensions/ai-ml/skills/prompt-patterns.md +72 -72
- package/extensions/ai-ml/skills/rag-patterns.md +66 -66
- package/extensions/ai-ml/skills/web-extraction.md +114 -114
- package/extensions/analytics/PACK.md +92 -92
- package/extensions/analytics/skills/ab-testing.md +72 -72
- package/extensions/analytics/skills/dashboard-patterns.md +83 -83
- package/extensions/analytics/skills/data-validation.md +68 -68
- package/extensions/analytics/skills/funnel-analysis.md +81 -81
- package/extensions/analytics/skills/sql-patterns.md +57 -57
- package/extensions/analytics/skills/statistical-analysis.md +79 -79
- package/extensions/analytics/skills/tracking-setup.md +71 -71
- package/extensions/backend/PACK.md +104 -104
- package/extensions/backend/skills/api-patterns.md +84 -84
- package/extensions/backend/skills/async-pipeline.md +193 -193
- package/extensions/backend/skills/auth-patterns.md +97 -97
- package/extensions/backend/skills/background-jobs.md +133 -133
- package/extensions/backend/skills/caching-patterns.md +108 -108
- package/extensions/backend/skills/cli-generation.md +133 -133
- package/extensions/backend/skills/database-patterns.md +87 -87
- package/extensions/backend/skills/middleware-patterns.md +104 -104
- package/extensions/chrome-ext/PACK.md +93 -93
- package/extensions/chrome-ext/skills/cws-preflight.md +143 -143
- package/extensions/chrome-ext/skills/cws-publish.md +104 -104
- package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -251
- package/extensions/chrome-ext/skills/ext-messaging.md +139 -139
- package/extensions/chrome-ext/skills/ext-storage.md +133 -133
- package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -164
- package/extensions/content/PACK.md +96 -96
- package/extensions/content/skills/blog-patterns.md +88 -88
- package/extensions/content/skills/cms-integration.md +131 -131
- package/extensions/content/skills/content-scoring.md +107 -107
- package/extensions/content/skills/i18n.md +83 -83
- package/extensions/content/skills/mdx-authoring.md +137 -137
- package/extensions/content/skills/reference.md +1014 -1014
- package/extensions/content/skills/seo-patterns.md +67 -67
- package/extensions/content/skills/video-repurpose.md +153 -153
- package/extensions/devops/PACK.md +101 -101
- package/extensions/devops/skills/chaos-testing.md +67 -67
- package/extensions/devops/skills/ci-cd.md +75 -75
- package/extensions/devops/skills/docker.md +58 -58
- package/extensions/devops/skills/edge-serverless.md +163 -163
- package/extensions/devops/skills/infra-as-code.md +158 -158
- package/extensions/devops/skills/kubernetes.md +110 -110
- package/extensions/devops/skills/monitoring.md +57 -57
- package/extensions/devops/skills/server-setup.md +64 -64
- package/extensions/devops/skills/ssl-domain.md +42 -42
- package/extensions/ecommerce/PACK.md +116 -116
- package/extensions/ecommerce/skills/cart-system.md +79 -79
- package/extensions/ecommerce/skills/inventory-mgmt.md +102 -102
- package/extensions/ecommerce/skills/order-management.md +126 -126
- package/extensions/ecommerce/skills/payment-integration.md +472 -472
- package/extensions/ecommerce/skills/shopify-dev.md +69 -69
- package/extensions/ecommerce/skills/subscription-billing.md +93 -93
- package/extensions/ecommerce/skills/tax-compliance.md +117 -117
- package/extensions/gamedev/PACK.md +142 -142
- package/extensions/gamedev/skills/asset-pipeline.md +74 -74
- package/extensions/gamedev/skills/audio-system.md +129 -129
- package/extensions/gamedev/skills/camera-system.md +87 -87
- package/extensions/gamedev/skills/ecs.md +98 -98
- package/extensions/gamedev/skills/game-loops.md +72 -72
- package/extensions/gamedev/skills/input-system.md +199 -199
- package/extensions/gamedev/skills/multiplayer.md +180 -180
- package/extensions/gamedev/skills/particles.md +105 -105
- package/extensions/gamedev/skills/physics-engine.md +89 -89
- package/extensions/gamedev/skills/scene-management.md +146 -146
- package/extensions/gamedev/skills/threejs-patterns.md +90 -90
- package/extensions/gamedev/skills/webgl.md +71 -71
- package/extensions/mobile/PACK.md +106 -106
- package/extensions/mobile/skills/app-store-connect.md +152 -152
- package/extensions/mobile/skills/app-store-prep.md +66 -66
- package/extensions/mobile/skills/deep-linking.md +109 -109
- package/extensions/mobile/skills/flutter.md +60 -60
- package/extensions/mobile/skills/ios-build-pipeline.md +142 -142
- package/extensions/mobile/skills/native-bridge.md +66 -66
- package/extensions/mobile/skills/ota-updates.md +97 -97
- package/extensions/mobile/skills/push-notifications.md +111 -111
- package/extensions/mobile/skills/react-native.md +82 -82
- package/extensions/saas/PACK.md +116 -116
- package/extensions/saas/skills/billing-integration.md +200 -200
- package/extensions/saas/skills/feature-flags.md +130 -130
- package/extensions/saas/skills/multi-tenant.md +103 -103
- package/extensions/saas/skills/onboarding-flow.md +139 -139
- package/extensions/saas/skills/subscription-flow.md +95 -95
- package/extensions/saas/skills/team-management.md +144 -144
- package/extensions/security/PACK.md +99 -99
- package/extensions/security/skills/api-security.md +140 -140
- package/extensions/security/skills/compliance.md +68 -68
- package/extensions/security/skills/owasp-audit.md +64 -64
- package/extensions/security/skills/pentest-patterns.md +77 -77
- package/extensions/security/skills/secret-mgmt.md +65 -65
- package/extensions/security/skills/supply-chain.md +65 -65
- package/extensions/trading/PACK.md +80 -80
- package/extensions/trading/skills/chart-components.md +55 -55
- package/extensions/trading/skills/experiment-loop.md +125 -125
- package/extensions/trading/skills/fintech-patterns.md +47 -47
- package/extensions/trading/skills/indicator-library.md +58 -58
- package/extensions/trading/skills/quant-analysis.md +111 -111
- package/extensions/trading/skills/realtime-data.md +58 -58
- package/extensions/trading/skills/trade-logic.md +104 -104
- package/extensions/ui/PACK.md +130 -130
- package/extensions/ui/skills/a11y-audit.md +91 -91
- package/extensions/ui/skills/animation-patterns.md +127 -127
- package/extensions/ui/skills/component-patterns.md +100 -100
- package/extensions/ui/skills/design-decision.md +108 -108
- package/extensions/ui/skills/design-system.md +68 -68
- package/extensions/ui/skills/landing-patterns.md +155 -155
- package/extensions/ui/skills/palette-picker.md +173 -173
- package/extensions/ui/skills/react-health.md +90 -90
- package/extensions/ui/skills/type-system.md +125 -125
- package/extensions/ui/skills/web-vitals.md +153 -153
- package/extensions/zalo/PACK.md +145 -145
- package/extensions/zalo/skills/zalo-oa-mcp.md +317 -317
- package/extensions/zalo/skills/zalo-oa-messaging.md +429 -429
- package/extensions/zalo/skills/zalo-oa-setup.md +236 -236
- package/extensions/zalo/skills/zalo-oa-webhook.md +189 -189
- package/extensions/zalo/skills/zalo-personal-messaging.md +194 -194
- package/extensions/zalo/skills/zalo-personal-setup.md +153 -153
- package/extensions/zalo/skills/zalo-rate-guard.md +219 -219
- package/hooks/auto-format/index.cjs +48 -48
- package/hooks/hooks.json +111 -111
- package/hooks/post-session-reflect/index.cjs +189 -189
- package/hooks/pre-compact/index.cjs +95 -95
- package/hooks/run-hook.cmd +1 -1
- package/hooks/secrets-scan/index.cjs +100 -100
- package/hooks/session-start/index.cjs +71 -71
- package/hooks/typecheck/index.cjs +65 -65
- package/package.json +63 -63
- package/references/ui-pro-max-data/LICENSE-UI-PRO-MAX +21 -21
- package/references/ui-pro-max-data/charts.csv +26 -26
- package/references/ui-pro-max-data/colors.csv +161 -161
- package/references/ui-pro-max-data/styles.csv +68 -68
- package/references/ui-pro-max-data/typography.csv +74 -74
- package/references/ui-pro-max-data/ui-reasoning.csv +162 -162
- package/references/ui-pro-max-data/ux-guidelines.csv +99 -99
- package/skills/adversary/SKILL.md +283 -283
- package/skills/asset-creator/SKILL.md +157 -157
- package/skills/audit/SKILL.md +147 -2
- package/skills/autopsy/SKILL.md +335 -335
- package/skills/brainstorm/SKILL.md +342 -342
- package/skills/browser-pilot/SKILL.md +168 -168
- package/skills/constraint-check/SKILL.md +165 -165
- package/skills/context-engine/SKILL.md +404 -404
- package/skills/cook/SKILL.md +917 -863
- package/skills/db/SKILL.md +273 -273
- package/skills/debug/SKILL.md +465 -465
- package/skills/dependency-doctor/SKILL.md +265 -235
- package/skills/deploy/SKILL.md +274 -231
- package/skills/design/DESIGN-REFERENCE.md +365 -365
- package/skills/design/SKILL.md +589 -589
- package/skills/doc-processor/SKILL.md +254 -254
- package/skills/docs/SKILL.md +374 -374
- package/skills/docs-seeker/SKILL.md +177 -177
- package/skills/fix/SKILL.md +330 -330
- package/skills/git/SKILL.md +339 -339
- package/skills/hallucination-guard/SKILL.md +219 -219
- package/skills/incident/SKILL.md +254 -253
- package/skills/integrity-check/SKILL.md +169 -169
- package/skills/journal/SKILL.md +240 -240
- package/skills/launch/SKILL.md +344 -344
- package/skills/logic-guardian/SKILL.md +251 -251
- package/skills/marketing/SKILL.md +290 -289
- package/skills/mcp-builder/SKILL.md +425 -425
- package/skills/neural-memory/SKILL.md +362 -362
- package/skills/onboard/SKILL.md +404 -403
- package/skills/perf/SKILL.md +346 -346
- package/skills/plan/SKILL.md +433 -428
- package/skills/preflight/SKILL.md +415 -415
- package/skills/problem-solver/SKILL.md +380 -284
- package/skills/rescue/SKILL.md +474 -474
- package/skills/retro/SKILL.md +3 -1
- package/skills/review/SKILL.md +612 -588
- package/skills/review-intake/SKILL.md +249 -249
- package/skills/safeguard/SKILL.md +200 -200
- package/skills/sast/SKILL.md +190 -190
- package/skills/scaffold/SKILL.md +328 -287
- package/skills/scope-guard/SKILL.md +180 -180
- package/skills/scout/SKILL.md +263 -263
- package/skills/sentinel/SKILL.md +382 -381
- package/skills/sentinel-env/SKILL.md +254 -254
- package/skills/sequential-thinking/SKILL.md +234 -234
- package/skills/session-bridge/SKILL.md +543 -543
- package/skills/skill-forge/SKILL.md +581 -581
- package/skills/skill-router/SKILL.md +3 -0
- package/skills/surgeon/SKILL.md +215 -215
- package/skills/team/SKILL.md +556 -537
- package/skills/test/SKILL.md +614 -614
- package/skills/trend-scout/SKILL.md +145 -145
- package/skills/verification/SKILL.md +326 -326
- package/skills/video-creator/SKILL.md +201 -201
- package/skills/watchdog/SKILL.md +168 -168
- package/skills/worktree/SKILL.md +140 -140
|
@@ -1,157 +1,157 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: asset-creator
|
|
3
|
-
description: Creates code-based visual assets — SVG icons, OG image HTML templates, social banners, and icon sets. Outputs files with usage instructions.
|
|
4
|
-
metadata:
|
|
5
|
-
author: runedev
|
|
6
|
-
version: "0.2.0"
|
|
7
|
-
layer: L3
|
|
8
|
-
model: sonnet
|
|
9
|
-
group: media
|
|
10
|
-
tools: "Read, Write, Edit, Glob, Grep"
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# asset-creator
|
|
14
|
-
|
|
15
|
-
## Purpose
|
|
16
|
-
|
|
17
|
-
Creates code-based visual assets (SVG, CSS, HTML) for projects and marketing. Handles logos, OG images, social cards, and icon sets. Outputs actual files with light/dark variants and usage instructions. This skill creates CODE-based assets — not raster images.
|
|
18
|
-
|
|
19
|
-
## Called By (inbound)
|
|
20
|
-
|
|
21
|
-
- `marketing` (L2): banners, OG images, social graphics
|
|
22
|
-
- `design` (L2): UI asset generation during design phase
|
|
23
|
-
- L4 `@rune/ui`: design system assets
|
|
24
|
-
|
|
25
|
-
## Calls (outbound)
|
|
26
|
-
|
|
27
|
-
None — pure L3 utility.
|
|
28
|
-
|
|
29
|
-
## Executable Instructions
|
|
30
|
-
|
|
31
|
-
### Step 1: Receive Brief
|
|
32
|
-
|
|
33
|
-
Accept input from calling skill:
|
|
34
|
-
- `asset_type` — one of: `logo` | `og_image` | `social_card` | `icon` | `icon_set` | `banner`
|
|
35
|
-
- `dimensions` — width x height in pixels (e.g. `1200x630` for OG images)
|
|
36
|
-
- `style` — description of visual style (e.g. "minimal dark", "comic bold", "glassmorphism")
|
|
37
|
-
- `content` — text, brand name, tagline, or icon names to include
|
|
38
|
-
- `output_dir` — where to save files (default: `assets/`)
|
|
39
|
-
|
|
40
|
-
### Step 2: Design
|
|
41
|
-
|
|
42
|
-
Before writing code, determine design parameters:
|
|
43
|
-
|
|
44
|
-
1. Check if the project has `.rune/conventions.md` — use `Read` to load color palette and typography
|
|
45
|
-
2. If no conventions file, apply defaults based on `style`:
|
|
46
|
-
- "dark" → `#0c1419` bg, `#ffffff` text, `#2196f3` accent
|
|
47
|
-
- "light" → `#faf8f3` bg, `#1a1a1a` text, `#1d4ed8` accent
|
|
48
|
-
- "comic" → `#fffef9` bg, `#1a1a1a` text, `2px solid #2a2a2a` border, `4px 4px 0 #2a2a2a` shadow
|
|
49
|
-
- "glassmorphism" → `rgba(255,255,255,0.05)` bg, `backdrop-filter: blur(12px)`, `rgba(255,255,255,0.1)` border
|
|
50
|
-
|
|
51
|
-
3. Select typography:
|
|
52
|
-
- Display/headlines: Space Grotesk 700
|
|
53
|
-
- Body: Inter 400
|
|
54
|
-
- Monospace/prices: JetBrains Mono 700
|
|
55
|
-
|
|
56
|
-
4. Apply standard dimensions by asset type if not specified:
|
|
57
|
-
- OG image: 1200x630px
|
|
58
|
-
- Twitter card: 1200x628px
|
|
59
|
-
- Instagram square: 1080x1080px
|
|
60
|
-
- Icon: 24x24px (or 512x512px for app icon)
|
|
61
|
-
|
|
62
|
-
### Step 3: Create
|
|
63
|
-
|
|
64
|
-
Use `Write` to generate the asset files:
|
|
65
|
-
|
|
66
|
-
**For SVG icons and logos:**
|
|
67
|
-
- Write inline SVG with proper `viewBox` attribute
|
|
68
|
-
- Use `xmlns="http://www.w3.org/2000/svg"`
|
|
69
|
-
- Include `role="img"` and `aria-label` for accessibility
|
|
70
|
-
- Optimize paths — no unnecessary groups or transforms
|
|
71
|
-
- File: `assets/[name].svg`
|
|
72
|
-
|
|
73
|
-
**For OG images and social cards:**
|
|
74
|
-
- Create an HTML file with embedded CSS
|
|
75
|
-
- Use absolute pixel values (no relative units) for pixel-perfect output
|
|
76
|
-
- Include Google Fonts import for Space Grotesk and Inter
|
|
77
|
-
- File: `assets/[name]-og.html`
|
|
78
|
-
|
|
79
|
-
**For icon sets:**
|
|
80
|
-
- Create a single SVG sprite file with `<symbol>` elements
|
|
81
|
-
- Each icon as a named `<symbol id="icon-[name]">` with `viewBox`
|
|
82
|
-
- Include a usage example comment at the top
|
|
83
|
-
- File: `assets/icons/sprite.svg`
|
|
84
|
-
|
|
85
|
-
**For HTML banners:**
|
|
86
|
-
- Self-contained HTML with all styles inline (no external deps)
|
|
87
|
-
- File: `assets/banner-[platform].html`
|
|
88
|
-
|
|
89
|
-
### Step 4: Variants
|
|
90
|
-
|
|
91
|
-
If `style` contains "dark" or the asset type is OG/banner, also create a light mode variant:
|
|
92
|
-
- Suffix dark variant with `-dark` (e.g. `og-dark.html`)
|
|
93
|
-
- Suffix light variant with `-light` (e.g. `og-light.html`)
|
|
94
|
-
|
|
95
|
-
For icon sets, create both a filled and outline variant if applicable.
|
|
96
|
-
|
|
97
|
-
### Step 5: Report
|
|
98
|
-
|
|
99
|
-
Output the following:
|
|
100
|
-
|
|
101
|
-
```
|
|
102
|
-
## Assets Created
|
|
103
|
-
|
|
104
|
-
### Generated Files
|
|
105
|
-
- [asset_type]: [file_path] ([dimensions])
|
|
106
|
-
- [asset_type] (dark): [file_path]
|
|
107
|
-
- [asset_type] (light): [file_path]
|
|
108
|
-
|
|
109
|
-
### Usage Instructions
|
|
110
|
-
- OG image: Add <meta property="og:image" content="[url]/[filename]"> to <head>
|
|
111
|
-
- SVG icon: <img src="assets/[name].svg" alt="[description]">
|
|
112
|
-
- Icon sprite: <svg><use href="assets/icons/sprite.svg#icon-[name]"></use></svg>
|
|
113
|
-
- Banner: Open [file] in browser, screenshot at [width]x[height]
|
|
114
|
-
|
|
115
|
-
### Design Tokens Used
|
|
116
|
-
- Background: [color]
|
|
117
|
-
- Text: [color]
|
|
118
|
-
- Accent: [color]
|
|
119
|
-
- Font: [font-family]
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
## Note
|
|
123
|
-
|
|
124
|
-
This skill creates CODE-based assets (SVG/CSS/HTML). It does not generate raster images (PNG/JPG) directly — those require screenshotting the generated HTML files using browser-pilot.
|
|
125
|
-
|
|
126
|
-
## Output Format
|
|
127
|
-
|
|
128
|
-
Structured report with generated file paths, usage instructions (HTML snippets), and design tokens used. See Step 5 Report above for full template.
|
|
129
|
-
|
|
130
|
-
## Constraints
|
|
131
|
-
|
|
132
|
-
1. MUST confirm output format and dimensions before generating
|
|
133
|
-
2. MUST NOT generate copyrighted or trademarked content
|
|
134
|
-
3. MUST save to project assets directory — not random locations
|
|
135
|
-
|
|
136
|
-
## Sharp Edges
|
|
137
|
-
|
|
138
|
-
Known failure modes for this skill. Check these before declaring done.
|
|
139
|
-
|
|
140
|
-
| Failure Mode | Severity | Mitigation |
|
|
141
|
-
|---|---|---|
|
|
142
|
-
| Generating copyrighted or trademarked content (logos, characters) | CRITICAL | Constraint 2: only generate original assets — no brand marks, characters, or protected symbols |
|
|
143
|
-
| Saving to random location instead of assets/ | MEDIUM | Constraint 3: output_dir defaults to assets/ — always save there |
|
|
144
|
-
| Missing light/dark variants for OG/banner assets | MEDIUM | Step 4: dark mode variant required for any OG/banner asset |
|
|
145
|
-
| Generating raster images (PNG/JPG) directly | MEDIUM | This skill creates SVG/HTML CODE only — raster requires browser-pilot screenshot of generated HTML |
|
|
146
|
-
|
|
147
|
-
## Done When
|
|
148
|
-
|
|
149
|
-
- Asset type, dimensions, and style confirmed from input
|
|
150
|
-
- Design tokens from .rune/conventions.md loaded (or defaults applied)
|
|
151
|
-
- Asset files written to assets/ directory in correct format (SVG/HTML)
|
|
152
|
-
- Light/dark variants created if applicable (OG/banner)
|
|
153
|
-
- Assets Created report emitted with file paths and usage instructions
|
|
154
|
-
|
|
155
|
-
## Cost Profile
|
|
156
|
-
|
|
157
|
-
~500-1500 tokens input, ~500-1000 tokens output. Sonnet for creative quality.
|
|
1
|
+
---
|
|
2
|
+
name: asset-creator
|
|
3
|
+
description: Creates code-based visual assets — SVG icons, OG image HTML templates, social banners, and icon sets. Outputs files with usage instructions.
|
|
4
|
+
metadata:
|
|
5
|
+
author: runedev
|
|
6
|
+
version: "0.2.0"
|
|
7
|
+
layer: L3
|
|
8
|
+
model: sonnet
|
|
9
|
+
group: media
|
|
10
|
+
tools: "Read, Write, Edit, Glob, Grep"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# asset-creator
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
|
|
17
|
+
Creates code-based visual assets (SVG, CSS, HTML) for projects and marketing. Handles logos, OG images, social cards, and icon sets. Outputs actual files with light/dark variants and usage instructions. This skill creates CODE-based assets — not raster images.
|
|
18
|
+
|
|
19
|
+
## Called By (inbound)
|
|
20
|
+
|
|
21
|
+
- `marketing` (L2): banners, OG images, social graphics
|
|
22
|
+
- `design` (L2): UI asset generation during design phase
|
|
23
|
+
- L4 `@rune/ui`: design system assets
|
|
24
|
+
|
|
25
|
+
## Calls (outbound)
|
|
26
|
+
|
|
27
|
+
None — pure L3 utility.
|
|
28
|
+
|
|
29
|
+
## Executable Instructions
|
|
30
|
+
|
|
31
|
+
### Step 1: Receive Brief
|
|
32
|
+
|
|
33
|
+
Accept input from calling skill:
|
|
34
|
+
- `asset_type` — one of: `logo` | `og_image` | `social_card` | `icon` | `icon_set` | `banner`
|
|
35
|
+
- `dimensions` — width x height in pixels (e.g. `1200x630` for OG images)
|
|
36
|
+
- `style` — description of visual style (e.g. "minimal dark", "comic bold", "glassmorphism")
|
|
37
|
+
- `content` — text, brand name, tagline, or icon names to include
|
|
38
|
+
- `output_dir` — where to save files (default: `assets/`)
|
|
39
|
+
|
|
40
|
+
### Step 2: Design
|
|
41
|
+
|
|
42
|
+
Before writing code, determine design parameters:
|
|
43
|
+
|
|
44
|
+
1. Check if the project has `.rune/conventions.md` — use `Read` to load color palette and typography
|
|
45
|
+
2. If no conventions file, apply defaults based on `style`:
|
|
46
|
+
- "dark" → `#0c1419` bg, `#ffffff` text, `#2196f3` accent
|
|
47
|
+
- "light" → `#faf8f3` bg, `#1a1a1a` text, `#1d4ed8` accent
|
|
48
|
+
- "comic" → `#fffef9` bg, `#1a1a1a` text, `2px solid #2a2a2a` border, `4px 4px 0 #2a2a2a` shadow
|
|
49
|
+
- "glassmorphism" → `rgba(255,255,255,0.05)` bg, `backdrop-filter: blur(12px)`, `rgba(255,255,255,0.1)` border
|
|
50
|
+
|
|
51
|
+
3. Select typography:
|
|
52
|
+
- Display/headlines: Space Grotesk 700
|
|
53
|
+
- Body: Inter 400
|
|
54
|
+
- Monospace/prices: JetBrains Mono 700
|
|
55
|
+
|
|
56
|
+
4. Apply standard dimensions by asset type if not specified:
|
|
57
|
+
- OG image: 1200x630px
|
|
58
|
+
- Twitter card: 1200x628px
|
|
59
|
+
- Instagram square: 1080x1080px
|
|
60
|
+
- Icon: 24x24px (or 512x512px for app icon)
|
|
61
|
+
|
|
62
|
+
### Step 3: Create
|
|
63
|
+
|
|
64
|
+
Use `Write` to generate the asset files:
|
|
65
|
+
|
|
66
|
+
**For SVG icons and logos:**
|
|
67
|
+
- Write inline SVG with proper `viewBox` attribute
|
|
68
|
+
- Use `xmlns="http://www.w3.org/2000/svg"`
|
|
69
|
+
- Include `role="img"` and `aria-label` for accessibility
|
|
70
|
+
- Optimize paths — no unnecessary groups or transforms
|
|
71
|
+
- File: `assets/[name].svg`
|
|
72
|
+
|
|
73
|
+
**For OG images and social cards:**
|
|
74
|
+
- Create an HTML file with embedded CSS
|
|
75
|
+
- Use absolute pixel values (no relative units) for pixel-perfect output
|
|
76
|
+
- Include Google Fonts import for Space Grotesk and Inter
|
|
77
|
+
- File: `assets/[name]-og.html`
|
|
78
|
+
|
|
79
|
+
**For icon sets:**
|
|
80
|
+
- Create a single SVG sprite file with `<symbol>` elements
|
|
81
|
+
- Each icon as a named `<symbol id="icon-[name]">` with `viewBox`
|
|
82
|
+
- Include a usage example comment at the top
|
|
83
|
+
- File: `assets/icons/sprite.svg`
|
|
84
|
+
|
|
85
|
+
**For HTML banners:**
|
|
86
|
+
- Self-contained HTML with all styles inline (no external deps)
|
|
87
|
+
- File: `assets/banner-[platform].html`
|
|
88
|
+
|
|
89
|
+
### Step 4: Variants
|
|
90
|
+
|
|
91
|
+
If `style` contains "dark" or the asset type is OG/banner, also create a light mode variant:
|
|
92
|
+
- Suffix dark variant with `-dark` (e.g. `og-dark.html`)
|
|
93
|
+
- Suffix light variant with `-light` (e.g. `og-light.html`)
|
|
94
|
+
|
|
95
|
+
For icon sets, create both a filled and outline variant if applicable.
|
|
96
|
+
|
|
97
|
+
### Step 5: Report
|
|
98
|
+
|
|
99
|
+
Output the following:
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
## Assets Created
|
|
103
|
+
|
|
104
|
+
### Generated Files
|
|
105
|
+
- [asset_type]: [file_path] ([dimensions])
|
|
106
|
+
- [asset_type] (dark): [file_path]
|
|
107
|
+
- [asset_type] (light): [file_path]
|
|
108
|
+
|
|
109
|
+
### Usage Instructions
|
|
110
|
+
- OG image: Add <meta property="og:image" content="[url]/[filename]"> to <head>
|
|
111
|
+
- SVG icon: <img src="assets/[name].svg" alt="[description]">
|
|
112
|
+
- Icon sprite: <svg><use href="assets/icons/sprite.svg#icon-[name]"></use></svg>
|
|
113
|
+
- Banner: Open [file] in browser, screenshot at [width]x[height]
|
|
114
|
+
|
|
115
|
+
### Design Tokens Used
|
|
116
|
+
- Background: [color]
|
|
117
|
+
- Text: [color]
|
|
118
|
+
- Accent: [color]
|
|
119
|
+
- Font: [font-family]
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Note
|
|
123
|
+
|
|
124
|
+
This skill creates CODE-based assets (SVG/CSS/HTML). It does not generate raster images (PNG/JPG) directly — those require screenshotting the generated HTML files using browser-pilot.
|
|
125
|
+
|
|
126
|
+
## Output Format
|
|
127
|
+
|
|
128
|
+
Structured report with generated file paths, usage instructions (HTML snippets), and design tokens used. See Step 5 Report above for full template.
|
|
129
|
+
|
|
130
|
+
## Constraints
|
|
131
|
+
|
|
132
|
+
1. MUST confirm output format and dimensions before generating
|
|
133
|
+
2. MUST NOT generate copyrighted or trademarked content
|
|
134
|
+
3. MUST save to project assets directory — not random locations
|
|
135
|
+
|
|
136
|
+
## Sharp Edges
|
|
137
|
+
|
|
138
|
+
Known failure modes for this skill. Check these before declaring done.
|
|
139
|
+
|
|
140
|
+
| Failure Mode | Severity | Mitigation |
|
|
141
|
+
|---|---|---|
|
|
142
|
+
| Generating copyrighted or trademarked content (logos, characters) | CRITICAL | Constraint 2: only generate original assets — no brand marks, characters, or protected symbols |
|
|
143
|
+
| Saving to random location instead of assets/ | MEDIUM | Constraint 3: output_dir defaults to assets/ — always save there |
|
|
144
|
+
| Missing light/dark variants for OG/banner assets | MEDIUM | Step 4: dark mode variant required for any OG/banner asset |
|
|
145
|
+
| Generating raster images (PNG/JPG) directly | MEDIUM | This skill creates SVG/HTML CODE only — raster requires browser-pilot screenshot of generated HTML |
|
|
146
|
+
|
|
147
|
+
## Done When
|
|
148
|
+
|
|
149
|
+
- Asset type, dimensions, and style confirmed from input
|
|
150
|
+
- Design tokens from .rune/conventions.md loaded (or defaults applied)
|
|
151
|
+
- Asset files written to assets/ directory in correct format (SVG/HTML)
|
|
152
|
+
- Light/dark variants created if applicable (OG/banner)
|
|
153
|
+
- Assets Created report emitted with file paths and usage instructions
|
|
154
|
+
|
|
155
|
+
## Cost Profile
|
|
156
|
+
|
|
157
|
+
~500-1500 tokens input, ~500-1000 tokens output. Sonnet for creative quality.
|
package/skills/audit/SKILL.md
CHANGED
|
@@ -3,7 +3,7 @@ name: audit
|
|
|
3
3
|
description: Comprehensive project audit — security, dependencies, code quality, architecture, performance, infra, docs, and mesh analytics. Delegates to specialist skills and generates an 8-dimension health score.
|
|
4
4
|
metadata:
|
|
5
5
|
author: runedev
|
|
6
|
-
version: "0.
|
|
6
|
+
version: "0.4.0"
|
|
7
7
|
layer: L2
|
|
8
8
|
model: sonnet
|
|
9
9
|
group: quality
|
|
@@ -19,8 +19,10 @@ Comprehensive project health audit across 8 dimensions (7 project + 1 mesh analy
|
|
|
19
19
|
|
|
20
20
|
## Triggers
|
|
21
21
|
|
|
22
|
-
- `/rune audit` —
|
|
22
|
+
- `/rune audit` — full 8-dimension project health audit
|
|
23
|
+
- `/rune audit dx` — DX Review Mode (Addy Osmani 8 principles, see below)
|
|
23
24
|
- User says "audit", "review project", "health check", "project assessment"
|
|
25
|
+
- User says "developer experience", "DX audit", "onboarding experience", "time to hello world"
|
|
24
26
|
|
|
25
27
|
## Calls (outbound)
|
|
26
28
|
|
|
@@ -34,6 +36,7 @@ Comprehensive project health audit across 8 dimensions (7 project + 1 mesh analy
|
|
|
34
36
|
- `constraint-check` (L3): audit HARD-GATE compliance across project skills
|
|
35
37
|
- `sast` (L3): Phase 2 — deep static analysis (Semgrep, Bandit, ESLint security rules)
|
|
36
38
|
- `retro` (L2): Phase 6 — engineering velocity and health dimension (rune:retro)
|
|
39
|
+
- `browser-pilot` (L3): DX Review Mode — real browser testing of docs, setup guides, error pages
|
|
37
40
|
|
|
38
41
|
## Called By (inbound)
|
|
39
42
|
|
|
@@ -373,6 +376,148 @@ Output as a section in the final audit report:
|
|
|
373
376
|
|
|
374
377
|
---
|
|
375
378
|
|
|
379
|
+
---
|
|
380
|
+
|
|
381
|
+
## DX Review Mode (Addy Osmani 8 Principles)
|
|
382
|
+
|
|
383
|
+
Triggered by `/rune audit dx`. Evaluates **developer experience** — how easy it is for a new contributor to understand, set up, use, and recover from mistakes in this project. Inspired by Addy Osmani's DX framework.
|
|
384
|
+
|
|
385
|
+
<HARD-GATE>
|
|
386
|
+
DX Review is a SEPARATE mode — it does NOT run the 8-phase health audit above.
|
|
387
|
+
If the user wants both, run `/rune audit` then `/rune audit dx` separately.
|
|
388
|
+
</HARD-GATE>
|
|
389
|
+
|
|
390
|
+
### DX Principle 1: Time to Hello World
|
|
391
|
+
|
|
392
|
+
Measure: How many steps from `git clone` to running the project?
|
|
393
|
+
|
|
394
|
+
```
|
|
395
|
+
1. Read README.md — extract setup instructions
|
|
396
|
+
2. Count discrete steps (clone, install, config, build, run)
|
|
397
|
+
3. Check: are ALL commands copy-pasteable? (no placeholders without explanation)
|
|
398
|
+
4. Check: does `npm start` / `python main.py` / equivalent work immediately after install?
|
|
399
|
+
5. If browser-pilot available: attempt to follow the README steps literally
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
| Steps to Run | Score | Verdict |
|
|
403
|
+
|--------------|-------|---------|
|
|
404
|
+
| 1-2 commands | 10/10 | Excellent — "clone and go" |
|
|
405
|
+
| 3-4 commands | 7/10 | Good — reasonable setup |
|
|
406
|
+
| 5-7 commands | 4/10 | Fair — friction will lose contributors |
|
|
407
|
+
| 8+ commands | 2/10 | Poor — significant onboarding barrier |
|
|
408
|
+
| Cannot run from README | 0/10 | Broken — README is lying or incomplete |
|
|
409
|
+
|
|
410
|
+
### DX Principle 2: First-Time Setup Friction
|
|
411
|
+
|
|
412
|
+
Check for common setup traps:
|
|
413
|
+
|
|
414
|
+
- Missing `.env.example` → new dev has no idea what env vars are needed
|
|
415
|
+
- Missing system dependency docs (e.g., needs Redis/Postgres but README doesn't say)
|
|
416
|
+
- Node version mismatch (no `.nvmrc` or `engines` field)
|
|
417
|
+
- Python version mismatch (no `python-version` in `pyproject.toml`)
|
|
418
|
+
- Failing install on clean machine (native deps, missing build tools)
|
|
419
|
+
- No `--help` or usage message when running CLI with no args
|
|
420
|
+
|
|
421
|
+
Score: count friction points. 0 = 10/10, 1-2 = 7/10, 3-4 = 4/10, 5+ = 2/10.
|
|
422
|
+
|
|
423
|
+
### DX Principle 3: Error Message Quality
|
|
424
|
+
|
|
425
|
+
Sample 5 error paths in the codebase (auth failure, invalid input, missing config, network error, permission denied). For each:
|
|
426
|
+
|
|
427
|
+
- Does the error message say WHAT went wrong? (not just "Error" or "Something went wrong")
|
|
428
|
+
- Does it say WHY? (context: which input, which config key)
|
|
429
|
+
- Does it suggest HOW to fix? (actionable: "set X in .env" not "check configuration")
|
|
430
|
+
|
|
431
|
+
| Quality | Score |
|
|
432
|
+
|---------|-------|
|
|
433
|
+
| All 3 (what + why + how) | 10/10 |
|
|
434
|
+
| What + why, no how | 6/10 |
|
|
435
|
+
| What only | 3/10 |
|
|
436
|
+
| Generic errors | 1/10 |
|
|
437
|
+
|
|
438
|
+
### DX Principle 4: CLI Help Quality
|
|
439
|
+
|
|
440
|
+
If project has a CLI entry point:
|
|
441
|
+
|
|
442
|
+
```
|
|
443
|
+
1. Run `<cli> --help` — capture output
|
|
444
|
+
2. Check: does it list all commands with descriptions?
|
|
445
|
+
3. Check: does each subcommand have `--help` with examples?
|
|
446
|
+
4. Check: is there a quickstart example in help output?
|
|
447
|
+
5. Check: are flags named predictably (--verbose not --v, --output not --o)?
|
|
448
|
+
```
|
|
449
|
+
|
|
450
|
+
Score: 2 points each for: command listing, subcommand help, examples, consistent naming, error on unknown flag.
|
|
451
|
+
|
|
452
|
+
If no CLI: score as N/A (does not count toward total).
|
|
453
|
+
|
|
454
|
+
### DX Principle 5: Documentation Navigation
|
|
455
|
+
|
|
456
|
+
Can a developer find answers in under 60 seconds?
|
|
457
|
+
|
|
458
|
+
- README has a table of contents or clear section headers
|
|
459
|
+
- API endpoints / functions have a reference page or inline docs
|
|
460
|
+
- Search works (if docs site): try 3 common queries
|
|
461
|
+
- Cross-references between related concepts exist
|
|
462
|
+
- No dead links (use `Grep` for `](` patterns and spot-check 5 links)
|
|
463
|
+
|
|
464
|
+
If `browser-pilot` available: navigate the docs site, time how long to find "how to authenticate" and "how to deploy".
|
|
465
|
+
|
|
466
|
+
### DX Principle 6: API Consistency
|
|
467
|
+
|
|
468
|
+
For the top 10 exported functions / API endpoints:
|
|
469
|
+
|
|
470
|
+
- Naming convention consistent? (all camelCase, or all snake_case — not mixed)
|
|
471
|
+
- Return type pattern consistent? (all return `{ data, error }` or all throw — not mixed)
|
|
472
|
+
- Parameter ordering consistent? (required first, optional last — across all functions)
|
|
473
|
+
- HTTP methods correct? (GET for reads, POST for creates — no GET with side effects)
|
|
474
|
+
|
|
475
|
+
Score: consistency percentage across the 10 sampled APIs.
|
|
476
|
+
|
|
477
|
+
### DX Principle 7: Progressive Disclosure
|
|
478
|
+
|
|
479
|
+
- Simple use case achievable with 1-3 lines of code? (check README examples)
|
|
480
|
+
- Advanced config available but not required? (sensible defaults exist)
|
|
481
|
+
- Configuration is layered? (env vars → config file → CLI flags → defaults)
|
|
482
|
+
- Type hints / IDE completion available? (`d.ts` files, JSDoc, type stubs)
|
|
483
|
+
|
|
484
|
+
### DX Principle 8: Recovery from Mistakes
|
|
485
|
+
|
|
486
|
+
- Can the user undo/rollback? (migrations have `down`, deploys have rollback, git-based workflows)
|
|
487
|
+
- Do destructive operations have confirmation prompts? (`--force` required for dangerous ops)
|
|
488
|
+
- Are error states recoverable? (retry guidance, not just "failed")
|
|
489
|
+
- Does `--dry-run` exist for risky operations?
|
|
490
|
+
|
|
491
|
+
### DX Review Output
|
|
492
|
+
|
|
493
|
+
```markdown
|
|
494
|
+
## DX Review: [Project Name]
|
|
495
|
+
|
|
496
|
+
| # | Principle | Score | Key Finding |
|
|
497
|
+
|---|-----------|-------|-------------|
|
|
498
|
+
| 1 | Time to Hello World | ?/10 | [steps count + blocker if any] |
|
|
499
|
+
| 2 | Setup Friction | ?/10 | [friction points found] |
|
|
500
|
+
| 3 | Error Messages | ?/10 | [quality level + worst example] |
|
|
501
|
+
| 4 | CLI Help | ?/10 | [coverage + gaps] |
|
|
502
|
+
| 5 | Doc Navigation | ?/10 | [findability + dead links] |
|
|
503
|
+
| 6 | API Consistency | ?/10 | [consistency % + violations] |
|
|
504
|
+
| 7 | Progressive Disclosure | ?/10 | [simple path exists? defaults?] |
|
|
505
|
+
| 8 | Recovery | ?/10 | [undo/rollback/dry-run support] |
|
|
506
|
+
| **Overall DX** | | **?/10** | **[verdict]** |
|
|
507
|
+
|
|
508
|
+
### Quick Wins (fix in <1 hour)
|
|
509
|
+
1. [specific, actionable improvement]
|
|
510
|
+
2. [specific, actionable improvement]
|
|
511
|
+
3. [specific, actionable improvement]
|
|
512
|
+
|
|
513
|
+
### Structural Improvements (plan needed)
|
|
514
|
+
1. [deeper change needed]
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
Grade thresholds: 9-10 Excellent DX, 7-8 Good DX, 5-6 Fair DX (losing contributors), 3-4 Poor DX (significant barrier), 1-2 Hostile DX.
|
|
518
|
+
|
|
519
|
+
---
|
|
520
|
+
|
|
376
521
|
### Final Report
|
|
377
522
|
|
|
378
523
|
After all phases complete:
|