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,565 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: html-pdf-report
|
|
3
|
+
description: Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid
|
|
4
|
+
---
|
|
5
|
+
# HTML/PDF-отчёт — Генерация self-contained HTML для печати в PDF
|
|
6
|
+
|
|
7
|
+
## Когда использовать
|
|
8
|
+
- При реализации **финального аналитического отчёта** по Report Design Spec от Дизайнера.
|
|
9
|
+
- При создании **self-contained HTML-файла** с Chart.js, Mermaid и print-optimized CSS.
|
|
10
|
+
- При генерации **PDF-ready документа** через Print-to-PDF в браузере.
|
|
11
|
+
- При вёрстке **аналитических отчётов** с таблицами, матрицами, графиками и диаграммами.
|
|
12
|
+
|
|
13
|
+
## Вход
|
|
14
|
+
|
|
15
|
+
| Поле | Обязательно | Описание |
|
|
16
|
+
|------|:-----------:|----------|
|
|
17
|
+
| Report Design Spec | ✅ | Структура секций, визуализации, emphasis levels |
|
|
18
|
+
| Executive Summary Draft | ✅ | Черновик от Дизайнера |
|
|
19
|
+
| Color Palette | ✅ | Цвета primary, secondary, accent и т.д. |
|
|
20
|
+
| Visualization Map | ✅ | Список визуализаций с типами и данными |
|
|
21
|
+
| Raw text отчётов | ✅ | Заключение Медиатора, Alpha/Beta Reports, Brief |
|
|
22
|
+
| Числовые данные для графиков | ✅ | Извлечённые из отчётов или предоставленные |
|
|
23
|
+
|
|
24
|
+
> Если обязательные поля не предоставлены — **запросить у пользователя** до начала работы. Не генерировать заглушки.
|
|
25
|
+
|
|
26
|
+
## Источники данных
|
|
27
|
+
1. Report Design Spec от Дизайнера — структура, визуализации, палитра.
|
|
28
|
+
2. session-1 через session-4 handoff файлы — raw text для секций и приложений.
|
|
29
|
+
|
|
30
|
+
### Связь с другими скилами
|
|
31
|
+
| Скил | Взаимодействие | Когда |
|
|
32
|
+
|------|----------------|-------|
|
|
33
|
+
| `$gates` (DS-01) | Макет и спецификации визуализаций — главный вход для вёрстки | Перед началом работы |
|
|
34
|
+
| `$handoff` | Session handoff файлы — raw text для секций отчёта | Загрузка контента |
|
|
35
|
+
| `$board` | Обновление статуса LY-01 при завершении | После генерации HTML |
|
|
36
|
+
| `$gates` (LY-01) | Валидация HTML перед Release Gate | После завершения |
|
|
37
|
+
| Фреймворк-скилы | Таблицы, матрицы, scoring-модели — визуализировать по Visualization Map | Для Chart.js / таблиц |
|
|
38
|
+
|
|
39
|
+
## Протокол
|
|
40
|
+
|
|
41
|
+
### Шаг 0 — Валидация входов
|
|
42
|
+
1. Проверить наличие Report Design Spec (P0 BLOCKER если отсутствует).
|
|
43
|
+
2. Проверить наличие всех raw text артефактов.
|
|
44
|
+
3. Извлечь числовые данные для Chart.js из отчётов.
|
|
45
|
+
4. Сопоставить Visualization Map с доступными данными.
|
|
46
|
+
5. Если данные неполны — запросить у пользователя.
|
|
47
|
+
|
|
48
|
+
### Шаг 1 — HTML Skeleton
|
|
49
|
+
1. `<!DOCTYPE html>` с `lang="ru"`, `charset="UTF-8"`.
|
|
50
|
+
2. CDN: Chart.js 4.x, Mermaid 10.x.
|
|
51
|
+
3. `<style>` для всех CSS, `<script>` для Chart.js и Mermaid init.
|
|
52
|
+
4. Структура body:
|
|
53
|
+
|
|
54
|
+
```html
|
|
55
|
+
<div class="report">
|
|
56
|
+
<section class="title-page" id="title">...</section>
|
|
57
|
+
<nav class="toc" id="toc">...</nav>
|
|
58
|
+
<section class="executive-summary" id="executive-summary">...</section>
|
|
59
|
+
<section class="main-section" id="section-1">...</section>
|
|
60
|
+
<section class="main-section" id="section-2">...</section>
|
|
61
|
+
<section class="appendix" id="appendix-a">...</section>
|
|
62
|
+
</div>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
5. Каждая секция — семантический HTML: `<section>`, `<article>`, `<figure>`, `<figcaption>`.
|
|
66
|
+
6. Графики — `<figure>` с `<figcaption>` для accessibility и подписи.
|
|
67
|
+
|
|
68
|
+
### Шаг 2 — CSS (Base + Print)
|
|
69
|
+
|
|
70
|
+
Полный рабочий CSS-блок:
|
|
71
|
+
|
|
72
|
+
```css
|
|
73
|
+
/* ========== RESET & BASE ========== */
|
|
74
|
+
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
|
75
|
+
body {
|
|
76
|
+
font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
|
|
77
|
+
font-size: 11pt;
|
|
78
|
+
line-height: 1.6;
|
|
79
|
+
color: #1a1a2e;
|
|
80
|
+
background: #fff;
|
|
81
|
+
}
|
|
82
|
+
.report { max-width: 210mm; margin: 0 auto; padding: 20mm; }
|
|
83
|
+
|
|
84
|
+
/* ========== TYPOGRAPHY ========== */
|
|
85
|
+
h1 { font-size: 24pt; font-weight: 700; margin-bottom: 0.5em; color: var(--primary); }
|
|
86
|
+
h2 { font-size: 18pt; font-weight: 600; margin: 1.5em 0 0.5em; padding-bottom: 0.3em;
|
|
87
|
+
border-bottom: 2px solid var(--primary); color: var(--primary); }
|
|
88
|
+
h3 { font-size: 14pt; font-weight: 600; margin: 1.2em 0 0.4em; color: var(--secondary); }
|
|
89
|
+
h4 { font-size: 12pt; font-weight: 600; margin: 1em 0 0.3em; }
|
|
90
|
+
p { margin-bottom: 0.8em; }
|
|
91
|
+
blockquote { border-left: 4px solid var(--accent); padding: 0.8em 1.2em;
|
|
92
|
+
margin: 1em 0; background: var(--bg-light); font-style: italic; }
|
|
93
|
+
|
|
94
|
+
/* ========== CSS VARIABLES (из палитры) ========== */
|
|
95
|
+
:root {
|
|
96
|
+
--primary: #1a1a2e; /* Заменить из Design Spec */
|
|
97
|
+
--secondary: #16213e;
|
|
98
|
+
--accent: #0f3460;
|
|
99
|
+
--highlight: #e94560;
|
|
100
|
+
--bg-light: #f5f5f5;
|
|
101
|
+
--border: #e0e0e0;
|
|
102
|
+
--success: #2ecc71;
|
|
103
|
+
--warning: #f39c12;
|
|
104
|
+
--danger: #e74c3c;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/* ========== TITLE PAGE ========== */
|
|
108
|
+
.title-page {
|
|
109
|
+
display: flex; flex-direction: column; justify-content: center; align-items: center;
|
|
110
|
+
min-height: 100vh; text-align: center;
|
|
111
|
+
}
|
|
112
|
+
.title-page h1 { font-size: 32pt; margin-bottom: 0.3em; }
|
|
113
|
+
.title-page .subtitle { font-size: 16pt; color: var(--secondary); margin-bottom: 2em; }
|
|
114
|
+
.title-page .meta { font-size: 10pt; color: #666; }
|
|
115
|
+
|
|
116
|
+
/* ========== TOC ========== */
|
|
117
|
+
.toc-list { list-style: none; counter-reset: toc; }
|
|
118
|
+
.toc-list li { padding: 0.4em 0; border-bottom: 1px dotted var(--border); }
|
|
119
|
+
.toc-list li::before { counter-increment: toc; content: counter(toc) ". "; font-weight: 600; }
|
|
120
|
+
.toc-list a { text-decoration: none; color: var(--primary); }
|
|
121
|
+
.toc-list a:hover { color: var(--accent); }
|
|
122
|
+
|
|
123
|
+
/* ========== DATA TABLE ========== */
|
|
124
|
+
.data-table { width: 100%; border-collapse: collapse; margin: 1em 0; font-size: 10pt; }
|
|
125
|
+
.data-table th { background: var(--primary); color: #fff; padding: 8px 12px;
|
|
126
|
+
text-align: left; font-weight: 600; }
|
|
127
|
+
.data-table td { padding: 8px 12px; border-bottom: 1px solid var(--border); }
|
|
128
|
+
.data-table tr:nth-child(even) { background: var(--bg-light); }
|
|
129
|
+
.data-table .highlight { background: rgba(233, 69, 96, 0.1); font-weight: 600; }
|
|
130
|
+
|
|
131
|
+
/* ========== MATRIX 2x2 ========== */
|
|
132
|
+
.matrix-2x2 { display: grid; grid-template-columns: 1fr 1fr; gap: 2px;
|
|
133
|
+
margin: 1em 0; border: 2px solid var(--border); }
|
|
134
|
+
.matrix-2x2 .cell { padding: 1.2em; }
|
|
135
|
+
.matrix-2x2 .cell-header { background: var(--primary); color: #fff; font-weight: 600;
|
|
136
|
+
text-align: center; padding: 0.6em; }
|
|
137
|
+
.matrix-2x2 .cell-tl { background: #e8f5e9; } /* Top-left: green */
|
|
138
|
+
.matrix-2x2 .cell-tr { background: #fff3e0; } /* Top-right: orange */
|
|
139
|
+
.matrix-2x2 .cell-bl { background: #e3f2fd; } /* Bottom-left: blue */
|
|
140
|
+
.matrix-2x2 .cell-br { background: #fce4ec; } /* Bottom-right: red */
|
|
141
|
+
|
|
142
|
+
/* ========== CALLOUT BOX ========== */
|
|
143
|
+
.callout { padding: 1em 1.2em; margin: 1em 0; border-radius: 6px; border-left: 4px solid; }
|
|
144
|
+
.callout-info { background: #e3f2fd; border-color: #2196f3; }
|
|
145
|
+
.callout-success { background: #e8f5e9; border-color: var(--success); }
|
|
146
|
+
.callout-warning { background: #fff3e0; border-color: var(--warning); }
|
|
147
|
+
.callout-danger { background: #fce4ec; border-color: var(--danger); }
|
|
148
|
+
.callout-title { font-weight: 700; margin-bottom: 0.3em; }
|
|
149
|
+
|
|
150
|
+
/* ========== PULL QUOTE ========== */
|
|
151
|
+
.pull-quote { font-size: 14pt; font-weight: 300; text-align: center;
|
|
152
|
+
padding: 1.5em 2em; margin: 1.5em 0; color: var(--accent);
|
|
153
|
+
border-top: 2px solid var(--accent); border-bottom: 2px solid var(--accent); }
|
|
154
|
+
|
|
155
|
+
/* ========== CHART CONTAINER ========== */
|
|
156
|
+
.chart-container { position: relative; margin: 1.5em 0; max-width: 100%; }
|
|
157
|
+
.chart-container canvas { max-width: 100%; }
|
|
158
|
+
.chart-container figcaption { font-size: 9pt; color: #666; text-align: center;
|
|
159
|
+
margin-top: 0.5em; font-style: italic; }
|
|
160
|
+
|
|
161
|
+
/* ========== SCORE / BADGE ========== */
|
|
162
|
+
.score-badge { display: inline-block; padding: 0.2em 0.8em; border-radius: 12px;
|
|
163
|
+
font-weight: 700; font-size: 10pt; }
|
|
164
|
+
.score-high { background: var(--success); color: #fff; }
|
|
165
|
+
.score-mid { background: var(--warning); color: #fff; }
|
|
166
|
+
.score-low { background: var(--danger); color: #fff; }
|
|
167
|
+
|
|
168
|
+
/* ========== PRINT ========== */
|
|
169
|
+
@media print {
|
|
170
|
+
@page { size: A4 portrait; margin: 20mm; }
|
|
171
|
+
body { font-size: 10pt; }
|
|
172
|
+
.report { max-width: none; padding: 0; }
|
|
173
|
+
.title-page { min-height: auto; page-break-after: always; }
|
|
174
|
+
.toc { page-break-after: always; }
|
|
175
|
+
.executive-summary { page-break-after: always; }
|
|
176
|
+
.appendix { page-break-before: always; }
|
|
177
|
+
.data-table, .chart-container, .matrix-2x2, .mermaid, figure {
|
|
178
|
+
page-break-inside: avoid;
|
|
179
|
+
}
|
|
180
|
+
h2, h3 { page-break-after: avoid; }
|
|
181
|
+
.callout { page-break-inside: avoid; }
|
|
182
|
+
a { color: inherit; text-decoration: none; }
|
|
183
|
+
canvas { max-width: 100% !important; height: auto !important; }
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
> **Палитра:** заменить CSS variables из Design Spec. Все цвета — через `var(--name)`, чтобы палитра менялась в одном месте.
|
|
188
|
+
|
|
189
|
+
### Шаг 3 — Chart.js
|
|
190
|
+
|
|
191
|
+
Для каждого графика из Visualization Map:
|
|
192
|
+
1. `<figure class="chart-container">` → `<canvas id="chart-N">` → `<figcaption>`.
|
|
193
|
+
2. Config: `animation: false`, `responsive: true`, палитра из CSS variables.
|
|
194
|
+
|
|
195
|
+
**Конфигурации по типам:**
|
|
196
|
+
|
|
197
|
+
```javascript
|
|
198
|
+
// ========== BAR CHART (сравнение конкурентов, scoring) ==========
|
|
199
|
+
new Chart(document.getElementById('chart-competitors'), {
|
|
200
|
+
type: 'bar',
|
|
201
|
+
data: {
|
|
202
|
+
labels: ['Конкурент A', 'Конкурент B', 'Конкурент C', 'Наш продукт'],
|
|
203
|
+
datasets: [{
|
|
204
|
+
label: 'Threat Score',
|
|
205
|
+
data: [7.2, 7.3, 4.8, null],
|
|
206
|
+
backgroundColor: ['#e74c3c', '#e74c3c', '#f39c12', '#2ecc71'],
|
|
207
|
+
borderWidth: 0,
|
|
208
|
+
borderRadius: 4
|
|
209
|
+
}]
|
|
210
|
+
},
|
|
211
|
+
options: {
|
|
212
|
+
animation: false, responsive: true,
|
|
213
|
+
plugins: { legend: { display: false },
|
|
214
|
+
title: { display: true, text: 'Threat Score конкурентов', font: { size: 14 } } },
|
|
215
|
+
scales: { y: { beginAtZero: true, max: 10, title: { display: true, text: 'Score' } } }
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
|
|
219
|
+
// ========== RADAR CHART (мультикритериальное сравнение) ==========
|
|
220
|
+
new Chart(document.getElementById('chart-radar'), {
|
|
221
|
+
type: 'radar',
|
|
222
|
+
data: {
|
|
223
|
+
labels: ['Функционал', 'Цена', 'UX', 'Поддержка', 'Экосистема', 'Бренд'],
|
|
224
|
+
datasets: [
|
|
225
|
+
{ label: 'Наш продукт', data: [7, 8, 6, 5, 4, 3],
|
|
226
|
+
borderColor: '#0f3460', backgroundColor: 'rgba(15,52,96,0.1)', borderWidth: 2 },
|
|
227
|
+
{ label: 'Лидер рынка', data: [9, 4, 8, 7, 9, 9],
|
|
228
|
+
borderColor: '#e94560', backgroundColor: 'rgba(233,69,96,0.1)', borderWidth: 2 }
|
|
229
|
+
]
|
|
230
|
+
},
|
|
231
|
+
options: {
|
|
232
|
+
animation: false, responsive: true,
|
|
233
|
+
scales: { r: { beginAtZero: true, max: 10, ticks: { stepSize: 2 } } }
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
|
|
237
|
+
// ========== PIE / DOUGHNUT (доли, распределение) ==========
|
|
238
|
+
new Chart(document.getElementById('chart-share'), {
|
|
239
|
+
type: 'doughnut',
|
|
240
|
+
data: {
|
|
241
|
+
labels: ['Сегмент A', 'Сегмент B', 'Сегмент C', 'Прочие'],
|
|
242
|
+
datasets: [{ data: [35, 28, 22, 15],
|
|
243
|
+
backgroundColor: ['#1a1a2e', '#0f3460', '#e94560', '#ccc'],
|
|
244
|
+
borderWidth: 2, borderColor: '#fff' }]
|
|
245
|
+
},
|
|
246
|
+
options: {
|
|
247
|
+
animation: false, responsive: true,
|
|
248
|
+
plugins: { legend: { position: 'right' } }
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
// ========== LINE CHART (тренды, retention curves) ==========
|
|
253
|
+
new Chart(document.getElementById('chart-retention'), {
|
|
254
|
+
type: 'line',
|
|
255
|
+
data: {
|
|
256
|
+
labels: ['M0', 'M1', 'M2', 'M3', 'M6', 'M12'],
|
|
257
|
+
datasets: [
|
|
258
|
+
{ label: 'Когорта Янв', data: [100, 42, 31, 26, 20, 16],
|
|
259
|
+
borderColor: '#e94560', fill: false, tension: 0.3 },
|
|
260
|
+
{ label: 'Когорта Мар', data: [100, 55, 44, 38, null, null],
|
|
261
|
+
borderColor: '#2ecc71', fill: false, tension: 0.3 }
|
|
262
|
+
]
|
|
263
|
+
},
|
|
264
|
+
options: {
|
|
265
|
+
animation: false, responsive: true,
|
|
266
|
+
scales: { y: { beginAtZero: true, max: 100, title: { display: true, text: 'Retention %' } } }
|
|
267
|
+
}
|
|
268
|
+
});
|
|
269
|
+
|
|
270
|
+
// ========== SCATTER (позиционирование 2D) ==========
|
|
271
|
+
new Chart(document.getElementById('chart-positioning'), {
|
|
272
|
+
type: 'scatter',
|
|
273
|
+
data: {
|
|
274
|
+
datasets: [
|
|
275
|
+
{ label: 'Конкурент A', data: [{ x: 8, y: 7 }], pointRadius: 10,
|
|
276
|
+
backgroundColor: '#e74c3c' },
|
|
277
|
+
{ label: 'Наш продукт', data: [{ x: 5, y: 6 }], pointRadius: 12,
|
|
278
|
+
backgroundColor: '#2ecc71', pointStyle: 'star' }
|
|
279
|
+
]
|
|
280
|
+
},
|
|
281
|
+
options: {
|
|
282
|
+
animation: false, responsive: true,
|
|
283
|
+
scales: {
|
|
284
|
+
x: { min: 0, max: 10, title: { display: true, text: 'Функционал' } },
|
|
285
|
+
y: { min: 0, max: 10, title: { display: true, text: 'Цена' } }
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### Шаг 4 — Mermaid
|
|
292
|
+
|
|
293
|
+
```javascript
|
|
294
|
+
mermaid.initialize({ startOnLoad: true, theme: 'neutral', securityLevel: 'loose' });
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
**Диаграммы по типам:**
|
|
298
|
+
|
|
299
|
+
```html
|
|
300
|
+
<!-- ========== FLOWCHART (процессы, пайплайны) ========== -->
|
|
301
|
+
<div class="mermaid">
|
|
302
|
+
flowchart TD
|
|
303
|
+
A[Awareness] --> B[Consideration]
|
|
304
|
+
B --> C[Decision]
|
|
305
|
+
C --> D[Purchase]
|
|
306
|
+
D --> E[Retention]
|
|
307
|
+
E --> F[Advocacy]
|
|
308
|
+
E -.->|churn| G[Exit]
|
|
309
|
+
style G fill:#fce4ec,stroke:#e74c3c
|
|
310
|
+
</div>
|
|
311
|
+
|
|
312
|
+
<!-- ========== MINDMAP (структура, иерархия) ========== -->
|
|
313
|
+
<div class="mermaid">
|
|
314
|
+
mindmap
|
|
315
|
+
root((Стратегия роста))
|
|
316
|
+
Проникновение
|
|
317
|
+
Upsell
|
|
318
|
+
Cross-sell
|
|
319
|
+
Развитие рынка
|
|
320
|
+
СНГ
|
|
321
|
+
Enterprise
|
|
322
|
+
Развитие продукта
|
|
323
|
+
AI-модуль
|
|
324
|
+
Mobile app
|
|
325
|
+
Диверсификация
|
|
326
|
+
White-label
|
|
327
|
+
</div>
|
|
328
|
+
|
|
329
|
+
<!-- ========== QUADRANT CHART (матрицы 2x2) ========== -->
|
|
330
|
+
<div class="mermaid">
|
|
331
|
+
quadrantChart
|
|
332
|
+
title Impact vs Effort
|
|
333
|
+
x-axis Low Effort --> High Effort
|
|
334
|
+
y-axis Low Impact --> High Impact
|
|
335
|
+
quadrant-1 Big Bets
|
|
336
|
+
quadrant-2 Quick Wins
|
|
337
|
+
quadrant-3 Fill-ins
|
|
338
|
+
quadrant-4 Avoid
|
|
339
|
+
Action A: [0.3, 0.8]
|
|
340
|
+
Action B: [0.7, 0.9]
|
|
341
|
+
Action C: [0.2, 0.3]
|
|
342
|
+
</div>
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
> Каждая Mermaid-диаграмма оборачивается в `<figure>` с `<figcaption>` и `page-break-inside: avoid`.
|
|
346
|
+
|
|
347
|
+
### Шаг 5 — Компоненты (HTML-фрагменты)
|
|
348
|
+
|
|
349
|
+
**Data Table:**
|
|
350
|
+
```html
|
|
351
|
+
<table class="data-table">
|
|
352
|
+
<thead>
|
|
353
|
+
<tr><th>Конкурент</th><th>Score</th><th>Ранг</th></tr>
|
|
354
|
+
</thead>
|
|
355
|
+
<tbody>
|
|
356
|
+
<tr><td>Компания A</td><td>7.6</td>
|
|
357
|
+
<td><span class="score-badge score-high">High</span></td></tr>
|
|
358
|
+
<tr class="highlight"><td><strong>Наш продукт</strong></td><td>6.2</td>
|
|
359
|
+
<td><span class="score-badge score-mid">Medium</span></td></tr>
|
|
360
|
+
</tbody>
|
|
361
|
+
</table>
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
**Matrix 2×2:**
|
|
365
|
+
```html
|
|
366
|
+
<div class="matrix-2x2">
|
|
367
|
+
<div class="cell-header">Высокая доля</div>
|
|
368
|
+
<div class="cell-header">Низкая доля</div>
|
|
369
|
+
<div class="cell cell-tl">
|
|
370
|
+
<h4>★ Звёзды</h4>
|
|
371
|
+
<p>Продукт A ($30M, рост 18%)</p>
|
|
372
|
+
</div>
|
|
373
|
+
<div class="cell cell-tr">
|
|
374
|
+
<h4>? Вопросительные Знаки</h4>
|
|
375
|
+
<p>Продукт C ($10M, рост 35%)</p>
|
|
376
|
+
</div>
|
|
377
|
+
<div class="cell cell-bl">
|
|
378
|
+
<h4>$ Дойные Коровы</h4>
|
|
379
|
+
<p>Продукт B ($45M, рост 3%)</p>
|
|
380
|
+
</div>
|
|
381
|
+
<div class="cell cell-br">
|
|
382
|
+
<h4>✕ Собаки</h4>
|
|
383
|
+
<p>Продукт D ($5M, рост 1%)</p>
|
|
384
|
+
</div>
|
|
385
|
+
</div>
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
**Callout Box:**
|
|
389
|
+
```html
|
|
390
|
+
<div class="callout callout-warning">
|
|
391
|
+
<div class="callout-title">⚠️ Ключевой риск</div>
|
|
392
|
+
<p>TAM рынка оценён на основе 2 источников (вместо 3). Данные помечены как Estimated.</p>
|
|
393
|
+
</div>
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
**Pull Quote:**
|
|
397
|
+
```html
|
|
398
|
+
<div class="pull-quote">
|
|
399
|
+
«AI-first CRM для малого бизнеса — единственная незанятая позиция на рынке»
|
|
400
|
+
</div>
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
### Шаг 6 — TOC (Table of Contents)
|
|
404
|
+
|
|
405
|
+
```html
|
|
406
|
+
<nav class="toc" id="toc">
|
|
407
|
+
<h2>Содержание</h2>
|
|
408
|
+
<ol class="toc-list">
|
|
409
|
+
<li><a href="#executive-summary">Executive Summary</a></li>
|
|
410
|
+
<li><a href="#section-1">Анализ рынка</a></li>
|
|
411
|
+
<li><a href="#section-2">Конкурентный ландшафт</a></li>
|
|
412
|
+
<li><a href="#section-3">Стратегические рекомендации</a></li>
|
|
413
|
+
<li><a href="#appendix-a">Приложение A — Research Brief</a></li>
|
|
414
|
+
<li><a href="#appendix-b">Приложение B — Данные Аналитиков</a></li>
|
|
415
|
+
<li><a href="#appendix-c">Приложение C — Данные Критиков</a></li>
|
|
416
|
+
<li><a href="#appendix-d">Приложение D — Источники</a></li>
|
|
417
|
+
</ol>
|
|
418
|
+
</nav>
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
### Шаг 7 — Accessibility
|
|
422
|
+
|
|
423
|
+
1. Все `<img>` и `<canvas>` — с `alt` / `aria-label`:
|
|
424
|
+
```html
|
|
425
|
+
<figure class="chart-container" role="img" aria-label="Threat Score конкурентов: A=7.2, B=7.3, C=4.8">
|
|
426
|
+
<canvas id="chart-competitors"></canvas>
|
|
427
|
+
<figcaption>Рис. 1 — Threat Score конкурентов (шкала 1-10)</figcaption>
|
|
428
|
+
</figure>
|
|
429
|
+
```
|
|
430
|
+
2. Таблицы — `<caption>` и `scope="col"` / `scope="row"` для `<th>`.
|
|
431
|
+
3. Цветовая кодировка — не единственный способ передачи информации (+ текстовые метки, иконки).
|
|
432
|
+
4. Контраст: текст на фоне ≥ 4.5:1 (WCAG AA).
|
|
433
|
+
|
|
434
|
+
### Шаг 8 — Assembly и тестирование
|
|
435
|
+
|
|
436
|
+
1. Собрать все компоненты в единый HTML.
|
|
437
|
+
2. Проверить: все id уникальны, все canvas имеют конфигурацию, TOC якоря работают.
|
|
438
|
+
3. **Протокол тестирования PDF:**
|
|
439
|
+
|
|
440
|
+
| # | Проверка | Как тестировать | Типичная проблема |
|
|
441
|
+
|---|----------|-----------------|-------------------|
|
|
442
|
+
| 1 | Открыть в Chrome/Edge | Файл → Открыть файл | Mermaid не рендерится → проверить CDN |
|
|
443
|
+
| 2 | Ctrl+P → Preview | Проверить layout | Графики обрезаны → уменьшить canvas |
|
|
444
|
+
| 3 | Все графики видны | Скроллить preview | Пустой canvas → `animation: false` |
|
|
445
|
+
| 4 | Page breaks корректны | Каждая appendix на новой странице | Сливается → `page-break-before: always` |
|
|
446
|
+
| 5 | Таблицы не разрезаны | Таблицы целиком на странице | Разрез → `page-break-inside: avoid` |
|
|
447
|
+
| 6 | TOC якоря кликабельны | Нажать ссылки в TOC | Не работает → проверить id |
|
|
448
|
+
| 7 | Background graphics | Включить в настройках печати | Цвета пропали → «Background graphics: ON» |
|
|
449
|
+
| 8 | Текст читаем | Проверить font-size в print | Мелко → увеличить `@media print` font-size |
|
|
450
|
+
|
|
451
|
+
> **Инструкция для пользователя:** Chrome/Edge → Ctrl+P → Destination: Save as PDF → Layout: Portrait → Paper: A4 → Margins: Default → **Background graphics: ON** → Save.
|
|
452
|
+
|
|
453
|
+
## Пример — Секция Executive Summary
|
|
454
|
+
|
|
455
|
+
```html
|
|
456
|
+
<section class="executive-summary" id="executive-summary">
|
|
457
|
+
<h2>Executive Summary</h2>
|
|
458
|
+
|
|
459
|
+
<div class="pull-quote">
|
|
460
|
+
«Рынок EdTech РФ достигнет $4.2B к 2027. Основная возможность —
|
|
461
|
+
корпоративное обучение (CAGR 28%), где конкуренция фрагментирована.»
|
|
462
|
+
</div>
|
|
463
|
+
|
|
464
|
+
<h3>Ключевые выводы</h3>
|
|
465
|
+
<div class="callout callout-success">
|
|
466
|
+
<div class="callout-title">✅ Главный инсайт</div>
|
|
467
|
+
<p>AI-персонализация обучения — незанятая ниша. Ни один из 5 ключевых конкурентов
|
|
468
|
+
не предлагает адаптивные траектории на уровне ★★★.</p>
|
|
469
|
+
</div>
|
|
470
|
+
|
|
471
|
+
<table class="data-table">
|
|
472
|
+
<caption>Сводка по ключевым метрикам</caption>
|
|
473
|
+
<thead>
|
|
474
|
+
<tr><th scope="col">Метрика</th><th scope="col">Значение</th><th scope="col">Бенчмарк</th><th scope="col">Оценка</th></tr>
|
|
475
|
+
</thead>
|
|
476
|
+
<tbody>
|
|
477
|
+
<tr><td>TAM</td><td>$4.2B</td><td>—</td>
|
|
478
|
+
<td><span class="score-badge score-high">Крупный</span></td></tr>
|
|
479
|
+
<tr><td>SOM (Year 1)</td><td>$180M</td><td>—</td>
|
|
480
|
+
<td><span class="score-badge score-mid">Средний</span></td></tr>
|
|
481
|
+
<tr><td>Главная угроза</td><td>Яндекс Практикум</td><td>Score 7.6</td>
|
|
482
|
+
<td><span class="score-badge score-low">High</span></td></tr>
|
|
483
|
+
</tbody>
|
|
484
|
+
</table>
|
|
485
|
+
|
|
486
|
+
<figure class="chart-container" role="img" aria-label="Threat Score: Skillbox 7.2, Нетология 6.8, Яндекс 7.6, GeekBrains 4.1, Skyeng 5.3">
|
|
487
|
+
<canvas id="chart-exec-threats"></canvas>
|
|
488
|
+
<figcaption>Рис. 1 — Threat Score ключевых конкурентов</figcaption>
|
|
489
|
+
</figure>
|
|
490
|
+
</section>
|
|
491
|
+
```
|
|
492
|
+
|
|
493
|
+
## Валидация (Quality Gate)
|
|
494
|
+
|
|
495
|
+
- [ ] HTML self-contained (нет внешних CSS/JS кроме CDN для Chart.js и Mermaid)
|
|
496
|
+
- [ ] Все секции из Design Spec реализованы
|
|
497
|
+
- [ ] Все визуализации из Visualization Map присутствуют
|
|
498
|
+
- [ ] CSS variables соответствуют палитре из Design Spec
|
|
499
|
+
- [ ] TOC якоря работают (каждый `<a href="#id">` → `<section id="id">`)
|
|
500
|
+
- [ ] `@media print` корректен (A4, 20mm, page breaks)
|
|
501
|
+
- [ ] Chart.js: `animation: false`, `responsive: true` на каждом графике
|
|
502
|
+
- [ ] Mermaid: `startOnLoad: true`, `theme: 'neutral'`
|
|
503
|
+
- [ ] HTML валиден (нет дублированных id, незакрытых тегов)
|
|
504
|
+
- [ ] Accessibility: `alt` / `aria-label` на графиках, `caption` на таблицах, контраст ≥ 4.5:1
|
|
505
|
+
- [ ] Протокол тестирования PDF пройден (8 проверок)
|
|
506
|
+
- [ ] Print preview: все графики видны, page breaks корректны, таблицы не разрезаны
|
|
507
|
+
|
|
508
|
+
## Handoff
|
|
509
|
+
Результат передаётся:
|
|
510
|
+
- **Пользователь** — открыть в браузере → Ctrl+P → Save as PDF (инструкция в отчёте).
|
|
511
|
+
- **`$gates` (RG-01)** — Release Gate: финальная проверка перед публикацией.
|
|
512
|
+
- **`$board`** — обновить LY-01 → `[✓]`.
|
|
513
|
+
|
|
514
|
+
Формат передачи: `report.html` (единый файл) + инструкция по печати в PDF.
|
|
515
|
+
|
|
516
|
+
## Anti-patterns
|
|
517
|
+
|
|
518
|
+
| Ошибка | Почему плохо | Как правильно |
|
|
519
|
+
|--------|-------------|---------------|
|
|
520
|
+
| Внешние CSS-фреймворки (Bootstrap и т.д.) | Не работает offline, лишний вес | Только inline CSS |
|
|
521
|
+
| `animation: true` | Пустые графики в PDF (canvas не отрисован) | Всегда `animation: false` |
|
|
522
|
+
| Fixed canvas size (`width="600"`) | Не масштабируется при печати | `responsive: true`, размер через CSS |
|
|
523
|
+
| Пропуск page breaks | Секции сливаются, таблицы разрезаны | `page-break-before/after/inside` по протоколу |
|
|
524
|
+
| Broken TOC anchors | Навигация сломана | Уникальные id на каждой секции, проверить все ссылки |
|
|
525
|
+
| Цвета хардкодом | Палитра не меняется из одного места | CSS variables: `var(--primary)`, `var(--accent)` |
|
|
526
|
+
| Нет `<figcaption>` на графиках | Непонятно, что показывает график | `<figure>` + `<figcaption>` + `aria-label` |
|
|
527
|
+
| Нет fallback для Mermaid | Если JS не загрузился — пустое место | `<noscript>` с текстовым описанием диаграммы |
|
|
528
|
+
| Не включён Background graphics | Цвета, фоны таблиц пропадают в PDF | Инструкция пользователю: Background graphics: ON |
|
|
529
|
+
|
|
530
|
+
## Шаблон вывода
|
|
531
|
+
|
|
532
|
+
```
|
|
533
|
+
## HTML Report: [Название]
|
|
534
|
+
**Файл:** docs/analytics/report.html
|
|
535
|
+
**Размер:** ~XXX KB
|
|
536
|
+
**Секций:** N основных + N приложений
|
|
537
|
+
**Дата:** [YYYY-MM-DD]
|
|
538
|
+
|
|
539
|
+
### Компоненты
|
|
540
|
+
| Тип | Количество | ID |
|
|
541
|
+
|-----|:----------:|-----|
|
|
542
|
+
| Chart.js (bar, radar, etc.) | N | chart-1, chart-2, ... |
|
|
543
|
+
| Mermaid (flowchart, mindmap) | N | — (auto) |
|
|
544
|
+
| Data Tables | N | — |
|
|
545
|
+
| Matrices 2×2 | N | — |
|
|
546
|
+
| Callout Boxes | N | — |
|
|
547
|
+
| Pull Quotes | N | — |
|
|
548
|
+
|
|
549
|
+
### Палитра
|
|
550
|
+
| Variable | Hex | Использование |
|
|
551
|
+
|----------|-----|---------------|
|
|
552
|
+
| --primary | #XXXXXX | Заголовки, таблицы |
|
|
553
|
+
| --accent | #XXXXXX | Акценты, ссылки |
|
|
554
|
+
| --highlight | #XXXXXX | Ключевые метрики |
|
|
555
|
+
|
|
556
|
+
### Протокол тестирования
|
|
557
|
+
- [ ] Chrome/Edge открывает без ошибок
|
|
558
|
+
- [ ] Все графики отрисованы (не пустые)
|
|
559
|
+
- [ ] Ctrl+P → preview корректный
|
|
560
|
+
- [ ] Page breaks на местах
|
|
561
|
+
- [ ] Background graphics: ON
|
|
562
|
+
|
|
563
|
+
### Инструкция для PDF
|
|
564
|
+
Chrome/Edge → Ctrl+P → Save as PDF → Portrait → A4 → Default margins → **Background graphics: ON** → Save
|
|
565
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "html-pdf-report",
|
|
3
|
+
"display_name": "HTML/PDF-отчёт",
|
|
4
|
+
"description": "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid",
|
|
5
|
+
"default_prompt": "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\".",
|
|
6
|
+
"triggers": ["html-pdf-report", "HTML отчёт", "PDF отчёт", "генерация отчёта"],
|
|
7
|
+
"capabilities": [
|
|
8
|
+
"html-pdf-report"
|
|
9
|
+
],
|
|
10
|
+
"tools": [],
|
|
11
|
+
"implicit_invocation": true
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "html-pdf-report",
|
|
3
|
+
"display_name": "HTML/PDF-отчёт",
|
|
4
|
+
"description": "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid",
|
|
5
|
+
"default_prompt": "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\".",
|
|
6
|
+
"triggers": ["html-pdf-report", "HTML отчёт", "PDF отчёт", "генерация отчёта"],
|
|
7
|
+
"capabilities": [
|
|
8
|
+
"html-pdf-report"
|
|
9
|
+
],
|
|
10
|
+
"tools": [],
|
|
11
|
+
"implicit_invocation": true
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "html-pdf-report",
|
|
3
|
+
"display_name": "HTML/PDF-отчёт",
|
|
4
|
+
"description": "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid",
|
|
5
|
+
"default_prompt": "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\".",
|
|
6
|
+
"triggers": ["html-pdf-report", "HTML отчёт", "PDF отчёт", "генерация отчёта"],
|
|
7
|
+
"capabilities": [
|
|
8
|
+
"html-pdf-report"
|
|
9
|
+
],
|
|
10
|
+
"tools": [],
|
|
11
|
+
"implicit_invocation": true
|
|
12
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "HTML/PDF-отчёт"
|
|
3
|
+
short_description: "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid"
|
|
4
|
+
default_prompt: "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\"."
|
|
5
|
+
dependencies:
|
|
6
|
+
tools: []
|
|
7
|
+
policy:
|
|
8
|
+
allow_implicit_invocation: true
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "html-pdf-report",
|
|
3
|
+
"display_name": "HTML/PDF-отчёт",
|
|
4
|
+
"description": "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid",
|
|
5
|
+
"default_prompt": "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\".",
|
|
6
|
+
"triggers": ["html-pdf-report", "HTML отчёт", "PDF отчёт", "генерация отчёта"],
|
|
7
|
+
"capabilities": [
|
|
8
|
+
"html-pdf-report"
|
|
9
|
+
],
|
|
10
|
+
"tools": [],
|
|
11
|
+
"implicit_invocation": true
|
|
12
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
name: "html-pdf-report"
|
|
3
|
+
display_name: "HTML/PDF-отчёт"
|
|
4
|
+
description: "Генерация self-contained HTML-отчёта для печати в PDF — CSS print layout, Chart.js, Mermaid"
|
|
5
|
+
default_prompt: "Используй $html-pdf-report, когда задача относится к навыку \"HTML/PDF-отчёт\"."
|
|
6
|
+
triggers:
|
|
7
|
+
- "html-pdf-report"
|
|
8
|
+
- "HTML отчёт"
|
|
9
|
+
- "PDF отчёт"
|
|
10
|
+
- "генерация отчёта"
|
|
11
|
+
capabilities:
|
|
12
|
+
- "html-pdf-report"
|
|
13
|
+
tools: []
|
|
14
|
+
invocation:
|
|
15
|
+
explicit: true
|
|
16
|
+
implicit: true
|
|
17
|
+
localization:
|
|
18
|
+
default_locale: "ru"
|
|
19
|
+
available_locales:
|
|
20
|
+
- "ru"
|
|
21
|
+
- "en"
|