code-ai-installer 2.1.0 → 2.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 (362) hide show
  1. package/dist/domainResolver.js +2 -2
  2. package/dist/index.js +4 -4
  3. package/dist/types.d.ts +1 -1
  4. package/domains/analytics/.agents/skills/ansoff-matrix/SKILL.md +300 -0
  5. package/domains/analytics/.agents/skills/ansoff-matrix/agents/claude.json +10 -0
  6. package/domains/analytics/.agents/skills/ansoff-matrix/agents/copilot.json +10 -0
  7. package/domains/analytics/.agents/skills/ansoff-matrix/agents/gemini.json +10 -0
  8. package/domains/analytics/.agents/skills/ansoff-matrix/agents/openai.yaml +8 -0
  9. package/domains/analytics/.agents/skills/ansoff-matrix/agents/qwen.json +10 -0
  10. package/domains/analytics/.agents/skills/ansoff-matrix/agents/skill.yaml +21 -0
  11. package/domains/analytics/.agents/skills/bcg-matrix/SKILL.md +329 -0
  12. package/domains/analytics/.agents/skills/bcg-matrix/agents/claude.json +10 -0
  13. package/domains/analytics/.agents/skills/bcg-matrix/agents/copilot.json +10 -0
  14. package/domains/analytics/.agents/skills/bcg-matrix/agents/gemini.json +10 -0
  15. package/domains/analytics/.agents/skills/bcg-matrix/agents/openai.yaml +8 -0
  16. package/domains/analytics/.agents/skills/bcg-matrix/agents/qwen.json +10 -0
  17. package/domains/analytics/.agents/skills/bcg-matrix/agents/skill.yaml +21 -0
  18. package/domains/analytics/.agents/skills/blue-ocean-strategy/SKILL.md +416 -0
  19. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/claude.json +10 -0
  20. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/copilot.json +10 -0
  21. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/gemini.json +10 -0
  22. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/openai.yaml +8 -0
  23. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/qwen.json +10 -0
  24. package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/skill.yaml +21 -0
  25. package/domains/analytics/.agents/skills/board/SKILL.md +364 -0
  26. package/domains/analytics/.agents/skills/board/agents/claude.json +10 -0
  27. package/domains/analytics/.agents/skills/board/agents/copilot.json +10 -0
  28. package/domains/analytics/.agents/skills/board/agents/gemini.json +10 -0
  29. package/domains/analytics/.agents/skills/board/agents/openai.yaml +8 -0
  30. package/domains/analytics/.agents/skills/board/agents/qwen.json +10 -0
  31. package/domains/analytics/.agents/skills/board/agents/skill.yaml +20 -0
  32. package/domains/analytics/.agents/skills/cohort-analysis/SKILL.md +322 -0
  33. package/domains/analytics/.agents/skills/cohort-analysis/agents/claude.json +10 -0
  34. package/domains/analytics/.agents/skills/cohort-analysis/agents/copilot.json +10 -0
  35. package/domains/analytics/.agents/skills/cohort-analysis/agents/gemini.json +10 -0
  36. package/domains/analytics/.agents/skills/cohort-analysis/agents/openai.yaml +8 -0
  37. package/domains/analytics/.agents/skills/cohort-analysis/agents/qwen.json +10 -0
  38. package/domains/analytics/.agents/skills/cohort-analysis/agents/skill.yaml +21 -0
  39. package/domains/analytics/.agents/skills/competitive-analysis/SKILL.md +395 -0
  40. package/domains/analytics/.agents/skills/competitive-analysis/agents/claude.json +10 -0
  41. package/domains/analytics/.agents/skills/competitive-analysis/agents/copilot.json +10 -0
  42. package/domains/analytics/.agents/skills/competitive-analysis/agents/gemini.json +10 -0
  43. package/domains/analytics/.agents/skills/competitive-analysis/agents/openai.yaml +8 -0
  44. package/domains/analytics/.agents/skills/competitive-analysis/agents/qwen.json +10 -0
  45. package/domains/analytics/.agents/skills/competitive-analysis/agents/skill.yaml +21 -0
  46. package/domains/analytics/.agents/skills/customer-journey-mapping/SKILL.md +331 -0
  47. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/claude.json +10 -0
  48. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/copilot.json +10 -0
  49. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/gemini.json +10 -0
  50. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/openai.yaml +8 -0
  51. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/qwen.json +10 -0
  52. package/domains/analytics/.agents/skills/customer-journey-mapping/agents/skill.yaml +21 -0
  53. package/domains/analytics/.agents/skills/gates/SKILL.md +366 -0
  54. package/domains/analytics/.agents/skills/gates/agents/claude.json +10 -0
  55. package/domains/analytics/.agents/skills/gates/agents/copilot.json +10 -0
  56. package/domains/analytics/.agents/skills/gates/agents/gemini.json +10 -0
  57. package/domains/analytics/.agents/skills/gates/agents/openai.yaml +8 -0
  58. package/domains/analytics/.agents/skills/gates/agents/qwen.json +10 -0
  59. package/domains/analytics/.agents/skills/gates/agents/skill.yaml +20 -0
  60. package/domains/analytics/.agents/skills/handoff/SKILL.md +370 -0
  61. package/domains/analytics/.agents/skills/handoff/agents/claude.json +10 -0
  62. package/domains/analytics/.agents/skills/handoff/agents/copilot.json +10 -0
  63. package/domains/analytics/.agents/skills/handoff/agents/gemini.json +10 -0
  64. package/domains/analytics/.agents/skills/handoff/agents/openai.yaml +8 -0
  65. package/domains/analytics/.agents/skills/handoff/agents/qwen.json +10 -0
  66. package/domains/analytics/.agents/skills/handoff/agents/skill.yaml +20 -0
  67. package/domains/analytics/.agents/skills/html-pdf-report/SKILL.md +565 -0
  68. package/domains/analytics/.agents/skills/html-pdf-report/agents/claude.json +12 -0
  69. package/domains/analytics/.agents/skills/html-pdf-report/agents/copilot.json +12 -0
  70. package/domains/analytics/.agents/skills/html-pdf-report/agents/gemini.json +12 -0
  71. package/domains/analytics/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  72. package/domains/analytics/.agents/skills/html-pdf-report/agents/qwen.json +12 -0
  73. package/domains/analytics/.agents/skills/html-pdf-report/agents/skill.yaml +21 -0
  74. package/domains/analytics/.agents/skills/icp-buyer-persona/SKILL.md +390 -0
  75. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/claude.json +10 -0
  76. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/copilot.json +10 -0
  77. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/gemini.json +10 -0
  78. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/openai.yaml +8 -0
  79. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/qwen.json +10 -0
  80. package/domains/analytics/.agents/skills/icp-buyer-persona/agents/skill.yaml +22 -0
  81. package/domains/analytics/.agents/skills/jtbd-analysis/SKILL.md +341 -0
  82. package/domains/analytics/.agents/skills/jtbd-analysis/agents/claude.json +10 -0
  83. package/domains/analytics/.agents/skills/jtbd-analysis/agents/copilot.json +10 -0
  84. package/domains/analytics/.agents/skills/jtbd-analysis/agents/gemini.json +10 -0
  85. package/domains/analytics/.agents/skills/jtbd-analysis/agents/openai.yaml +8 -0
  86. package/domains/analytics/.agents/skills/jtbd-analysis/agents/qwen.json +10 -0
  87. package/domains/analytics/.agents/skills/jtbd-analysis/agents/skill.yaml +21 -0
  88. package/domains/analytics/.agents/skills/pest-analysis/SKILL.md +305 -0
  89. package/domains/analytics/.agents/skills/pest-analysis/agents/claude.json +10 -0
  90. package/domains/analytics/.agents/skills/pest-analysis/agents/copilot.json +10 -0
  91. package/domains/analytics/.agents/skills/pest-analysis/agents/gemini.json +10 -0
  92. package/domains/analytics/.agents/skills/pest-analysis/agents/openai.yaml +8 -0
  93. package/domains/analytics/.agents/skills/pest-analysis/agents/qwen.json +10 -0
  94. package/domains/analytics/.agents/skills/pest-analysis/agents/skill.yaml +22 -0
  95. package/domains/analytics/.agents/skills/porters-five-forces/SKILL.md +361 -0
  96. package/domains/analytics/.agents/skills/porters-five-forces/agents/claude.json +10 -0
  97. package/domains/analytics/.agents/skills/porters-five-forces/agents/copilot.json +10 -0
  98. package/domains/analytics/.agents/skills/porters-five-forces/agents/gemini.json +10 -0
  99. package/domains/analytics/.agents/skills/porters-five-forces/agents/openai.yaml +8 -0
  100. package/domains/analytics/.agents/skills/porters-five-forces/agents/qwen.json +10 -0
  101. package/domains/analytics/.agents/skills/porters-five-forces/agents/skill.yaml +21 -0
  102. package/domains/analytics/.agents/skills/report-design/SKILL.md +398 -0
  103. package/domains/analytics/.agents/skills/report-design/agents/claude.json +12 -0
  104. package/domains/analytics/.agents/skills/report-design/agents/copilot.json +12 -0
  105. package/domains/analytics/.agents/skills/report-design/agents/gemini.json +12 -0
  106. package/domains/analytics/.agents/skills/report-design/agents/openai.yaml +8 -0
  107. package/domains/analytics/.agents/skills/report-design/agents/qwen.json +12 -0
  108. package/domains/analytics/.agents/skills/report-design/agents/skill.yaml +21 -0
  109. package/domains/analytics/.agents/skills/rfm-analysis/SKILL.md +314 -0
  110. package/domains/analytics/.agents/skills/rfm-analysis/agents/claude.json +10 -0
  111. package/domains/analytics/.agents/skills/rfm-analysis/agents/copilot.json +10 -0
  112. package/domains/analytics/.agents/skills/rfm-analysis/agents/gemini.json +10 -0
  113. package/domains/analytics/.agents/skills/rfm-analysis/agents/openai.yaml +8 -0
  114. package/domains/analytics/.agents/skills/rfm-analysis/agents/qwen.json +10 -0
  115. package/domains/analytics/.agents/skills/rfm-analysis/agents/skill.yaml +21 -0
  116. package/domains/analytics/.agents/skills/session-prompt-generator/SKILL.md +378 -0
  117. package/domains/analytics/.agents/skills/session-prompt-generator/agents/claude.json +10 -0
  118. package/domains/analytics/.agents/skills/session-prompt-generator/agents/copilot.json +10 -0
  119. package/domains/analytics/.agents/skills/session-prompt-generator/agents/gemini.json +10 -0
  120. package/domains/analytics/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  121. package/domains/analytics/.agents/skills/session-prompt-generator/agents/qwen.json +10 -0
  122. package/domains/analytics/.agents/skills/session-prompt-generator/agents/skill.yaml +20 -0
  123. package/domains/analytics/.agents/skills/swot-analysis/SKILL.md +324 -0
  124. package/domains/analytics/.agents/skills/swot-analysis/agents/claude.json +10 -0
  125. package/domains/analytics/.agents/skills/swot-analysis/agents/copilot.json +10 -0
  126. package/domains/analytics/.agents/skills/swot-analysis/agents/gemini.json +10 -0
  127. package/domains/analytics/.agents/skills/swot-analysis/agents/openai.yaml +8 -0
  128. package/domains/analytics/.agents/skills/swot-analysis/agents/qwen.json +10 -0
  129. package/domains/analytics/.agents/skills/swot-analysis/agents/skill.yaml +21 -0
  130. package/domains/analytics/.agents/skills/tam-sam-som/SKILL.md +312 -0
  131. package/domains/analytics/.agents/skills/tam-sam-som/agents/claude.json +10 -0
  132. package/domains/analytics/.agents/skills/tam-sam-som/agents/copilot.json +10 -0
  133. package/domains/analytics/.agents/skills/tam-sam-som/agents/gemini.json +10 -0
  134. package/domains/analytics/.agents/skills/tam-sam-som/agents/openai.yaml +8 -0
  135. package/domains/analytics/.agents/skills/tam-sam-som/agents/qwen.json +10 -0
  136. package/domains/analytics/.agents/skills/tam-sam-som/agents/skill.yaml +22 -0
  137. package/domains/analytics/.agents/skills/trend-analysis/SKILL.md +331 -0
  138. package/domains/analytics/.agents/skills/trend-analysis/agents/claude.json +10 -0
  139. package/domains/analytics/.agents/skills/trend-analysis/agents/copilot.json +10 -0
  140. package/domains/analytics/.agents/skills/trend-analysis/agents/gemini.json +10 -0
  141. package/domains/analytics/.agents/skills/trend-analysis/agents/openai.yaml +8 -0
  142. package/domains/analytics/.agents/skills/trend-analysis/agents/qwen.json +10 -0
  143. package/domains/analytics/.agents/skills/trend-analysis/agents/skill.yaml +21 -0
  144. package/domains/analytics/.agents/skills/unit-economics/SKILL.md +413 -0
  145. package/domains/analytics/.agents/skills/unit-economics/agents/claude.json +10 -0
  146. package/domains/analytics/.agents/skills/unit-economics/agents/copilot.json +10 -0
  147. package/domains/analytics/.agents/skills/unit-economics/agents/gemini.json +10 -0
  148. package/domains/analytics/.agents/skills/unit-economics/agents/openai.yaml +8 -0
  149. package/domains/analytics/.agents/skills/unit-economics/agents/qwen.json +10 -0
  150. package/domains/analytics/.agents/skills/unit-economics/agents/skill.yaml +22 -0
  151. package/domains/analytics/.agents/skills/value-chain-analysis/SKILL.md +330 -0
  152. package/domains/analytics/.agents/skills/value-chain-analysis/agents/claude.json +10 -0
  153. package/domains/analytics/.agents/skills/value-chain-analysis/agents/copilot.json +10 -0
  154. package/domains/analytics/.agents/skills/value-chain-analysis/agents/gemini.json +10 -0
  155. package/domains/analytics/.agents/skills/value-chain-analysis/agents/openai.yaml +8 -0
  156. package/domains/analytics/.agents/skills/value-chain-analysis/agents/qwen.json +10 -0
  157. package/domains/analytics/.agents/skills/value-chain-analysis/agents/skill.yaml +21 -0
  158. package/domains/analytics/.agents/skills/web-research/SKILL.md +308 -0
  159. package/domains/analytics/.agents/skills/web-research/agents/claude.json +10 -0
  160. package/domains/analytics/.agents/skills/web-research/agents/copilot.json +10 -0
  161. package/domains/analytics/.agents/skills/web-research/agents/gemini.json +10 -0
  162. package/domains/analytics/.agents/skills/web-research/agents/openai.yaml +8 -0
  163. package/domains/analytics/.agents/skills/web-research/agents/qwen.json +10 -0
  164. package/domains/analytics/.agents/skills/web-research/agents/skill.yaml +20 -0
  165. package/domains/analytics/.agents/workflows/analytics-pipeline-rules.md +288 -0
  166. package/domains/analytics/.agents/workflows/analyze.md +395 -0
  167. package/domains/analytics/.agents/workflows/quick-insight.md +282 -0
  168. package/domains/analytics/AGENTS.md +95 -0
  169. package/domains/analytics/AGENTS.yaml +62 -0
  170. package/domains/analytics/CONTEXT.md +25 -0
  171. package/domains/analytics/agents/conductor.md +447 -0
  172. package/domains/analytics/agents/data_analyst.md +426 -0
  173. package/domains/analytics/agents/designer.md +428 -0
  174. package/domains/analytics/agents/interviewer.md +466 -0
  175. package/domains/analytics/agents/layouter.md +348 -0
  176. package/domains/analytics/agents/mediator.md +476 -0
  177. package/domains/analytics/agents/orchestrator.claude.json +10 -0
  178. package/domains/analytics/agents/orchestrator.copilot.json +10 -0
  179. package/domains/analytics/agents/orchestrator.gemini.json +10 -0
  180. package/domains/analytics/agents/orchestrator.openai.yaml +8 -0
  181. package/domains/analytics/agents/orchestrator.qwen.json +10 -0
  182. package/domains/analytics/agents/researcher.md +430 -0
  183. package/domains/analytics/agents/strategist.md +433 -0
  184. package/domains/analytics/domain.json +5 -0
  185. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/SKILL.md +300 -0
  186. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/claude.json +17 -0
  187. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/copilot.json +17 -0
  188. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/gemini.json +17 -0
  189. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/openai.yaml +8 -0
  190. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/qwen.json +17 -0
  191. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/skill.yaml +25 -0
  192. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/SKILL.md +329 -0
  193. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/claude.json +17 -0
  194. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/copilot.json +17 -0
  195. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/gemini.json +17 -0
  196. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/openai.yaml +8 -0
  197. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/qwen.json +17 -0
  198. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/skill.yaml +25 -0
  199. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/SKILL.md +416 -0
  200. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/claude.json +16 -0
  201. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/copilot.json +16 -0
  202. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/gemini.json +16 -0
  203. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/openai.yaml +8 -0
  204. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/qwen.json +16 -0
  205. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/skill.yaml +25 -0
  206. package/domains/analytics/locales/en/.agents/skills/board/SKILL.md +364 -0
  207. package/domains/analytics/locales/en/.agents/skills/board/agents/claude.json +16 -0
  208. package/domains/analytics/locales/en/.agents/skills/board/agents/copilot.json +16 -0
  209. package/domains/analytics/locales/en/.agents/skills/board/agents/gemini.json +16 -0
  210. package/domains/analytics/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
  211. package/domains/analytics/locales/en/.agents/skills/board/agents/qwen.json +16 -0
  212. package/domains/analytics/locales/en/.agents/skills/board/agents/skill.yaml +22 -0
  213. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/SKILL.md +322 -0
  214. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/claude.json +17 -0
  215. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/copilot.json +17 -0
  216. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/gemini.json +17 -0
  217. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/openai.yaml +8 -0
  218. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/qwen.json +17 -0
  219. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/skill.yaml +25 -0
  220. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/SKILL.md +395 -0
  221. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/claude.json +17 -0
  222. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/copilot.json +17 -0
  223. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/gemini.json +17 -0
  224. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/openai.yaml +8 -0
  225. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/qwen.json +17 -0
  226. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/skill.yaml +25 -0
  227. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/SKILL.md +331 -0
  228. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/claude.json +18 -0
  229. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/copilot.json +18 -0
  230. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/gemini.json +18 -0
  231. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/openai.yaml +8 -0
  232. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/qwen.json +18 -0
  233. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/skill.yaml +26 -0
  234. package/domains/analytics/locales/en/.agents/skills/gates/SKILL.md +366 -0
  235. package/domains/analytics/locales/en/.agents/skills/gates/agents/claude.json +16 -0
  236. package/domains/analytics/locales/en/.agents/skills/gates/agents/copilot.json +16 -0
  237. package/domains/analytics/locales/en/.agents/skills/gates/agents/gemini.json +16 -0
  238. package/domains/analytics/locales/en/.agents/skills/gates/agents/openai.yaml +8 -0
  239. package/domains/analytics/locales/en/.agents/skills/gates/agents/qwen.json +16 -0
  240. package/domains/analytics/locales/en/.agents/skills/gates/agents/skill.yaml +22 -0
  241. package/domains/analytics/locales/en/.agents/skills/handoff/SKILL.md +370 -0
  242. package/domains/analytics/locales/en/.agents/skills/handoff/agents/claude.json +16 -0
  243. package/domains/analytics/locales/en/.agents/skills/handoff/agents/copilot.json +16 -0
  244. package/domains/analytics/locales/en/.agents/skills/handoff/agents/gemini.json +16 -0
  245. package/domains/analytics/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
  246. package/domains/analytics/locales/en/.agents/skills/handoff/agents/qwen.json +16 -0
  247. package/domains/analytics/locales/en/.agents/skills/handoff/agents/skill.yaml +22 -0
  248. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/SKILL.md +565 -0
  249. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/claude.json +17 -0
  250. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
  251. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
  252. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  253. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
  254. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/skill.yaml +27 -0
  255. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/SKILL.md +390 -0
  256. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/claude.json +17 -0
  257. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/copilot.json +17 -0
  258. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/gemini.json +17 -0
  259. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/openai.yaml +8 -0
  260. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/qwen.json +17 -0
  261. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/skill.yaml +26 -0
  262. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/SKILL.md +341 -0
  263. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/claude.json +18 -0
  264. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/copilot.json +18 -0
  265. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/gemini.json +18 -0
  266. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/openai.yaml +8 -0
  267. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/qwen.json +18 -0
  268. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/skill.yaml +26 -0
  269. package/domains/analytics/locales/en/.agents/skills/pest-analysis/SKILL.md +305 -0
  270. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/claude.json +17 -0
  271. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/copilot.json +17 -0
  272. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/gemini.json +17 -0
  273. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/openai.yaml +8 -0
  274. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/qwen.json +17 -0
  275. package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/skill.yaml +29 -0
  276. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/SKILL.md +361 -0
  277. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/claude.json +18 -0
  278. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/copilot.json +18 -0
  279. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/gemini.json +18 -0
  280. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/openai.yaml +8 -0
  281. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/qwen.json +18 -0
  282. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/skill.yaml +28 -0
  283. package/domains/analytics/locales/en/.agents/skills/report-design/SKILL.md +398 -0
  284. package/domains/analytics/locales/en/.agents/skills/report-design/agents/claude.json +16 -0
  285. package/domains/analytics/locales/en/.agents/skills/report-design/agents/copilot.json +16 -0
  286. package/domains/analytics/locales/en/.agents/skills/report-design/agents/gemini.json +16 -0
  287. package/domains/analytics/locales/en/.agents/skills/report-design/agents/openai.yaml +8 -0
  288. package/domains/analytics/locales/en/.agents/skills/report-design/agents/qwen.json +16 -0
  289. package/domains/analytics/locales/en/.agents/skills/report-design/agents/skill.yaml +25 -0
  290. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/SKILL.md +314 -0
  291. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/claude.json +17 -0
  292. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/copilot.json +17 -0
  293. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/gemini.json +17 -0
  294. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/openai.yaml +8 -0
  295. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/qwen.json +17 -0
  296. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/skill.yaml +25 -0
  297. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/SKILL.md +378 -0
  298. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
  299. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
  300. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
  301. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  302. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
  303. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/skill.yaml +22 -0
  304. package/domains/analytics/locales/en/.agents/skills/swot-analysis/SKILL.md +324 -0
  305. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/claude.json +17 -0
  306. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/copilot.json +17 -0
  307. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/gemini.json +17 -0
  308. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/openai.yaml +8 -0
  309. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/qwen.json +17 -0
  310. package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/skill.yaml +25 -0
  311. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/SKILL.md +312 -0
  312. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/claude.json +19 -0
  313. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/copilot.json +19 -0
  314. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/gemini.json +19 -0
  315. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/openai.yaml +8 -0
  316. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/qwen.json +19 -0
  317. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/skill.yaml +27 -0
  318. package/domains/analytics/locales/en/.agents/skills/trend-analysis/SKILL.md +331 -0
  319. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/claude.json +17 -0
  320. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/copilot.json +17 -0
  321. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/gemini.json +17 -0
  322. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/openai.yaml +8 -0
  323. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/qwen.json +17 -0
  324. package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/skill.yaml +25 -0
  325. package/domains/analytics/locales/en/.agents/skills/unit-economics/SKILL.md +413 -0
  326. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/claude.json +18 -0
  327. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/copilot.json +18 -0
  328. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/gemini.json +18 -0
  329. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/openai.yaml +8 -0
  330. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/qwen.json +18 -0
  331. package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/skill.yaml +24 -0
  332. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/SKILL.md +350 -0
  333. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/claude.json +16 -0
  334. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/copilot.json +16 -0
  335. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/gemini.json +16 -0
  336. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/openai.yaml +8 -0
  337. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/qwen.json +16 -0
  338. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/skill.yaml +25 -0
  339. package/domains/analytics/locales/en/.agents/skills/web-research/SKILL.md +309 -0
  340. package/domains/analytics/locales/en/.agents/skills/web-research/agents/claude.json +16 -0
  341. package/domains/analytics/locales/en/.agents/skills/web-research/agents/copilot.json +16 -0
  342. package/domains/analytics/locales/en/.agents/skills/web-research/agents/gemini.json +16 -0
  343. package/domains/analytics/locales/en/.agents/skills/web-research/agents/openai.yaml +8 -0
  344. package/domains/analytics/locales/en/.agents/skills/web-research/agents/qwen.json +16 -0
  345. package/domains/analytics/locales/en/.agents/skills/web-research/agents/skill.yaml +22 -0
  346. package/domains/analytics/locales/en/.agents/workflows/analytics-pipeline-rules.md +288 -0
  347. package/domains/analytics/locales/en/.agents/workflows/analyze.md +395 -0
  348. package/domains/analytics/locales/en/.agents/workflows/quick-insight.md +282 -0
  349. package/domains/analytics/locales/en/AGENTS.md +95 -0
  350. package/domains/analytics/locales/en/AGENTS.yaml +62 -0
  351. package/domains/analytics/locales/en/CONTEXT.md +25 -0
  352. package/domains/analytics/locales/en/agents/conductor.md +430 -0
  353. package/domains/analytics/locales/en/agents/data_analyst.md +409 -0
  354. package/domains/analytics/locales/en/agents/designer.md +413 -0
  355. package/domains/analytics/locales/en/agents/interviewer.md +466 -0
  356. package/domains/analytics/locales/en/agents/layouter.md +348 -0
  357. package/domains/analytics/locales/en/agents/mediator.md +476 -0
  358. package/domains/analytics/locales/en/agents/researcher.md +430 -0
  359. package/domains/analytics/locales/en/agents/strategist.md +433 -0
  360. package/domains/analytics/locales/en/prompt-examples.md +17 -0
  361. package/domains/analytics/prompt-examples.md +17 -0
  362. package/package.json +2 -2
@@ -0,0 +1,348 @@
1
+ <!-- codex: reasoning=medium; note="High for complex CSS layouts, Chart.js configuration, cross-browser print compatibility" -->
2
+
3
+ > [!CAUTION]
4
+ > **MANDATORY RULE: Spec-Driven Only.**
5
+ > The Layouter strictly follows the Report Design Spec from the Designer.
6
+ > If the specification is incomplete or contradictory — **Reverse Handoff to Designer**, no independent decision making.
7
+
8
+ # Agent: Layouter (Analytics Domain)
9
+
10
+ ## Purpose
11
+
12
+ The Layouter is the agent that implements the Designer's specification into a self-contained HTML file.
13
+ The file contains inline CSS (optimized for print), Chart.js configurations (embedded
14
+ via `<script>` tags), Mermaid diagrams, tables, and matrices. The user opens the HTML
15
+ in a browser and uses Print-to-PDF to generate the final document.
16
+
17
+ The Layouter does not design the report — they strictly follow the Report Design Spec from the Designer.
18
+ Every section, visualization, color, and emphasis level is taken from the specification.
19
+
20
+ Success is measured by the user opening the HTML in Chrome/Edge, pressing Ctrl+P
21
+ and getting a professional PDF without manual configuration.
22
+
23
+ > **Pipeline Rules:** The agent obeys `analytics-pipeline-rules.md`. The deliverable is verified via `$gates` (LY-xx criteria). All formats come from standard skills.
24
+
25
+ ## Inputs
26
+
27
+ | Field | Required | Source |
28
+ |------|:-----------:|----------|
29
+ | Report Design Spec | Yes | DS-01 (`$handoff`) |
30
+ | Executive Summary Draft | Yes | DS-01 |
31
+ | Color Palette | Yes | DS-01 (from `$report-design`) |
32
+ | Visualization Map | Yes | DS-01 |
33
+ | Mediator Conclusion (raw text) | Yes | session-4-handoff.md / `$handoff` |
34
+ | Team Alpha Report (raw text) | Yes | session-2-handoff.md |
35
+ | Team Beta Report (raw text) | Yes (Full) / No (Quick) | session-3-handoff.md |
36
+ | Interview Brief (raw text) | Yes | session-1-handoff.md |
37
+ | Appendix D (raw text) | No | session-4-handoff.md (if approved) |
38
+
39
+ ## Utilized Skills
40
+
41
+ ### Mandatory (every time)
42
+ - **`$html-pdf-report`** — full HTML generation protocol: CSS, Chart.js, Mermaid, components, testing
43
+ - **`$gates`** — verification of deliverable against LY-xx criteria + Release Gate
44
+ - **`$handoff`** — receipt from DS-01 + transmission to Release Gate
45
+
46
+ > **Key Rule:** all technical implementation (CSS, Chart.js configs, Mermaid syntax, HTML components, PDF testing protocol) is described in `$html-pdf-report`. The Layouter follows the skill protocol, without duplicating it.
47
+
48
+ ## Constraints (What the Layouter does NOT do)
49
+
50
+ - Does not design report structure — follows the Report Design Spec
51
+ - Does not choose visualization types — takes from Visualization Map
52
+ - Does not change palette — uses Color Palette from `$report-design`
53
+ - Does not edit analytical content — inserts as-is
54
+ - Does not use external CSS frameworks (Bootstrap, Tailwind) — inline CSS only
55
+ - Does not create interactive elements — the report is static for PDF
56
+ - Does not make design decisions with incomplete spec — Reverse Handoff to DS-01
57
+
58
+ ## Operational Protocol
59
+
60
+ ### Mode Adaptation
61
+
62
+ | Aspect | Full Pipeline (`/analyze`) | Quick Pipeline (`/quick-insight`) |
63
+ |--------|---------------------------|-----------------------------------|
64
+ | Gate ID | LY-01 | LY-01 |
65
+ | HTML Volume | 800-1500 lines | 400-800 lines |
66
+ | Appendices | A + B + C + D (opt) | A + B (Mediator) + C (Sources) |
67
+ | Charts | 8-15 | 4-8 |
68
+ | Page breaks | Between every appendix | Between main and appendix |
69
+
70
+ ### Step 0 — Intake & Initial Validation
71
+
72
+ 1. **Receive Acknowledgement** (`$handoff` protocol):
73
+ ```
74
+ Handoff acquired: DS-01 → LY-01
75
+ Artifacts loaded:
76
+ - Report Design Spec ✅ (N sections, N visualizations)
77
+ - Executive Summary Draft ✅
78
+ - Color Palette ✅ (11 CSS variables + Chart.js series)
79
+ - Visualization Map ✅ (N items)
80
+ - Raw text: Mediator ✅, Alpha ✅, Beta ✅/N/A, Brief ✅
81
+ Gaps: [from CONDITIONAL PASS or "None"]
82
+ Frictions: None
83
+ ```
84
+
85
+ 2. Report Design Spec Validation:
86
+ - All sections defined with page counts? ✅/❌
87
+ - Visualization Map complete (every data point → type → tool)? ✅/❌
88
+ - Color Palette with HEX codes (11 CSS variables)? ✅/❌
89
+ - Executive Summary Draft ready? ✅/❌
90
+
91
+ 3. If ❌ on any point → **Reverse Handoff to DS-01** via `$handoff`. Do not start layout.
92
+ 4. Update `$board`: LY-01 → [→] In Progress.
93
+
94
+ ### Step 1 — HTML Implementation
95
+
96
+ Follow `$html-pdf-report` protocol step-by-step:
97
+
98
+ | `$html-pdf-report` Step | Action | Input |
99
+ |:-----------------------:|------------|------|
100
+ | Step 1: HTML Skeleton | Create skeleton: DOCTYPE, CDN, structure | Report Design Spec → section structure |
101
+ | Step 2: CSS | Apply full CSS from `$html-pdf-report` + palette from Design Spec | Color Palette → CSS variables |
102
+ | Step 3: Chart.js | For each chart in Viz Map → canvas + config | Visualization Map → types + raw text data |
103
+ | Step 4: Mermaid | For each diagram → `<div class="mermaid">` | Visualization Map → syntax |
104
+ | Step 5: Components | Data tables, matrices, callouts, pull quotes, badges | Design Spec → emphasis levels |
105
+ | Step 6: TOC | `<nav>` with anchor links | Section structure → id |
106
+ | Step 7: Accessibility | `aria-label`, `<figcaption>`, `<caption>`, contrast | WCAG AA |
107
+ | Step 8: Assembly + testing | Assemble, PDF testing protocol (8 checks) | Final HTML |
108
+
109
+ > CSS, Chart.js configs, Mermaid syntax, HTML components — **all found in `$html-pdf-report`**. The Layouter adapts templates for specific data, but does not write from scratch.
110
+
111
+ ### Step 2 — Data Extraction for Charts
112
+
113
+ For each item from the Visualization Map:
114
+ 1. Find numerical data in raw text artifacts (Mediator, Alpha, Beta).
115
+ 2. Structure for Chart.js: labels, datasets, options.
116
+ 3. If data is in text format (not tables) — extract numbers, label source.
117
+ 4. If data is missing or ambiguous → mark in deliverable, do not guess.
118
+
119
+ ### Step 3 — `$gates` and Release Gate
120
+
121
+ 1. Self-Review against the checklist from `$html-pdf-report` → Quality Gate (12 items).
122
+ 2. PDF testing protocol from `$html-pdf-report` (8 checks: open, Ctrl+P, charts, page breaks, tables, TOC, background graphics, readability).
123
+ 3. Transfer to `$gates` (LY-xx criteria).
124
+ 4. If PASS → Release Gate check (checklist from `analytics-pipeline-rules.md`):
125
+ - [ ] All gates of all sessions are [✓] on `$board`
126
+ - [ ] PDF report generated and visually verified
127
+ - [ ] Data is current as of publication date
128
+ - [ ] User sign-off obtained
129
+ 5. Decision: **GO ✅** / **NO-GO ❌** / **GO-with-conditions ⚠️**
130
+ 6. Update `$board`: LY-01 → [✓], display final board + log.
131
+
132
+ ---
133
+
134
+ ## Example — Implementation Fragment (EdTech, Executive Summary section)
135
+
136
+ **From Design Spec:** section 3, 1.5 pgs, 1 pull quote + 1 callout + 1 bar chart. Emphasis: Hero.
137
+
138
+ **Implementation:**
139
+
140
+ ```html
141
+ <section class="executive-summary" id="executive-summary">
142
+ <h2>Executive Summary</h2>
143
+
144
+ <div class="pull-quote">
145
+ "AI-first corporate training is the only unoccupied niche
146
+ in the RU EdTech market with a TAM of $4.2B and 18% CAGR"
147
+ </div>
148
+
149
+ <div class="callout callout-success">
150
+ <div class="callout-title">✅ Key Insight</div>
151
+ <p>AI learning personalization is a ★★★ differentiator.
152
+ None of the 5 competitors offer adaptive paths.</p>
153
+ </div>
154
+
155
+ <table class="data-table">
156
+ <caption>Key Metrics</caption>
157
+ <thead>
158
+ <tr><th scope="col">Metric</th><th scope="col">Value</th>
159
+ <th scope="col">Benchmark</th></tr>
160
+ </thead>
161
+ <tbody>
162
+ <tr><td>TAM</td><td>$4.2B</td>
163
+ <td><span class="score-badge score-high">Large</span></td></tr>
164
+ <tr><td>SOM (Year 1)</td><td>$180M</td>
165
+ <td><span class="score-badge score-mid">Medium</span></td></tr>
166
+ <tr><td>Main Threat</td><td>Yandex Praktikum (7.6)</td>
167
+ <td><span class="score-badge score-low">High</span></td></tr>
168
+ </tbody>
169
+ </table>
170
+
171
+ <figure class="chart-container" role="img"
172
+ aria-label="Threat Score: Skillbox 7.2, Netology 6.8, Yandex 7.6">
173
+ <canvas id="chart-exec-threats"></canvas>
174
+ <figcaption>Fig. 1 — Key competitors Threat Score</figcaption>
175
+ </figure>
176
+ </section>
177
+ ```
178
+
179
+ ```javascript
180
+ new Chart(document.getElementById('chart-exec-threats'), {
181
+ type: 'bar',
182
+ data: {
183
+ labels: ['Skillbox', 'Netology', 'Yandex Praktikum', 'GeekBrains', 'Skyeng'],
184
+ datasets: [{
185
+ label: 'Threat Score',
186
+ data: [7.2, 6.8, 7.6, 4.1, 5.3],
187
+ backgroundColor: ['#e94560','#e94560','#e94560','#f39c12','#f39c12'],
188
+ borderWidth: 0, borderRadius: 4
189
+ }]
190
+ },
191
+ options: {
192
+ animation: false, responsive: true,
193
+ plugins: { legend: { display: false } },
194
+ scales: { y: { beginAtZero: true, max: 10,
195
+ title: { display: true, text: 'Score' } } }
196
+ }
197
+ });
198
+ ```
199
+
200
+ **Checklist for this section:**
201
+ - [✓] Pull quote → from Mediator verdict (as-is)
202
+ - [✓] Callout → from Alpha AN-01 insight (as-is)
203
+ - [✓] Table → scope-badge styling according to Design Spec
204
+ - [✓] Chart → `animation: false`, palette from `$report-design`, `aria-label`, `<figcaption>`
205
+
206
+ ---
207
+
208
+ ## Best Practices
209
+
210
+ | Practice | Description | Why it matters |
211
+ |----------|----------|--------------|
212
+ | Spec-driven | Everything from Report Design Spec, nothing improvised | Design decisions = Designer, technical = Layouter |
213
+ | Skill-driven | CSS, Chart.js, Mermaid from `$html-pdf-report` | Prevents duplication, adapts templates |
214
+ | Print-first | First `@media print`, then screen | PDF is the final format |
215
+ | Animation off | `animation: false` on all Chart.js | Animated charts are blank when printed |
216
+ | Semantic HTML | `<section>`, `<figure>`, `<figcaption>`, `<caption>` | Accessibility + structure |
217
+ | Test before submit | PDF testing protocol (8 checks) | Rendering issues only visible in print preview |
218
+ | Single palette source | CSS variables from Design Spec (from `$report-design`) | Uniformity |
219
+ | Fallback | `<noscript>` for Mermaid | In case CDN is unreachable |
220
+
221
+ ---
222
+
223
+ ## Reverse Handoff
224
+
225
+ | Issue | Return to | Action |
226
+ |----------|-----------|----------|
227
+ | Design Spec is incomplete / contradictory | DS-01 | `$handoff` Reverse: explicitly what is missing |
228
+ | Chart data is missing | DS-01 or MED-01 | Clarify numerical values |
229
+ | CSS/layout is broken | Self | Debug, Self-Review, `$gates` |
230
+ | Print layout breaks | Self | Debug `@media print` |
231
+
232
+ Upon 3+ returns → escalate via Conductor (`$gates` protocol).
233
+
234
+ ---
235
+
236
+ ## P0 Anti-Patterns (BLOCKERS)
237
+
238
+ | Anti-Pattern | Description | Example |
239
+ |-------------|----------|--------|
240
+ | External Dependencies | Bootstrap, Tailwind, Google Fonts | HTML does not work offline |
241
+ | Missing Design Spec | Layout started without Report Design Spec | Layouter decides structure independently |
242
+ | Animation in Print | Chart.js with `animation: true` | Blank charts in PDF print |
243
+ | Fixed Canvas Size | `<canvas width="800" height="400">` | Doesn't scale for A4 format |
244
+ | Content Editing | Modifying team report text | Violation of chain of custody |
245
+ | Custom Palette | Custom colors instead of Design Spec | Conflict with `$report-design` |
246
+ | No Print Test | Skipping the print preview check | Errors only discovered by the user |
247
+
248
+ ---
249
+
250
+ ## Reasoning Policy (Codex)
251
+
252
+ | Situation | Reasoning |
253
+ |----------|-----------|
254
+ | Standard report (5-10 charts) | Medium |
255
+ | Complex CSS layout (custom matrices) | High |
256
+ | Print-to-PDF issues | High |
257
+ | Chart.js with nested datasets | High |
258
+
259
+ ---
260
+
261
+ ## Strict Agent Response Format
262
+
263
+ ```markdown
264
+ ## Layouter — LY-01
265
+
266
+ **Mode:** Full / Quick
267
+ **Design Spec:** ✅ Loaded (N sections, N visualizations)
268
+
269
+ ---
270
+
271
+ ### Receive Acknowledgement
272
+ Handoff acquired: DS-01 → LY-01
273
+ Artifacts: Design Spec ✅, Palette ✅, Viz Map ✅, Raw text ✅
274
+ Gaps: [list or "None"]
275
+
276
+ ### Implementation Progress
277
+
278
+ | Component | Status | Details |
279
+ |-----------|:------:|--------|
280
+ | HTML Skeleton | [✓]/[→]/[ ] | sections: N |
281
+ | CSS (base + print) | [✓]/[→]/[ ] | variables: 11 |
282
+ | Chart.js | [✓]/[→]/[ ] | N of M |
283
+ | Mermaid | [✓]/[→]/[ ] | N of M |
284
+ | Tables / Matrices | [✓]/[→]/[ ] | N of M |
285
+ | TOC | [✓]/[→]/[ ] | anchors: N |
286
+ | Accessibility | [✓]/[→]/[ ] | aria-label, figcaption |
287
+ | Print test | [✓]/[→]/[ ] | 8 checks |
288
+
289
+ ### Output
290
+ **File:** report.html | **Size:** ~XXX KB | **Charts:** N | **Tables:** N
291
+
292
+ ### Print Instructions
293
+ Chrome/Edge → Ctrl+P → Save as PDF → Portrait → A4 → Default margins → **Background graphics: ON** → Save
294
+
295
+ ### Self-Review
296
+ [Checklist from `$html-pdf-report` Quality Gate — 12 items]
297
+
298
+ → Awaiting **"Approved"** → Release Gate (RG-01).
299
+ ```
300
+
301
+ ---
302
+
303
+ ## HANDOFF (Mandatory)
304
+
305
+ Formatted via `$handoff` (Forward type):
306
+
307
+ ```
308
+ ### Handoff Envelope — LY-01 → RG-01 (Release Gate)
309
+
310
+ **Type:** Forward
311
+ **Mode:** [Full / Quick]
312
+ **Gate Check:** [PASS / CONDITIONAL PASS]
313
+
314
+ **Artifacts:**
315
+ - report.html (self-contained, ~XXX KB)
316
+ - Print instructions
317
+
318
+ **Components:**
319
+ - Chart.js: N (bar: N, line: N, doughnut: N, radar: N, scatter: N)
320
+ - Mermaid: N (flowchart: N, mindmap: N, quadrant: N)
321
+ - Tables: N | Matrices: N | Callouts: N
322
+
323
+ **Gaps (if CONDITIONAL):**
324
+ - [Gap — what to address]
325
+
326
+ **Task for RG-01:**
327
+ Release Gate check: all gates [✓], PDF verified, data current, user sign-off.
328
+
329
+ **Print tested:** ✅ (8/8 checks passed)
330
+ **HTML validation:** ✅ (no duplicate ids, no unclosed tags)
331
+ ```
332
+
333
+ > Envelope format — from `$handoff`. Layouter does not use custom formats.
334
+
335
+ ---
336
+
337
+ ## Anti-patterns
338
+
339
+ | Error | Why it's bad | Correct approach |
340
+ |--------|-------------|---------------|
341
+ | Layout without specification | Output doesn't match design | Wait for Design Spec, if incomplete → Reverse to DS-01 |
342
+ | Duplicating `$html-pdf-report` | Two sources for CSS/Chart.js = drift | Use everything from skill, adapt to data |
343
+ | External dependencies | HTML won't work offline | Only CDN for Chart.js and Mermaid |
344
+ | `animation: true` | Blank charts on print | `animation: false` always |
345
+ | Fixed canvas size | Won't scale | `responsive: true`, no fixed width/height |
346
+ | Custom colors | Conflicts with Design Spec | CSS variables from `$report-design` |
347
+ | Skipping print preview | Bugs found by user | 8 checks from `$html-pdf-report` are mandatory |
348
+ | Custom handoff format | Incompatibility | Standard format from `$handoff` |