@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,1511 @@
1
+ # Social Graphics Mode
2
+ **depends-on: [hook-generator]**
3
+
4
+ Create platform-optimized graphics for social media. Not generic images that happen to be the right size — graphics engineered for each platform's specific algorithm, user behavior, and visual language.
5
+
6
+ **Loaded by:** `creative/SKILL.md` when user selects Social Graphics mode.
7
+ **Model selection:** Handled by `brand/stack.md` — never hardcode model IDs in prompts or workflows.
8
+ **Brand consistency:** Reads from `./brand/creative-kit.md` before every generation.
9
+ **File output:** Saves to `./campaigns/{campaign}/social/{platform}/` for organized delivery.
10
+
11
+ ---
12
+
13
+ ## Why This Mode Exists
14
+
15
+ **The problem:** Every platform has different:
16
+ - Aspect ratios and safe zones
17
+ - Visual languages that perform
18
+ - Algorithm preferences
19
+ - User attention patterns
20
+ - Text overlay requirements
21
+
22
+ Generic "social media graphics" underperform because they ignore these differences.
23
+
24
+ **The solution:** Platform-specific knowledge built into prompt construction, so every graphic is optimized for where it will live. Plus a template system that stores brand layouts for repeatable, on-brand content production at scale.
25
+
26
+ ---
27
+
28
+ ## Model Selection
29
+
30
+ **Do NOT hardcode model IDs.** Always refer to `brand/stack.md` for the current default image model and its verified API payload.
31
+
32
+ Check `brand/stack.md` for the currently configured default image model. The specific model varies per project.
33
+
34
+ ### How to Call
35
+
36
+ 1. Open `brand/stack.md`
37
+ 2. Find the **Image Generation** section
38
+ 3. Copy the verified payload structure
39
+ 4. Insert your constructed prompt and desired aspect ratio
40
+ 5. Execute the API call via your configured generation provider
41
+
42
+ ### Why the configured image model for Social Graphics
43
+
44
+ the configured image model is the single model for all social graphic generation — including text-heavy designs. It handles:
45
+
46
+ - **Typography rendering:** Legible headlines, quote text, CTAs directly in the image
47
+ - **Platform-native aesthetics:** Photorealism, illustration, minimal, bold — all in one model
48
+ - **Aspect ratio control:** Native support for every social platform ratio (1:1, 4:5, 9:16, 16:9, 2:3, etc.)
49
+ - **Speed:** 15-40 seconds per image means rapid iteration and batch generation
50
+
51
+ There is no need to route to a separate typography model. the configured image model handles text rendering natively. See the [Text Rendering Instructions](#text-rendering-instructions) section for how to get clean typography.
52
+
53
+ ---
54
+
55
+ ## Text Rendering Instructions
56
+
57
+ the configured image model has strong native typography capabilities. Use these instructions to get clean, legible text in social graphics.
58
+
59
+ ### Core Text Rendering Principles
60
+
61
+ 1. **Specify text exactly in quotes.** The model renders text most accurately when it appears in quotation marks within the prompt.
62
+ 2. **Keep text short.** 1-6 words render cleanly. Longer passages increase the chance of artifacts.
63
+ 3. **Describe the typography style.** "Bold sans-serif," "elegant serif," "handwritten script" — be explicit.
64
+ 4. **Specify placement.** "Text centered at top," "headline across bottom third," "text overlay left side."
65
+ 5. **Describe contrast.** "White text on dark background," "black text with light backdrop" — the model needs contrast guidance.
66
+
67
+ ### Text Rendering Prompt Formula
68
+
69
+ ```
70
+ [Visual scene/background description],
71
+ text "[EXACT TEXT HERE]" in [typography style] font,
72
+ [text placement] of the frame,
73
+ [text color] on [background contrast],
74
+ [text size relative to frame],
75
+ [platform] graphic, [aspect ratio] composition
76
+ ```
77
+
78
+ ### Examples by Use Case
79
+
80
+ **Quote Card:**
81
+ ```
82
+ Elegant minimalist background with soft gradient from navy to midnight blue,
83
+ text "The best time to start is now" in bold modern sans-serif font,
84
+ centered in the frame with generous padding,
85
+ white text on dark background, large prominent lettering,
86
+ Instagram feed graphic, 1:1 square composition
87
+ ```
88
+
89
+ **Announcement Graphic:**
90
+ ```
91
+ Vibrant celebration background with confetti and bold colors,
92
+ text "NOW LIVE" in heavy condensed sans-serif font,
93
+ centered top third of the frame,
94
+ white text with subtle shadow for contrast,
95
+ large impactful lettering, excitement energy,
96
+ Instagram Stories graphic, 9:16 vertical composition
97
+ ```
98
+
99
+ **YouTube Thumbnail Text:**
100
+ ```
101
+ [Scene description with subject],
102
+ text "GAME CHANGER" in bold impact-style font,
103
+ positioned on the left third of the frame,
104
+ yellow text with black outline for maximum readability,
105
+ large enough to read at small thumbnail size,
106
+ YouTube thumbnail, 16:9 landscape composition
107
+ ```
108
+
109
+ **CTA Banner:**
110
+ ```
111
+ Clean professional background with brand-appropriate colors,
112
+ text "Get Started Free" in clean modern sans-serif font,
113
+ centered in the lower third of the frame,
114
+ high contrast text on solid color block,
115
+ button-like presentation, clear and inviting,
116
+ LinkedIn graphic, 1.91:1 landscape composition
117
+ ```
118
+
119
+ ### Typography Style Reference
120
+
121
+ | Style | Prompt Language | Best For |
122
+ |-------|----------------|----------|
123
+ | Bold Sans-Serif | "bold modern sans-serif font, clean geometric letterforms" | Headlines, announcements, CTAs |
124
+ | Elegant Serif | "elegant serif font, sophisticated classic letterforms" | Quotes, luxury brands, editorial |
125
+ | Handwritten Script | "flowing handwritten script font, personal authentic feel" | Personal brands, lifestyle, invitations |
126
+ | Condensed Impact | "heavy condensed impact-style font, compressed bold letters" | YouTube thumbnails, urgency, sales |
127
+ | Minimal Clean | "thin light sans-serif font, minimal clean typography" | Luxury, tech, sophistication |
128
+ | Playful Rounded | "playful rounded font, friendly approachable letterforms" | Kids, casual brands, fun content |
129
+
130
+ ### Text Rendering Quality Checklist
131
+
132
+ - [ ] Text specified in quotation marks in the prompt
133
+ - [ ] 6 words or fewer per text element
134
+ - [ ] Typography style explicitly described
135
+ - [ ] Placement specified (top/center/bottom, left/center/right)
136
+ - [ ] Contrast described (light on dark or dark on light)
137
+ - [ ] Size context given (large, prominent, readable at small size)
138
+
139
+ ### When Text Quality Is Critical
140
+
141
+ For critical text rendering (legal text, exact brand slogans, phone numbers), generate the image as a background and composite text in post-production. AI text rendering is strong but not pixel-perfect for every character.
142
+
143
+ **Fallback workflow:**
144
+ ```
145
+ 1. Generate the graphic without text (describe "clean space for text overlay")
146
+ 2. Use a design tool to add exact text in post
147
+ 3. This guarantees 100% text accuracy at the cost of an extra step
148
+ ```
149
+
150
+ For most social media use cases, the configured image model's native text rendering is more than sufficient. The fallback is only needed when every character must be letter-perfect.
151
+
152
+ ---
153
+
154
+ ## Platform Specifications
155
+
156
+ ### Instagram
157
+
158
+ | Placement | Ratio | Pixels | Safe Zone |
159
+ |-----------|-------|--------|-----------|
160
+ | Feed (Square) | 1:1 | 1080x1080 | Full frame |
161
+ | Feed (Portrait) | 4:5 | 1080x1350 | Best engagement |
162
+ | Stories | 9:16 | 1080x1920 | Avoid top 250px, bottom 200px |
163
+ | Reels Cover | 9:16 | 1080x1920 | Center content |
164
+ | Carousel | 1:1 or 4:5 | 1080x1080/1350 | Consistent across slides |
165
+
166
+ **Instagram Visual Language:**
167
+ - Bold, vibrant colors
168
+ - High contrast
169
+ - Clean compositions
170
+ - Scroll-stopping first frame
171
+ - Text minimal (algorithm prefers)
172
+
173
+ ---
174
+
175
+ ### YouTube
176
+
177
+ | Placement | Ratio | Pixels | Safe Zone |
178
+ |-----------|-------|--------|-----------|
179
+ | Thumbnail | 16:9 | 1280x720 | Right 1/3 for timestamp overlay |
180
+ | Channel Banner | 16:9 | 2560x1440 | Safe area: 1546x423 center |
181
+ | Community Post | 1:1 | 1080x1080 | Full frame |
182
+
183
+ **YouTube Thumbnail Formula:**
184
+ ```
185
+ FACE + EMOTION + BRIGHT COLOR + CONTRAST + TEXT SPACE
186
+ ```
187
+
188
+ Thumbnails compete against dozens of others. Survival requires:
189
+ - Human face with exaggerated expression (if relevant)
190
+ - 3 or fewer colors, extremely bold
191
+ - Text readable at phone size
192
+ - Contrast that pops in sidebar
193
+
194
+ ---
195
+
196
+ ### LinkedIn
197
+
198
+ | Placement | Ratio | Pixels | Safe Zone |
199
+ |-----------|-------|--------|-----------|
200
+ | Feed Post | 1.91:1 | 1200x627 | Full frame |
201
+ | Article Header | 1.91:1 | 1200x627 | Full frame |
202
+ | Profile Banner | 4:1 | 1584x396 | Center focal point |
203
+ | Square Post | 1:1 | 1080x1080 | Works well too |
204
+
205
+ **LinkedIn Visual Language:**
206
+ - Professional but not boring
207
+ - Clean, sophisticated aesthetics
208
+ - Thought leadership positioning
209
+ - Data visualization performs well
210
+ - Avoid overly casual/meme-y
211
+
212
+ ---
213
+
214
+ ### Twitter/X
215
+
216
+ | Placement | Ratio | Pixels | Safe Zone |
217
+ |-----------|-------|--------|-----------|
218
+ | Feed Image | 16:9 | 1200x675 | Optimal |
219
+ | Feed Image | 1.91:1 | 1200x628 | Also works |
220
+ | Feed Image | 1:1 | 1080x1080 | Square option |
221
+ | Header | 3:1 | 1500x500 | Safe area centered |
222
+
223
+ **Twitter Visual Language:**
224
+ - High contrast (dark mode dominant)
225
+ - Bold, shareable visuals
226
+ - Meme-adjacent aesthetics OK
227
+ - Hot takes benefit from visual punch
228
+ - Screenshots of text perform well
229
+
230
+ ---
231
+
232
+ ### TikTok
233
+
234
+ | Placement | Ratio | Pixels | Safe Zone |
235
+ |-----------|-------|--------|-----------|
236
+ | Video Cover | 9:16 | 1080x1920 | Avoid bottom 150px (UI) |
237
+ | Profile | 1:1 | 200x200 | Keep simple |
238
+
239
+ **TikTok Visual Language:**
240
+ - Native, not polished
241
+ - "Shot on phone" aesthetic often wins
242
+ - Bold text overlays
243
+ - Faces perform
244
+ - Trend-aware styling
245
+
246
+ ---
247
+
248
+ ### Pinterest
249
+
250
+ | Placement | Ratio | Pixels | Safe Zone |
251
+ |-----------|-------|--------|-----------|
252
+ | Standard Pin | 2:3 | 1000x1500 | Optimal |
253
+ | Long Pin | 1:2.1 | 1000x2100 | More real estate |
254
+ | Square Pin | 1:1 | 1000x1000 | Works but less optimal |
255
+
256
+ **Pinterest Visual Language:**
257
+ - Aspirational aesthetic
258
+ - Warm, inviting tones
259
+ - Clear text overlay (Pinterest users read)
260
+ - Step-by-step works well
261
+ - Lifestyle context
262
+
263
+ ---
264
+
265
+ ### Facebook
266
+
267
+ | Placement | Ratio | Pixels | Safe Zone |
268
+ |-----------|-------|--------|-----------|
269
+ | Feed Post | 1.91:1 | 1200x630 | Standard |
270
+ | Square Post | 1:1 | 1080x1080 | Also works |
271
+ | Story | 9:16 | 1080x1920 | Same as Instagram |
272
+ | Cover Photo | 16:9 | 820x312 (desktop display) | Safe area center |
273
+
274
+ **Facebook Visual Language:**
275
+ - Broader demographic appeal
276
+ - Less edgy than Twitter
277
+ - Community/family vibes
278
+ - Video thumbnails important
279
+ - Event graphics common
280
+
281
+ ---
282
+
283
+ ## Platform-Specific Prompt Templates
284
+
285
+ ### Instagram Feed (4:5 Portrait)
286
+
287
+ ```
288
+ [Subject] for Instagram feed, bold vibrant colors,
289
+ clean minimal composition, scroll-stopping visual impact,
290
+ high contrast, lifestyle aesthetic, modern photography style,
291
+ portrait 4:5 composition, subject centered with breathing room,
292
+ professional quality, engaging immediate appeal
293
+ ```
294
+
295
+ **What makes it work:**
296
+ - "Bold vibrant colors" — Algorithm favors engagement
297
+ - "Scroll-stopping" — Primes for thumb-pausing moment
298
+ - "4:5 composition" — Optimal feed real estate
299
+ - "Breathing room" — Space for engagement UI elements
300
+
301
+ ---
302
+
303
+ ### Instagram Stories (9:16)
304
+
305
+ ```
306
+ [Subject] for Instagram Stories, vertical 9:16 composition,
307
+ subject centered in middle third (avoiding top and bottom),
308
+ bold engaging visual, bright colors, clean composition,
309
+ space for text overlay or sticker placement,
310
+ story-native aesthetic, immediate visual impact
311
+ ```
312
+
313
+ **What makes it work:**
314
+ - "Middle third" — Avoids UI overlay zones
315
+ - "Space for text/sticker" — Interactive element room
316
+ - "Story-native" — Matches platform expectation
317
+
318
+ ---
319
+
320
+ ### YouTube Thumbnail
321
+
322
+ ```
323
+ YouTube thumbnail style, [subject/person] with [emotion] expression,
324
+ high contrast dramatic lighting, bold vibrant colors,
325
+ clean background for text overlay on [left/right] side,
326
+ click-worthy composition, face prominent in frame,
327
+ professional thumbnail aesthetic, extreme visual clarity
328
+ ```
329
+
330
+ **Emotion Modifiers:**
331
+ | Emotion | Prompt Addition |
332
+ |---------|-----------------|
333
+ | Surprise | "shocked expression, wide eyes, raised eyebrows, open mouth" |
334
+ | Excitement | "excited expression, big genuine smile, enthusiastic energy" |
335
+ | Curiosity | "intrigued expression, raised eyebrow, knowing look" |
336
+ | Confidence | "confident expression, slight smirk, assured posture" |
337
+ | Concern | "concerned expression, worried face, serious" |
338
+
339
+ **Color Psychology for Thumbnails:**
340
+ | Color | Best For | Why |
341
+ |-------|----------|-----|
342
+ | Yellow | Most click-worthy | Highest attention in sidebar |
343
+ | Red | Urgency, drama | Hot takes, breaking news |
344
+ | Blue | Tech, education | Trust, authority |
345
+ | Green | Money, success | Finance, growth |
346
+ | Orange | Entertainment | Warm, inviting |
347
+ | Purple | Creative, unique | Stands out from typical |
348
+
349
+ ---
350
+
351
+ ### LinkedIn Professional
352
+
353
+ ```
354
+ Professional LinkedIn graphic, [subject/concept],
355
+ clean sophisticated aesthetic, corporate-appropriate colors,
356
+ thought leadership positioning, business context,
357
+ modern professional photography style, confident tone,
358
+ 1.91:1 landscape composition, space for headline overlay,
359
+ high-end professional quality
360
+ ```
361
+
362
+ **LinkedIn Variations:**
363
+ - **Data/Insight:** Add "data visualization style, clean infographic aesthetic"
364
+ - **Personal Brand:** Add "executive portrait style, approachable authority"
365
+ - **Company:** Add "brand-aligned color palette, corporate identity"
366
+
367
+ ---
368
+
369
+ ### Twitter/X Post
370
+
371
+ ```
372
+ Twitter-optimized graphic, [subject], high contrast for dark mode,
373
+ bold simple composition, shareable visual impact,
374
+ 16:9 landscape, punchy immediate appeal,
375
+ conversation-starter aesthetic, timeline scroll-stopping,
376
+ clean professional quality with edge
377
+ ```
378
+
379
+ **Twitter Variations:**
380
+ - **Hot Take:** Add "provocative visual tension, bold statement energy"
381
+ - **Thread Intro:** Add "curiosity-inducing, incomplete story visual"
382
+ - **Data/Stat:** Add "stark data visualization, number prominent"
383
+
384
+ ---
385
+
386
+ ### Pinterest Pin
387
+
388
+ ```
389
+ Pinterest pin style, [subject] in aspirational setting,
390
+ vertical 2:3 composition, rich warm aesthetic,
391
+ inspirational lifestyle photography, save-worthy visual,
392
+ clear space at top for text overlay, beautiful staging,
393
+ high-quality editorial feel, dreamy aspirational mood
394
+ ```
395
+
396
+ **Pinterest Performs Best With:**
397
+ - Step-by-step previews
398
+ - Before/after concepts
399
+ - Lifestyle aspiration
400
+ - How-to previews
401
+ - Collection/roundup style
402
+
403
+ ---
404
+
405
+ ### TikTok Cover
406
+
407
+ ```
408
+ TikTok cover image, [subject/scene], vertical 9:16,
409
+ native authentic aesthetic (not over-produced),
410
+ bold engaging composition, face-forward if person,
411
+ content centered above bottom navigation area,
412
+ trend-aware styling, scroll-stopping thumbnail,
413
+ high contrast, clear at small size
414
+ ```
415
+
416
+ ---
417
+
418
+ ## Content Type Templates
419
+
420
+ ### Quote Graphics
421
+
422
+ the configured image model handles text rendering directly. Use the text rendering instructions from the [Text Rendering Instructions](#text-rendering-instructions) section.
423
+
424
+ ```
425
+ Minimalist quote graphic for [platform],
426
+ text "[QUOTE TEXT]" in [typography style] font,
427
+ clean background, [color palette],
428
+ text centered in frame with generous padding,
429
+ sophisticated aesthetic, modern design,
430
+ [aspect ratio for platform]
431
+ ```
432
+
433
+ **For quotes longer than 6 words:** Split into multiple lines in the prompt, or generate the background and composite text in post-production.
434
+
435
+ ---
436
+
437
+ ### Product Announcement
438
+
439
+ ```
440
+ Product announcement graphic for [platform],
441
+ [product] hero shot, celebration/launch energy,
442
+ bold attention-grabbing composition, premium aesthetic,
443
+ space for headline and details, excitement visual,
444
+ [platform-specific aspect ratio], commercial quality
445
+ ```
446
+
447
+ ---
448
+
449
+ ### Event Promotion
450
+
451
+ ```
452
+ Event promotion graphic for [platform], [event type] theme,
453
+ engaging inviting composition, date/time visual priority,
454
+ exciting anticipation mood, bold readable design,
455
+ [platform aspect ratio], event marketing aesthetic
456
+ ```
457
+
458
+ ---
459
+
460
+ ### Behind-the-Scenes
461
+
462
+ ```
463
+ Behind-the-scenes content for [platform],
464
+ authentic candid aesthetic, real moment capture,
465
+ [subject/scene], genuine unpolished feel,
466
+ personality-forward composition, relatable vibe,
467
+ [platform aspect ratio], native platform aesthetic
468
+ ```
469
+
470
+ ---
471
+
472
+ ### Testimonial/Social Proof
473
+
474
+ ```
475
+ Testimonial graphic for [platform], clean professional design,
476
+ space for quote text, trustworthy aesthetic,
477
+ person placeholder or abstract human element,
478
+ credibility-building composition, [brand colors],
479
+ [platform aspect ratio]
480
+ ```
481
+
482
+ ---
483
+
484
+ ## Style Exploration (Before Execution)
485
+
486
+ **Critical insight:** Don't lock into one style early. Generate multiple genuinely DIFFERENT visual directions first.
487
+
488
+ ### Why This Matters for Social Graphics
489
+
490
+ Social graphics live in noisy feeds. The "right" style isn't obvious — it depends on:
491
+ - Platform visual language
492
+ - Audience expectations
493
+ - Competitive landscape
494
+ - Brand positioning
495
+
496
+ **One style = hope. Multiple styles = informed choice.**
497
+
498
+ ### The Style Exploration Process
499
+
500
+ ```
501
+ 1. GENERATE 4-5 DIFFERENT STYLES
502
+ -> Not variations of one style
503
+ -> Genuinely different visual languages
504
+ -> Same subject, different aesthetic approaches
505
+
506
+ 2. IDENTIFY WINNER
507
+ -> Which stops the scroll?
508
+ -> Which matches platform vibe?
509
+ -> Which feels most "brand"?
510
+
511
+ 3. EXTRACT PRINCIPLES
512
+ -> What makes this style work?
513
+ -> Color palette?
514
+ -> Composition approach?
515
+ -> Lighting mood?
516
+
517
+ 4. APPLY TO FORMATS
518
+ -> Same principles, different platforms
519
+ -> Build content SYSTEM
520
+ -> Repeatable, not one-off
521
+ ```
522
+
523
+ ### Style Exploration Prompt Template
524
+
525
+ For any new social graphics project, generate these 5 directions:
526
+
527
+ ```
528
+ Style 1 - Clean Minimal:
529
+ [Subject] for [platform], clean minimal aesthetic, white space,
530
+ single focal point, modern typography space, sophisticated restraint
531
+
532
+ Style 2 - Bold Vibrant:
533
+ [Subject] for [platform], bold vibrant colors, high contrast,
534
+ dynamic composition, energetic attention-grabbing
535
+
536
+ Style 3 - Warm Lifestyle:
537
+ [Subject] for [platform], warm lifestyle aesthetic, natural tones,
538
+ authentic feeling, relatable human-centered
539
+
540
+ Style 4 - Dark & Premium:
541
+ [Subject] for [platform], dark moody aesthetic, premium feel,
542
+ sophisticated lighting, luxury positioning
543
+
544
+ Style 5 - Playful Creative:
545
+ [Subject] for [platform], playful creative aesthetic, unexpected angles,
546
+ personality-forward, memorable differentiation
547
+ ```
548
+
549
+ ### Style Decision Framework
550
+
551
+ After generating options:
552
+
553
+ | Question | Guides Toward |
554
+ |----------|---------------|
555
+ | Does brand feel established/premium? | Dark & Premium or Clean Minimal |
556
+ | Is brand approachable/friendly? | Warm Lifestyle or Playful Creative |
557
+ | Competing against boring competitors? | Bold Vibrant or Playful Creative |
558
+ | Professional B2B context? | Clean Minimal or Dark & Premium |
559
+ | Consumer/lifestyle product? | Warm Lifestyle or Bold Vibrant |
560
+
561
+ ### Extract Principles Template
562
+
563
+ Once winner is identified, document:
564
+
565
+ ```markdown
566
+ ## Winning Style: [Name]
567
+
568
+ **What makes it work:**
569
+ - Color palette: [specific colors]
570
+ - Composition: [approach]
571
+ - Lighting: [mood/direction]
572
+ - Typography space: [how handled]
573
+ - Mood: [feeling it creates]
574
+
575
+ **Apply to other platforms:**
576
+ - Instagram Feed: [how to adapt]
577
+ - LinkedIn: [how to adapt]
578
+ - Twitter: [how to adapt]
579
+ - etc.
580
+ ```
581
+
582
+ This creates a repeatable SYSTEM, not just one graphic.
583
+
584
+ ---
585
+
586
+ ## Template System
587
+
588
+ The template system stores brand layouts in `./brand/creative-kit.md` so every graphic stays on-brand without re-specifying visual identity each time.
589
+
590
+ ### How Templates Work
591
+
592
+ 1. **First generation:** Explore styles, pick a winner, extract principles
593
+ 2. **Save template:** Store the winning style as a named template in `creative-kit.md`
594
+ 3. **Reuse:** All future graphics reference the template for instant brand consistency
595
+ 4. **Evolve:** Update the template when brand evolves — all future content follows
596
+
597
+ ### Template Schema
598
+
599
+ Store templates in the `## Social Graphics Templates` section of `./brand/creative-kit.md`:
600
+
601
+ ```markdown
602
+ ## Social Graphics Templates
603
+
604
+ ### Template: [template-name]
605
+
606
+ **Created:** [date]
607
+ **Style Family:** [Clean Minimal / Bold Vibrant / Warm Lifestyle / Dark Premium / Playful Creative]
608
+
609
+ **Visual Identity:**
610
+ - Primary colors: [hex codes or descriptions]
611
+ - Secondary colors: [hex codes or descriptions]
612
+ - Background style: [gradient/solid/textured/photographic]
613
+ - Mood: [one-line description]
614
+
615
+ **Typography:**
616
+ - Headline font style: [bold sans-serif / elegant serif / etc.]
617
+ - Body font style: [clean sans-serif / etc.]
618
+ - Text color: [color on what background]
619
+ - Text placement: [top/center/bottom preference]
620
+
621
+ **Composition Rules:**
622
+ - Subject placement: [centered / rule of thirds / left-weighted / etc.]
623
+ - Negative space: [generous / tight / balanced]
624
+ - Visual hierarchy: [what draws eye first, second, third]
625
+
626
+ **Platform Adaptations:**
627
+ - Instagram Feed: [specific notes]
628
+ - Instagram Stories: [specific notes]
629
+ - LinkedIn: [specific notes]
630
+ - Twitter: [specific notes]
631
+ - YouTube Thumbnail: [specific notes]
632
+
633
+ **Prompt Prefix:**
634
+ [The standard prompt fragment to prepend to all generations using this template]
635
+
636
+ **Prompt Suffix:**
637
+ [The standard prompt fragment to append to all generations using this template]
638
+ ```
639
+
640
+ ### Using a Template
641
+
642
+ When generating with a saved template:
643
+
644
+ ```
645
+ 1. Read ./brand/creative-kit.md
646
+ 2. Find the matching template by name
647
+ 3. Construct the prompt:
648
+ [template prompt prefix] + [specific content for this graphic] + [template prompt suffix]
649
+ 4. Apply the platform-specific aspect ratio
650
+ 5. Generate via MODEL_REGISTRY.md payload
651
+ 6. Review against template's composition rules
652
+ ```
653
+
654
+ ### Template Examples
655
+
656
+ **Example: SaaS Brand "TechForward"**
657
+ ```markdown
658
+ ### Template: techforward-social
659
+
660
+ **Created:** 2026-02-16
661
+ **Style Family:** Clean Minimal
662
+
663
+ **Visual Identity:**
664
+ - Primary colors: electric blue (#0066FF), white (#FFFFFF)
665
+ - Secondary colors: slate gray (#64748B), light gray (#F1F5F9)
666
+ - Background style: clean gradient from white to light gray
667
+ - Mood: confident, modern, trustworthy
668
+
669
+ **Typography:**
670
+ - Headline font style: bold clean sans-serif, geometric letterforms
671
+ - Body font style: light sans-serif
672
+ - Text color: electric blue or white depending on background
673
+ - Text placement: centered or left-aligned
674
+
675
+ **Composition Rules:**
676
+ - Subject placement: centered with generous padding
677
+ - Negative space: generous — let the content breathe
678
+ - Visual hierarchy: headline > visual element > supporting detail
679
+
680
+ **Prompt Prefix:**
681
+ "Clean modern tech aesthetic, electric blue and white color scheme, sophisticated minimal design, professional SaaS brand feel,"
682
+
683
+ **Prompt Suffix:**
684
+ "high-end professional quality, modern technology brand, clean white space, confident authoritative tone"
685
+ ```
686
+
687
+ **Example: Lifestyle Brand "Glow Naturals"**
688
+ ```markdown
689
+ ### Template: glow-naturals-social
690
+
691
+ **Created:** 2026-02-16
692
+ **Style Family:** Warm Lifestyle
693
+
694
+ **Visual Identity:**
695
+ - Primary colors: warm terracotta (#C67A4B), cream (#FFF8F0)
696
+ - Secondary colors: sage green (#8FAE7E), soft gold (#D4A574)
697
+ - Background style: warm natural textures, soft light
698
+ - Mood: warm, authentic, nurturing, natural
699
+
700
+ **Typography:**
701
+ - Headline font style: elegant serif with organic feel
702
+ - Body font style: clean rounded sans-serif
703
+ - Text color: terracotta or cream depending on background
704
+ - Text placement: centered or overlaid on negative space in photos
705
+
706
+ **Composition Rules:**
707
+ - Subject placement: slightly off-center, lifestyle context
708
+ - Negative space: balanced — not cluttered but not empty
709
+ - Visual hierarchy: hero image > headline > product detail
710
+
711
+ **Prompt Prefix:**
712
+ "Warm natural lifestyle aesthetic, terracotta and cream tones, organic authentic feel, soft golden hour lighting,"
713
+
714
+ **Prompt Suffix:**
715
+ "beautiful natural styling, warm inviting mood, lifestyle editorial quality, aspirational but approachable"
716
+ ```
717
+
718
+ ---
719
+
720
+ ## Content Calendar Mode
721
+
722
+ Generate a full week (or more) of on-brand social graphics in a single session. Each graphic gets a unique concept while maintaining brand consistency through the template system.
723
+
724
+ ### How Content Calendar Mode Works
725
+
726
+ ```
727
+ 1. USER PROVIDES:
728
+ - Brand/template name (must exist in creative-kit.md)
729
+ - Platform(s) to target
730
+ - Number of posts (e.g., "7 days of Instagram content")
731
+ - Content themes or pillars (optional but recommended)
732
+ - Campaign name for file organization
733
+
734
+ 2. ENGINE GENERATES:
735
+ - One graphic per day/slot with unique concept
736
+ - Matching captions with hashtags
737
+ - Consistent visual identity across all posts
738
+ - Platform-optimized for each target
739
+ - Organized file output
740
+
741
+ 3. OUTPUT:
742
+ - Images saved to ./campaigns/{campaign}/social/{platform}/
743
+ - Calendar summary with dates, concepts, captions
744
+ - All graphics reference the same template for brand consistency
745
+ ```
746
+
747
+ ### Content Pillar System
748
+
749
+ Organize posts around content pillars to ensure variety:
750
+
751
+ | Pillar | Purpose | Example |
752
+ |--------|---------|---------|
753
+ | **Educate** | Teach something useful | Tips, how-tos, explainers |
754
+ | **Inspire** | Motivate or uplift | Quotes, success stories, vision |
755
+ | **Engage** | Start conversations | Questions, polls, hot takes |
756
+ | **Promote** | Drive action | Product features, offers, CTAs |
757
+ | **Entertain** | Build affinity | Behind-scenes, humor, trends |
758
+ | **Connect** | Build community | User stories, team spotlights, values |
759
+
760
+ ### Weekly Calendar Template (7 posts)
761
+
762
+ ```
763
+ Monday - Educate | "Tip of the week" or how-to
764
+ Tuesday - Inspire | Quote or success story
765
+ Wednesday - Engage | Question or conversation starter
766
+ Thursday - Promote | Product feature or offer
767
+ Friday - Entertain | Behind-the-scenes or fun content
768
+ Saturday - Connect | Community spotlight or values
769
+ Sunday - Inspire | Motivational or reflective
770
+ ```
771
+
772
+ ### Content Calendar Execution
773
+
774
+ For each post in the calendar:
775
+
776
+ ```
777
+ Step 1: Load template from creative-kit.md
778
+ Step 2: Select content pillar for this slot
779
+ Step 3: Generate concept (subject + message)
780
+ Step 4: Construct prompt:
781
+ [template prefix] + [platform template] + [specific concept] + [template suffix]
782
+ Step 5: Set aspect ratio for target platform
783
+ Step 6: Generate image via MODEL_REGISTRY.md
784
+ Step 7: Write caption with hashtags
785
+ Step 8: Save to ./campaigns/{campaign}/social/{platform}/day-{N}-{pillar}.png
786
+ Step 9: Log to calendar summary
787
+ ```
788
+
789
+ ### Calendar Output Format
790
+
791
+ After generating all posts, produce a calendar summary:
792
+
793
+ ```markdown
794
+ ## Content Calendar: {campaign}
795
+
796
+ **Brand:** {brand/template name}
797
+ **Platform:** {platform}
798
+ **Period:** {start date} - {end date}
799
+ **Template Used:** {template name from creative-kit.md}
800
+
801
+ ### Day 1 — Monday — Educate
802
+ **Concept:** [description]
803
+ **Image:** ./campaigns/{campaign}/social/{platform}/day-1-educate.png
804
+ **Caption:**
805
+ > [Caption text with hashtags]
806
+
807
+ **Image URL:** [generation URL]
808
+
809
+ ---
810
+
811
+ ### Day 2 — Tuesday — Inspire
812
+ **Concept:** [description]
813
+ **Image:** ./campaigns/{campaign}/social/{platform}/day-2-inspire.png
814
+ **Caption:**
815
+ > [Caption text with hashtags]
816
+
817
+ **Image URL:** [generation URL]
818
+
819
+ ---
820
+
821
+ [... repeat for each day ...]
822
+ ```
823
+
824
+ ### Multi-Platform Calendar
825
+
826
+ When generating for multiple platforms simultaneously:
827
+
828
+ ```
829
+ ./campaigns/{campaign}/social/
830
+ ├── instagram/
831
+ │ ├── day-1-educate.png (4:5)
832
+ │ ├── day-2-inspire.png (4:5)
833
+ │ ├── ...
834
+ │ └── day-7-inspire.png (4:5)
835
+ ├── linkedin/
836
+ │ ├── day-1-educate.png (1.91:1)
837
+ │ ├── day-2-inspire.png (1.91:1)
838
+ │ ├── ...
839
+ │ └── day-7-inspire.png (1.91:1)
840
+ ├── twitter/
841
+ │ ├── day-1-educate.png (16:9)
842
+ │ ├── ...
843
+ │ └── day-7-inspire.png (16:9)
844
+ └── calendar-summary.md
845
+ ```
846
+
847
+ Each platform variant uses the same concept but adapts composition and aspect ratio. The template's platform adaptation notes guide the differences.
848
+
849
+ ---
850
+
851
+ ## Per-Platform Auto-Adaptation
852
+
853
+ When a graphic needs to exist across multiple platforms, automatically adapt it rather than requiring manual re-prompting for each.
854
+
855
+ ### Auto-Adaptation Workflow
856
+
857
+ ```
858
+ 1. Generate PRIMARY graphic (user's specified platform or highest-priority)
859
+ 2. Extract the core concept and visual approach from the prompt
860
+ 3. For each additional platform:
861
+ a. Look up platform specs (ratio, safe zones, visual language)
862
+ b. Modify the prompt for platform-specific requirements
863
+ c. Apply platform-specific aspect ratio
864
+ d. Generate the adapted variant
865
+ e. Save to platform-specific directory
866
+ 4. Present all variants for review
867
+ ```
868
+
869
+ ### Platform Adaptation Rules
870
+
871
+ | From | To | Adaptation |
872
+ |------|----|------------|
873
+ | Instagram Feed (4:5) | Stories (9:16) | Recenter subject in middle third, add vertical breathing room |
874
+ | Instagram Feed (4:5) | LinkedIn (1.91:1) | Widen composition, add professional tone language, shift to landscape |
875
+ | Instagram Feed (4:5) | Twitter (16:9) | Widen to landscape, increase contrast for dark mode, add edge/punch |
876
+ | Instagram Feed (4:5) | Pinterest (2:3) | Extend vertical, add text overlay space at top, warm aspirational tone |
877
+ | Instagram Feed (4:5) | Facebook (1.91:1) | Similar to LinkedIn but broader demographic appeal language |
878
+ | YouTube Thumbnail (16:9) | Twitter (16:9) | Can often use as-is (both 16:9), reduce click-bait energy if needed |
879
+ | LinkedIn (1.91:1) | Facebook (1.91:1) | Minimal change (similar ratios), soften corporate tone slightly |
880
+ | Pinterest (2:3) | Instagram Feed (4:5) | Crop or reimagine for square-ish format, maintain warm tones |
881
+ | Any format | Stories/TikTok (9:16) | Full vertical recomposition needed — cannot simply crop |
882
+
883
+ ### Prompt Adaptation Modifiers
884
+
885
+ When adapting a prompt from one platform to another, apply these modifiers:
886
+
887
+ **To Instagram:**
888
+ ```
889
+ Add: "bold vibrant colors, clean composition, scroll-stopping, lifestyle aesthetic"
890
+ Ratio: 4:5 (feed) or 9:16 (stories)
891
+ ```
892
+
893
+ **To LinkedIn:**
894
+ ```
895
+ Add: "professional sophisticated aesthetic, corporate-appropriate, thought leadership"
896
+ Remove: any casual/meme/trendy language
897
+ Ratio: 1.91:1
898
+ ```
899
+
900
+ **To Twitter/X:**
901
+ ```
902
+ Add: "high contrast for dark mode, bold shareable, punchy immediate appeal"
903
+ Ratio: 16:9
904
+ ```
905
+
906
+ **To Pinterest:**
907
+ ```
908
+ Add: "aspirational lifestyle, warm inviting, save-worthy, editorial quality"
909
+ Ratio: 2:3
910
+ ```
911
+
912
+ **To TikTok:**
913
+ ```
914
+ Add: "native authentic aesthetic, not over-produced, trend-aware"
915
+ Remove: any overly polished/corporate language
916
+ Ratio: 9:16
917
+ ```
918
+
919
+ **To Facebook:**
920
+ ```
921
+ Add: "broad demographic appeal, community-friendly, engaging"
922
+ Ratio: 1.91:1
923
+ ```
924
+
925
+ ### Auto-Adaptation API Pattern
926
+
927
+ For each adapted platform, construct and execute a separate API call:
928
+
929
+ ```json
930
+ {
931
+ "model": "[see MODEL_REGISTRY.md]",
932
+ "input": {
933
+ "prompt": "{{adapted_prompt_with_platform_modifiers}}",
934
+ "aspect_ratio": "{{platform_ratio}}",
935
+ "output_format": "png",
936
+ "output_quality": 90,
937
+ "number_of_images": 1
938
+ }
939
+ }
940
+ ```
941
+
942
+ Generate all platform variants in parallel when possible to minimize total wait time.
943
+
944
+ ---
945
+
946
+ ## Execution Workflow
947
+
948
+ ### Step 1: Read Brand Context
949
+
950
+ ```
951
+ □ Check ./brand/creative-kit.md for existing templates
952
+ □ If template exists, load it
953
+ □ If no template, proceed with style exploration first
954
+ ```
955
+
956
+ ### Step 2: Platform Requirements
957
+
958
+ ```
959
+ □ Which platform(s)?
960
+ □ Which placement? (feed/stories/cover/etc.)
961
+ □ Aspect ratio confirmed?
962
+ □ Safe zones understood?
963
+ □ Multi-platform needed?
964
+ ```
965
+
966
+ ### Step 3: Content Type
967
+
968
+ ```
969
+ □ What type of content? (announcement/quote/product/etc.)
970
+ □ Text overlay needed? (use Text Rendering Instructions)
971
+ □ Brand colors required?
972
+ □ Specific elements must include?
973
+ ```
974
+
975
+ ### Step 4: Construct Platform-Optimized Prompt
976
+
977
+ Use templates above, customize for specific need. If using a saved template, prepend prefix and append suffix.
978
+
979
+ ### Step 5: Generate
980
+
981
+ Refer to `brand/stack.md` for the verified API payload. Insert your prompt and aspect ratio.
982
+
983
+ ```
984
+ 1. Open brand/stack.md
985
+ 2. Copy the Image Generation verified payload
986
+ 3. Insert prompt and aspect_ratio
987
+ 4. Execute via generation API
988
+ 5. Access output[0] for the image URL
989
+ ```
990
+
991
+ ### Step 6: Platform-Specific Review
992
+
993
+ Check against platform requirements:
994
+ - Correct ratio?
995
+ - Safe zones respected?
996
+ - Visual language matches platform?
997
+ - Scroll-stopping quality?
998
+ - Text space if needed?
999
+ - Text rendering clean? (if applicable)
1000
+
1001
+ ### Step 7: Save Output
1002
+
1003
+ ```
1004
+ Save to: ./campaigns/{campaign}/social/{platform}/{descriptive-name}.png
1005
+ ```
1006
+
1007
+ ### Step 8: Iterate or Approve
1008
+
1009
+ If multi-platform, generate adapted variants for remaining platforms.
1010
+
1011
+ ---
1012
+
1013
+ ## Multi-Platform Scaling
1014
+
1015
+ When one concept needs multiple platforms:
1016
+
1017
+ ### Strategy: Generate Primary, Then Adapt
1018
+
1019
+ ```
1020
+ 1. Generate for PRIMARY platform (where it matters most)
1021
+ 2. Approve composition and style
1022
+ 3. Generate variants for other platforms
1023
+ - Adjust aspect ratio
1024
+ - Adjust composition for different safe zones
1025
+ - Apply platform-specific prompt modifiers
1026
+ - Maintain visual consistency
1027
+ 4. Save each variant to its platform directory
1028
+ ```
1029
+
1030
+ ### Platform Adaptation Matrix
1031
+
1032
+ | From -> To | Composition Change |
1033
+ |-----------|-------------------|
1034
+ | Instagram Feed -> Stories | Recenter subject in middle third |
1035
+ | YouTube Thumb -> Twitter | Can often use as-is (both 16:9) |
1036
+ | LinkedIn -> Facebook | Minimal change (similar ratios) |
1037
+ | Pinterest -> Instagram | Square crop or reimagine |
1038
+ | Any -> Stories/TikTok | Full vertical recomposition needed |
1039
+
1040
+ ### Batch Generation
1041
+
1042
+ ```
1043
+ For campaign "Product Launch":
1044
+ ├── instagram/
1045
+ │ ├── feed-4x5.png (4:5) - primary
1046
+ │ └── stories-9x16.png (9:16) - adapted
1047
+ ├── linkedin/
1048
+ │ └── feed-1.91x1.png (1.91:1) - professional version
1049
+ ├── twitter/
1050
+ │ └── feed-16x9.png (16:9) - punchy version
1051
+ └── facebook/
1052
+ └── feed-1.91x1.png (1.91:1) - broader appeal version
1053
+ ```
1054
+
1055
+ ---
1056
+
1057
+ ## File Output Structure
1058
+
1059
+ All social graphics are saved to an organized directory structure for easy handoff and management.
1060
+
1061
+ ### Directory Convention
1062
+
1063
+ ```
1064
+ ./campaigns/{campaign-name}/social/
1065
+ ├── instagram/
1066
+ │ ├── feed/
1067
+ │ │ ├── {concept}-4x5.png
1068
+ │ │ └── ...
1069
+ │ ├── stories/
1070
+ │ │ ├── {concept}-9x16.png
1071
+ │ │ └── ...
1072
+ │ └── reels/
1073
+ │ └── {concept}-cover-9x16.png
1074
+ ├── youtube/
1075
+ │ ├── thumbnails/
1076
+ │ │ ├── {concept}-16x9.png
1077
+ │ │ └── ...
1078
+ │ └── community/
1079
+ │ └── {concept}-1x1.png
1080
+ ├── linkedin/
1081
+ │ ├── {concept}-1.91x1.png
1082
+ │ └── ...
1083
+ ├── twitter/
1084
+ │ ├── {concept}-16x9.png
1085
+ │ └── ...
1086
+ ├── pinterest/
1087
+ │ ├── {concept}-2x3.png
1088
+ │ └── ...
1089
+ ├── facebook/
1090
+ │ ├── {concept}-1.91x1.png
1091
+ │ └── ...
1092
+ ├── tiktok/
1093
+ │ ├── {concept}-cover-9x16.png
1094
+ │ └── ...
1095
+ └── calendar-summary.md (if using content calendar mode)
1096
+ ```
1097
+
1098
+ ### File Naming Convention
1099
+
1100
+ ```
1101
+ {descriptive-concept}-{aspect-shorthand}.{format}
1102
+
1103
+ Examples:
1104
+ product-launch-announcement-4x5.png
1105
+ weekly-tip-typography-basics-16x9.png
1106
+ customer-quote-sarah-1x1.png
1107
+ day-3-engage-conversation-starter-4x5.png
1108
+ ```
1109
+
1110
+ ### Saving Workflow
1111
+
1112
+ After each successful generation:
1113
+
1114
+ ```
1115
+ 1. Create campaign directory if it doesn't exist:
1116
+ mkdir -p ./campaigns/{campaign}/social/{platform}/
1117
+
1118
+ 2. Download the generated image from the output URL
1119
+
1120
+ 3. Save with descriptive filename:
1121
+ ./campaigns/{campaign}/social/{platform}/{name}-{ratio}.png
1122
+
1123
+ 4. Log the generation in the output summary
1124
+ ```
1125
+
1126
+ ---
1127
+
1128
+ ## Quality Checklist
1129
+
1130
+ ### Technical
1131
+ - [ ] Correct aspect ratio for platform
1132
+ - [ ] Resolution sufficient (minimum specs met)
1133
+ - [ ] Safe zones respected (no critical content in overlay areas)
1134
+ - [ ] File saved to correct campaign directory
1135
+
1136
+ ### Platform Fit
1137
+ - [ ] Visual language matches platform
1138
+ - [ ] Would scroll-stop on this platform specifically
1139
+ - [ ] Appropriate for platform's audience
1140
+ - [ ] Text (if any) readable at typical view size
1141
+
1142
+ ### Typography (if text included)
1143
+ - [ ] Text specified in quotes in the prompt
1144
+ - [ ] Typography style explicitly described
1145
+ - [ ] Text placement matches composition
1146
+ - [ ] Contrast sufficient for readability
1147
+ - [ ] All characters rendered correctly
1148
+ - [ ] Readable at mobile screen size
1149
+
1150
+ ### Composition
1151
+ - [ ] Subject clear and prominent
1152
+ - [ ] Space for text overlay if needed
1153
+ - [ ] Doesn't compete with platform UI elements
1154
+ - [ ] Colors work on platform (dark mode consideration)
1155
+
1156
+ ### Brand
1157
+ - [ ] Consistent with brand aesthetic
1158
+ - [ ] Colors appropriate
1159
+ - [ ] Tone matches brand voice
1160
+ - [ ] Matches saved template (if using template system)
1161
+
1162
+ ### Content Calendar (if applicable)
1163
+ - [ ] All posts generated with unique concepts
1164
+ - [ ] Content pillars distributed correctly
1165
+ - [ ] Captions written with hashtags
1166
+ - [ ] Calendar summary document complete
1167
+ - [ ] Files organized by day and pillar
1168
+
1169
+ ---
1170
+
1171
+ ## Common Issues & Solutions
1172
+
1173
+ | Issue | Cause | Solution |
1174
+ |-------|-------|----------|
1175
+ | Looks generic | Platform not specified | Use platform-specific template |
1176
+ | Wrong vibe for platform | Cross-platform prompt | Rewrite for specific platform language |
1177
+ | Content in unsafe zone | Template not followed | Specify safe zone in prompt |
1178
+ | Too polished for TikTok | Wrong aesthetic | Add "native, authentic, not over-produced" |
1179
+ | Too casual for LinkedIn | Wrong aesthetic | Add "professional, sophisticated, corporate-appropriate" |
1180
+ | Won't scroll-stop | Lacks contrast/impact | Add "bold, high contrast, scroll-stopping" |
1181
+ | Text unreadable | Bad text space | Specify "clear space for text overlay" |
1182
+ | Wrong ratio | Default used | Explicitly state ratio in prompt |
1183
+ | Text garbled | Too many words | Keep text to 6 words or fewer per element |
1184
+ | Text wrong font | Style not specified | Explicitly describe typography style in prompt |
1185
+ | Brand inconsistent | No template used | Save and reference a template in creative-kit.md |
1186
+ | Calendar posts look same | No pillar variety | Use content pillar system for thematic diversity |
1187
+ | Files disorganized | No directory structure | Follow file output convention strictly |
1188
+
1189
+ ---
1190
+
1191
+ ## Platform-Specific Tips
1192
+
1193
+ ### Instagram
1194
+ - 4:5 gets more real estate than 1:1 — default to portrait
1195
+ - Algorithm favors engagement — bold colors help
1196
+ - First frame of carousel is everything
1197
+ - Avoid heavy text (algorithm deprioritizes)
1198
+
1199
+ ### YouTube
1200
+ - Thumbnail is 50% of click decision
1201
+ - Face + emotion dramatically increases CTR
1202
+ - Test against actual competitors' thumbnails
1203
+ - Yellow genuinely outperforms other colors
1204
+
1205
+ ### LinkedIn
1206
+ - Thought leadership aesthetic wins
1207
+ - Data/insight graphics get shared
1208
+ - Avoid anything that looks like an ad
1209
+ - Professional does not equal boring
1210
+
1211
+ ### Twitter/X
1212
+ - Dark mode dominant — high contrast essential
1213
+ - Memes and screenshots perform
1214
+ - Hot take energy works
1215
+ - Ratio-able graphics (quotes) spread
1216
+
1217
+ ### Pinterest
1218
+ - Vertical wins — 2:3 or longer
1219
+ - Text on pin = good (users read)
1220
+ - Aspirational + actionable
1221
+ - Save-worthy > like-worthy
1222
+
1223
+ ### TikTok
1224
+ - Native aesthetic beats polished
1225
+ - Face-forward works
1226
+ - Match trending visual styles
1227
+ - Avoid looking like an ad
1228
+
1229
+ ---
1230
+
1231
+ ## Output Format
1232
+
1233
+ ### Single Graphic Output
1234
+
1235
+ ```markdown
1236
+ ## Social Graphic Generated
1237
+
1238
+ **Platform:** [platform]
1239
+ **Placement:** [feed/stories/thumbnail/etc.]
1240
+ **Aspect Ratio:** [ratio]
1241
+ **Template Used:** [template name or "none"]
1242
+
1243
+ **Image URL:** [URL]
1244
+ **Saved To:** ./campaigns/{campaign}/social/{platform}/{filename}.png
1245
+
1246
+ **Platform Optimization:**
1247
+ - [x] Correct ratio
1248
+ - [x] Safe zones respected
1249
+ - [x] Platform visual language
1250
+ - [x] Scroll-stopping quality
1251
+
1252
+ **Typography Check:** (if text included)
1253
+ - [x] Text renders cleanly
1254
+ - [x] Font style matches intent
1255
+ - [x] Readable at mobile size
1256
+
1257
+ **Feedback?**
1258
+ - Does it match platform vibe?
1259
+ - Scroll-stopping enough?
1260
+ - Text space adequate?
1261
+ - Ready to approve or iterate?
1262
+
1263
+ **Multi-Platform?**
1264
+ - [ ] Generate additional platform variants
1265
+ - [ ] Specify platforms needed
1266
+ ```
1267
+
1268
+ ### Multi-Platform Output
1269
+
1270
+ ```markdown
1271
+ ## Multi-Platform Graphics Generated
1272
+
1273
+ **Campaign:** {campaign-name}
1274
+ **Concept:** [description]
1275
+ **Template Used:** [template name]
1276
+
1277
+ ### Instagram Feed (4:5)
1278
+ - **URL:** [URL]
1279
+ - **Saved:** ./campaigns/{campaign}/social/instagram/{name}-4x5.png
1280
+ - **Status:** [x] Platform-optimized
1281
+
1282
+ ### LinkedIn (1.91:1)
1283
+ - **URL:** [URL]
1284
+ - **Saved:** ./campaigns/{campaign}/social/linkedin/{name}-1.91x1.png
1285
+ - **Status:** [x] Platform-optimized
1286
+
1287
+ ### Twitter (16:9)
1288
+ - **URL:** [URL]
1289
+ - **Saved:** ./campaigns/{campaign}/social/twitter/{name}-16x9.png
1290
+ - **Status:** [x] Platform-optimized
1291
+
1292
+ [... additional platforms ...]
1293
+
1294
+ **All Variants Approved?**
1295
+ - [ ] Yes, proceed to scheduling
1296
+ - [ ] Need iteration on [platform]
1297
+ ```
1298
+
1299
+ ### Content Calendar Output
1300
+
1301
+ ```markdown
1302
+ ## Content Calendar Generated
1303
+
1304
+ **Campaign:** {campaign-name}
1305
+ **Platform:** {platform}
1306
+ **Period:** {date range}
1307
+ **Posts Generated:** {count}
1308
+ **Template Used:** {template name}
1309
+
1310
+ **Output Directory:** ./campaigns/{campaign}/social/{platform}/
1311
+
1312
+ ### Calendar Overview
1313
+
1314
+ | Day | Pillar | Concept | File | Caption Preview |
1315
+ |-----|--------|---------|------|-----------------|
1316
+ | Mon | Educate | [concept] | day-1-educate.png | [first 50 chars...] |
1317
+ | Tue | Inspire | [concept] | day-2-inspire.png | [first 50 chars...] |
1318
+ | Wed | Engage | [concept] | day-3-engage.png | [first 50 chars...] |
1319
+ | Thu | Promote | [concept] | day-4-promote.png | [first 50 chars...] |
1320
+ | Fri | Entertain | [concept] | day-5-entertain.png | [first 50 chars...] |
1321
+ | Sat | Connect | [concept] | day-6-connect.png | [first 50 chars...] |
1322
+ | Sun | Inspire | [concept] | day-7-inspire.png | [first 50 chars...] |
1323
+
1324
+ **Full details:** See ./campaigns/{campaign}/social/calendar-summary.md
1325
+ ```
1326
+
1327
+ ---
1328
+
1329
+ ## Integration with Creative Engine
1330
+
1331
+ ```
1332
+ SOCIAL GRAPHICS PIPELINE
1333
+
1334
+ ┌─────────────────────────────────────────┐
1335
+ │ Request with platform specified │
1336
+ │ -> Or route from creative/SKILL.md │
1337
+ └─────────────────────────────────────────┘
1338
+ │
1339
+ v
1340
+ ┌─────────────────────────────────────────┐
1341
+ │ LOAD BRAND CONTEXT │
1342
+ │ -> Read ./brand/creative-kit.md │
1343
+ │ -> Load template if exists │
1344
+ │ -> Extract brand colors, style, tone │
1345
+ └─────────────────────────────────────────┘
1346
+ │
1347
+ v
1348
+ ┌─────────────────────────────────────────┐
1349
+ │ social-graphics mode (THIS FILE) │
1350
+ │ -> Identify platform requirements │
1351
+ │ -> Apply platform-specific template │
1352
+ │ -> Apply brand template if available │
1353
+ │ -> Generate with MODEL_REGISTRY.md │
1354
+ │ -> Review against platform checklist │
1355
+ └─────────────────────────────────────────┘
1356
+ │
1357
+ ┌───────────┴───────────┐
1358
+ v v
1359
+ ┌──────────────────┐ ┌──────────────────┐
1360
+ │ Single Platform │ │ Multi-Platform │
1361
+ │ -> Generate │ │ -> Generate │
1362
+ │ -> Save to │ │ primary │
1363
+ │ campaigns/ │ │ -> Auto-adapt │
1364
+ │ │ │ variants │
1365
+ │ │ │ -> Save all to │
1366
+ │ │ │ campaigns/ │
1367
+ └──────────────────┘ └──────────────────┘
1368
+ │ │
1369
+ v v
1370
+ ┌──────────────────┐ ┌──────────────────┐
1371
+ │ Content Calendar│ │ Template Save │
1372
+ │ -> Batch gen │ │ -> If new style │
1373
+ │ -> All pillars │ │ approved, │
1374
+ │ -> Calendar │ │ save to │
1375
+ │ summary │ │ creative-kit │
1376
+ └──────────────────┘ └──────────────────┘
1377
+ ```
1378
+
1379
+ ---
1380
+
1381
+ ## Handoff Protocols
1382
+
1383
+ ### Receiving from creative/SKILL.md
1384
+
1385
+ ```yaml
1386
+ Receive:
1387
+ platform: "Instagram"
1388
+ placement: "Feed"
1389
+ content_type: "Product announcement"
1390
+ subject: "[what to show]"
1391
+ brand_colors: "[if specified]"
1392
+ text_needed: true/false
1393
+ text_content: "[exact text if needed]"
1394
+ template_name: "[if brand template exists]"
1395
+ campaign_name: "[for file organization]"
1396
+ multi_platform: true/false
1397
+ additional_platforms: ["LinkedIn", "Twitter"]
1398
+ calendar_mode: false
1399
+ calendar_days: 0
1400
+ ```
1401
+
1402
+ ### Returning
1403
+
1404
+ ```yaml
1405
+ Return:
1406
+ status: "complete"
1407
+ deliverables:
1408
+ - platform: "Instagram"
1409
+ placement: "Feed"
1410
+ aspect_ratio: "4:5"
1411
+ url: "[URL]"
1412
+ saved_to: "./campaigns/{campaign}/social/instagram/{name}.png"
1413
+ template_saved: true/false
1414
+ template_name: "[if saved]"
1415
+ multi_platform_available: true
1416
+ additional_platforms_needed: "[list if requested]"
1417
+ calendar_generated: false
1418
+ calendar_summary: "[path if generated]"
1419
+ ```
1420
+
1421
+ ---
1422
+
1423
+ ## Tips from Experience
1424
+
1425
+ ### What Works
1426
+ 1. **Platform-first thinking** — Start with where it lives, not what it shows
1427
+ 2. **Ratio is non-negotiable** — Wrong ratio = wrong everything
1428
+ 3. **Safe zones matter** — Platform UI will cover content
1429
+ 4. **Visual language matching** — LinkedIn does not equal TikTok aesthetically
1430
+ 5. **Bold beats subtle** — Social is noisy, you need to pop
1431
+ 6. **Templates create consistency** — Save your winning style and reuse it
1432
+ 7. **Calendar mode saves hours** — Batch generation beats one-at-a-time
1433
+ 8. **Text rendering works** — the configured image model handles headlines natively, no separate tool needed
1434
+
1435
+ ### What Doesn't Work
1436
+ 1. **One size fits all** — Generic "social media" prompts
1437
+ 2. **Ignoring platform culture** — Too polished for TikTok, too casual for LinkedIn
1438
+ 3. **Forgetting mobile** — Most viewing is phone-sized
1439
+ 4. **Text-heavy images** — Most platforms deprioritize
1440
+ 5. **Subtle visuals** — Get lost in the scroll
1441
+ 6. **No saved templates** — Rebuilding brand identity from scratch each time
1442
+ 7. **Paragraph-length text** — AI text rendering works best at 6 words or fewer
1443
+ 8. **Skipping style exploration** — Locking into the first idea without comparing alternatives
1444
+
1445
+ ### The 80/20
1446
+ 80% of social graphic success comes from:
1447
+ 1. Correct aspect ratio
1448
+ 2. Platform-appropriate visual language
1449
+ 3. Scroll-stopping contrast/colors
1450
+ 4. Clear focal point
1451
+
1452
+ Get these four right and you'll outperform most content.
1453
+
1454
+ ---
1455
+
1456
+ ## Quick Reference: Common Workflows
1457
+
1458
+ ### "Make me an Instagram post"
1459
+
1460
+ ```
1461
+ 1. Load brand template from creative-kit.md (if exists)
1462
+ 2. Use Instagram Feed (4:5) prompt template
1463
+ 3. Add brand-specific modifiers
1464
+ 4. Generate via MODEL_REGISTRY.md
1465
+ 5. Save to ./campaigns/{campaign}/social/instagram/
1466
+ ```
1467
+
1468
+ ### "I need this on all platforms"
1469
+
1470
+ ```
1471
+ 1. Generate primary platform version
1472
+ 2. Get approval
1473
+ 3. Run auto-adaptation for each additional platform
1474
+ 4. Save all variants to platform-specific directories
1475
+ 5. Present multi-platform output summary
1476
+ ```
1477
+
1478
+ ### "Generate a week of content"
1479
+
1480
+ ```
1481
+ 1. Confirm brand template and platform
1482
+ 2. Map 7 days to content pillars
1483
+ 3. Generate unique concept for each day
1484
+ 4. Batch generate all 7 graphics
1485
+ 5. Write captions with hashtags
1486
+ 6. Save to calendar directory structure
1487
+ 7. Produce calendar summary document
1488
+ ```
1489
+
1490
+ ### "Make a YouTube thumbnail"
1491
+
1492
+ ```
1493
+ 1. Use YouTube Thumbnail prompt template
1494
+ 2. Apply emotion modifier (surprise/excitement/curiosity/etc.)
1495
+ 3. Apply color psychology (yellow for clicks, blue for trust, etc.)
1496
+ 4. Generate at 16:9
1497
+ 5. Verify text space and face prominence
1498
+ 6. Save to ./campaigns/{campaign}/social/youtube/thumbnails/
1499
+ ```
1500
+
1501
+ ### "Create a quote graphic"
1502
+
1503
+ ```
1504
+ 1. Use Text Rendering Instructions
1505
+ 2. Keep quote to 6 words or fewer if possible
1506
+ 3. Specify typography style explicitly
1507
+ 4. Describe text placement and contrast
1508
+ 5. Generate for target platform ratio
1509
+ 6. Verify text renders cleanly
1510
+ 7. If text is garbled, regenerate or use fallback (background + post-production text)
1511
+ ```