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.
- package/dist/domainResolver.js +2 -2
- package/dist/index.js +4 -4
- package/dist/types.d.ts +1 -1
- package/domains/analytics/.agents/skills/ansoff-matrix/SKILL.md +300 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/ansoff-matrix/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/bcg-matrix/SKILL.md +329 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/bcg-matrix/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/SKILL.md +416 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/blue-ocean-strategy/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/board/SKILL.md +364 -0
- package/domains/analytics/.agents/skills/board/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/board/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/board/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/board/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/board/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/board/agents/skill.yaml +20 -0
- package/domains/analytics/.agents/skills/cohort-analysis/SKILL.md +322 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/cohort-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/competitive-analysis/SKILL.md +395 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/competitive-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/SKILL.md +331 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/customer-journey-mapping/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/gates/SKILL.md +366 -0
- package/domains/analytics/.agents/skills/gates/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/gates/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/gates/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/gates/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/gates/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/gates/agents/skill.yaml +20 -0
- package/domains/analytics/.agents/skills/handoff/SKILL.md +370 -0
- package/domains/analytics/.agents/skills/handoff/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/handoff/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/handoff/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/handoff/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/handoff/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/handoff/agents/skill.yaml +20 -0
- package/domains/analytics/.agents/skills/html-pdf-report/SKILL.md +565 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/claude.json +12 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/copilot.json +12 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/gemini.json +12 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/qwen.json +12 -0
- package/domains/analytics/.agents/skills/html-pdf-report/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/SKILL.md +390 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/icp-buyer-persona/agents/skill.yaml +22 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/SKILL.md +341 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/jtbd-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/pest-analysis/SKILL.md +305 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/pest-analysis/agents/skill.yaml +22 -0
- package/domains/analytics/.agents/skills/porters-five-forces/SKILL.md +361 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/porters-five-forces/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/report-design/SKILL.md +398 -0
- package/domains/analytics/.agents/skills/report-design/agents/claude.json +12 -0
- package/domains/analytics/.agents/skills/report-design/agents/copilot.json +12 -0
- package/domains/analytics/.agents/skills/report-design/agents/gemini.json +12 -0
- package/domains/analytics/.agents/skills/report-design/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/report-design/agents/qwen.json +12 -0
- package/domains/analytics/.agents/skills/report-design/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/rfm-analysis/SKILL.md +314 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/rfm-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/SKILL.md +378 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/session-prompt-generator/agents/skill.yaml +20 -0
- package/domains/analytics/.agents/skills/swot-analysis/SKILL.md +324 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/swot-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/tam-sam-som/SKILL.md +312 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/tam-sam-som/agents/skill.yaml +22 -0
- package/domains/analytics/.agents/skills/trend-analysis/SKILL.md +331 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/trend-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/unit-economics/SKILL.md +413 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/unit-economics/agents/skill.yaml +22 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/SKILL.md +330 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/value-chain-analysis/agents/skill.yaml +21 -0
- package/domains/analytics/.agents/skills/web-research/SKILL.md +308 -0
- package/domains/analytics/.agents/skills/web-research/agents/claude.json +10 -0
- package/domains/analytics/.agents/skills/web-research/agents/copilot.json +10 -0
- package/domains/analytics/.agents/skills/web-research/agents/gemini.json +10 -0
- package/domains/analytics/.agents/skills/web-research/agents/openai.yaml +8 -0
- package/domains/analytics/.agents/skills/web-research/agents/qwen.json +10 -0
- package/domains/analytics/.agents/skills/web-research/agents/skill.yaml +20 -0
- package/domains/analytics/.agents/workflows/analytics-pipeline-rules.md +288 -0
- package/domains/analytics/.agents/workflows/analyze.md +395 -0
- package/domains/analytics/.agents/workflows/quick-insight.md +282 -0
- package/domains/analytics/AGENTS.md +95 -0
- package/domains/analytics/AGENTS.yaml +62 -0
- package/domains/analytics/CONTEXT.md +25 -0
- package/domains/analytics/agents/conductor.md +447 -0
- package/domains/analytics/agents/data_analyst.md +426 -0
- package/domains/analytics/agents/designer.md +428 -0
- package/domains/analytics/agents/interviewer.md +466 -0
- package/domains/analytics/agents/layouter.md +348 -0
- package/domains/analytics/agents/mediator.md +476 -0
- package/domains/analytics/agents/orchestrator.claude.json +10 -0
- package/domains/analytics/agents/orchestrator.copilot.json +10 -0
- package/domains/analytics/agents/orchestrator.gemini.json +10 -0
- package/domains/analytics/agents/orchestrator.openai.yaml +8 -0
- package/domains/analytics/agents/orchestrator.qwen.json +10 -0
- package/domains/analytics/agents/researcher.md +430 -0
- package/domains/analytics/agents/strategist.md +433 -0
- package/domains/analytics/domain.json +5 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/SKILL.md +300 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/SKILL.md +329 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/bcg-matrix/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/SKILL.md +416 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/board/SKILL.md +364 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/board/agents/skill.yaml +22 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/SKILL.md +322 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/cohort-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/SKILL.md +395 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/competitive-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/SKILL.md +331 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/claude.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/copilot.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/gemini.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/qwen.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/agents/skill.yaml +26 -0
- package/domains/analytics/locales/en/.agents/skills/gates/SKILL.md +366 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/gates/agents/skill.yaml +22 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/SKILL.md +370 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/handoff/agents/skill.yaml +22 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/SKILL.md +565 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/html-pdf-report/agents/skill.yaml +27 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/SKILL.md +390 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/agents/skill.yaml +26 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/SKILL.md +341 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/claude.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/copilot.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/gemini.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/qwen.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/agents/skill.yaml +26 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/SKILL.md +305 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/pest-analysis/agents/skill.yaml +29 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/SKILL.md +361 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/claude.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/copilot.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/gemini.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/qwen.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/porters-five-forces/agents/skill.yaml +28 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/SKILL.md +398 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/report-design/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/SKILL.md +314 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/rfm-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/SKILL.md +378 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/agents/skill.yaml +22 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/SKILL.md +324 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/swot-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/SKILL.md +312 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/claude.json +19 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/copilot.json +19 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/gemini.json +19 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/qwen.json +19 -0
- package/domains/analytics/locales/en/.agents/skills/tam-sam-som/agents/skill.yaml +27 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/SKILL.md +331 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/claude.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/copilot.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/gemini.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/qwen.json +17 -0
- package/domains/analytics/locales/en/.agents/skills/trend-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/SKILL.md +413 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/claude.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/copilot.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/gemini.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/qwen.json +18 -0
- package/domains/analytics/locales/en/.agents/skills/unit-economics/agents/skill.yaml +24 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/SKILL.md +350 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/agents/skill.yaml +25 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/SKILL.md +309 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/claude.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/copilot.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/gemini.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/openai.yaml +8 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/qwen.json +16 -0
- package/domains/analytics/locales/en/.agents/skills/web-research/agents/skill.yaml +22 -0
- package/domains/analytics/locales/en/.agents/workflows/analytics-pipeline-rules.md +288 -0
- package/domains/analytics/locales/en/.agents/workflows/analyze.md +395 -0
- package/domains/analytics/locales/en/.agents/workflows/quick-insight.md +282 -0
- package/domains/analytics/locales/en/AGENTS.md +95 -0
- package/domains/analytics/locales/en/AGENTS.yaml +62 -0
- package/domains/analytics/locales/en/CONTEXT.md +25 -0
- package/domains/analytics/locales/en/agents/conductor.md +430 -0
- package/domains/analytics/locales/en/agents/data_analyst.md +409 -0
- package/domains/analytics/locales/en/agents/designer.md +413 -0
- package/domains/analytics/locales/en/agents/interviewer.md +466 -0
- package/domains/analytics/locales/en/agents/layouter.md +348 -0
- package/domains/analytics/locales/en/agents/mediator.md +476 -0
- package/domains/analytics/locales/en/agents/researcher.md +430 -0
- package/domains/analytics/locales/en/agents/strategist.md +433 -0
- package/domains/analytics/locales/en/prompt-examples.md +17 -0
- package/domains/analytics/prompt-examples.md +17 -0
- 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` |
|