code-ai-installer 2.2.0 → 2.4.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/.agents/skills/karpathy-guidelines/SKILL.md +326 -0
- package/.agents/skills/karpathy-guidelines/agents/claude.json +21 -0
- package/.agents/skills/karpathy-guidelines/agents/copilot.json +21 -0
- package/.agents/skills/karpathy-guidelines/agents/gemini.json +21 -0
- package/.agents/skills/karpathy-guidelines/agents/openai.yaml +8 -0
- package/.agents/skills/karpathy-guidelines/agents/qwen.json +21 -0
- package/.agents/skills/karpathy-guidelines/agents/skill.yaml +25 -0
- package/AGENTS.md +13 -0
- package/README.md +141 -139
- package/agents/architect.md +1 -0
- package/agents/conductor.md +1 -0
- package/agents/devops.md +1 -0
- package/agents/product_manager.md +1 -0
- package/agents/reviewer.md +1 -0
- package/agents/senior_full_stack.md +1 -0
- package/agents/tester.md +1 -0
- package/agents/ux_ui_designer.md +1 -0
- package/dist/domainResolver.js +2 -2
- package/dist/index.js +4 -4
- package/dist/types.d.ts +1 -1
- package/domains/analytics/agents/conductor.md +1 -0
- package/domains/analytics/agents/data_analyst.md +1 -0
- package/domains/analytics/agents/designer.md +1 -0
- package/domains/analytics/agents/interviewer.md +1 -0
- package/domains/analytics/agents/layouter.md +1 -0
- package/domains/analytics/agents/mediator.md +1 -0
- package/domains/analytics/agents/researcher.md +1 -0
- package/domains/analytics/agents/strategist.md +1 -0
- package/domains/content/agents/conductor.md +1 -0
- package/domains/content/agents/copywriter.md +1 -0
- package/domains/content/agents/researcher.md +1 -0
- package/domains/content/agents/reviewer.md +1 -0
- package/domains/content/agents/strategist.md +1 -0
- package/domains/content/agents/visual_concept.md +1 -0
- package/domains/development/agents/architect.md +1 -0
- package/domains/development/agents/conductor.md +1 -0
- package/domains/development/agents/devops.md +1 -0
- package/domains/development/agents/product_manager.md +1 -0
- package/domains/development/agents/reviewer.md +1 -0
- package/domains/development/agents/senior_full_stack.md +1 -0
- package/domains/development/agents/tester.md +1 -0
- package/domains/development/agents/ux_ui_designer.md +1 -0
- package/domains/product/.agents/skills/aarrr-metrics/SKILL.md +433 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/ab-test-design/SKILL.md +412 -0
- package/domains/product/.agents/skills/ab-test-design/agents/claude.json +17 -0
- package/domains/product/.agents/skills/ab-test-design/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/ab-test-design/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/ab-test-design/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/ab-test-design/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/acceptance-criteria/SKILL.md +406 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/claude.json +17 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/acceptance-criteria/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/assumption-mapping/SKILL.md +307 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/claude.json +17 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/assumption-mapping/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/board/SKILL.md +420 -0
- package/domains/product/.agents/skills/board/agents/claude.json +16 -0
- package/domains/product/.agents/skills/board/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/board/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/board/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/board/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/board/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/design-brief/SKILL.md +418 -0
- package/domains/product/.agents/skills/design-brief/agents/claude.json +16 -0
- package/domains/product/.agents/skills/design-brief/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/design-brief/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/design-brief/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/design-brief/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/design-brief/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/epic-breakdown/SKILL.md +420 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/claude.json +16 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/epic-breakdown/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/gates/SKILL.md +446 -0
- package/domains/product/.agents/skills/gates/agents/claude.json +16 -0
- package/domains/product/.agents/skills/gates/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/gates/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/gates/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/gates/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/gates/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/gtm-brief/SKILL.md +585 -0
- package/domains/product/.agents/skills/gtm-brief/agents/claude.json +17 -0
- package/domains/product/.agents/skills/gtm-brief/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/gtm-brief/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/gtm-brief/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/handoff/SKILL.md +429 -0
- package/domains/product/.agents/skills/handoff/agents/claude.json +16 -0
- package/domains/product/.agents/skills/handoff/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/handoff/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/handoff/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/handoff/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/handoff/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/html-pdf-report/SKILL.md +939 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/claude.json +17 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/hypothesis-template/SKILL.md +469 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/claude.json +16 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/hypothesis-template/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/jtbd-canvas/SKILL.md +258 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/claude.json +17 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/jtbd-canvas/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/kano-model/SKILL.md +355 -0
- package/domains/product/.agents/skills/kano-model/agents/claude.json +16 -0
- package/domains/product/.agents/skills/kano-model/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/kano-model/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/kano-model/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/kano-model/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/kano-model/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/launch-checklist/SKILL.md +419 -0
- package/domains/product/.agents/skills/launch-checklist/agents/claude.json +16 -0
- package/domains/product/.agents/skills/launch-checklist/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/launch-checklist/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/launch-checklist/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/launch-checklist/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/moscow-prioritization/SKILL.md +392 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/north-star-metric/SKILL.md +301 -0
- package/domains/product/.agents/skills/north-star-metric/agents/claude.json +17 -0
- package/domains/product/.agents/skills/north-star-metric/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/north-star-metric/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/north-star-metric/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/north-star-metric/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/okr-framework/SKILL.md +284 -0
- package/domains/product/.agents/skills/okr-framework/agents/claude.json +16 -0
- package/domains/product/.agents/skills/okr-framework/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/okr-framework/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/okr-framework/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/okr-framework/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/okr-framework/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/claude.json +17 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/opportunity-solution-tree/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/prd-template/SKILL.md +490 -0
- package/domains/product/.agents/skills/prd-template/agents/claude.json +17 -0
- package/domains/product/.agents/skills/prd-template/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/prd-template/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/prd-template/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/prd-template/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/prd-template/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/problem-statement/SKILL.md +312 -0
- package/domains/product/.agents/skills/problem-statement/agents/claude.json +16 -0
- package/domains/product/.agents/skills/problem-statement/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/problem-statement/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/problem-statement/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/problem-statement/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/problem-statement/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/product-roadmap/SKILL.md +304 -0
- package/domains/product/.agents/skills/product-roadmap/agents/claude.json +17 -0
- package/domains/product/.agents/skills/product-roadmap/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/product-roadmap/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/product-roadmap/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/product-roadmap/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/product-vision/SKILL.md +394 -0
- package/domains/product/.agents/skills/product-vision/agents/claude.json +16 -0
- package/domains/product/.agents/skills/product-vision/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/product-vision/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/product-vision/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/product-vision/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/product-vision/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/release-notes/SKILL.md +499 -0
- package/domains/product/.agents/skills/release-notes/agents/claude.json +17 -0
- package/domains/product/.agents/skills/release-notes/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/release-notes/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/release-notes/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/release-notes/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/release-notes/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/report-design/SKILL.md +708 -0
- package/domains/product/.agents/skills/report-design/agents/claude.json +17 -0
- package/domains/product/.agents/skills/report-design/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/report-design/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/report-design/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/report-design/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/report-design/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/rice-scoring/SKILL.md +251 -0
- package/domains/product/.agents/skills/rice-scoring/agents/claude.json +16 -0
- package/domains/product/.agents/skills/rice-scoring/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/rice-scoring/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/rice-scoring/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/saas-metrics/SKILL.md +404 -0
- package/domains/product/.agents/skills/saas-metrics/agents/claude.json +21 -0
- package/domains/product/.agents/skills/saas-metrics/agents/copilot.json +21 -0
- package/domains/product/.agents/skills/saas-metrics/agents/gemini.json +21 -0
- package/domains/product/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/saas-metrics/agents/qwen.json +21 -0
- package/domains/product/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
- package/domains/product/.agents/skills/session-prompt-generator/SKILL.md +450 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/user-flow/SKILL.md +476 -0
- package/domains/product/.agents/skills/user-flow/agents/claude.json +16 -0
- package/domains/product/.agents/skills/user-flow/agents/copilot.json +16 -0
- package/domains/product/.agents/skills/user-flow/agents/gemini.json +16 -0
- package/domains/product/.agents/skills/user-flow/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/user-flow/agents/qwen.json +16 -0
- package/domains/product/.agents/skills/user-flow/agents/skill.yaml +19 -0
- package/domains/product/.agents/skills/user-interview-script/SKILL.md +298 -0
- package/domains/product/.agents/skills/user-interview-script/agents/claude.json +18 -0
- package/domains/product/.agents/skills/user-interview-script/agents/copilot.json +18 -0
- package/domains/product/.agents/skills/user-interview-script/agents/gemini.json +18 -0
- package/domains/product/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/user-interview-script/agents/qwen.json +18 -0
- package/domains/product/.agents/skills/user-interview-script/agents/skill.yaml +21 -0
- package/domains/product/.agents/skills/user-story/SKILL.md +385 -0
- package/domains/product/.agents/skills/user-story/agents/claude.json +17 -0
- package/domains/product/.agents/skills/user-story/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/user-story/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/user-story/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/user-story/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/user-story/agents/skill.yaml +20 -0
- package/domains/product/.agents/skills/wsjf-scoring/SKILL.md +315 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
- package/domains/product/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
- package/domains/product/.agents/workflows/product-pipeline-rules.md +340 -0
- package/domains/product/.agents/workflows/quick-pm.md +292 -0
- package/domains/product/.agents/workflows/shape-prioritize.md +263 -0
- package/domains/product/.agents/workflows/ship-right-thing.md +242 -0
- package/domains/product/.agents/workflows/spec.md +229 -0
- package/domains/product/AGENTS.md +149 -0
- package/domains/product/AGENTS.yaml +77 -0
- package/domains/product/CONTEXT.md +40 -0
- package/domains/product/agents/conductor.md +518 -0
- package/domains/product/agents/data_analyst.md +558 -0
- package/domains/product/agents/designer.md +444 -0
- package/domains/product/agents/discovery.md +548 -0
- package/domains/product/agents/layouter.md +614 -0
- package/domains/product/agents/mediator.md +515 -0
- package/domains/product/agents/orchestrator.claude.json +10 -0
- package/domains/product/agents/orchestrator.copilot.json +10 -0
- package/domains/product/agents/orchestrator.gemini.json +10 -0
- package/domains/product/agents/orchestrator.openai.yaml +8 -0
- package/domains/product/agents/orchestrator.qwen.json +10 -0
- package/domains/product/agents/pm.md +545 -0
- package/domains/product/agents/product_strategist.md +503 -0
- package/domains/product/agents/tech_lead.md +547 -0
- package/domains/product/agents/ux_designer.md +440 -0
- package/domains/product/domain.json +5 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/SKILL.md +433 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/SKILL.md +412 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/ab-test-design/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/SKILL.md +406 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/SKILL.md +307 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/board/SKILL.md +420 -0
- package/domains/product/locales/en/.agents/skills/board/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/board/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/board/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/board/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/board/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/design-brief/SKILL.md +418 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/design-brief/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/SKILL.md +420 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/gates/SKILL.md +446 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/gates/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/SKILL.md +585 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/skills/handoff/SKILL.md +429 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/handoff/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/SKILL.md +939 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/SKILL.md +469 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/SKILL.md +257 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/kano-model/SKILL.md +355 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/kano-model/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/SKILL.md +419 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/launch-checklist/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/SKILL.md +392 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/SKILL.md +301 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/north-star-metric/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/SKILL.md +284 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/okr-framework/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/prd-template/SKILL.md +490 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/prd-template/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/SKILL.md +312 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/problem-statement/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/SKILL.md +305 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/product-roadmap/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/product-vision/SKILL.md +395 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/product-vision/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/release-notes/SKILL.md +499 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/release-notes/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/report-design/SKILL.md +708 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/report-design/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/SKILL.md +251 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/SKILL.md +404 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/claude.json +21 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/copilot.json +21 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/gemini.json +21 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/qwen.json +21 -0
- package/domains/product/locales/en/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/SKILL.md +450 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/user-flow/SKILL.md +476 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/claude.json +15 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/copilot.json +15 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/gemini.json +15 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/qwen.json +15 -0
- package/domains/product/locales/en/.agents/skills/user-flow/agents/skill.yaml +18 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/SKILL.md +297 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/user-interview-script/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/skills/user-story/SKILL.md +385 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/claude.json +16 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/copilot.json +16 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/gemini.json +16 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/qwen.json +16 -0
- package/domains/product/locales/en/.agents/skills/user-story/agents/skill.yaml +19 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/SKILL.md +315 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
- package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
- package/domains/product/locales/en/.agents/workflows/product-pipeline-rules.md +340 -0
- package/domains/product/locales/en/.agents/workflows/quick-pm.md +292 -0
- package/domains/product/locales/en/.agents/workflows/shape-prioritize.md +263 -0
- package/domains/product/locales/en/.agents/workflows/ship-right-thing.md +242 -0
- package/domains/product/locales/en/.agents/workflows/spec.md +229 -0
- package/domains/product/locales/en/AGENTS.md +149 -0
- package/domains/product/locales/en/AGENTS.yaml +78 -0
- package/domains/product/locales/en/CONTEXT.md +40 -0
- package/domains/product/locales/en/agents/conductor.md +518 -0
- package/domains/product/locales/en/agents/data_analyst.md +557 -0
- package/domains/product/locales/en/agents/designer.md +443 -0
- package/domains/product/locales/en/agents/discovery.md +547 -0
- package/domains/product/locales/en/agents/layouter.md +613 -0
- package/domains/product/locales/en/agents/mediator.md +514 -0
- package/domains/product/locales/en/agents/orchestrator.claude.json +10 -0
- package/domains/product/locales/en/agents/orchestrator.copilot.json +10 -0
- package/domains/product/locales/en/agents/orchestrator.gemini.json +10 -0
- package/domains/product/locales/en/agents/orchestrator.openai.yaml +8 -0
- package/domains/product/locales/en/agents/orchestrator.qwen.json +10 -0
- package/domains/product/locales/en/agents/pm.md +544 -0
- package/domains/product/locales/en/agents/product_strategist.md +502 -0
- package/domains/product/locales/en/agents/tech_lead.md +546 -0
- package/domains/product/locales/en/agents/ux_designer.md +439 -0
- package/domains/product/locales/en/prompt-examples.md +77 -0
- package/domains/product/prompt-examples.md +77 -0
- package/locales/en/.agents/skills/karpathy-guidelines/SKILL.md +325 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/claude.json +22 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/copilot.json +22 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/gemini.json +22 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/qwen.json +22 -0
- package/locales/en/.agents/skills/karpathy-guidelines/agents/skill.yaml +25 -0
- package/package.json +2 -2
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: karpathy-guidelines
|
|
3
|
+
description: Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата.
|
|
4
|
+
license: MIT
|
|
5
|
+
source: https://x.com/karpathy/status/2015883857489522876
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Karpathy Guidelines
|
|
9
|
+
|
|
10
|
+
Правила работы, основанные на наблюдениях Андрея Карпати о типичных ошибках LLM.
|
|
11
|
+
|
|
12
|
+
> Эти правила ставят аккуратность выше скорости. Для совсем тривиальных задач используй здравый смысл.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Сначала думай, потом делай
|
|
17
|
+
|
|
18
|
+
**Не предполагай молча. Не скрывай неопределённость. Называй альтернативы.**
|
|
19
|
+
|
|
20
|
+
Перед тем как приступить:
|
|
21
|
+
- Явно назови свои предположения. Если не уверен — спроси.
|
|
22
|
+
- Если задачу можно понять по-разному — перечисли варианты, не выбирай сам.
|
|
23
|
+
- Если есть более простой путь — скажи об этом. Возражай, когда это уместно.
|
|
24
|
+
- Если что-то непонятно — остановись, назови конкретно что, и спроси.
|
|
25
|
+
|
|
26
|
+
### Пример: скрытые предположения
|
|
27
|
+
|
|
28
|
+
**Запрос:** "Добавь экспорт пользовательских данных"
|
|
29
|
+
|
|
30
|
+
❌ **Что делают LLM** — молча предполагают формат, поля и объём:
|
|
31
|
+
|
|
32
|
+
```python
|
|
33
|
+
def export_users(format='json'):
|
|
34
|
+
users = User.query.all()
|
|
35
|
+
with open('users.json', 'w') as f:
|
|
36
|
+
json.dump([u.to_dict() for u in users], f)
|
|
37
|
+
return f"Exported {len(users)} users"
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
✅ **Как надо** — сначала назвать предположения и уточнить:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
Прежде чем делать, нужно прояснить:
|
|
44
|
+
|
|
45
|
+
1. Кого экспортировать: всех пользователей или отфильтрованных? (вопрос приватности)
|
|
46
|
+
2. Что значит "экспорт": скачать файл, фоновая задача с уведомлением или API endpoint?
|
|
47
|
+
3. Какие поля включать? (часть данных может быть чувствительной)
|
|
48
|
+
4. Сколько пользователей обычно? (влияет на архитектуру)
|
|
49
|
+
|
|
50
|
+
Что из этого важнее всего?
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Пример: несколько трактовок
|
|
54
|
+
|
|
55
|
+
**Запрос:** "Ускорь поиск"
|
|
56
|
+
|
|
57
|
+
❌ **Что делают LLM** — выбирают одну трактовку и пишут 200 строк оптимизации.
|
|
58
|
+
|
|
59
|
+
✅ **Как надо:**
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
"Ускорить поиск" — это может быть разное:
|
|
63
|
+
|
|
64
|
+
1. Уменьшить время ответа (< 100 мс вместо 500 мс)
|
|
65
|
+
→ индексы в БД, кеш частых запросов | ~2 часа
|
|
66
|
+
|
|
67
|
+
2. Выдерживать больше одновременных запросов
|
|
68
|
+
→ async/await, connection pooling | ~4 часа
|
|
69
|
+
|
|
70
|
+
3. Субъективно казаться быстрее (UX)
|
|
71
|
+
→ показывать частичные результаты сразу | ~3 часа
|
|
72
|
+
|
|
73
|
+
Сейчас поиск занимает ~500 мс. Что важнее?
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## 2. Делай только то, что просили
|
|
79
|
+
|
|
80
|
+
**Минимум, решающий задачу. Ничего лишнего.**
|
|
81
|
+
|
|
82
|
+
- Не добавляй возможности сверх того, что просили.
|
|
83
|
+
- Не создавай абстракции, если код используется один раз.
|
|
84
|
+
- Не делай код "гибким" и "настраиваемым" без запроса.
|
|
85
|
+
- Не обрабатывай ошибки, которые не могут случиться.
|
|
86
|
+
- Написал 200 строк, а можно 50 — перепиши.
|
|
87
|
+
|
|
88
|
+
Спроси себя: "Сказал бы опытный коллега, что это переусложнено?" Если да — упрости.
|
|
89
|
+
|
|
90
|
+
### Пример: лишние абстракции
|
|
91
|
+
|
|
92
|
+
**Запрос:** "Добавь функцию расчёта скидки"
|
|
93
|
+
|
|
94
|
+
❌ **Что делают LLM** — Strategy pattern, ABC, dataclass, конфигуратор:
|
|
95
|
+
|
|
96
|
+
```python
|
|
97
|
+
class DiscountStrategy(ABC):
|
|
98
|
+
@abstractmethod
|
|
99
|
+
def calculate(self, amount: float) -> float: pass
|
|
100
|
+
|
|
101
|
+
class PercentageDiscount(DiscountStrategy):
|
|
102
|
+
def __init__(self, percentage: float):
|
|
103
|
+
self.percentage = percentage
|
|
104
|
+
def calculate(self, amount: float) -> float:
|
|
105
|
+
return amount * (self.percentage / 100)
|
|
106
|
+
|
|
107
|
+
@dataclass
|
|
108
|
+
class DiscountConfig:
|
|
109
|
+
strategy: DiscountStrategy
|
|
110
|
+
min_purchase: float = 0.0
|
|
111
|
+
max_discount: float = float('inf')
|
|
112
|
+
|
|
113
|
+
# Ещё 40 строк ради одной формулы
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
✅ **Как надо:**
|
|
117
|
+
|
|
118
|
+
```python
|
|
119
|
+
def calculate_discount(amount: float, percent: float) -> float:
|
|
120
|
+
"""Calculate discount amount. percent should be 0-100."""
|
|
121
|
+
return amount * (percent / 100)
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Усложнять — только когда реально появится несколько типов скидок.
|
|
125
|
+
|
|
126
|
+
### Пример: возможности "на будущее"
|
|
127
|
+
|
|
128
|
+
**Запрос:** "Сохрани пользовательские настройки в БД"
|
|
129
|
+
|
|
130
|
+
❌ **Что делают LLM** — кеш, валидатор, флаг merge, уведомления:
|
|
131
|
+
|
|
132
|
+
```python
|
|
133
|
+
class PreferenceManager:
|
|
134
|
+
def __init__(self, db, cache=None, validator=None):
|
|
135
|
+
...
|
|
136
|
+
def save(self, user_id, prefs, merge=True, validate=True, notify=False):
|
|
137
|
+
# 50 строк вместо трёх
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
✅ **Как надо:**
|
|
141
|
+
|
|
142
|
+
```python
|
|
143
|
+
def save_preferences(db, user_id: int, preferences: dict):
|
|
144
|
+
db.execute(
|
|
145
|
+
"UPDATE users SET preferences = ? WHERE id = ?",
|
|
146
|
+
(json.dumps(preferences), user_id)
|
|
147
|
+
)
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Кеш, валидацию, merge — добавить тогда, когда это реально понадобится.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## 3. Трогай только то, что нужно
|
|
155
|
+
|
|
156
|
+
**Правь минимум. Чисти только за собой.**
|
|
157
|
+
|
|
158
|
+
При редактировании существующего кода:
|
|
159
|
+
- Не "улучшай" соседний код, комментарии или форматирование.
|
|
160
|
+
- Не рефактори то, что работает.
|
|
161
|
+
- Сохраняй существующий стиль, даже если ты сделал бы иначе.
|
|
162
|
+
- Заметил лишний код рядом — упомяни, но не трогай.
|
|
163
|
+
|
|
164
|
+
Если после твоих правок что-то стало неиспользуемым:
|
|
165
|
+
- Удали то, что стало ненужным из-за твоих изменений.
|
|
166
|
+
- Не трогай уже существующий мёртвый код без запроса.
|
|
167
|
+
|
|
168
|
+
**Проверка:** каждая изменённая строка должна напрямую относиться к запросу.
|
|
169
|
+
|
|
170
|
+
### Пример: попутный рефакторинг
|
|
171
|
+
|
|
172
|
+
**Запрос:** "Исправь баг — пустой email вызывает падение валидатора"
|
|
173
|
+
|
|
174
|
+
❌ **Что делают LLM** — заодно улучшают валидацию email, добавляют валидацию username, меняют комментарии, пишут docstring.
|
|
175
|
+
|
|
176
|
+
✅ **Как надо — только строки, связанные с пустым email:**
|
|
177
|
+
|
|
178
|
+
```diff
|
|
179
|
+
def validate_user(user_data):
|
|
180
|
+
# Check email format
|
|
181
|
+
- if not user_data.get('email'):
|
|
182
|
+
+ email = user_data.get('email', '')
|
|
183
|
+
+ if not email or not email.strip():
|
|
184
|
+
raise ValueError("Email required")
|
|
185
|
+
|
|
186
|
+
# Basic email validation
|
|
187
|
+
- if '@' not in user_data['email']:
|
|
188
|
+
+ if '@' not in email:
|
|
189
|
+
raise ValueError("Invalid email")
|
|
190
|
+
|
|
191
|
+
# Check username ← не трогаем, это не в задаче
|
|
192
|
+
if not user_data.get('username'):
|
|
193
|
+
raise ValueError("Username required")
|
|
194
|
+
|
|
195
|
+
return True
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### Пример: дрейф стиля
|
|
199
|
+
|
|
200
|
+
**Запрос:** "Добавь логирование в функцию upload"
|
|
201
|
+
|
|
202
|
+
❌ **Что делают LLM** — заодно добавляют type hints, меняют одинарные кавычки на двойные, пишут docstring, переформатируют отступы.
|
|
203
|
+
|
|
204
|
+
✅ **Как надо — сохраняй существующий стиль:**
|
|
205
|
+
|
|
206
|
+
```diff
|
|
207
|
+
+ import logging
|
|
208
|
+
+
|
|
209
|
+
+ logger = logging.getLogger(__name__)
|
|
210
|
+
+
|
|
211
|
+
def upload_file(file_path, destination):
|
|
212
|
+
+ logger.info(f'Starting upload: {file_path}')
|
|
213
|
+
try:
|
|
214
|
+
with open(file_path, 'rb') as f:
|
|
215
|
+
data = f.read()
|
|
216
|
+
|
|
217
|
+
response = requests.post(destination, files={'file': data})
|
|
218
|
+
|
|
219
|
+
if response.status_code == 200:
|
|
220
|
+
+ logger.info(f'Upload successful: {file_path}')
|
|
221
|
+
return True
|
|
222
|
+
else:
|
|
223
|
+
+ logger.error(f'Upload failed: {file_path}, status={response.status_code}')
|
|
224
|
+
return False
|
|
225
|
+
except Exception as e:
|
|
226
|
+
- print(f"Error: {e}")
|
|
227
|
+
+ logger.exception(f'Upload error: {file_path}')
|
|
228
|
+
return False
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
Сохранено: одинарные кавычки, нет type hints, тот же стиль boolean-возврата.
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## 4. Работай от результата
|
|
236
|
+
|
|
237
|
+
**Определи, как выглядит "готово". Проверяй каждый шаг.**
|
|
238
|
+
|
|
239
|
+
Переформулируй задачи в проверяемые цели:
|
|
240
|
+
- "Добавь валидацию" → "Напиши тесты на некорректные данные, затем сделай их зелёными"
|
|
241
|
+
- "Исправь баг" → "Напиши тест, воспроизводящий баг, затем исправь"
|
|
242
|
+
- "Рефакторинг X" → "Убедись, что тесты проходят до и после"
|
|
243
|
+
|
|
244
|
+
Для многошаговых задач — кратко опиши план:
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
1. [Шаг] → проверка: [что проверить]
|
|
248
|
+
2. [Шаг] → проверка: [что проверить]
|
|
249
|
+
3. [Шаг] → проверка: [что проверить]
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
Чёткие критерии дают возможность работать самостоятельно. Размытые ("сделай так, чтобы работало") требуют постоянных уточнений.
|
|
253
|
+
|
|
254
|
+
### Пример: пошаговая реализация с проверкой
|
|
255
|
+
|
|
256
|
+
**Запрос:** "Добавь rate limiting в API"
|
|
257
|
+
|
|
258
|
+
❌ **Что делают LLM** — реализуют Redis, несколько стратегий, конфигурацию и мониторинг в одном PR на 300 строк без чётких шагов проверки.
|
|
259
|
+
|
|
260
|
+
✅ **Как надо:**
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
План:
|
|
264
|
+
|
|
265
|
+
1. Базовый лимит в памяти (один endpoint)
|
|
266
|
+
Проверка: 100 запросов → первые 10 проходят, остальные получают 429
|
|
267
|
+
|
|
268
|
+
2. Вынести в middleware (все endpoints)
|
|
269
|
+
Проверка: существующие тесты не сломались
|
|
270
|
+
|
|
271
|
+
3. Redis вместо памяти (для нескольких серверов)
|
|
272
|
+
Проверка: лимит сохраняется после перезапуска
|
|
273
|
+
|
|
274
|
+
4. Настройка лимитов per-endpoint
|
|
275
|
+
Проверка: /search — 10/мин, /users — 100/мин
|
|
276
|
+
|
|
277
|
+
Начинаем с первого шага?
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Пример: сначала воспроизведи баг
|
|
281
|
+
|
|
282
|
+
**Запрос:** "Сортировка ломается при одинаковых значениях"
|
|
283
|
+
|
|
284
|
+
❌ **Что делают LLM** — сразу меняют логику сортировки, не убедившись, что воспроизвели проблему.
|
|
285
|
+
|
|
286
|
+
✅ **Как надо:**
|
|
287
|
+
|
|
288
|
+
```python
|
|
289
|
+
# 1. Сначала — тест, воспроизводящий баг
|
|
290
|
+
def test_sort_with_duplicate_scores():
|
|
291
|
+
scores = [
|
|
292
|
+
{'name': 'Alice', 'score': 100},
|
|
293
|
+
{'name': 'Bob', 'score': 100},
|
|
294
|
+
{'name': 'Charlie', 'score': 90},
|
|
295
|
+
]
|
|
296
|
+
result = sort_scores(scores)
|
|
297
|
+
# Проблема: при одинаковых score порядок непредсказуем
|
|
298
|
+
assert result[0]['score'] == 100
|
|
299
|
+
assert result[2]['score'] == 90
|
|
300
|
+
assert result[0]['name'] < result[1]['name'] # ожидаем стабильную сортировку
|
|
301
|
+
|
|
302
|
+
# Запускаем тест → он падает → баг подтверждён
|
|
303
|
+
|
|
304
|
+
# 2. Только теперь исправляем
|
|
305
|
+
def sort_scores(scores):
|
|
306
|
+
return sorted(scores, key=lambda x: (-x['score'], x['name']))
|
|
307
|
+
|
|
308
|
+
# Запускаем тест → зелёный
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## Сводка: что делать нельзя
|
|
314
|
+
|
|
315
|
+
| Принцип | Типичная ошибка | Правильно |
|
|
316
|
+
|---|---|---|
|
|
317
|
+
| Сначала думай | Молча выбирает формат, поля, трактовку задачи | Называет предположения явно, спрашивает |
|
|
318
|
+
| Делай только то, что просили | Strategy pattern ради одного расчёта | Одна функция — и точка |
|
|
319
|
+
| Трогай только то, что нужно | Правит кавычки и добавляет типы при фиксе бага | Меняет только строки, касающиеся задачи |
|
|
320
|
+
| Работай от результата | "Проанализирую и улучшу" | "Тест воспроизводит баг → исправляю → проверяю регрессии" |
|
|
321
|
+
|
|
322
|
+
## Главный вывод
|
|
323
|
+
|
|
324
|
+
Переусложнённые решения не выглядят явно неправильными — они следуют паттернам и best practices. Проблема в **моменте**: сложность добавляется раньше, чем она реально нужна.
|
|
325
|
+
|
|
326
|
+
**Хорошее решение — это минимум, который решает задачу сегодня, а не задачу, которая, возможно, появится завтра.**
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "karpathy-guidelines",
|
|
3
|
+
"display_name": "Karpathy Guidelines",
|
|
4
|
+
"description": "Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата.",
|
|
5
|
+
"default_prompt": "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование.",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"karpathy-guidelines",
|
|
8
|
+
"karpathy",
|
|
9
|
+
"Karpathy Guidelines",
|
|
10
|
+
"сначала думай потом делай",
|
|
11
|
+
"простота прежде всего",
|
|
12
|
+
"хирургические изменения"
|
|
13
|
+
],
|
|
14
|
+
"capabilities": [
|
|
15
|
+
"quality",
|
|
16
|
+
"guidelines",
|
|
17
|
+
"best-practices"
|
|
18
|
+
],
|
|
19
|
+
"tools": [],
|
|
20
|
+
"implicit_invocation": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "karpathy-guidelines",
|
|
3
|
+
"display_name": "Karpathy Guidelines",
|
|
4
|
+
"description": "Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата.",
|
|
5
|
+
"default_prompt": "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование.",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"karpathy-guidelines",
|
|
8
|
+
"karpathy",
|
|
9
|
+
"Karpathy Guidelines",
|
|
10
|
+
"сначала думай потом делай",
|
|
11
|
+
"простота прежде всего",
|
|
12
|
+
"хирургические изменения"
|
|
13
|
+
],
|
|
14
|
+
"capabilities": [
|
|
15
|
+
"quality",
|
|
16
|
+
"guidelines",
|
|
17
|
+
"best-practices"
|
|
18
|
+
],
|
|
19
|
+
"tools": [],
|
|
20
|
+
"implicit_invocation": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "karpathy-guidelines",
|
|
3
|
+
"display_name": "Karpathy Guidelines",
|
|
4
|
+
"description": "Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата.",
|
|
5
|
+
"default_prompt": "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование.",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"karpathy-guidelines",
|
|
8
|
+
"karpathy",
|
|
9
|
+
"Karpathy Guidelines",
|
|
10
|
+
"сначала думай потом делай",
|
|
11
|
+
"простота прежде всего",
|
|
12
|
+
"хирургические изменения"
|
|
13
|
+
],
|
|
14
|
+
"capabilities": [
|
|
15
|
+
"quality",
|
|
16
|
+
"guidelines",
|
|
17
|
+
"best-practices"
|
|
18
|
+
],
|
|
19
|
+
"tools": [],
|
|
20
|
+
"implicit_invocation": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Karpathy Guidelines"
|
|
3
|
+
short_description: "Поведенческие правила для снижения типичных ошибок LLM — думай перед тем как делать, простота, хирургические изменения, ориентация на цель."
|
|
4
|
+
default_prompt: "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование."
|
|
5
|
+
dependencies:
|
|
6
|
+
tools: []
|
|
7
|
+
policy:
|
|
8
|
+
allow_implicit_invocation: true
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "karpathy-guidelines",
|
|
3
|
+
"display_name": "Karpathy Guidelines",
|
|
4
|
+
"description": "Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата.",
|
|
5
|
+
"default_prompt": "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование.",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"karpathy-guidelines",
|
|
8
|
+
"karpathy",
|
|
9
|
+
"Karpathy Guidelines",
|
|
10
|
+
"сначала думай потом делай",
|
|
11
|
+
"простота прежде всего",
|
|
12
|
+
"хирургические изменения"
|
|
13
|
+
],
|
|
14
|
+
"capabilities": [
|
|
15
|
+
"quality",
|
|
16
|
+
"guidelines",
|
|
17
|
+
"best-practices"
|
|
18
|
+
],
|
|
19
|
+
"tools": [],
|
|
20
|
+
"implicit_invocation": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
name: "karpathy-guidelines"
|
|
3
|
+
display_name: "Karpathy Guidelines"
|
|
4
|
+
description: "Правила работы для предотвращения типичных ошибок LLM — сначала думай, делай только нужное, правь точечно, работай от результата."
|
|
5
|
+
default_prompt: "Используй $karpathy-guidelines, когда задача требует соблюдения правил качества: написание кода, ревью, рефакторинг, анализ или проектирование."
|
|
6
|
+
triggers:
|
|
7
|
+
- "karpathy-guidelines"
|
|
8
|
+
- "karpathy"
|
|
9
|
+
- "Karpathy Guidelines"
|
|
10
|
+
- "сначала думай потом делай"
|
|
11
|
+
- "простота прежде всего"
|
|
12
|
+
- "хирургические изменения"
|
|
13
|
+
capabilities:
|
|
14
|
+
- "quality"
|
|
15
|
+
- "guidelines"
|
|
16
|
+
- "best-practices"
|
|
17
|
+
tools: []
|
|
18
|
+
invocation:
|
|
19
|
+
explicit: true
|
|
20
|
+
implicit: true
|
|
21
|
+
localization:
|
|
22
|
+
default_locale: "ru"
|
|
23
|
+
available_locales:
|
|
24
|
+
- "ru"
|
|
25
|
+
- "en"
|
package/AGENTS.md
CHANGED
|
@@ -117,6 +117,9 @@
|
|
|
117
117
|
- $security-baseline-dev
|
|
118
118
|
- $compass-mongodb
|
|
119
119
|
|
|
120
|
+
### Cross-cutting / Quality (все агенты, все домены)
|
|
121
|
+
- $karpathy-guidelines
|
|
122
|
+
|
|
120
123
|
### Testing (QA)
|
|
121
124
|
- $qa-test-plan
|
|
122
125
|
- $qa-manual-run
|
|
@@ -148,6 +151,16 @@ CONDUCTOR → DEV+TEST(Fix + self-check + GO/NO-GO)
|
|
|
148
151
|
|
|
149
152
|
---
|
|
150
153
|
|
|
154
|
+
## Обязательное правило качества (Karpathy Guidelines)
|
|
155
|
+
|
|
156
|
+
**$karpathy-guidelines обязателен для всех агентов во всех доменах.** Перед любой нетривиальной задачей:
|
|
157
|
+
1. **Сначала думай, потом делай** — явно называй предположения, спрашивай при неопределённости.
|
|
158
|
+
2. **Делай только то, что просили** — минимум, решающий задачу. Ничего лишнего.
|
|
159
|
+
3. **Правь точечно** — трогай только то, что необходимо для задачи.
|
|
160
|
+
4. **Работай от результата** — определи проверяемые критерии успеха до начала работы.
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
151
164
|
## Обязательное правило документации функций
|
|
152
165
|
- Для всех функций в кодовой базе использовать JSDoc-блок в формате:
|
|
153
166
|
|