create-hq 6.0.0 → 7.0.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 (315) hide show
  1. package/dist/__tests__/scaffold.test.d.ts +2 -0
  2. package/dist/__tests__/scaffold.test.d.ts.map +1 -0
  3. package/dist/__tests__/scaffold.test.js +150 -0
  4. package/dist/__tests__/scaffold.test.js.map +1 -0
  5. package/dist/cloud-sync.d.ts +11 -0
  6. package/dist/cloud-sync.d.ts.map +1 -0
  7. package/dist/cloud-sync.js +25 -0
  8. package/dist/cloud-sync.js.map +1 -0
  9. package/dist/deps.d.ts.map +1 -1
  10. package/dist/deps.js +7 -1
  11. package/dist/deps.js.map +1 -1
  12. package/dist/fetch-template.d.ts +14 -0
  13. package/dist/fetch-template.d.ts.map +1 -0
  14. package/dist/fetch-template.js +136 -0
  15. package/dist/fetch-template.js.map +1 -0
  16. package/dist/index.js +8 -7
  17. package/dist/index.js.map +1 -1
  18. package/dist/scaffold.d.ts +2 -2
  19. package/dist/scaffold.d.ts.map +1 -1
  20. package/dist/scaffold.js +95 -286
  21. package/dist/scaffold.js.map +1 -1
  22. package/dist/ui.d.ts +2 -3
  23. package/dist/ui.d.ts.map +1 -1
  24. package/dist/ui.js +90 -44
  25. package/dist/ui.js.map +1 -1
  26. package/package.json +48 -40
  27. package/template/.claude/CLAUDE.md +0 -202
  28. package/template/.claude/commands/checkpoint.md +0 -127
  29. package/template/.claude/commands/cleanup.md +0 -307
  30. package/template/.claude/commands/execute-task.md +0 -440
  31. package/template/.claude/commands/exit-plan.md +0 -41
  32. package/template/.claude/commands/handoff.md +0 -97
  33. package/template/.claude/commands/learn.md +0 -218
  34. package/template/.claude/commands/metrics.md +0 -118
  35. package/template/.claude/commands/newworker.md +0 -162
  36. package/template/.claude/commands/nexttask.md +0 -67
  37. package/template/.claude/commands/prd.md +0 -238
  38. package/template/.claude/commands/reanchor.md +0 -51
  39. package/template/.claude/commands/remember.md +0 -126
  40. package/template/.claude/commands/run-project.md +0 -348
  41. package/template/.claude/commands/run.md +0 -110
  42. package/template/.claude/commands/search-reindex.md +0 -62
  43. package/template/.claude/commands/search.md +0 -100
  44. package/template/.claude/commands/setup.md +0 -381
  45. package/template/.claude/scripts/pure-ralph-loop.ps1 +0 -312
  46. package/template/.claude/scripts/pure-ralph-loop.sh +0 -859
  47. package/template/CHANGELOG.md +0 -220
  48. package/template/LICENSE +0 -21
  49. package/template/MIGRATION.md +0 -259
  50. package/template/README.md +0 -368
  51. package/template/data/journal/.gitkeep +0 -0
  52. package/template/docs/images/ascii-banner-options.md +0 -122
  53. package/template/docs/images/hq-banner.svg +0 -105
  54. package/template/knowledge/Ralph/01-overview.md +0 -71
  55. package/template/knowledge/Ralph/02-core-concepts.md +0 -114
  56. package/template/knowledge/Ralph/03-how-ralph-works.md +0 -184
  57. package/template/knowledge/Ralph/04-back-pressure.md +0 -222
  58. package/template/knowledge/Ralph/05-specifications.md +0 -210
  59. package/template/knowledge/Ralph/06-agents-md.md +0 -222
  60. package/template/knowledge/Ralph/07-implementation.md +0 -316
  61. package/template/knowledge/Ralph/08-economics.md +0 -182
  62. package/template/knowledge/Ralph/09-resources.md +0 -145
  63. package/template/knowledge/Ralph/10-claude-code-workflow.md +0 -212
  64. package/template/knowledge/Ralph/11-team-training-guide.md +0 -383
  65. package/template/knowledge/Ralph/README.md +0 -40
  66. package/template/knowledge/ai-security-framework/CONTRIBUTING.md +0 -139
  67. package/template/knowledge/ai-security-framework/GLOSSARY.md +0 -176
  68. package/template/knowledge/ai-security-framework/LICENSE +0 -21
  69. package/template/knowledge/ai-security-framework/QUICK-START.md +0 -172
  70. package/template/knowledge/ai-security-framework/README.md +0 -232
  71. package/template/knowledge/ai-security-framework/checklists/browser-security.md +0 -301
  72. package/template/knowledge/ai-security-framework/checklists/credential-isolation.md +0 -322
  73. package/template/knowledge/ai-security-framework/checklists/incident-response.md +0 -288
  74. package/template/knowledge/ai-security-framework/checklists/pre-flight.md +0 -249
  75. package/template/knowledge/ai-security-framework/checklists/weekly-audit.md +0 -159
  76. package/template/knowledge/ai-security-framework/configs/audit-logging.md +0 -372
  77. package/template/knowledge/ai-security-framework/configs/kill-switches.md +0 -354
  78. package/template/knowledge/ai-security-framework/docs/01-core-principles.md +0 -256
  79. package/template/knowledge/ai-security-framework/docs/02-threat-landscape.md +0 -326
  80. package/template/knowledge/ai-security-framework/docs/03-security-posture.md +0 -250
  81. package/template/knowledge/ai-security-framework/templates/agents-security.md +0 -233
  82. package/template/knowledge/design-styles/README.md +0 -42
  83. package/template/knowledge/design-styles/american-industrial.md +0 -136
  84. package/template/knowledge/design-styles/ethereal-abstract.md +0 -133
  85. package/template/knowledge/design-styles/liminal-portal.md +0 -111
  86. package/template/knowledge/design-styles/swipes/american-industrial/G-3m4YPW0AADdu2.jpeg +0 -0
  87. package/template/knowledge/design-styles/swipes/american-industrial/G-JJlt5WwAABK3K.png +0 -0
  88. package/template/knowledge/design-styles/swipes/american-industrial/G-JJmj5W0AEbJ-7.png +0 -0
  89. package/template/knowledge/design-styles/swipes/american-industrial/G59fgNuXkAAKLJQ (1).jpeg +0 -0
  90. package/template/knowledge/design-styles/swipes/american-industrial/G59fgNuXkAAKLJQ.jpeg +0 -0
  91. package/template/knowledge/design-styles/swipes/american-industrial/G7fVkn3WEAAM-ST.jpeg +0 -0
  92. package/template/knowledge/design-styles/swipes/american-industrial/G8ECO5JWEAIksyn.png +0 -0
  93. package/template/knowledge/design-styles/swipes/american-industrial/G9-3GQSWoAA8eqZ.png +0 -0
  94. package/template/knowledge/design-styles/swipes/american-industrial/G9xEOqrXkAEZRcs.png +0 -0
  95. package/template/knowledge/design-styles/swipes/american-industrial/G_MVeJrXQAA8sx4.jpeg +0 -0
  96. package/template/knowledge/design-styles/swipes/american-industrial/G_RSkmGXkAAgAVZ.png +0 -0
  97. package/template/knowledge/design-styles/swipes/american-industrial/README.md +0 -31
  98. package/template/knowledge/design-styles/swipes/american-industrial/qyqtg7Dq.png +0 -0
  99. package/template/knowledge/dev-team/README.md +0 -35
  100. package/template/knowledge/dev-team/patterns/README.md +0 -34
  101. package/template/knowledge/dev-team/patterns/frontend/react-best-practices.md +0 -178
  102. package/template/knowledge/dev-team/troubleshooting/README.md +0 -31
  103. package/template/knowledge/dev-team/workflows/README.md +0 -49
  104. package/template/knowledge/hq/checkpoint-schema.json +0 -51
  105. package/template/knowledge/hq/index-md-spec.md +0 -74
  106. package/template/knowledge/hq/thread-schema.md +0 -153
  107. package/template/knowledge/hq-core/checkpoint-schema.json +0 -51
  108. package/template/knowledge/hq-core/index-md-spec.md +0 -74
  109. package/template/knowledge/hq-core/thread-schema.md +0 -153
  110. package/template/knowledge/loom/README.md +0 -51
  111. package/template/knowledge/loom/architecture.md +0 -125
  112. package/template/knowledge/loom/code-style.md +0 -169
  113. package/template/knowledge/loom/llm-proxy.md +0 -132
  114. package/template/knowledge/loom/state-machine.md +0 -131
  115. package/template/knowledge/loom/thread-system.md +0 -117
  116. package/template/knowledge/loom/tools.md +0 -94
  117. package/template/knowledge/loom/weaver.md +0 -96
  118. package/template/knowledge/loom/web-frontend.md +0 -131
  119. package/template/knowledge/projects/README.md +0 -72
  120. package/template/knowledge/projects/templates/README.template.md +0 -28
  121. package/template/knowledge/workers/README.md +0 -195
  122. package/template/knowledge/workers/ralph-loop-pattern.md +0 -157
  123. package/template/knowledge/workers/skill-schema.md +0 -182
  124. package/template/knowledge/workers/state-machine.md +0 -102
  125. package/template/knowledge/workers/templates/base-worker.yaml +0 -73
  126. package/template/knowledge/workers/templates/code-worker.yaml +0 -85
  127. package/template/knowledge/workers/templates/skill.yaml +0 -49
  128. package/template/knowledge/workers/templates/social-worker.yaml +0 -70
  129. package/template/modules/examples/full-manifest.yaml +0 -92
  130. package/template/modules/examples/minimal.yaml +0 -14
  131. package/template/modules/modules.yaml +0 -59
  132. package/template/projects/.gitkeep +0 -0
  133. package/template/projects/incorporate-workers-into-pure-ralph/prd.json +0 -88
  134. package/template/projects/pure-ralph-branch-isolation/README.md +0 -114
  135. package/template/projects/pure-ralph-branch-isolation/prd.json +0 -123
  136. package/template/projects/purist-ralph-loop/README.md +0 -148
  137. package/template/projects/purist-ralph-loop/prd.json +0 -135
  138. package/template/projects/ralph-test/prd.json +0 -50
  139. package/template/prompts/pure-ralph-base.md +0 -551
  140. package/template/settings/.gitkeep +0 -0
  141. package/template/settings/pure-ralph.json +0 -42
  142. package/template/social-content/drafts/INDEX.md +0 -21
  143. package/template/social-content/drafts/linkedin/.gitkeep +0 -1
  144. package/template/social-content/drafts/x/.gitkeep +0 -1
  145. package/template/social-content/images/.gitkeep +0 -1
  146. package/template/starter-projects/code-worker/README.md +0 -97
  147. package/template/starter-projects/code-worker/prd.json +0 -45
  148. package/template/starter-projects/personal-assistant/README.md +0 -42
  149. package/template/starter-projects/personal-assistant/prd.json +0 -43
  150. package/template/starter-projects/social-media/README.md +0 -60
  151. package/template/starter-projects/social-media/prd.json +0 -43
  152. package/template/workers/content-brand/README.md +0 -59
  153. package/template/workers/content-brand/skills/messaging-alignment.md +0 -91
  154. package/template/workers/content-brand/skills/tone-check.md +0 -76
  155. package/template/workers/content-brand/skills/voice-analysis.md +0 -68
  156. package/template/workers/content-brand/worker.yaml +0 -81
  157. package/template/workers/content-legal/README.md +0 -80
  158. package/template/workers/content-legal/skills/claim-substantiation.md +0 -150
  159. package/template/workers/content-legal/skills/compliance-scan.md +0 -123
  160. package/template/workers/content-legal/skills/disclaimer-check.md +0 -146
  161. package/template/workers/content-legal/worker.yaml +0 -118
  162. package/template/workers/content-product/README.md +0 -77
  163. package/template/workers/content-product/skills/claim-verification.md +0 -96
  164. package/template/workers/content-product/skills/feature-accuracy.md +0 -117
  165. package/template/workers/content-product/skills/stats-check.md +0 -128
  166. package/template/workers/content-product/worker.yaml +0 -97
  167. package/template/workers/content-sales/README.md +0 -70
  168. package/template/workers/content-sales/skills/conversion-analysis.md +0 -96
  169. package/template/workers/content-sales/skills/cta-audit.md +0 -107
  170. package/template/workers/content-sales/skills/value-prop-check.md +0 -114
  171. package/template/workers/content-sales/worker.yaml +0 -93
  172. package/template/workers/content-shared/cli.ts +0 -242
  173. package/template/workers/content-shared/index.ts +0 -234
  174. package/template/workers/content-shared/lib/accuracy-analyzer.ts +0 -661
  175. package/template/workers/content-shared/lib/analyze.ts +0 -370
  176. package/template/workers/content-shared/lib/brand-analyzer.ts +0 -526
  177. package/template/workers/content-shared/lib/cms-integration.ts +0 -446
  178. package/template/workers/content-shared/lib/compliance-analyzer.ts +0 -655
  179. package/template/workers/content-shared/lib/conversion-analyzer.ts +0 -555
  180. package/template/workers/content-shared/lib/github-integration.ts +0 -582
  181. package/template/workers/content-shared/lib/output.ts +0 -373
  182. package/template/workers/content-shared/lib/parser.ts +0 -771
  183. package/template/workers/content-shared/lib/priority.ts +0 -439
  184. package/template/workers/content-shared/lib/recommendations.ts +0 -512
  185. package/template/workers/content-shared/lib/reporter.ts +0 -749
  186. package/template/workers/content-shared/lib/restructure.ts +0 -664
  187. package/template/workers/content-shared/lib/scorer.ts +0 -140
  188. package/template/workers/content-shared/lib/types.ts +0 -227
  189. package/template/workers/content-shared/lib/variants.ts +0 -595
  190. package/template/workers/content-shared/package.json +0 -51
  191. package/template/workers/content-shared/pnpm-lock.yaml +0 -39
  192. package/template/workers/content-shared/test/sample-page.json +0 -115
  193. package/template/workers/content-shared/tsconfig.json +0 -20
  194. package/template/workers/dev-team/README.md +0 -166
  195. package/template/workers/dev-team/_template.yaml +0 -70
  196. package/template/workers/dev-team/architect/package.json +0 -27
  197. package/template/workers/dev-team/architect/skills/api-design.md +0 -89
  198. package/template/workers/dev-team/architect/skills/refactor-plan.md +0 -96
  199. package/template/workers/dev-team/architect/skills/system-design.md +0 -100
  200. package/template/workers/dev-team/architect/src/index.ts +0 -49
  201. package/template/workers/dev-team/architect/src/mcp-server.ts +0 -122
  202. package/template/workers/dev-team/architect/src/skills/api-design.ts +0 -316
  203. package/template/workers/dev-team/architect/src/skills/refactor-plan.ts +0 -264
  204. package/template/workers/dev-team/architect/src/skills/system-design.ts +0 -212
  205. package/template/workers/dev-team/architect/tsconfig.json +0 -19
  206. package/template/workers/dev-team/architect/worker.yaml +0 -128
  207. package/template/workers/dev-team/backend-dev/package-lock.json +0 -1252
  208. package/template/workers/dev-team/backend-dev/package.json +0 -27
  209. package/template/workers/dev-team/backend-dev/skills/implement-endpoint.md +0 -70
  210. package/template/workers/dev-team/backend-dev/skills/implement-service.md +0 -62
  211. package/template/workers/dev-team/backend-dev/src/index.ts +0 -51
  212. package/template/workers/dev-team/backend-dev/src/mcp-server.ts +0 -109
  213. package/template/workers/dev-team/backend-dev/src/skills/implement-endpoint.ts +0 -122
  214. package/template/workers/dev-team/backend-dev/src/skills/implement-service.ts +0 -126
  215. package/template/workers/dev-team/backend-dev/tsconfig.json +0 -19
  216. package/template/workers/dev-team/backend-dev/worker.yaml +0 -128
  217. package/template/workers/dev-team/code-reviewer/package-lock.json +0 -1080
  218. package/template/workers/dev-team/code-reviewer/package.json +0 -24
  219. package/template/workers/dev-team/code-reviewer/skills/merge-to-production.md +0 -61
  220. package/template/workers/dev-team/code-reviewer/skills/merge-to-staging.md +0 -54
  221. package/template/workers/dev-team/code-reviewer/skills/request-changes.md +0 -63
  222. package/template/workers/dev-team/code-reviewer/skills/review-pr.md +0 -77
  223. package/template/workers/dev-team/code-reviewer/src/index.ts +0 -56
  224. package/template/workers/dev-team/code-reviewer/src/mcp-server.ts +0 -101
  225. package/template/workers/dev-team/code-reviewer/tsconfig.json +0 -19
  226. package/template/workers/dev-team/code-reviewer/worker.yaml +0 -90
  227. package/template/workers/dev-team/database-dev/package.json +0 -22
  228. package/template/workers/dev-team/database-dev/skills/create-schema.md +0 -48
  229. package/template/workers/dev-team/database-dev/src/index.ts +0 -50
  230. package/template/workers/dev-team/database-dev/src/mcp-server.ts +0 -76
  231. package/template/workers/dev-team/database-dev/tsconfig.json +0 -18
  232. package/template/workers/dev-team/database-dev/worker.yaml +0 -90
  233. package/template/workers/dev-team/frontend-dev/package.json +0 -22
  234. package/template/workers/dev-team/frontend-dev/skills/create-component.md +0 -26
  235. package/template/workers/dev-team/frontend-dev/src/index.ts +0 -50
  236. package/template/workers/dev-team/frontend-dev/src/mcp-server.ts +0 -77
  237. package/template/workers/dev-team/frontend-dev/tsconfig.json +0 -18
  238. package/template/workers/dev-team/frontend-dev/worker.yaml +0 -132
  239. package/template/workers/dev-team/infra-dev/package.json +0 -24
  240. package/template/workers/dev-team/infra-dev/skills/add-monitoring.md +0 -73
  241. package/template/workers/dev-team/infra-dev/skills/configure-deployment.md +0 -80
  242. package/template/workers/dev-team/infra-dev/skills/create-dockerfile.md +0 -62
  243. package/template/workers/dev-team/infra-dev/skills/setup-cicd.md +0 -63
  244. package/template/workers/dev-team/infra-dev/src/index.ts +0 -55
  245. package/template/workers/dev-team/infra-dev/src/mcp-server.ts +0 -82
  246. package/template/workers/dev-team/infra-dev/tsconfig.json +0 -19
  247. package/template/workers/dev-team/infra-dev/worker.yaml +0 -92
  248. package/template/workers/dev-team/knowledge-curator/package.json +0 -24
  249. package/template/workers/dev-team/knowledge-curator/skills/curate-troubleshooting.md +0 -63
  250. package/template/workers/dev-team/knowledge-curator/skills/process-learnings.md +0 -61
  251. package/template/workers/dev-team/knowledge-curator/skills/sync-documentation.md +0 -76
  252. package/template/workers/dev-team/knowledge-curator/skills/update-patterns.md +0 -63
  253. package/template/workers/dev-team/knowledge-curator/src/index.ts +0 -53
  254. package/template/workers/dev-team/knowledge-curator/src/mcp-server.ts +0 -92
  255. package/template/workers/dev-team/knowledge-curator/tsconfig.json +0 -19
  256. package/template/workers/dev-team/knowledge-curator/worker.yaml +0 -80
  257. package/template/workers/dev-team/motion-designer/package.json +0 -22
  258. package/template/workers/dev-team/motion-designer/skills/add-animation.md +0 -25
  259. package/template/workers/dev-team/motion-designer/skills/generate-image.md +0 -36
  260. package/template/workers/dev-team/motion-designer/src/index.ts +0 -63
  261. package/template/workers/dev-team/motion-designer/src/mcp-server.ts +0 -79
  262. package/template/workers/dev-team/motion-designer/tsconfig.json +0 -18
  263. package/template/workers/dev-team/motion-designer/worker.yaml +0 -84
  264. package/template/workers/dev-team/product-planner/queue.json +0 -4
  265. package/template/workers/dev-team/product-planner/worker.yaml +0 -220
  266. package/template/workers/dev-team/project-manager/package-lock.json +0 -1252
  267. package/template/workers/dev-team/project-manager/package.json +0 -27
  268. package/template/workers/dev-team/project-manager/skills/create-prd.md +0 -66
  269. package/template/workers/dev-team/project-manager/skills/next-issue.md +0 -51
  270. package/template/workers/dev-team/project-manager/skills/project-status.md +0 -59
  271. package/template/workers/dev-team/project-manager/skills/update-learnings.md +0 -65
  272. package/template/workers/dev-team/project-manager/src/index.ts +0 -54
  273. package/template/workers/dev-team/project-manager/src/mcp-server.ts +0 -207
  274. package/template/workers/dev-team/project-manager/src/skills/create-prd.ts +0 -86
  275. package/template/workers/dev-team/project-manager/src/skills/next-issue.ts +0 -137
  276. package/template/workers/dev-team/project-manager/src/skills/project-status.ts +0 -131
  277. package/template/workers/dev-team/project-manager/src/skills/update-learnings.ts +0 -94
  278. package/template/workers/dev-team/project-manager/tsconfig.json +0 -19
  279. package/template/workers/dev-team/project-manager/worker.yaml +0 -96
  280. package/template/workers/dev-team/qa-tester/package.json +0 -24
  281. package/template/workers/dev-team/qa-tester/skills/create-demo-account.md +0 -36
  282. package/template/workers/dev-team/qa-tester/skills/run-tests.md +0 -36
  283. package/template/workers/dev-team/qa-tester/skills/write-test.md +0 -27
  284. package/template/workers/dev-team/qa-tester/src/index.ts +0 -61
  285. package/template/workers/dev-team/qa-tester/src/mcp-server.ts +0 -88
  286. package/template/workers/dev-team/qa-tester/tsconfig.json +0 -18
  287. package/template/workers/dev-team/qa-tester/worker.yaml +0 -116
  288. package/template/workers/dev-team/task-executor/package-lock.json +0 -1252
  289. package/template/workers/dev-team/task-executor/package.json +0 -27
  290. package/template/workers/dev-team/task-executor/skills/analyze-issue.md +0 -101
  291. package/template/workers/dev-team/task-executor/skills/execute.md +0 -133
  292. package/template/workers/dev-team/task-executor/skills/report-learnings.md +0 -106
  293. package/template/workers/dev-team/task-executor/skills/validate-completion.md +0 -121
  294. package/template/workers/dev-team/task-executor/src/index.ts +0 -54
  295. package/template/workers/dev-team/task-executor/src/mcp-server.ts +0 -139
  296. package/template/workers/dev-team/task-executor/src/skills/analyze-issue.ts +0 -219
  297. package/template/workers/dev-team/task-executor/src/skills/execute.ts +0 -132
  298. package/template/workers/dev-team/task-executor/src/skills/report-learnings.ts +0 -119
  299. package/template/workers/dev-team/task-executor/src/skills/validate-completion.ts +0 -142
  300. package/template/workers/dev-team/task-executor/tsconfig.json +0 -19
  301. package/template/workers/dev-team/task-executor/worker.yaml +0 -110
  302. package/template/workers/registry.yaml +0 -171
  303. package/template/workers/security-scanner/README.md +0 -73
  304. package/template/workers/security-scanner/skills/pre-deploy-check.md +0 -205
  305. package/template/workers/security-scanner/worker.yaml +0 -26
  306. package/template/workspace/checkpoints/.gitkeep +0 -0
  307. package/template/workspace/content-ideas/inbox.jsonl +0 -0
  308. package/template/workspace/drafts/.gitkeep +0 -0
  309. package/template/workspace/learnings/.gitkeep +0 -3
  310. package/template/workspace/orchestrator/.gitkeep +0 -0
  311. package/template/workspace/ralph-test/COMPLETE.md +0 -18
  312. package/template/workspace/ralph-test/hello.txt +0 -2
  313. package/template/workspace/reports/.gitkeep +0 -0
  314. package/template/workspace/scratch/.gitkeep +0 -0
  315. package/template/workspace/threads/.gitkeep +0 -3
@@ -1,107 +0,0 @@
1
- # Skill: CTA Audit
2
-
3
- Detailed analysis of call-to-action elements across page.
4
-
5
- ## Input
6
-
7
- Page content JSON with extracted CTAs.
8
-
9
- ## Process
10
-
11
- 1. **Inventory all CTAs**
12
- - Buttons
13
- - Text links
14
- - Form submissions
15
- - Navigation prompts
16
-
17
- 2. **Classify each CTA**
18
- - Type (primary, secondary, tertiary)
19
- - Goal (demo, signup, learn more)
20
- - Commitment level (high, medium, low)
21
-
22
- 3. **Evaluate each CTA**
23
- - Copy effectiveness
24
- - Visual prominence
25
- - Placement strategy
26
- - Context appropriateness
27
-
28
- 4. **Assess overall strategy**
29
- - CTA density
30
- - Variety balance
31
- - Journey alignment
32
- - Conflict detection
33
-
34
- ## CTA Evaluation Criteria
35
-
36
- ### Copy Quality
37
- - **Excellent**: Benefit-driven, specific outcome ("Start Saving 40% Today")
38
- - **Good**: Action-oriented with context ("Get Your Free Demo")
39
- - **Adequate**: Clear but generic ("Request Demo")
40
- - **Poor**: Vague or passive ("Submit", "Click Here")
41
-
42
- ### Visual Prominence
43
- - **Excellent**: High contrast, ample whitespace, prominent size
44
- - **Good**: Noticeable, clear hierarchy
45
- - **Adequate**: Visible but not prominent
46
- - **Poor**: Hard to find, blends with content
47
-
48
- ### Placement
49
- - **Excellent**: At decision points, after value established
50
- - **Good**: Strategically placed, good density
51
- - **Adequate**: Present but not optimal
52
- - **Poor**: Misplaced, too early/late, wrong context
53
-
54
- ## CTA Best Practices
55
-
56
- ### Primary CTA
57
- - One per viewport
58
- - High contrast color
59
- - Benefit-driven copy
60
- - After value proposition
61
-
62
- ### Secondary CTA
63
- - Lower commitment option
64
- - Complement primary
65
- - Text link or ghost button
66
- - Different action/audience
67
-
68
- ### Micro-CTAs
69
- - Content engagement
70
- - Social sharing
71
- - Navigation helpers
72
- - Lead nurturing
73
-
74
- ## Output
75
-
76
- ```yaml
77
- cta_audit:
78
- total_count: 6
79
- breakdown:
80
- primary: 2
81
- secondary: 3
82
- tertiary: 1
83
- inventory:
84
- - text: "Get a Demo"
85
- type: "primary"
86
- location: "hero"
87
- rating: "A"
88
- notes: "Well-placed, clear action"
89
- - text: "Learn More"
90
- type: "secondary"
91
- location: "features"
92
- rating: "C"
93
- notes: "Generic copy, could be more specific"
94
- - text: "Submit"
95
- type: "primary"
96
- location: "form"
97
- rating: "D"
98
- notes: "Generic, no benefit stated"
99
- issues:
100
- - "Two primary CTAs compete in hero section"
101
- - "Form CTA uses generic 'Submit' text"
102
- - "No CTA in pricing section"
103
- recommendations:
104
- - "Change 'Submit' to 'Start My Free Trial'"
105
- - "Add secondary CTA to pricing comparison"
106
- - "Consolidate hero CTAs to single primary"
107
- ```
@@ -1,114 +0,0 @@
1
- # Skill: Value Proposition Check
2
-
3
- Assess value proposition clarity, differentiation, and impact.
4
-
5
- ## Input
6
-
7
- - Page content JSON
8
- - Brand messaging guidelines
9
- - Competitor positioning (if available)
10
-
11
- ## Process
12
-
13
- 1. **Identify value proposition elements**
14
- - Headline/tagline
15
- - Subheadline
16
- - Supporting points
17
- - Proof elements
18
-
19
- 2. **Evaluate core components**
20
- - What: Product/service clarity
21
- - Who: Target audience specificity
22
- - Why: Benefit articulation
23
- - How: Differentiation
24
-
25
- 3. **Assess communication**
26
- - Clarity (instantly understood?)
27
- - Specificity (concrete vs vague?)
28
- - Credibility (provable?)
29
- - Memorability (sticky?)
30
-
31
- 4. **Score effectiveness**
32
- - Component presence
33
- - Communication quality
34
- - Strategic alignment
35
-
36
- ## Value Proposition Framework
37
-
38
- ### Essential Components
39
-
40
- | Component | Question | Good Example | Bad Example |
41
- |-----------|----------|--------------|-------------|
42
- | What | What do you offer? | "AI-powered banking assistant" | "Next-gen solution" |
43
- | Who | Who is it for? | "Community banks and credit unions" | "Businesses everywhere" |
44
- | Why | Why does it matter? | "Reduce call center volume 40%" | "Transform your operations" |
45
- | How | How is it different? | "Only AI trained on banking regulations" | "Industry-leading technology" |
46
-
47
- ### Quality Indicators
48
-
49
- **Clarity**
50
- - Understood in <5 seconds
51
- - No jargon required
52
- - Specific, not abstract
53
-
54
- **Specificity**
55
- - Numbers over adjectives
56
- - Outcomes over features
57
- - Examples over generalizations
58
-
59
- **Credibility**
60
- - Backed by proof
61
- - Realistic claims
62
- - Third-party validation
63
-
64
- **Differentiation**
65
- - Unique vs competitors
66
- - Ownable position
67
- - Clear alternative
68
-
69
- ## Scoring Rubric
70
-
71
- | Score | Description |
72
- |-------|-------------|
73
- | 90-100 | Exceptional - all components strong, differentiated |
74
- | 70-89 | Good - most components present, some gaps |
75
- | 50-69 | Adequate - basic value prop, weak differentiation |
76
- | 30-49 | Poor - unclear or missing key components |
77
- | 0-29 | Failed - no clear value proposition |
78
-
79
- ## Output
80
-
81
- ```yaml
82
- value_prop_score: 78
83
- headline_analysis:
84
- text: "AI That Understands Banking"
85
- clarity: 85
86
- specificity: 70
87
- differentiation: 80
88
- issues:
89
- - "Could be more specific about outcomes"
90
- components:
91
- what:
92
- present: true
93
- score: 80
94
- evidence: "AI-powered platform"
95
- who:
96
- present: true
97
- score: 85
98
- evidence: "Banks and credit unions"
99
- why:
100
- present: true
101
- score: 70
102
- evidence: "Benefits mentioned but not quantified"
103
- how:
104
- present: false
105
- score: 40
106
- evidence: "Differentiation unclear"
107
- recommendations:
108
- - priority: "high"
109
- issue: "Missing differentiation"
110
- suggestion: "Add 'Only AI trained on 10,000+ banking regulations'"
111
- - priority: "medium"
112
- issue: "Vague benefits"
113
- suggestion: "Quantify outcomes: 'Reduce call volume 40%'"
114
- ```
@@ -1,93 +0,0 @@
1
- worker:
2
- id: content-sales
3
- name: "Content Worker - Conversion Copy"
4
- type: ContentWorker
5
- version: "1.0"
6
-
7
- execution:
8
- mode: on_demand
9
- max_runtime: 5m
10
-
11
- context:
12
- base:
13
- - workers/public/content-sales/
14
- - workers/public/content-shared/
15
- - companies/example-company/knowledge/verticals/
16
- - companies/example-company/knowledge/campaign-playbook.md
17
- exclude:
18
- - node_modules/
19
- - dist/
20
-
21
- output:
22
- destination: workspace/reports/content/
23
- format: markdown
24
- naming: "{date}-content-sales-{page}.md"
25
-
26
- skills:
27
- - conversion-analysis
28
- - cta-audit
29
- - value-prop-check
30
-
31
- instructions: |
32
- Conversion Copy Analyst for ExampleCo
33
-
34
- Purpose: Analyze content for conversion optimization, CTA effectiveness, and value proposition clarity.
35
-
36
- ## Analysis Process
37
- 1. Load page content from content/ directory
38
- 2. Identify conversion goals for page type
39
- 3. Audit CTAs, value props, and persuasion elements
40
- 4. Score and recommend improvements
41
-
42
- ## Page Conversion Goals
43
- - Homepage: Demo request, explore products
44
- - Product pages: Feature understanding, demo request
45
- - Solutions pages: Vertical-specific demo, case study download
46
- - Pricing: Plan selection, sales contact
47
- - Resources: Content download, newsletter signup
48
-
49
- ## Scoring Categories
50
- - CTA effectiveness (0-100): Clear, compelling, well-placed
51
- - Value proposition clarity (0-100): Benefits clear, differentiated
52
- - Persuasion elements (0-100): Social proof, urgency, trust
53
- - Conversion path (0-100): Clear journey, low friction
54
-
55
- ## CTA Analysis Criteria
56
- - Visibility: Above fold, contrasting, prominent
57
- - Clarity: Action clear, outcome stated
58
- - Motivation: Benefit-driven, low friction
59
- - Placement: Strategic, contextual
60
- - Quantity: Not overwhelming, appropriate density
61
-
62
- ## Value Proposition Checklist
63
- - [ ] Clear what product does
64
- - [ ] Clear who it's for
65
- - [ ] Specific benefits stated
66
- - [ ] Differentiation from alternatives
67
- - [ ] Proof to support claims
68
-
69
- ## Persuasion Elements
70
- - Social proof (testimonials, logos, stats)
71
- - Authority (certifications, awards, press)
72
- - Scarcity/urgency (when appropriate)
73
- - Risk reversal (guarantees, trials)
74
- - Reciprocity (free resources, tools)
75
-
76
- ## Red Flags
77
- - CTAs below fold only
78
- - Generic CTA text ("Submit", "Click here")
79
- - Missing value proposition
80
- - No social proof
81
- - Friction in conversion path
82
- - Too many competing CTAs
83
-
84
- ## Output
85
- Generate markdown report with:
86
- - Conversion optimization score
87
- - CTA inventory and ratings
88
- - Value prop assessment
89
- - Prioritized recommendations
90
-
91
- ## Knowledge Dependencies
92
- - verticals/: Audience-specific messaging
93
- - campaign-playbook.md: Campaign and conversion strategy
@@ -1,242 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Content Analysis CLI
4
- * Entry point for running content analysis from command line
5
- *
6
- * Usage: npx content-analyze <page-path> [options]
7
- *
8
- * Options:
9
- * --report Generate markdown report
10
- * --issues Create GitHub issues (dry-run by default)
11
- * --cms Submit to CMS
12
- * --worker Which worker analysis (brand|sales|product|legal|all)
13
- * --output Output directory
14
- * --live Disable dry-run mode (actually create issues/submit to CMS)
15
- * --high-only Only process high-priority items
16
- * --max Maximum issues to create (default: 10)
17
- */
18
-
19
- import * as fs from 'node:fs';
20
- import * as path from 'node:path';
21
- import { parsePageFile } from './lib/parser.js';
22
- import { analyzePageFull, type AnalysisConfig } from './lib/analyze.js';
23
- import { generateSuggestions } from './lib/recommendations.js';
24
- import {
25
- processAnalysisOutput,
26
- formatOutputResultJSON,
27
- type OutputConfig,
28
- } from './lib/output.js';
29
-
30
- // ============================================
31
- // CLI Argument Parsing
32
- // ============================================
33
-
34
- interface CLIArgs {
35
- pagePath: string;
36
- report: boolean;
37
- issues: boolean;
38
- cms: boolean;
39
- worker: 'brand' | 'sales' | 'product' | 'legal' | 'all';
40
- output: string;
41
- live: boolean;
42
- highOnly: boolean;
43
- max: number;
44
- help: boolean;
45
- version: boolean;
46
- }
47
-
48
- function parseArgs(args: string[]): CLIArgs {
49
- const result: CLIArgs = {
50
- pagePath: '',
51
- report: true,
52
- issues: false,
53
- cms: false,
54
- worker: 'all',
55
- output: 'workspace/reports/content',
56
- live: false,
57
- highOnly: false,
58
- max: 10,
59
- help: false,
60
- version: false,
61
- };
62
-
63
- for (let i = 0; i < args.length; i++) {
64
- const arg = args[i];
65
-
66
- if (arg === '--help' || arg === '-h') {
67
- result.help = true;
68
- } else if (arg === '--version' || arg === '-v') {
69
- result.version = true;
70
- } else if (arg === '--report') {
71
- result.report = true;
72
- } else if (arg === '--issues') {
73
- result.issues = true;
74
- } else if (arg === '--cms') {
75
- result.cms = true;
76
- } else if (arg === '--live') {
77
- result.live = true;
78
- } else if (arg === '--high-only') {
79
- result.highOnly = true;
80
- } else if (arg === '--worker' && args[i + 1]) {
81
- const worker = args[++i] as CLIArgs['worker'];
82
- if (['brand', 'sales', 'product', 'legal', 'all'].includes(worker)) {
83
- result.worker = worker;
84
- }
85
- } else if (arg === '--output' && args[i + 1]) {
86
- result.output = args[++i];
87
- } else if (arg === '--max' && args[i + 1]) {
88
- result.max = parseInt(args[++i], 10) || 10;
89
- } else if (!arg.startsWith('-') && !result.pagePath) {
90
- result.pagePath = arg;
91
- }
92
- }
93
-
94
- return result;
95
- }
96
-
97
- function printHelp(): void {
98
- console.log(`
99
- Content Analysis CLI
100
-
101
- Usage:
102
- npx content-analyze <page-path> [options]
103
- content-analyze <page-path> [options]
104
-
105
- Arguments:
106
- page-path Path to page JSON file (from content extraction)
107
-
108
- Options:
109
- --report Generate markdown report (default: true)
110
- --issues Create GitHub issues (dry-run by default)
111
- --cms Submit to CMS
112
- --worker Which analysis to run: brand|sales|product|legal|all (default: all)
113
- --output Output directory (default: workspace/reports/content)
114
- --live Disable dry-run mode (actually create issues/submit)
115
- --high-only Only process high-priority items
116
- --max N Maximum issues to create (default: 10)
117
- --help, -h Show this help message
118
- --version, -v Show version
119
-
120
- Examples:
121
- # Analyze a page and generate report
122
- npx content-analyze ./pages/home.json
123
-
124
- # Analyze with GitHub issues (dry run)
125
- npx content-analyze ./pages/pricing.json --issues
126
-
127
- # Full analysis with CMS submission (live)
128
- npx content-analyze ./pages/about.json --issues --cms --live
129
-
130
- # Brand-only analysis
131
- npx content-analyze ./pages/home.json --worker brand
132
-
133
- # High priority only with custom output
134
- npx content-analyze ./pages/home.json --high-only --output ./reports
135
- `);
136
- }
137
-
138
- function printVersion(): void {
139
- console.log('@hq/content-shared v1.0.0');
140
- }
141
-
142
- // ============================================
143
- // Main CLI Entry Point
144
- // ============================================
145
-
146
- async function main(): Promise<void> {
147
- const args = parseArgs(process.argv.slice(2));
148
-
149
- if (args.help) {
150
- printHelp();
151
- process.exit(0);
152
- }
153
-
154
- if (args.version) {
155
- printVersion();
156
- process.exit(0);
157
- }
158
-
159
- if (!args.pagePath) {
160
- console.error('Error: Page path is required');
161
- console.error('Run with --help for usage information');
162
- process.exit(1);
163
- }
164
-
165
- // Resolve and validate page path
166
- const pagePath = path.resolve(args.pagePath);
167
- if (!fs.existsSync(pagePath)) {
168
- console.error(`Error: File not found: ${pagePath}`);
169
- process.exit(1);
170
- }
171
-
172
- console.log(`[CLI] Analyzing: ${pagePath}`);
173
- console.log(`[CLI] Worker: ${args.worker}`);
174
- console.log(`[CLI] Mode: ${args.live ? 'LIVE' : 'dry-run'}`);
175
- console.log('');
176
-
177
- try {
178
- // 1. Parse page content
179
- console.log('[1/4] Parsing page content...');
180
- const pageContent = await parsePageFile(pagePath);
181
-
182
- // 2. Configure analysis based on worker type
183
- const analysisConfig: AnalysisConfig = {
184
- enableBrand: args.worker === 'all' || args.worker === 'brand',
185
- enableConversion: args.worker === 'all' || args.worker === 'sales',
186
- enableAccuracy: args.worker === 'all' || args.worker === 'product',
187
- enableCompliance: args.worker === 'all' || args.worker === 'legal',
188
- };
189
-
190
- console.log('[2/4] Running analysis...');
191
- const analysis = analyzePageFull(pageContent, analysisConfig);
192
-
193
- // 3. Generate suggestions
194
- console.log('[3/4] Generating suggestions...');
195
- const suggestions = generateSuggestions(analysis);
196
- console.log(` Found ${suggestions.length} suggestions`);
197
-
198
- // 4. Process outputs
199
- console.log('[4/4] Processing outputs...');
200
- const outputConfig: Partial<OutputConfig> = {
201
- reportPath: args.output,
202
- workerName: `content-${args.worker}`,
203
- enableGitHub: args.issues,
204
- enableCMS: args.cms,
205
- maxIssues: args.max,
206
- highPriorityOnly: args.highOnly,
207
- dryRun: !args.live,
208
- };
209
-
210
- const result = await processAnalysisOutput(analysis, outputConfig);
211
-
212
- // Print results
213
- console.log('');
214
- console.log('=== Results ===');
215
- console.log(`Report: ${result.reportPath || 'Not generated'}`);
216
- console.log(`GitHub Issues: ${result.issuesCreated}`);
217
- console.log(`CMS Submissions: ${result.suggestionsSubmitted}`);
218
-
219
- if (result.errors.length > 0) {
220
- console.log('');
221
- console.log('Errors:');
222
- for (const error of result.errors) {
223
- console.log(` - ${error}`);
224
- }
225
- }
226
-
227
- // Output JSON for worker integration
228
- console.log('');
229
- console.log('=== JSON Output ===');
230
- console.log(JSON.stringify(formatOutputResultJSON(result), null, 2));
231
-
232
- } catch (error) {
233
- console.error('Error:', error instanceof Error ? error.message : 'Unknown error');
234
- process.exit(1);
235
- }
236
- }
237
-
238
- // Run if executed directly
239
- main().catch(error => {
240
- console.error('Fatal error:', error);
241
- process.exit(1);
242
- });