create-hq 5.1.0 → 5.2.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 (299) hide show
  1. package/dist/deps.d.ts +2 -2
  2. package/dist/deps.d.ts.map +1 -1
  3. package/dist/deps.js +138 -29
  4. package/dist/deps.js.map +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/scaffold.d.ts.map +1 -1
  7. package/dist/scaffold.js +16 -26
  8. package/dist/scaffold.js.map +1 -1
  9. package/dist/ui.js +1 -1
  10. package/package.json +3 -6
  11. package/template/.claude/CLAUDE.md +0 -202
  12. package/template/.claude/commands/checkpoint.md +0 -127
  13. package/template/.claude/commands/cleanup.md +0 -307
  14. package/template/.claude/commands/execute-task.md +0 -440
  15. package/template/.claude/commands/exit-plan.md +0 -41
  16. package/template/.claude/commands/handoff.md +0 -97
  17. package/template/.claude/commands/learn.md +0 -218
  18. package/template/.claude/commands/metrics.md +0 -118
  19. package/template/.claude/commands/newworker.md +0 -162
  20. package/template/.claude/commands/nexttask.md +0 -67
  21. package/template/.claude/commands/prd.md +0 -238
  22. package/template/.claude/commands/reanchor.md +0 -51
  23. package/template/.claude/commands/remember.md +0 -126
  24. package/template/.claude/commands/run-project.md +0 -348
  25. package/template/.claude/commands/run.md +0 -110
  26. package/template/.claude/commands/search-reindex.md +0 -62
  27. package/template/.claude/commands/search.md +0 -100
  28. package/template/.claude/commands/setup.md +0 -381
  29. package/template/.claude/scripts/pure-ralph-loop.ps1 +0 -312
  30. package/template/.claude/scripts/pure-ralph-loop.sh +0 -859
  31. package/template/CHANGELOG.md +0 -220
  32. package/template/LICENSE +0 -21
  33. package/template/MIGRATION.md +0 -259
  34. package/template/README.md +0 -368
  35. package/template/data/journal/.gitkeep +0 -0
  36. package/template/docs/images/ascii-banner-options.md +0 -122
  37. package/template/docs/images/hq-banner.svg +0 -105
  38. package/template/knowledge/Ralph/01-overview.md +0 -71
  39. package/template/knowledge/Ralph/02-core-concepts.md +0 -114
  40. package/template/knowledge/Ralph/03-how-ralph-works.md +0 -184
  41. package/template/knowledge/Ralph/04-back-pressure.md +0 -222
  42. package/template/knowledge/Ralph/05-specifications.md +0 -210
  43. package/template/knowledge/Ralph/06-agents-md.md +0 -222
  44. package/template/knowledge/Ralph/07-implementation.md +0 -316
  45. package/template/knowledge/Ralph/08-economics.md +0 -182
  46. package/template/knowledge/Ralph/09-resources.md +0 -145
  47. package/template/knowledge/Ralph/10-claude-code-workflow.md +0 -212
  48. package/template/knowledge/Ralph/11-team-training-guide.md +0 -383
  49. package/template/knowledge/Ralph/README.md +0 -40
  50. package/template/knowledge/ai-security-framework/CONTRIBUTING.md +0 -139
  51. package/template/knowledge/ai-security-framework/GLOSSARY.md +0 -176
  52. package/template/knowledge/ai-security-framework/LICENSE +0 -21
  53. package/template/knowledge/ai-security-framework/QUICK-START.md +0 -172
  54. package/template/knowledge/ai-security-framework/README.md +0 -232
  55. package/template/knowledge/ai-security-framework/checklists/browser-security.md +0 -301
  56. package/template/knowledge/ai-security-framework/checklists/credential-isolation.md +0 -322
  57. package/template/knowledge/ai-security-framework/checklists/incident-response.md +0 -288
  58. package/template/knowledge/ai-security-framework/checklists/pre-flight.md +0 -249
  59. package/template/knowledge/ai-security-framework/checklists/weekly-audit.md +0 -159
  60. package/template/knowledge/ai-security-framework/configs/audit-logging.md +0 -372
  61. package/template/knowledge/ai-security-framework/configs/kill-switches.md +0 -354
  62. package/template/knowledge/ai-security-framework/docs/01-core-principles.md +0 -256
  63. package/template/knowledge/ai-security-framework/docs/02-threat-landscape.md +0 -326
  64. package/template/knowledge/ai-security-framework/docs/03-security-posture.md +0 -250
  65. package/template/knowledge/ai-security-framework/templates/agents-security.md +0 -233
  66. package/template/knowledge/design-styles/README.md +0 -42
  67. package/template/knowledge/design-styles/american-industrial.md +0 -136
  68. package/template/knowledge/design-styles/ethereal-abstract.md +0 -133
  69. package/template/knowledge/design-styles/liminal-portal.md +0 -111
  70. package/template/knowledge/design-styles/swipes/american-industrial/G-3m4YPW0AADdu2.jpeg +0 -0
  71. package/template/knowledge/design-styles/swipes/american-industrial/G-JJlt5WwAABK3K.png +0 -0
  72. package/template/knowledge/design-styles/swipes/american-industrial/G-JJmj5W0AEbJ-7.png +0 -0
  73. package/template/knowledge/design-styles/swipes/american-industrial/G59fgNuXkAAKLJQ (1).jpeg +0 -0
  74. package/template/knowledge/design-styles/swipes/american-industrial/G59fgNuXkAAKLJQ.jpeg +0 -0
  75. package/template/knowledge/design-styles/swipes/american-industrial/G7fVkn3WEAAM-ST.jpeg +0 -0
  76. package/template/knowledge/design-styles/swipes/american-industrial/G8ECO5JWEAIksyn.png +0 -0
  77. package/template/knowledge/design-styles/swipes/american-industrial/G9-3GQSWoAA8eqZ.png +0 -0
  78. package/template/knowledge/design-styles/swipes/american-industrial/G9xEOqrXkAEZRcs.png +0 -0
  79. package/template/knowledge/design-styles/swipes/american-industrial/G_MVeJrXQAA8sx4.jpeg +0 -0
  80. package/template/knowledge/design-styles/swipes/american-industrial/G_RSkmGXkAAgAVZ.png +0 -0
  81. package/template/knowledge/design-styles/swipes/american-industrial/README.md +0 -31
  82. package/template/knowledge/design-styles/swipes/american-industrial/qyqtg7Dq.png +0 -0
  83. package/template/knowledge/dev-team/README.md +0 -35
  84. package/template/knowledge/dev-team/patterns/README.md +0 -34
  85. package/template/knowledge/dev-team/patterns/frontend/react-best-practices.md +0 -178
  86. package/template/knowledge/dev-team/troubleshooting/README.md +0 -31
  87. package/template/knowledge/dev-team/workflows/README.md +0 -49
  88. package/template/knowledge/hq/checkpoint-schema.json +0 -51
  89. package/template/knowledge/hq/index-md-spec.md +0 -74
  90. package/template/knowledge/hq/thread-schema.md +0 -153
  91. package/template/knowledge/hq-core/checkpoint-schema.json +0 -51
  92. package/template/knowledge/hq-core/index-md-spec.md +0 -74
  93. package/template/knowledge/hq-core/thread-schema.md +0 -153
  94. package/template/knowledge/loom/README.md +0 -51
  95. package/template/knowledge/loom/architecture.md +0 -125
  96. package/template/knowledge/loom/code-style.md +0 -169
  97. package/template/knowledge/loom/llm-proxy.md +0 -132
  98. package/template/knowledge/loom/state-machine.md +0 -131
  99. package/template/knowledge/loom/thread-system.md +0 -117
  100. package/template/knowledge/loom/tools.md +0 -94
  101. package/template/knowledge/loom/weaver.md +0 -96
  102. package/template/knowledge/loom/web-frontend.md +0 -131
  103. package/template/knowledge/projects/README.md +0 -72
  104. package/template/knowledge/projects/templates/README.template.md +0 -28
  105. package/template/knowledge/workers/README.md +0 -195
  106. package/template/knowledge/workers/ralph-loop-pattern.md +0 -157
  107. package/template/knowledge/workers/skill-schema.md +0 -182
  108. package/template/knowledge/workers/state-machine.md +0 -102
  109. package/template/knowledge/workers/templates/base-worker.yaml +0 -73
  110. package/template/knowledge/workers/templates/code-worker.yaml +0 -85
  111. package/template/knowledge/workers/templates/skill.yaml +0 -49
  112. package/template/knowledge/workers/templates/social-worker.yaml +0 -70
  113. package/template/modules/examples/full-manifest.yaml +0 -92
  114. package/template/modules/examples/minimal.yaml +0 -14
  115. package/template/modules/modules.yaml +0 -59
  116. package/template/projects/.gitkeep +0 -0
  117. package/template/projects/incorporate-workers-into-pure-ralph/prd.json +0 -88
  118. package/template/projects/pure-ralph-branch-isolation/README.md +0 -114
  119. package/template/projects/pure-ralph-branch-isolation/prd.json +0 -123
  120. package/template/projects/purist-ralph-loop/README.md +0 -148
  121. package/template/projects/purist-ralph-loop/prd.json +0 -135
  122. package/template/projects/ralph-test/prd.json +0 -50
  123. package/template/prompts/pure-ralph-base.md +0 -551
  124. package/template/settings/.gitkeep +0 -0
  125. package/template/settings/pure-ralph.json +0 -42
  126. package/template/social-content/drafts/INDEX.md +0 -21
  127. package/template/social-content/drafts/linkedin/.gitkeep +0 -1
  128. package/template/social-content/drafts/x/.gitkeep +0 -1
  129. package/template/social-content/images/.gitkeep +0 -1
  130. package/template/starter-projects/code-worker/README.md +0 -97
  131. package/template/starter-projects/code-worker/prd.json +0 -45
  132. package/template/starter-projects/personal-assistant/README.md +0 -42
  133. package/template/starter-projects/personal-assistant/prd.json +0 -43
  134. package/template/starter-projects/social-media/README.md +0 -60
  135. package/template/starter-projects/social-media/prd.json +0 -43
  136. package/template/workers/content-brand/README.md +0 -59
  137. package/template/workers/content-brand/skills/messaging-alignment.md +0 -91
  138. package/template/workers/content-brand/skills/tone-check.md +0 -76
  139. package/template/workers/content-brand/skills/voice-analysis.md +0 -68
  140. package/template/workers/content-brand/worker.yaml +0 -81
  141. package/template/workers/content-legal/README.md +0 -80
  142. package/template/workers/content-legal/skills/claim-substantiation.md +0 -150
  143. package/template/workers/content-legal/skills/compliance-scan.md +0 -123
  144. package/template/workers/content-legal/skills/disclaimer-check.md +0 -146
  145. package/template/workers/content-legal/worker.yaml +0 -118
  146. package/template/workers/content-product/README.md +0 -77
  147. package/template/workers/content-product/skills/claim-verification.md +0 -96
  148. package/template/workers/content-product/skills/feature-accuracy.md +0 -117
  149. package/template/workers/content-product/skills/stats-check.md +0 -128
  150. package/template/workers/content-product/worker.yaml +0 -97
  151. package/template/workers/content-sales/README.md +0 -70
  152. package/template/workers/content-sales/skills/conversion-analysis.md +0 -96
  153. package/template/workers/content-sales/skills/cta-audit.md +0 -107
  154. package/template/workers/content-sales/skills/value-prop-check.md +0 -114
  155. package/template/workers/content-sales/worker.yaml +0 -93
  156. package/template/workers/content-shared/cli.ts +0 -242
  157. package/template/workers/content-shared/index.ts +0 -234
  158. package/template/workers/content-shared/lib/accuracy-analyzer.ts +0 -661
  159. package/template/workers/content-shared/lib/analyze.ts +0 -370
  160. package/template/workers/content-shared/lib/brand-analyzer.ts +0 -526
  161. package/template/workers/content-shared/lib/cms-integration.ts +0 -446
  162. package/template/workers/content-shared/lib/compliance-analyzer.ts +0 -655
  163. package/template/workers/content-shared/lib/conversion-analyzer.ts +0 -555
  164. package/template/workers/content-shared/lib/github-integration.ts +0 -582
  165. package/template/workers/content-shared/lib/output.ts +0 -373
  166. package/template/workers/content-shared/lib/parser.ts +0 -771
  167. package/template/workers/content-shared/lib/priority.ts +0 -439
  168. package/template/workers/content-shared/lib/recommendations.ts +0 -512
  169. package/template/workers/content-shared/lib/reporter.ts +0 -749
  170. package/template/workers/content-shared/lib/restructure.ts +0 -664
  171. package/template/workers/content-shared/lib/scorer.ts +0 -140
  172. package/template/workers/content-shared/lib/types.ts +0 -227
  173. package/template/workers/content-shared/lib/variants.ts +0 -595
  174. package/template/workers/content-shared/package.json +0 -51
  175. package/template/workers/content-shared/pnpm-lock.yaml +0 -39
  176. package/template/workers/content-shared/test/sample-page.json +0 -115
  177. package/template/workers/content-shared/tsconfig.json +0 -20
  178. package/template/workers/dev-team/README.md +0 -166
  179. package/template/workers/dev-team/_template.yaml +0 -70
  180. package/template/workers/dev-team/architect/package.json +0 -27
  181. package/template/workers/dev-team/architect/skills/api-design.md +0 -89
  182. package/template/workers/dev-team/architect/skills/refactor-plan.md +0 -96
  183. package/template/workers/dev-team/architect/skills/system-design.md +0 -100
  184. package/template/workers/dev-team/architect/src/index.ts +0 -49
  185. package/template/workers/dev-team/architect/src/mcp-server.ts +0 -122
  186. package/template/workers/dev-team/architect/src/skills/api-design.ts +0 -316
  187. package/template/workers/dev-team/architect/src/skills/refactor-plan.ts +0 -264
  188. package/template/workers/dev-team/architect/src/skills/system-design.ts +0 -212
  189. package/template/workers/dev-team/architect/tsconfig.json +0 -19
  190. package/template/workers/dev-team/architect/worker.yaml +0 -128
  191. package/template/workers/dev-team/backend-dev/package-lock.json +0 -1252
  192. package/template/workers/dev-team/backend-dev/package.json +0 -27
  193. package/template/workers/dev-team/backend-dev/skills/implement-endpoint.md +0 -70
  194. package/template/workers/dev-team/backend-dev/skills/implement-service.md +0 -62
  195. package/template/workers/dev-team/backend-dev/src/index.ts +0 -51
  196. package/template/workers/dev-team/backend-dev/src/mcp-server.ts +0 -109
  197. package/template/workers/dev-team/backend-dev/src/skills/implement-endpoint.ts +0 -122
  198. package/template/workers/dev-team/backend-dev/src/skills/implement-service.ts +0 -126
  199. package/template/workers/dev-team/backend-dev/tsconfig.json +0 -19
  200. package/template/workers/dev-team/backend-dev/worker.yaml +0 -128
  201. package/template/workers/dev-team/code-reviewer/package-lock.json +0 -1080
  202. package/template/workers/dev-team/code-reviewer/package.json +0 -24
  203. package/template/workers/dev-team/code-reviewer/skills/merge-to-production.md +0 -61
  204. package/template/workers/dev-team/code-reviewer/skills/merge-to-staging.md +0 -54
  205. package/template/workers/dev-team/code-reviewer/skills/request-changes.md +0 -63
  206. package/template/workers/dev-team/code-reviewer/skills/review-pr.md +0 -77
  207. package/template/workers/dev-team/code-reviewer/src/index.ts +0 -56
  208. package/template/workers/dev-team/code-reviewer/src/mcp-server.ts +0 -101
  209. package/template/workers/dev-team/code-reviewer/tsconfig.json +0 -19
  210. package/template/workers/dev-team/code-reviewer/worker.yaml +0 -90
  211. package/template/workers/dev-team/database-dev/package.json +0 -22
  212. package/template/workers/dev-team/database-dev/skills/create-schema.md +0 -48
  213. package/template/workers/dev-team/database-dev/src/index.ts +0 -50
  214. package/template/workers/dev-team/database-dev/src/mcp-server.ts +0 -76
  215. package/template/workers/dev-team/database-dev/tsconfig.json +0 -18
  216. package/template/workers/dev-team/database-dev/worker.yaml +0 -90
  217. package/template/workers/dev-team/frontend-dev/package.json +0 -22
  218. package/template/workers/dev-team/frontend-dev/skills/create-component.md +0 -26
  219. package/template/workers/dev-team/frontend-dev/src/index.ts +0 -50
  220. package/template/workers/dev-team/frontend-dev/src/mcp-server.ts +0 -77
  221. package/template/workers/dev-team/frontend-dev/tsconfig.json +0 -18
  222. package/template/workers/dev-team/frontend-dev/worker.yaml +0 -132
  223. package/template/workers/dev-team/infra-dev/package.json +0 -24
  224. package/template/workers/dev-team/infra-dev/skills/add-monitoring.md +0 -73
  225. package/template/workers/dev-team/infra-dev/skills/configure-deployment.md +0 -80
  226. package/template/workers/dev-team/infra-dev/skills/create-dockerfile.md +0 -62
  227. package/template/workers/dev-team/infra-dev/skills/setup-cicd.md +0 -63
  228. package/template/workers/dev-team/infra-dev/src/index.ts +0 -55
  229. package/template/workers/dev-team/infra-dev/src/mcp-server.ts +0 -82
  230. package/template/workers/dev-team/infra-dev/tsconfig.json +0 -19
  231. package/template/workers/dev-team/infra-dev/worker.yaml +0 -92
  232. package/template/workers/dev-team/knowledge-curator/package.json +0 -24
  233. package/template/workers/dev-team/knowledge-curator/skills/curate-troubleshooting.md +0 -63
  234. package/template/workers/dev-team/knowledge-curator/skills/process-learnings.md +0 -61
  235. package/template/workers/dev-team/knowledge-curator/skills/sync-documentation.md +0 -76
  236. package/template/workers/dev-team/knowledge-curator/skills/update-patterns.md +0 -63
  237. package/template/workers/dev-team/knowledge-curator/src/index.ts +0 -53
  238. package/template/workers/dev-team/knowledge-curator/src/mcp-server.ts +0 -92
  239. package/template/workers/dev-team/knowledge-curator/tsconfig.json +0 -19
  240. package/template/workers/dev-team/knowledge-curator/worker.yaml +0 -80
  241. package/template/workers/dev-team/motion-designer/package.json +0 -22
  242. package/template/workers/dev-team/motion-designer/skills/add-animation.md +0 -25
  243. package/template/workers/dev-team/motion-designer/skills/generate-image.md +0 -36
  244. package/template/workers/dev-team/motion-designer/src/index.ts +0 -63
  245. package/template/workers/dev-team/motion-designer/src/mcp-server.ts +0 -79
  246. package/template/workers/dev-team/motion-designer/tsconfig.json +0 -18
  247. package/template/workers/dev-team/motion-designer/worker.yaml +0 -84
  248. package/template/workers/dev-team/product-planner/queue.json +0 -4
  249. package/template/workers/dev-team/product-planner/worker.yaml +0 -220
  250. package/template/workers/dev-team/project-manager/package-lock.json +0 -1252
  251. package/template/workers/dev-team/project-manager/package.json +0 -27
  252. package/template/workers/dev-team/project-manager/skills/create-prd.md +0 -66
  253. package/template/workers/dev-team/project-manager/skills/next-issue.md +0 -51
  254. package/template/workers/dev-team/project-manager/skills/project-status.md +0 -59
  255. package/template/workers/dev-team/project-manager/skills/update-learnings.md +0 -65
  256. package/template/workers/dev-team/project-manager/src/index.ts +0 -54
  257. package/template/workers/dev-team/project-manager/src/mcp-server.ts +0 -207
  258. package/template/workers/dev-team/project-manager/src/skills/create-prd.ts +0 -86
  259. package/template/workers/dev-team/project-manager/src/skills/next-issue.ts +0 -137
  260. package/template/workers/dev-team/project-manager/src/skills/project-status.ts +0 -131
  261. package/template/workers/dev-team/project-manager/src/skills/update-learnings.ts +0 -94
  262. package/template/workers/dev-team/project-manager/tsconfig.json +0 -19
  263. package/template/workers/dev-team/project-manager/worker.yaml +0 -96
  264. package/template/workers/dev-team/qa-tester/package.json +0 -24
  265. package/template/workers/dev-team/qa-tester/skills/create-demo-account.md +0 -36
  266. package/template/workers/dev-team/qa-tester/skills/run-tests.md +0 -36
  267. package/template/workers/dev-team/qa-tester/skills/write-test.md +0 -27
  268. package/template/workers/dev-team/qa-tester/src/index.ts +0 -61
  269. package/template/workers/dev-team/qa-tester/src/mcp-server.ts +0 -88
  270. package/template/workers/dev-team/qa-tester/tsconfig.json +0 -18
  271. package/template/workers/dev-team/qa-tester/worker.yaml +0 -116
  272. package/template/workers/dev-team/task-executor/package-lock.json +0 -1252
  273. package/template/workers/dev-team/task-executor/package.json +0 -27
  274. package/template/workers/dev-team/task-executor/skills/analyze-issue.md +0 -101
  275. package/template/workers/dev-team/task-executor/skills/execute.md +0 -133
  276. package/template/workers/dev-team/task-executor/skills/report-learnings.md +0 -106
  277. package/template/workers/dev-team/task-executor/skills/validate-completion.md +0 -121
  278. package/template/workers/dev-team/task-executor/src/index.ts +0 -54
  279. package/template/workers/dev-team/task-executor/src/mcp-server.ts +0 -139
  280. package/template/workers/dev-team/task-executor/src/skills/analyze-issue.ts +0 -219
  281. package/template/workers/dev-team/task-executor/src/skills/execute.ts +0 -132
  282. package/template/workers/dev-team/task-executor/src/skills/report-learnings.ts +0 -119
  283. package/template/workers/dev-team/task-executor/src/skills/validate-completion.ts +0 -142
  284. package/template/workers/dev-team/task-executor/tsconfig.json +0 -19
  285. package/template/workers/dev-team/task-executor/worker.yaml +0 -110
  286. package/template/workers/registry.yaml +0 -171
  287. package/template/workers/security-scanner/README.md +0 -73
  288. package/template/workers/security-scanner/skills/pre-deploy-check.md +0 -205
  289. package/template/workers/security-scanner/worker.yaml +0 -26
  290. package/template/workspace/checkpoints/.gitkeep +0 -0
  291. package/template/workspace/content-ideas/inbox.jsonl +0 -0
  292. package/template/workspace/drafts/.gitkeep +0 -0
  293. package/template/workspace/learnings/.gitkeep +0 -3
  294. package/template/workspace/orchestrator/.gitkeep +0 -0
  295. package/template/workspace/ralph-test/COMPLETE.md +0 -18
  296. package/template/workspace/ralph-test/hello.txt +0 -2
  297. package/template/workspace/reports/.gitkeep +0 -0
  298. package/template/workspace/scratch/.gitkeep +0 -0
  299. 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
- });