codymaster 4.1.3 → 4.3.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 (658) hide show
  1. package/CHANGELOG.md +22 -2
  2. package/README.md +54 -84
  3. package/dist/index.js +589 -510
  4. package/dist/ui/box.js +49 -0
  5. package/install.sh +2 -2
  6. package/package.json +3 -9
  7. package/skills/AGENTS.md +61 -0
  8. package/skills/CLAUDE.md +158 -0
  9. package/skills/boxme-git-config/SKILL.md +56 -0
  10. package/skills/boxme-local-dev/SKILL.md +66 -0
  11. package/skills/build.sh +30 -0
  12. package/skills/cf +314 -0
  13. package/skills/cf 2 +313 -0
  14. package/skills/cm-ads-tracker/SKILL.md +364 -69
  15. package/skills/cm-auto-publisher/SKILL.md +81 -0
  16. package/skills/cm-booking-calendar/SKILL.md +521 -0
  17. package/skills/cm-booking-calendar/references/industry-patterns.md +527 -0
  18. package/skills/cm-booking-calendar/templates/booking-form.css +626 -0
  19. package/skills/cm-booking-calendar/templates/booking-form.html +477 -0
  20. package/skills/cm-booking-calendar/templates/calendar-engine.js +419 -0
  21. package/skills/cm-booking-calendar/templates/calendar-export.js +395 -0
  22. package/skills/cm-booking-calendar/templates/reminder-config.js +629 -0
  23. package/skills/cm-brainstorm-idea/SKILL.md +15 -24
  24. package/skills/cm-clean-code/SKILL.md +300 -0
  25. package/skills/cm-code-review/SKILL.md +0 -27
  26. package/skills/cm-codeintell/SKILL.md +598 -0
  27. package/skills/cm-content-factory/.content-factory-state.json +132 -0
  28. package/skills/cm-content-factory/.git 2/logs/refs/heads/main +1 -0
  29. package/skills/cm-content-factory/.git 2/logs/refs/remotes/origin/main +1 -0
  30. package/skills/cm-content-factory/.git 2/objects/02/fb0956734b5f8ba3f918b7defd04a89cfe0076 +0 -0
  31. package/skills/cm-content-factory/.git 2/objects/08/1e129d75dc6feac6c02037272e6bd1a04e3324 +0 -0
  32. package/skills/cm-content-factory/.git 2/objects/0c/5393416f3c5e01c9a655a802bff0dd52f76f0a +0 -0
  33. package/skills/cm-content-factory/.git 2/objects/10/0b9be46978a946a77188f68be725098a122001 +0 -0
  34. package/skills/cm-content-factory/.git 2/objects/10/cf041167fc9843610eb3d90259ef3396315fdc +0 -0
  35. package/skills/cm-content-factory/.git 2/objects/12/5e19538dd6e1338ffe74f6c4c165b00435bf48 +0 -0
  36. package/skills/cm-content-factory/.git 2/objects/16/a9b9d0088d5c1347628b45a2620b479d8ad57c +0 -0
  37. package/skills/cm-content-factory/.git 2/objects/17/8c2a9ef93c33ae4eec9d58e82321f9229843a1 +0 -0
  38. package/skills/cm-content-factory/.git 2/objects/25/397ae41d09104d763bdcac2695209d85cdea89 +0 -0
  39. package/skills/cm-content-factory/.git 2/objects/2f/a836b7947f2d458e1f639788bf4bb0983a3305 +0 -0
  40. package/skills/cm-content-factory/.git 2/objects/3a/baaaf0a1c0909c0828335791557125fba911e0 +0 -0
  41. package/skills/cm-content-factory/.git 2/objects/42/2924221b81f5ce3c4e4daac9a64a24f9b01f9a +0 -0
  42. package/skills/cm-content-factory/.git 2/objects/42/ec0ce707447dc11446a34c9995fb8533801731 +0 -0
  43. package/skills/cm-content-factory/.git 2/objects/46/e43ce92866d56ce74b1d750db307cfe6154a15 +0 -0
  44. package/skills/cm-content-factory/.git 2/objects/48/5e41b633c63f55b8277bcc59f44f67681f671a +0 -0
  45. package/skills/cm-content-factory/.git 2/objects/49/49c596a3a89fa240642acd95dd3258e261eb09 +0 -0
  46. package/skills/cm-content-factory/.git 2/objects/50/9d42d8412ef8eaf7f7e138476bac2e4d10ce60 +0 -0
  47. package/skills/cm-content-factory/.git 2/objects/55/0c8c389d981b463ef849aeb792d8be3ccb6ec8 +0 -0
  48. package/skills/cm-content-factory/.git 2/objects/5d/82d3b18410cdda3ace3677436f0cb599dbe2d2 +0 -0
  49. package/skills/cm-content-factory/.git 2/objects/60/0617c58e871a38b33bf29e282d132bb3c381ad +0 -0
  50. package/skills/cm-content-factory/.git 2/objects/6a/8369a99c687b7245c92ffaf0e0f0dab9014504 +0 -0
  51. package/skills/cm-content-factory/.git 2/objects/79/bea435d40ab531c1aaf6be0432c6a5b7aaed21 +0 -0
  52. package/skills/cm-content-factory/.git 2/objects/7e/5ebd79251c2f14e4aceb86c74b6b6daae6b500 +0 -0
  53. package/skills/cm-content-factory/.git 2/objects/81/98a822a60178d6d5023ddb3e222cddf048742e +0 -0
  54. package/skills/cm-content-factory/.git 2/objects/86/0a0e1943dfe53411d2e499a1f16f46a96ef758 +0 -0
  55. package/skills/cm-content-factory/.git 2/objects/86/971fb55fdc081fdbae52376f0f13e57a4e9b04 +0 -0
  56. package/skills/cm-content-factory/.git 2/objects/88/b89dd609a0a03f8d4fe8bfde20d5b8fc1d326d +0 -0
  57. package/skills/cm-content-factory/.git 2/objects/90/8737edb6b7809e32cc01590b4e08ba42a9d40d +0 -0
  58. package/skills/cm-content-factory/.git 2/objects/93/d5a8a9a7d4fb7f11491cb596a6880528725118 +0 -0
  59. package/skills/cm-content-factory/.git 2/objects/98/46a2ab81d0c3b3eb00ef88fc56989aa7e9f316 +0 -0
  60. package/skills/cm-content-factory/.git 2/objects/9b/d8dd1e49cf274eaf9c555f3ab39dce7af5715e +0 -0
  61. package/skills/cm-content-factory/.git 2/objects/a1/13329fb0cec96ae78b222d33a24c3b5bc7fa1f +0 -0
  62. package/skills/cm-content-factory/.git 2/objects/a9/e6effe626e8a3aea3a8fc3364b492191c6e7d0 +0 -0
  63. package/skills/cm-content-factory/.git 2/objects/ad/6de7e48d9782cca9353d1ff0aa1aab7fe1df85 +0 -0
  64. package/skills/cm-content-factory/.git 2/objects/af/54ae316f771ff692e299ffcd8bf2f06b413b59 +0 -0
  65. package/skills/cm-content-factory/.git 2/objects/b0/4cb8b0b00dad633e731c1472161419e738d674 +0 -0
  66. package/skills/cm-content-factory/.git 2/objects/b3/094abb0b9ed46419b269e4a4e36a459690e3b0 +0 -0
  67. package/skills/cm-content-factory/.git 2/objects/b9/435c5d4baac2cfc5c83009ddd27b46b60db5f1 +0 -0
  68. package/skills/cm-content-factory/.git 2/objects/ba/5da17dbaec5ec2dcfdfd126aead518d1171d5c +0 -0
  69. package/skills/cm-content-factory/.git 2/objects/c0/bf58703aa258ba5dd63083bebaec8f223d844c +0 -0
  70. package/skills/cm-content-factory/.git 2/objects/c4/701a34edf1fc1bad58ccc57bd03f9426acb59a +0 -0
  71. package/skills/cm-content-factory/.git 2/objects/c7/5ccce9a4e5cc74d9b3174550cf6d993ca43638 +0 -0
  72. package/skills/cm-content-factory/.git 2/objects/c7/710d59b5a35b0f1f0a0399386643a0bd94c929 +0 -0
  73. package/skills/cm-content-factory/.git 2/objects/d1/fe58237112e953e5fec52da22cf38e08be3df9 +5 -0
  74. package/skills/cm-content-factory/.git 2/objects/d2/2bbe9fd2f74c95bc5583e803f5e435f1e2cd86 +0 -0
  75. package/skills/cm-content-factory/.git 2/objects/d7/e72852ea2bff74581dbf247d400120086229f4 +0 -0
  76. package/skills/cm-content-factory/.git 2/objects/d8/d4c3b5553e4fd72807e1d4b49ef07d9ef3ac35 +0 -0
  77. package/skills/cm-content-factory/.git 2/objects/dc/75050c2876f6a02ae2a53a3c886f395b622977 +0 -0
  78. package/skills/cm-content-factory/.git 2/objects/ee/e8546f95acec500187c08a28a8b9ee02db0dec +0 -0
  79. package/skills/cm-content-factory/.git 2/objects/ef/263c059208b416c2146434f10cb2b9fabcba16 +0 -0
  80. package/skills/cm-content-factory/.git 2/objects/f3/ae597e84d9a59b88acd21c99bde2eaf686d785 +0 -0
  81. package/skills/cm-content-factory/.git 2/objects/f3/f6f5673c821d3d8e76fa267a9e882e7a5387ea +0 -0
  82. package/skills/cm-content-factory/.git 2/objects/f9/6e6d0ad02624dd11d5848594d056caef7a5e8b +0 -0
  83. package/skills/cm-content-factory/.git 2/objects/ff/278988fc1edf0db3abcf18de795f4cc0b4f3e1 +0 -0
  84. package/skills/cm-content-factory/.git 2/refs/heads/main +1 -0
  85. package/skills/cm-content-factory/.git 2/refs/remotes/origin/main +1 -0
  86. package/skills/cm-content-factory/.pytest_cache 2/v/cache/nodeids +76 -0
  87. package/skills/cm-content-factory/.pytest_cache 2/v/cache/stepwise +1 -0
  88. package/skills/cm-content-factory/AGENTS.md +61 -0
  89. package/skills/cm-content-factory/CLAUDE.md +63 -0
  90. package/skills/cm-content-factory/CURSOR.md +43 -0
  91. package/skills/cm-content-factory/Content Factory.zip +0 -0
  92. package/skills/cm-content-factory/cf +313 -0
  93. package/skills/cm-content-factory/config.schema.json +397 -0
  94. package/skills/cm-content-factory/dashboard/app.js +556 -0
  95. package/skills/cm-content-factory/dashboard/index.html +397 -0
  96. package/skills/cm-content-factory/dashboard/style.css +1211 -0
  97. package/skills/cm-content-factory/examples/01-real-estate.config.json +146 -0
  98. package/skills/cm-content-factory/examples/02-personal-finance.config.json +146 -0
  99. package/skills/cm-content-factory/examples/03-health-wellness.config.json +147 -0
  100. package/skills/cm-content-factory/examples/04-saas-software.config.json +147 -0
  101. package/skills/cm-content-factory/examples/05-legal-services.config.json +147 -0
  102. package/skills/cm-content-factory/examples/06-insurance.config.json +146 -0
  103. package/skills/cm-content-factory/examples/07-ecommerce-dropship.config.json +146 -0
  104. package/skills/cm-content-factory/examples/08-online-education.config.json +147 -0
  105. package/skills/cm-content-factory/examples/09-crypto-defi.config.json +147 -0
  106. package/skills/cm-content-factory/examples/10-beauty-skincare.config.json +147 -0
  107. package/skills/cm-content-factory/examples/11-home-services.config.json +146 -0
  108. package/skills/cm-content-factory/examples/12-dental-clinic.config.json +147 -0
  109. package/skills/cm-content-factory/examples/13-pet-care.config.json +147 -0
  110. package/skills/cm-content-factory/examples/14-travel-hospitality.config.json +147 -0
  111. package/skills/cm-content-factory/examples/15-ai-automation.config.json +147 -0
  112. package/skills/cm-content-factory/examples/16-wedding-events.config.json +147 -0
  113. package/skills/cm-content-factory/examples/17-fitness-coaching.config.json +148 -0
  114. package/skills/cm-content-factory/examples/18-cybersecurity.config.json +147 -0
  115. package/skills/cm-content-factory/examples/19-food-restaurant.config.json +148 -0
  116. package/skills/cm-content-factory/examples/20-solar-energy.config.json +147 -0
  117. package/skills/cm-content-factory/examples/fitness-blog.config.json +116 -0
  118. package/skills/cm-content-factory/examples/tech-blog.config.json +107 -0
  119. package/skills/cm-content-factory/extensions/EXTENSION_GUIDE.md +72 -0
  120. package/skills/cm-content-factory/extensions/hooks.py +126 -0
  121. package/skills/cm-content-factory/extensions/openclaw_adapter.py +132 -0
  122. package/skills/cm-content-factory/landing/index.html +680 -0
  123. package/skills/cm-content-factory/landing/script.js +101 -0
  124. package/skills/cm-content-factory/landing/style.css +1216 -0
  125. package/skills/cm-content-factory/landing/translations.js +508 -0
  126. package/skills/cm-content-factory/logs/events.jsonl +11 -0
  127. package/skills/cm-content-factory/profiles/_template.profile.json +231 -0
  128. package/skills/cm-content-factory/profiles/finance.profile.json +278 -0
  129. package/skills/cm-content-factory/profiles/legal.profile.json +263 -0
  130. package/skills/cm-content-factory/profiles/medical-research.profile.json +321 -0
  131. package/skills/cm-content-factory/profiles/technology.profile.json +275 -0
  132. package/skills/cm-content-factory/scripts/agent_dispatcher.py +266 -0
  133. package/skills/cm-content-factory/scripts/audit.py +106 -0
  134. package/skills/cm-content-factory/scripts/dashboard_server.py +225 -0
  135. package/skills/cm-content-factory/scripts/deploy.py +146 -0
  136. package/skills/cm-content-factory/scripts/extract.py +132 -0
  137. package/skills/cm-content-factory/scripts/landing_generator.py +459 -0
  138. package/skills/cm-content-factory/scripts/memory.py +521 -0
  139. package/skills/cm-content-factory/scripts/monetize.py +239 -0
  140. package/skills/cm-content-factory/scripts/pipeline.py +357 -0
  141. package/skills/cm-content-factory/scripts/plan.py +163 -0
  142. package/skills/cm-content-factory/scripts/publish.py +145 -0
  143. package/skills/cm-content-factory/scripts/research.py +337 -0
  144. package/skills/cm-content-factory/scripts/scaffold.py +464 -0
  145. package/skills/cm-content-factory/scripts/scoreboard.py +336 -0
  146. package/skills/cm-content-factory/scripts/seo.py +90 -0
  147. package/skills/cm-content-factory/scripts/state_manager.py +320 -0
  148. package/skills/cm-content-factory/scripts/token_manager.py +268 -0
  149. package/skills/cm-content-factory/scripts/validate.py +221 -0
  150. package/skills/cm-content-factory/scripts/wizard.py +329 -0
  151. package/skills/cm-content-factory/scripts/write.py +93 -0
  152. package/skills/cm-content-factory/sites/docs-site/src/assets/houston.webp +0 -0
  153. package/skills/cm-content-factory/sites/docs-site/src/content/docs/architecture.md +90 -0
  154. package/skills/cm-content-factory/sites/docs-site/src/content/docs/data-flow.md +54 -0
  155. package/skills/cm-content-factory/sites/docs-site/src/content/docs/deployment.md +38 -0
  156. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/index.md +65 -0
  157. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/lc-content-lifecycle.md +48 -0
  158. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/seq-write-mode.md +39 -0
  159. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/uj-first-batch.md +42 -0
  160. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-content-pipeline.md +51 -0
  161. package/skills/cm-content-factory/sites/docs-site/src/content/docs/flows/wf-learning-cycle.md +52 -0
  162. package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/configuration.md +86 -0
  163. package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/installation.md +80 -0
  164. package/skills/cm-content-factory/sites/docs-site/src/content/docs/getting-started/intro.md +58 -0
  165. package/skills/cm-content-factory/sites/docs-site/src/content/docs/index.md +102 -0
  166. package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/index.md +45 -0
  167. package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/optimize-seo.md +29 -0
  168. package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/scale-content-production.md +55 -0
  169. package/skills/cm-content-factory/sites/docs-site/src/content/docs/jtbd/standardize-quality.md +29 -0
  170. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-cmo-huong.md +41 -0
  171. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/buyer-content-lead-khoa.md +40 -0
  172. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/index.md +56 -0
  173. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-content-manager-lan.md +46 -0
  174. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-seo-minh.md +45 -0
  175. package/skills/cm-content-factory/sites/docs-site/src/content/docs/personas/user-writer-tu.md +45 -0
  176. package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/content-pipeline.md +108 -0
  177. package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/index.md +22 -0
  178. package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/memory-system.md +52 -0
  179. package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/seo-optimization.md +58 -0
  180. package/skills/cm-content-factory/sites/docs-site/src/content/docs/sop/troubleshooting-guide.md +92 -0
  181. package/skills/cm-content-factory/sites/docs-site/src/styles/custom.css +575 -0
  182. package/skills/cm-content-factory/tests/conftest.py +66 -0
  183. package/skills/cm-content-factory/tests/test_agent_dispatcher.py +125 -0
  184. package/skills/cm-content-factory/tests/test_memory.py +128 -0
  185. package/skills/cm-content-factory/tests/test_pipeline.py +107 -0
  186. package/skills/cm-content-factory/tests/test_research.py +56 -0
  187. package/skills/cm-content-factory/tests/test_state_manager.py +131 -0
  188. package/skills/cm-content-factory/tests/test_token_manager.py +110 -0
  189. package/skills/cm-content-factory/tests/test_wizard.py +121 -0
  190. package/skills/cm-continuity/SKILL.md +7 -0
  191. package/skills/cm-cro-methodology/SKILL.md +290 -0
  192. package/skills/cm-dashboard/SKILL.md +7 -525
  193. package/skills/cm-debugging/SKILL.md +7 -116
  194. package/skills/cm-deep-search/SKILL.md +5 -1
  195. package/skills/cm-dockit/README.md +6 -15
  196. package/skills/cm-dockit/SKILL.md +20 -37
  197. package/skills/cm-execution/SKILL.md +6 -1
  198. package/skills/cm-frappe-agent/SKILL.md +134 -0
  199. package/skills/cm-frappe-agent/agents/doctype-architect.md +596 -0
  200. package/skills/cm-frappe-agent/agents/erpnext-customizer.md +643 -0
  201. package/skills/cm-frappe-agent/agents/frappe-backend.md +814 -0
  202. package/skills/cm-frappe-agent/agents/frappe-custom-frontend.md +557 -0
  203. package/skills/cm-frappe-agent/agents/frappe-debugger.md +625 -0
  204. package/skills/cm-frappe-agent/agents/frappe-fixer.md +275 -0
  205. package/skills/cm-frappe-agent/agents/frappe-frontend.md +660 -0
  206. package/skills/cm-frappe-agent/agents/frappe-installer.md +158 -0
  207. package/skills/cm-frappe-agent/agents/frappe-performance.md +307 -0
  208. package/skills/cm-frappe-agent/agents/frappe-planner.md +419 -0
  209. package/skills/cm-frappe-agent/agents/frappe-remote-ops.md +153 -0
  210. package/skills/cm-frappe-agent/agents/github-workflow.md +286 -0
  211. package/skills/cm-frappe-agent/commands/frappe-app.md +351 -0
  212. package/skills/cm-frappe-agent/commands/frappe-backend.md +162 -0
  213. package/skills/cm-frappe-agent/commands/frappe-bench.md +254 -0
  214. package/skills/cm-frappe-agent/commands/frappe-debug.md +263 -0
  215. package/skills/cm-frappe-agent/commands/frappe-doctype-create.md +272 -0
  216. package/skills/cm-frappe-agent/commands/frappe-doctype-field.md +310 -0
  217. package/skills/cm-frappe-agent/commands/frappe-erpnext.md +210 -0
  218. package/skills/cm-frappe-agent/commands/frappe-fix.md +59 -0
  219. package/skills/cm-frappe-agent/commands/frappe-frontend.md +210 -0
  220. package/skills/cm-frappe-agent/commands/frappe-fullstack.md +243 -0
  221. package/skills/cm-frappe-agent/commands/frappe-github.md +57 -0
  222. package/skills/cm-frappe-agent/commands/frappe-install.md +52 -0
  223. package/skills/cm-frappe-agent/commands/frappe-plan.md +442 -0
  224. package/skills/cm-frappe-agent/commands/frappe-remote.md +58 -0
  225. package/skills/cm-frappe-agent/commands/frappe-test.md +356 -0
  226. package/skills/cm-frappe-agent/docs/README.md +51 -0
  227. package/skills/cm-frappe-agent/docs/agents-catalog.md +113 -0
  228. package/skills/cm-frappe-agent/docs/architecture.md +149 -0
  229. package/skills/cm-frappe-agent/docs/commands-catalog.md +82 -0
  230. package/skills/cm-frappe-agent/docs/resources-catalog.md +66 -0
  231. package/skills/cm-frappe-agent/docs/sitemap-urls.txt +52 -0
  232. package/skills/cm-frappe-agent/docs/sitemap.md +81 -0
  233. package/skills/cm-frappe-agent/docs/sop/user-guide.md +178 -0
  234. package/skills/cm-frappe-agent/docs/sop/vibe-coding-guide.md +122 -0
  235. package/skills/cm-frappe-agent/resources/7-layer-architecture.md +985 -0
  236. package/skills/cm-frappe-agent/resources/bench_commands.md +73 -0
  237. package/skills/cm-frappe-agent/resources/code-patterns-guide.md +948 -0
  238. package/skills/cm-frappe-agent/resources/common_pitfalls.md +266 -0
  239. package/skills/cm-frappe-agent/resources/doctype-registry.md +158 -0
  240. package/skills/cm-frappe-agent/resources/installation-guide.md +289 -0
  241. package/skills/cm-frappe-agent/resources/rest-api-patterns.md +182 -0
  242. package/skills/cm-frappe-agent/resources/scaffold_checklist.md +82 -0
  243. package/skills/cm-frappe-agent/resources/upgrade_patterns.md +113 -0
  244. package/skills/cm-frappe-agent/resources/web-form-patterns.md +252 -0
  245. package/skills/cm-frappe-agent/skills/bench-commands/SKILL.md +621 -0
  246. package/skills/cm-frappe-agent/skills/client-scripts/SKILL.md +642 -0
  247. package/skills/cm-frappe-agent/skills/doctype-patterns/SKILL.md +576 -0
  248. package/skills/cm-frappe-agent/skills/frappe-api/SKILL.md +740 -0
  249. package/skills/cm-frappe-agent/skills/remote-operations/SKILL.md +47 -0
  250. package/skills/cm-frappe-agent/skills/server-scripts/SKILL.md +608 -0
  251. package/skills/cm-frappe-agent/skills/web-forms/SKILL.md +46 -0
  252. package/skills/cm-git-worktrees/SKILL.md +0 -7
  253. package/skills/cm-google-form/SKILL.md +266 -0
  254. package/skills/cm-google-form/templates/apps-script.js +55 -0
  255. package/skills/cm-google-form/templates/form-markup.html +110 -0
  256. package/skills/cm-google-form/templates/form-submit.js +201 -0
  257. package/skills/cm-google-form/templates/toast.css +152 -0
  258. package/skills/cm-growth-hacking/SKILL.md +293 -0
  259. package/skills/cm-growth-hacking/bottom-sheet-engine.md +261 -0
  260. package/skills/cm-growth-hacking/calendar-integration.md +264 -0
  261. package/skills/cm-growth-hacking/references/engagement-patterns.md +346 -0
  262. package/skills/cm-growth-hacking/templates/bottom-sheet.css +528 -0
  263. package/skills/cm-growth-hacking/templates/bottom-sheet.js +269 -0
  264. package/skills/cm-growth-hacking/templates/calendar-cta.js +213 -0
  265. package/skills/cm-growth-hacking/templates/tracking-events.js +211 -0
  266. package/skills/cm-growth-hacking/templates/trigger-manager.js +254 -0
  267. package/skills/cm-growth-hacking/tracking-events.md +246 -0
  268. package/skills/cm-growth-hacking/trigger-system.md +342 -0
  269. package/skills/cm-how-it-work/SKILL.md +20 -4
  270. package/skills/cm-identity-guard/SKILL.md +0 -11
  271. package/skills/cm-jtbd/SKILL.md +1 -1
  272. package/skills/cm-notebooklm/SKILL.md +172 -0
  273. package/skills/cm-notebooklm/references/command_reference.md +94 -0
  274. package/skills/cm-notebooklm/references/workflows.md +60 -0
  275. package/skills/cm-notebooklm/resources/knowledge_sources.md +106 -0
  276. package/skills/cm-notebooklm/scripts/brain-sync.sh +453 -0
  277. package/skills/cm-notebooklm/scripts/graduate_wisdom.py +101 -0
  278. package/skills/cm-planning/SKILL.md +39 -52
  279. package/skills/cm-project-bootstrap/SKILL.md +1307 -99
  280. package/skills/cm-quality-gate/SKILL.md +13 -106
  281. package/skills/cm-reactor/SKILL.md +274 -0
  282. package/skills/cm-safe-deploy/SKILL.md +415 -52
  283. package/skills/cm-safe-i18n/SKILL.md +1 -22
  284. package/skills/cm-secret-shield/SKILL.md +2 -2
  285. package/skills/cm-security-gate/SKILL.md +114 -0
  286. package/skills/cm-skill-chain/SKILL.md +2 -2
  287. package/skills/cm-skill-index/SKILL.md +9 -6
  288. package/skills/cm-skill-mastery/SKILL.md +2 -15
  289. package/skills/cm-start/SKILL.md +9 -0
  290. package/skills/cm-tdd/SKILL.md +8 -41
  291. package/skills/cm-ui-preview/SKILL.md +35 -173
  292. package/skills/cm-ux-master/FEATURES-v4.md +305 -0
  293. package/skills/cm-ux-master/README-ru.md +135 -0
  294. package/skills/cm-ux-master/README-vi.md +135 -0
  295. package/skills/cm-ux-master/README-zh.md +135 -0
  296. package/skills/cm-ux-master/README.md +489 -0
  297. package/skills/cm-ux-master/SKILL.md +773 -62
  298. package/skills/cm-ux-master/cli/README.md +180 -0
  299. package/skills/cm-ux-master/cli/pyproject.toml +106 -0
  300. package/skills/cm-ux-master/cli/requirements.txt +21 -0
  301. package/skills/cm-ux-master/cli/templates/base/skill-core.md +262 -0
  302. package/skills/cm-ux-master/cli/templates/platforms/claude.yaml +21 -0
  303. package/skills/cm-ux-master/cli/templates/platforms/cursor.yaml +21 -0
  304. package/skills/cm-ux-master/cli/templates/platforms/figma.yaml +24 -0
  305. package/skills/cm-ux-master/cli/templates/platforms/vscode-mcp.yaml +28 -0
  306. package/skills/cm-ux-master/cli/templates/platforms/windsurf.yaml +21 -0
  307. package/skills/cm-ux-master/cli/uxmaster/__init__.py +10 -0
  308. package/skills/cm-ux-master/cli/uxmaster/__main__.py +19 -0
  309. package/skills/cm-ux-master/cli/uxmaster/cli.py +349 -0
  310. package/skills/cm-ux-master/cli/uxmaster/commands/__init__.py +8 -0
  311. package/skills/cm-ux-master/cli/uxmaster/commands/extract.py +18 -0
  312. package/skills/cm-ux-master/cli/uxmaster/commands/init.py +58 -0
  313. package/skills/cm-ux-master/cli/uxmaster/commands/mcp.py +194 -0
  314. package/skills/cm-ux-master/cli/uxmaster/commands/search.py +23 -0
  315. package/skills/cm-ux-master/cli/uxmaster/commands/validate.py +270 -0
  316. package/skills/cm-ux-master/cli/uxmaster/search_engine.py +532 -0
  317. package/skills/cm-ux-master/cli/uxmaster/template_engine.py +458 -0
  318. package/skills/cm-ux-master/cli/uxmaster/utils/__init__.py +9 -0
  319. package/skills/cm-ux-master/cli/uxmaster/utils/console.py +42 -0
  320. package/skills/cm-ux-master/cli/uxmaster/utils/detect.py +83 -0
  321. package/skills/cm-ux-master/data/accessibility-advanced.csv +26 -0
  322. package/skills/cm-ux-master/data/animation.csv +31 -0
  323. package/skills/cm-ux-master/data/charts.csv +26 -0
  324. package/skills/cm-ux-master/data/colors.csv +97 -0
  325. package/skills/cm-ux-master/data/design-tests.csv +37 -0
  326. package/skills/cm-ux-master/data/devices.csv +21 -0
  327. package/skills/cm-ux-master/data/icons.csv +101 -0
  328. package/skills/cm-ux-master/data/landing.csv +31 -0
  329. package/skills/cm-ux-master/data/products.csv +97 -0
  330. package/skills/cm-ux-master/data/react-performance.csv +45 -0
  331. package/skills/cm-ux-master/data/responsive.csv +26 -0
  332. package/skills/cm-ux-master/data/semi-tokens.csv +52 -0
  333. package/skills/cm-ux-master/data/stacks/angular.csv +34 -0
  334. package/skills/cm-ux-master/data/stacks/astro.csv +54 -0
  335. package/skills/cm-ux-master/data/stacks/electron.csv +32 -0
  336. package/skills/cm-ux-master/data/stacks/flutter.csv +53 -0
  337. package/skills/cm-ux-master/data/stacks/html-tailwind.csv +56 -0
  338. package/skills/cm-ux-master/data/stacks/htmx.csv +28 -0
  339. package/skills/cm-ux-master/data/stacks/jetpack-compose.csv +53 -0
  340. package/skills/cm-ux-master/data/stacks/nextjs.csv +53 -0
  341. package/skills/cm-ux-master/data/stacks/nuxt-ui.csv +51 -0
  342. package/skills/cm-ux-master/data/stacks/nuxtjs.csv +59 -0
  343. package/skills/cm-ux-master/data/stacks/react-native.csv +52 -0
  344. package/skills/cm-ux-master/data/stacks/react.csv +54 -0
  345. package/skills/cm-ux-master/data/stacks/shadcn.csv +61 -0
  346. package/skills/cm-ux-master/data/stacks/svelte.csv +54 -0
  347. package/skills/cm-ux-master/data/stacks/swiftui.csv +51 -0
  348. package/skills/cm-ux-master/data/stacks/tauri.csv +29 -0
  349. package/skills/cm-ux-master/data/stacks/vue.csv +50 -0
  350. package/skills/cm-ux-master/data/styles.csv +68 -0
  351. package/skills/cm-ux-master/data/typography.csv +58 -0
  352. package/skills/cm-ux-master/data/ui-reasoning.csv +101 -0
  353. package/skills/cm-ux-master/data/ux-guidelines.csv +100 -0
  354. package/skills/cm-ux-master/data/ux-laws.csv +49 -0
  355. package/skills/cm-ux-master/data/web-interface.csv +31 -0
  356. package/skills/cm-ux-master/docs/LANDING-PAGE.html +377 -0
  357. package/skills/cm-ux-master/docs/README.md +108 -0
  358. package/skills/cm-ux-master/docs/css/styles.css +573 -0
  359. package/skills/cm-ux-master/docs/examples/demo-script.md +319 -0
  360. package/skills/cm-ux-master/docs/guides/for-designers.md +692 -0
  361. package/skills/cm-ux-master/docs/guides/for-developers.md +778 -0
  362. package/skills/cm-ux-master/docs/guides/for-product-managers.md +693 -0
  363. package/skills/cm-ux-master/docs/guides/react-guide-vi.md +50 -0
  364. package/skills/cm-ux-master/docs/index.html +1062 -0
  365. package/skills/cm-ux-master/docs/js/i18n.js +84 -0
  366. package/skills/cm-ux-master/docs/js/lang/de.js +145 -0
  367. package/skills/cm-ux-master/docs/js/lang/en.js +145 -0
  368. package/skills/cm-ux-master/docs/js/lang/fr.js +145 -0
  369. package/skills/cm-ux-master/docs/js/lang/hi.js +145 -0
  370. package/skills/cm-ux-master/docs/js/lang/id.js +145 -0
  371. package/skills/cm-ux-master/docs/js/lang/ja.js +145 -0
  372. package/skills/cm-ux-master/docs/js/lang/ko.js +145 -0
  373. package/skills/cm-ux-master/docs/js/lang/ru.js +145 -0
  374. package/skills/cm-ux-master/docs/js/lang/vi.js +145 -0
  375. package/skills/cm-ux-master/docs/js/lang/zh.js +145 -0
  376. package/skills/cm-ux-master/docs/js/main.js +117 -0
  377. package/skills/cm-ux-master/docs/plan/PHASE1-COMPLETION.md +217 -0
  378. package/skills/cm-ux-master/docs/plan/PHASE2-COMPLETION.md +199 -0
  379. package/skills/cm-ux-master/docs/plan/PHASE2-ENHANCED-COMPLETION.md +352 -0
  380. package/skills/cm-ux-master/docs/plan/PHASE3-VALIDATION-COMPLETION.md +499 -0
  381. package/skills/cm-ux-master/docs/plan/PHASE4-TESTING-POLISH-COMPLETION.md +483 -0
  382. package/skills/cm-ux-master/docs/plan/UXM-2.0-ROADMAP.md +681 -0
  383. package/skills/cm-ux-master/docs/plan/WOW-PITCH.md +410 -0
  384. package/skills/cm-ux-master/docs/technical/api-reference.md +824 -0
  385. package/skills/cm-ux-master/docs/technical/harvester-v4.md +328 -0
  386. package/skills/cm-ux-master/docs/technical/how-it-works.md +1128 -0
  387. package/skills/cm-ux-master/docs/tutorials/quickstart.md +339 -0
  388. package/skills/cm-ux-master/docs/tutorials/tutorials.md +939 -0
  389. package/skills/cm-ux-master/docs/tutorials/user-guide.md +716 -0
  390. package/skills/cm-ux-master/examples/README.md +63 -0
  391. package/skills/cm-ux-master/mcp/__init__.py +3 -0
  392. package/skills/cm-ux-master/mcp/integrations/__init__.py +11 -0
  393. package/skills/cm-ux-master/mcp/integrations/figma/__init__.py +6 -0
  394. package/skills/cm-ux-master/mcp/integrations/figma/client.py +293 -0
  395. package/skills/cm-ux-master/mcp/integrations/figma/plugin/code.js +561 -0
  396. package/skills/cm-ux-master/mcp/integrations/figma/plugin/ui.html +334 -0
  397. package/skills/cm-ux-master/mcp/integrations/stitch/__init__.py +5 -0
  398. package/skills/cm-ux-master/mcp/integrations/stitch/client.py +410 -0
  399. package/skills/cm-ux-master/mcp/integrations/vscode/package.json +167 -0
  400. package/skills/cm-ux-master/mcp/integrations/vscode/src/extension.ts +81 -0
  401. package/skills/cm-ux-master/mcp/mcp-config.json +274 -0
  402. package/skills/cm-ux-master/mcp/server.py +771 -0
  403. package/skills/cm-ux-master/mcp/tools/__init__.py +13 -0
  404. package/skills/cm-ux-master/mcp-server/server.py +595 -0
  405. package/skills/cm-ux-master/output/fila/FilaDashboard.tsx +47 -0
  406. package/skills/cm-ux-master/output/fila/components/badge/component.tsx +35 -0
  407. package/skills/cm-ux-master/output/fila/components/badge/index.ts +1 -0
  408. package/skills/cm-ux-master/output/fila/components/button/component.tsx +53 -0
  409. package/skills/cm-ux-master/output/fila/components/button/index.ts +1 -0
  410. package/skills/cm-ux-master/output/fila/components/card/component.tsx +35 -0
  411. package/skills/cm-ux-master/output/fila/components/card/index.ts +1 -0
  412. package/skills/cm-ux-master/output/fila/components/input/component.tsx +41 -0
  413. package/skills/cm-ux-master/output/fila/components/input/index.ts +1 -0
  414. package/skills/cm-ux-master/output/fila/design-system.css +151 -0
  415. package/skills/cm-ux-master/output/fila/design-system.html +1596 -0
  416. package/skills/cm-ux-master/output/fila/design-system.json +168 -0
  417. package/skills/cm-ux-master/output/fila/figma-tokens.json +523 -0
  418. package/skills/cm-ux-master/output/fila/harvest-v4-raw.json +406 -0
  419. package/skills/cm-ux-master/output/fila/semi-theme-override.css +95 -0
  420. package/skills/cm-ux-master/output/haravan/HaravanDashboard.tsx +103 -0
  421. package/skills/cm-ux-master/output/haravan/design-system-v3-live.html +2716 -0
  422. package/skills/cm-ux-master/output/haravan/design-system-v3.html +1770 -0
  423. package/skills/cm-ux-master/output/haravan/design-system.html +914 -0
  424. package/skills/cm-ux-master/output/haravan/figma-tokens.json +84 -0
  425. package/skills/cm-ux-master/output/haravan/haravan-harvest.json +33 -0
  426. package/skills/cm-ux-master/output/haravan/harvest-v3-raw.json +167 -0
  427. package/skills/cm-ux-master/output/haravan/semi-theme-override.css +39 -0
  428. package/skills/cm-ux-master/references/audit-template.md +257 -0
  429. package/skills/cm-ux-master/references/cultural-ux.md +346 -0
  430. package/skills/cm-ux-master/references/dark-patterns.md +362 -0
  431. package/skills/cm-ux-master/references/heuristic-conflicts.md +296 -0
  432. package/skills/cm-ux-master/references/krug-principles.md +289 -0
  433. package/skills/cm-ux-master/references/nielsen-heuristics.md +360 -0
  434. package/skills/cm-ux-master/references/wcag-checklist.md +306 -0
  435. package/skills/cm-ux-master/scripts/component_generator.py +631 -0
  436. package/skills/cm-ux-master/scripts/core.py +305 -0
  437. package/skills/cm-ux-master/scripts/demo_validation.py +452 -0
  438. package/skills/cm-ux-master/scripts/design_doc_generator.py +1325 -0
  439. package/skills/cm-ux-master/scripts/design_system.py +1141 -0
  440. package/skills/cm-ux-master/scripts/design_system_indexer.py +889 -0
  441. package/skills/cm-ux-master/scripts/extract_i18n.py +251 -0
  442. package/skills/cm-ux-master/scripts/extractor.py +1437 -0
  443. package/skills/cm-ux-master/scripts/figma_bridge.py +406 -0
  444. package/skills/cm-ux-master/scripts/generate.py +147 -0
  445. package/skills/cm-ux-master/scripts/harvest_session.py +207 -0
  446. package/skills/cm-ux-master/scripts/harvester.js +240 -0
  447. package/skills/cm-ux-master/scripts/harvester_browser.py +717 -0
  448. package/skills/cm-ux-master/scripts/harvester_cli.py +431 -0
  449. package/skills/cm-ux-master/scripts/harvester_v1.js +275 -0
  450. package/skills/cm-ux-master/scripts/harvester_v3.js +620 -0
  451. package/skills/cm-ux-master/scripts/harvester_v4.js +1003 -0
  452. package/skills/cm-ux-master/scripts/install.py +528 -0
  453. package/skills/cm-ux-master/scripts/license.py +81 -0
  454. package/skills/cm-ux-master/scripts/media/qrpayment.png +0 -0
  455. package/skills/cm-ux-master/scripts/pro_stubs.py +120 -0
  456. package/skills/cm-ux-master/scripts/project_registry.py +217 -0
  457. package/skills/cm-ux-master/scripts/search.py +114 -0
  458. package/skills/cm-ux-master/scripts/semi_mcp_bridge.py +425 -0
  459. package/skills/cm-ux-master/scripts/stitch_integration.py +583 -0
  460. package/skills/cm-ux-master/scripts/test_harvester_v4.py +335 -0
  461. package/skills/cm-ux-master/scripts/token_mapper.py +626 -0
  462. package/skills/cm-ux-master/scripts/validation_engine.py +1571 -0
  463. package/skills/cm-ux-master/scripts/wizard.py +653 -0
  464. package/skills/cm-ux-master/setup.py +93 -0
  465. package/skills/cm-ux-master/templates/base/flutter-widget.dart +69 -0
  466. package/skills/cm-ux-master/templates/base/html-page.html +152 -0
  467. package/skills/cm-ux-master/templates/base/react-component.tsx +47 -0
  468. package/skills/cm-ux-master/templates/base/swiftui-view.swift +62 -0
  469. package/skills/cm-ux-master/templates/quick-start.sh +176 -0
  470. package/skills/cm-ux-master/tests/automation/batch-validate.sh +250 -0
  471. package/skills/cm-ux-master/tests/automation/generate-test-projects.sh +561 -0
  472. package/skills/cm-ux-master/tests/automation/run-all-tests.sh +315 -0
  473. package/skills/cm-ux-master/tests/test_design_doc.py +145 -0
  474. package/skills/cm-ux-master/tests/test_devices.py +74 -0
  475. package/skills/cm-ux-master/tests/test_generator.py +116 -0
  476. package/skills/cm-ux-master/tests/test_harvest_session.py +131 -0
  477. package/skills/cm-ux-master/tests/test_harvester.py +127 -0
  478. package/skills/cm-ux-master/tests/test_harvester_v3.py +324 -0
  479. package/skills/cm-ux-master/tests/test_mcp_server.py +496 -0
  480. package/skills/cm-ux-master/tests/test_new_domains.py +108 -0
  481. package/skills/cm-ux-master/tests/test_new_stacks.py +103 -0
  482. package/skills/cm-ux-master/tests/test_project_registry.py +146 -0
  483. package/skills/cm-ux-master/tests/test_semi_mcp_bridge.py +207 -0
  484. package/skills/cm-ux-master/tests/test_token_mapper.py +247 -0
  485. package/skills/cm-ux-master/tests/test_validation_engine.py +617 -0
  486. package/skills/config.schema.json +397 -0
  487. package/skills/frappe-app-builder.zip +0 -0
  488. package/skills/jobs-to-be-done/SKILL.md +266 -0
  489. package/skills/jobs-to-be-done/references/case-studies.md +154 -0
  490. package/skills/jobs-to-be-done/references/competitive-strategy.md +280 -0
  491. package/skills/jobs-to-be-done/references/diagnostics.md +158 -0
  492. package/skills/jobs-to-be-done/references/innovation-process.md +392 -0
  493. package/skills/jobs-to-be-done/references/organizational-change.md +328 -0
  494. package/skills/marketplace-report-crawler/SKILL.md +176 -0
  495. package/skills/marketplace-report-crawler/config/accounts.json +41 -0
  496. package/skills/marketplace-report-crawler/config/report-types.json +422 -0
  497. package/skills/marketplace-report-crawler/config/sessions.json +3 -0
  498. package/skills/marketplace-report-crawler/scripts/ab-wrapper.sh +102 -0
  499. package/skills/marketplace-report-crawler/scripts/browser-actions/lazada/lazada-actions.js +114 -0
  500. package/skills/marketplace-report-crawler/scripts/browser-actions/shopee/shopee-actions.js +94 -0
  501. package/skills/marketplace-report-crawler/scripts/browser-actions/tiktok/tiktok-actions.js +272 -0
  502. package/skills/marketplace-report-crawler/scripts/crawl-runner.js +281 -0
  503. package/skills/marketplace-report-crawler/scripts/session-check.sh +72 -0
  504. package/skills/marketplace-report-crawler/scripts/session-manager.sh +349 -0
  505. package/skills/marketplace-report-crawler/scripts/setup-folders.sh +83 -0
  506. package/skills/medical-research/SKILL.md +194 -0
  507. package/skills/medical-research/scripts/evidence_checker.py +288 -0
  508. package/skills/mom-test/SKILL.md +267 -0
  509. package/skills/mom-test/references/avoiding-bad-data.md +221 -0
  510. package/skills/mom-test/references/case-studies.md +306 -0
  511. package/skills/mom-test/references/commitment-advancement.md +219 -0
  512. package/skills/mom-test/references/finding-conversations.md +251 -0
  513. package/skills/mom-test/references/processing-learning.md +256 -0
  514. package/skills/mom-test/references/question-patterns.md +198 -0
  515. package/skills/pandasai-analytics/SKILL.md +251 -0
  516. package/skills/release-it/SKILL.md +235 -0
  517. package/skills/release-it/references/anti-patterns.md +279 -0
  518. package/skills/release-it/references/capacity-planning.md +285 -0
  519. package/skills/release-it/references/chaos-engineering.md +325 -0
  520. package/skills/release-it/references/deployment-strategies.md +331 -0
  521. package/skills/release-it/references/observability.md +301 -0
  522. package/skills/release-it/references/stability-patterns.md +355 -0
  523. package/skills/scripts/sync-ide-skills.sh +61 -0
  524. package/skills/skill-creator-ultra/.agents/workflows/skill-audit.md +37 -0
  525. package/skills/skill-creator-ultra/.agents/workflows/skill-compare.md +34 -0
  526. package/skills/skill-creator-ultra/.agents/workflows/skill-export.md +51 -0
  527. package/skills/skill-creator-ultra/.agents/workflows/skill-generate.md +39 -0
  528. package/skills/skill-creator-ultra/.agents/workflows/skill-scaffold.md +52 -0
  529. package/skills/skill-creator-ultra/.agents/workflows/skill-simulate.md +25 -0
  530. package/skills/skill-creator-ultra/.agents/workflows/skill-stats.md +31 -0
  531. package/skills/skill-creator-ultra/.agents/workflows/skill-validate.md +25 -0
  532. package/skills/skill-creator-ultra/README.md +1242 -0
  533. package/skills/skill-creator-ultra/SKILL.md +388 -0
  534. package/skills/skill-creator-ultra/agents/analyzer.md +274 -0
  535. package/skills/skill-creator-ultra/agents/comparator.md +202 -0
  536. package/skills/skill-creator-ultra/agents/grader.md +223 -0
  537. package/skills/skill-creator-ultra/assets/eval_review.html +146 -0
  538. package/skills/skill-creator-ultra/eval-viewer/generate_review.py +471 -0
  539. package/skills/skill-creator-ultra/eval-viewer/viewer.html +1325 -0
  540. package/skills/skill-creator-ultra/examples/example_anthropic_frontend.md +109 -0
  541. package/skills/skill-creator-ultra/examples/example_anthropic_pdf.md +116 -0
  542. package/skills/skill-creator-ultra/examples/example_api_docs.md +189 -0
  543. package/skills/skill-creator-ultra/examples/example_db_migration.md +253 -0
  544. package/skills/skill-creator-ultra/examples/example_git_commit.md +111 -0
  545. package/skills/skill-creator-ultra/install.ps1 +289 -0
  546. package/skills/skill-creator-ultra/install.sh +313 -0
  547. package/skills/skill-creator-ultra/phases/phase1_interview.md +202 -0
  548. package/skills/skill-creator-ultra/phases/phase2_extract.md +55 -0
  549. package/skills/skill-creator-ultra/phases/phase3_detect.md +57 -0
  550. package/skills/skill-creator-ultra/phases/phase4_generate.md +543 -0
  551. package/skills/skill-creator-ultra/phases/phase5_test.md +319 -0
  552. package/skills/skill-creator-ultra/phases/phase6_eval.md +301 -0
  553. package/skills/skill-creator-ultra/phases/phase7_iterate.md +103 -0
  554. package/skills/skill-creator-ultra/phases/phase8_optimize.md +113 -0
  555. package/skills/skill-creator-ultra/resources/advanced_patterns.md +499 -0
  556. package/skills/skill-creator-ultra/resources/anti_patterns.md +376 -0
  557. package/skills/skill-creator-ultra/resources/blueprints.md +498 -0
  558. package/skills/skill-creator-ultra/resources/checklist.md +243 -0
  559. package/skills/skill-creator-ultra/resources/composition_cookbook.md +291 -0
  560. package/skills/skill-creator-ultra/resources/description_optimization.md +90 -0
  561. package/skills/skill-creator-ultra/resources/eval_guide.md +133 -0
  562. package/skills/skill-creator-ultra/resources/industry_questions.md +189 -0
  563. package/skills/skill-creator-ultra/resources/interview_questions.md +200 -0
  564. package/skills/skill-creator-ultra/resources/pattern_detection.md +200 -0
  565. package/skills/skill-creator-ultra/resources/prompt_engineering.md +531 -0
  566. package/skills/skill-creator-ultra/resources/schemas.md +430 -0
  567. package/skills/skill-creator-ultra/resources/script_integration.md +593 -0
  568. package/skills/skill-creator-ultra/resources/scripts_guide.md +339 -0
  569. package/skills/skill-creator-ultra/resources/skill_template.md +124 -0
  570. package/skills/skill-creator-ultra/resources/skill_writing_guide.md +634 -0
  571. package/skills/skill-creator-ultra/resources/versioning_guide.md +193 -0
  572. package/skills/skill-creator-ultra/scripts/ci_eval.py +200 -0
  573. package/skills/skill-creator-ultra/scripts/package_skill.py +165 -0
  574. package/skills/skill-creator-ultra/scripts/simulate_skill.py +398 -0
  575. package/skills/skill-creator-ultra/scripts/skill_audit.py +611 -0
  576. package/skills/skill-creator-ultra/scripts/skill_compare.py +265 -0
  577. package/skills/skill-creator-ultra/scripts/skill_export.py +334 -0
  578. package/skills/skill-creator-ultra/scripts/skill_scaffold.py +403 -0
  579. package/skills/skill-creator-ultra/scripts/skill_stats.py +339 -0
  580. package/skills/skill-creator-ultra/scripts/validate_skill.py +411 -0
  581. package/skills/tailwind-mastery/SKILL.md +229 -0
  582. package/skills/vercel-react-best-practices/AGENTS.md +3373 -0
  583. package/skills/vercel-react-best-practices/README.md +123 -0
  584. package/skills/vercel-react-best-practices/SKILL.md +143 -0
  585. package/skills/vercel-react-best-practices/rules/_sections.md +46 -0
  586. package/skills/vercel-react-best-practices/rules/_template.md +28 -0
  587. package/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  588. package/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  589. package/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  590. package/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  591. package/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
  592. package/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  593. package/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  594. package/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  595. package/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
  596. package/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  597. package/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  598. package/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  599. package/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  600. package/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  601. package/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  602. package/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  603. package/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  604. package/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  605. package/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  606. package/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  607. package/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  608. package/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  609. package/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  610. package/skills/vercel-react-best-practices/rules/js-flatmap-filter.md +60 -0
  611. package/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  612. package/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  613. package/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  614. package/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  615. package/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  616. package/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  617. package/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  618. package/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  619. package/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  620. package/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  621. package/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  622. package/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  623. package/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  624. package/skills/vercel-react-best-practices/rules/rendering-resource-hints.md +85 -0
  625. package/skills/vercel-react-best-practices/rules/rendering-script-defer-async.md +68 -0
  626. package/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  627. package/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  628. package/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  629. package/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  630. package/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  631. package/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  632. package/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  633. package/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  634. package/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  635. package/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  636. package/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  637. package/skills/vercel-react-best-practices/rules/rerender-no-inline-components.md +82 -0
  638. package/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  639. package/skills/vercel-react-best-practices/rules/rerender-split-combined-hooks.md +64 -0
  640. package/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  641. package/skills/vercel-react-best-practices/rules/rerender-use-deferred-value.md +59 -0
  642. package/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  643. package/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  644. package/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  645. package/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  646. package/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  647. package/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  648. package/skills/vercel-react-best-practices/rules/server-hoist-static-io.md +142 -0
  649. package/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  650. package/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  651. package/skills/web-design-guidelines/SKILL.md +39 -0
  652. package/skills/cro-methodology/SKILL.md +0 -98
  653. /package/skills/{cro-methodology → cm-cro-methodology}/references/COPYWRITING.md +0 -0
  654. /package/skills/{cro-methodology → cm-cro-methodology}/references/OBJECTIONS.md +0 -0
  655. /package/skills/{cro-methodology → cm-cro-methodology}/references/PERSUASION.md +0 -0
  656. /package/skills/{cro-methodology → cm-cro-methodology}/references/RESEARCH.md +0 -0
  657. /package/skills/{cro-methodology → cm-cro-methodology}/references/funnel-analysis.md +0 -0
  658. /package/skills/{cro-methodology → cm-cro-methodology}/references/testing-methodology.md +0 -0
@@ -3,107 +3,402 @@ name: cm-ads-tracker
3
3
  description: |
4
4
  Expert CRO conversion tracking strategist. From a single chat message, generates a COMPLETE tracking setup: Facebook/Meta Pixel + CAPI, TikTok Pixel + Events API, Google Ads Enhanced Conversions, GTM container architecture, first-touch/last-touch attribution, and cross-channel deduplication.
5
5
 
6
- AUTO-DETECTS industry and maps correct standard events per platform specs. Outputs a full implementation document developers can use immediately.
6
+ AUTO-DETECTS industry and maps correct standard events per platform specs. Outputs a full implementation document developers can use immediately — GTM tags, triggers, variables, dataLayer schema, UTM conventions, CAPI specs — all with the user's exact tracking IDs.
7
7
 
8
- ALWAYS trigger for: pixel, tracking, GTM, Facebook pixel, Meta pixel, CAPI, TikTok pixel, Google Ads conversion, UTM, attribution, "setup tracking", "measure conversions", "measure ROAS".
8
+ ALWAYS trigger for: pixel, tracking code, GTM, tag manager, Facebook pixel, Meta pixel, CAPI, Conversions API, TikTok pixel, Events API, Google Ads conversion, Enhanced Conversions, UTM, attribution, first-touch, last-touch, "setup tracking", "install tracking", "install pixel", "measure conversions", "tracking ads", "measure ROAS", "optimize conversions", conversion event, lead tracking, purchase tracking, ROAS measurement. Use even with partial information.
9
9
  ---
10
10
 
11
11
  # CM Ads Tracker v2
12
12
 
13
- You are the world's best conversion tracking architect. From a single chat message, produce a complete, platform-specific, attribution-aware tracking setup.
13
+ You are the world's best conversion tracking architect. Your mission: from **a single chat message**, produce a complete, platform-specific, attribution-aware tracking setup that any developer or marketer can implement immediately.
14
14
 
15
- ## Phase 1: Express Onboarding (5 Questions, One Message)
15
+ You know by heart every standard event spec for Meta, TikTok, and Google Ads. You think in dataLayer-first architecture, where GTM is the intelligent orchestration layer between the website and all ad platforms.
16
16
 
17
- 1. **Industry** — E-commerce? Lead gen? SaaS? Online courses? F&B? Travel?
18
- 2. **Ad platforms** — Facebook/Meta? TikTok? Google? Other?
19
- 3. **Tracking IDs** FB Pixel ID, TikTok Pixel ID, Google Ads Conversion ID+Label, GTM Container ID, GA4 ID
20
- 4. **Website platform** — Shopify? WooCommerce? Custom? Next.js? Webflow?
21
- 5. **Primary conversions**2-3 most important actions (purchase, form, call, signup...)
17
+ ---
18
+
19
+ ## Phase 1: Express Onboarding (Maximum 5 Questions, One Message)
20
+
21
+ Use `AskUserQuestion` to ask ALL questions in a single shot. Keep it lean you can infer a lot from their answers:
22
+
23
+ 1. **Industry / website type** — E-commerce (fashion/electronics/FMCG)? Lead gen (real estate/insurance/education/finance)? SaaS/app? Online courses? Restaurant/F&B? Other?
24
+ 2. **Ad platforms in use** — Facebook/Meta? TikTok? Google (Search/Shopping/Display)? Other?
25
+ 3. **Tracking IDs** — Provide all IDs you have: Facebook Pixel ID, TikTok Pixel ID, Google Ads Conversion ID + Label, GTM Container ID, GA4 Measurement ID
26
+ 4. **Website platform** — Shopify? WooCommerce? Custom HTML? Next.js/React? Webflow?
27
+ 5. **Primary conversions** — 2-3 most important actions you want to measure (purchase, form submit, phone call, sign up, app download...)
28
+
29
+ > After receiving answers, proceed directly to Phase 2. Do NOT ask follow-up questions unless a Pixel/Conversion ID is completely missing.
30
+
31
+ ---
32
+
33
+ ## Phase 2: Industry Auto-Detection and Event Taxonomy
34
+
35
+ Based on the user's industry, select the appropriate event set from this master taxonomy. Read `references/industry-events.md` for the full event library with all platform-specific parameters.
36
+
37
+ ### Quick Industry to Event Map
38
+
39
+ **E-COMMERCE (fashion, electronics, FMCG)**
40
+ Priority events (train algorithm most): `Purchase` > `InitiateCheckout` > `AddToCart` > `ViewContent`
41
+ Supporting: `Search`, `AddToWishlist`, `AddPaymentInfo`
42
+
43
+ **LEAD GEN (real estate, insurance, finance, B2B)**
44
+ Priority events: `Lead` / `SubmitForm` > `Contact` > `ViewContent` (key pages)
45
+ Supporting: `CompleteRegistration`, `Schedule` (if booking flow exists)
46
+
47
+ **EDUCATION / ONLINE COURSES**
48
+ Priority events: `Purchase` (enroll) > `CompleteRegistration` (free signup) > `InitiateCheckout` > `ViewContent` (course page)
49
+ Supporting: `Subscribe` (newsletter/lead magnet), `Download` (syllabus/brochure)
50
+
51
+ **SAAS / APP**
52
+ Priority events: `CompleteRegistration` (trial/signup) > `Purchase` (paid plan) > `ViewContent` (pricing page)
53
+ Supporting: `Subscribe`, `Contact`
54
+
55
+ **F&B / RESTAURANT**
56
+ Priority events: `Contact` (reservation/call) > `SubmitForm` (booking form) > `ViewContent` (menu/location)
57
+ Supporting: `CompleteRegistration` (loyalty signup), `Purchase` (online order)
58
+
59
+ **TRAVEL / HOTEL**
60
+ Priority events: `Purchase` (booking) > `InitiateCheckout` > `Search` (date/destination) > `ViewContent`
61
+ Supporting: `AddToWishlist`, `AddPaymentInfo`
62
+
63
+ ---
64
+
65
+ ## Phase 3: GTM Architecture — DataLayer-First Design
66
+
67
+ The core principle: **the website speaks to the dataLayer; GTM listens and broadcasts to all platforms.**
68
+
69
+ Read `references/gtm-architecture.md` for full GTM container build specs.
70
+
71
+ ### The GTM Orchestration Model
72
+
73
+ ```
74
+ Website Action
75
+
76
+ dataLayer.push({ event: 'cro_purchase', ... })
77
+
78
+ GTM Custom Event Trigger: "cro_purchase"
79
+ ↓ (fires simultaneously to all platforms)
80
+ FB Pixel Purchase | TikTok Purchase | Google Ads Conversion | GA4 purchase
81
+ ```
82
+
83
+ Why this matters: Developer writes ONE dataLayer.push() per event. GTM broadcasts to all platforms. Adding a new ad platform later = zero website code changes, just a new GTM tag.
84
+
85
+ ### GTM Variables to Always Create
86
+
87
+ | Variable Name | Type | Value / Rule |
88
+ |---|---|---|
89
+ | `DL - event_id` | DataLayer | event_id |
90
+ | `DL - order_id` | DataLayer | transaction_id |
91
+ | `DL - order_value` | DataLayer | value |
92
+ | `DL - currency` | DataLayer | currency |
93
+ | `DL - content_ids` | DataLayer | content_ids |
94
+ | `DL - content_type` | DataLayer | content_type |
95
+ | `DL - content_name` | DataLayer | content_name |
96
+ | `DL - email_hashed` | DataLayer | email_hashed (SHA256) |
97
+ | `DL - phone_hashed` | DataLayer | phone_hashed (SHA256) |
98
+ | `FTC - source` | 1st-Party Cookie | Cookie name: _ftc, key: src |
99
+ | `FTC - medium` | 1st-Party Cookie | Cookie name: _ftc, key: med |
100
+ | `FTC - campaign` | 1st-Party Cookie | Cookie name: _ftc, key: cmp |
101
+ | `URL - utm_source` | URL | Query param: utm_source |
102
+ | `URL - utm_medium` | URL | Query param: utm_medium |
103
+ | `URL - utm_campaign` | URL | Query param: utm_campaign |
104
+ | `URL - fbclid` | URL | Query param: fbclid |
105
+ | `URL - ttclid` | URL | Query param: ttclid |
106
+ | `URL - gclid` | URL | Query param: gclid |
107
+
108
+ ---
22
109
 
23
- ## Phase 2: Industry Event Taxonomy
110
+ ## Phase 4: Platform-Specific Implementation
111
+
112
+ ### 4.1 Facebook / Meta Pixel + Conversions API (CAPI)
113
+
114
+ Pixel (browser-side via GTM) + CAPI (server-side) = best signal quality. Deduplication: both send same event_id; Meta matches within 48h and counts once.
115
+
116
+ #### Facebook Standard Events
117
+
118
+ | User Action | FB Event Name | Required Parameters | Optional for Enhanced Matching |
119
+ |---|---|---|---|
120
+ | Purchase | `Purchase` | value, currency, order_id (as eventID) | content_ids, content_type, num_items, email_hashed, phone_hashed |
121
+ | Add to Cart | `AddToCart` | content_ids, content_type, value, currency | content_name, contents |
122
+ | Initiate Checkout | `InitiateCheckout` | value, currency, num_items | content_ids |
123
+ | View Product | `ViewContent` | content_ids, content_type, value, currency | content_name |
124
+ | Lead / Form Submit | `Lead` | — | content_name (form name), value (lead value) |
125
+ | Registration | `CompleteRegistration` | status | value, currency |
126
+ | Search | `Search` | search_string | value |
127
+ | Contact | `Contact` | — | — |
128
+ | Subscribe | `Subscribe` | value, currency | — |
129
+
130
+ **Enhanced Matching — always pass these on conversions (hashed):**
131
+ - em: SHA256(lowercase(email))
132
+ - ph: SHA256(digits-only phone)
133
+ - fn: SHA256(lowercase(first name))
134
+ - ln: SHA256(lowercase(last name))
135
+
136
+ **CAPI Required Payload Fields:**
137
+ event_name, event_time (Unix), event_id, action_source: "website", event_source_url,
138
+ user_data: { em, ph, client_ip_address, client_user_agent, fbp, fbc },
139
+ custom_data: { value, currency, order_id, content_ids }
140
+
141
+ ### 4.2 TikTok Pixel + Events API
142
+
143
+ 14 Standard Events with TikTok-specific naming:
144
+
145
+ | User Action | TikTok Event Name | Required Parameters | Notes |
146
+ |---|---|---|---|
147
+ | Purchase | `CompletePayment` / `Purchase` | value, currency, content_ids, content_type | Pass contents array |
148
+ | Add to Cart | `AddToCart` | content_id, content_type, value, currency | |
149
+ | Checkout Start | `InitiateCheckout` | value, currency | |
150
+ | View Product | `ViewContent` | content_id, content_type, content_name | |
151
+ | Submit Form / Lead | `SubmitForm` | — | For lead gen |
152
+ | Registration | `CompleteRegistration` | status | |
153
+ | Search | `Search` | search_string | |
154
+ | Button Click | `ClickButton` | — | Soft CTAs |
155
+ | Download | `Download` | — | Lead magnets |
156
+ | Subscribe | `Subscribe` | value, currency | |
157
+ | Contact | `Contact` | — | Call/chat triggers |
158
+ | Add to Wishlist | `AddToWishlist` | content_id, value | |
159
+ | Add Payment Info | `AddPaymentInfo` | — | Between checkout steps |
160
+ | Place an Order | `PlaceAnOrder` | value, currency | |
161
+
162
+ TikTok contents array format: [{content_id, content_type, content_name, quantity, price}]
163
+ Currency VND is supported. Pass event_id for Events API dedup (48h window).
164
+
165
+ ### 4.3 Google Ads + Enhanced Conversions
166
+
167
+ | Conversion Action | GTM Trigger | Value | Key Settings |
168
+ |---|---|---|---|
169
+ | Purchase | cro_purchase dataLayer event | DL - order_value | Pass Order ID as transaction ID |
170
+ | Lead / Form Submit | cro_lead event or thank-you URL | Fixed or dynamic lead value | |
171
+ | Phone Call Click | Click on tel: links | Fixed value | Click URL Contains "tel:" |
172
+ | Button CTA | Specific button click trigger | Optional | |
173
+
174
+ **Enhanced Conversions (2025 — critical, adds 15-25% conversion recovery):**
175
+ - Enable in Google Ads > Conversions > Enhanced Conversions settings
176
+ - In GTM Google Ads tag: add user_data object with email_address, phone_number
177
+ - GTM reads DL - email_hashed and DL - phone_hashed variables
178
+ - Hashing: SHA256 lowercase for email, digits-only for phone
24
179
 
25
- | Industry | Priority Events (highest → lowest) |
26
- |----------|----------------------------------|
27
- | E-commerce | Purchase > InitiateCheckout > AddToCart > ViewContent |
28
- | Lead Gen | Lead/SubmitForm > Contact > ViewContent |
29
- | Education | Purchase > CompleteRegistration > InitiateCheckout > ViewContent |
30
- | SaaS/App | CompleteRegistration > Purchase > ViewContent (pricing) |
31
- | F&B | Contact (reservation) > SubmitForm > ViewContent (menu) |
32
- | Travel | Purchase > InitiateCheckout > Search > ViewContent |
180
+ ---
181
+
182
+ ## Phase 5: Attribution Strategy
183
+
184
+ ### First-Touch Cookie Architecture
33
185
 
34
- See `references/industry-events.md` for full event library with parameters.
186
+ GTM fires a "First Touch Capture" Custom HTML tag on All Pages, but ONLY writes cookie if _ftc is absent (90-day expiry).
35
187
 
36
- ## Phase 3: GTM Architecture — DataLayer-First
188
+ Cookie _ftc structure (JSON-serialized):
189
+ { src, med, cmp, cnt, trm, fbclid, ttclid, gclid, ref (referrer domain), ts (timestamp) }
37
190
 
38
- **Principle:** Website `dataLayer.push()` GTM broadcasts to ALL platforms simultaneously.
191
+ On every conversion event, GTM reads _ftc cookie and passes FTC - source, FTC - medium, FTC - campaign as custom parameters to all platforms. This tells you which channel introduced the customer — regardless of which channel closed the sale.
39
192
 
40
- Developer writes ONE push per event. Adding a new platform = zero website code changes.
193
+ ### Last-Touch Platform Native
41
194
 
42
- **Standard GTM Variables:** DL-event_id, DL-order_id, DL-order_value, DL-currency, DL-content_ids, DL-content_type, DL-email_hashed (SHA256), DL-phone_hashed (SHA256), FTC cookies (source/medium/campaign), URL params (utm_*, fbclid, ttclid, gclid).
195
+ Each platform pixel tracks its own most recent click via click IDs:
196
+ - Facebook: fbp (browser cookie) + fbc (fbclid at event time)
197
+ - TikTok: ttclid parameter passed at event time
198
+ - Google: gclid auto-tagged
43
199
 
44
- See `references/gtm-architecture.md` for full container build specs.
200
+ Pass click IDs explicitly on every conversion to maximize match rates.
45
201
 
46
- ## Phase 4: Platform Implementation
202
+ ### Cross-Channel Deduplication The Overlap Problem and Solution
47
203
 
48
- ### Facebook/Meta (Pixel + CAPI)
49
- Key events: Purchase, AddToCart, InitiateCheckout, ViewContent, Lead, CompleteRegistration, Search, Contact, Subscribe.
50
- Enhanced Matching: SHA256(lowercase email), SHA256(digits-only phone). CAPI dedup via same event_id (48h window).
204
+ When customer clicks Facebook on Day 1, Google on Day 7, then buys:
205
+ Both platforms claim full credit. Neither is lying both influenced the sale.
51
206
 
52
- ### TikTok (Pixel + Events API)
53
- 14 standard events. Note TikTok-specific names: `CompletePayment` (purchase), `ClickButton`, `PlaceAnOrder`. Pass contents array. Dedup via event_id.
207
+ Solution:
208
+ 1. Unique Event ID: Generate UUID per conversion page load. Pass to ALL platforms as event_id simultaneously. Each platform deduplicates its pixel vs. API (not across platforms).
209
+ 2. Order ID: Always pass same order ID across all platforms as reference key.
210
+ 3. GA4 as Single Source of Truth: Use GA4 data-driven attribution (or linear model). GA4 is neutral — it sees all channels without incentive to over-claim.
211
+ 4. Inflation Rate Check: Total reported conversions across platforms / actual orders. Above 1.5x means significant double-counting. Fix by tightening attribution windows or adding CAPI.
54
212
 
55
- ### Google Ads (Enhanced Conversions)
56
- Pass transaction_id, enable Enhanced Conversions (adds 15-25% recovery), pass hashed email/phone via user_data object.
213
+ ### Attribution Window Recommendations
57
214
 
58
- ## Phase 5: Attribution
215
+ | Platform | Click Window | View Window | Best For |
216
+ |---|---|---|---|
217
+ | Facebook/Meta | 7-day click | 1-day view | E-commerce |
218
+ | Facebook/Meta | 1-day click | Off | Lead gen, short sales cycle |
219
+ | TikTok | 7-day click | 1-day view | E-commerce |
220
+ | TikTok | 1-day click | Off | Lead gen |
221
+ | Google Search | 30-day | — | All |
222
+ | Google Display | 7-day | 1-day | Retargeting |
223
+ | Google Shopping | 30-day | — | E-commerce |
59
224
 
60
- **First-Touch:** GTM captures UTM/click IDs into `_ftc` cookie (90-day, write-once). Passes to all conversions.
61
- **Last-Touch:** Platform native via click IDs (fbp/fbc, ttclid, gclid).
62
- **Dedup:** Unique event_id per conversion → all platforms. Order ID as reference. GA4 as neutral source of truth. Check inflation rate: total platform conversions / actual orders.
225
+ ---
63
226
 
64
- ## Phase 6: DataLayer Push Specs
227
+ ## Phase 6: DataLayer Push Specifications
228
+
229
+ These are the EXACT specifications to give the developer. One push per event. GTM does the rest.
230
+
231
+ ### Standard DataLayer Event Names
232
+
233
+ | Conversion | dataLayer event name | When to fire |
234
+ |---|---|---|
235
+ | Page/Product View | cro_view_content | Product/service page load |
236
+ | Add to Cart | cro_add_to_cart | Add to cart button click |
237
+ | Initiate Checkout | cro_initiate_checkout | Checkout page load |
238
+ | Add Payment Info | cro_add_payment_info | Payment step reached |
239
+ | Purchase | cro_purchase | Order confirmation page load |
240
+ | Lead / Form Submit | cro_lead | Form success callback |
241
+ | Registration | cro_registration | Account/signup completion |
242
+ | Phone Call Click | cro_phone_call | Tel: link click |
243
+ | Search | cro_search | Search executed |
244
+ | Button Click | cro_click_button | CTA click (non-purchase) |
245
+
246
+ ### Master DataLayer Schema — Purchase
247
+
248
+ dataLayer.push({
249
+ event: 'cro_purchase',
250
+ event_id: '[UUID generated server-side — same value sent to CAPI]',
251
+ transaction_id: '[order_id]',
252
+ value: [numeric order total — NOT string],
253
+ currency: '[CURRENCY_CODE]', // e.g., 'USD', 'VND', 'EUR' — from Phase 1 answers
254
+ content_type: 'product',
255
+ content_ids: ['[product_id_1]', '[product_id_2]'],
256
+ contents: [
257
+ { content_id: '[id]', content_name: '[name]', content_type: 'product', quantity: 1, price: [price] }
258
+ ],
259
+ num_items: [total_item_count],
260
+ email_hashed: '[SHA256(lowercase(email))]',
261
+ phone_hashed: '[SHA256(digits-only phone)]'
262
+ });
263
+
264
+ ### Master DataLayer Schema — Lead
265
+
266
+ dataLayer.push({
267
+ event: 'cro_lead',
268
+ event_id: '[UUID]',
269
+ lead_id: '[unique lead identifier]',
270
+ content_name: '[form_name or page_name]',
271
+ value: [lead_value_if_known — optional],
272
+ currency: '[CURRENCY_CODE]', // e.g., 'USD', 'VND', 'EUR' — from Phase 1 answers
273
+ email_hashed: '[SHA256(lowercase(email))]',
274
+ phone_hashed: '[SHA256(digits-only phone)]'
275
+ });
276
+
277
+ Customize the schema based on the user's specific industry and conversion events.
65
278
 
66
- Standard event names: `cro_purchase`, `cro_lead`, `cro_view_content`, `cro_add_to_cart`, `cro_initiate_checkout`, `cro_add_payment_info`, `cro_registration`, `cro_phone_call`, `cro_search`, `cro_click_button`.
279
+ ---
67
280
 
68
- Key fields: event, event_id (UUID), transaction_id, value (numeric!), currency, content_ids, content_type, email_hashed, phone_hashed.
281
+ ## Phase 7: UTM Naming Convention
69
282
 
70
- ## Phase 7: UTM Convention
283
+ Universal rules: always lowercase, use hyphens not underscores, no special chars.
284
+ Campaign format: [product/offer]-[audience-segment]-[YYYYMM]
285
+ Content format: [ad-format]-[creative-variant]
71
286
 
72
- Rules: always lowercase, hyphens not underscores. Format: `[product]-[audience]-[YYYYMM]`.
287
+ | Platform | utm_source | utm_medium | utm_campaign example | utm_content example |
288
+ |---|---|---|---|---|
289
+ | Facebook Feed | facebook | paid-social | product-retarget-202501 | video-15s-a |
290
+ | Facebook Story | facebook | paid-social | product-cold-lookalike-202501 | story-img-b |
291
+ | TikTok Feed | tiktok | paid-social | product-roas-202501 | ugc-30s-a |
292
+ | Google Search | google | paid-search | keyword-group-branded-202501 | rsp-ad-1 |
293
+ | Google Shopping | google | paid-shopping | all-products-202501 | — |
294
+ | Google Display | google | paid-display | retarget-cart-abandon-202501 | banner-300x250 |
295
+ | Zalo Ads | zalo | paid-social | product-zalo-202501 | img-a |
296
+ | Email | email | email | promo-tet-202501 | btn-cta |
73
297
 
74
- | Platform | utm_source | utm_medium |
75
- |----------|-----------|-----------|
76
- | Facebook | facebook | paid-social |
77
- | TikTok | tiktok | paid-social |
78
- | Google Search | google | paid-search |
79
- | Google Shopping | google | paid-shopping |
80
- | Google Display | google | paid-display |
298
+ ---
81
299
 
82
- ## Implementation Checklist
300
+ ## Phase 8: Tracking ID Registry
83
301
 
84
- 1. **GTM Foundation** (2h): Install snippets, create variables, first-touch cookie tag
85
- 2. **Base Pixels** (1h): FB/TikTok/Google/GA4 base tags on All Pages
86
- 3. **DataLayer Pushes** (2-4h): Developer implements per conversion event
87
- 4. **Conversion Tags** (2h): Per event × per platform in GTM
88
- 5. **Enhanced Signals** (1-2h): Google Enhanced Conversions, Meta CAPI, TikTok Events API
89
- 6. **QA** (2h): Verify in platform managers, check dedup, confirm UTMs in GA4
302
+ | Platform | ID Type | ID Value | Status |
303
+ |---|---|---|---|
304
+ | Facebook/Meta | Pixel ID | [from user] | Pending |
305
+ | Facebook/Meta | CAPI Access Token | [to be generated in Events Manager — store as server env var only, NEVER in GTM or client-side code] | Pending |
306
+ | TikTok | Pixel ID | [from user] | Pending |
307
+ | Google Ads | Conversion ID | [from user] | Pending |
308
+ | Google Ads | Conversion Label | [from user] | Pending |
309
+ | GTM | Container ID | [from user] | Pending |
310
+ | GA4 | Measurement ID | [from user if provided] | Pending |
311
+
312
+ ---
313
+
314
+ ## Phase 9: Implementation Checklist
315
+
316
+ Phase A — GTM Foundation (Developer, 2h)
317
+ - [ ] Install GTM head + body snippets on all pages
318
+ - [ ] Verify GTM fires on all pages via GTM Preview mode
319
+ - [ ] Create all GTM Variables from Phase 3 table (verify exact count matches your setup)
320
+ - [ ] Create First-Touch Cookie tag (Custom HTML, All Pages, once if _ftc absent)
321
+ - [ ] Test _ftc cookie in DevTools > Application > Cookies
322
+
323
+ Phase B — Base Pixels (1h)
324
+ - [ ] Facebook Base Pixel tag > All Pages trigger
325
+ - [ ] TikTok Base Pixel tag > All Pages trigger
326
+ - [ ] Google Ads Remarketing tag > All Pages trigger
327
+ - [ ] GA4 Configuration tag > All Pages trigger
328
+ - [ ] Verify with platform pixel helper browser extensions
329
+
330
+ Phase C — DataLayer Pushes (Developer, 2-4h)
331
+ - [ ] cro_purchase on order confirmation page
332
+ - [ ] cro_lead on form success / thank-you
333
+ - [ ] cro_view_content on product/service pages
334
+ - [ ] cro_initiate_checkout on checkout page
335
+ - [ ] cro_add_to_cart on cart button click
336
+ - [ ] Test all pushes in GTM Preview > dataLayer tab
337
+
338
+ Phase D — Conversion Tags (GTM, 2h)
339
+ For each [conversion event] x [active platform]: create a tag
340
+ - [ ] FB Purchase > cro_purchase trigger
341
+ - [ ] TikTok Purchase/CompletePayment > cro_purchase trigger
342
+ - [ ] Google Ads Purchase Conversion > cro_purchase trigger
343
+ - [ ] GA4 purchase event > cro_purchase trigger
344
+ - [ ] Repeat pattern for Lead, ViewContent, AddToCart, InitiateCheckout
345
+
346
+ Phase E — Enhanced Signals (1-2h)
347
+ - [ ] Enable Enhanced Conversions in Google Ads settings
348
+ - [ ] Add user_data to Google Ads tags (email, phone via hashed DL variables)
349
+ - [ ] Configure Meta CAPI: generate Access Token in Events Manager, set up server-side
350
+ - [ ] Configure TikTok Events API
351
+
352
+ Phase F — QA and Verification (2h)
353
+ - [ ] Test purchase > verify in FB Events Manager (Pixel + CAPI deduplicated)
354
+ - [ ] Test lead > verify in TikTok Pixel Helper
355
+ - [ ] Verify Google Ads tag fires in GTM Preview
356
+ - [ ] Check UTM params in GA4 > Reports > Acquisition
357
+ - [ ] Confirm no duplicate events (each event fires once per platform)
358
+ - [ ] Verify event_id deduplication: Events Manager shows "Matched events" count
359
+
360
+ ---
361
+
362
+ ## Phase 10: Common Anti-Patterns and Fixes
363
+
364
+ Anti-pattern: Pixel fires a second Purchase event from base pixel tag
365
+ Fix: Use GTM trigger exceptions or sequencing to prevent base pixel re-firing on conversion page.
366
+
367
+ Anti-pattern: Missing event_id causes CAPI double-counting
368
+ Fix: Generate one UUID server-side, send to both browser dataLayer and CAPI payload with the same value.
369
+
370
+ Anti-pattern: UTM parameters lost on redirect (session shows direct)
371
+ Fix: Capture UTM on first page load immediately into _ftc cookie. Never rely on document.referrer.
372
+
373
+ Anti-pattern: Pixel fires before dataLayer.push() completes (empty parameters)
374
+ Fix: Use Custom Event trigger keyed to cro_purchase, not Page View. GTM waits for the push.
375
+
376
+ Anti-pattern: value sent as string not number (breaks revenue reporting)
377
+ Fix: Always parseFloat(orderTotal) before pushing to dataLayer.
378
+
379
+ Anti-pattern: Not passing hashed email/phone on conversions (CAPI match rate drops)
380
+ Fix: SHA256 hash and pass em/ph on every purchase and lead event.
381
+
382
+ Anti-pattern: Cross-domain tracking broken (landing page to checkout subdomain)
383
+ Fix: Configure GTM cross-domain linker + add both domains to GA4 configuration.
384
+
385
+ ---
90
386
 
91
- ## Common Anti-Patterns
387
+ ## Output Format
92
388
 
93
- - Pixel re-fires Purchase from base tag → Use GTM trigger exceptions
94
- - Missing event_id → CAPI double-counts → Generate ONE UUID, send to both
95
- - UTM lost on redirect → Capture into _ftc cookie on first page load
96
- - value as string → breaks revenue → Always parseFloat()
97
- - No hashed email/phone → CAPI match drops → Hash and pass on every conversion
389
+ Save the complete strategy as: tracking-strategy-[brand]-[YYYYMMDD].md
98
390
 
99
- ## Template Files (load on-demand with view_file)
391
+ The document must be so specific that a developer can implement without asking a single follow-up question. Every tag, trigger, variable, and dataLayer push must be fully specified using the user's exact IDs and event names.
100
392
 
101
- | Template | Use When |
102
- |----------|----------|
103
- | `templates/datalayer-push.js` | Phase 6: Providing exact dataLayer.push() code to developers |
104
- | `templates/gtm-variables.js` | Phase 3: GTM variable config + first-touch cookie script |
105
- | `templates/capi-payload.md` | Phase 4: Facebook CAPI and TikTok Events API payload specs |
393
+ Include a Quick Reference Card at the end (1-page summary):
394
+ - All tracking IDs in one table
395
+ - DataLayer event names cheat sheet
396
+ - UTM convention quick reference
397
+ - Top 3 priority events to implement first (ranked by algorithm impact)
106
398
 
107
- ## Output
399
+ After saving, use present_files if available, otherwise share file link.
108
400
 
109
- Save as `tracking-strategy-[brand]-[YYYYMMDD].md`. Must be implementable without follow-up questions.
401
+ Offer follow-up options:
402
+ 1. "Want me to create a GTM Container JSON spec for direct import?"
403
+ 2. "Want me to create a separate CAPI server-side implementation guide?"
404
+ 3. "Need a Google Sheets template for UTM convention tracking for the whole team?"
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: cm-auto-publisher
3
+ description: Comprehensive publishing automation skill bridging AI agents (OpenClaw, Manus, Claude) to the Content Factory Router. Uses the Router API to publish markdown articles with rich media to any connected Astro site natively.
4
+ ---
5
+
6
+ # cm-auto-publisher: The Agentic Publishing Skill
7
+
8
+ > **Goal:** Take unstructured input (links, ideas, raw text), write a highly engaging article following Content Factory rules, and instantly publish it via the Content Factory Router API.
9
+
10
+ ## When to Use
11
+
12
+ **ALWAYS when:**
13
+ - User provides a link/video and says "Write an article about this and publish it".
14
+ - User says "Draft and push this news to the blog".
15
+ - You have finished drafting an article and need to deploy it to the live site.
16
+ - An automated cron job triggers you to aggregate news and auto-publish.
17
+
18
+ ## The Process
19
+
20
+ ### Phase 1: Content Extraction & Structuring
21
+ 1. **Analyze Input:** If given a URL, use `read_url_content` (or your browsing tool) to read the source. If given images or Youtube links, extract them.
22
+ 2. **Draft Content:** Write a compelling article in standard Markdown.
23
+ - Use headings (`##`, `###`).
24
+ - For YouTube videos, use the Astro component: `<YouTube id="VIDEO_ID" />`.
25
+ - For images, just use standard markdown: `![Alt text](image_filename.jpg)`.
26
+
27
+ ### Phase 2: Media Preparation
28
+ Identify all external images that need to be published with the article.
29
+ DO NOT try to download them to the local disk using bash commands. The Content Factory Router will handle this.
30
+ Instead, build a `media` array mapping the original URLs to the desired clean filenames.
31
+
32
+ ```json
33
+ "media": [
34
+ {
35
+ "url": "https://source.com/raw-image-123.jpg",
36
+ "filename": "clean-seo-friendly-name.jpg"
37
+ }
38
+ ]
39
+ ```
40
+
41
+ ### Phase 3: API Payload Construction
42
+ Construct the JSON payload matching the target site's schema.
43
+ Standard Target: `cody-master` (mapped to `tody-agent/todyle-web`).
44
+
45
+ ```json
46
+ {
47
+ "site_id": "cody-master",
48
+ "title": "[Engaging Title]",
49
+ "description": "[1-2 sentence SEO meta description]",
50
+ "category": "news", // or "guide", "use-case"
51
+ "readingTime": "5 min read",
52
+ "tags": ["AI", "Vibe Coding", "Automation"],
53
+ "content": "The raw markdown content here...",
54
+ "media": [ ... ]
55
+ }
56
+ ```
57
+
58
+ ### Phase 4: Publish via Router API
59
+ Send the payload to the Cloudflare Worker via a standard `fetch` or `curl` command.
60
+
61
+ 1. **Get the Secret:** Retrieve the API token from the `.env` file or ask the user for the `PUBLISHER_API_KEY`.
62
+ 2. **Send POST Request:**
63
+ Use a local script or curl to send the data to the worker.
64
+
65
+ ```bash
66
+ # Example curl (assuming the payload is saved to payload.json)
67
+ curl -X POST https://content-factory-router.<YOUR-CLOUDFLARE-ACCOUNT>.workers.dev/publish \
68
+ -H "Content-Type: application/json" \
69
+ -H "Authorization: Bearer <API_KEY>" \
70
+ -d @payload.json
71
+ ```
72
+
73
+ ### Phase 5: Verification
74
+ 1. Check the response from the Worker. It should return `{"success": true, "message": "Published...", "commit_sha": "..."}`.
75
+ 2. Inform the user that the article has been successfully committed to GitHub and Cloudflare Pages is now building it.
76
+
77
+ ---
78
+
79
+ ## Red Flags - STOP!
80
+ - ❌ **DO NOT** manually create `.mdx` files in `src/content/articles/` and run `git push` if using this skill! Let the Router API handle the Git history and image blob creation to ensure data consistency.
81
+ - ❌ **DO NOT** use `cat` or `echo` to build complex JSON payloads in bash. Save the payload to a `.json` file using your file writing tool, then pass it to `curl`.