@jairodri/huckleberry-cli 1.0.2 → 1.1.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 (745) hide show
  1. package/README.md +85 -0
  2. package/agents/cos.json +2 -5
  3. package/agents/hermes/AGENTS.md +25 -49
  4. package/agents/hermes/fix-kimaki/SKILL.md +19 -92
  5. package/agents/hermes/hermes-fixer.md +44 -74
  6. package/agents/hermes.json +6 -18
  7. package/kanban/SKILL.md +18 -18
  8. package/kanban/package.json +1 -1
  9. package/kanban/src/dispatcher.mjs +1 -1
  10. package/kanban/templates/blog-social-campaign.yaml +6 -2
  11. package/kanban/templates/social-campaign.yaml +9 -4
  12. package/mcp/jev-calibration.mjs +335 -0
  13. package/mcp/jev-client.mjs +119 -0
  14. package/mcp/jev-thresholds.json +27 -0
  15. package/package.json +13 -9
  16. package/scripts/doctor-watchdog.sh +73 -0
  17. package/scripts/install-services.sh +34 -27
  18. package/scripts/self-improve-weekly.sh +34 -0
  19. package/scripts/sync-skills.mjs +121 -0
  20. package/skills/ab-test-setup/SKILL.md +266 -0
  21. package/skills/ab-test-setup/evals/evals.json +105 -0
  22. package/skills/ab-test-setup/references/sample-size-guide.md +263 -0
  23. package/skills/ab-test-setup/references/test-templates.md +277 -0
  24. package/skills/agent-reach/SKILL.md +132 -0
  25. package/skills/agent-reach/references/career.md +29 -0
  26. package/skills/agent-reach/references/dev.md +62 -0
  27. package/skills/agent-reach/references/search.md +33 -0
  28. package/skills/agent-reach/references/social.md +232 -0
  29. package/skills/agent-reach/references/video.md +130 -0
  30. package/skills/agent-reach/references/web.md +50 -0
  31. package/skills/ai-agent-seo/SKILL.md +450 -0
  32. package/skills/ai-cold-email-intelligence/SKILL.md +54 -0
  33. package/skills/ai-cold-email-intelligence/references/prompts.md +21 -0
  34. package/skills/ai-consensus-builder/SKILL.md +324 -0
  35. package/skills/ai-seo/SKILL.md +399 -0
  36. package/skills/ai-seo/evals/evals.json +90 -0
  37. package/skills/ai-seo/references/content-patterns.md +284 -0
  38. package/skills/ai-seo/references/platform-ranking-factors.md +152 -0
  39. package/skills/ai-visibility-audit/SKILL.md +322 -0
  40. package/skills/analytics-tracking/SKILL.md +309 -0
  41. package/skills/analytics-tracking/evals/evals.json +90 -0
  42. package/skills/analytics-tracking/references/event-library.md +260 -0
  43. package/skills/analytics-tracking/references/ga4-implementation.md +300 -0
  44. package/skills/analytics-tracking/references/gtm-implementation.md +390 -0
  45. package/skills/article-generator/SKILL.md +216 -0
  46. package/skills/auto-indexing/SKILL.md +179 -0
  47. package/skills/auto-indexing/scripts/auto-indexing.js +257 -0
  48. package/skills/auto-skill/SKILL.md +151 -0
  49. package/skills/auto-skill/correction-queue.js +102 -0
  50. package/skills/auto-skill/dedup.js +97 -0
  51. package/skills/auto-skill/skill-router.js +224 -0
  52. package/skills/autoresearch/SKILL.md +334 -0
  53. package/skills/autoresearch/autoresearch-autoresearch/SKILL.md.baseline +329 -0
  54. package/skills/autoresearch/autoresearch-autoresearch/changelog.md +34 -0
  55. package/skills/autoresearch/autoresearch-autoresearch/dashboard.html +116 -0
  56. package/skills/autoresearch/autoresearch-autoresearch/evals.md +39 -0
  57. package/skills/autoresearch/autoresearch-autoresearch/results.json +44 -0
  58. package/skills/autoresearch/autoresearch-autoresearch/results.tsv +3 -0
  59. package/skills/autoresearch/eval-guide.md +121 -0
  60. package/skills/b2b-cold-outreach/SKILL.md +322 -0
  61. package/skills/birdclaw/SKILL.md +82 -0
  62. package/skills/brainstorm/SKILL.md +168 -0
  63. package/skills/brand-kit-playground/SKILL.md +312 -0
  64. package/skills/brand-kit-playground/references/html-architecture.md +316 -0
  65. package/skills/brand-kit-playground/references/steal-patterns.md +88 -0
  66. package/skills/brand-voice/SKILL.md +223 -0
  67. package/skills/brand-voice/references/honesty-as-positioning.md +60 -0
  68. package/skills/brand-voice/references/voice-modes.md +1158 -0
  69. package/skills/business-advisory-council/README.md +136 -0
  70. package/skills/business-advisory-council/SKILL.md +94 -0
  71. package/skills/business-advisory-council/business-advisory-council.py +492 -0
  72. package/skills/business-advisory-council/discord-components-decision.json +8 -0
  73. package/skills/business-advisory-council/examples/steve-conley-partnership.json +6 -0
  74. package/skills/business-advisory-council/steve-conley-call-brief.json +6 -0
  75. package/skills/churn-prevention/SKILL.md +305 -0
  76. package/skills/churn-prevention/evals/evals.json +93 -0
  77. package/skills/churn-prevention/references/cancel-flow-patterns.md +316 -0
  78. package/skills/churn-prevention/references/dunning-playbook.md +408 -0
  79. package/skills/claw-compactor/LICENSE +21 -0
  80. package/skills/claw-compactor/README.md +459 -0
  81. package/skills/claw-compactor/SKILL.md +329 -0
  82. package/skills/claw-compactor/benchmark/RESULTS.md +104 -0
  83. package/skills/claw-compactor/benchmark/__init__.py +1 -0
  84. package/skills/claw-compactor/benchmark/compressors.py +520 -0
  85. package/skills/claw-compactor/benchmark/data/sample_01_devops.json +82 -0
  86. package/skills/claw-compactor/benchmark/data/sample_02_trading.json +54 -0
  87. package/skills/claw-compactor/benchmark/data/sample_03_ml_short.json +38 -0
  88. package/skills/claw-compactor/benchmark/data/sample_04_mixed_long.json +318 -0
  89. package/skills/claw-compactor/benchmark/data/sample_05_sysadmin.json +56 -0
  90. package/skills/claw-compactor/benchmark/evaluate.py +278 -0
  91. package/skills/claw-compactor/benchmark/report.py +241 -0
  92. package/skills/claw-compactor/benchmark/results/benchmark_results.json +405 -0
  93. package/skills/claw-compactor/benchmark/run_benchmark.py +238 -0
  94. package/skills/claw-compactor/engram.yaml +49 -0
  95. package/skills/claw-compactor/proxy/README.md +87 -0
  96. package/skills/claw-compactor/proxy/dashboard.html +804 -0
  97. package/skills/claw-compactor/proxy/event-log.mjs +213 -0
  98. package/skills/claw-compactor/proxy/fair-queue.mjs +288 -0
  99. package/skills/claw-compactor/proxy/metrics-store.mjs +425 -0
  100. package/skills/claw-compactor/proxy/package-lock.json +125 -0
  101. package/skills/claw-compactor/proxy/package.json +15 -0
  102. package/skills/claw-compactor/proxy/portal.html +360 -0
  103. package/skills/claw-compactor/proxy/process-registry.mjs +447 -0
  104. package/skills/claw-compactor/proxy/rate-limiter.mjs +117 -0
  105. package/skills/claw-compactor/proxy/redis-client.mjs +75 -0
  106. package/skills/claw-compactor/proxy/retry.mjs +182 -0
  107. package/skills/claw-compactor/proxy/server.mjs +2100 -0
  108. package/skills/claw-compactor/proxy/session-affinity.mjs +177 -0
  109. package/skills/claw-compactor/proxy/start.sh +23 -0
  110. package/skills/claw-compactor/proxy/test/event-log.test.mjs +237 -0
  111. package/skills/claw-compactor/proxy/test/helpers.mjs +103 -0
  112. package/skills/claw-compactor/proxy/test/integration.test.mjs +297 -0
  113. package/skills/claw-compactor/proxy/test/metrics-store.test.mjs +243 -0
  114. package/skills/claw-compactor/proxy/test/process-registry.test.mjs +390 -0
  115. package/skills/claw-compactor/proxy/test/rate-limiter.test.mjs +121 -0
  116. package/skills/claw-compactor/proxy/test/redis-client.test.mjs +62 -0
  117. package/skills/claw-compactor/proxy/test/token-tracker.test.mjs +200 -0
  118. package/skills/claw-compactor/proxy/token-tracker.mjs +482 -0
  119. package/skills/claw-compactor/pyproject.toml +26 -0
  120. package/skills/claw-compactor/references/README.md +44 -0
  121. package/skills/claw-compactor/references/architecture.md +197 -0
  122. package/skills/claw-compactor/references/benchmarks.md +94 -0
  123. package/skills/claw-compactor/references/compression-prompts.md +39 -0
  124. package/skills/claw-compactor/references/compression-techniques.md +219 -0
  125. package/skills/claw-compactor/references/testing.md +160 -0
  126. package/skills/claw-compactor/scripts/audit_memory.py +216 -0
  127. package/skills/claw-compactor/scripts/compress_memory.py +236 -0
  128. package/skills/claw-compactor/scripts/compressed_context.py +280 -0
  129. package/skills/claw-compactor/scripts/dedup_memory.py +147 -0
  130. package/skills/claw-compactor/scripts/dictionary_compress.py +170 -0
  131. package/skills/claw-compactor/scripts/engram-auto.sh +152 -0
  132. package/skills/claw-compactor/scripts/engram_auto.py +695 -0
  133. package/skills/claw-compactor/scripts/engram_cli.py +474 -0
  134. package/skills/claw-compactor/scripts/estimate_tokens.py +131 -0
  135. package/skills/claw-compactor/scripts/generate_summary_tiers.py +292 -0
  136. package/skills/claw-compactor/scripts/lib/__init__.py +34 -0
  137. package/skills/claw-compactor/scripts/lib/config.py +289 -0
  138. package/skills/claw-compactor/scripts/lib/dedup.py +119 -0
  139. package/skills/claw-compactor/scripts/lib/dictionary.py +281 -0
  140. package/skills/claw-compactor/scripts/lib/engram.py +793 -0
  141. package/skills/claw-compactor/scripts/lib/engram_prompts.py +175 -0
  142. package/skills/claw-compactor/scripts/lib/engram_storage.py +254 -0
  143. package/skills/claw-compactor/scripts/lib/exceptions.py +24 -0
  144. package/skills/claw-compactor/scripts/lib/markdown.py +312 -0
  145. package/skills/claw-compactor/scripts/lib/rle.py +165 -0
  146. package/skills/claw-compactor/scripts/lib/tokenizer_optimizer.py +188 -0
  147. package/skills/claw-compactor/scripts/lib/tokens.py +68 -0
  148. package/skills/claw-compactor/scripts/mem_compress.py +788 -0
  149. package/skills/claw-compactor/scripts/observation_compressor.py +346 -0
  150. package/skills/claw-compactor/tests/__init__.py +0 -0
  151. package/skills/claw-compactor/tests/conftest.py +94 -0
  152. package/skills/claw-compactor/tests/test_audit_comprehensive.py +123 -0
  153. package/skills/claw-compactor/tests/test_audit_memory.py +67 -0
  154. package/skills/claw-compactor/tests/test_benchmark.py +122 -0
  155. package/skills/claw-compactor/tests/test_cli_commands.py +228 -0
  156. package/skills/claw-compactor/tests/test_compress_memory.py +109 -0
  157. package/skills/claw-compactor/tests/test_compress_memory_comprehensive.py +191 -0
  158. package/skills/claw-compactor/tests/test_compressed_context.py +145 -0
  159. package/skills/claw-compactor/tests/test_config.py +54 -0
  160. package/skills/claw-compactor/tests/test_dedup_memory.py +124 -0
  161. package/skills/claw-compactor/tests/test_dictionary.py +327 -0
  162. package/skills/claw-compactor/tests/test_dictionary_comprehensive.py +241 -0
  163. package/skills/claw-compactor/tests/test_engram.py +1091 -0
  164. package/skills/claw-compactor/tests/test_engram_auto.py +529 -0
  165. package/skills/claw-compactor/tests/test_error_handling.py +194 -0
  166. package/skills/claw-compactor/tests/test_estimate_tokens.py +99 -0
  167. package/skills/claw-compactor/tests/test_generate_summary_tiers.py +105 -0
  168. package/skills/claw-compactor/tests/test_integration.py +249 -0
  169. package/skills/claw-compactor/tests/test_lib_dedup.py +135 -0
  170. package/skills/claw-compactor/tests/test_lib_markdown.py +388 -0
  171. package/skills/claw-compactor/tests/test_lib_tokens.py +82 -0
  172. package/skills/claw-compactor/tests/test_main_entry.py +176 -0
  173. package/skills/claw-compactor/tests/test_markdown_advanced.py +284 -0
  174. package/skills/claw-compactor/tests/test_new_features.py +77 -0
  175. package/skills/claw-compactor/tests/test_observation_comprehensive.py +261 -0
  176. package/skills/claw-compactor/tests/test_observation_compressor.py +128 -0
  177. package/skills/claw-compactor/tests/test_performance.py +172 -0
  178. package/skills/claw-compactor/tests/test_pipeline.py +109 -0
  179. package/skills/claw-compactor/tests/test_real_workspace.py +161 -0
  180. package/skills/claw-compactor/tests/test_rle.py +114 -0
  181. package/skills/claw-compactor/tests/test_rle_comprehensive.py +151 -0
  182. package/skills/claw-compactor/tests/test_roundtrip.py +253 -0
  183. package/skills/claw-compactor/tests/test_roundtrip_comprehensive.py +192 -0
  184. package/skills/claw-compactor/tests/test_tiers_comprehensive.py +171 -0
  185. package/skills/claw-compactor/tests/test_token_economics.py +237 -0
  186. package/skills/claw-compactor/tests/test_tokenizer_optimizer.py +175 -0
  187. package/skills/claw-compactor/tests/test_tokenizer_optimizer_comprehensive.py +241 -0
  188. package/skills/claw-compactor/tests/test_tokens.py +27 -0
  189. package/skills/cmo/CHANGELOG.md +61 -0
  190. package/skills/cmo/SKILL.md +500 -0
  191. package/skills/cmo/references/ai-slop-patterns.md +56 -0
  192. package/skills/cmo/references/analytics-guide.md +152 -0
  193. package/skills/cmo/references/ideas-library.md +197 -0
  194. package/skills/cmo/rules/brand-file-map.md +198 -0
  195. package/skills/cmo/rules/brand-memory.md +158 -0
  196. package/skills/cmo/rules/cli-runtime-index.md +95 -0
  197. package/skills/cmo/rules/command-reference.md +167 -0
  198. package/skills/cmo/rules/communication.md +15 -0
  199. package/skills/cmo/rules/context-switch.md +101 -0
  200. package/skills/cmo/rules/ecosystem.md +125 -0
  201. package/skills/cmo/rules/error-recovery.md +98 -0
  202. package/skills/cmo/rules/learning-loop.md +170 -0
  203. package/skills/cmo/rules/monorepo.md +78 -0
  204. package/skills/cmo/rules/output-format.md +124 -0
  205. package/skills/cmo/rules/persona.md +15 -0
  206. package/skills/cmo/rules/playbooks.md +327 -0
  207. package/skills/cmo/rules/progressive-enhancement.md +231 -0
  208. package/skills/cmo/rules/publish-index.md +106 -0
  209. package/skills/cmo/rules/quality-gate.md +90 -0
  210. package/skills/cmo/rules/recency-grounding.md +124 -0
  211. package/skills/cmo/rules/safety.md +80 -0
  212. package/skills/cmo/rules/studio-api-index.md +138 -0
  213. package/skills/cmo/rules/studio-integration.md +147 -0
  214. package/skills/cmo/rules/sub-agents.md +167 -0
  215. package/skills/cold-email/SKILL.md +240 -0
  216. package/skills/cold-email/evals/evals.json +94 -0
  217. package/skills/cold-email/references/benchmarks.md +83 -0
  218. package/skills/cold-email/references/follow-up-sequences.md +81 -0
  219. package/skills/cold-email/references/frameworks.md +90 -0
  220. package/skills/cold-email/references/personalization.md +79 -0
  221. package/skills/cold-email/references/subject-lines.md +53 -0
  222. package/skills/competitive-intel/SKILL.md +433 -0
  223. package/skills/competitive-intel/references/competitive-frameworks.md +145 -0
  224. package/skills/competitor-alternatives/SKILL.md +362 -0
  225. package/skills/competitor-alternatives/evals/evals.json +93 -0
  226. package/skills/competitor-alternatives/references/content-architecture.md +271 -0
  227. package/skills/competitor-alternatives/references/templates.md +223 -0
  228. package/skills/concreteness-fixer/SKILL.md +483 -0
  229. package/skills/concreteness-fixer/scripts/validation/concreteness-validator.js +221 -0
  230. package/skills/concreteness-fixer/utils/execFileNoThrow.js +16 -0
  231. package/skills/content-atomizer/SKILL.md +424 -0
  232. package/skills/content-atomizer/references/hook-strategies.md +56 -0
  233. package/skills/content-atomizer/references/platform-specs.md +118 -0
  234. package/skills/content-atomizer/references/platforms/bluesky.md +64 -0
  235. package/skills/content-atomizer/references/platforms/instagram.md +77 -0
  236. package/skills/content-atomizer/references/platforms/linkedin.md +120 -0
  237. package/skills/content-atomizer/references/platforms/reddit.md +73 -0
  238. package/skills/content-atomizer/references/platforms/threads.md +64 -0
  239. package/skills/content-atomizer/references/platforms/tiktok.md +55 -0
  240. package/skills/content-atomizer/references/platforms/twitter.md +123 -0
  241. package/skills/content-atomizer/references/platforms/youtube.md +56 -0
  242. package/skills/content-atomizer/references/tweet-patterns.md +40 -0
  243. package/skills/content-repost-manager/SKILL.md +245 -0
  244. package/skills/content-repost-manager/scripts/content-repost-scan.py +133 -0
  245. package/skills/context-recovery/.clawdhub/origin.json +7 -0
  246. package/skills/context-recovery/SKILL.md +198 -0
  247. package/skills/context-recovery/_meta.json +6 -0
  248. package/skills/conversion-flow-cro/SKILL.md +248 -0
  249. package/skills/conversion-flow-cro/references/flow-benchmarks.md +158 -0
  250. package/skills/copy-editing/SKILL.md +474 -0
  251. package/skills/copy-editing/evals/evals.json +89 -0
  252. package/skills/copy-editing/references/plain-english-alternatives.md +394 -0
  253. package/skills/copywriting/SKILL.md +349 -0
  254. package/skills/copywriting/evals/evals.json +111 -0
  255. package/skills/copywriting/references/awareness-level-guide.md +227 -0
  256. package/skills/copywriting/references/copy-frameworks.md +389 -0
  257. package/skills/copywriting/references/natural-transitions.md +272 -0
  258. package/skills/creative/SKILL.md +365 -0
  259. package/skills/creative/modes/ad-creative.md +1748 -0
  260. package/skills/creative/modes/product-photo.md +1520 -0
  261. package/skills/creative/modes/product-video.md +1657 -0
  262. package/skills/creative/modes/social-graphics.md +1511 -0
  263. package/skills/creative/modes/talking-head.md +2208 -0
  264. package/skills/creative/references/VISUAL_INTELLIGENCE.md +1233 -0
  265. package/skills/deep-serp-article/SKILL.md +677 -0
  266. package/skills/deep-serp-article/SKILL.md.bak +530 -0
  267. package/skills/earned-media/SKILL.md +260 -0
  268. package/skills/email-sequences/SKILL.md +446 -0
  269. package/skills/email-sequences/references/sequence-templates.md +1217 -0
  270. package/skills/firecrawl/.skill-meta.json +13 -0
  271. package/skills/firecrawl/SKILL.md +154 -0
  272. package/skills/firecrawl/rules/install.md +63 -0
  273. package/skills/firecrawl/rules/security.md +26 -0
  274. package/skills/form-cro/SKILL.md +429 -0
  275. package/skills/form-cro/evals/evals.json +90 -0
  276. package/skills/free-tool-strategy/SKILL.md +325 -0
  277. package/skills/free-tool-strategy/evals/evals.json +90 -0
  278. package/skills/free-tool-strategy/references/tool-types.md +253 -0
  279. package/skills/frontend-slides/SKILL.md +248 -0
  280. package/skills/frontend-slides/STYLE_PRESETS.md +347 -0
  281. package/skills/frontend-slides/animation-patterns.md +110 -0
  282. package/skills/frontend-slides/html-template.md +347 -0
  283. package/skills/frontend-slides/scripts/extract-pptx.py +96 -0
  284. package/skills/frontend-slides/viewport-base.css +153 -0
  285. package/skills/guardrail-framework/SKILL.md +319 -0
  286. package/skills/hook-generator/SKILL.md +438 -0
  287. package/skills/hook-generator/database/2026-PLATFORM-RESEARCH.md +211 -0
  288. package/skills/hook-generator/database/instagram-hooks.json +591 -0
  289. package/skills/hook-generator/database/linkedin-hooks.json +502 -0
  290. package/skills/hook-generator/database/medium-hooks.json +181 -0
  291. package/skills/hook-generator/database/tiktok-hooks.json +337 -0
  292. package/skills/hook-generator/database/twitter-hooks.json +567 -0
  293. package/skills/hook-generator/database/youtube-hooks.json +275 -0
  294. package/skills/hook-generator/package-lock.json +24 -0
  295. package/skills/hook-generator/package.json +5 -0
  296. package/skills/hook-generator/references/hook-generation-system.md +257 -0
  297. package/skills/hook-generator/references/hook-performance-analysis.json +153 -0
  298. package/skills/hook-generator/references/hooks-library.md +128 -0
  299. package/skills/hook-generator/references/platform-hook-frameworks.md +275 -0
  300. package/skills/hook-generator/scripts/generate-hooks-unified.js +722 -0
  301. package/skills/hook-generator/scripts/generate-hooks.js +225 -0
  302. package/skills/hook-generator/scripts/generate.sh +36 -0
  303. package/skills/hook-generator/scripts/ralph-hook-enhancer.js +864 -0
  304. package/skills/hook-generator/scripts/test-gemini-output.js +51 -0
  305. package/skills/humanizer/README.md +120 -0
  306. package/skills/humanizer/SKILL.md +699 -0
  307. package/skills/image-gen/SKILL.md +277 -0
  308. package/skills/image-gen/references/prompt-patterns.md +114 -0
  309. package/skills/image-gen/references/visual-metaphors.md +51 -0
  310. package/skills/impeccable/SKILL.md +86 -0
  311. package/skills/impeccable/reference/adapt.md +312 -0
  312. package/skills/impeccable/reference/adapt.native.md +58 -0
  313. package/skills/impeccable/reference/android.md +40 -0
  314. package/skills/impeccable/reference/animate.md +86 -0
  315. package/skills/impeccable/reference/audit.md +136 -0
  316. package/skills/impeccable/reference/audit.native.md +139 -0
  317. package/skills/impeccable/reference/bolder.md +31 -0
  318. package/skills/impeccable/reference/clarify.md +94 -0
  319. package/skills/impeccable/reference/colorize.md +86 -0
  320. package/skills/impeccable/reference/craft-floor.md +42 -0
  321. package/skills/impeccable/reference/craft.md +5 -0
  322. package/skills/impeccable/reference/critique.md +788 -0
  323. package/skills/impeccable/reference/degraded/asset-producer.md +90 -0
  324. package/skills/impeccable/reference/degraded/documenter.md +24 -0
  325. package/skills/impeccable/reference/degraded/finish-reviewer.md +37 -0
  326. package/skills/impeccable/reference/degraded/manual-edit-applier.md +92 -0
  327. package/skills/impeccable/reference/delight.md +70 -0
  328. package/skills/impeccable/reference/distill.md +111 -0
  329. package/skills/impeccable/reference/doctor.md +53 -0
  330. package/skills/impeccable/reference/document.md +416 -0
  331. package/skills/impeccable/reference/extract.md +69 -0
  332. package/skills/impeccable/reference/harden.md +336 -0
  333. package/skills/impeccable/reference/hooks.md +105 -0
  334. package/skills/impeccable/reference/init.md +125 -0
  335. package/skills/impeccable/reference/ios.md +45 -0
  336. package/skills/impeccable/reference/layout.md +84 -0
  337. package/skills/impeccable/reference/live-setup.md +102 -0
  338. package/skills/impeccable/reference/live.md +323 -0
  339. package/skills/impeccable/reference/new-work.md +110 -0
  340. package/skills/impeccable/reference/onboard.md +234 -0
  341. package/skills/impeccable/reference/operate.md +61 -0
  342. package/skills/impeccable/reference/optimize.md +258 -0
  343. package/skills/impeccable/reference/overdrive.md +127 -0
  344. package/skills/impeccable/reference/polish.md +97 -0
  345. package/skills/impeccable/reference/quieter.md +99 -0
  346. package/skills/impeccable/reference/routing.md +18 -0
  347. package/skills/impeccable/reference/shape.md +59 -0
  348. package/skills/impeccable/reference/typeset.md +80 -0
  349. package/skills/impeccable/reference/visualize.md +49 -0
  350. package/skills/impeccable/scripts/command-metadata.json +94 -0
  351. package/skills/impeccable/scripts/concept-seed.mjs +558 -0
  352. package/skills/impeccable/scripts/context-signals.mjs +334 -0
  353. package/skills/impeccable/scripts/context.mjs +1467 -0
  354. package/skills/impeccable/scripts/critique-storage.mjs +213 -0
  355. package/skills/impeccable/scripts/detect-csp.mjs +198 -0
  356. package/skills/impeccable/scripts/detect.mjs +21 -0
  357. package/skills/impeccable/scripts/detector/browser/injected/index.mjs +2023 -0
  358. package/skills/impeccable/scripts/detector/cli/main.mjs +438 -0
  359. package/skills/impeccable/scripts/detector/design-system.mjs +1046 -0
  360. package/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +8283 -0
  361. package/skills/impeccable/scripts/detector/detect-antipatterns.mjs +50 -0
  362. package/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +372 -0
  363. package/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +1168 -0
  364. package/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +1186 -0
  365. package/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +264 -0
  366. package/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
  367. package/skills/impeccable/scripts/detector/findings.mjs +18 -0
  368. package/skills/impeccable/scripts/detector/node/file-system.mjs +203 -0
  369. package/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
  370. package/skills/impeccable/scripts/detector/registry/antipatterns.mjs +617 -0
  371. package/skills/impeccable/scripts/detector/rules/checks.mjs +5580 -0
  372. package/skills/impeccable/scripts/detector/shared/color.mjs +124 -0
  373. package/skills/impeccable/scripts/detector/shared/constants.mjs +112 -0
  374. package/skills/impeccable/scripts/detector/shared/fonts.mjs +30 -0
  375. package/skills/impeccable/scripts/detector/shared/inline-ignores.mjs +148 -0
  376. package/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
  377. package/skills/impeccable/scripts/doctor.mjs +336 -0
  378. package/skills/impeccable/scripts/embed-prompt.mjs +133 -0
  379. package/skills/impeccable/scripts/generate-image.mjs +240 -0
  380. package/skills/impeccable/scripts/hook-admin.mjs +801 -0
  381. package/skills/impeccable/scripts/hook-before-edit.mjs +508 -0
  382. package/skills/impeccable/scripts/hook-lib.mjs +2153 -0
  383. package/skills/impeccable/scripts/hook.mjs +78 -0
  384. package/skills/impeccable/scripts/lib/artifact-schema.mjs +93 -0
  385. package/skills/impeccable/scripts/lib/composition-catalog.mjs +200 -0
  386. package/skills/impeccable/scripts/lib/concept-catalog.mjs +384 -0
  387. package/skills/impeccable/scripts/lib/design-parser.mjs +925 -0
  388. package/skills/impeccable/scripts/lib/impeccable-config.mjs +658 -0
  389. package/skills/impeccable/scripts/lib/impeccable-paths.mjs +137 -0
  390. package/skills/impeccable/scripts/lib/is-generated.mjs +69 -0
  391. package/skills/impeccable/scripts/lib/provider.mjs +5 -0
  392. package/skills/impeccable/scripts/lib/roll-selection.mjs +362 -0
  393. package/skills/impeccable/scripts/lib/staleness-deep.mjs +478 -0
  394. package/skills/impeccable/scripts/lib/staleness-notice.mjs +169 -0
  395. package/skills/impeccable/scripts/lib/staleness.mjs +457 -0
  396. package/skills/impeccable/scripts/lib/surface-briefs.mjs +151 -0
  397. package/skills/impeccable/scripts/lib/target-args.mjs +42 -0
  398. package/skills/impeccable/scripts/lib/target-slug.mjs +33 -0
  399. package/skills/impeccable/scripts/lib/template-extensions.mjs +146 -0
  400. package/skills/impeccable/scripts/live/accept-css.mjs +617 -0
  401. package/skills/impeccable/scripts/live/accept-verify.mjs +60 -0
  402. package/skills/impeccable/scripts/live/browser-script-parts.mjs +55 -0
  403. package/skills/impeccable/scripts/live/completion.mjs +28 -0
  404. package/skills/impeccable/scripts/live/event-validation.mjs +199 -0
  405. package/skills/impeccable/scripts/live/frameworks/astro.mjs +47 -0
  406. package/skills/impeccable/scripts/live/frameworks/detect-utils.mjs +73 -0
  407. package/skills/impeccable/scripts/live/frameworks/index.mjs +143 -0
  408. package/skills/impeccable/scripts/live/frameworks/journal.mjs +197 -0
  409. package/skills/impeccable/scripts/live/frameworks/nextjs.mjs +49 -0
  410. package/skills/impeccable/scripts/live/frameworks/nuxt.mjs +161 -0
  411. package/skills/impeccable/scripts/live/frameworks/script-src.mjs +17 -0
  412. package/skills/impeccable/scripts/live/frameworks/static-html.mjs +26 -0
  413. package/skills/impeccable/scripts/live/frameworks/sveltekit.mjs +71 -0
  414. package/skills/impeccable/scripts/live/frameworks/tag-strategy.mjs +247 -0
  415. package/skills/impeccable/scripts/live/frameworks/tanstack-start.mjs +70 -0
  416. package/skills/impeccable/scripts/live/frameworks/vite-generic.mjs +42 -0
  417. package/skills/impeccable/scripts/live/generation-preflight.mjs +149 -0
  418. package/skills/impeccable/scripts/live/insert-ui.mjs +458 -0
  419. package/skills/impeccable/scripts/live/instructions.mjs +142 -0
  420. package/skills/impeccable/scripts/live/manual-apply.mjs +939 -0
  421. package/skills/impeccable/scripts/live/manual-edit-routes.mjs +357 -0
  422. package/skills/impeccable/scripts/live/manual-edits-buffer.mjs +152 -0
  423. package/skills/impeccable/scripts/live/poll-lanes.mjs +14 -0
  424. package/skills/impeccable/scripts/live/roots.mjs +508 -0
  425. package/skills/impeccable/scripts/live/session-store.mjs +563 -0
  426. package/skills/impeccable/scripts/live/source-lock.mjs +105 -0
  427. package/skills/impeccable/scripts/live/source-search.mjs +105 -0
  428. package/skills/impeccable/scripts/live/svelte-ast.mjs +961 -0
  429. package/skills/impeccable/scripts/live/svelte-component.mjs +1342 -0
  430. package/skills/impeccable/scripts/live/sveltekit-adapter.mjs +316 -0
  431. package/skills/impeccable/scripts/live/tanstack-adapter.mjs +280 -0
  432. package/skills/impeccable/scripts/live/ui-core.mjs +180 -0
  433. package/skills/impeccable/scripts/live/vocabulary.mjs +171 -0
  434. package/skills/impeccable/scripts/live-accept.mjs +954 -0
  435. package/skills/impeccable/scripts/live-browser-dom.js +146 -0
  436. package/skills/impeccable/scripts/live-browser-session.js +123 -0
  437. package/skills/impeccable/scripts/live-browser.js +12520 -0
  438. package/skills/impeccable/scripts/live-commit-manual-edits.mjs +1244 -0
  439. package/skills/impeccable/scripts/live-complete.mjs +107 -0
  440. package/skills/impeccable/scripts/live-copy-edit-agent.mjs +683 -0
  441. package/skills/impeccable/scripts/live-discard-manual-edits.mjs +51 -0
  442. package/skills/impeccable/scripts/live-inject.mjs +503 -0
  443. package/skills/impeccable/scripts/live-insert.mjs +292 -0
  444. package/skills/impeccable/scripts/live-manual-edit-evidence.mjs +368 -0
  445. package/skills/impeccable/scripts/live-poll.mjs +429 -0
  446. package/skills/impeccable/scripts/live-resume.mjs +123 -0
  447. package/skills/impeccable/scripts/live-server.mjs +1669 -0
  448. package/skills/impeccable/scripts/live-status.mjs +71 -0
  449. package/skills/impeccable/scripts/live-target.mjs +30 -0
  450. package/skills/impeccable/scripts/live-wrap.mjs +927 -0
  451. package/skills/impeccable/scripts/live.mjs +359 -0
  452. package/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
  453. package/skills/impeccable/scripts/palette.mjs +628 -0
  454. package/skills/impeccable/scripts/pin.mjs +221 -0
  455. package/skills/impeccable/scripts/serve-question.mjs +932 -0
  456. package/skills/impeccable/scripts/surface-brief.mjs +74 -0
  457. package/skills/inkstone-admin/SKILL.md +66 -0
  458. package/skills/jev-hook-gate/SKILL.md +111 -0
  459. package/skills/keyword-research/SKILL.md +503 -0
  460. package/skills/keyword-research/references/dr-cap-and-confidence.md +62 -0
  461. package/skills/keyword-research/references/keyword-examples.md +769 -0
  462. package/skills/landing-page-architect/SKILL.md +585 -0
  463. package/skills/landing-page-architect/references/architecture-reference.md +32 -0
  464. package/skills/launch-strategy/SKILL.md +384 -0
  465. package/skills/launch-strategy/evals/evals.json +91 -0
  466. package/skills/launch-strategy/references/launch-checklist.md +209 -0
  467. package/skills/launch-strategy/references/launch-timeline.md +159 -0
  468. package/skills/lead-email-craft/SKILL.md +522 -0
  469. package/skills/lead-magnets/SKILL.md +310 -0
  470. package/skills/lead-magnets/references/benchmarks.md +129 -0
  471. package/skills/lead-magnets/references/format-guide.md +196 -0
  472. package/skills/link-building-seo/SKILL.md +210 -0
  473. package/skills/lint-report.txt +1 -0
  474. package/skills/manifest.json +129 -0
  475. package/skills/marketing-demo/SKILL.md +249 -0
  476. package/skills/marketing-demo/references/remotion-examples.md +281 -0
  477. package/skills/marketing-ideas/SKILL.md +167 -0
  478. package/skills/marketing-ideas/evals/evals.json +90 -0
  479. package/skills/marketing-ideas/references/ideas-by-category.md +366 -0
  480. package/skills/marketing-psychology/SKILL.md +374 -0
  481. package/skills/marketing-psychology/evals/evals.json +88 -0
  482. package/skills/marketing-psychology/references/case-studies.md +148 -0
  483. package/skills/narrative-research-article/SKILL.md +469 -0
  484. package/skills/narrative-research-article/references/lanusse-patterns.md +166 -0
  485. package/skills/notebooklm/SKILL.md +674 -0
  486. package/skills/off-page-seo/SKILL.md +219 -0
  487. package/skills/onboarding-cro/SKILL.md +220 -0
  488. package/skills/onboarding-cro/evals/evals.json +92 -0
  489. package/skills/onboarding-cro/references/experiments.md +258 -0
  490. package/skills/original-research/SKILL.md +388 -0
  491. package/skills/page-cro/SKILL.md +269 -0
  492. package/skills/page-cro/references/cro-benchmarks.md +140 -0
  493. package/skills/paper-marketing/SKILL.md +448 -0
  494. package/skills/paper-marketing/references/agent-quality-rubric.md +68 -0
  495. package/skills/paper-marketing/references/brand-system-template.md +120 -0
  496. package/skills/paper-marketing/references/paper-mcp-rules.md +71 -0
  497. package/skills/paper-marketing/references/platform-conventions.md +43 -0
  498. package/skills/paywall-upgrade-cro/SKILL.md +227 -0
  499. package/skills/paywall-upgrade-cro/evals/evals.json +93 -0
  500. package/skills/paywall-upgrade-cro/references/experiments.md +164 -0
  501. package/skills/platform-formatting/SKILL.md +51 -0
  502. package/skills/popup-cro/SKILL.md +454 -0
  503. package/skills/popup-cro/evals/evals.json +94 -0
  504. package/skills/positioning-angles/SKILL.md +524 -0
  505. package/skills/positioning-angles/references/ad-matrix-and-examples.md +176 -0
  506. package/skills/positioning-angles/references/angle-frameworks.md +187 -0
  507. package/skills/positioning-angles/references/dunford-positioning.md +135 -0
  508. package/skills/positioning-angles/references/hormozi-offer.md +247 -0
  509. package/skills/positioning-angles/references/schwartz-sophistication.md +166 -0
  510. package/skills/positioning-angles/references/unique-mechanism.md +162 -0
  511. package/skills/pricing-strategy/SKILL.md +346 -0
  512. package/skills/pricing-strategy/evals/evals.json +90 -0
  513. package/skills/pricing-strategy/references/research-methods.md +152 -0
  514. package/skills/pricing-strategy/references/tier-structure.md +307 -0
  515. package/skills/programmatic-seo/SKILL.md +238 -0
  516. package/skills/programmatic-seo/evals/evals.json +94 -0
  517. package/skills/programmatic-seo/references/playbooks.md +308 -0
  518. package/skills/project-rag/SKILL.md +127 -0
  519. package/skills/quality-gate/SKILL.md +519 -0
  520. package/skills/quality-gate/judge-personas/buyer.md +47 -0
  521. package/skills/quality-gate/judge-personas/expert.md +47 -0
  522. package/skills/quality-gate/judge-personas/outsider.md +47 -0
  523. package/skills/quality-gate/judge-personas/scanner.md +41 -0
  524. package/skills/quality-gate/judge-personas/skeptic.md +40 -0
  525. package/skills/referral-program/SKILL.md +290 -0
  526. package/skills/referral-program/evals/evals.json +89 -0
  527. package/skills/referral-program/references/affiliate-programs.md +163 -0
  528. package/skills/referral-program/references/program-examples.md +143 -0
  529. package/skills/review-sites/SKILL.md +279 -0
  530. package/skills/revops/SKILL.md +343 -0
  531. package/skills/revops/evals/evals.json +91 -0
  532. package/skills/revops/references/automation-playbooks.md +290 -0
  533. package/skills/revops/references/lifecycle-definitions.md +278 -0
  534. package/skills/revops/references/routing-rules.md +203 -0
  535. package/skills/revops/references/scoring-models.md +247 -0
  536. package/skills/saas-product-seo/SKILL.md +324 -0
  537. package/skills/sales-enablement/SKILL.md +349 -0
  538. package/skills/sales-enablement/evals/evals.json +91 -0
  539. package/skills/sales-enablement/references/deck-frameworks.md +263 -0
  540. package/skills/sales-enablement/references/demo-scripts.md +355 -0
  541. package/skills/sales-enablement/references/objection-library.md +270 -0
  542. package/skills/sales-enablement/references/one-pager-templates.md +208 -0
  543. package/skills/schema-markup/SKILL.md +179 -0
  544. package/skills/schema-markup/evals/evals.json +87 -0
  545. package/skills/schema-markup/references/schema-examples.md +398 -0
  546. package/skills/self-improve/SKILL.md +166 -0
  547. package/skills/self-improving-agent/README.md +243 -0
  548. package/skills/self-improving-agent/SKILL.md +437 -0
  549. package/skills/self-improving-agent/scripts/__init__.py +16 -0
  550. package/skills/self-improving-agent/scripts/__pycache__/auto_detect.cpython-314.pyc +0 -0
  551. package/skills/self-improving-agent/scripts/__pycache__/nlm_curation.cpython-314.pyc +0 -0
  552. package/skills/self-improving-agent/scripts/__pycache__/self_improving_agent.cpython-314.pyc +0 -0
  553. package/skills/self-improving-agent/scripts/auto_detect.py +270 -0
  554. package/skills/self-improving-agent/scripts/init_expertise_registry.py +89 -0
  555. package/skills/self-improving-agent/scripts/nlm_curation.py +259 -0
  556. package/skills/self-improving-agent/scripts/self-improving-agent +113 -0
  557. package/skills/self-improving-agent/scripts/self_improving_agent.py +603 -0
  558. package/skills/self-improving-agent/scripts/test_curation_scorer.py +20 -0
  559. package/skills/self-improving-agent/scripts/test_self_improving.py +184 -0
  560. package/skills/send-email/SKILL.md +426 -0
  561. package/skills/send-email/references/batch-email-examples.md +807 -0
  562. package/skills/send-email/references/best-practices.md +453 -0
  563. package/skills/send-email/references/installation.md +123 -0
  564. package/skills/send-email/references/single-email-examples.md +470 -0
  565. package/skills/send-email/references/webhooks.md +221 -0
  566. package/skills/seo-audit/SKILL.md +362 -0
  567. package/skills/seo-audit/references/ai-writing-detection.md +200 -0
  568. package/skills/seo-audit/references/architecture-patterns.md +271 -0
  569. package/skills/seo-audit/references/schema-templates.md +427 -0
  570. package/skills/seo-content/SKILL.md +510 -0
  571. package/skills/seo-content/references/anti-ai-detection.md +184 -0
  572. package/skills/seo-content/references/content-structures.md +148 -0
  573. package/skills/seo-content/references/eeat-examples.md +235 -0
  574. package/skills/seo-content/references/on-page-seo.md +261 -0
  575. package/skills/seo-content/references/pseo-playbooks.md +226 -0
  576. package/skills/seo-content/references/schema-templates.md +104 -0
  577. package/skills/seo-content/references/serp-analysis-format.md +151 -0
  578. package/skills/seo-machine/SKILL.md +331 -0
  579. package/skills/seo-machine/assets/brand-template.md +73 -0
  580. package/skills/seo-machine/assets/link-inventory-template.md +74 -0
  581. package/skills/seo-machine/assets/roadmap-template.md +184 -0
  582. package/skills/seo-machine/references/api-stack-recipes.md +230 -0
  583. package/skills/seo-machine/references/exa-recipes.md +260 -0
  584. package/skills/seo-machine/references/manual-research.md +73 -0
  585. package/skills/seo-machine/references/methodology.md +87 -0
  586. package/skills/seo-machine/references/off-page.md +123 -0
  587. package/skills/seo-machine/references/patterns/alternatives.md +176 -0
  588. package/skills/seo-machine/references/patterns/compare.md +105 -0
  589. package/skills/seo-machine/references/patterns/playbooks.md +106 -0
  590. package/skills/seo-machine/references/patterns/use-case.md +109 -0
  591. package/skills/seo-machine/references/quality-bars.md +99 -0
  592. package/skills/seo-machine/references/stacks/astro.md +156 -0
  593. package/skills/seo-machine/references/stacks/detection.md +61 -0
  594. package/skills/seo-machine/references/stacks/markdown-fallback.md +181 -0
  595. package/skills/seo-machine/references/stacks/nextjs.md +108 -0
  596. package/skills/seo-machine/references/stacks/rails-inertia.md +99 -0
  597. package/skills/seo-machine/references/striking-distance.md +116 -0
  598. package/skills/seo-machine/references/technical-audit.md +153 -0
  599. package/skills/seo-machine/scripts/link_audit.py +265 -0
  600. package/skills/seo-machine/scripts/tech_audit.py +221 -0
  601. package/skills/seo-machine/scripts/word_count.py +154 -0
  602. package/skills/sharp-thesis-validator/SKILL.md +393 -0
  603. package/skills/sharp-thesis-validator/examples.md +186 -0
  604. package/skills/signup-flow-cro/SKILL.md +359 -0
  605. package/skills/signup-flow-cro/evals/evals.json +88 -0
  606. package/skills/site-architecture/SKILL.md +357 -0
  607. package/skills/site-architecture/evals/evals.json +88 -0
  608. package/skills/site-architecture/references/mermaid-templates.md +216 -0
  609. package/skills/site-architecture/references/navigation-patterns.md +305 -0
  610. package/skills/site-architecture/references/site-type-templates.md +293 -0
  611. package/skills/skill-self-improvement/SKILL.md +151 -0
  612. package/skills/slideshow-script/SKILL.md +274 -0
  613. package/skills/slideshow-script/references/content-spec-schema.md +77 -0
  614. package/skills/slideshow-script/references/frameworks.md +84 -0
  615. package/skills/slideshow-script/references/paips-framework.md +37 -0
  616. package/skills/social-campaign/SKILL.md +419 -0
  617. package/skills/social-campaign/references/paper-mcp-workflow.md +48 -0
  618. package/skills/social-content/SKILL.md +359 -0
  619. package/skills/social-content/evals/evals.json +92 -0
  620. package/skills/social-content/references/platforms.md +170 -0
  621. package/skills/social-content/references/post-templates.md +177 -0
  622. package/skills/social-content/references/reverse-engineering.md +195 -0
  623. package/skills/social-worker/SKILL.md +204 -0
  624. package/skills/startup-launcher/SKILL.md +252 -0
  625. package/skills/startup-launcher/references/file-router.md +64 -0
  626. package/skills/startup-launcher/references/platform-matrix.md +65 -0
  627. package/skills/startup-launcher/references/platforms/alternativeto.md +283 -0
  628. package/skills/startup-launcher/references/platforms/appsumo.md +495 -0
  629. package/skills/startup-launcher/references/platforms/auraplusplus.md +736 -0
  630. package/skills/startup-launcher/references/platforms/betalist.md +98 -0
  631. package/skills/startup-launcher/references/platforms/capterra.md +276 -0
  632. package/skills/startup-launcher/references/platforms/crunchbase.md +514 -0
  633. package/skills/startup-launcher/references/platforms/dealify.md +291 -0
  634. package/skills/startup-launcher/references/platforms/dealmirror.md +313 -0
  635. package/skills/startup-launcher/references/platforms/desifounder.md +490 -0
  636. package/skills/startup-launcher/references/platforms/devhunt.md +210 -0
  637. package/skills/startup-launcher/references/platforms/devpost.md +448 -0
  638. package/skills/startup-launcher/references/platforms/fazier.md +56 -0
  639. package/skills/startup-launcher/references/platforms/firsto.md +489 -0
  640. package/skills/startup-launcher/references/platforms/g2.md +226 -0
  641. package/skills/startup-launcher/references/platforms/hackernews.md +99 -0
  642. package/skills/startup-launcher/references/platforms/hackernoon.md +385 -0
  643. package/skills/startup-launcher/references/platforms/indiedeals.md +367 -0
  644. package/skills/startup-launcher/references/platforms/indiehackers.md +80 -0
  645. package/skills/startup-launcher/references/platforms/kenmoo.md +231 -0
  646. package/skills/startup-launcher/references/platforms/labstartups.md +618 -0
  647. package/skills/startup-launcher/references/platforms/launchboard.md +307 -0
  648. package/skills/startup-launcher/references/platforms/launchfast.md +560 -0
  649. package/skills/startup-launcher/references/platforms/launchigniter.md +56 -0
  650. package/skills/startup-launcher/references/platforms/launchingnext.md +674 -0
  651. package/skills/startup-launcher/references/platforms/launchit.md +574 -0
  652. package/skills/startup-launcher/references/platforms/launchyourapp.md +677 -0
  653. package/skills/startup-launcher/references/platforms/libhunt.md +220 -0
  654. package/skills/startup-launcher/references/platforms/ltdhunt.md +221 -0
  655. package/skills/startup-launcher/references/platforms/microlaunch.md +45 -0
  656. package/skills/startup-launcher/references/platforms/openalternative.md +195 -0
  657. package/skills/startup-launcher/references/platforms/peerlist.md +56 -0
  658. package/skills/startup-launcher/references/platforms/peerpush.md +64 -0
  659. package/skills/startup-launcher/references/platforms/primeclub.md +282 -0
  660. package/skills/startup-launcher/references/platforms/productcanyon.md +190 -0
  661. package/skills/startup-launcher/references/platforms/producthunt.md +98 -0
  662. package/skills/startup-launcher/references/platforms/rankinpublic.md +315 -0
  663. package/skills/startup-launcher/references/platforms/rockethub.md +374 -0
  664. package/skills/startup-launcher/references/platforms/saasgenius.md +175 -0
  665. package/skills/startup-launcher/references/platforms/saashub.md +205 -0
  666. package/skills/startup-launcher/references/platforms/saasmantra.md +221 -0
  667. package/skills/startup-launcher/references/platforms/saaspirate.md +287 -0
  668. package/skills/startup-launcher/references/platforms/saaswarrior.md +190 -0
  669. package/skills/startup-launcher/references/platforms/saaszilla.md +194 -0
  670. package/skills/startup-launcher/references/platforms/selected.md +925 -0
  671. package/skills/startup-launcher/references/platforms/sideprojectors.md +86 -0
  672. package/skills/startup-launcher/references/platforms/softonic.md +240 -0
  673. package/skills/startup-launcher/references/platforms/sourceforge.md +251 -0
  674. package/skills/startup-launcher/references/platforms/stacksocial.md +244 -0
  675. package/skills/startup-launcher/references/platforms/startupstash.md +326 -0
  676. package/skills/startup-launcher/references/platforms/theresanaiforthat.md +253 -0
  677. package/skills/startup-launcher/references/platforms/tinylaunch.md +70 -0
  678. package/skills/startup-launcher/references/platforms/tinystartups.md +72 -0
  679. package/skills/startup-launcher/references/platforms/toolfolio.md +291 -0
  680. package/skills/startup-launcher/references/platforms/trustmrr.md +194 -0
  681. package/skills/startup-launcher/references/platforms/trylaunch.md +531 -0
  682. package/skills/startup-launcher/references/platforms/uneed.md +57 -0
  683. package/skills/startup-launcher/references/templates/asset-checklist.md +218 -0
  684. package/skills/startup-launcher/references/templates/launch-tracker.md +195 -0
  685. package/skills/startup-launcher/references/templates/product-brief.md +98 -0
  686. package/skills/summarize/.skill-meta.json +13 -0
  687. package/skills/summarize/SKILL.md +170 -0
  688. package/skills/summarize/rules/install.md +157 -0
  689. package/skills/summarize/rules/usage.md +207 -0
  690. package/skills/topical-authority/SKILL.md +307 -0
  691. package/skills/topical-authority/references/jake-ward-framework.md +201 -0
  692. package/skills/topical-authority/references/serp-clustering-algorithm.md +325 -0
  693. package/skills/topical-authority/scripts/orchestrator.js +367 -0
  694. package/skills/topical-authority/scripts/seo/analyze-competitor-coverage.js +3 -0
  695. package/skills/topical-authority/scripts/seo/audit-internal-links.js +3 -0
  696. package/skills/topical-authority/scripts/seo/build-clusters-from-serp.js +3 -0
  697. package/skills/topical-authority/scripts/seo/extract-keywords-from-forums.js +3 -0
  698. package/skills/topical-authority/scripts/seo/extract-paa-questions.js +3 -0
  699. package/skills/topical-authority/scripts/seo/fetch-serp-urls.js +3 -0
  700. package/skills/topical-authority/scripts/seo/gemini-serp-clustering.js +3 -0
  701. package/skills/topical-authority/scripts/seo/identify-content-gaps.js +3 -0
  702. package/skills/topical-authority/scripts/seo/identify-research-gaps.js +3 -0
  703. package/skills/topical-authority/scripts/seo/scrape-quora-questions.js +3 -0
  704. package/skills/topical-authority/scripts/seo/scrape-reddit-pain-points.js +3 -0
  705. package/skills/topical-authority/scripts/seo/weave-internal-links.js +3 -0
  706. package/skills/visual-style/SKILL.md +199 -0
  707. package/skills/voice-brand-alignment/SKILL.md +70 -0
  708. package/skills/voice-brand-alignment/references/ai-slop-patterns.md +405 -0
  709. package/skills/voice-brand-alignment/scripts/validation/gemini-voice-validator.js +96 -0
  710. package/skills/voice-extraction/SKILL.md +234 -0
  711. package/skills/voice-extraction/references/extraction-prompt.md +155 -0
  712. package/skills/voice-extraction/references/voice-dna-template.md +168 -0
  713. package/skills/voice-extraction/references/voice-elements.md +259 -0
  714. package/skills/voice-extraction/scripts/build-corpus.js +120 -0
  715. package/skills/voice-extraction/scripts/collect-sources.sh +168 -0
  716. package/skills/warm-outbound/SKILL.md +299 -0
  717. package/skills/warm-outbound/templates/warm-message.md +39 -0
  718. package/skills/weekly-newsletter-digest/SKILL.md +78 -0
  719. package/skills/x-playwriter/SKILL.md +428 -0
  720. package/skills/x-playwriter/scripts/x-browser.js +185 -0
  721. package/skills/x-post-generator-openclaw/SKILL.md +138 -0
  722. package/skills/x-post-generator-openclaw/scripts/generate-x-post.js +537 -0
  723. package/skills/x-posting-playwriter/SKILL.md +203 -0
  724. package/skills/x-research/SKILL.md +129 -0
  725. package/skills/x-research/x-research.sh +85 -0
  726. package/skills/youtube-summarize/SKILL.md +90 -0
  727. package/skills/youtube-summarize/scripts/youtube-summarize.sh +143 -0
  728. package/src/cli.js +347 -172
  729. package/src/harness/deepseek-adapter.js +102 -0
  730. package/src/harness/deepseek.js +225 -0
  731. package/src/harness/opencode-adapter.js +174 -0
  732. package/src/harness/pi-adapter.js +172 -0
  733. package/src/harness/registry.js +121 -0
  734. package/src/harness/telemetry.js +102 -0
  735. package/src/harness/types.js +165 -0
  736. package/src/interview.js +36 -4
  737. package/src/postinstall.js +10 -12
  738. package/templates/AGENTS.md +17 -17
  739. package/templates/ORG.md +1 -1
  740. package/templates/TOOLS.md +7 -2
  741. package/templates/opencode.json +26 -29
  742. package/wiki/doctor.md +54 -0
  743. package/wiki/inkstone.md +4 -4
  744. package/wiki/opencode.md +3 -3
  745. package/skills/curated.txt +0 -68
@@ -0,0 +1,769 @@
1
+ # Keyword Research Examples & Reference
2
+
3
+ > Extracted from SKILL.md for token efficiency.
4
+
5
+ ---
6
+
7
+ # 6 Circles Method Detail
8
+
9
+ ## Phase 2: Expand (The 6 Circles Method)
10
+
11
+ For each seed keyword, expand using 6 different lenses:
12
+
13
+ ### Circle 1: What You Sell
14
+ Products, services, and solutions you offer directly.
15
+ > Example: "AI marketing automation", "marketing workflow templates", "fractional CMO services"
16
+
17
+ ### Circle 2: Problems You Solve
18
+ Pain points and challenges your audience faces.
19
+ > Example: "marketing team overwhelmed", "can't measure marketing ROI", "content takes too long"
20
+
21
+ ### Circle 3: Outcomes You Deliver
22
+ Results and transformations customers achieve.
23
+ > Example: "automated lead generation", "consistent content publishing", "marketing that runs itself"
24
+
25
+ ### Circle 4: Your Unique Positioning
26
+ What makes you different from alternatives.
27
+ > Example: "no-code marketing", "AI-first approach", "community-driven marketing"
28
+
29
+ If ./brand/positioning.md is loaded, use the actual positioning angles here
30
+ instead of generic examples. The user's real differentiators should drive Circle 4.
31
+
32
+ ### Circle 5: Adjacent Topics
33
+ Related areas where your audience spends time.
34
+ > Example: "startup growth", "indie hackers", "solopreneur tools", "productivity systems"
35
+
36
+ If ./brand/audience.md is loaded, use the audience's actual communities,
37
+ interests, and adjacent problems to populate Circle 5.
38
+
39
+ ### Circle 6: Entities to Associate With
40
+ People, tools, frameworks, concepts you want to be connected to.
41
+ > Example: "Claude AI", "n8n automation", specific thought leaders, industry frameworks
42
+
43
+ ### Expansion Techniques
44
+
45
+ For each seed, find variations using:
46
+
47
+ **Question patterns:**
48
+ - What is [keyword]?
49
+ - How to [keyword]?
50
+ - Why [keyword]?
51
+ - Best [keyword]?
52
+ - [keyword] vs [alternative]?
53
+ - [keyword] examples
54
+ - [keyword] for [audience]
55
+
56
+ **Modifier patterns:**
57
+ - [keyword] tools
58
+ - [keyword] templates
59
+ - [keyword] guide
60
+ - [keyword] strategy
61
+ - [keyword] 2026
62
+ - [keyword] for beginners
63
+ - [keyword] for [industry]
64
+
65
+ **Comparison patterns:**
66
+ - [keyword A] vs [keyword B]
67
+ - best [category]
68
+ - [tool] alternatives
69
+ - [tool] review
70
+
71
+ **Output:** Expanded list of 100-200 keywords from seed terms
72
+
73
+ ---
74
+
75
+
76
+ ---
77
+
78
+ # Pillar Validation Detail
79
+
80
+ ## Phase 5: Pillar Validation (Critical Step)
81
+
82
+ **Before finalizing pillars, run these 4 checks.**
83
+
84
+ Most keyword research fails because pillars are chosen based on what the business
85
+ WANTS to talk about, not what the market ACTUALLY searches for. In v2, we use
86
+ live search data to validate.
87
+
88
+ **1. Search Volume Test**
89
+ Does this pillar have >1,000 monthly searches across its keyword cluster?
90
+
91
+ - If YES: Valid pillar
92
+ - If NO: Not a pillar. It may be a single article or should not be created at all.
93
+
94
+ v2 enhancement: Use web search to estimate volume. Check Google autocomplete
95
+ richness (more suggestions = more search interest), check whether Google shows
96
+ "About X results" for the query, and check SERP competitiveness as a proxy for
97
+ search demand.
98
+
99
+ Example failure: "Claude marketing" (zero search volume) chosen as pillar because
100
+ the product uses Claude. Market searches "AI marketing" instead.
101
+
102
+ **2. Product vs. Market Test**
103
+ Is this pillar something the MARKET searches for, or something YOU want to talk about?
104
+
105
+ | Product-Centric (Wrong) | Market-Centric (Right) |
106
+ |-------------------------|------------------------|
107
+ | "Our methodology" | "Marketing automation" |
108
+ | "[Your tool name] tutorials" | "[Category] tutorials" |
109
+ | "Why we're different" | "[Problem] solutions" |
110
+ | Features of your product | Outcomes people search for |
111
+
112
+ The market does not search for your product name (unless you are famous). They
113
+ search for solutions to their problems.
114
+
115
+ v2 enhancement: If positioning.md is loaded, cross-reference. The positioning
116
+ angle should INFORM keyword selection, not dictate it. Your angle is how you
117
+ write about market topics, not the topics themselves.
118
+
119
+ **3. Competitive Reality Test**
120
+ Can you actually win here?
121
+
122
+ Check the top 3 results for the pillar keyword (from Phase 3 SERP data):
123
+ - Mix of authority and smaller sites? Winnable with great content.
124
+ - Thin content from unknown sites? High opportunity.
125
+ - Reddit/forums in results? Huge opportunity -- no good article exists.
126
+
127
+ Do not choose pillars where you have no realistic path to page 1.
128
+
129
+ **4. Proprietary Advantage Test**
130
+ Do you have unique content, data, or expertise for this pillar?
131
+
132
+ | Advantage | Priority |
133
+ |-----------|----------|
134
+ | Proprietary data others do not have | Prioritize highly |
135
+ | Unique methodology or framework | Prioritize highly |
136
+ | Practitioner experience (done it, not read about it) | Prioritize |
137
+ | Same info everyone else has | Deprioritize |
138
+
139
+ If you have 2,589 marketing workflows and nobody else does, "marketing workflows"
140
+ should be a pillar. If you are writing about "AI marketing" with no unique angle,
141
+ you are competing on equal footing with everyone.
142
+
143
+ v2 enhancement: If positioning.md is loaded, the proprietary advantage test
144
+ automatically checks your stated differentiators against each pillar.
145
+
146
+ **Validation Output:**
147
+
148
+ For each proposed pillar, document:
149
+
150
+ ```
151
+ Pillar: [Name]
152
+ Search volume test: PASS/FAIL -- [evidence from web search]
153
+ Market-centric test: PASS/FAIL -- [evidence]
154
+ Competitive test: PASS/FAIL -- [SERP evidence]
155
+ Proprietary advantage: YES/NO -- [what advantage]
156
+ VERDICT: VALID PILLAR / DEMOTE TO CLUSTER / REMOVE
157
+ ```
158
+
159
+ **If a pillar fails 2+ tests, it is not a pillar.** Either demote it to a single
160
+ article within another pillar, or remove it entirely.
161
+
162
+ ---
163
+
164
+
165
+ ---
166
+
167
+ # Content Brief & Plan Templates
168
+
169
+ ## Phase 8: Content Brief Generation (NEW in v2)
170
+
171
+ For each top-priority keyword cluster, generate an individual content brief
172
+ and save it to `./campaigns/content-plan/`.
173
+
174
+ ### Content Brief Template
175
+
176
+ ```markdown
177
+ # Content Brief: {Article Title}
178
+
179
+ ## Last Updated
180
+ {YYYY-MM-DD} by /keyword-research
181
+
182
+ ## Target Keyword
183
+ Primary: {main keyword}
184
+ Secondary: {2-5 supporting keywords}
185
+ Long-tail: {3-5 long-tail variations}
186
+
187
+ ## Search Intent
188
+ {Informational / Commercial / Transactional}
189
+
190
+ ## Content Type
191
+ {Pillar Guide / How-To / Comparison / Listicle / Use Case / Definition}
192
+
193
+ ## Target Word Count
194
+ {range}
195
+
196
+ ## SERP Snapshot
197
+ Top 3 current results:
198
+ 1. {Title} -- {Domain} -- {Content type} -- {Assessment}
199
+ 2. {Title} -- {Domain} -- {Content type} -- {Assessment}
200
+ 3. {Title} -- {Domain} -- {Content type} -- {Assessment}
201
+
202
+ Content gap to exploit: {what is missing from current results}
203
+
204
+ ## People Also Ask
205
+ - {PAA question 1}
206
+ - {PAA question 2}
207
+ - {PAA question 3}
208
+ - {PAA question 4}
209
+
210
+ ## Recommended Outline
211
+ H1: {Title}
212
+ H2: {Section from PAA or logical flow}
213
+ H2: {Section}
214
+ H2: {Section}
215
+ H2: {Section}
216
+ H2: {Section}
217
+
218
+ ## Angle
219
+ {How to approach this topic given the brand's positioning}
220
+ {Reference ./brand/positioning.md if loaded}
221
+
222
+ ## Differentiation
223
+ {What makes this piece different from what already ranks}
224
+ {Proprietary data, unique methodology, practitioner experience}
225
+
226
+ ## Internal Links
227
+ - Links TO: {other pieces in the content plan this should link to}
228
+ - Links FROM: {other pieces that should link to this one}
229
+
230
+ ## CTA
231
+ {What action the reader should take after reading}
232
+
233
+ ## Priority
234
+ {DO FIRST / DO SECOND / DO THIRD / QUICK WIN / LONG PLAY}
235
+
236
+ ## Status
237
+ planning
238
+ ```
239
+
240
+ ### Brief Naming Convention
241
+
242
+ Use lowercase-kebab-case: `{keyword-slug}.md`
243
+ - "What is AI marketing" --> `what-is-ai-marketing.md`
244
+ - "Best marketing automation tools" --> `best-marketing-automation-tools.md`
245
+
246
+ ### How Many Briefs to Generate
247
+
248
+ - Generate briefs for all Tier 1 keywords (DO FIRST items)
249
+ - Generate briefs for Quick Wins
250
+ - Offer to generate Tier 2 briefs if user wants them
251
+ - Do not auto-generate Tier 3 or Tier 4 briefs (save for later)
252
+
253
+ ---
254
+
255
+ ## Keyword Plan File Format
256
+
257
+ The keyword plan saved to `./brand/keyword-plan.md` uses this format:
258
+
259
+ ```markdown
260
+ # Keyword Plan
261
+
262
+ ## Last Updated
263
+ {YYYY-MM-DD} by /keyword-research
264
+
265
+ ## Business Context
266
+ - Offer: {what they sell}
267
+ - Audience: {who they serve}
268
+ - Goal: {traffic / leads / sales / authority}
269
+ - Positioning: {angle from brand memory or user input}
270
+
271
+ ## Pillar Overview
272
+
273
+ ### Pillar 1: {Name} -- Priority: {Critical/High/Medium/Low}
274
+ Validation: {PASS/FAIL summary}
275
+ Clusters: {N}
276
+ Content pieces planned: {N}
277
+
278
+ | Cluster | Priority | Intent | Content Type | Status |
279
+ |---------|----------|--------|--------------|--------|
280
+ | {name} | {H/M/L} | {type} | {format} | {status} |
281
+ | {name} | {H/M/L} | {type} | {format} | {status} |
282
+
283
+ ### Pillar 2: {Name} -- Priority: {level}
284
+ ...
285
+
286
+ ## Competitive Landscape
287
+ {Summary of competitor content analysis}
288
+ {Key gaps identified}
289
+
290
+ ## 90-Day Content Calendar
291
+
292
+ ### Month 1
293
+ - Week 1-2: {Flagship piece} -- {Target keyword cluster}
294
+ - Week 3: {Supporting piece} -- {Target keyword cluster}
295
+ - Week 4: {Supporting piece} -- {Target keyword cluster}
296
+
297
+ ### Month 2
298
+ - Week 5-6: {Second pillar piece} -- {Target keyword cluster}
299
+ - Week 7: {Supporting piece} -- {Target keyword cluster}
300
+ - Week 8: {Supporting piece} -- {Target keyword cluster}
301
+
302
+ ### Month 3
303
+ - Week 9-10: {Third pillar piece} -- {Target keyword cluster}
304
+ - Week 11: {Supporting piece} -- {Target keyword cluster}
305
+ - Week 12: {Supporting piece} -- {Target keyword cluster}
306
+
307
+ ## Content Briefs Generated
308
+ | Brief | Path | Priority | Status |
309
+ |-------|------|----------|--------|
310
+ | {title} | ./campaigns/content-plan/{slug}.md | {priority} | planning |
311
+
312
+ ## Search Data Summary
313
+ - Autocomplete terms captured: {N}
314
+ - PAA questions captured: {N}
315
+ - SERPs analyzed: {N}
316
+ - Competitor pages reviewed: {N}
317
+ - Date of search: {YYYY-MM-DD}
318
+ ```
319
+
320
+ ---
321
+
322
+
323
+ ---
324
+
325
+ # Formatted Output Structure
326
+
327
+ ## Formatted Output Structure
328
+
329
+ When presenting the completed keyword plan to the user, follow the output
330
+ format specification from `_system/output-format.md`. The terminal output
331
+ uses the premium formatting system. The markdown file saved to disk uses
332
+ standard markdown.
333
+
334
+ ### Terminal Output Template
335
+
336
+ ```
337
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
338
+
339
+ KEYWORD RESEARCH PLAN
340
+ Generated {Mon DD, YYYY}
341
+
342
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
343
+
344
+ Brand: {name}
345
+ Goal: {traffic / leads / sales / authority}
346
+
347
+ {If brand context was loaded:}
348
+ Brand context:
349
+ ├── Positioning ✓ loaded
350
+ ├── Audience ✓ loaded
351
+ └── Competitors ✓ {N} profiled
352
+
353
+ ──────────────────────────────────────────────
354
+
355
+ RESEARCH MODE
356
+ ├── Web search {✓ connected | ✗ not available}
357
+ ├── Data quality: {LIVE | ESTIMATED}
358
+ └── {If ESTIMATED: "Using estimated data based on
359
+ brand context and training data. Volumes and
360
+ rankings are directional, not verified."}
361
+
362
+ Per _system/brand-memory.md: always show the research
363
+ signal. If web search is unavailable, tell the user
364
+ data is estimated and prefix research-dependent
365
+ numbers with ~ (e.g., ~2,400 monthly searches).
366
+
367
+ ──────────────────────────────────────────────
368
+
369
+ RESEARCH SUMMARY
370
+
371
+ Seeds generated: {N}
372
+ Keywords expanded: {N}
373
+ Autocomplete terms: {N}
374
+ PAA questions captured: {N}
375
+ SERPs analyzed: {N}
376
+ Competitor pages reviewed: {N}
377
+
378
+ ──────────────────────────────────────────────
379
+
380
+ CONTENT PILLARS
381
+
382
+ ① {PILLAR NAME} ★ critical
383
+ {N} clusters, {N} content pieces
384
+ Validation: search ✓ market ✓ competitive ✓
385
+ Top keyword: "{keyword}"
386
+ SERP status: {opportunity assessment}
387
+
388
+ ──────────────────────────────────────────────
389
+
390
+ ② {PILLAR NAME} high
391
+ {N} clusters, {N} content pieces
392
+ Validation: search ✓ market ✓ competitive ✓
393
+ Top keyword: "{keyword}"
394
+ SERP status: {opportunity assessment}
395
+
396
+ ──────────────────────────────────────────────
397
+
398
+ ③ {PILLAR NAME} medium
399
+ ...
400
+
401
+ ──────────────────────────────────────────────
402
+
403
+ TOP OPPORTUNITIES
404
+
405
+ Keyword Opp Speed
406
+ ──────────────────────────────────────────────
407
+ {keyword 1} ★★★★★ Fast
408
+ {keyword 2} ★★★★ Fast
409
+ {keyword 3} ★★★★ Medium
410
+ {keyword 4} ★★★ Fast
411
+ {keyword 5} ★★★ Medium
412
+
413
+ ──────────────────────────────────────────────
414
+ Opp = opportunity score based on SERP analysis
415
+ Speed = estimated time to page 1
416
+
417
+ ──────────────────────────────────────────────
418
+
419
+ COMPETITIVE GAPS
420
+
421
+ ├── {gap 1 -- topic no competitor covers}
422
+ ├── {gap 2 -- topic with weak coverage}
423
+ └── {gap 3 -- topic where you have advantage}
424
+
425
+ ──────────────────────────────────────────────
426
+
427
+ 90-DAY CONTENT CALENDAR
428
+
429
+ Month 1
430
+ ├── Wk 1-2 {Flagship piece}
431
+ │ → {target keyword}
432
+ ├── Wk 3 {Supporting piece}
433
+ │ → {target keyword}
434
+ └── Wk 4 {Supporting piece}
435
+ → {target keyword}
436
+
437
+ Month 2
438
+ ├── Wk 5-6 {Second pillar piece}
439
+ │ → {target keyword}
440
+ ├── Wk 7 {Supporting piece}
441
+ │ → {target keyword}
442
+ └── Wk 8 {Supporting piece}
443
+ → {target keyword}
444
+
445
+ Month 3
446
+ ├── Wk 9-10 {Third pillar piece}
447
+ │ → {target keyword}
448
+ ├── Wk 11 {Supporting piece}
449
+ │ → {target keyword}
450
+ └── Wk 12 {Supporting piece}
451
+ → {target keyword}
452
+
453
+ ──────────────────────────────────────────────
454
+
455
+ START HERE
456
+
457
+ {Specific first piece of content to create
458
+ and why -- based on highest opportunity score,
459
+ fastest speed to win, and strongest alignment
460
+ with business goals}
461
+
462
+ ──────────────────────────────────────────────
463
+
464
+ CONTENT BRIEFS GENERATED
465
+
466
+ ├── {brief 1} ✓ ./campaigns/content-plan/{slug}.md
467
+ ├── {brief 2} ✓ ./campaigns/content-plan/{slug}.md
468
+ └── {brief 3} ✓ ./campaigns/content-plan/{slug}.md
469
+
470
+ ──────────────────────────────────────────────
471
+
472
+ FILES SAVED
473
+
474
+ ./brand/keyword-plan.md ✓
475
+ ./campaigns/content-plan/{slug-1}.md ✓ (new)
476
+ ./campaigns/content-plan/{slug-2}.md ✓ (new)
477
+ ./campaigns/content-plan/{slug-3}.md ✓ (new)
478
+ ./brand/assets.md ✓ ({N} entries added)
479
+
480
+ WHAT'S NEXT
481
+
482
+ Your keyword plan is set with {N} prioritized
483
+ clusters and {N} content briefs ready to write.
484
+
485
+ → /seo-content Write your first article
486
+ with your top cluster (~20 min)
487
+ → /content-atomizer Repurpose across social
488
+ channels (~10 min)
489
+ → /newsletter Build an edition around
490
+ your top topics (~15 min)
491
+
492
+ Or tell me what you are working on and
493
+ I will route you.
494
+ ```
495
+
496
+ ---
497
+
498
+
499
+ ---
500
+
501
+ # Full Example
502
+
503
+ ## Example: Keyword Research for "AI Marketing Consultant"
504
+
505
+ ### Context Gathered
506
+
507
+ - **Business:** AI marketing consulting for startups
508
+ - **Audience:** Funded startups, 10-50 employees, no marketing hire yet
509
+ - **Goal:** Leads for consulting engagements
510
+ - **Timeline:** Mix of quick wins and authority building
511
+ - **Brand memory:** positioning.md loaded (angle: "Practitioner, not theorist"),
512
+ audience.md loaded, competitors.md loaded (3 competitors profiled)
513
+
514
+ ### Seed Keywords Generated (brand-informed)
515
+
516
+ - AI marketing consultant
517
+ - AI marketing strategy
518
+ - Marketing automation
519
+ - Startup marketing
520
+ - Fractional CMO
521
+ - AI marketing tools
522
+ - Marketing for funded startups (from audience.md)
523
+ - Practitioner marketing (from positioning.md)
524
+
525
+ ### Expanded via 6 Circles (sample)
526
+
527
+ **Circle 1 (What you sell):** AI marketing consultant, AI marketing strategy,
528
+ AI marketing audit, marketing automation setup
529
+
530
+ **Circle 2 (Problems):** startup marketing overwhelm, no time for marketing,
531
+ marketing not working, can not hire marketing team
532
+
533
+ **Circle 3 (Outcomes):** automated lead generation, consistent content,
534
+ marketing ROI, scalable marketing
535
+
536
+ **Circle 4 (Positioning -- from positioning.md):** practitioner marketing,
537
+ marketing without theory, real-world marketing strategy, marketing from
538
+ someone who does it
539
+
540
+ **Circle 5 (Adjacent -- from audience.md):** startup growth strategies,
541
+ product-led growth, indie hacker marketing, Series A marketing playbook
542
+
543
+ **Circle 6 (Entities):** Claude AI marketing, n8n marketing automation,
544
+
545
+ ### Web Search Findings (sample)
546
+
547
+ **Autocomplete discoveries:**
548
+ - "AI marketing consultant" → "AI marketing consultant for startups",
549
+ "AI marketing consultant near me", "AI marketing consultant cost"
550
+ - "startup marketing" → "startup marketing strategy 2026",
551
+ "startup marketing budget", "startup marketing without a team"
552
+
553
+ **People Also Ask:**
554
+ - "How much does an AI marketing consultant cost?"
555
+ - "Do I need a marketing team for my startup?"
556
+ - "What is fractional marketing?"
557
+ - "Can AI replace a marketing team?"
558
+
559
+ **SERP analysis:**
560
+ - "AI marketing consultant": Thin results, no definitive guide. Opportunity.
561
+ - "startup marketing strategy": Competitive but top results are 2023-dated.
562
+ - "fractional CMO": Moderate competition, mix of agencies and solo consultants.
563
+ - "marketing automation for startups": Reddit in top 5. Major content gap.
564
+
565
+ **Competitor content gaps:**
566
+ - Competitor A has no content on "AI marketing for startups"
567
+ - Competitor B covers "fractional CMO" but nothing on automation
568
+ - None of the 3 competitors have comparison content (vs pages)
569
+
570
+ ### Clustered into Pillars
571
+
572
+ **Pillar 1: AI Marketing Strategy** (Priority: Critical)
573
+ - Validation: search ✓ market ✓ competitive ✓ advantage ✓
574
+ - What is AI marketing
575
+ - AI marketing examples
576
+ - AI marketing tools
577
+ - AI marketing for startups
578
+ - PAA: "Can AI replace a marketing team?" (standalone article)
579
+
580
+ **Pillar 2: Marketing Automation** (Priority: High)
581
+ - Validation: search ✓ market ✓ competitive ✓ advantage ✓
582
+ - Marketing automation for startups
583
+ - No-code marketing automation
584
+ - n8n vs Zapier for marketing
585
+ - Marketing workflow templates
586
+ - SERP: Reddit ranking = confirmed content gap
587
+
588
+ **Pillar 3: Fractional Marketing** (Priority: Medium)
589
+ - Validation: search ✓ market ✓ competitive partial advantage partial
590
+ - What is a fractional CMO
591
+ - Fractional CMO vs agency
592
+ - When to hire fractional marketing
593
+ - How much does a fractional CMO cost (from PAA)
594
+
595
+ ### Top 3 Recommendations
596
+
597
+ **1. "Marketing Automation for Startups" (Do First -- Quick Win)**
598
+ - Reddit in top 5 = confirmed content gap
599
+ - Specific audience match (from audience.md)
600
+ - Competitor B has nothing here
601
+ - How-to guide, 2,500+ words
602
+ - Content brief generated: ./campaigns/content-plan/marketing-automation-startups.md
603
+
604
+ **2. "What is AI Marketing?" (Do Second -- Category Play)**
605
+ - Category definition opportunity
606
+ - Top results are thin and dated
607
+ - Practitioner angle (from positioning.md) differentiates
608
+ - Pillar guide, 5,000+ words
609
+ - Content brief generated: ./campaigns/content-plan/what-is-ai-marketing.md
610
+
611
+ **3. "AI Marketing Tools 2026" (Do Third -- Commercial Intent)**
612
+ - Commercial intent, close to purchase
613
+ - Existing content is generic/outdated
614
+ - Unique angle: practitioner reviews, not affiliate lists
615
+ - Comparison listicle, 3,000+ words
616
+ - Content brief generated: ./campaigns/content-plan/ai-marketing-tools-2026.md
617
+
618
+ ---
619
+
620
+
621
+ ---
622
+
623
+ # Supplementary
624
+
625
+ ## Free Tools to Supplement
626
+
627
+ If the user needs additional data validation beyond web search:
628
+
629
+ - **Google Trends** (trends.google.com) -- Trend direction, seasonality
630
+ - **Google Search Console** -- Your actual ranking data
631
+ - **Google Search** -- SERP analysis, autocomplete, People Also Ask
632
+ - **AnswerThePublic** (free tier) -- Question-based keywords
633
+ - **AlsoAsked** (free tier) -- PAA relationship mapping
634
+ - **Reddit/Quora search** -- Real user questions and language
635
+ - **exa MCP or web search free tools** -- Limited keyword data
636
+ - **Ubersuggest free tier** -- Basic keyword metrics
637
+
638
+ ---
639
+
640
+
641
+ ---
642
+
643
+ # Technical Reference
644
+
645
+ ## Error States
646
+
647
+ ### Web search not available
648
+
649
+ ```
650
+ ┌──────────────────────────────────────────────┐
651
+ │ │
652
+ │ ✗ WEB SEARCH UNAVAILABLE │
653
+ │ │
654
+ │ Web search tools are not available in this │
655
+ │ environment. I can still build a keyword │
656
+ │ plan using the 6 Circles Method and │
657
+ │ strategic analysis -- but without live │
658
+ │ SERP validation. │
659
+ │ │
660
+ │ → Continue without search data │
661
+ │ → Provide competitor URLs and I will work │
662
+ │ with what you give me │
663
+ │ │
664
+ └──────────────────────────────────────────────┘
665
+ ```
666
+
667
+ When web search is unavailable, skip Phase 3 and run the v1 process (Phases 1,
668
+ 2, 4-7). Show the RESEARCH MODE signal with "Data quality: ESTIMATED" per
669
+ _system/brand-memory.md. Tell the user you are using estimated data based on
670
+ training knowledge rather than live search results. Prefix all volume and
671
+ ranking estimates with ~ to indicate they are directional. Recommend the user
672
+ manually check top results for priority keywords.
673
+
674
+ ### No business context available
675
+
676
+ ```
677
+ ┌──────────────────────────────────────────────┐
678
+ │ │
679
+ │ ✗ NEED BUSINESS CONTEXT │
680
+ │ │
681
+ │ I need to understand your business before │
682
+ │ researching keywords. No brand profile │
683
+ │ found and no context provided. │
684
+ │ │
685
+ │ → Tell me what you sell and who you serve │
686
+ │ → /start-here to build your full profile │
687
+ │ → /brand-voice to start with voice │
688
+ │ │
689
+ └──────────────────────────────────────────────┘
690
+ ```
691
+
692
+ ### Competitor URLs not accessible
693
+
694
+ ```
695
+ ┌──────────────────────────────────────────────┐
696
+ │ │
697
+ │ ✗ COMPETITOR ANALYSIS LIMITED │
698
+ │ │
699
+ │ Could not access content from {N} of {M} │
700
+ │ competitor URLs. Proceeding with available │
701
+ │ data. │
702
+ │ │
703
+ │ Accessible: │
704
+ │ ├── {competitor 1} ✓ │
705
+ │ └── {competitor 2} ✗ blocked │
706
+ │ │
707
+ │ → Continue with partial data │
708
+ │ → Provide alternative competitor URLs │
709
+ │ │
710
+ └──────────────────────────────────────────────┘
711
+ ```
712
+
713
+ ---
714
+
715
+ ## Implementation Notes for the LLM
716
+
717
+ When executing this skill, follow these rules precisely:
718
+
719
+ 1. **Never skip the iteration check.** Always look for an existing
720
+ keyword-plan.md before starting a new plan.
721
+
722
+ 2. **Never skip web search when available.** The v2 differentiator is
723
+ data-backed research. If web search tools are available, use them.
724
+ Phase 3 is not optional -- it is what makes this skill worth paying for.
725
+
726
+ 3. **Show your work.** When loading brand context, say what you loaded.
727
+ When searching, show what you found. When analyzing SERPs, name the
728
+ patterns. The user should feel like they are working with a senior
729
+ content strategist, not a keyword generator.
730
+
731
+ 4. **Preserve the 6 Circles Method.** This is the strategic core. Web
732
+ search enhances it, does not replace it. Always run 6 Circles expansion
733
+ before web search validation.
734
+
735
+ 5. **Pillar validation is mandatory.** Do not skip the 4-check validation.
736
+ With live SERP data, the validation is even more powerful -- use it.
737
+ If a pillar fails 2+ tests, demote or remove it regardless of how
738
+ "on-brand" it feels.
739
+
740
+ 6. **Generate content briefs for top priorities.** Do not just list
741
+ keywords. The briefs in ./campaigns/content-plan/ are what make this
742
+ skill actionable. Every Tier 1 keyword should have a brief.
743
+
744
+ 7. **Respect the brand memory protocol.** Read before write. Diff before
745
+ overwrite. Confirm before save. Append to assets.md, never overwrite.
746
+
747
+ 8. **PAA questions are gold.** People Also Ask questions are real queries
748
+ from real people. Always capture them and map them to content outlines.
749
+ They become H2s in your content briefs.
750
+
751
+ 9. **The chain to /seo-content is the handoff.** Always offer it. The
752
+ keyword plan is strategy. /seo-content is execution. The faster the
753
+ user moves from plan to content, the more value they get.
754
+
755
+ 10. **Write file paths correctly.** The plan saves to
756
+ `./brand/keyword-plan.md`. Briefs save to
757
+ `./campaigns/content-plan/{slug}.md`. The exact paths matter for
758
+ cross-skill references.
759
+
760
+ 11. **When web search is unavailable, gracefully degrade.** Fall back to
761
+ the v1 process (6 Circles + strategic analysis). Note the limitation.
762
+ The skill should still produce valuable output without search data --
763
+ it just will not have SERP validation.
764
+
765
+ 12. **Use brand positioning to differentiate, not to dictate topics.**
766
+ The positioning angle tells you HOW to write about a topic, not WHAT
767
+ topics to target. "The Anti-Agency" writes about "marketing strategy"
768
+ (market term) with an anti-agency angle -- it does not target
769
+ "anti-agency" as a keyword.