@rune-kit/rune 2.10.0 → 2.12.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 (240) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +65 -6
  3. package/commands/rune.md +168 -168
  4. package/compiler/__tests__/detect-invariants.test.js +136 -0
  5. package/compiler/__tests__/doctor-mesh.test.js +229 -0
  6. package/compiler/__tests__/hook-dispatch.test.js +91 -0
  7. package/compiler/__tests__/hooks-antigravity.test.js +118 -0
  8. package/compiler/__tests__/hooks-cursor.test.js +139 -0
  9. package/compiler/__tests__/hooks-install.test.js +305 -0
  10. package/compiler/__tests__/hooks-merge.test.js +204 -0
  11. package/compiler/__tests__/hooks-tiers.test.js +519 -0
  12. package/compiler/__tests__/hooks-windsurf.test.js +115 -0
  13. package/compiler/__tests__/inject-claude-md.test.js +152 -0
  14. package/compiler/__tests__/load-invariants.test.js +408 -0
  15. package/compiler/__tests__/onboard-invariants.test.js +240 -0
  16. package/compiler/adapters/hooks/antigravity.js +140 -0
  17. package/compiler/adapters/hooks/claude.js +166 -0
  18. package/compiler/adapters/hooks/cursor.js +191 -0
  19. package/compiler/adapters/hooks/index.js +82 -0
  20. package/compiler/adapters/hooks/tier-emitter.js +182 -0
  21. package/compiler/adapters/hooks/windsurf.js +202 -0
  22. package/compiler/bin/rune.js +196 -6
  23. package/compiler/commands/hook-dispatch.js +87 -0
  24. package/compiler/commands/hooks/install.js +120 -0
  25. package/compiler/commands/hooks/merge.js +211 -0
  26. package/compiler/commands/hooks/presets.js +116 -0
  27. package/compiler/commands/hooks/status.js +112 -0
  28. package/compiler/commands/hooks/tiers.js +221 -0
  29. package/compiler/commands/hooks/uninstall.js +94 -0
  30. package/compiler/doctor.js +236 -0
  31. package/contexts/dev.md +34 -34
  32. package/contexts/research.md +43 -43
  33. package/contexts/review.md +55 -55
  34. package/extensions/ai-ml/PACK.md +88 -88
  35. package/extensions/ai-ml/skills/ai-agents.md +172 -172
  36. package/extensions/ai-ml/skills/code-sandbox.md +187 -187
  37. package/extensions/ai-ml/skills/deep-research.md +146 -146
  38. package/extensions/ai-ml/skills/embedding-search.md +66 -66
  39. package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -74
  40. package/extensions/ai-ml/skills/llm-architect.md +125 -125
  41. package/extensions/ai-ml/skills/llm-integration.md +64 -64
  42. package/extensions/ai-ml/skills/prompt-patterns.md +72 -72
  43. package/extensions/ai-ml/skills/rag-patterns.md +66 -66
  44. package/extensions/ai-ml/skills/web-extraction.md +114 -114
  45. package/extensions/analytics/PACK.md +92 -92
  46. package/extensions/analytics/skills/ab-testing.md +72 -72
  47. package/extensions/analytics/skills/dashboard-patterns.md +83 -83
  48. package/extensions/analytics/skills/data-validation.md +68 -68
  49. package/extensions/analytics/skills/funnel-analysis.md +81 -81
  50. package/extensions/analytics/skills/sql-patterns.md +57 -57
  51. package/extensions/analytics/skills/statistical-analysis.md +79 -79
  52. package/extensions/analytics/skills/tracking-setup.md +71 -71
  53. package/extensions/backend/PACK.md +104 -104
  54. package/extensions/backend/skills/api-patterns.md +84 -84
  55. package/extensions/backend/skills/async-pipeline.md +193 -193
  56. package/extensions/backend/skills/auth-patterns.md +97 -97
  57. package/extensions/backend/skills/background-jobs.md +133 -133
  58. package/extensions/backend/skills/caching-patterns.md +108 -108
  59. package/extensions/backend/skills/cli-generation.md +133 -133
  60. package/extensions/backend/skills/database-patterns.md +87 -87
  61. package/extensions/backend/skills/middleware-patterns.md +104 -104
  62. package/extensions/chrome-ext/PACK.md +93 -93
  63. package/extensions/chrome-ext/skills/cws-preflight.md +143 -143
  64. package/extensions/chrome-ext/skills/cws-publish.md +104 -104
  65. package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -251
  66. package/extensions/chrome-ext/skills/ext-messaging.md +139 -139
  67. package/extensions/chrome-ext/skills/ext-storage.md +133 -133
  68. package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -164
  69. package/extensions/content/PACK.md +96 -96
  70. package/extensions/content/skills/blog-patterns.md +88 -88
  71. package/extensions/content/skills/cms-integration.md +131 -131
  72. package/extensions/content/skills/content-scoring.md +107 -107
  73. package/extensions/content/skills/i18n.md +83 -83
  74. package/extensions/content/skills/mdx-authoring.md +137 -137
  75. package/extensions/content/skills/reference.md +1014 -1014
  76. package/extensions/content/skills/seo-patterns.md +67 -67
  77. package/extensions/content/skills/video-repurpose.md +153 -153
  78. package/extensions/devops/PACK.md +101 -101
  79. package/extensions/devops/skills/chaos-testing.md +67 -67
  80. package/extensions/devops/skills/ci-cd.md +75 -75
  81. package/extensions/devops/skills/docker.md +58 -58
  82. package/extensions/devops/skills/edge-serverless.md +163 -163
  83. package/extensions/devops/skills/infra-as-code.md +158 -158
  84. package/extensions/devops/skills/kubernetes.md +110 -110
  85. package/extensions/devops/skills/monitoring.md +57 -57
  86. package/extensions/devops/skills/server-setup.md +64 -64
  87. package/extensions/devops/skills/ssl-domain.md +42 -42
  88. package/extensions/ecommerce/PACK.md +116 -116
  89. package/extensions/ecommerce/skills/cart-system.md +79 -79
  90. package/extensions/ecommerce/skills/inventory-mgmt.md +102 -102
  91. package/extensions/ecommerce/skills/order-management.md +126 -126
  92. package/extensions/ecommerce/skills/payment-integration.md +472 -472
  93. package/extensions/ecommerce/skills/shopify-dev.md +69 -69
  94. package/extensions/ecommerce/skills/subscription-billing.md +93 -93
  95. package/extensions/ecommerce/skills/tax-compliance.md +117 -117
  96. package/extensions/gamedev/PACK.md +142 -142
  97. package/extensions/gamedev/skills/asset-pipeline.md +74 -74
  98. package/extensions/gamedev/skills/audio-system.md +129 -129
  99. package/extensions/gamedev/skills/camera-system.md +87 -87
  100. package/extensions/gamedev/skills/ecs.md +98 -98
  101. package/extensions/gamedev/skills/game-loops.md +72 -72
  102. package/extensions/gamedev/skills/input-system.md +199 -199
  103. package/extensions/gamedev/skills/multiplayer.md +180 -180
  104. package/extensions/gamedev/skills/particles.md +105 -105
  105. package/extensions/gamedev/skills/physics-engine.md +89 -89
  106. package/extensions/gamedev/skills/scene-management.md +146 -146
  107. package/extensions/gamedev/skills/threejs-patterns.md +90 -90
  108. package/extensions/gamedev/skills/webgl.md +71 -71
  109. package/extensions/mobile/PACK.md +106 -106
  110. package/extensions/mobile/skills/app-store-connect.md +152 -152
  111. package/extensions/mobile/skills/app-store-prep.md +66 -66
  112. package/extensions/mobile/skills/deep-linking.md +109 -109
  113. package/extensions/mobile/skills/flutter.md +60 -60
  114. package/extensions/mobile/skills/ios-build-pipeline.md +142 -142
  115. package/extensions/mobile/skills/native-bridge.md +66 -66
  116. package/extensions/mobile/skills/ota-updates.md +97 -97
  117. package/extensions/mobile/skills/push-notifications.md +111 -111
  118. package/extensions/mobile/skills/react-native.md +82 -82
  119. package/extensions/saas/PACK.md +116 -116
  120. package/extensions/saas/skills/billing-integration.md +200 -200
  121. package/extensions/saas/skills/feature-flags.md +130 -130
  122. package/extensions/saas/skills/multi-tenant.md +103 -103
  123. package/extensions/saas/skills/onboarding-flow.md +139 -139
  124. package/extensions/saas/skills/subscription-flow.md +95 -95
  125. package/extensions/saas/skills/team-management.md +144 -144
  126. package/extensions/security/PACK.md +99 -99
  127. package/extensions/security/skills/api-security.md +140 -140
  128. package/extensions/security/skills/compliance.md +68 -68
  129. package/extensions/security/skills/owasp-audit.md +64 -64
  130. package/extensions/security/skills/pentest-patterns.md +77 -77
  131. package/extensions/security/skills/secret-mgmt.md +65 -65
  132. package/extensions/security/skills/supply-chain.md +65 -65
  133. package/extensions/trading/PACK.md +80 -80
  134. package/extensions/trading/skills/chart-components.md +55 -55
  135. package/extensions/trading/skills/experiment-loop.md +125 -125
  136. package/extensions/trading/skills/fintech-patterns.md +47 -47
  137. package/extensions/trading/skills/indicator-library.md +58 -58
  138. package/extensions/trading/skills/quant-analysis.md +111 -111
  139. package/extensions/trading/skills/realtime-data.md +58 -58
  140. package/extensions/trading/skills/trade-logic.md +104 -104
  141. package/extensions/ui/PACK.md +130 -130
  142. package/extensions/ui/skills/a11y-audit.md +91 -91
  143. package/extensions/ui/skills/animation-patterns.md +127 -127
  144. package/extensions/ui/skills/component-patterns.md +100 -100
  145. package/extensions/ui/skills/design-decision.md +108 -108
  146. package/extensions/ui/skills/design-system.md +68 -68
  147. package/extensions/ui/skills/landing-patterns.md +155 -155
  148. package/extensions/ui/skills/palette-picker.md +173 -173
  149. package/extensions/ui/skills/react-health.md +90 -90
  150. package/extensions/ui/skills/type-system.md +125 -125
  151. package/extensions/ui/skills/web-vitals.md +153 -153
  152. package/extensions/zalo/PACK.md +145 -145
  153. package/extensions/zalo/skills/zalo-oa-mcp.md +317 -317
  154. package/extensions/zalo/skills/zalo-oa-messaging.md +429 -429
  155. package/extensions/zalo/skills/zalo-oa-setup.md +236 -236
  156. package/extensions/zalo/skills/zalo-oa-webhook.md +189 -189
  157. package/extensions/zalo/skills/zalo-personal-messaging.md +194 -194
  158. package/extensions/zalo/skills/zalo-personal-setup.md +153 -153
  159. package/extensions/zalo/skills/zalo-rate-guard.md +219 -219
  160. package/hooks/auto-format/index.cjs +48 -48
  161. package/hooks/hooks.json +111 -111
  162. package/hooks/post-session-reflect/index.cjs +189 -189
  163. package/hooks/pre-compact/index.cjs +95 -95
  164. package/hooks/run-hook.cmd +1 -1
  165. package/hooks/secrets-scan/index.cjs +100 -100
  166. package/hooks/session-start/index.cjs +71 -71
  167. package/hooks/typecheck/index.cjs +65 -65
  168. package/package.json +63 -63
  169. package/references/ui-pro-max-data/LICENSE-UI-PRO-MAX +21 -21
  170. package/references/ui-pro-max-data/charts.csv +26 -26
  171. package/references/ui-pro-max-data/colors.csv +161 -161
  172. package/references/ui-pro-max-data/styles.csv +68 -68
  173. package/references/ui-pro-max-data/typography.csv +74 -74
  174. package/references/ui-pro-max-data/ui-reasoning.csv +162 -162
  175. package/references/ui-pro-max-data/ux-guidelines.csv +99 -99
  176. package/skills/adversary/SKILL.md +283 -283
  177. package/skills/asset-creator/SKILL.md +157 -157
  178. package/skills/audit/SKILL.md +147 -2
  179. package/skills/autopsy/SKILL.md +335 -335
  180. package/skills/ba/SKILL.md +85 -1
  181. package/skills/brainstorm/SKILL.md +380 -342
  182. package/skills/browser-pilot/SKILL.md +169 -168
  183. package/skills/constraint-check/SKILL.md +165 -165
  184. package/skills/context-engine/SKILL.md +408 -404
  185. package/skills/cook/SKILL.md +917 -863
  186. package/skills/db/SKILL.md +273 -273
  187. package/skills/debug/SKILL.md +465 -465
  188. package/skills/dependency-doctor/SKILL.md +265 -235
  189. package/skills/deploy/SKILL.md +274 -231
  190. package/skills/design/DESIGN-REFERENCE.md +365 -365
  191. package/skills/design/SKILL.md +590 -589
  192. package/skills/doc-processor/SKILL.md +254 -254
  193. package/skills/docs/SKILL.md +374 -374
  194. package/skills/docs-seeker/SKILL.md +178 -177
  195. package/skills/fix/SKILL.md +332 -330
  196. package/skills/git/SKILL.md +339 -339
  197. package/skills/hallucination-guard/SKILL.md +220 -219
  198. package/skills/incident/SKILL.md +254 -253
  199. package/skills/integrity-check/SKILL.md +169 -169
  200. package/skills/journal/SKILL.md +241 -240
  201. package/skills/launch/SKILL.md +344 -344
  202. package/skills/logic-guardian/SKILL.md +269 -251
  203. package/skills/marketing/SKILL.md +351 -289
  204. package/skills/mcp-builder/SKILL.md +425 -425
  205. package/skills/neural-memory/SKILL.md +359 -362
  206. package/skills/onboard/SKILL.md +432 -403
  207. package/skills/onboard/references/invariants-template.md +76 -0
  208. package/skills/onboard/scripts/detect-invariants.js +439 -0
  209. package/skills/onboard/scripts/inject-claude-md.js +150 -0
  210. package/skills/onboard/scripts/onboard-invariants.js +194 -0
  211. package/skills/perf/SKILL.md +347 -346
  212. package/skills/plan/SKILL.md +435 -428
  213. package/skills/preflight/SKILL.md +415 -415
  214. package/skills/problem-solver/SKILL.md +380 -284
  215. package/skills/rescue/SKILL.md +474 -474
  216. package/skills/research/SKILL.md +4 -0
  217. package/skills/retro/SKILL.md +3 -1
  218. package/skills/review/SKILL.md +614 -588
  219. package/skills/review-intake/SKILL.md +249 -249
  220. package/skills/safeguard/SKILL.md +200 -200
  221. package/skills/sast/SKILL.md +190 -190
  222. package/skills/scaffold/SKILL.md +328 -287
  223. package/skills/scope-guard/SKILL.md +183 -180
  224. package/skills/scout/SKILL.md +269 -263
  225. package/skills/sentinel/SKILL.md +384 -381
  226. package/skills/sentinel-env/SKILL.md +254 -254
  227. package/skills/sequential-thinking/SKILL.md +234 -234
  228. package/skills/session-bridge/SKILL.md +595 -543
  229. package/skills/session-bridge/scripts/load-invariants.js +397 -0
  230. package/skills/skill-forge/SKILL.md +581 -581
  231. package/skills/skill-router/SKILL.md +3 -0
  232. package/skills/slides/SKILL.md +19 -0
  233. package/skills/surgeon/SKILL.md +215 -215
  234. package/skills/team/SKILL.md +557 -537
  235. package/skills/test/SKILL.md +620 -614
  236. package/skills/trend-scout/SKILL.md +145 -145
  237. package/skills/verification/SKILL.md +334 -326
  238. package/skills/video-creator/SKILL.md +201 -201
  239. package/skills/watchdog/SKILL.md +168 -168
  240. package/skills/worktree/SKILL.md +140 -140
@@ -1,289 +1,351 @@
1
- ---
2
- name: marketing
3
- description: Create marketing assets and execute launch strategy. Generates landing copy, social banners, SEO meta, blog posts, and video scripts.
4
- metadata:
5
- author: runedev
6
- version: "0.4.0"
7
- layer: L2
8
- model: sonnet
9
- group: delivery
10
- tools: "Read, Write, Edit, Glob, Grep, WebFetch, WebSearch"
11
- ---
12
-
13
- # marketing
14
-
15
- ## Purpose
16
-
17
- Create marketing assets and execute launch strategy. Marketing generates landing page copy, social media banners, SEO metadata, blog posts, and video scripts. Analyzes the project to create authentic, data-driven marketing content.
18
-
19
- ## Called By (inbound)
20
-
21
- - `launch` (L1): Phase 4 MARKET — marketing phase of launch pipeline
22
- - User: `/rune marketing` direct invocation
23
-
24
- ## Calls (outbound)
25
-
26
- - `scout` (L2): scan codebase for features, README, value props
27
- - `trend-scout` (L3): market trends, competitor positioning
28
- - `research` (L3): competitor analysis, SEO keyword data
29
- - `asset-creator` (L3): generate OG images, social cards, banners
30
- - `video-creator` (L3): create demo/explainer video plan
31
- - `slides` (L3): generate presentation decks for launches and demos
32
- - `browser-pilot` (L3): capture screenshots for marketing assets
33
- - L4 extension packs: domain-specific content when context matches (e.g., @rune/content for blog posts, @rune/analytics for campaign measurement)
34
- - `@rune-pro/growth/content-scorer` (L4 Pro, optional): 5-dimension content quality gate if available, score all generated copy for AI phrase contamination and humanity
35
- - `@rune-pro/growth/cro-analyst` (L4 Pro, optional): psychology-driven CRO analysis for landing pages — if available, audit generated landing copy through 7 behavioral lenses
36
-
37
- ## Execution Steps
38
-
39
- ### Step 1 — Understand the product
40
-
41
- Call `rune:scout` to scan the codebase. Ask scout to extract:
42
- - Feature list (what the product actually does)
43
- - README summary
44
- - Target audience signals (from code, comments, config)
45
- - Tech stack (relevant for developer marketing)
46
-
47
- Read any existing `marketing/`, `docs/`, or `landing/` directories if present.
48
-
49
- ### Step 2 — Research market
50
-
51
- Call `rune:trend-scout` with the product category to identify:
52
- - Top 3 competitors and their positioning
53
- - Current market trends relevant to this product
54
- - Differentiators to emphasize
55
-
56
- Call `rune:research` for:
57
- - SEO keyword opportunities (volume vs. competition)
58
- - Competitor messaging patterns to avoid or counter
59
-
60
- ### Step 2.5 — Establish Brand Voice
61
-
62
- Before generating any copy, define the brand voice contract. This prevents inconsistent tone across marketing assets.
63
-
64
- **Brand Voice Matrix** — answer these for the product:
65
-
66
- | Dimension | Spectrum | This product |
67
- |-----------|----------|--------------|
68
- | Formality | Casual ←→ Formal | [position] |
69
- | Humor | Serious ←→ Playful | [position] |
70
- | Authority | Peer ←→ Expert | [position] |
71
- | Warmth | Clinical ←→ Friendly | [position] |
72
- | Urgency | Patient ←→ Urgent | [position] |
73
-
74
- **Voice rules** (generate 3-5):
75
- - "We say [X], never [Y]" — e.g., "We say 'start free', never 'sign up now'"
76
- - "Our tone is [X] because our users are [Y]"
77
- - "Avoid [specific words/phrases] because [reason]"
78
-
79
- **Vocabulary list** (5-10 terms):
80
- - Preferred terms: [words this brand uses]
81
- - Forbidden terms: [words to avoid and why]
82
- - Jargon policy: [use/avoid/explain technical terms]
83
-
84
- Save voice contract to `marketing/brand-voice.md`. All subsequent copy MUST follow this voice.
85
-
86
- If `marketing/brand-voice.md` already exists → Read it and apply. Do NOT regenerate without user request.
87
-
88
- ### Step 3 — Generate copy
89
-
90
- Using product understanding, market research, and **brand voice contract**, produce:
91
-
92
- **Anti-AI Copy Rules** (apply to ALL generated copy):
93
- - NEVER open with "In today's...", "Are you struggling with...", "Have you ever wondered..."
94
- - NEVER use: "game-changer", "revolutionary", "seamlessly", "leverage", "unlock the power of", "dive deep into", "delve", "robust", "streamline", "cutting-edge"
95
- - MUST use one of 5 hook types for headlines: Provocative Question, Specific Scenario, Surprising Statistic, Bold Statement, or Counterintuitive Claim
96
- - MUST include specific numbers, names, or outcomes not vague claims ("many users love it")
97
- - If the copy sounds like it was written by a generic AI rewrite until it has personality
98
-
99
- **Hero section**
100
- - Headline (under 10 words, outcome-focused, uses one of the 5 hook types above)
101
- - Subheadline (1-2 sentences expanding the promise)
102
- - Primary CTA button text
103
-
104
- **Value propositions** (3 items)
105
- - Icon/emoji, title, 1-sentence description each
106
-
107
- **Feature list** (pulled from Step 1 scout output)
108
- - Name + benefit phrasing for each feature
109
-
110
- **Social proof section** (placeholder copy if no real testimonials)
111
-
112
- **Secondary CTA** (bottom of page)
113
-
114
- ### Step 4 — Social posts
115
-
116
- Produce ready-to-post content:
117
-
118
- **Twitter/X thread** (5-7 tweets)
119
- - Tweet 1: hook (the big claim)
120
- - Tweets 2-5: one feature or benefit per tweet with specifics
121
- - Tweet 6: social proof or stat
122
- - Tweet 7: CTA with link
123
-
124
- **LinkedIn post** (150-300 words)
125
- - Professional tone, problem-solution-proof structure
126
-
127
- **Product Hunt tagline** (under 60 characters)
128
-
129
- ### Step 5 — SEO metadata
130
-
131
- Produce for the landing page:
132
-
133
- ```html
134
- <title>[Meta title under 60 chars, primary keyword first]</title>
135
- <meta name="description" content="[150-160 chars, includes CTA]">
136
- <meta property="og:title" content="[OG title]">
137
- <meta property="og:description" content="[OG description]">
138
- <meta property="og:image" content="[OG image path]">
139
- <link rel="canonical" href="[canonical URL]">
140
- ```
141
-
142
- Target keywords list (5-10 terms with rationale).
143
-
144
- ### Step 5.5 SEO Audit (if existing site)
145
-
146
- If the project already has a deployed site or existing pages, run a technical SEO audit before generating new metadata.
147
-
148
- **Automated checks** (use Grep + Read on codebase):
149
-
150
- 1. **Meta tags completeness**: Every page has `<title>`, `<meta description>`, `og:title`, `og:description`, `og:image`. Flag pages missing any.
151
- 2. **Heading hierarchy**: Every page has exactly one `<h1>`. No skipped levels (h1→h3 without h2). Use Grep for `<h1`, `<h2`, `<h3` patterns.
152
- 3. **Image alt text**: Search for `<img` without `alt=` attribute. Every image needs descriptive alt text (not "image", not empty).
153
- 4. **Canonical URLs**: Check for `<link rel="canonical"`. Missing canonical = duplicate content risk.
154
- 5. **Structured data**: Check for `application/ld+json` or microdata. Recommend adding if missing (Product, Organization, Article schemas).
155
- 6. **Performance signals**: Check for `next/image` or lazy loading on images. Flag `<img>` without `loading="lazy"` below fold.
156
- 7. **Sitemap**: Check for `sitemap.xml` or sitemap generation in build config. Flag if missing.
157
- 8. **Robots**: Check for `robots.txt`. Verify it doesn't accidentally block important pages.
158
-
159
- **9. Schema Markup**: Check for `application/ld+json` blocks. Recommend adding relevant types:
160
-
161
- | Content Type | Schema Type | Key Properties |
162
- |-------------|-------------|---------------|
163
- | Product page | `Product` | name, description, offers, review, aggregateRating |
164
- | Article/Blog | `Article` | headline, author, datePublished, dateModified, image |
165
- | FAQ section | `FAQPage` | mainEntity[].name, mainEntity[].acceptedAnswer |
166
- | How-to guide | `HowTo` | name, step[].name, step[].text, totalTime |
167
- | Organization | `Organization` | name, url, logo, sameAs[] |
168
- | Breadcrumbs | `BreadcrumbList` | itemListElement[].name, itemListElement[].item |
169
- | Software | `SoftwareApplication` | name, operatingSystem, applicationCategory, offers |
170
- | Review | `Review` | itemReviewed, reviewRating, author, reviewBody |
171
- | Comparison | `ItemList` | itemListElement[] with individual Product/Review schemas |
172
- | Local biz | `LocalBusiness` | name, address, telephone, openingHoursSpecification |
173
-
174
- Use `@graph` pattern to combine multiple schema types on a single page:
175
- ```json
176
- {
177
- "@context": "https://schema.org",
178
- "@graph": [
179
- { "@type": "Organization", ... },
180
- { "@type": "WebPage", ... },
181
- { "@type": "BreadcrumbList", ... }
182
- ]
183
- }
184
- ```
185
-
186
- **10. Programmatic SEO awareness**: If the site has repeatable content patterns (product listings, city pages, comparison pages), note the opportunity for template-driven SEO pages. Common playbooks:
187
- - **Templates**: `best [tool] for [persona]` pages across personas
188
- - **Comparisons**: `[product A] vs [product B]` for all competitor pairs
189
- - **Locations**: `[service] in [city]` for local reach
190
- - **Integrations**: `[product] + [integration]` for every supported integration
191
-
192
- Flag programmatic SEO opportunities in the audit report. Execution details are in `@rune-pro/growth` pack.
193
-
194
- **Output**: SEO Audit Report with pass/fail per check. Save to `marketing/seo-audit.md`.
195
-
196
- Fix critical SEO issues (missing titles, broken heading hierarchy) in the implementation plan. Non-critical issues go to `marketing/seo-backlog.md`.
197
-
198
- ### Step 6 Visual assets
199
-
200
- Call `rune:asset-creator` to generate:
201
- - OG image (1200x630px) — product name, tagline, brand colors
202
- - Twitter card image (1200x628px)
203
- - Product Hunt thumbnail (240x240px)
204
-
205
- Call `rune:video-creator` to produce:
206
- - 60-second demo video script (screen recording plan)
207
- - Shot list with timestamps
208
-
209
- Call `rune:slides` to generate presentation decks for launch demos, sprint reviews, or investor pitches.
210
-
211
- If `rune:browser-pilot` is available, capture screenshots of the running app to use as real product imagery.
212
-
213
- ### Step 7 Present for approval
214
-
215
- Output all assets as structured markdown sections. Present to user for review before saving files.
216
-
217
- After user approves, use `Write` to save:
218
- - `marketing/brand-voice.md` — voice contract from Step 2.5
219
- - `marketing/landing-copy.md` all copy from Step 3
220
- - `marketing/social-posts.md` all posts from Step 4
221
- - `marketing/seo-meta.json` SEO data from Step 5
222
- - `marketing/seo-audit.md` SEO audit results from Step 5.5 (if existing site)
223
- - `marketing/video-script.md` video plan from Step 6
224
-
225
- ## Constraints
226
-
227
- 1. MUST base all claims on actual product capabilities no aspirational features
228
- 2. MUST verify deploy is live before generating marketing materials
229
- 3. MUST NOT fabricate testimonials, stats, or benchmarks
230
- 4. MUST include accurate technical details wrong tech specs destroy credibility
231
-
232
- ## Output Format
233
-
234
- ```
235
- ## Marketing Assets
236
- - **Landing Copy**: [generated — headline, subheadline, value props, features, CTAs]
237
- - **Social Posts**: Twitter thread (N tweets), LinkedIn post, PH tagline
238
- - **SEO Metadata**: title, description, OG tags, N target keywords
239
- - **Visuals**: OG image, Twitter card, PH thumbnail
240
- - **Video**: 60s demo script with shot list
241
-
242
- ### Generated Files
243
- - marketing/landing-copy.md
244
- - marketing/social-posts.md
245
- - marketing/seo-meta.json
246
- - marketing/video-script.md
247
- ```
248
-
249
- ## Sharp Edges
250
-
251
- Known failure modes for this skill. Check these before declaring done.
252
-
253
- | Failure Mode | Severity | Mitigation |
254
- |---|---|---|
255
- | Fabricating statistics, benchmarks, or testimonials | CRITICAL | Constraint 3: no fabrication — if no real stats exist, use honest placeholder copy |
256
- | Generating copy before deploy verified live | HIGH | Constraint 2: deploy must be confirmed live before marketing runs |
257
- | Copy not based on actual codebase features (invented value props) | HIGH | scout must run in Step 1 features extracted from actual code, not assumptions |
258
- | Missing SEO keyword analysis (no research call) | MEDIUM | Step 2: research call for keyword data is mandatory for SEO section |
259
- | Files saved without user approval | MEDIUM | Step 7: present ALL assets to user, wait for approval before writing files |
260
-
261
- ## Done When
262
-
263
- - scout completed and actual feature list extracted
264
- - Brand voice contract established (or existing one loaded)
265
- - Competitor/trend analysis done via trend-scout + research
266
- - Hero copy, value props, social posts, and SEO metadata generated (following brand voice)
267
- - SEO audit completed (if existing site) with pass/fail results
268
- - Visual assets requested from asset-creator
269
- - Video script requested from video-creator (if requested)
270
- - User has approved all content
271
- - Files saved to marketing/ directory
272
- - Marketing Assets report emitted with file list
273
-
274
- ## Returns
275
-
276
- | Artifact | Format | Location |
277
- |----------|--------|----------|
278
- | Brand voice contract | Markdown | `marketing/brand-voice.md` |
279
- | Landing page copy | Markdown | `marketing/landing-copy.md` |
280
- | Social media posts | Markdown | `marketing/social-posts.md` |
281
- | SEO metadata | JSON | `marketing/seo-meta.json` |
282
- | SEO audit report | Markdown | `marketing/seo-audit.md` |
283
- | Video demo script | Markdown | `marketing/video-script.md` |
284
-
285
- ## Cost Profile
286
-
287
- ~2000-5000 tokens input, ~1000-3000 tokens output. Sonnet for copywriting quality.
288
-
289
- **Scope guardrail:** marketing generates assets based on actual product capabilities only — no aspirational copy, no fabricated stats.
1
+ ---
2
+ name: marketing
3
+ description: Create marketing assets and execute launch strategy. Generates landing copy, social banners, SEO meta, blog posts, and video scripts.
4
+ metadata:
5
+ author: runedev
6
+ version: "0.5.0"
7
+ layer: L2
8
+ model: sonnet
9
+ group: delivery
10
+ tools: "Read, Write, Edit, Glob, Grep, WebFetch, WebSearch"
11
+ ---
12
+
13
+ # marketing
14
+
15
+ ## Purpose
16
+
17
+ Create marketing assets and execute launch strategy. Marketing generates landing page copy, social media banners, SEO metadata, blog posts, and video scripts. Analyzes the project to create authentic, data-driven marketing content.
18
+
19
+ ## Called By (inbound)
20
+
21
+ - `launch` (L1): Phase 4 MARKET — marketing phase of launch pipeline
22
+ - User: `/rune marketing` direct invocation
23
+
24
+ ## Calls (outbound)
25
+
26
+ - `scout` (L2): scan codebase for features, README, value props
27
+ - `trend-scout` (L3): market trends, competitor positioning
28
+ - `research` (L3): competitor analysis, SEO keyword data
29
+ - `asset-creator` (L3): generate OG images, social cards, banners
30
+ - `video-creator` (L3): create demo/explainer video plan
31
+ - `slides` (L3): generate presentation decks for launches and demos
32
+ - `doc-processor` (L3): export marketing deliverables as PDF/DOCX (press kits, one-pagers, sponsor decks)
33
+ - `browser-pilot` (L3): capture screenshots for marketing assets
34
+ - L4 extension packs: domain-specific content when context matches (e.g., @rune/content for blog posts, @rune/analytics for campaign measurement)
35
+ - `@rune-pro/growth/content-scorer` (L4 Pro, optional): 5-dimension content quality gate — if available, score all generated copy for AI phrase contamination and humanity
36
+ - `@rune-pro/growth/cro-analyst` (L4 Pro, optional): psychology-driven CRO analysis for landing pages — if available, audit generated landing copy through 7 behavioral lenses
37
+
38
+ ## Execution Steps
39
+
40
+ ### Step 1 — Understand the product
41
+
42
+ Call `rune:scout` to scan the codebase. Ask scout to extract:
43
+ - Feature list (what the product actually does)
44
+ - README summary
45
+ - Target audience signals (from code, comments, config)
46
+ - Tech stack (relevant for developer marketing)
47
+
48
+ Read any existing `marketing/`, `docs/`, or `landing/` directories if present.
49
+
50
+ ### Step 2 — Research market
51
+
52
+ Call `rune:trend-scout` with the product category to identify:
53
+ - Top 3 competitors and their positioning
54
+ - Current market trends relevant to this product
55
+ - Differentiators to emphasize
56
+
57
+ Call `rune:research` for:
58
+ - SEO keyword opportunities (volume vs. competition)
59
+ - Competitor messaging patterns to avoid or counter
60
+
61
+ ### Step 2.5 — Establish Brand Voice
62
+
63
+ Before generating any copy, define the brand voice contract. This prevents inconsistent tone across marketing assets.
64
+
65
+ **Brand Voice Matrix** — answer these for the product:
66
+
67
+ | Dimension | Spectrum | This product |
68
+ |-----------|----------|--------------|
69
+ | Formality | Casual ←→ Formal | [position] |
70
+ | Humor | Serious ←→ Playful | [position] |
71
+ | Authority | Peer ←→ Expert | [position] |
72
+ | Warmth | Clinical ←→ Friendly | [position] |
73
+ | Urgency | Patient ←→ Urgent | [position] |
74
+
75
+ **Voice rules** (generate 3-5):
76
+ - "We say [X], never [Y]" — e.g., "We say 'start free', never 'sign up now'"
77
+ - "Our tone is [X] because our users are [Y]"
78
+ - "Avoid [specific words/phrases] because [reason]"
79
+
80
+ **Vocabulary list** (5-10 terms):
81
+ - Preferred terms: [words this brand uses]
82
+ - Forbidden terms: [words to avoid and why]
83
+ - Jargon policy: [use/avoid/explain technical terms]
84
+
85
+ Save voice contract to `marketing/brand-voice.md`. All subsequent copy MUST follow this voice.
86
+
87
+ If `marketing/brand-voice.md` already exists → Read it and apply. Do NOT regenerate without user request.
88
+
89
+ ### Step 3 — Generate copy
90
+
91
+ Using product understanding, market research, and **brand voice contract**, produce:
92
+
93
+ **Anti-AI Copy Rules** (apply to ALL generated copy):
94
+ - NEVER open with "In today's...", "Are you struggling with...", "Have you ever wondered..."
95
+ - NEVER use: "game-changer", "revolutionary", "seamlessly", "leverage", "unlock the power of", "dive deep into", "delve", "robust", "streamline", "cutting-edge"
96
+ - MUST use one of 5 hook types for headlines: Provocative Question, Specific Scenario, Surprising Statistic, Bold Statement, or Counterintuitive Claim
97
+ - MUST include specific numbers, names, or outcomes not vague claims ("many users love it")
98
+ - If the copy sounds like it was written by a generic AI → rewrite until it has personality
99
+
100
+ **Hero section**
101
+ - Headline (under 10 words, outcome-focused, uses one of the 5 hook types above)
102
+ - Subheadline (1-2 sentences expanding the promise)
103
+ - Primary CTA button text
104
+
105
+ **Value propositions** (3 items)
106
+ - Icon/emoji, title, 1-sentence description each
107
+
108
+ **Feature list** (pulled from Step 1 scout output)
109
+ - Name + benefit phrasing for each feature
110
+
111
+ **Social proof section** (placeholder copy if no real testimonials)
112
+
113
+ **Secondary CTA** (bottom of page)
114
+
115
+ ### Step 3.5 — Competitive Response Playbook
116
+
117
+ When `trend-scout` identifies active competitors or market threats, generate pre-planned counter-strategies. This turns reactive scrambling into prepared responses.
118
+
119
+ **Four Threat Scenarios:**
120
+
121
+ | Scenario | Trigger Signal | Response Window |
122
+ |----------|---------------|-----------------|
123
+ | **Price War** | Competitor drops price >20% | 24-48 hours |
124
+ | **New Market Entry** | New competitor launches in your space | 1-2 weeks |
125
+ | **Viral Competitor** | Competitor content goes viral (10x normal engagement) | 24-72 hours |
126
+ | **Fast Follower** | Competitor copies your feature within 30 days of launch | 1 week |
127
+
128
+ **For each relevant scenario, document:**
129
+
130
+ ```markdown
131
+ ## Counter-Strategy: [Scenario Name]
132
+
133
+ ### Trigger
134
+ - Signal: [what to watch for]
135
+ - Detection: [how to monitor — social listening, price tracking, etc.]
136
+ - Response window: [how fast to react]
137
+
138
+ ### Counter-Move
139
+ - **Immediate (Day 1)**: [first response — usually messaging/positioning]
140
+ - **Short-term (Week 1)**: [tactical moves — promos, content, outreach]
141
+ - **Medium-term (Month 1)**: [strategic adjustments — product, pricing, positioning]
142
+
143
+ ### Resources Required
144
+ - Team: [who needs to be involved]
145
+ - Budget: [estimated cost]
146
+ - Assets: [what to prepare in advance]
147
+
148
+ ### Success Metric
149
+ - [How to know the counter-strategy worked]
150
+
151
+ ### Pre-Built Assets
152
+ - [ ] Response messaging template
153
+ - [ ] Social post drafts
154
+ - [ ] Email to existing customers
155
+ - [ ] FAQ for sales/support team
156
+ ```
157
+
158
+ **Rules:**
159
+ - Only generate playbooks for scenarios relevant to this market (skip if no direct competitors)
160
+ - Pre-build assets NOW — when the trigger fires, you execute, not create
161
+ - Response window is real if you can't respond in time, the playbook failed
162
+ - Test the detection mechanism — if you can't see the trigger, you can't respond
163
+
164
+ **Skip this step if:**
165
+ - Product is in a blue ocean (no direct competitors yet)
166
+ - User explicitly requests marketing assets only, no strategy
167
+
168
+ Save to `marketing/counter-playbook.md`.
169
+
170
+ ### Step 4 Social posts
171
+
172
+ Produce ready-to-post content:
173
+
174
+ **Twitter/X thread** (5-7 tweets)
175
+ - Tweet 1: hook (the big claim)
176
+ - Tweets 2-5: one feature or benefit per tweet with specifics
177
+ - Tweet 6: social proof or stat
178
+ - Tweet 7: CTA with link
179
+
180
+ **LinkedIn post** (150-300 words)
181
+ - Professional tone, problem-solution-proof structure
182
+
183
+ **Product Hunt tagline** (under 60 characters)
184
+
185
+ ### Step 5 — SEO metadata
186
+
187
+ Produce for the landing page:
188
+
189
+ ```html
190
+ <title>[Meta title under 60 chars, primary keyword first]</title>
191
+ <meta name="description" content="[150-160 chars, includes CTA]">
192
+ <meta property="og:title" content="[OG title]">
193
+ <meta property="og:description" content="[OG description]">
194
+ <meta property="og:image" content="[OG image path]">
195
+ <link rel="canonical" href="[canonical URL]">
196
+ ```
197
+
198
+ Target keywords list (5-10 terms with rationale).
199
+
200
+ ### Step 5.5 — SEO Audit (if existing site)
201
+
202
+ If the project already has a deployed site or existing pages, run a technical SEO audit before generating new metadata.
203
+
204
+ **Automated checks** (use Grep + Read on codebase):
205
+
206
+ 1. **Meta tags completeness**: Every page has `<title>`, `<meta description>`, `og:title`, `og:description`, `og:image`. Flag pages missing any.
207
+ 2. **Heading hierarchy**: Every page has exactly one `<h1>`. No skipped levels (h1→h3 without h2). Use Grep for `<h1`, `<h2`, `<h3` patterns.
208
+ 3. **Image alt text**: Search for `<img` without `alt=` attribute. Every image needs descriptive alt text (not "image", not empty).
209
+ 4. **Canonical URLs**: Check for `<link rel="canonical"`. Missing canonical = duplicate content risk.
210
+ 5. **Structured data**: Check for `application/ld+json` or microdata. Recommend adding if missing (Product, Organization, Article schemas).
211
+ 6. **Performance signals**: Check for `next/image` or lazy loading on images. Flag `<img>` without `loading="lazy"` below fold.
212
+ 7. **Sitemap**: Check for `sitemap.xml` or sitemap generation in build config. Flag if missing.
213
+ 8. **Robots**: Check for `robots.txt`. Verify it doesn't accidentally block important pages.
214
+
215
+ **9. Schema Markup**: Check for `application/ld+json` blocks. Recommend adding relevant types:
216
+
217
+ | Content Type | Schema Type | Key Properties |
218
+ |-------------|-------------|---------------|
219
+ | Product page | `Product` | name, description, offers, review, aggregateRating |
220
+ | Article/Blog | `Article` | headline, author, datePublished, dateModified, image |
221
+ | FAQ section | `FAQPage` | mainEntity[].name, mainEntity[].acceptedAnswer |
222
+ | How-to guide | `HowTo` | name, step[].name, step[].text, totalTime |
223
+ | Organization | `Organization` | name, url, logo, sameAs[] |
224
+ | Breadcrumbs | `BreadcrumbList` | itemListElement[].name, itemListElement[].item |
225
+ | Software | `SoftwareApplication` | name, operatingSystem, applicationCategory, offers |
226
+ | Review | `Review` | itemReviewed, reviewRating, author, reviewBody |
227
+ | Comparison | `ItemList` | itemListElement[] with individual Product/Review schemas |
228
+ | Local biz | `LocalBusiness` | name, address, telephone, openingHoursSpecification |
229
+
230
+ Use `@graph` pattern to combine multiple schema types on a single page:
231
+ ```json
232
+ {
233
+ "@context": "https://schema.org",
234
+ "@graph": [
235
+ { "@type": "Organization", ... },
236
+ { "@type": "WebPage", ... },
237
+ { "@type": "BreadcrumbList", ... }
238
+ ]
239
+ }
240
+ ```
241
+
242
+ **10. Programmatic SEO awareness**: If the site has repeatable content patterns (product listings, city pages, comparison pages), note the opportunity for template-driven SEO pages. Common playbooks:
243
+ - **Templates**: `best [tool] for [persona]` pages across personas
244
+ - **Comparisons**: `[product A] vs [product B]` for all competitor pairs
245
+ - **Locations**: `[service] in [city]` for local reach
246
+ - **Integrations**: `[product] + [integration]` for every supported integration
247
+
248
+ Flag programmatic SEO opportunities in the audit report. Execution details are in `@rune-pro/growth` pack.
249
+
250
+ **Output**: SEO Audit Report with pass/fail per check. Save to `marketing/seo-audit.md`.
251
+
252
+ Fix critical SEO issues (missing titles, broken heading hierarchy) in the implementation plan. Non-critical issues go to `marketing/seo-backlog.md`.
253
+
254
+ ### Step 6 — Visual assets
255
+
256
+ Call `rune:asset-creator` to generate:
257
+ - OG image (1200x630px) — product name, tagline, brand colors
258
+ - Twitter card image (1200x628px)
259
+ - Product Hunt thumbnail (240x240px)
260
+
261
+ Call `rune:video-creator` to produce:
262
+ - 60-second demo video script (screen recording plan)
263
+ - Shot list with timestamps
264
+
265
+ Call `rune:slides` to generate presentation decks for launch demos, sprint reviews, or investor pitches.
266
+
267
+ If `rune:browser-pilot` is available, capture screenshots of the running app to use as real product imagery.
268
+
269
+ ### Step 7 Present for approval
270
+
271
+ Output all assets as structured markdown sections. Present to user for review before saving files.
272
+
273
+ After user approves, use `Write` to save:
274
+ - `marketing/brand-voice.md` — voice contract from Step 2.5
275
+ - `marketing/landing-copy.md` — all copy from Step 3
276
+ - `marketing/counter-playbook.md` competitive response strategies from Step 3.5 (if competitors exist)
277
+ - `marketing/social-posts.md` — all posts from Step 4
278
+ - `marketing/seo-meta.json` — SEO data from Step 5
279
+ - `marketing/seo-audit.md` — SEO audit results from Step 5.5 (if existing site)
280
+ - `marketing/video-script.md` — video plan from Step 6
281
+
282
+ ## Constraints
283
+
284
+ 1. MUST base all claims on actual product capabilities — no aspirational features
285
+ 2. MUST verify deploy is live before generating marketing materials
286
+ 3. MUST NOT fabricate testimonials, stats, or benchmarks
287
+ 4. MUST include accurate technical details wrong tech specs destroy credibility
288
+
289
+ ## Output Format
290
+
291
+ ```
292
+ ## Marketing Assets
293
+ - **Landing Copy**: [generated — headline, subheadline, value props, features, CTAs]
294
+ - **Social Posts**: Twitter thread (N tweets), LinkedIn post, PH tagline
295
+ - **SEO Metadata**: title, description, OG tags, N target keywords
296
+ - **Visuals**: OG image, Twitter card, PH thumbnail
297
+ - **Video**: 60s demo script with shot list
298
+
299
+ ### Generated Files
300
+ - marketing/landing-copy.md
301
+ - marketing/social-posts.md
302
+ - marketing/seo-meta.json
303
+ - marketing/video-script.md
304
+ ```
305
+
306
+ ## Sharp Edges
307
+
308
+ Known failure modes for this skill. Check these before declaring done.
309
+
310
+ | Failure Mode | Severity | Mitigation |
311
+ |---|---|---|
312
+ | Fabricating statistics, benchmarks, or testimonials | CRITICAL | Constraint 3: no fabrication — if no real stats exist, use honest placeholder copy |
313
+ | Generating copy before deploy verified live | HIGH | Constraint 2: deploy must be confirmed live before marketing runs |
314
+ | Copy not based on actual codebase features (invented value props) | HIGH | scout must run in Step 1 — features extracted from actual code, not assumptions |
315
+ | Missing SEO keyword analysis (no research call) | MEDIUM | Step 2: research call for keyword data is mandatory for SEO section |
316
+ | Files saved without user approval | MEDIUM | Step 7: present ALL assets to user, wait for approval before writing files |
317
+ | Counter-playbook without detection mechanism | HIGH | Every scenario needs a monitoring method — "watch for price drops" is useless without specifying WHERE to watch and HOW to automate |
318
+ | Counter-playbook with unrealistic response windows | MEDIUM | If response window is 24h but pre-built assets don't exist, the playbook will fail — either extend window or create assets NOW |
319
+ | Generating counter-playbook for blue ocean products | LOW | Skip Step 3.5 if no direct competitors — counter-strategies need someone to counter |
320
+
321
+ ## Done When
322
+
323
+ - scout completed and actual feature list extracted
324
+ - Brand voice contract established (or existing one loaded)
325
+ - Competitor/trend analysis done via trend-scout + research
326
+ - Competitive response playbook generated (if competitors exist) with pre-built asset checklist
327
+ - Hero copy, value props, social posts, and SEO metadata generated (following brand voice)
328
+ - SEO audit completed (if existing site) with pass/fail results
329
+ - Visual assets requested from asset-creator
330
+ - Video script requested from video-creator (if requested)
331
+ - User has approved all content
332
+ - Files saved to marketing/ directory
333
+ - Marketing Assets report emitted with file list
334
+
335
+ ## Returns
336
+
337
+ | Artifact | Format | Location |
338
+ |----------|--------|----------|
339
+ | Brand voice contract | Markdown | `marketing/brand-voice.md` |
340
+ | Landing page copy | Markdown | `marketing/landing-copy.md` |
341
+ | Competitive response playbook | Markdown | `marketing/counter-playbook.md` |
342
+ | Social media posts | Markdown | `marketing/social-posts.md` |
343
+ | SEO metadata | JSON | `marketing/seo-meta.json` |
344
+ | SEO audit report | Markdown | `marketing/seo-audit.md` |
345
+ | Video demo script | Markdown | `marketing/video-script.md` |
346
+
347
+ ## Cost Profile
348
+
349
+ ~2000-5000 tokens input, ~1000-3000 tokens output. Sonnet for copywriting quality.
350
+
351
+ **Scope guardrail:** marketing generates assets based on actual product capabilities only — no aspirational copy, no fabricated stats.