@jairodri/huckleberry-cli 1.0.1 → 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 +349 -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,374 @@
1
+ ---
2
+ name: marketing-psychology
3
+ description: "Knowledge skill that applies behavioral psychology and persuasion principles to any marketing asset."
4
+ category: knowledge
5
+ layer: knowledge
6
+ tier: must-have
7
+ reads:
8
+ - brand/positioning.md
9
+ - brand/audience.md
10
+ - brand/voice-profile.md
11
+ writes: []
12
+ depends-on: []
13
+ triggers:
14
+ - marketing psychology
15
+ - persuasion
16
+ - Cialdini
17
+ - scarcity
18
+ - social proof
19
+ - cognitive bias
20
+ - psychological triggers
21
+ - influence tactics
22
+ - make this more convincing
23
+ - add urgency
24
+ allowed-tools: []
25
+ ---
26
+
27
+ # Marketing Psychology
28
+
29
+ ## Purpose
30
+
31
+ This is a KNOWLEDGE skill. It does not produce standalone deliverables. Instead, it enhances any marketing asset — landing pages, emails, ads, CTAs, pricing pages, onboarding flows — by applying behavioral psychology principles that increase persuasion and conversion.
32
+
33
+ When another skill produces copy or UX, this skill provides the psychological layer: why certain framings work, which biases to apply, and specific before/after rewrites grounded in research.
34
+
35
+ ## No Reads/Writes
36
+
37
+ This skill is pure reference. It reads no brand files and writes no outputs. It is applied ON TOP of other skills' work.
38
+
39
+ ## Brand Context Enhancement
40
+
41
+ While this skill reads no files itself, the calling skill should provide brand context when available:
42
+
43
+ - **audience.md** -> Knowing the audience helps select the right social proof type (peer testimonials for B2B, user statistics for consumer), the right authority signals (industry certifications for enterprise, founder story for indie), and the right scarcity framing (launch pricing for startups, seat limits for teams).
44
+ - **voice-profile.md** -> Brand voice affects HOW principles are applied. A playful brand uses conversational loss aversion ("Don't miss out on..."). A professional brand uses data-driven framing ("Companies without X lose an average of...").
45
+ - **positioning.md** -> Premium positioning supports authority and anchoring. Challenger positioning supports liking and social proof from peers.
46
+
47
+ When calling this skill, pass relevant brand context so principles are applied in voice, not generically.
48
+
49
+ ## Workflow
50
+
51
+ ### Step 1: Identify the Asset Type
52
+
53
+ Determine what marketing asset is being optimized:
54
+
55
+ - Landing page (hero, body, CTA)
56
+ - Email (subject, body, CTA)
57
+ - Ad copy (headline, description, creative)
58
+ - Pricing page (tiers, anchoring, CTA)
59
+ - Onboarding flow (screens, copy, nudges)
60
+ - Social post (hook, body, CTA)
61
+ - Cancel flow (retention, objection handling)
62
+ - Sales page (long-form persuasion)
63
+
64
+ ### Step 2: Select Applicable Principles
65
+
66
+ Not every principle applies to every asset. Match principles to context. Use the Application Matrix below for quick selection.
67
+
68
+ ### Step 3: Consider B2B vs B2C Differences
69
+
70
+ | Principle | B2B Emphasis | B2C Emphasis |
71
+ |-----------|-------------|-------------|
72
+ | Social proof | Case studies, logos, ROI metrics | User counts, ratings, peer testimonials |
73
+ | Authority | Industry certifications, compliance | Celebrity endorsements, media features |
74
+ | Scarcity | Limited pilot spots, implementation slots | Limited stock, countdown timers |
75
+ | Loss aversion | Revenue at risk, competitive disadvantage | Missing out on experiences, wasted time |
76
+ | Anchoring | ROI comparison, cost of inaction | Was/now pricing, competitor comparison |
77
+
78
+ **For real-world case studies of each principle in action:** See [references/case-studies.md](references/case-studies.md) — 11 examples from companies like HubSpot, Netflix, Stripe, Duolingo, and Superhuman showing how principles translate to specific implementations.
79
+
80
+ ## How to Use This Skill
81
+
82
+ This is a knowledge skill — it enhances other skills' output rather than producing standalone deliverables.
83
+
84
+ **Invocation pattern:** When another skill produces copy or UX, ask: "Apply marketing psychology principles to this asset." This skill audits the output and suggests principle-specific rewrites.
85
+
86
+ **Example:** After /direct-response-copy produces a landing page, apply this skill to audit the hero for anchoring, the CTA for scarcity, and the testimonials for social proof.
87
+
88
+ ## Cialdini's 6 Principles of Persuasion
89
+
90
+ ### 1. Reciprocity
91
+
92
+ People feel obligated to return favors. Give value first, ask second.
93
+
94
+ **Application:**
95
+ - Free tools, templates, guides before asking for signup
96
+ - Free trial with no credit card (gift, not trap)
97
+ - Personalized recommendations or audit before pitching
98
+
99
+ **Before:** "Sign up for our product"
100
+ **After:** "Here's a free audit of your [X]. Want to fix these issues automatically? [Start free trial]"
101
+
102
+ **Why this works:** Giving value before asking creates an obligation loop — the free checklist makes the paid product feel like a natural next step, not a cold ask.
103
+
104
+ **Where it works best:** Lead magnets, free tools, onboarding emails, content marketing
105
+
106
+ ### 2. Commitment and Consistency
107
+
108
+ People who take small steps continue in the same direction. Micro-commitments build toward conversion.
109
+
110
+ **Application:**
111
+ - "Yes ladder" — series of small agreements before the big ask
112
+ - Interactive tools that invest the user's time (endowment effect crossover)
113
+ - Public commitments: sharing goals, publishing results
114
+ - Progressive profiling: ask for email first, details later
115
+
116
+ **Before:** "Buy our annual plan for $299/year"
117
+ **After:** "Start your free project -> See your first results -> Upgrade when you're ready"
118
+
119
+ **Why this works:** Each small yes builds psychological momentum — once someone has invested time and seen results, saying yes to payment feels consistent with their prior actions.
120
+
121
+ **Where it works best:** Signup flows, onboarding, pricing pages, email sequences
122
+
123
+ ### 3. Social Proof
124
+
125
+ People follow the actions of others, especially similar others.
126
+
127
+ **Types of social proof (ordered by persuasion strength):**
128
+
129
+ | Type | Example | Strength |
130
+ |------|---------|----------|
131
+ | Expert endorsement | "[Industry expert] recommends [Product]" | Highest |
132
+ | Celebrity/Influencer | "[Known figure] uses [Product]" | High |
133
+ | User statistics | "12,847 teams use [Product]" | High |
134
+ | Peer testimonial | "[Same role/industry] saw [specific result]" | High |
135
+ | Certification/Award | "G2 Leader, 4.8/5 stars" | Medium |
136
+ | Wisdom of crowds | "Most popular plan" badge | Medium |
137
+ | Friend referral | "[Name] invited you" | Highest (context-dependent) |
138
+
139
+ **Before:** "Our product is great"
140
+ **After:** "12,847 marketing teams use [Product] to save 10+ hours/week. Here's what [Similar Company] achieved in 30 days."
141
+
142
+ **Why this works:** Humans use others' behavior as a decision shortcut — specific numbers and named peers eliminate the need to evaluate the product independently.
143
+
144
+ **Where it works best:** Every asset. No exceptions. Always include social proof.
145
+
146
+ ### 4. Authority
147
+
148
+ People defer to experts and credible sources.
149
+
150
+ **Authority signals:**
151
+ - Founder credentials and expertise
152
+ - Media logos ("As seen in TechCrunch, Forbes")
153
+ - Data and research citations
154
+ - Industry certifications and compliance badges
155
+ - Published content demonstrating expertise
156
+ - Years in business, customers served
157
+
158
+ **Before:** "We help with email marketing"
159
+ **After:** "Built by the team that scaled [Company]'s email list from 0 to 500K subscribers"
160
+
161
+ **Why this works:** Concrete credentials transfer trust instantly — the reader borrows confidence from the known achievement rather than evaluating your claim from scratch.
162
+
163
+ **Where it works best:** Landing pages, about pages, sales emails, B2B proposals
164
+
165
+ ### 5. Liking
166
+
167
+ People buy from people (and brands) they like. Similarity, compliments, and cooperation build liking.
168
+
169
+ **Application:**
170
+ - Use customer's language, not corporate jargon
171
+ - Show the team (real photos, real names)
172
+ - Mirror the audience's values and frustrations
173
+ - Conversational tone > formal tone
174
+ - "We built this because we had this problem too"
175
+
176
+ **Before:** "Our enterprise-grade solution leverages AI-powered analytics"
177
+ **After:** "We were tired of staring at spreadsheets too. So we built [Product]."
178
+
179
+ **Why this works:** Mirroring the audience's frustration signals "we're one of you" — people trust and buy from those who understand their lived experience.
180
+
181
+ **Where it works best:** Brand voice, about pages, founder stories, email tone
182
+
183
+ ### 6. Scarcity
184
+
185
+ People value what's limited. Real scarcity drives action; manufactured scarcity destroys trust.
186
+
187
+ **Legitimate scarcity patterns:**
188
+ - Limited beta access (real capacity constraint)
189
+ - Expiring discounts tied to events (launch pricing, annual sale)
190
+ - Feature limits on free tier (natural product boundary)
191
+ - Seats or usage limits (infrastructure reality)
192
+
193
+ **Illegitimate scarcity (never use):**
194
+ - Fake countdown timers that reset
195
+ - "Only 2 left!" when there's unlimited supply
196
+ - Artificial waitlists for available products
197
+ - Urgency language with no actual deadline
198
+
199
+ **Before:** "Sign up anytime"
200
+ **After:** "Launch pricing: $29/mo for the first 500 customers (347 claimed)" — only if real
201
+
202
+ **Why this works:** Real scarcity activates fear of missing out on a genuine opportunity — the specific count (347/500) makes the constraint feel tangible and urgent without feeling manufactured.
203
+
204
+ **Where it works best:** Pricing pages, launch campaigns, limited offers (when genuine)
205
+
206
+ ## Cognitive Biases for Marketing
207
+
208
+ ### Loss Aversion
209
+
210
+ People feel losses 2x more intensely than equivalent gains. Frame around what they'll lose, not just what they'll gain.
211
+
212
+ **Before:** "Save 10 hours per week with [Product]"
213
+ **After:** "You're losing 10 hours every week to [manual task]. [Product] gives them back."
214
+
215
+ **Why this works:** The pain of losing 10 hours hits harder than the pleasure of saving them — reframing a gain as a recovered loss doubles the emotional weight.
216
+
217
+ **Application:** Cancel flows, upgrade prompts, trial expiration emails, feature comparison
218
+
219
+ ### Anchoring
220
+
221
+ The first number people see becomes the reference point. Control the anchor.
222
+
223
+ **Application:**
224
+ - Show highest-priced plan first on pricing page
225
+ - Compare your price to the cost of the problem: "Losing $5K/month to [problem]? Fix it for $49/month."
226
+ - Show original price crossed out next to sale price
227
+ - "Teams spend 20 hours/week on [task]. [Product] reduces it to 2."
228
+
229
+ **Pricing page pattern:**
230
+ ```
231
+ Enterprise: $299/mo <- Anchor
232
+ Pro: $99/mo <- Looks reasonable now
233
+ Starter: $29/mo <- Feels like a steal
234
+ ```
235
+
236
+ ### Endowment Effect
237
+
238
+ People value things more once they feel ownership. Let them invest before asking to pay.
239
+
240
+ **Application:**
241
+ - Free trials that let users create real work (not sandboxed demos)
242
+ - "Your dashboard", "Your projects" language from day one
243
+ - Showing what they'll lose at trial end: "You have 3 active projects and 47 contacts"
244
+ - Data import during onboarding (invested effort = harder to leave)
245
+
246
+ ### IKEA Effect
247
+
248
+ People value things they helped build. Involvement increases attachment.
249
+
250
+ **Application:**
251
+ - Onboarding that involves customization (pick your theme, set your goals)
252
+ - Interactive tools that require user input
253
+ - Templates users modify rather than pre-built outputs
254
+ - "Built by you" framing for created assets
255
+
256
+ ### Paradox of Choice
257
+
258
+ Too many options -> decision paralysis -> no action. Reduce choices, add recommendations.
259
+
260
+ **Application:**
261
+ - 3 pricing tiers maximum, one highlighted as "Most Popular"
262
+ - "Recommended for you" based on signup answers
263
+ - Default selections for settings and preferences
264
+ - "Start here" guidance instead of feature overwhelm
265
+
266
+ **Before:** 5 plan tiers with 40 feature comparison rows
267
+ **After:** 3 plans, "Most Popular" badge on middle tier, "Not sure? Start with Pro" CTA
268
+
269
+ **Why this works:** Reducing options from 5 to 3 eliminates decision paralysis, and the "Most Popular" badge gives permission to stop comparing — the crowd already chose for you.
270
+
271
+ ### Zero-Risk Bias
272
+
273
+ People strongly prefer eliminating a risk entirely over reducing it. Money-back guarantees outperform discount offers.
274
+
275
+ **Application:**
276
+ - "30-day money-back guarantee. No questions asked."
277
+ - "Cancel anytime. No contracts, no penalties."
278
+ - "Free tier available forever" (eliminates downgrade anxiety)
279
+ - "We'll migrate your data for free" (eliminates switching risk)
280
+
281
+ ### Framing Effect
282
+
283
+ The same information presented differently changes decisions. Frame to match your goal.
284
+
285
+ **Application:**
286
+ - "95% uptime" vs "Only 5% downtime" — same fact, different feeling
287
+ - "Join 10,000 happy customers" vs "Don't be one of the few who miss out"
288
+ - "Save $120/year" vs "Save $10/month" — annual framing feels bigger for savings
289
+ - Positive frame for gains ("Get X"), negative frame for preventing losses ("Stop losing X")
290
+
291
+ **Before:** "Our tool has 99.9% accuracy"
292
+ **After:** "Our tool catches 999 out of every 1,000 errors — so nothing slips through"
293
+
294
+ **Why this works:** Concrete framing (999/1000) is more vivid than abstract percentages. The reader can picture the result.
295
+
296
+ ### Status Quo Bias
297
+
298
+ People prefer the current state of affairs. Reducing friction to switch is more effective than amplifying benefits.
299
+
300
+ **Application:**
301
+ - "Import your data in one click" (reduces switching cost)
302
+ - "Works with tools you already use" (no workflow change)
303
+ - "Keep your existing setup — we just plug in"
304
+ - Free migration services eliminate the biggest barrier
305
+
306
+ **Where it works best:** Competitor displacement, upgrade prompts, onboarding
307
+
308
+ ### Mere Exposure Effect
309
+
310
+ Familiarity breeds preference. People like what they've seen before.
311
+
312
+ **Application:**
313
+ - Retargeting ads that keep your brand visible
314
+ - Consistent visual branding across all touchpoints
315
+ - Content marketing that puts your name in front of prospects repeatedly
316
+ - Email nurture sequences that build familiarity before asking for the sale
317
+
318
+ **Where it works best:** Top-of-funnel content, retargeting, email sequences, social media presence
319
+
320
+ ## Framework Application Matrix
321
+
322
+ Quick reference — which principles apply to which assets:
323
+
324
+ | Principle | Landing Page | Email | Pricing | Onboarding | Ads |
325
+ |-----------|-------------|-------|---------|------------|-----|
326
+ | Reciprocity | Medium | High | Low | High | Low |
327
+ | Commitment | Low | High | Medium | High | Low |
328
+ | Social Proof | High | Medium | High | Medium | High |
329
+ | Authority | High | Medium | Medium | Low | High |
330
+ | Liking | Medium | High | Low | High | Medium |
331
+ | Scarcity | Medium | High | High | Low | High |
332
+ | Loss Aversion | Medium | High | High | High | Medium |
333
+ | Anchoring | Medium | Low | High | Low | Medium |
334
+ | Endowment | Low | Medium | Low | High | Low |
335
+ | Framing | High | High | Medium | Medium | High |
336
+ | Status Quo | Medium | Low | Low | High | Medium |
337
+
338
+ ## How to Apply This Skill
339
+
340
+ When reviewing any marketing asset:
341
+
342
+ 1. **Identify** the asset type and primary conversion goal
343
+ 2. **Select** 2-4 most relevant principles (don't force all of them)
344
+ 3. **Consider** B2B vs B2C context — application differs significantly
345
+ 4. **Audit** current copy/UX for existing psychology use (intentional or accidental)
346
+ 5. **Suggest** specific changes with before/after examples
347
+ 6. **Prioritize** by expected impact: social proof and loss aversion almost always win
348
+ 7. **Warn** about dark patterns: if a suggestion feels manipulative, flag it and offer an ethical alternative
349
+
350
+ ## Anti-Patterns
351
+
352
+ | Mistake | Why it fails | Instead |
353
+ |---------|-------------|---------|
354
+ | Applying all principles to every asset | Stacking 10 principles on one page creates a manipulative wall of tricks that readers feel viscerally — less is more persuasive | Select 2-4 most relevant using the Application Matrix |
355
+ | Forcing scarcity where none exists | Users share notes about fake urgency on social media — one "fake countdown timer" screenshot can destroy brand trust permanently | Only use scarcity with real constraints. Fake urgency destroys trust |
356
+ | Generic "add social proof" without specifics | "Add social proof" gives the agent nothing to work with — peer testimonials work differently than user counts, and the wrong type falls flat | Specify the TYPE of social proof (peer testimonial, user count, expert endorsement) based on audience |
357
+ | Applying principles without considering brand voice | A corporate brand writing "Don't miss out!!" and a playful brand writing "Enterprise-grade urgency metrics" both sound absurd | A playful brand and a corporate brand apply the same principle very differently |
358
+ | Suggesting dark patterns as psychological techniques | Dark patterns generate short-term conversions but long-term refunds, chargebacks, and reputation damage | Always apply the transparency test: would you be comfortable if the user knew? |
359
+ | Ignoring that the asset might already be effective | Over-optimizing working copy risks breaking what already converts — psychology should enhance, not overhaul | Audit first — if conversion is strong, don't add psychology for the sake of it |
360
+
361
+ ## Ethical Boundaries
362
+
363
+ Use psychology to help people make better decisions, not to trick them:
364
+
365
+ - **Use:** Helping users understand value they're already getting (loss aversion in cancel flow)
366
+ - **Don't use:** Manufacturing fake urgency to pressure purchases
367
+ - **Use:** Social proof showing real users with real results
368
+ - **Don't use:** Fake testimonials or inflated numbers
369
+ - **Use:** Anchoring to help frame fair pricing in context
370
+ - **Don't use:** Hiding fees or making comparison deliberately confusing
371
+ - **Use:** Commitment/consistency to help users follow through on goals they set
372
+ - **Don't use:** Dark patterns that make cancellation impossible
373
+
374
+ The test: Would you be comfortable if the user knew exactly what psychological principle you were applying? If yes, proceed. If no, find another approach.
@@ -0,0 +1,88 @@
1
+ {
2
+ "skill_name": "marketing-psychology",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "How can I use psychology to increase conversions on our pricing page? We sell a B2B SaaS tool with three tiers ($29, $79, $199/month).",
7
+ "expected_output": "Should check for product-marketing-context.md first. Should apply relevant pricing psychology models: anchoring (show the highest plan first or use a decoy), charm pricing (consider $29 vs $30), Rule of 100 (percentage vs dollar discounts), Good-Better-Best framing, loss aversion (show what they miss on lower tiers). Should also apply broader persuasion models: social proof near pricing, scarcity for limited-time offers, default effect (pre-select recommended plan). Should provide specific, actionable recommendations tied to their price points.",
8
+ "assertions": [
9
+ "Checks for product-marketing-context.md",
10
+ "Applies pricing psychology models (anchoring, charm pricing, Rule of 100)",
11
+ "Applies Good-Better-Best framing",
12
+ "Applies loss aversion to tier differentiation",
13
+ "Applies social proof near pricing",
14
+ "Provides specific recommendations for their price points",
15
+ "References specific mental models by name"
16
+ ],
17
+ "files": []
18
+ },
19
+ {
20
+ "id": 2,
21
+ "prompt": "Explain the scarcity principle and how to use it ethically in SaaS marketing without being manipulative.",
22
+ "expected_output": "Should explain scarcity as a mental model (limited availability increases perceived value). Should provide legitimate SaaS applications: limited beta spots, early-bird pricing with real deadlines, limited-time feature access, cohort-based launches. Should distinguish ethical scarcity (real constraints) from manufactured urgency (fake countdown timers, artificial limits). Should provide specific examples and implementation guidance. Should reference related models (urgency, FOMO, loss aversion).",
23
+ "assertions": [
24
+ "Explains scarcity principle clearly",
25
+ "Provides legitimate SaaS applications",
26
+ "Distinguishes ethical from manipulative use",
27
+ "Provides specific examples",
28
+ "References related mental models",
29
+ "Addresses ethical considerations directly"
30
+ ],
31
+ "files": []
32
+ },
33
+ {
34
+ "id": 3,
35
+ "prompt": "what psychological principles should I use to write better marketing copy?",
36
+ "expected_output": "Should trigger on casual phrasing. Should recommend copy-relevant mental models from the skill's taxonomy: social proof, reciprocity, loss aversion, anchoring, scarcity, IKEA Effect, Endowment Effect, Commitment & Consistency. For each principle, should explain what it is and provide a specific copywriting application. Should reference the quick reference table by challenge. Should organize by where in the copy each principle applies (headlines, body, CTAs, testimonials).",
37
+ "assertions": [
38
+ "Triggers on casual phrasing",
39
+ "Recommends copy-relevant mental models",
40
+ "Explains each principle briefly",
41
+ "Provides specific copywriting application per principle",
42
+ "Organizes by where each applies in copy",
43
+ "References multiple model categories"
44
+ ],
45
+ "files": []
46
+ },
47
+ {
48
+ "id": 4,
49
+ "prompt": "I'm designing an onboarding flow and want to use behavioral psychology to increase activation. What models should I apply?",
50
+ "expected_output": "Should apply design and behavioral models from the skill's taxonomy: Goal-Gradient Effect (motivation increases near goal), Hick's Law (reduce choices), IKEA Effect (let users build something), Endowment Effect (let them experience ownership), Zeigarnik Effect (incomplete tasks drive completion), Commitment & Consistency (small asks first). Should explain how each applies to onboarding specifically. Should provide actionable recommendations for each model.",
51
+ "assertions": [
52
+ "Applies Goal-Gradient Effect",
53
+ "Applies Hick's Law",
54
+ "Applies IKEA Effect or Endowment Effect",
55
+ "Applies Zeigarnik Effect or commitment principles",
56
+ "Explains how each applies to onboarding",
57
+ "Provides actionable recommendations per model"
58
+ ],
59
+ "files": []
60
+ },
61
+ {
62
+ "id": 5,
63
+ "prompt": "What's the psychology behind why free trials work better than freemium for some products?",
64
+ "expected_output": "Should apply relevant mental models: loss aversion (trial users fear losing access), endowment effect (they feel ownership after using), sunk cost (time invested during trial), Zero-Price Effect (free removes psychological barrier to start), status quo bias (inertia to keep what they have). Should explain how these models interact in trial vs freemium contexts. Should note when each model works best (trial for products with high activation effort, freemium for products with network effects).",
65
+ "assertions": [
66
+ "Applies loss aversion to trial context",
67
+ "Applies endowment effect",
68
+ "Applies Zero-Price Effect",
69
+ "Explains how models interact in trial vs freemium",
70
+ "Notes when each approach works best",
71
+ "Provides clear, educational explanation"
72
+ ],
73
+ "files": []
74
+ },
75
+ {
76
+ "id": 6,
77
+ "prompt": "Help me run an A/B test on which psychological principle works better for our CTA — scarcity vs social proof.",
78
+ "expected_output": "Should recognize this is an A/B test setup task, not a psychology task. Should defer to or cross-reference the ab-test-setup skill for the experiment design. May provide psychological context on both principles to inform the hypothesis, but should make clear that ab-test-setup is the right skill for designing and running the experiment.",
79
+ "assertions": [
80
+ "Recognizes this as an A/B test setup task",
81
+ "References or defers to ab-test-setup skill",
82
+ "May provide psychological context for hypothesis",
83
+ "Does not attempt full test design using psychology patterns"
84
+ ],
85
+ "files": []
86
+ }
87
+ ]
88
+ }
@@ -0,0 +1,148 @@
1
+ # Psychology Case Studies
2
+
3
+ Real examples of behavioral psychology principles applied to marketing assets. Each case study shows the principle, the context, the implementation, and why it worked.
4
+
5
+ ## Contents
6
+ - Reciprocity: Hubspot's Free Tools Funnel
7
+ - Commitment/Consistency: Duolingo's Streak System
8
+ - Social Proof: Basecamp's Landing Page
9
+ - Authority: Stripe's Documentation-as-Marketing
10
+ - Liking: Mailchimp's Brand Voice
11
+ - Scarcity: Superhuman's Waitlist
12
+ - Loss Aversion: Netflix's Cancel Flow
13
+ - Anchoring: Salesforce's Pricing Page
14
+ - Endowment Effect: Notion's Free Tier
15
+ - Framing: Apple's Storage Pricing
16
+ - Status Quo Bias: Slack's Migration Strategy
17
+
18
+ ---
19
+
20
+ ## Reciprocity: HubSpot's Free Tools Funnel
21
+
22
+ **Context:** HubSpot needed to attract SMB marketers who couldn't afford enterprise marketing software.
23
+
24
+ **Implementation:** Built an entire suite of free tools — Website Grader, Email Signature Generator, Blog Ideas Generator, Invoice Template Generator. Each tool solves a real problem with zero signup required. After delivering value, HubSpot shows: "Want to do more? Here's how HubSpot can help."
25
+
26
+ **Why it worked:** Each free tool creates an obligation loop. The user received genuine value — a website audit, a professional email signature — and now feels psychologically inclined to reciprocate. The paid product feels like a natural next step, not a cold pitch. HubSpot's free tools generate millions of leads annually.
27
+
28
+ **Takeaway for agents:** When building lead magnets or free tools, the free offering must deliver REAL standalone value. A gated PDF that says "buy our product" isn't reciprocity — it's a bait-and-switch.
29
+
30
+ ---
31
+
32
+ ## Commitment/Consistency: Duolingo's Streak System
33
+
34
+ **Context:** Language learning apps have notoriously high churn. Users download, try for a day, and never return.
35
+
36
+ **Implementation:** Duolingo's streak counter tracks consecutive days of practice. After 3 days, the user sees "3-day streak!" After 30, they get a badge. The app sends push notifications: "Your 47-day streak is about to end!" Users who've invested weeks feel compelled to keep going.
37
+
38
+ **Why it worked:** Each completed lesson is a micro-commitment. The streak counter makes the commitment visible and public (shareable). Once a user has a 30-day streak, quitting feels like throwing away 30 days of effort — consistency bias makes continuing feel inevitable. Duolingo's DAU/MAU ratio is among the highest of any app.
39
+
40
+ **Takeaway for agents:** Build visible progress indicators into onboarding flows. Make the user's investment visible to them. The more they've put in, the harder it is to walk away.
41
+
42
+ ---
43
+
44
+ ## Social Proof: Basecamp's Landing Page
45
+
46
+ **Context:** Basecamp competes against free tools (Trello, Asana free tier) and enterprise suites (Monday, Jira). They needed to justify charging a flat $99/month.
47
+
48
+ **Implementation:** Their landing page leads with: "Since 2004, over 75,000 companies have switched to Basecamp." Below the fold, specific testimonials from named companies with job titles and photos. Each testimonial addresses a specific objection: "We tried 6 other tools before Basecamp" (comparison anxiety), "Our team actually uses it" (adoption fear), "Support is incredible" (risk reduction).
49
+
50
+ **Why it worked:** The specific number (75,000) provides statistical social proof. Named testimonials from similar companies (peer social proof) address specific objections. The "switched to" framing implies other tools failed — Basecamp is where you end up.
51
+
52
+ **Takeaway for agents:** Social proof should be specific (numbers, names, results) and address the target audience's actual objections. "Trusted by thousands" is weak. "75,000 companies switched after trying other tools" is strong.
53
+
54
+ ---
55
+
56
+ ## Authority: Stripe's Documentation-as-Marketing
57
+
58
+ **Context:** Stripe needed to convince developers — a notoriously skeptical audience — to trust them with payment processing.
59
+
60
+ **Implementation:** Stripe published the best API documentation in the industry. Their docs became a reference standard. They published engineering blog posts about distributed systems, created open-source tools, and sponsored developer conferences. The message was never "trust us" — it was "here's how we think about these problems."
61
+
62
+ **Why it worked:** Developers don't respond to logos or testimonials. They respond to technical competence. By demonstrating deep engineering expertise publicly, Stripe established authority through proof of capability, not claims. "If their docs are this good, their product probably is too."
63
+
64
+ **Takeaway for agents:** Authority signals must match the audience. For developers: technical depth. For executives: ROI data and case studies. For consumers: media mentions and celebrity endorsements. The wrong authority signal for the wrong audience falls flat.
65
+
66
+ ---
67
+
68
+ ## Liking: Mailchimp's Brand Voice
69
+
70
+ **Context:** Email marketing is a commoditized space. Most platforms look and sound identical. Mailchimp needed to stand out.
71
+
72
+ **Implementation:** Mailchimp adopted a warm, playful, slightly weird brand voice. Their chimp mascot high-fives you after sending a campaign. Error messages are funny. Their voice guide explicitly says: "We're serious about what we do, not about how we say it."
73
+
74
+ **Why it worked:** The liking principle says people buy from brands they enjoy interacting with. Mailchimp's voice made a boring task (email marketing) feel fun. Users genuinely liked using the product, which increased retention and word-of-mouth. The brand became recognizable instantly.
75
+
76
+ **Takeaway for agents:** When applying the liking principle, match the brand's personality. A playful brand can use humor and personality. A professional brand builds liking through competence and reliability. The principle is universal; the execution must be brand-specific.
77
+
78
+ ---
79
+
80
+ ## Scarcity: Superhuman's Waitlist
81
+
82
+ **Context:** Superhuman launched a premium email client at $30/month — 10x more expensive than alternatives (which are mostly free).
83
+
84
+ **Implementation:** Superhuman created an invite-only waitlist. Every new user got a personal 30-minute onboarding call. The waitlist grew to 300,000+. When someone finally got access, they'd been waiting months — the product felt precious.
85
+
86
+ **Why it worked:** The scarcity was REAL — they genuinely couldn't onboard everyone at once due to the personal call requirement. This created legitimate exclusivity that made the $30/month price feel justified. Users who got access felt special and became evangelists. The constraint (1:1 onboarding) also meant every user was properly activated, reducing churn.
87
+
88
+ **Takeaway for agents:** Effective scarcity must be genuine. Superhuman's waitlist worked because the constraint was real (capacity for personal onboarding). A waitlist for a product that can serve unlimited users is immediately transparent and damages trust.
89
+
90
+ ---
91
+
92
+ ## Loss Aversion: Netflix's Cancel Flow
93
+
94
+ **Context:** Netflix needs to reduce voluntary churn while remaining ethical about cancellation (no dark patterns).
95
+
96
+ **Implementation:** When a user clicks "Cancel," Netflix shows: "Your 3 profiles, 847 shows in your list, and personalized recommendations will be lost." It doesn't hide the cancel button — it just makes the cost of leaving viscerally clear. After cancellation, they follow up: "We've kept your profile for 10 months. Come back anytime."
97
+
98
+ **Why it worked:** Loss aversion hits 2x harder than equivalent gains. Seeing "847 shows in your list" makes the user feel the weight of what they've curated. The 10-month retention of profile data reduces the perceived permanence of canceling (endowment effect preservation), making win-back easier.
99
+
100
+ **Takeaway for agents:** In cancel flows, show users what they've BUILT, not what they'll MISS. "You'll lose your data" is abstract. "You have 3 active projects, 47 contacts, and 12 saved reports" is concrete and painful.
101
+
102
+ ---
103
+
104
+ ## Anchoring: Salesforce's Pricing Page
105
+
106
+ **Context:** Salesforce needs to sell $25/user/month licenses to SMBs while also capturing $300/user/month enterprise deals.
107
+
108
+ **Implementation:** Their pricing page shows Enterprise ($300) first, then Professional ($100), then Essentials ($25). The Enterprise price anchors perception so Professional feels reasonable and Essentials feels like a steal. They also anchor against the cost of NOT using CRM: "Sales teams without CRM lose 27% of deals to poor follow-up."
109
+
110
+ **Why it worked:** Double anchoring — the high price tier makes lower tiers feel affordable, and the cost-of-inaction stat makes ALL tiers feel cheap compared to lost revenue. A $25/month tool that prevents even one lost deal per quarter has 10x+ ROI.
111
+
112
+ **Takeaway for agents:** Always control two anchors: (1) the highest price option makes lower ones look reasonable, and (2) the cost of the problem makes your solution look like a bargain. Both anchors should be visible above the fold.
113
+
114
+ ---
115
+
116
+ ## Endowment Effect: Notion's Free Tier
117
+
118
+ **Context:** Notion competes against free incumbents (Google Docs, Apple Notes) and needs to convert free users to $10/month paid.
119
+
120
+ **Implementation:** Notion's free tier lets users create unlimited pages, build wikis, and organize their entire digital life. There's no sandbox — users build REAL workspaces with REAL content. The upgrade trigger is the 1,000 block limit — by the time a user hits it, they've invested days of work into their Notion setup.
121
+
122
+ **Why it worked:** By the time users hit the limit, they own something valuable — a personal knowledge base they built block by block. Switching to another tool means losing all that work. The $10/month feels trivial compared to the value of what they've already created. This is the endowment effect: people overvalue what they already possess.
123
+
124
+ **Takeaway for agents:** Free tiers should let users create real, invested work — not sandboxed demos. The more a user puts in, the more they value what they've built, and the lower the perceived cost of upgrading.
125
+
126
+ ---
127
+
128
+ ## Framing: Apple's Storage Pricing
129
+
130
+ **Context:** Apple sells iCloud storage upgrades — a commodity product (cloud storage) at premium prices.
131
+
132
+ **Implementation:** Apple frames storage tiers as: 5GB (free), 50GB ($0.99), 200GB ($2.99), 2TB ($9.99). The free tier is deliberately too small — your iPhone fills it in weeks. The upgrade prompt frames the cost as monthly, not annually ($0.99/month feels trivial; $11.88/year feels more considered). They also frame it as "your photos, your memories" — not "cloud storage."
133
+
134
+ **Why it worked:** Framing the upgrade as $0.99/month (less than a coffee) makes it feel insignificant. Framing the content as "memories" rather than "files" raises the emotional stakes of NOT upgrading. The tiny free tier creates the problem that the paid tier solves — a manufactured but genuine constraint.
135
+
136
+ **Takeaway for agents:** Frame prices in the smallest unit that feels trivial (per month, per day, per use). Frame the value in the most emotional unit possible (memories, not files; time saved, not features gained).
137
+
138
+ ---
139
+
140
+ ## Status Quo Bias: Slack's Migration Strategy
141
+
142
+ **Context:** Slack needed to displace email — an entrenched behavior everyone already used — for team communication.
143
+
144
+ **Implementation:** Slack didn't ask teams to abandon email. Instead, they said: "Keep using email for external communication. Use Slack for your team." They built email-to-Slack forwarding so nothing was lost. They integrated with every tool teams already used (Google Drive, Trello, GitHub). The message was: "Nothing changes except your team chat gets better."
145
+
146
+ **Why it worked:** Status quo bias means people resist change, even when change is beneficial. By reducing the perceived change ("keep email, just add Slack"), Slack lowered the adoption barrier. Integrations with existing tools meant no workflow disruption. Teams didn't feel like they were switching — they felt like they were adding.
147
+
148
+ **Takeaway for agents:** When displacing competitors, minimize perceived change. Integrations, data import, and "works with what you already use" messaging all leverage status quo bias by making the new thing feel like an extension of current behavior, not a replacement.