ai-qakit 1.0.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/README.md +240 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +208 -0
- package/dist/commands/clean.d.ts +10 -0
- package/dist/commands/clean.js +53 -0
- package/dist/commands/init.d.ts +20 -0
- package/dist/commands/init.js +195 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +2 -0
- package/dist/utils/file-operations.d.ts +18 -0
- package/dist/utils/file-operations.js +79 -0
- package/dist/utils/git.d.ts +4 -0
- package/dist/utils/git.js +27 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/logger.d.ts +22 -0
- package/dist/utils/logger.js +23 -0
- package/dist/utils/manifest.d.ts +37 -0
- package/dist/utils/manifest.js +120 -0
- package/dist/utils/package.d.ts +19 -0
- package/dist/utils/package.js +47 -0
- package/package.json +61 -0
- package/templates/.antigravity/agents/qa-agents.yaml +50 -0
- package/templates/.antigravity/prompts/qa-prompts.md +56 -0
- package/templates/.claude/.scoutignore +33 -0
- package/templates/.claude/CHANGELOG.md +587 -0
- package/templates/.claude/CLAUDE.md +335 -0
- package/templates/.claude/README.md +428 -0
- package/templates/.claude/TROUBLESHOOTING.md +789 -0
- package/templates/.claude/agents/accessibility-tester.md +29 -0
- package/templates/.claude/agents/api-tester.md +29 -0
- package/templates/.claude/agents/automation-engineer.md +30 -0
- package/templates/.claude/agents/brainstormer.md +123 -0
- package/templates/.claude/agents/bug-hunter.md +30 -0
- package/templates/.claude/agents/claude-optimizer.md +221 -0
- package/templates/.claude/agents/code-reviewer.md +176 -0
- package/templates/.claude/agents/code-simplifier.md +103 -0
- package/templates/.claude/agents/coder.md +163 -0
- package/templates/.claude/agents/context-manager.md +110 -0
- package/templates/.claude/agents/cunningham.md +134 -0
- package/templates/.claude/agents/database-admin.md +112 -0
- package/templates/.claude/agents/debugger.md +156 -0
- package/templates/.claude/agents/docs-manager.md +181 -0
- package/templates/.claude/agents/e2e-tester.md +30 -0
- package/templates/.claude/agents/performance-engineer.md +48 -0
- package/templates/.claude/agents/performance-tester.md +29 -0
- package/templates/.claude/agents/planner.md +72 -0
- package/templates/.claude/agents/project-manager.md +152 -0
- package/templates/.claude/agents/qa-scout.md +29 -0
- package/templates/.claude/agents/quality-engineer.md +48 -0
- package/templates/.claude/agents/readme-writer.md +67 -0
- package/templates/.claude/agents/researcher.md +57 -0
- package/templates/.claude/agents/scout.md +125 -0
- package/templates/.claude/agents/security-agent.md +564 -0
- package/templates/.claude/agents/security-tester.md +29 -0
- package/templates/.claude/agents/storage-path-convention.md +102 -0
- package/templates/.claude/agents/tattletale-reporter.md +77 -0
- package/templates/.claude/agents/test-architect.md +32 -0
- package/templates/.claude/agents/test-reviewer.md +29 -0
- package/templates/.claude/agents/tester.md +286 -0
- package/templates/.claude/agents/typescript-pro.md +280 -0
- package/templates/.claude/agents/ui-ux-designer.md +256 -0
- package/templates/.claude/commands/devkit/analyze.md +92 -0
- package/templates/.claude/commands/devkit/ask.md +269 -0
- package/templates/.claude/commands/devkit/backend/create-api.md +220 -0
- package/templates/.claude/commands/devkit/backend/create-migration.md +130 -0
- package/templates/.claude/commands/devkit/backend/create-schema.md +158 -0
- package/templates/.claude/commands/devkit/backend/design-graphql-api.md +302 -0
- package/templates/.claude/commands/devkit/backend/design-rest-api.md +192 -0
- package/templates/.claude/commands/devkit/config/bootstrap.md +137 -0
- package/templates/.claude/commands/devkit/config/init-backend.md +233 -0
- package/templates/.claude/commands/devkit/config/init-frontend.md +911 -0
- package/templates/.claude/commands/devkit/create-test.md +165 -0
- package/templates/.claude/commands/devkit/debug.md +481 -0
- package/templates/.claude/commands/devkit/docs/capture-knowledge.md +424 -0
- package/templates/.claude/commands/devkit/docs/init.md +203 -0
- package/templates/.claude/commands/devkit/docs/summarize.md +33 -0
- package/templates/.claude/commands/devkit/docs/update.md +207 -0
- package/templates/.claude/commands/devkit/fix/fast.md +22 -0
- package/templates/.claude/commands/devkit/fix/hard.md +44 -0
- package/templates/.claude/commands/devkit/fix.md +16 -0
- package/templates/.claude/commands/devkit/frontend/create-api-integration.md +507 -0
- package/templates/.claude/commands/devkit/frontend/create-component.md +461 -0
- package/templates/.claude/commands/devkit/frontend/create-form.md +804 -0
- package/templates/.claude/commands/devkit/frontend/create-page.md +484 -0
- package/templates/.claude/commands/devkit/frontend/create-storybook.md +899 -0
- package/templates/.claude/commands/devkit/frontend/create-table.md +1035 -0
- package/templates/.claude/commands/devkit/help.md +148 -0
- package/templates/.claude/commands/devkit/refactor.md +510 -0
- package/templates/.claude/commands/devkit/research.md +394 -0
- package/templates/.claude/commands/devkit/review/code.md +349 -0
- package/templates/.claude/commands/devkit/review/codebase.md +51 -0
- package/templates/.claude/commands/devkit/scout.md +312 -0
- package/templates/.claude/commands/devkit/skill/add.md +29 -0
- package/templates/.claude/commands/devkit/skill/create.md +22 -0
- package/templates/.claude/commands/devkit/skill/optimize.md +34 -0
- package/templates/.claude/commands/devkit/solve.md +364 -0
- package/templates/.claude/commands/devkit/spec/brainstorm.md +309 -0
- package/templates/.claude/commands/devkit/spec/capture-requirement.md +202 -0
- package/templates/.claude/commands/devkit/spec/cook.md +157 -0
- package/templates/.claude/commands/devkit/spec/deep-capture-requirement.md +393 -0
- package/templates/.claude/commands/devkit/spec/implement.md +350 -0
- package/templates/.claude/commands/devkit/spec/plan.md +269 -0
- package/templates/.claude/commands/devkit/spec/task.md +156 -0
- package/templates/.claude/commands/devkit/spec/test.md +259 -0
- package/templates/.claude/commands/devkit/spec/update-plan.md +263 -0
- package/templates/.claude/commands/devkit/spec/update-requirement.md +239 -0
- package/templates/.claude/commands/devkit/spec-lite/do.md +280 -0
- package/templates/.claude/commands/devkit/spec-lite/plan.md +236 -0
- package/templates/.claude/commands/devkit/spec-lite/task.md +141 -0
- package/templates/.claude/commands/devkit/spec-lite/test.md +171 -0
- package/templates/.claude/commands/devkit/spec-lite/update-plan.md +154 -0
- package/templates/.claude/commands/qakit/a11y/audit.md +38 -0
- package/templates/.claude/commands/qakit/a11y/fix.md +22 -0
- package/templates/.claude/commands/qakit/analyze/full.md +459 -0
- package/templates/.claude/commands/qakit/analyze/quick.md +84 -0
- package/templates/.claude/commands/qakit/api/analyze.md +34 -0
- package/templates/.claude/commands/qakit/api/contract.md +22 -0
- package/templates/.claude/commands/qakit/api/generate.md +20 -0
- package/templates/.claude/commands/qakit/api/run.md +16 -0
- package/templates/.claude/commands/qakit/ask.md +57 -0
- package/templates/.claude/commands/qakit/automation/fix-flaky.md +233 -0
- package/templates/.claude/commands/qakit/automation/health-check.md +192 -0
- package/templates/.claude/commands/qakit/automation/maintenance.md +311 -0
- package/templates/.claude/commands/qakit/automation/scaffold-playwright.md +689 -0
- package/templates/.claude/commands/qakit/automation/scaffold-webdriverio.md +802 -0
- package/templates/.claude/commands/qakit/automation/scaffold.md +447 -0
- package/templates/.claude/commands/qakit/automation/update-deps.md +219 -0
- package/templates/.claude/commands/qakit/bug/investigate.md +96 -0
- package/templates/.claude/commands/qakit/bug/report.md +147 -0
- package/templates/.claude/commands/qakit/bug/reproduce.md +101 -0
- package/templates/.claude/commands/qakit/bug/triage.md +101 -0
- package/templates/.claude/commands/qakit/bug/verify.md +106 -0
- package/templates/.claude/commands/qakit/config/init-qa.md +107 -0
- package/templates/.claude/commands/qakit/confluence/fetch.md +192 -0
- package/templates/.claude/commands/qakit/confluence/search.md +201 -0
- package/templates/.claude/commands/qakit/docs/capture-test-knowledge.md +451 -0
- package/templates/.claude/commands/qakit/docs/update-changelog.md +207 -0
- package/templates/.claude/commands/qakit/docs/update-readme.md +296 -0
- package/templates/.claude/commands/qakit/e2e/generate.md +18 -0
- package/templates/.claude/commands/qakit/e2e/page-object.md +37 -0
- package/templates/.claude/commands/qakit/e2e/run.md +17 -0
- package/templates/.claude/commands/qakit/e2e/scenario.md +20 -0
- package/templates/.claude/commands/qakit/feature/create.md +178 -0
- package/templates/.claude/commands/qakit/feature/enrich-api.md +352 -0
- package/templates/.claude/commands/qakit/feature/enrich-tests.md +243 -0
- package/templates/.claude/commands/qakit/feature/enrich-ui.md +217 -0
- package/templates/.claude/commands/qakit/feature/enrich.md +246 -0
- package/templates/.claude/commands/qakit/feature/from-jira.md +184 -0
- package/templates/.claude/commands/qakit/feature/update.md +136 -0
- package/templates/.claude/commands/qakit/help.md +98 -0
- package/templates/.claude/commands/qakit/jira/analyze.md +329 -0
- package/templates/.claude/commands/qakit/jira/create-tests.md +319 -0
- package/templates/.claude/commands/qakit/kb/add-design.md +258 -0
- package/templates/.claude/commands/qakit/kb/capture.md +325 -0
- package/templates/.claude/commands/qakit/kb/clean.md +157 -0
- package/templates/.claude/commands/qakit/kb/dedupe.md +281 -0
- package/templates/.claude/commands/qakit/kb/init.md +234 -0
- package/templates/.claude/commands/qakit/kb/link.md +124 -0
- package/templates/.claude/commands/qakit/kb/list.md +185 -0
- package/templates/.claude/commands/qakit/kb/resolve.md +234 -0
- package/templates/.claude/commands/qakit/kb/search.md +202 -0
- package/templates/.claude/commands/qakit/kb/sync-confluence.md +474 -0
- package/templates/.claude/commands/qakit/metrics/coverage.md +46 -0
- package/templates/.claude/commands/qakit/metrics/dashboard.md +62 -0
- package/templates/.claude/commands/qakit/metrics/trends.md +42 -0
- package/templates/.claude/commands/qakit/perf/analyze.md +31 -0
- package/templates/.claude/commands/qakit/perf/plan.md +18 -0
- package/templates/.claude/commands/qakit/perf/run.md +17 -0
- package/templates/.claude/commands/qakit/perf/script.md +38 -0
- package/templates/.claude/commands/qakit/rca/analyze.md +166 -0
- package/templates/.claude/commands/qakit/regression/analyze.md +36 -0
- package/templates/.claude/commands/qakit/regression/report.md +30 -0
- package/templates/.claude/commands/qakit/regression/run.md +17 -0
- package/templates/.claude/commands/qakit/regression/select.md +34 -0
- package/templates/.claude/commands/qakit/research/deep.md +328 -0
- package/templates/.claude/commands/qakit/review/coverage.md +116 -0
- package/templates/.claude/commands/qakit/review/quality-gate.md +126 -0
- package/templates/.claude/commands/qakit/review/test-code.md +320 -0
- package/templates/.claude/commands/qakit/review/test-review.md +109 -0
- package/templates/.claude/commands/qakit/scout.md +195 -0
- package/templates/.claude/commands/qakit/setup/confluence.md +140 -0
- package/templates/.claude/commands/qakit/setup/jira.md +154 -0
- package/templates/.claude/commands/qakit/spec/analyze.md +46 -0
- package/templates/.claude/commands/qakit/spec/cook.md +344 -0
- package/templates/.claude/commands/qakit/spec/execute.md +38 -0
- package/templates/.claude/commands/qakit/spec/plan.md +46 -0
- package/templates/.claude/commands/qakit/spec/report.md +40 -0
- package/templates/.claude/commands/qakit/spec/task.md +40 -0
- package/templates/.claude/commands/qakit/test/create-test-case.md +151 -0
- package/templates/.claude/commands/qakit/test/create-test-suite.md +84 -0
- package/templates/.claude/commands/qakit/test/generate-api-tests.md +82 -0
- package/templates/.claude/commands/qakit/test/generate-data.md +114 -0
- package/templates/.claude/commands/qakit/test/generate-e2e.md +99 -0
- package/templates/.claude/commands/qakit/test/generate-ui-tests.md +97 -0
- package/templates/.claude/commands/qakit/testmo/report.md +22 -0
- package/templates/.claude/commands/qakit/testmo/sync.md +31 -0
- package/templates/.claude/doc-templates/bug-report-template.md +247 -0
- package/templates/.claude/doc-templates/code-standards.md +486 -0
- package/templates/.claude/doc-templates/codebase-summary.md +426 -0
- package/templates/.claude/doc-templates/development-rules.md +553 -0
- package/templates/.claude/doc-templates/feature-spec-template.md +167 -0
- package/templates/.claude/doc-templates/performance-report-template.md +49 -0
- package/templates/.claude/doc-templates/project-overview-pdr.md +494 -0
- package/templates/.claude/doc-templates/quality-report-template.md +44 -0
- package/templates/.claude/doc-templates/regression-report-template.md +41 -0
- package/templates/.claude/doc-templates/system-architecture.md +615 -0
- package/templates/.claude/doc-templates/technical-documents.md +127 -0
- package/templates/.claude/doc-templates/test-case-template.md +198 -0
- package/templates/.claude/doc-templates/test-plan-template.md +366 -0
- package/templates/.claude/doc-templates/test-summary-report.md +401 -0
- package/templates/.claude/hooks/dev-rules-reminder.cjs +101 -0
- package/templates/.claude/hooks/dev-rules-reminder.js +96 -0
- package/templates/.claude/hooks/executable_force-agent-skills-eval.sh +38 -0
- package/templates/.claude/hooks/scout-block/scout-block.ps1 +92 -0
- package/templates/.claude/hooks/scout-block/scout-block.sh +119 -0
- package/templates/.claude/hooks/scout-block.cjs +100 -0
- package/templates/.claude/hooks/scout-block.js +104 -0
- package/templates/.claude/repomix.config.json +34 -0
- package/templates/.claude/rules/01-core-principles.md +81 -0
- package/templates/.claude/rules/02-naming-and-constants.md +115 -0
- package/templates/.claude/rules/03-function-design.md +167 -0
- package/templates/.claude/rules/04-error-handling.md +83 -0
- package/templates/.claude/rules/05-testing.md +86 -0
- package/templates/.claude/rules/06-code-quality.md +107 -0
- package/templates/.claude/rules/07-architecture.md +105 -0
- package/templates/.claude/rules/08-performance-security.md +93 -0
- package/templates/.claude/rules/index.md +77 -0
- package/templates/.claude/scripts/README.md +153 -0
- package/templates/.claude/scripts/commands_data.yaml +336 -0
- package/templates/.claude/scripts/generate_catalogs.py +163 -0
- package/templates/.claude/scripts/helper.py +723 -0
- package/templates/.claude/scripts/scan_commands.py +101 -0
- package/templates/.claude/scripts/scan_skills.py +187 -0
- package/templates/.claude/scripts/skills_data.yaml +348 -0
- package/templates/.claude/settings.json +54 -0
- package/templates/.claude/settings.local.README.md +650 -0
- package/templates/.claude/settings.local.json +41 -0
- package/templates/.claude/setup/dependencies/setup-claude-mem.ps1 +534 -0
- package/templates/.claude/setup/dependencies/setup-claude-mem.sh +477 -0
- package/templates/.claude/setup/dependencies/setup-mcp-servers.ps1 +562 -0
- package/templates/.claude/setup/dependencies/setup-mcp-servers.sh +511 -0
- package/templates/.claude/setup/jira-env.example.sh +22 -0
- package/templates/.claude/setup/setup.ps1 +240 -0
- package/templates/.claude/setup/setup.sh +222 -0
- package/templates/.claude/skills/accessibility-testing/SKILL.md +34 -0
- package/templates/.claude/skills/aesthetic/SKILL.md +121 -0
- package/templates/.claude/skills/aesthetic/assets/design-guideline-template.md +163 -0
- package/templates/.claude/skills/aesthetic/assets/design-story-template.md +135 -0
- package/templates/.claude/skills/aesthetic/references/design-principles.md +62 -0
- package/templates/.claude/skills/aesthetic/references/design-resources.md +75 -0
- package/templates/.claude/skills/aesthetic/references/micro-interactions.md +53 -0
- package/templates/.claude/skills/aesthetic/references/storytelling-design.md +50 -0
- package/templates/.claude/skills/aesthetic/skill-creator/LICENSE.txt +202 -0
- package/templates/.claude/skills/aesthetic/skill-creator/SKILL.md +266 -0
- package/templates/.claude/skills/aesthetic/skill-creator/scripts/init_skill.py +303 -0
- package/templates/.claude/skills/aesthetic/skill-creator/scripts/package_skill.py +110 -0
- package/templates/.claude/skills/aesthetic/skill-creator/scripts/quick_validate.py +65 -0
- package/templates/.claude/skills/agent_skills_spec.md +51 -0
- package/templates/.claude/skills/ai-multimodal/.env.example +185 -0
- package/templates/.claude/skills/ai-multimodal/SKILL.md +69 -0
- package/templates/.claude/skills/ai-multimodal/references/audio-processing.md +386 -0
- package/templates/.claude/skills/ai-multimodal/references/image-generation.md +722 -0
- package/templates/.claude/skills/ai-multimodal/references/video-analysis.md +515 -0
- package/templates/.claude/skills/ai-multimodal/references/video-generation.md +457 -0
- package/templates/.claude/skills/ai-multimodal/references/vision-understanding.md +492 -0
- package/templates/.claude/skills/ai-multimodal/scripts/check_setup.py +299 -0
- package/templates/.claude/skills/ai-multimodal/scripts/document_converter.py +395 -0
- package/templates/.claude/skills/ai-multimodal/scripts/gemini_batch_process.py +1067 -0
- package/templates/.claude/skills/ai-multimodal/scripts/media_optimizer.py +506 -0
- package/templates/.claude/skills/ai-multimodal/scripts/requirements.txt +26 -0
- package/templates/.claude/skills/ai-multimodal/scripts/tests/requirements.txt +20 -0
- package/templates/.claude/skills/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
- package/templates/.claude/skills/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
- package/templates/.claude/skills/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
- package/templates/.claude/skills/api-design-principles/SKILL.md +527 -0
- package/templates/.claude/skills/api-design-principles/assets/api-design-checklist.md +136 -0
- package/templates/.claude/skills/api-design-principles/assets/rest-api-template.py +165 -0
- package/templates/.claude/skills/api-design-principles/references/graphql-schema-design.md +566 -0
- package/templates/.claude/skills/api-design-principles/references/rest-best-practices.md +385 -0
- package/templates/.claude/skills/api-testing/SKILL.md +24 -0
- package/templates/.claude/skills/backend-development/SKILL.md +95 -0
- package/templates/.claude/skills/backend-development/references/backend-api-design.md +495 -0
- package/templates/.claude/skills/backend-development/references/backend-architecture.md +454 -0
- package/templates/.claude/skills/backend-development/references/backend-code-quality.md +659 -0
- package/templates/.claude/skills/backend-development/references/backend-debugging.md +904 -0
- package/templates/.claude/skills/backend-development/references/backend-devops.md +494 -0
- package/templates/.claude/skills/backend-development/references/backend-mindset.md +387 -0
- package/templates/.claude/skills/backend-development/references/backend-performance.md +397 -0
- package/templates/.claude/skills/backend-development/references/backend-security.md +290 -0
- package/templates/.claude/skills/backend-development/references/backend-technologies.md +256 -0
- package/templates/.claude/skills/backend-development/references/backend-testing.md +429 -0
- package/templates/.claude/skills/bug-investigation/SKILL.md +24 -0
- package/templates/.claude/skills/chrome-devtools/SKILL.md +472 -0
- package/templates/.claude/skills/chrome-devtools/references/cdp-domains.md +694 -0
- package/templates/.claude/skills/chrome-devtools/references/performance-guide.md +940 -0
- package/templates/.claude/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
- package/templates/.claude/skills/chrome-devtools/scripts/README.md +228 -0
- package/templates/.claude/skills/chrome-devtools/scripts/__tests__/selector.test.js +210 -0
- package/templates/.claude/skills/chrome-devtools/scripts/aria-snapshot.js +362 -0
- package/templates/.claude/skills/chrome-devtools/scripts/click.js +83 -0
- package/templates/.claude/skills/chrome-devtools/scripts/console.js +79 -0
- package/templates/.claude/skills/chrome-devtools/scripts/evaluate.js +53 -0
- package/templates/.claude/skills/chrome-devtools/scripts/fill.js +76 -0
- package/templates/.claude/skills/chrome-devtools/scripts/install-deps.sh +181 -0
- package/templates/.claude/skills/chrome-devtools/scripts/install.sh +83 -0
- package/templates/.claude/skills/chrome-devtools/scripts/lib/browser.js +217 -0
- package/templates/.claude/skills/chrome-devtools/scripts/lib/selector.js +178 -0
- package/templates/.claude/skills/chrome-devtools/scripts/navigate.js +54 -0
- package/templates/.claude/skills/chrome-devtools/scripts/network.js +106 -0
- package/templates/.claude/skills/chrome-devtools/scripts/package.json +16 -0
- package/templates/.claude/skills/chrome-devtools/scripts/performance.js +149 -0
- package/templates/.claude/skills/chrome-devtools/scripts/screenshot.js +194 -0
- package/templates/.claude/skills/chrome-devtools/scripts/select-ref.js +131 -0
- package/templates/.claude/skills/chrome-devtools/scripts/snapshot.js +135 -0
- package/templates/.claude/skills/claude-code-analyzer/SKILL.md +299 -0
- package/templates/.claude/skills/claude-code-analyzer/references/best-practices.md +290 -0
- package/templates/.claude/skills/claude-code-analyzer/scripts/analyze-claude-md.sh +239 -0
- package/templates/.claude/skills/claude-code-analyzer/scripts/analyze.sh +274 -0
- package/templates/.claude/skills/claude-code-analyzer/scripts/fetch-features.sh +69 -0
- package/templates/.claude/skills/claude-code-analyzer/scripts/github-discovery.sh +178 -0
- package/templates/.claude/skills/code-review/SKILL.md +155 -0
- package/templates/.claude/skills/code-review/references/code-review-reception.md +209 -0
- package/templates/.claude/skills/code-review/references/human-code-review-practices.md +370 -0
- package/templates/.claude/skills/code-review/references/requesting-code-review.md +105 -0
- package/templates/.claude/skills/code-review/references/verification-before-completion.md +139 -0
- package/templates/.claude/skills/command-development/README.md +272 -0
- package/templates/.claude/skills/command-development/SKILL.md +834 -0
- package/templates/.claude/skills/command-development/examples/plugin-commands.md +557 -0
- package/templates/.claude/skills/command-development/examples/simple-commands.md +504 -0
- package/templates/.claude/skills/command-development/references/advanced-workflows.md +722 -0
- package/templates/.claude/skills/command-development/references/documentation-patterns.md +739 -0
- package/templates/.claude/skills/command-development/references/frontmatter-reference.md +463 -0
- package/templates/.claude/skills/command-development/references/interactive-commands.md +920 -0
- package/templates/.claude/skills/command-development/references/marketplace-considerations.md +904 -0
- package/templates/.claude/skills/command-development/references/plugin-features-reference.md +609 -0
- package/templates/.claude/skills/command-development/references/testing-strategies.md +702 -0
- package/templates/.claude/skills/confluence-integration/confluence-integration.md +260 -0
- package/templates/.claude/skills/databases/SKILL.md +232 -0
- package/templates/.claude/skills/databases/references/mongodb-aggregation.md +447 -0
- package/templates/.claude/skills/databases/references/mongodb-atlas.md +465 -0
- package/templates/.claude/skills/databases/references/mongodb-crud.md +408 -0
- package/templates/.claude/skills/databases/references/mongodb-indexing.md +442 -0
- package/templates/.claude/skills/databases/references/postgresql-administration.md +594 -0
- package/templates/.claude/skills/databases/references/postgresql-performance.md +527 -0
- package/templates/.claude/skills/databases/references/postgresql-psql-cli.md +467 -0
- package/templates/.claude/skills/databases/references/postgresql-queries.md +475 -0
- package/templates/.claude/skills/databases/scripts/db_backup.py +502 -0
- package/templates/.claude/skills/databases/scripts/db_migrate.py +414 -0
- package/templates/.claude/skills/databases/scripts/db_performance_check.py +444 -0
- package/templates/.claude/skills/databases/scripts/dot_coverage +0 -0
- package/templates/.claude/skills/databases/scripts/requirements.txt +20 -0
- package/templates/.claude/skills/databases/scripts/tests/coverage-db.json +1 -0
- package/templates/.claude/skills/databases/scripts/tests/requirements.txt +4 -0
- package/templates/.claude/skills/databases/scripts/tests/test_db_backup.py +340 -0
- package/templates/.claude/skills/databases/scripts/tests/test_db_migrate.py +277 -0
- package/templates/.claude/skills/databases/scripts/tests/test_db_performance_check.py +370 -0
- package/templates/.claude/skills/debugging/SKILL.md +84 -0
- package/templates/.claude/skills/debugging/references/defense-in-depth.md +124 -0
- package/templates/.claude/skills/debugging/references/root-cause-tracing.md +122 -0
- package/templates/.claude/skills/debugging/references/systematic-debugging.md +102 -0
- package/templates/.claude/skills/debugging/references/verification.md +123 -0
- package/templates/.claude/skills/debugging/scripts/find-polluter.sh +63 -0
- package/templates/.claude/skills/debugging/scripts/find-polluter.test.md +102 -0
- package/templates/.claude/skills/docs-discovery/COMPARISON.md +313 -0
- package/templates/.claude/skills/docs-discovery/README.md +53 -0
- package/templates/.claude/skills/docs-discovery/REFACTORING_SUMMARY.md +144 -0
- package/templates/.claude/skills/docs-discovery/SKILL.md +64 -0
- package/templates/.claude/skills/docs-discovery/archive/dot_env.example +15 -0
- package/templates/.claude/skills/docs-discovery/archive/package.json +24 -0
- package/templates/.claude/skills/docs-discovery/archive/references/advanced.md +79 -0
- package/templates/.claude/skills/docs-discovery/archive/references/context7-patterns.md +68 -0
- package/templates/.claude/skills/docs-discovery/archive/references/errors.md +68 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/analyze-llms-txt.js +211 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/detect-topic.js +172 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/fetch-docs.js +213 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/tests/run-tests.js +72 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-analyze-llms.js +119 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-detect-topic.js +112 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-fetch-docs.js +84 -0
- package/templates/.claude/skills/docs-discovery/archive/scripts/utils/env-loader.js +94 -0
- package/templates/.claude/skills/docs-discovery/archive/workflows/library-search.md +87 -0
- package/templates/.claude/skills/docs-discovery/archive/workflows/repo-analysis.md +91 -0
- package/templates/.claude/skills/docs-discovery/archive/workflows/topic-search.md +77 -0
- package/templates/.claude/skills/docs-seeker/.env.example +15 -0
- package/templates/.claude/skills/docs-seeker/SKILL.md +97 -0
- package/templates/.claude/skills/docs-seeker/package.json +24 -0
- package/templates/.claude/skills/docs-seeker/references/advanced.md +79 -0
- package/templates/.claude/skills/docs-seeker/references/context7-patterns.md +68 -0
- package/templates/.claude/skills/docs-seeker/references/errors.md +68 -0
- package/templates/.claude/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/templates/.claude/skills/docs-seeker/scripts/detect-topic.js +172 -0
- package/templates/.claude/skills/docs-seeker/scripts/fetch-docs.js +213 -0
- package/templates/.claude/skills/docs-seeker/scripts/tests/run-tests.js +72 -0
- package/templates/.claude/skills/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
- package/templates/.claude/skills/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
- package/templates/.claude/skills/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
- package/templates/.claude/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
- package/templates/.claude/skills/docs-seeker/workflows/library-search.md +87 -0
- package/templates/.claude/skills/docs-seeker/workflows/repo-analysis.md +91 -0
- package/templates/.claude/skills/docs-seeker/workflows/topic-search.md +77 -0
- package/templates/.claude/skills/document-skills/docx/LICENSE.txt +30 -0
- package/templates/.claude/skills/document-skills/docx/SKILL.md +197 -0
- package/templates/.claude/skills/document-skills/docx/docx-js.md +350 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/pack.py +159 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/unpack.py +29 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validate.py +69 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/base.py +951 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/docx.py +274 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/templates/.claude/skills/document-skills/docx/ooxml.md +610 -0
- package/templates/.claude/skills/document-skills/docx/scripts/__init__.py +1 -0
- package/templates/.claude/skills/document-skills/docx/scripts/document.py +1276 -0
- package/templates/.claude/skills/document-skills/docx/scripts/templates/comments.xml +3 -0
- package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/templates/.claude/skills/document-skills/docx/scripts/templates/people.xml +3 -0
- package/templates/.claude/skills/document-skills/docx/scripts/utilities.py +374 -0
- package/templates/.claude/skills/document-skills/pdf/LICENSE.txt +30 -0
- package/templates/.claude/skills/document-skills/pdf/SKILL.md +294 -0
- package/templates/.claude/skills/document-skills/pdf/forms.md +205 -0
- package/templates/.claude/skills/document-skills/pdf/reference.md +612 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/create_validation_image.py +41 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/templates/.claude/skills/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/templates/.claude/skills/document-skills/pptx/LICENSE.txt +30 -0
- package/templates/.claude/skills/document-skills/pptx/SKILL.md +484 -0
- package/templates/.claude/skills/document-skills/pptx/html2pptx.md +625 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/pack.py +159 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/unpack.py +29 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validate.py +69 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/base.py +951 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/templates/.claude/skills/document-skills/pptx/ooxml.md +427 -0
- package/templates/.claude/skills/document-skills/pptx/scripts/html2pptx.js +979 -0
- package/templates/.claude/skills/document-skills/pptx/scripts/inventory.py +1020 -0
- package/templates/.claude/skills/document-skills/pptx/scripts/rearrange.py +231 -0
- package/templates/.claude/skills/document-skills/pptx/scripts/replace.py +385 -0
- package/templates/.claude/skills/document-skills/pptx/scripts/thumbnail.py +450 -0
- package/templates/.claude/skills/document-skills/xlsx/LICENSE.txt +30 -0
- package/templates/.claude/skills/document-skills/xlsx/SKILL.md +289 -0
- package/templates/.claude/skills/document-skills/xlsx/recalc.py +178 -0
- package/templates/.claude/skills/frontend-development/SKILL.md +208 -0
- package/templates/.claude/skills/frontend-development/references/accessibility.md +720 -0
- package/templates/.claude/skills/frontend-development/references/data-fetching.md +412 -0
- package/templates/.claude/skills/frontend-development/references/forms.md +809 -0
- package/templates/.claude/skills/frontend-development/references/fsd-architecture.md +442 -0
- package/templates/.claude/skills/frontend-development/references/graphql-apollo.md +731 -0
- package/templates/.claude/skills/frontend-development/references/performance.md +417 -0
- package/templates/.claude/skills/frontend-development/references/react-patterns.md +451 -0
- package/templates/.claude/skills/frontend-development/references/routing.md +436 -0
- package/templates/.claude/skills/frontend-development/references/state-management.md +510 -0
- package/templates/.claude/skills/frontend-development/references/tailwind-css.md +397 -0
- package/templates/.claude/skills/frontend-development/references/testing.md +630 -0
- package/templates/.claude/skills/frontend-development/references/typescript-standards.md +363 -0
- package/templates/.claude/skills/frontend-development/references/ui-libraries.md +586 -0
- package/templates/.claude/skills/infra-engineer/SKILL.md +642 -0
- package/templates/.claude/skills/infra-engineer/dot_env.example +76 -0
- package/templates/.claude/skills/infra-engineer/references/aws-overview.md +171 -0
- package/templates/.claude/skills/infra-engineer/references/browser-rendering.md +305 -0
- package/templates/.claude/skills/infra-engineer/references/cicd-github-actions.md +439 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-d1-kv.md +123 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-platform.md +271 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-r2-storage.md +280 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-advanced.md +312 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-apis.md +309 -0
- package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-basics.md +418 -0
- package/templates/.claude/skills/infra-engineer/references/devsecops-basics.md +361 -0
- package/templates/.claude/skills/infra-engineer/references/docker-basics.md +297 -0
- package/templates/.claude/skills/infra-engineer/references/docker-compose.md +292 -0
- package/templates/.claude/skills/infra-engineer/references/finops-basics.md +278 -0
- package/templates/.claude/skills/infra-engineer/references/gcloud-platform.md +297 -0
- package/templates/.claude/skills/infra-engineer/references/gcloud-services.md +304 -0
- package/templates/.claude/skills/infra-engineer/references/kubernetes-basics.md +295 -0
- package/templates/.claude/skills/infra-engineer/scripts/cloudflare_deploy.py +269 -0
- package/templates/.claude/skills/infra-engineer/scripts/docker_optimize.py +320 -0
- package/templates/.claude/skills/infra-engineer/scripts/requirements.txt +20 -0
- package/templates/.claude/skills/infra-engineer/scripts/tests/requirements.txt +3 -0
- package/templates/.claude/skills/infra-engineer/scripts/tests/test_cloudflare_deploy.py +285 -0
- package/templates/.claude/skills/infra-engineer/scripts/tests/test_docker_optimize.py +436 -0
- package/templates/.claude/skills/javascript-pro/SKILL.md +96 -0
- package/templates/.claude/skills/javascript-pro/references/async-patterns.md +96 -0
- package/templates/.claude/skills/javascript-pro/references/best-practices.md +98 -0
- package/templates/.claude/skills/javascript-pro/references/design-patterns.md +100 -0
- package/templates/.claude/skills/javascript-pro/references/error-handling.md +100 -0
- package/templates/.claude/skills/javascript-pro/references/functional-patterns.md +93 -0
- package/templates/.claude/skills/javascript-pro/references/modern-syntax.md +100 -0
- package/templates/.claude/skills/javascript-pro/references/performance.md +98 -0
- package/templates/.claude/skills/jira-integration/adf-parser.md +338 -0
- package/templates/.claude/skills/jira-integration/jira-integration.md +353 -0
- package/templates/.claude/skills/knowledge-base/knowledge-base.md +212 -0
- package/templates/.claude/skills/mobile-development/SKILL.md +212 -0
- package/templates/.claude/skills/mobile-development/references/mobile-android.md +604 -0
- package/templates/.claude/skills/mobile-development/references/mobile-best-practices.md +545 -0
- package/templates/.claude/skills/mobile-development/references/mobile-debugging.md +1089 -0
- package/templates/.claude/skills/mobile-development/references/mobile-frameworks.md +465 -0
- package/templates/.claude/skills/mobile-development/references/mobile-ios.md +496 -0
- package/templates/.claude/skills/mobile-development/references/mobile-mindset.md +544 -0
- package/templates/.claude/skills/mobile-testing/SKILL.md +24 -0
- package/templates/.claude/skills/performance-testing/SKILL.md +30 -0
- package/templates/.claude/skills/planning/SKILL.md +143 -0
- package/templates/.claude/skills/planning/references/codebase-understanding.md +62 -0
- package/templates/.claude/skills/planning/references/output-standards.md +87 -0
- package/templates/.claude/skills/planning/references/plan-organization.md +137 -0
- package/templates/.claude/skills/planning/references/research-phase.md +47 -0
- package/templates/.claude/skills/planning/references/solution-design.md +63 -0
- package/templates/.claude/skills/playwright/SKILL.md +303 -0
- package/templates/.claude/skills/playwright/examples/auth.fixture.ts +172 -0
- package/templates/.claude/skills/playwright/examples/login.page.ts +232 -0
- package/templates/.claude/skills/playwright/references/config.md +391 -0
- package/templates/.claude/skills/problem-solving/SKILL.md +96 -0
- package/templates/.claude/skills/problem-solving/references/attribution.md +69 -0
- package/templates/.claude/skills/problem-solving/references/collision-zone-thinking.md +79 -0
- package/templates/.claude/skills/problem-solving/references/inversion-exercise.md +91 -0
- package/templates/.claude/skills/problem-solving/references/meta-pattern-recognition.md +87 -0
- package/templates/.claude/skills/problem-solving/references/scale-game.md +95 -0
- package/templates/.claude/skills/problem-solving/references/simplification-cascades.md +80 -0
- package/templates/.claude/skills/problem-solving/references/when-stuck.md +72 -0
- package/templates/.claude/skills/prompt-enhancer/SKILL.md +380 -0
- package/templates/.claude/skills/python-pro/SKILL.md +59 -0
- package/templates/.claude/skills/python-pro/references/async-patterns.md +96 -0
- package/templates/.claude/skills/python-pro/references/error-handling.md +84 -0
- package/templates/.claude/skills/python-pro/references/performance.md +71 -0
- package/templates/.claude/skills/python-pro/references/project-setup.md +78 -0
- package/templates/.claude/skills/python-pro/references/security.md +73 -0
- package/templates/.claude/skills/python-pro/references/testing.md +90 -0
- package/templates/.claude/skills/python-pro/references/type-system.md +88 -0
- package/templates/.claude/skills/qa-standards/SKILL.md +176 -0
- package/templates/.claude/skills/qa-standards/references/naming-conventions.md +262 -0
- package/templates/.claude/skills/quality-metrics/SKILL.md +27 -0
- package/templates/.claude/skills/repomix/SKILL.md +247 -0
- package/templates/.claude/skills/repomix/references/configuration.md +211 -0
- package/templates/.claude/skills/repomix/references/usage-patterns.md +232 -0
- package/templates/.claude/skills/repomix/scripts/README.md +179 -0
- package/templates/.claude/skills/repomix/scripts/repomix_batch.py +455 -0
- package/templates/.claude/skills/repomix/scripts/repos.example.json +15 -0
- package/templates/.claude/skills/repomix/scripts/requirements.txt +15 -0
- package/templates/.claude/skills/repomix/scripts/tests/test_repomix_batch.py +531 -0
- package/templates/.claude/skills/research/SKILL.md +168 -0
- package/templates/.claude/skills/sequential-thinking/.env.example +8 -0
- package/templates/.claude/skills/sequential-thinking/README.md +183 -0
- package/templates/.claude/skills/sequential-thinking/SKILL.md +94 -0
- package/templates/.claude/skills/sequential-thinking/package.json +31 -0
- package/templates/.claude/skills/sequential-thinking/references/advanced-strategies.md +79 -0
- package/templates/.claude/skills/sequential-thinking/references/advanced-techniques.md +76 -0
- package/templates/.claude/skills/sequential-thinking/references/core-patterns.md +95 -0
- package/templates/.claude/skills/sequential-thinking/references/examples-api.md +88 -0
- package/templates/.claude/skills/sequential-thinking/references/examples-architecture.md +94 -0
- package/templates/.claude/skills/sequential-thinking/references/examples-debug.md +90 -0
- package/templates/.claude/skills/sequential-thinking/scripts/format-thought.js +159 -0
- package/templates/.claude/skills/sequential-thinking/scripts/process-thought.js +236 -0
- package/templates/.claude/skills/sequential-thinking/tests/format-thought.test.js +133 -0
- package/templates/.claude/skills/sequential-thinking/tests/process-thought.test.js +215 -0
- package/templates/.claude/skills/test-automation/SKILL.md +93 -0
- package/templates/.claude/skills/test-automation/examples/page-object.ts +44 -0
- package/templates/.claude/skills/test-automation/references/frameworks.md +96 -0
- package/templates/.claude/skills/test-data-management/SKILL.md +24 -0
- package/templates/.claude/skills/test-design/SKILL.md +25 -0
- package/templates/.claude/skills/typescript-pro/SKILL.md +84 -0
- package/templates/.claude/skills/typescript-pro/references/advanced-patterns.md +100 -0
- package/templates/.claude/skills/typescript-pro/references/best-practices.md +96 -0
- package/templates/.claude/skills/typescript-pro/references/conditional-types.md +85 -0
- package/templates/.claude/skills/typescript-pro/references/generics.md +97 -0
- package/templates/.claude/skills/typescript-pro/references/mapped-types.md +99 -0
- package/templates/.claude/skills/typescript-pro/references/template-literals.md +85 -0
- package/templates/.claude/skills/typescript-pro/references/type-inference.md +94 -0
- package/templates/.claude/skills/typescript-pro/references/utility-types.md +96 -0
- package/templates/.claude/skills/ui-testing/SKILL.md +24 -0
- package/templates/.claude/skills/ui-ux-pro-max/SKILL.md +229 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/prompts.csv +24 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/styles.csv +59 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/templates/.claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/templates/.claude/skills/ui-ux-pro-max/scripts/core.py +236 -0
- package/templates/.claude/skills/ui-ux-pro-max/scripts/search.py +61 -0
- package/templates/.claude/skills/webdriverio/SKILL.md +433 -0
- package/templates/.claude/skills/webdriverio/examples/mobile.page.ts +369 -0
- package/templates/.claude/skills/webdriverio/references/capabilities.md +377 -0
- package/templates/.claude/statusline.cjs +105 -0
- package/templates/.claude/statusline.ps1 +187 -0
- package/templates/.claude/statusline.sh +161 -0
- package/templates/.claude/workflows/api-testing-workflow.md +36 -0
- package/templates/.claude/workflows/bug-investigation-workflow.md +42 -0
- package/templates/.claude/workflows/development-rules.md +366 -0
- package/templates/.claude/workflows/documentation-management.md +128 -0
- package/templates/.claude/workflows/e2e-testing-workflow.md +36 -0
- package/templates/.claude/workflows/orchestration-protocol.md +16 -0
- package/templates/.claude/workflows/performance-testing-workflow.md +42 -0
- package/templates/.claude/workflows/primary-workflow.md +45 -0
- package/templates/.claude/workflows/qa-primary-workflow.md +48 -0
- package/templates/.claude/workflows/qa-rules.md +42 -0
- package/templates/.claude/workflows/regression-testing-workflow.md +36 -0
- package/templates/.claude/workflows/test-driven-qa-workflow.md +37 -0
- package/templates/.codex/config.toml.template +29 -0
- package/templates/.codex/prompts/qa-commands.md +32 -0
- package/templates/.codex/prompts/test-generation.md +29 -0
- package/templates/.cursor/CHANGELOG.md +540 -0
- package/templates/.cursor/README.md +261 -0
- package/templates/.cursor/commands/devkit/ask.md +71 -0
- package/templates/.cursor/commands/devkit/backend/create-api.md +207 -0
- package/templates/.cursor/commands/devkit/backend/create-migration.md +169 -0
- package/templates/.cursor/commands/devkit/backend/create-schema.md +183 -0
- package/templates/.cursor/commands/devkit/backend/design-graphql-api.md +287 -0
- package/templates/.cursor/commands/devkit/backend/design-rest-api.md +219 -0
- package/templates/.cursor/commands/devkit/config/init-backend.md +219 -0
- package/templates/.cursor/commands/devkit/config/init-frontend.md +114 -0
- package/templates/.cursor/commands/devkit/create-api-integration.md +196 -0
- package/templates/.cursor/commands/devkit/create-component.md +104 -0
- package/templates/.cursor/commands/devkit/create-form.md +189 -0
- package/templates/.cursor/commands/devkit/create-page.md +111 -0
- package/templates/.cursor/commands/devkit/create-storybook.md +235 -0
- package/templates/.cursor/commands/devkit/create-table.md +251 -0
- package/templates/.cursor/commands/devkit/create-test.md +174 -0
- package/templates/.cursor/commands/devkit/debug.md +192 -0
- package/templates/.cursor/commands/devkit/docs/capture-knowledge.md +252 -0
- package/templates/.cursor/commands/devkit/docs/init.md +153 -0
- package/templates/.cursor/commands/devkit/docs/summarize.md +82 -0
- package/templates/.cursor/commands/devkit/docs/update.md +174 -0
- package/templates/.cursor/commands/devkit/fix.md +24 -0
- package/templates/.cursor/commands/devkit/help.md +148 -0
- package/templates/.cursor/commands/devkit/refactor.md +476 -0
- package/templates/.cursor/commands/devkit/research.md +135 -0
- package/templates/.cursor/commands/devkit/review/code.md +297 -0
- package/templates/.cursor/commands/devkit/review/codebase.md +37 -0
- package/templates/.cursor/commands/devkit/scout.md +103 -0
- package/templates/.cursor/commands/devkit/solve.md +355 -0
- package/templates/.cursor/commands/devkit/spec/brainstorm.md +184 -0
- package/templates/.cursor/commands/devkit/spec/capture-requirement.md +164 -0
- package/templates/.cursor/commands/devkit/spec/cook.md +101 -0
- package/templates/.cursor/commands/devkit/spec/deep-capture-requirement.md +149 -0
- package/templates/.cursor/commands/devkit/spec/implement.md +354 -0
- package/templates/.cursor/commands/devkit/spec/plan.md +317 -0
- package/templates/.cursor/commands/devkit/spec/task.md +150 -0
- package/templates/.cursor/commands/devkit/spec/test.md +203 -0
- package/templates/.cursor/commands/devkit/spec/update-plan.md +234 -0
- package/templates/.cursor/commands/devkit/spec/update-requirement.md +222 -0
- package/templates/.cursor/commands/devkit/spec-lite/do.md +154 -0
- package/templates/.cursor/commands/devkit/spec-lite/plan.md +197 -0
- package/templates/.cursor/commands/devkit/spec-lite/task.md +138 -0
- package/templates/.cursor/commands/devkit/spec-lite/test.md +129 -0
- package/templates/.cursor/commands/devkit/spec-lite/update-plan.md +133 -0
- package/templates/.cursor/commands/devkit/ui-ux-pro-max.md +226 -0
- package/templates/.cursor/doc-templates/code-standards.md +486 -0
- package/templates/.cursor/doc-templates/codebase-summary.md +426 -0
- package/templates/.cursor/doc-templates/development-rules.md +553 -0
- package/templates/.cursor/doc-templates/project-overview-pdr.md +494 -0
- package/templates/.cursor/doc-templates/system-architecture.md +615 -0
- package/templates/.cursor/doc-templates/technical-documents.md +127 -0
- package/templates/.cursor/repomix.config.json +34 -0
- package/templates/.cursor/rules/backend-development/backend-development.mdc +94 -0
- package/templates/.cursor/rules/backend-development/references/backend-api-design.md +495 -0
- package/templates/.cursor/rules/backend-development/references/backend-architecture.md +454 -0
- package/templates/.cursor/rules/backend-development/references/backend-code-quality.md +659 -0
- package/templates/.cursor/rules/backend-development/references/backend-debugging.md +904 -0
- package/templates/.cursor/rules/backend-development/references/backend-devops.md +494 -0
- package/templates/.cursor/rules/backend-development/references/backend-mindset.md +387 -0
- package/templates/.cursor/rules/backend-development/references/backend-performance.md +397 -0
- package/templates/.cursor/rules/backend-development/references/backend-security.md +290 -0
- package/templates/.cursor/rules/backend-development/references/backend-technologies.md +256 -0
- package/templates/.cursor/rules/backend-development/references/backend-testing.md +429 -0
- package/templates/.cursor/rules/brainstormer.mdc +147 -0
- package/templates/.cursor/rules/code-optimizer.mdc +132 -0
- package/templates/.cursor/rules/code-review/code-revew.mdc +144 -0
- package/templates/.cursor/rules/code-review/references/code-review-reception.md +209 -0
- package/templates/.cursor/rules/code-review/references/requesting-code-review.md +105 -0
- package/templates/.cursor/rules/code-review/references/verification-before-completion.md +139 -0
- package/templates/.cursor/rules/code-reviewer.mdc +85 -0
- package/templates/.cursor/rules/code-simplifier.mdc +121 -0
- package/templates/.cursor/rules/coder.mdc +86 -0
- package/templates/.cursor/rules/community-rules.mdc +38 -0
- package/templates/.cursor/rules/cunningham.mdc +114 -0
- package/templates/.cursor/rules/debugger.mdc +108 -0
- package/templates/.cursor/rules/development-rules.mdc +208 -0
- package/templates/.cursor/rules/docs-manager.mdc +121 -0
- package/templates/.cursor/rules/docs-seeker/docs-seeker.mdc +57 -0
- package/templates/.cursor/rules/docs-seeker/references/advanced.md +80 -0
- package/templates/.cursor/rules/docs-seeker/references/context7-patterns.md +69 -0
- package/templates/.cursor/rules/docs-seeker/references/errors.md +69 -0
- package/templates/.cursor/rules/docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/templates/.cursor/rules/docs-seeker/scripts/detect-topic.js +172 -0
- package/templates/.cursor/rules/docs-seeker/scripts/fetch-docs.js +213 -0
- package/templates/.cursor/rules/docs-seeker/scripts/tests/run-tests.js +72 -0
- package/templates/.cursor/rules/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
- package/templates/.cursor/rules/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
- package/templates/.cursor/rules/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
- package/templates/.cursor/rules/docs-seeker/scripts/utils/env-loader.js +94 -0
- package/templates/.cursor/rules/docs-seeker/workflows/library-search.md +88 -0
- package/templates/.cursor/rules/docs-seeker/workflows/repo-analysis.md +92 -0
- package/templates/.cursor/rules/docs-seeker/workflows/topic-search.md +78 -0
- package/templates/.cursor/rules/frontend-development/frontend-development.mdc +131 -0
- package/templates/.cursor/rules/frontend-development/references/accessibility.md +719 -0
- package/templates/.cursor/rules/frontend-development/references/data-fetching.md +412 -0
- package/templates/.cursor/rules/frontend-development/references/forms.md +808 -0
- package/templates/.cursor/rules/frontend-development/references/fsd-architecture.md +442 -0
- package/templates/.cursor/rules/frontend-development/references/graphql-apollo.md +730 -0
- package/templates/.cursor/rules/frontend-development/references/performance.md +417 -0
- package/templates/.cursor/rules/frontend-development/references/react-patterns.md +451 -0
- package/templates/.cursor/rules/frontend-development/references/routing.md +436 -0
- package/templates/.cursor/rules/frontend-development/references/state-management.md +511 -0
- package/templates/.cursor/rules/frontend-development/references/tailwind-css.md +398 -0
- package/templates/.cursor/rules/frontend-development/references/testing.md +629 -0
- package/templates/.cursor/rules/frontend-development/references/typescript-standards.md +364 -0
- package/templates/.cursor/rules/frontend-development/references/ui-libraries.md +587 -0
- package/templates/.cursor/rules/javascript-pro/javascript-pro.mdc +98 -0
- package/templates/.cursor/rules/javascript-pro/references/async-patterns.md +96 -0
- package/templates/.cursor/rules/javascript-pro/references/best-practices.md +98 -0
- package/templates/.cursor/rules/javascript-pro/references/design-patterns.md +100 -0
- package/templates/.cursor/rules/javascript-pro/references/error-handling.md +100 -0
- package/templates/.cursor/rules/javascript-pro/references/functional-patterns.md +93 -0
- package/templates/.cursor/rules/javascript-pro/references/modern-syntax.md +100 -0
- package/templates/.cursor/rules/javascript-pro/references/performance.md +98 -0
- package/templates/.cursor/rules/planner.mdc +87 -0
- package/templates/.cursor/rules/problem-solving/problem-solving.mdc +96 -0
- package/templates/.cursor/rules/problem-solving/references/attribution.md +69 -0
- package/templates/.cursor/rules/problem-solving/references/collision-zone-thinking.md +79 -0
- package/templates/.cursor/rules/problem-solving/references/inversion-exercise.md +91 -0
- package/templates/.cursor/rules/problem-solving/references/meta-pattern-recognition.md +87 -0
- package/templates/.cursor/rules/problem-solving/references/scale-game.md +95 -0
- package/templates/.cursor/rules/problem-solving/references/simplification-cascades.md +80 -0
- package/templates/.cursor/rules/problem-solving/references/when-stuck.md +72 -0
- package/templates/.cursor/rules/project-manager.mdc +116 -0
- package/templates/.cursor/rules/project-profile.mdc +54 -0
- package/templates/.cursor/rules/python-pro/python-pro.mdc +83 -0
- package/templates/.cursor/rules/python-pro/references/async-patterns.md +96 -0
- package/templates/.cursor/rules/python-pro/references/error-handling.md +84 -0
- package/templates/.cursor/rules/python-pro/references/performance.md +71 -0
- package/templates/.cursor/rules/python-pro/references/project-setup.md +78 -0
- package/templates/.cursor/rules/python-pro/references/security.md +73 -0
- package/templates/.cursor/rules/python-pro/references/testing.md +90 -0
- package/templates/.cursor/rules/python-pro/references/type-system.md +88 -0
- package/templates/.cursor/rules/qa-api-testing.mdc +25 -0
- package/templates/.cursor/rules/qa-automation.mdc +28 -0
- package/templates/.cursor/rules/qa-testing.mdc +28 -0
- package/templates/.cursor/rules/repomix/references/configuration.md +211 -0
- package/templates/.cursor/rules/repomix/references/usage-patterns.md +232 -0
- package/templates/.cursor/rules/repomix/repomix.mdc +248 -0
- package/templates/.cursor/rules/repomix/scripts/README.md +179 -0
- package/templates/.cursor/rules/repomix/scripts/repomix_batch.py +455 -0
- package/templates/.cursor/rules/repomix/scripts/repos.example.json +15 -0
- package/templates/.cursor/rules/repomix/scripts/requirements.txt +15 -0
- package/templates/.cursor/rules/repomix/scripts/tests/test_repomix_batch.py +531 -0
- package/templates/.cursor/rules/research/research.mdc +111 -0
- package/templates/.cursor/rules/researcher.mdc +54 -0
- package/templates/.cursor/rules/scout.mdc +105 -0
- package/templates/.cursor/rules/security-agent.mdc +122 -0
- package/templates/.cursor/rules/security.mdc +90 -0
- package/templates/.cursor/rules/sequential-thinking/references/advanced-strategies.md +80 -0
- package/templates/.cursor/rules/sequential-thinking/references/advanced-techniques.md +77 -0
- package/templates/.cursor/rules/sequential-thinking/references/core-patterns.md +96 -0
- package/templates/.cursor/rules/sequential-thinking/references/examples-api.md +89 -0
- package/templates/.cursor/rules/sequential-thinking/references/examples-architecture.md +95 -0
- package/templates/.cursor/rules/sequential-thinking/references/examples-debug.md +91 -0
- package/templates/.cursor/rules/sequential-thinking/scripts/format-thought.js +159 -0
- package/templates/.cursor/rules/sequential-thinking/scripts/process-thought.js +236 -0
- package/templates/.cursor/rules/sequential-thinking/sequential-thinking.mdc +86 -0
- package/templates/.cursor/rules/tattletale-reporter.mdc +64 -0
- package/templates/.cursor/rules/tester.mdc +221 -0
- package/templates/.cursor/rules/testing.mdc +215 -0
- package/templates/.cursor/rules/typescript-pro/references/advanced-patterns.md +100 -0
- package/templates/.cursor/rules/typescript-pro/references/best-practices.md +96 -0
- package/templates/.cursor/rules/typescript-pro/references/conditional-types.md +85 -0
- package/templates/.cursor/rules/typescript-pro/references/generics.md +97 -0
- package/templates/.cursor/rules/typescript-pro/references/mapped-types.md +99 -0
- package/templates/.cursor/rules/typescript-pro/references/template-literals.md +85 -0
- package/templates/.cursor/rules/typescript-pro/references/type-inference.md +94 -0
- package/templates/.cursor/rules/typescript-pro/references/utility-types.md +96 -0
- package/templates/.cursor/rules/typescript-pro/typescript-pro.mdc +101 -0
- package/templates/.cursor/rules/typescript-pro.mdc +129 -0
- package/templates/.cursor/rules/ui-ux-designer.mdc +117 -0
- package/templates/.cursor/scripts/helper.py +723 -0
- package/templates/.cursor/settings.json +5 -0
- package/templates/.kiro/steering/qa-standards.md +84 -0
- package/templates/.kiro/steering/test-patterns.md +62 -0
- package/templates/.kiro/steering/tool-integration.md +73 -0
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prompt-enhancer
|
|
3
|
+
description: "Prompt engineering and optimization for AI/LLMs. Capabilities: transform unclear prompts, reduce token usage, improve structure, add constraints, optimize for specific models, backward-compatible rewrites. Actions: improve, enhance, optimize, refactor, compress prompts. Keywords: prompt engineering, prompt optimization, token efficiency, LLM prompt, AI prompt, clarity, structure, system prompt, user prompt, few-shot, chain-of-thought, instruction tuning, prompt compression, token reduction, prompt rewrite, semantic preservation. Use when: improving unclear prompts, reducing token consumption, optimizing LLM outputs, restructuring verbose requests, creating system prompts, enhancing prompt clarity."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Prompt Enhancer Skill
|
|
7
|
+
|
|
8
|
+
## Purpose
|
|
9
|
+
|
|
10
|
+
Transform user prompts into enhanced, production-ready versions that are concise, clean, and optimally structured for AI agents and sub-agents. Includes optimization techniques for reducing LLM output token usage while maintaining semantic accuracy and backward compatibility.
|
|
11
|
+
|
|
12
|
+
## When to Use This Skill
|
|
13
|
+
|
|
14
|
+
Use this skill when:
|
|
15
|
+
- User explicitly asks to improve, enhance, or optimize a prompt
|
|
16
|
+
- User sends an unclear, verbose, or poorly structured prompt
|
|
17
|
+
- User mentions they want better results from AI interactions
|
|
18
|
+
- User asks for help writing prompts for agents or automation
|
|
19
|
+
- User's request lacks clarity or proper structure
|
|
20
|
+
- User wants to reduce LLM output tokens or API costs
|
|
21
|
+
- User needs to optimize JSON schema for token efficiency
|
|
22
|
+
- User requests compact output format while maintaining compatibility
|
|
23
|
+
|
|
24
|
+
## Core Principles
|
|
25
|
+
|
|
26
|
+
1. **Conciseness**: Remove unnecessary words while preserving intent
|
|
27
|
+
2. **Structure**: Use clear formatting with multiple lines and logical sections
|
|
28
|
+
3. **XML Integration**: Mix natural text with XML tags for clarity and parsing
|
|
29
|
+
4. **Direct Mission**: Main task/quest/mission should NOT be wrapped in XML elements
|
|
30
|
+
5. **Clean Output**: Return ONLY the enhanced prompt - no meta-commentary
|
|
31
|
+
|
|
32
|
+
## Enhancement Process
|
|
33
|
+
|
|
34
|
+
### Input Analysis
|
|
35
|
+
- Identify the core objective
|
|
36
|
+
- Extract key requirements and constraints
|
|
37
|
+
- Detect ambiguities or missing information
|
|
38
|
+
- Recognize the intended agent or use case
|
|
39
|
+
|
|
40
|
+
### Task-Based Technique Selection (Optional)
|
|
41
|
+
Evaluate if the task would benefit from specific prompting techniques:
|
|
42
|
+
|
|
43
|
+
**Chain-of-Thought (CoT)**
|
|
44
|
+
- Use for: Complex reasoning, math problems, logical deduction, step-by-step analysis
|
|
45
|
+
- Implementation: Add instruction to "think step by step" or "show your reasoning"
|
|
46
|
+
|
|
47
|
+
**Chain-of-Draft**
|
|
48
|
+
- Use for: Writing tasks, content creation, iterative refinement
|
|
49
|
+
- Implementation: Request initial draft, then progressive improvements
|
|
50
|
+
|
|
51
|
+
**Few-Shot Learning**
|
|
52
|
+
- Use for: Pattern-based tasks, specific formatting, consistent outputs
|
|
53
|
+
- Implementation: Include 2-3 examples showing input-output pairs
|
|
54
|
+
|
|
55
|
+
**ReAct (Reasoning + Acting)**
|
|
56
|
+
- Use for: Tool use, multi-step tasks, decision-making processes
|
|
57
|
+
- Implementation: Combine reasoning traces with action steps
|
|
58
|
+
|
|
59
|
+
**Self-Consistency**
|
|
60
|
+
- Use for: Tasks needing verification, multiple valid approaches
|
|
61
|
+
- Implementation: Request multiple solutions, then synthesis
|
|
62
|
+
|
|
63
|
+
**Tree-of-Thoughts**
|
|
64
|
+
- Use for: Complex problem-solving, exploring alternatives
|
|
65
|
+
- Implementation: Ask to explore multiple paths before selecting best
|
|
66
|
+
|
|
67
|
+
**Role-Based Prompting**
|
|
68
|
+
- Use for: Domain-specific expertise, perspective-taking
|
|
69
|
+
- Implementation: Assign expert role (e.g., "Act as a senior engineer...")
|
|
70
|
+
|
|
71
|
+
**Least-to-Most Prompting**
|
|
72
|
+
- Use for: Breaking down complex problems into subproblems
|
|
73
|
+
- Implementation: Start with simpler versions, build up complexity
|
|
74
|
+
|
|
75
|
+
**Apply technique only if it materially improves the task outcome.**
|
|
76
|
+
|
|
77
|
+
### LLM Output Token Optimization
|
|
78
|
+
|
|
79
|
+
When the goal is to reduce output tokens (API costs) while maintaining functionality:
|
|
80
|
+
|
|
81
|
+
**Core Strategy: Compact Output + Server-Side Remapping**
|
|
82
|
+
|
|
83
|
+
The LLM generates ultra-compact format, application remaps to original format for clients. This provides:
|
|
84
|
+
- Significant token savings (30-60%)
|
|
85
|
+
- 100% backward compatibility
|
|
86
|
+
- Negligible remapping overhead (<10 microseconds)
|
|
87
|
+
|
|
88
|
+
**Optimization Techniques:**
|
|
89
|
+
|
|
90
|
+
**1. Ultra-Compact JSON Keys**
|
|
91
|
+
- Replace long keys with 1-2 character abbreviations
|
|
92
|
+
- Examples: `queries` → `q`, `keyword` → `kw`, `filter` → `f`, `sort_by` → `s`
|
|
93
|
+
- Savings: 70-85% per key
|
|
94
|
+
|
|
95
|
+
**2. Short Codes for Repeated Values**
|
|
96
|
+
- Replace long IDs/enums with short codes (c1-c18, etc.)
|
|
97
|
+
- Example: `category=MjUzOTM=` → `c=c4`
|
|
98
|
+
- Provide reverse mapping table in application
|
|
99
|
+
- Savings: 75-90% on category/enum values
|
|
100
|
+
|
|
101
|
+
**3. String Compression for Structured Data**
|
|
102
|
+
- Use compact string format instead of nested objects when possible
|
|
103
|
+
- Example: `[{"filter_by":"category","operator":"=","value":"c4"}]` → `"c=c4"`
|
|
104
|
+
- Parse and expand server-side
|
|
105
|
+
- Savings: 60-80% on filter/query structures
|
|
106
|
+
|
|
107
|
+
**4. Omit Default Values**
|
|
108
|
+
- Instruct LLM to omit fields with default values
|
|
109
|
+
- Application fills in defaults during remapping
|
|
110
|
+
- Example: Omit `"sort_by":"relevant"` when it's the default
|
|
111
|
+
- Savings: Additional 10-30% when defaults are common
|
|
112
|
+
|
|
113
|
+
**5. Operator Abbreviation**
|
|
114
|
+
- Use shortest form: `p<50000` instead of `price<50000`
|
|
115
|
+
- Parse `p`/`c` prefixes during remapping
|
|
116
|
+
- Combine with semicolons: `c=c4;p<50000` for multiple filters
|
|
117
|
+
|
|
118
|
+
**Implementation Pattern:**
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
System Prompt Structure:
|
|
122
|
+
1. Define ultra-compact schema with examples
|
|
123
|
+
2. Specify key mappings (q=queries, kw=keyword, etc.)
|
|
124
|
+
3. Provide short codes table (c1=category1, c2=category2, etc.)
|
|
125
|
+
4. Show examples of compact output
|
|
126
|
+
5. Emphasize: omit defaults when possible
|
|
127
|
+
|
|
128
|
+
Application Layer:
|
|
129
|
+
1. Parse compact LLM output
|
|
130
|
+
2. Expand abbreviated keys
|
|
131
|
+
3. Map short codes to full values
|
|
132
|
+
4. Fill in default values
|
|
133
|
+
5. Return original format to client
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
**Example Transformation:**
|
|
137
|
+
|
|
138
|
+
**Before Optimization (Original Output):**
|
|
139
|
+
```json
|
|
140
|
+
{
|
|
141
|
+
"queries": [
|
|
142
|
+
{"keyword": "milk", "filter": "category=dairy", "sort_by": "relevant"},
|
|
143
|
+
{"keyword": "bread", "filter": "category=bakery", "sort_by": "relevant"}
|
|
144
|
+
]
|
|
145
|
+
}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
**After Optimization (LLM Output - 60% smaller):**
|
|
149
|
+
```json
|
|
150
|
+
{
|
|
151
|
+
"q": [
|
|
152
|
+
{"kw": "milk", "f": "c=c8"},
|
|
153
|
+
{"kw": "bread", "f": "c=c3"}
|
|
154
|
+
]
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
**Client Receives:** Original format (remapped automatically)
|
|
159
|
+
|
|
160
|
+
**Tradeoffs Analysis:**
|
|
161
|
+
|
|
162
|
+
✅ **Pros:**
|
|
163
|
+
- 30-60% token savings typical
|
|
164
|
+
- Lower API costs
|
|
165
|
+
- Faster LLM response (less to generate)
|
|
166
|
+
- 100% backward compatible
|
|
167
|
+
|
|
168
|
+
⚠️ **Cons:**
|
|
169
|
+
- Remapping overhead (<10μs, negligible)
|
|
170
|
+
- More complex implementation
|
|
171
|
+
- Requires application-side mapping logic
|
|
172
|
+
- Prompt becomes slightly less human-readable
|
|
173
|
+
|
|
174
|
+
**When to Apply:**
|
|
175
|
+
- High-volume API usage (>1000 requests/day)
|
|
176
|
+
- Cost-sensitive applications
|
|
177
|
+
- Output tokens are >50% of total costs
|
|
178
|
+
- Schema is stable and well-defined
|
|
179
|
+
- Application can handle remapping logic
|
|
180
|
+
|
|
181
|
+
**When NOT to Apply:**
|
|
182
|
+
- Low-volume usage (<100 requests/day)
|
|
183
|
+
- Schema frequently changes
|
|
184
|
+
- Human readability is critical
|
|
185
|
+
- No application layer (direct LLM → client)
|
|
186
|
+
|
|
187
|
+
### Structural Improvements
|
|
188
|
+
- Break complex requests into clear sections
|
|
189
|
+
- Use XML tags for: constraints, examples, context, format requirements
|
|
190
|
+
- Keep main mission/task as direct natural language
|
|
191
|
+
- Apply logical line breaks for readability
|
|
192
|
+
|
|
193
|
+
### Language Optimization
|
|
194
|
+
- Replace verbose phrases with concise alternatives
|
|
195
|
+
- Use active voice and direct instructions
|
|
196
|
+
- Eliminate redundancy and filler words
|
|
197
|
+
- Maintain specificity while reducing length
|
|
198
|
+
|
|
199
|
+
## XML Tag Usage Guidelines
|
|
200
|
+
|
|
201
|
+
**Use XML tags for:**
|
|
202
|
+
- `<constraints>` - Limitations and boundaries
|
|
203
|
+
- `<examples>` - Sample inputs/outputs
|
|
204
|
+
- `<context>` - Background information
|
|
205
|
+
- `<format>` - Output structure requirements
|
|
206
|
+
- `<requirements>` - Specific criteria to meet
|
|
207
|
+
- `<guidelines>` - Best practices to follow
|
|
208
|
+
|
|
209
|
+
**Do NOT use XML tags for:**
|
|
210
|
+
- The primary mission statement
|
|
211
|
+
- The main task description
|
|
212
|
+
- The core request or question
|
|
213
|
+
|
|
214
|
+
## Output Format
|
|
215
|
+
|
|
216
|
+
Return ONLY the enhanced prompt with:
|
|
217
|
+
- No conversational lead-in
|
|
218
|
+
- No explanations or commentary
|
|
219
|
+
- No placeholder text
|
|
220
|
+
- No quotation marks wrapping the prompt
|
|
221
|
+
- No meta-discussion about the enhancement
|
|
222
|
+
|
|
223
|
+
## Example Transformations
|
|
224
|
+
|
|
225
|
+
**Before:**
|
|
226
|
+
"I need you to help me write some code for a web app that will let users sign up and log in, and I want it to be secure and use modern best practices, and also it should have a nice UI, maybe you could suggest what framework to use?"
|
|
227
|
+
|
|
228
|
+
**After:**
|
|
229
|
+
Create a secure authentication system for a web application with user registration and login functionality.
|
|
230
|
+
|
|
231
|
+
<requirements>
|
|
232
|
+
- Implement modern security best practices
|
|
233
|
+
- Include password hashing and session management
|
|
234
|
+
- Design a clean, user-friendly interface
|
|
235
|
+
- Provide framework recommendation with rationale
|
|
236
|
+
</requirements>
|
|
237
|
+
|
|
238
|
+
<format>
|
|
239
|
+
- Code implementation
|
|
240
|
+
- Security considerations
|
|
241
|
+
- Framework justification
|
|
242
|
+
- UI/UX guidelines
|
|
243
|
+
</format>
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
**Before:**
|
|
248
|
+
"Can you analyze this data and tell me what's interesting about it and maybe make some charts or visualizations if that would help understand it better and also let me know if there are any trends or patterns?"
|
|
249
|
+
|
|
250
|
+
**After:**
|
|
251
|
+
Analyze the provided dataset and identify key insights, trends, and patterns.
|
|
252
|
+
|
|
253
|
+
<requirements>
|
|
254
|
+
- Highlight statistically significant findings
|
|
255
|
+
- Identify temporal trends and correlations
|
|
256
|
+
- Note any anomalies or outliers
|
|
257
|
+
</requirements>
|
|
258
|
+
|
|
259
|
+
<format>
|
|
260
|
+
- Executive summary of findings
|
|
261
|
+
- Data visualizations (charts/graphs as needed)
|
|
262
|
+
- Detailed pattern analysis
|
|
263
|
+
- Actionable recommendations
|
|
264
|
+
</format>
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
**Before:**
|
|
269
|
+
"I'm trying to figure out the best pricing strategy for my SaaS product and I'm not sure whether to go with monthly or annual billing or maybe tiered pricing?"
|
|
270
|
+
|
|
271
|
+
**After (with Chain-of-Thought technique applied):**
|
|
272
|
+
Determine the optimal pricing strategy for a SaaS product.
|
|
273
|
+
|
|
274
|
+
<context>
|
|
275
|
+
Consider: monthly vs. annual billing, tiered pricing models, market positioning
|
|
276
|
+
</context>
|
|
277
|
+
|
|
278
|
+
<approach>
|
|
279
|
+
Think step by step:
|
|
280
|
+
1. Analyze target customer segments and their payment preferences
|
|
281
|
+
2. Evaluate competitor pricing models in the space
|
|
282
|
+
3. Calculate unit economics for each pricing option
|
|
283
|
+
4. Assess cash flow implications
|
|
284
|
+
5. Consider customer lifetime value impact
|
|
285
|
+
</approach>
|
|
286
|
+
|
|
287
|
+
<requirements>
|
|
288
|
+
- Provide reasoning for each recommendation
|
|
289
|
+
- Include pros/cons analysis
|
|
290
|
+
- Suggest A/B testing approach if applicable
|
|
291
|
+
</requirements>
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
**Before:**
|
|
296
|
+
"Write a blog post about AI in healthcare that's engaging and informative"
|
|
297
|
+
|
|
298
|
+
**After (with Chain-of-Draft technique applied):**
|
|
299
|
+
Write an engaging and informative blog post about AI applications in healthcare.
|
|
300
|
+
|
|
301
|
+
<approach>
|
|
302
|
+
Use iterative drafting:
|
|
303
|
+
1. Create outline with key points and narrative arc
|
|
304
|
+
2. Draft introduction and conclusion
|
|
305
|
+
3. Develop body sections with examples
|
|
306
|
+
4. Refine for clarity, flow, and engagement
|
|
307
|
+
</approach>
|
|
308
|
+
|
|
309
|
+
<requirements>
|
|
310
|
+
- Target audience: healthcare professionals and tech enthusiasts
|
|
311
|
+
- Length: 1200-1500 words
|
|
312
|
+
- Include real-world examples and case studies
|
|
313
|
+
- Balance technical accuracy with accessibility
|
|
314
|
+
</requirements>
|
|
315
|
+
|
|
316
|
+
<format>
|
|
317
|
+
- Compelling headline
|
|
318
|
+
- Hook in first paragraph
|
|
319
|
+
- Clear section headers
|
|
320
|
+
- Actionable takeaways
|
|
321
|
+
</format>
|
|
322
|
+
|
|
323
|
+
## Real-World Token Optimization Example
|
|
324
|
+
|
|
325
|
+
**Before (Original Prompt):**
|
|
326
|
+
```
|
|
327
|
+
Create JSON queries to search for products. Each query should have a keyword, filter with category, and sort_by field. Return in this format: {"queries":[{"keyword":"milk","filter":"category=dairy","sort_by":"relevance"}]}
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
**After (Token-Optimized Prompt):**
|
|
331
|
+
```
|
|
332
|
+
Generate product search JSON queries. Reject dangerous content.
|
|
333
|
+
|
|
334
|
+
<rules>
|
|
335
|
+
- Each query: ≥1 category filter
|
|
336
|
+
- Total: ≥3 keywords (no duplicates)
|
|
337
|
+
- Use 'ex' for exact brands/attributes
|
|
338
|
+
- Default sort: relevant (omit if default)
|
|
339
|
+
- Filter: string format "c=c4" or "c=c4;p<50000"
|
|
340
|
+
</rules>
|
|
341
|
+
|
|
342
|
+
<categories>
|
|
343
|
+
c1=household, c2=personal care, c3=bakery, c4=fresh food, c5=oils, c6=dry goods, c7=cleaning, c8=dairy
|
|
344
|
+
</categories>
|
|
345
|
+
|
|
346
|
+
<examples>
|
|
347
|
+
"milk vinamilk"→{"q":[{"kw":"milk vinamilk","ex":"vinamilk","f":"c=c8","s":"popular"}]}
|
|
348
|
+
"rice noodles meat"→{"q":[{"kw":"rice","f":"c=c6"},{"kw":"noodles","f":"c=c6"},{"kw":"meat","f":"c=c4"}]}
|
|
349
|
+
"oranges under 50k"→{"q":[{"kw":"oranges","f":"c=c4;p<50000"}]}
|
|
350
|
+
</examples>
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
**Result:**
|
|
354
|
+
- LLM generates: `{"q":[{"kw":"milk","f":"c=c8"}]}` (60% smaller)
|
|
355
|
+
- Application remaps to: `{"queries":[{"keyword":"milk","filter":"category=dairy","sort_by":"relevance"}]}`
|
|
356
|
+
- Client receives original format unchanged
|
|
357
|
+
- Token savings: 60.5% on typical 3-query response
|
|
358
|
+
|
|
359
|
+
## Quality Checklist
|
|
360
|
+
|
|
361
|
+
Before returning the enhanced prompt, verify:
|
|
362
|
+
- ✓ Main objective is clear and unambiguous
|
|
363
|
+
- ✓ XML tags are used appropriately (not for main mission)
|
|
364
|
+
- ✓ Structure uses multiple lines for readability
|
|
365
|
+
- ✓ Language is concise and direct
|
|
366
|
+
- ✓ No extraneous commentary included
|
|
367
|
+
- ✓ All key requirements preserved
|
|
368
|
+
- ✓ Actionable and complete
|
|
369
|
+
- ✓ If optimizing tokens: compact schema defined, mapping clear, examples provided
|
|
370
|
+
|
|
371
|
+
## Implementation Notes
|
|
372
|
+
|
|
373
|
+
When applying this skill:
|
|
374
|
+
1. Read the user's prompt completely
|
|
375
|
+
2. Identify enhancement opportunities
|
|
376
|
+
3. Apply structural and linguistic improvements
|
|
377
|
+
4. Output ONLY the enhanced version
|
|
378
|
+
5. Do not ask for clarification unless absolutely critical information is missing
|
|
379
|
+
|
|
380
|
+
The enhanced prompt should be immediately usable by the user without any modifications.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: python-pro
|
|
3
|
+
description: Write idiomatic Python code with advanced features like decorators, generators, and async/await. Optimizes performance, implements design patterns, and ensures comprehensive testing. Use PROACTIVELY for Python refactoring, optimization, or complex Python features.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Python Pro
|
|
7
|
+
|
|
8
|
+
Advanced Python development skill for writing idiomatic, performant, and type-safe Python code.
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
|
|
12
|
+
- Writing/refactoring Python code with modern patterns (3.10+)
|
|
13
|
+
- Implementing async/await and structured concurrency
|
|
14
|
+
- Adding type hints and runtime validation
|
|
15
|
+
- Performance optimization and profiling
|
|
16
|
+
- Testing with pytest and Hypothesis
|
|
17
|
+
- Building CLI tools, APIs, or data pipelines
|
|
18
|
+
|
|
19
|
+
## Core Principles
|
|
20
|
+
|
|
21
|
+
1. **Type Safety**: Use modern type hints (`list[str]`, `X | Y`, not `typing` imports)
|
|
22
|
+
2. **Async First**: Use `TaskGroup` for structured concurrency (Python 3.11+)
|
|
23
|
+
3. **Validation**: Pydantic for APIs, dataclasses for simple data containers
|
|
24
|
+
4. **Testing**: pytest with parametrization and property-based testing
|
|
25
|
+
|
|
26
|
+
## Quick Reference
|
|
27
|
+
|
|
28
|
+
### Modern Type Hints (Python 3.10+)
|
|
29
|
+
|
|
30
|
+
```python
|
|
31
|
+
def process(items: list[str], count: int | None = None) -> dict[str, int]:
|
|
32
|
+
return {item: len(item) for item in items[:count]}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Structured Concurrency (Python 3.11+)
|
|
36
|
+
|
|
37
|
+
```python
|
|
38
|
+
async with asyncio.TaskGroup() as tg:
|
|
39
|
+
task1 = tg.create_task(fetch("url1"))
|
|
40
|
+
task2 = tg.create_task(fetch("url2"))
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Pydantic Validation
|
|
44
|
+
|
|
45
|
+
```python
|
|
46
|
+
from pydantic import BaseModel, Field
|
|
47
|
+
class User(BaseModel):
|
|
48
|
+
name: str = Field(..., min_length=1)
|
|
49
|
+
age: int = Field(..., ge=0)
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Detailed References
|
|
53
|
+
|
|
54
|
+
- [Type System](references/type-system.md) - Generics, Protocols, TypedDict, runtime checking
|
|
55
|
+
- [Async Patterns](references/async-patterns.md) - TaskGroup, timeouts, generators
|
|
56
|
+
- [Testing](references/testing.md) - pytest fixtures, parametrization, Hypothesis
|
|
57
|
+
- [Performance](references/performance.md) - Profiling, memory optimization, Cython
|
|
58
|
+
- [Error Handling](references/error-handling.md) - Exception design, logging, security
|
|
59
|
+
- [Project Setup](references/project-setup.md) - pyproject.toml, UV, Ruff configuration
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Async Patterns
|
|
2
|
+
|
|
3
|
+
Modern async/await patterns for Python 3.11+.
|
|
4
|
+
|
|
5
|
+
## TaskGroup (Structured Concurrency)
|
|
6
|
+
|
|
7
|
+
```python
|
|
8
|
+
import asyncio
|
|
9
|
+
from asyncio import TaskGroup
|
|
10
|
+
|
|
11
|
+
async def fetch_all(urls: list[str]) -> list[str]:
|
|
12
|
+
results: list[str] = []
|
|
13
|
+
async with TaskGroup() as tg:
|
|
14
|
+
tasks = [tg.create_task(fetch(url)) for url in urls]
|
|
15
|
+
return [t.result() for t in tasks]
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**Benefits:**
|
|
19
|
+
- Automatic cleanup on exit
|
|
20
|
+
- If one task fails, others are cancelled
|
|
21
|
+
- No orphaned tasks
|
|
22
|
+
|
|
23
|
+
## Timeouts (Python 3.11+)
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
async def fetch_with_timeout(url: str) -> str:
|
|
27
|
+
try:
|
|
28
|
+
async with asyncio.timeout(5.0):
|
|
29
|
+
return await fetch(url)
|
|
30
|
+
except TimeoutError:
|
|
31
|
+
return f"Timeout: {url}"
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Async Context Managers
|
|
35
|
+
|
|
36
|
+
```python
|
|
37
|
+
class AsyncDB:
|
|
38
|
+
async def __aenter__(self):
|
|
39
|
+
await self.connect()
|
|
40
|
+
return self
|
|
41
|
+
|
|
42
|
+
async def __aexit__(self, exc_type, exc_val, exc_tb):
|
|
43
|
+
await self.disconnect()
|
|
44
|
+
|
|
45
|
+
async def main():
|
|
46
|
+
async with AsyncDB() as db:
|
|
47
|
+
await db.query("SELECT 1")
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Async Generators
|
|
51
|
+
|
|
52
|
+
```python
|
|
53
|
+
from typing import AsyncIterator
|
|
54
|
+
|
|
55
|
+
async def stream_data(n: int) -> AsyncIterator[int]:
|
|
56
|
+
for i in range(n):
|
|
57
|
+
await asyncio.sleep(0.1)
|
|
58
|
+
yield i
|
|
59
|
+
|
|
60
|
+
async def consume():
|
|
61
|
+
async for item in stream_data(10):
|
|
62
|
+
print(item)
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Exception Groups (Python 3.11+)
|
|
66
|
+
|
|
67
|
+
```python
|
|
68
|
+
try:
|
|
69
|
+
async with TaskGroup() as tg:
|
|
70
|
+
tg.create_task(task1())
|
|
71
|
+
tg.create_task(task2())
|
|
72
|
+
except* ValueError as eg:
|
|
73
|
+
for exc in eg.exceptions:
|
|
74
|
+
print(f"Validation: {exc}")
|
|
75
|
+
except* ConnectionError as eg:
|
|
76
|
+
for exc in eg.exceptions:
|
|
77
|
+
print(f"Connection: {exc}")
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Performance: uvloop
|
|
81
|
+
|
|
82
|
+
```python
|
|
83
|
+
import asyncio
|
|
84
|
+
import uvloop
|
|
85
|
+
|
|
86
|
+
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
|
87
|
+
asyncio.run(main()) # Much faster event loop
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Anti-Patterns
|
|
91
|
+
|
|
92
|
+
**Avoid**: `asyncio.gather()` with `return_exceptions=True` (hides errors)
|
|
93
|
+
**Prefer**: `TaskGroup` for proper error handling
|
|
94
|
+
|
|
95
|
+
**Avoid**: Blocking calls in async code
|
|
96
|
+
**Prefer**: `asyncio.to_thread()` for blocking I/O
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Error Handling
|
|
2
|
+
|
|
3
|
+
Exception design, logging, and context managers.
|
|
4
|
+
|
|
5
|
+
## Custom Exception Hierarchy
|
|
6
|
+
|
|
7
|
+
```python
|
|
8
|
+
class ApplicationError(Exception):
|
|
9
|
+
"""Base exception for application."""
|
|
10
|
+
|
|
11
|
+
class ValidationError(ApplicationError):
|
|
12
|
+
"""Data validation failed."""
|
|
13
|
+
|
|
14
|
+
class DatabaseError(ApplicationError):
|
|
15
|
+
"""Database operation failed."""
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Best Practices
|
|
19
|
+
|
|
20
|
+
```python
|
|
21
|
+
# Bad: too broad
|
|
22
|
+
try:
|
|
23
|
+
risky_operation()
|
|
24
|
+
except Exception:
|
|
25
|
+
pass
|
|
26
|
+
|
|
27
|
+
# Good: specific exceptions
|
|
28
|
+
try:
|
|
29
|
+
result = divide(a, b)
|
|
30
|
+
except ZeroDivisionError:
|
|
31
|
+
print("Cannot divide by zero")
|
|
32
|
+
except TypeError as e:
|
|
33
|
+
print(f"Invalid type: {e}")
|
|
34
|
+
|
|
35
|
+
# Good: focused try blocks
|
|
36
|
+
try:
|
|
37
|
+
validated = validate(data)
|
|
38
|
+
except ValidationError as e:
|
|
39
|
+
return handle_validation_error(e)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Context Managers
|
|
43
|
+
|
|
44
|
+
```python
|
|
45
|
+
from contextlib import contextmanager
|
|
46
|
+
|
|
47
|
+
@contextmanager
|
|
48
|
+
def managed_resource():
|
|
49
|
+
resource = acquire()
|
|
50
|
+
try:
|
|
51
|
+
yield resource
|
|
52
|
+
finally:
|
|
53
|
+
release(resource)
|
|
54
|
+
|
|
55
|
+
with managed_resource() as r:
|
|
56
|
+
use(r) # Cleanup guaranteed
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Logging
|
|
60
|
+
|
|
61
|
+
```python
|
|
62
|
+
import logging
|
|
63
|
+
|
|
64
|
+
logging.basicConfig(
|
|
65
|
+
level=logging.INFO,
|
|
66
|
+
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
|
67
|
+
)
|
|
68
|
+
logger = logging.getLogger(__name__)
|
|
69
|
+
|
|
70
|
+
# In exception handlers - includes stack trace
|
|
71
|
+
try:
|
|
72
|
+
risky()
|
|
73
|
+
except Exception:
|
|
74
|
+
logger.exception("Error occurred")
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Structured logging** (structlog):
|
|
78
|
+
```python
|
|
79
|
+
import structlog
|
|
80
|
+
logger = structlog.get_logger()
|
|
81
|
+
logger.info("user_login", user_id=123, ip="192.168.1.1")
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
See also: [Security](security.md) - input validation, secrets, secure random
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Performance
|
|
2
|
+
|
|
3
|
+
Profiling, optimization, and memory management.
|
|
4
|
+
|
|
5
|
+
## Profiling
|
|
6
|
+
|
|
7
|
+
```python
|
|
8
|
+
# cProfile - function-level
|
|
9
|
+
import cProfile, pstats
|
|
10
|
+
profiler = cProfile.Profile()
|
|
11
|
+
profiler.enable()
|
|
12
|
+
expensive_function()
|
|
13
|
+
profiler.disable()
|
|
14
|
+
pstats.Stats(profiler).sort_stats('cumulative').print_stats(10)
|
|
15
|
+
|
|
16
|
+
# line_profiler - line-by-line
|
|
17
|
+
# uv add --dev line-profiler
|
|
18
|
+
@profile
|
|
19
|
+
def slow_function():
|
|
20
|
+
return [i ** 2 for i in range(10000)]
|
|
21
|
+
# Run: kernprof -l -v script.py
|
|
22
|
+
|
|
23
|
+
# memory_profiler
|
|
24
|
+
from memory_profiler import profile
|
|
25
|
+
@profile
|
|
26
|
+
def memory_intensive():
|
|
27
|
+
return [i for i in range(1000000)]
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Memory Optimization
|
|
31
|
+
|
|
32
|
+
```python
|
|
33
|
+
# __slots__ - reduce memory per instance
|
|
34
|
+
class Optimized:
|
|
35
|
+
__slots__ = ['x', 'y']
|
|
36
|
+
def __init__(self, x, y):
|
|
37
|
+
self.x, self.y = x, y
|
|
38
|
+
|
|
39
|
+
# Generators vs lists - process one at a time
|
|
40
|
+
sum(i ** 2 for i in range(1000000)) # Memory efficient
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Concurrent vs Parallel
|
|
44
|
+
|
|
45
|
+
```python
|
|
46
|
+
import concurrent.futures
|
|
47
|
+
|
|
48
|
+
# CPU-bound: ProcessPoolExecutor
|
|
49
|
+
with concurrent.futures.ProcessPoolExecutor() as ex:
|
|
50
|
+
results = ex.map(cpu_work, data)
|
|
51
|
+
|
|
52
|
+
# I/O-bound: ThreadPoolExecutor or asyncio
|
|
53
|
+
with concurrent.futures.ThreadPoolExecutor() as ex:
|
|
54
|
+
results = ex.map(blocking_io, urls)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Quick Wins
|
|
58
|
+
|
|
59
|
+
1. `dict`/`set` for O(1) lookups
|
|
60
|
+
2. `collections.deque` for queue operations
|
|
61
|
+
3. `str.join()` over `+=` for string concatenation
|
|
62
|
+
4. `functools.lru_cache` for memoization
|
|
63
|
+
5. `itertools` for efficient iteration
|
|
64
|
+
|
|
65
|
+
```python
|
|
66
|
+
from functools import lru_cache
|
|
67
|
+
|
|
68
|
+
@lru_cache(maxsize=128)
|
|
69
|
+
def expensive(n: int) -> int:
|
|
70
|
+
return sum(i ** 2 for i in range(n))
|
|
71
|
+
```
|