thanh-kit 2.5.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/LICENSE +21 -0
- package/README.md +252 -0
- package/bin/ak.js +2 -0
- package/dist/index.js +3829 -0
- package/dist/index.js.map +1 -0
- package/package.json +75 -0
- package/templates/AGENTS.md +104 -0
- package/templates/README.md +241 -0
- package/templates/agents/README.md +172 -0
- package/templates/agents/brainstormer.md +108 -0
- package/templates/agents/code-reviewer.md +172 -0
- package/templates/agents/code-simplifier.md +104 -0
- package/templates/agents/copywriter.md +113 -0
- package/templates/agents/database-admin.md +97 -0
- package/templates/agents/debugger.md +142 -0
- package/templates/agents/docs-manager.md +158 -0
- package/templates/agents/fullstack-developer.md +95 -0
- package/templates/agents/git-manager.md +394 -0
- package/templates/agents/journal-writer.md +119 -0
- package/templates/agents/mcp-manager.md +93 -0
- package/templates/agents/planner.md +113 -0
- package/templates/agents/project-manager.md +129 -0
- package/templates/agents/researcher.md +43 -0
- package/templates/agents/scout-external.md +146 -0
- package/templates/agents/scout.md +260 -0
- package/templates/agents/tester.md +110 -0
- package/templates/agents/ui-ux-designer.md +238 -0
- package/templates/commands/README.md +251 -0
- package/templates/commands/ask.md +56 -0
- package/templates/commands/bootstrap/auto/fast.md +111 -0
- package/templates/commands/bootstrap/auto/parallel.md +66 -0
- package/templates/commands/bootstrap/auto.md +115 -0
- package/templates/commands/bootstrap.md +137 -0
- package/templates/commands/brainstorm.md +74 -0
- package/templates/commands/build.md +39 -0
- package/templates/commands/checkpoint.md +156 -0
- package/templates/commands/ck-help.md +113 -0
- package/templates/commands/code/auto.md +170 -0
- package/templates/commands/code/no-test.md +158 -0
- package/templates/commands/code/parallel.md +55 -0
- package/templates/commands/code-simplifier.md +71 -0
- package/templates/commands/code.md +176 -0
- package/templates/commands/coding-level.md +48 -0
- package/templates/commands/compact.md +57 -0
- package/templates/commands/content/cro.md +43 -0
- package/templates/commands/content/enhance.md +14 -0
- package/templates/commands/content/fast.md +13 -0
- package/templates/commands/content/good.md +16 -0
- package/templates/commands/context.md +48 -0
- package/templates/commands/cook/auto/fast.md +26 -0
- package/templates/commands/cook/auto/parallel.md +49 -0
- package/templates/commands/cook/auto.md +15 -0
- package/templates/commands/cook/fast.md +47 -0
- package/templates/commands/cook/hard.md +80 -0
- package/templates/commands/cook/parallel.md +90 -0
- package/templates/commands/cook.md +105 -0
- package/templates/commands/create-feature.md +48 -0
- package/templates/commands/db-migrate.md +52 -0
- package/templates/commands/debug.md +13 -0
- package/templates/commands/design/3d.md +83 -0
- package/templates/commands/design/describe.md +23 -0
- package/templates/commands/design/fast.md +31 -0
- package/templates/commands/design/good.md +35 -0
- package/templates/commands/design/screenshot.md +34 -0
- package/templates/commands/design/video.md +34 -0
- package/templates/commands/docs/init.md +39 -0
- package/templates/commands/docs/summarize.md +31 -0
- package/templates/commands/docs/update.md +57 -0
- package/templates/commands/feature.md +62 -0
- package/templates/commands/fix/ci.md +17 -0
- package/templates/commands/fix/fast.md +19 -0
- package/templates/commands/fix/hard.md +39 -0
- package/templates/commands/fix/logs.md +26 -0
- package/templates/commands/fix/parallel.md +54 -0
- package/templates/commands/fix/test.md +20 -0
- package/templates/commands/fix/types.md +9 -0
- package/templates/commands/fix/ui.md +48 -0
- package/templates/commands/fix-issue.md +177 -0
- package/templates/commands/fix.md +43 -0
- package/templates/commands/generate-dto.md +67 -0
- package/templates/commands/git/cm.md +5 -0
- package/templates/commands/git/cp.md +4 -0
- package/templates/commands/git/merge.md +40 -0
- package/templates/commands/git/pr.md +48 -0
- package/templates/commands/integrate/polar.md +28 -0
- package/templates/commands/integrate/sepay.md +28 -0
- package/templates/commands/investigate.md +324 -0
- package/templates/commands/journal.md +7 -0
- package/templates/commands/kanban.md +101 -0
- package/templates/commands/lint.md +47 -0
- package/templates/commands/migration.md +111 -0
- package/templates/commands/performance.md +110 -0
- package/templates/commands/plan/archive.md +57 -0
- package/templates/commands/plan/ci.md +33 -0
- package/templates/commands/plan/cro.md +69 -0
- package/templates/commands/plan/fast.md +86 -0
- package/templates/commands/plan/hard.md +103 -0
- package/templates/commands/plan/parallel.md +152 -0
- package/templates/commands/plan/preview.md +40 -0
- package/templates/commands/plan/two.md +52 -0
- package/templates/commands/plan/validate.md +132 -0
- package/templates/commands/plan.md +36 -0
- package/templates/commands/pr.md +49 -0
- package/templates/commands/preview.md +87 -0
- package/templates/commands/release-notes.md +144 -0
- package/templates/commands/review/codebase.md +49 -0
- package/templates/commands/review/post-task.md +157 -0
- package/templates/commands/review-changes.md +46 -0
- package/templates/commands/review.md +56 -0
- package/templates/commands/scout/ext.md +35 -0
- package/templates/commands/scout.md +283 -0
- package/templates/commands/security.md +119 -0
- package/templates/commands/skill/add.md +36 -0
- package/templates/commands/skill/create.md +29 -0
- package/templates/commands/skill/fix-logs.md +22 -0
- package/templates/commands/skill/optimize/auto.md +25 -0
- package/templates/commands/skill/optimize.md +34 -0
- package/templates/commands/skill/plan.md +45 -0
- package/templates/commands/test/ui.md +92 -0
- package/templates/commands/test.md +8 -0
- package/templates/commands/use-mcp.md +34 -0
- package/templates/commands/watzup.md +8 -0
- package/templates/commands/worktree.md +126 -0
- package/templates/discord/README.md +274 -0
- package/templates/discord/config.json5 +87 -0
- package/templates/discord/skills/auto-intent-router/SKILL.md +195 -0
- package/templates/discord/skills/train-prompt/SKILL.md +306 -0
- package/templates/discord/start-bot.sh +47 -0
- package/templates/gemini/settings.json +12 -0
- package/templates/hooks/.python-cache.json +1 -0
- package/templates/hooks/README.md +246 -0
- package/templates/hooks/backend-csharp-context.cjs +223 -0
- package/templates/hooks/design-system-context.cjs +185 -0
- package/templates/hooks/dev-rules-reminder.cjs +249 -0
- package/templates/hooks/docs/README.md +179 -0
- package/templates/hooks/frontend-typescript-context.cjs +233 -0
- package/templates/hooks/lib/__tests__/ck-config-utils.test.cjs +169 -0
- package/templates/hooks/lib/ck-config-utils.cjs +706 -0
- package/templates/hooks/lib/ck-paths.cjs +110 -0
- package/templates/hooks/lib/context-tracker.cjs +335 -0
- package/templates/hooks/notifications/.env.example +21 -0
- package/templates/hooks/notifications/discord_notify.sh +221 -0
- package/templates/hooks/notifications/docs/discord-hook-setup.md +445 -0
- package/templates/hooks/notifications/docs/slack-hook-setup.md +118 -0
- package/templates/hooks/notifications/docs/telegram-hook-setup.md +795 -0
- package/templates/hooks/notifications/lib/env-loader.cjs +105 -0
- package/templates/hooks/notifications/lib/sender.cjs +128 -0
- package/templates/hooks/notifications/notify.cjs +156 -0
- package/templates/hooks/notifications/providers/discord.cjs +197 -0
- package/templates/hooks/notifications/providers/slack.cjs +111 -0
- package/templates/hooks/notifications/providers/telegram.cjs +109 -0
- package/templates/hooks/notifications/send-discord.sh +75 -0
- package/templates/hooks/notifications/telegram_notify.sh +124 -0
- package/templates/hooks/notify-waiting.js +117 -0
- package/templates/hooks/post-edit-prettier.cjs +189 -0
- package/templates/hooks/post-task-review.cjs +142 -0
- package/templates/hooks/privacy-block.cjs +257 -0
- package/templates/hooks/scout-block/broad-pattern-detector.cjs +266 -0
- package/templates/hooks/scout-block/error-formatter.cjs +156 -0
- package/templates/hooks/scout-block/path-extractor.cjs +238 -0
- package/templates/hooks/scout-block/pattern-matcher.cjs +184 -0
- package/templates/hooks/scout-block/tests/test-broad-pattern-detector.js +225 -0
- package/templates/hooks/scout-block/tests/test-build-command-allowlist.js +137 -0
- package/templates/hooks/scout-block/tests/test-error-formatter.js +109 -0
- package/templates/hooks/scout-block/tests/test-full-flow-edge-cases.js +75 -0
- package/templates/hooks/scout-block/tests/test-monorepo-scenarios.js +225 -0
- package/templates/hooks/scout-block/tests/test-path-extractor.js +138 -0
- package/templates/hooks/scout-block/tests/test-pattern-matcher.js +64 -0
- package/templates/hooks/scout-block/vendor/ignore.js +627 -0
- package/templates/hooks/scout-block.cjs +134 -0
- package/templates/hooks/scss-styling-context.cjs +213 -0
- package/templates/hooks/session-end.cjs +35 -0
- package/templates/hooks/session-init.cjs +493 -0
- package/templates/hooks/subagent-init.cjs +150 -0
- package/templates/hooks/tests/test-ckignore.js +194 -0
- package/templates/hooks/tests/test-context-tracker.cjs +454 -0
- package/templates/hooks/tests/test-modularization-hook.js +126 -0
- package/templates/hooks/tests/test-privacy-block.js +298 -0
- package/templates/hooks/tests/test-scout-block.js +163 -0
- package/templates/hooks/workflow-router.cjs +326 -0
- package/templates/hooks/write-compact-marker.cjs +159 -0
- package/templates/memory/session-log.md +186 -0
- package/templates/output-styles/coding-level-0-eli5.md +103 -0
- package/templates/output-styles/coding-level-1-junior.md +124 -0
- package/templates/output-styles/coding-level-2-mid.md +146 -0
- package/templates/output-styles/coding-level-3-senior.md +148 -0
- package/templates/output-styles/coding-level-4-lead.md +159 -0
- package/templates/output-styles/coding-level-5-god.md +91 -0
- package/templates/router/README.md +294 -0
- package/templates/router/agents-guide.md +38 -0
- package/templates/router/commands-guide.md +122 -0
- package/templates/router/decision-flow.md +92 -0
- package/templates/router/skills-guide.md +127 -0
- package/templates/router/workflows-guide.md +68 -0
- package/templates/scripts/README.md +254 -0
- package/templates/scripts/__pycache__/win_compat.cpython-312.pyc +0 -0
- package/templates/scripts/ck-help.py +869 -0
- package/templates/scripts/commands_data.yaml +621 -0
- package/templates/scripts/generate_catalogs.py +168 -0
- package/templates/scripts/plan-preview.cjs +921 -0
- package/templates/scripts/requirements.txt +1 -0
- package/templates/scripts/resolve_env.py +329 -0
- package/templates/scripts/scan_commands.py +107 -0
- package/templates/scripts/scan_skills.py +197 -0
- package/templates/scripts/set-active-plan.cjs +45 -0
- package/templates/scripts/skills_data.yaml +596 -0
- package/templates/scripts/win_compat.py +57 -0
- package/templates/scripts/worktree.cjs +657 -0
- package/templates/scripts/worktree.test.cjs +334 -0
- package/templates/settings.json +242 -0
- package/templates/skills/.env.example +100 -0
- package/templates/skills/INSTALLATION.md +360 -0
- package/templates/skills/README.md +309 -0
- package/templates/skills/agent_skills_spec.md +55 -0
- package/templates/skills/ai-artist/SKILL.md +75 -0
- package/templates/skills/ai-artist/references/advanced-techniques.md +184 -0
- package/templates/skills/ai-artist/references/domain-code.md +66 -0
- package/templates/skills/ai-artist/references/domain-data.md +72 -0
- package/templates/skills/ai-artist/references/domain-marketing.md +66 -0
- package/templates/skills/ai-artist/references/domain-patterns.md +33 -0
- package/templates/skills/ai-artist/references/domain-writing.md +68 -0
- package/templates/skills/ai-artist/references/image-prompting.md +141 -0
- package/templates/skills/ai-artist/references/llm-prompting.md +165 -0
- package/templates/skills/ai-artist/references/nano-banana.md +59 -0
- package/templates/skills/ai-artist/references/reasoning-techniques.md +201 -0
- package/templates/skills/ai-multimodal/.env.example +204 -0
- package/templates/skills/ai-multimodal/SKILL.md +109 -0
- package/templates/skills/ai-multimodal/references/audio-processing.md +387 -0
- package/templates/skills/ai-multimodal/references/image-generation.md +939 -0
- package/templates/skills/ai-multimodal/references/music-generation.md +311 -0
- package/templates/skills/ai-multimodal/references/video-analysis.md +515 -0
- package/templates/skills/ai-multimodal/references/video-generation.md +457 -0
- package/templates/skills/ai-multimodal/references/vision-understanding.md +492 -0
- package/templates/skills/ai-multimodal/scripts/.coverage +0 -0
- package/templates/skills/ai-multimodal/scripts/check_setup.py +305 -0
- package/templates/skills/ai-multimodal/scripts/document_converter.py +395 -0
- package/templates/skills/ai-multimodal/scripts/gemini_batch_process.py +1184 -0
- package/templates/skills/ai-multimodal/scripts/media_optimizer.py +506 -0
- package/templates/skills/ai-multimodal/scripts/requirements.txt +26 -0
- package/templates/skills/ai-multimodal/scripts/tests/.coverage +0 -0
- package/templates/skills/ai-multimodal/scripts/tests/requirements.txt +20 -0
- package/templates/skills/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
- package/templates/skills/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
- package/templates/skills/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
- package/templates/skills/arch-cross-service-integration/SKILL.md +48 -0
- package/templates/skills/arch-performance-optimization/SKILL.md +306 -0
- package/templates/skills/arch-security-review/SKILL.md +344 -0
- package/templates/skills/backend-development/SKILL.md +95 -0
- package/templates/skills/backend-development/references/backend-api-design.md +495 -0
- package/templates/skills/backend-development/references/backend-architecture.md +454 -0
- package/templates/skills/backend-development/references/backend-authentication.md +338 -0
- package/templates/skills/backend-development/references/backend-code-quality.md +659 -0
- package/templates/skills/backend-development/references/backend-debugging.md +904 -0
- package/templates/skills/backend-development/references/backend-devops.md +494 -0
- package/templates/skills/backend-development/references/backend-mindset.md +387 -0
- package/templates/skills/backend-development/references/backend-performance.md +397 -0
- package/templates/skills/backend-development/references/backend-security.md +290 -0
- package/templates/skills/backend-development/references/backend-technologies.md +256 -0
- package/templates/skills/backend-development/references/backend-testing.md +429 -0
- package/templates/skills/better-auth/SKILL.md +204 -0
- package/templates/skills/better-auth/references/advanced-features.md +553 -0
- package/templates/skills/better-auth/references/database-integration.md +577 -0
- package/templates/skills/better-auth/references/email-password-auth.md +416 -0
- package/templates/skills/better-auth/references/oauth-providers.md +430 -0
- package/templates/skills/better-auth/scripts/.coverage +0 -0
- package/templates/skills/better-auth/scripts/better_auth_init.py +521 -0
- package/templates/skills/better-auth/scripts/requirements.txt +15 -0
- package/templates/skills/better-auth/scripts/tests/.coverage +0 -0
- package/templates/skills/better-auth/scripts/tests/test_better_auth_init.py +421 -0
- package/templates/skills/branch-comparison/SKILL.md +150 -0
- package/templates/skills/bug-diagnosis/SKILL.md +309 -0
- package/templates/skills/chrome-devtools/SKILL.md +472 -0
- package/templates/skills/chrome-devtools/references/cdp-domains.md +694 -0
- package/templates/skills/chrome-devtools/references/performance-guide.md +940 -0
- package/templates/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
- package/templates/skills/chrome-devtools/scripts/README.md +272 -0
- package/templates/skills/chrome-devtools/scripts/__tests__/selector.test.js +210 -0
- package/templates/skills/chrome-devtools/scripts/aria-snapshot.js +362 -0
- package/templates/skills/chrome-devtools/scripts/click.js +83 -0
- package/templates/skills/chrome-devtools/scripts/console.js +79 -0
- package/templates/skills/chrome-devtools/scripts/evaluate.js +53 -0
- package/templates/skills/chrome-devtools/scripts/fill.js +76 -0
- package/templates/skills/chrome-devtools/scripts/inject-auth.js +229 -0
- package/templates/skills/chrome-devtools/scripts/install-deps.sh +181 -0
- package/templates/skills/chrome-devtools/scripts/install.sh +83 -0
- package/templates/skills/chrome-devtools/scripts/lib/browser.js +318 -0
- package/templates/skills/chrome-devtools/scripts/lib/selector.js +178 -0
- package/templates/skills/chrome-devtools/scripts/navigate.js +54 -0
- package/templates/skills/chrome-devtools/scripts/network.js +106 -0
- package/templates/skills/chrome-devtools/scripts/package.json +16 -0
- package/templates/skills/chrome-devtools/scripts/performance.js +149 -0
- package/templates/skills/chrome-devtools/scripts/screenshot.js +198 -0
- package/templates/skills/chrome-devtools/scripts/select-ref.js +131 -0
- package/templates/skills/chrome-devtools/scripts/snapshot.js +135 -0
- package/templates/skills/claude-code/references/advanced-features.md +399 -0
- package/templates/skills/claude-code/references/agent-skills.md +399 -0
- package/templates/skills/claude-code/references/api-reference.md +498 -0
- package/templates/skills/claude-code/references/best-practices.md +447 -0
- package/templates/skills/claude-code/references/cicd-integration.md +428 -0
- package/templates/skills/claude-code/references/common-workflows.md +119 -0
- package/templates/skills/claude-code/references/configuration.md +480 -0
- package/templates/skills/claude-code/references/enterprise-features.md +472 -0
- package/templates/skills/claude-code/references/getting-started.md +252 -0
- package/templates/skills/claude-code/references/hooks-and-plugins.md +444 -0
- package/templates/skills/claude-code/references/hooks-comprehensive.md +622 -0
- package/templates/skills/claude-code/references/ide-integration.md +316 -0
- package/templates/skills/claude-code/references/mcp-integration.md +386 -0
- package/templates/skills/claude-code/references/slash-commands.md +489 -0
- package/templates/skills/claude-code/references/troubleshooting.md +456 -0
- package/templates/skills/claude-code/skill.md +60 -0
- package/templates/skills/code-review/SKILL.md +143 -0
- package/templates/skills/code-review/references/code-review-reception.md +209 -0
- package/templates/skills/code-review/references/requesting-code-review.md +105 -0
- package/templates/skills/code-review/references/verification-before-completion.md +139 -0
- package/templates/skills/databases/SKILL.md +232 -0
- package/templates/skills/databases/references/mongodb-aggregation.md +447 -0
- package/templates/skills/databases/references/mongodb-atlas.md +465 -0
- package/templates/skills/databases/references/mongodb-crud.md +408 -0
- package/templates/skills/databases/references/mongodb-indexing.md +442 -0
- package/templates/skills/databases/references/postgresql-administration.md +594 -0
- package/templates/skills/databases/references/postgresql-performance.md +527 -0
- package/templates/skills/databases/references/postgresql-psql-cli.md +467 -0
- package/templates/skills/databases/references/postgresql-queries.md +475 -0
- package/templates/skills/databases/scripts/.coverage +0 -0
- package/templates/skills/databases/scripts/db_backup.py +502 -0
- package/templates/skills/databases/scripts/db_migrate.py +425 -0
- package/templates/skills/databases/scripts/db_performance_check.py +456 -0
- package/templates/skills/databases/scripts/requirements.txt +20 -0
- package/templates/skills/databases/scripts/tests/coverage-db.json +1 -0
- package/templates/skills/databases/scripts/tests/requirements.txt +4 -0
- package/templates/skills/databases/scripts/tests/test_db_backup.py +340 -0
- package/templates/skills/databases/scripts/tests/test_db_migrate.py +277 -0
- package/templates/skills/databases/scripts/tests/test_db_performance_check.py +370 -0
- package/templates/skills/debugging/SKILL.md +84 -0
- package/templates/skills/debugging/references/defense-in-depth.md +124 -0
- package/templates/skills/debugging/references/root-cause-tracing.md +122 -0
- package/templates/skills/debugging/references/systematic-debugging.md +102 -0
- package/templates/skills/debugging/references/verification.md +123 -0
- package/templates/skills/debugging/scripts/find-polluter.sh +63 -0
- package/templates/skills/debugging/scripts/find-polluter.test.md +102 -0
- package/templates/skills/developer-growth-analysis/SKILL.md +322 -0
- package/templates/skills/devops/.env.example +76 -0
- package/templates/skills/devops/SKILL.md +285 -0
- package/templates/skills/devops/references/browser-rendering.md +305 -0
- package/templates/skills/devops/references/cloudflare-d1-kv.md +123 -0
- package/templates/skills/devops/references/cloudflare-platform.md +271 -0
- package/templates/skills/devops/references/cloudflare-r2-storage.md +280 -0
- package/templates/skills/devops/references/cloudflare-workers-advanced.md +312 -0
- package/templates/skills/devops/references/cloudflare-workers-apis.md +309 -0
- package/templates/skills/devops/references/cloudflare-workers-basics.md +418 -0
- package/templates/skills/devops/references/docker-basics.md +297 -0
- package/templates/skills/devops/references/docker-compose.md +292 -0
- package/templates/skills/devops/references/gcloud-platform.md +297 -0
- package/templates/skills/devops/references/gcloud-services.md +304 -0
- package/templates/skills/devops/scripts/cloudflare_deploy.py +269 -0
- package/templates/skills/devops/scripts/docker_optimize.py +331 -0
- package/templates/skills/devops/scripts/requirements.txt +20 -0
- package/templates/skills/devops/scripts/tests/requirements.txt +3 -0
- package/templates/skills/devops/scripts/tests/test_cloudflare_deploy.py +285 -0
- package/templates/skills/devops/scripts/tests/test_docker_optimize.py +436 -0
- package/templates/skills/docs-seeker/.env.example +15 -0
- package/templates/skills/docs-seeker/SKILL.md +97 -0
- package/templates/skills/docs-seeker/package.json +25 -0
- package/templates/skills/docs-seeker/references/advanced.md +79 -0
- package/templates/skills/docs-seeker/references/context7-patterns.md +68 -0
- package/templates/skills/docs-seeker/references/errors.md +68 -0
- package/templates/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/templates/skills/docs-seeker/scripts/detect-topic.js +172 -0
- package/templates/skills/docs-seeker/scripts/fetch-docs.js +213 -0
- package/templates/skills/docs-seeker/scripts/tests/run-tests.js +72 -0
- package/templates/skills/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
- package/templates/skills/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
- package/templates/skills/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
- package/templates/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
- package/templates/skills/docs-seeker/workflows/library-search.md +87 -0
- package/templates/skills/docs-seeker/workflows/repo-analysis.md +91 -0
- package/templates/skills/docs-seeker/workflows/topic-search.md +77 -0
- package/templates/skills/document-skills/docx/LICENSE.txt +30 -0
- package/templates/skills/document-skills/docx/SKILL.md +197 -0
- package/templates/skills/document-skills/docx/docx-js.md +350 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/templates/skills/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/pack.py +159 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/unpack.py +29 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validate.py +69 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validation/base.py +951 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validation/docx.py +274 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/templates/skills/document-skills/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/templates/skills/document-skills/docx/ooxml.md +610 -0
- package/templates/skills/document-skills/docx/scripts/__init__.py +1 -0
- package/templates/skills/document-skills/docx/scripts/document.py +1276 -0
- package/templates/skills/document-skills/docx/scripts/templates/comments.xml +3 -0
- package/templates/skills/document-skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/templates/skills/document-skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/templates/skills/document-skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/templates/skills/document-skills/docx/scripts/templates/people.xml +3 -0
- package/templates/skills/document-skills/docx/scripts/utilities.py +374 -0
- package/templates/skills/document-skills/pdf/LICENSE.txt +30 -0
- package/templates/skills/document-skills/pdf/SKILL.md +294 -0
- package/templates/skills/document-skills/pdf/forms.md +205 -0
- package/templates/skills/document-skills/pdf/reference.md +612 -0
- package/templates/skills/document-skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/templates/skills/document-skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/templates/skills/document-skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/templates/skills/document-skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/templates/skills/document-skills/pdf/scripts/create_validation_image.py +41 -0
- package/templates/skills/document-skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/templates/skills/document-skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/templates/skills/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/templates/skills/document-skills/pptx/LICENSE.txt +30 -0
- package/templates/skills/document-skills/pptx/SKILL.md +484 -0
- package/templates/skills/document-skills/pptx/html2pptx.md +625 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/templates/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/pack.py +159 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/unpack.py +29 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validate.py +69 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validation/base.py +951 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/templates/skills/document-skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/templates/skills/document-skills/pptx/ooxml.md +427 -0
- package/templates/skills/document-skills/pptx/scripts/html2pptx.js +979 -0
- package/templates/skills/document-skills/pptx/scripts/inventory.py +1020 -0
- package/templates/skills/document-skills/pptx/scripts/rearrange.py +231 -0
- package/templates/skills/document-skills/pptx/scripts/replace.py +385 -0
- package/templates/skills/document-skills/pptx/scripts/thumbnail.py +450 -0
- package/templates/skills/document-skills/xlsx/LICENSE.txt +30 -0
- package/templates/skills/document-skills/xlsx/SKILL.md +289 -0
- package/templates/skills/document-skills/xlsx/recalc.py +190 -0
- package/templates/skills/documentation/SKILL.md +134 -0
- package/templates/skills/domain-name-brainstormer/SKILL.md +212 -0
- package/templates/skills/dual-pass-review/SKILL.md +249 -0
- package/templates/skills/feature-docs/SKILL.md +294 -0
- package/templates/skills/feature-implementation/SKILL.md +262 -0
- package/templates/skills/feature-investigation/SKILL.md +346 -0
- package/templates/skills/frontend-design/SKILL.md +91 -0
- package/templates/skills/frontend-design/references/ai-multimodal-overview.md +165 -0
- package/templates/skills/frontend-design/references/analysis-best-practices.md +80 -0
- package/templates/skills/frontend-design/references/analysis-prompts.md +141 -0
- package/templates/skills/frontend-design/references/analysis-techniques.md +118 -0
- package/templates/skills/frontend-design/references/animejs.md +396 -0
- package/templates/skills/frontend-design/references/asset-generation.md +337 -0
- package/templates/skills/frontend-design/references/design-extraction-overview.md +71 -0
- package/templates/skills/frontend-design/references/extraction-best-practices.md +141 -0
- package/templates/skills/frontend-design/references/extraction-output-templates.md +162 -0
- package/templates/skills/frontend-design/references/extraction-prompts.md +127 -0
- package/templates/skills/frontend-design/references/technical-accessibility.md +119 -0
- package/templates/skills/frontend-design/references/technical-best-practices.md +97 -0
- package/templates/skills/frontend-design/references/technical-optimization.md +44 -0
- package/templates/skills/frontend-design/references/technical-overview.md +90 -0
- package/templates/skills/frontend-design/references/technical-workflows.md +150 -0
- package/templates/skills/frontend-design/references/visual-analysis-overview.md +95 -0
- package/templates/skills/frontend-design-pro/SKILL.md +58 -0
- package/templates/skills/frontend-development/SKILL.md +399 -0
- package/templates/skills/frontend-development/resources/common-patterns.md +331 -0
- package/templates/skills/frontend-development/resources/complete-examples.md +872 -0
- package/templates/skills/frontend-development/resources/component-patterns.md +502 -0
- package/templates/skills/frontend-development/resources/data-fetching.md +767 -0
- package/templates/skills/frontend-development/resources/file-organization.md +502 -0
- package/templates/skills/frontend-development/resources/loading-and-error-states.md +501 -0
- package/templates/skills/frontend-development/resources/performance.md +406 -0
- package/templates/skills/frontend-development/resources/routing-guide.md +364 -0
- package/templates/skills/frontend-development/resources/styling-guide.md +428 -0
- package/templates/skills/frontend-development/resources/typescript-standards.md +418 -0
- package/templates/skills/google-adk-python/SKILL.md +237 -0
- package/templates/skills/install.ps1 +1220 -0
- package/templates/skills/install.sh +1032 -0
- package/templates/skills/mcp-builder/LICENSE.txt +202 -0
- package/templates/skills/mcp-builder/SKILL.md +328 -0
- package/templates/skills/mcp-builder/reference/evaluation.md +602 -0
- package/templates/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
- package/templates/skills/mcp-builder/reference/node_mcp_server.md +916 -0
- package/templates/skills/mcp-builder/reference/python_mcp_server.md +752 -0
- package/templates/skills/mcp-builder/scripts/connections.py +151 -0
- package/templates/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/templates/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/templates/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/templates/skills/mcp-management/README.md +219 -0
- package/templates/skills/mcp-management/SKILL.md +209 -0
- package/templates/skills/mcp-management/assets/tools.json +3146 -0
- package/templates/skills/mcp-management/references/configuration.md +114 -0
- package/templates/skills/mcp-management/references/gemini-cli-integration.md +215 -0
- package/templates/skills/mcp-management/references/mcp-protocol.md +116 -0
- package/templates/skills/mcp-management/scripts/.env.example +10 -0
- package/templates/skills/mcp-management/scripts/cli.ts +195 -0
- package/templates/skills/mcp-management/scripts/dist/analyze-tools.js +70 -0
- package/templates/skills/mcp-management/scripts/dist/cli.js +160 -0
- package/templates/skills/mcp-management/scripts/dist/mcp-client.js +183 -0
- package/templates/skills/mcp-management/scripts/mcp-client.ts +230 -0
- package/templates/skills/mcp-management/scripts/package.json +20 -0
- package/templates/skills/mcp-management/scripts/tsconfig.json +15 -0
- package/templates/skills/media-processing/SKILL.md +91 -0
- package/templates/skills/media-processing/references/common-workflows.md +132 -0
- package/templates/skills/media-processing/references/ffmpeg-encoding.md +358 -0
- package/templates/skills/media-processing/references/ffmpeg-filters.md +503 -0
- package/templates/skills/media-processing/references/ffmpeg-streaming.md +403 -0
- package/templates/skills/media-processing/references/format-compatibility.md +375 -0
- package/templates/skills/media-processing/references/imagemagick-batch.md +612 -0
- package/templates/skills/media-processing/references/imagemagick-editing.md +623 -0
- package/templates/skills/media-processing/references/rmbg-background-removal.md +66 -0
- package/templates/skills/media-processing/references/troubleshooting.md +109 -0
- package/templates/skills/media-processing/scripts/README.md +111 -0
- package/templates/skills/media-processing/scripts/batch-remove-background.sh +124 -0
- package/templates/skills/media-processing/scripts/batch_resize.py +342 -0
- package/templates/skills/media-processing/scripts/media_convert.py +311 -0
- package/templates/skills/media-processing/scripts/remove-background.sh +96 -0
- package/templates/skills/media-processing/scripts/remove-bg-node.js +158 -0
- package/templates/skills/media-processing/scripts/requirements.txt +24 -0
- package/templates/skills/media-processing/scripts/tests/.coverage +0 -0
- package/templates/skills/media-processing/scripts/tests/requirements.txt +2 -0
- package/templates/skills/media-processing/scripts/tests/test_batch_resize.py +372 -0
- package/templates/skills/media-processing/scripts/tests/test_media_convert.py +259 -0
- package/templates/skills/media-processing/scripts/tests/test_video_optimize.py +397 -0
- package/templates/skills/media-processing/scripts/video_optimize.py +414 -0
- package/templates/skills/mobile-development/SKILL.md +212 -0
- package/templates/skills/mobile-development/references/mobile-android.md +604 -0
- package/templates/skills/mobile-development/references/mobile-best-practices.md +545 -0
- package/templates/skills/mobile-development/references/mobile-debugging.md +1089 -0
- package/templates/skills/mobile-development/references/mobile-frameworks.md +465 -0
- package/templates/skills/mobile-development/references/mobile-ios.md +496 -0
- package/templates/skills/mobile-development/references/mobile-mindset.md +544 -0
- package/templates/skills/package-upgrade/SKILL.md +189 -0
- package/templates/skills/payment-integration/README.md +185 -0
- package/templates/skills/payment-integration/SKILL.md +118 -0
- package/templates/skills/payment-integration/references/polar/benefits.md +396 -0
- package/templates/skills/payment-integration/references/polar/best-practices.md +482 -0
- package/templates/skills/payment-integration/references/polar/checkouts.md +266 -0
- package/templates/skills/payment-integration/references/polar/overview.md +184 -0
- package/templates/skills/payment-integration/references/polar/products.md +244 -0
- package/templates/skills/payment-integration/references/polar/sdk.md +436 -0
- package/templates/skills/payment-integration/references/polar/subscriptions.md +340 -0
- package/templates/skills/payment-integration/references/polar/webhooks.md +405 -0
- package/templates/skills/payment-integration/references/sepay/api.md +140 -0
- package/templates/skills/payment-integration/references/sepay/best-practices.md +337 -0
- package/templates/skills/payment-integration/references/sepay/overview.md +138 -0
- package/templates/skills/payment-integration/references/sepay/qr-codes.md +228 -0
- package/templates/skills/payment-integration/references/sepay/sdk.md +213 -0
- package/templates/skills/payment-integration/references/sepay/webhooks.md +208 -0
- package/templates/skills/payment-integration/scripts/.env.example +20 -0
- package/templates/skills/payment-integration/scripts/checkout-helper.js +244 -0
- package/templates/skills/payment-integration/scripts/package.json +17 -0
- package/templates/skills/payment-integration/scripts/polar-webhook-verify.js +202 -0
- package/templates/skills/payment-integration/scripts/sepay-webhook-verify.js +193 -0
- package/templates/skills/payment-integration/scripts/test-scripts.js +237 -0
- package/templates/skills/plan-analysis/SKILL.md +191 -0
- package/templates/skills/planning/SKILL.md +115 -0
- package/templates/skills/planning/references/codebase-understanding.md +62 -0
- package/templates/skills/planning/references/output-standards.md +127 -0
- package/templates/skills/planning/references/plan-organization.md +150 -0
- package/templates/skills/planning/references/research-phase.md +49 -0
- package/templates/skills/planning/references/solution-design.md +63 -0
- package/templates/skills/planning-with-files/SKILL.md +160 -0
- package/templates/skills/planning-with-files/examples.md +202 -0
- package/templates/skills/planning-with-files/reference.md +110 -0
- package/templates/skills/problem-solving/SKILL.md +96 -0
- package/templates/skills/problem-solving/references/attribution.md +69 -0
- package/templates/skills/problem-solving/references/collision-zone-thinking.md +79 -0
- package/templates/skills/problem-solving/references/inversion-exercise.md +91 -0
- package/templates/skills/problem-solving/references/meta-pattern-recognition.md +87 -0
- package/templates/skills/problem-solving/references/scale-game.md +95 -0
- package/templates/skills/problem-solving/references/simplification-cascades.md +80 -0
- package/templates/skills/problem-solving/references/when-stuck.md +72 -0
- package/templates/skills/project-index/SKILL.md +97 -0
- package/templates/skills/project-index/scripts/scan-structure.js +417 -0
- package/templates/skills/project-index/scripts/scan_structure.py +450 -0
- package/templates/skills/readme-improvement/SKILL.md +177 -0
- package/templates/skills/repomix/SKILL.md +247 -0
- package/templates/skills/repomix/references/configuration.md +211 -0
- package/templates/skills/repomix/references/usage-patterns.md +232 -0
- package/templates/skills/repomix/scripts/.coverage +0 -0
- package/templates/skills/repomix/scripts/README.md +179 -0
- package/templates/skills/repomix/scripts/repomix_batch.py +455 -0
- package/templates/skills/repomix/scripts/repos.example.json +15 -0
- package/templates/skills/repomix/scripts/requirements.txt +15 -0
- package/templates/skills/repomix/scripts/tests/test_repomix_batch.py +531 -0
- package/templates/skills/research/SKILL.md +168 -0
- package/templates/skills/sequential-thinking/.env.example +8 -0
- package/templates/skills/sequential-thinking/README.md +183 -0
- package/templates/skills/sequential-thinking/SKILL.md +94 -0
- package/templates/skills/sequential-thinking/package.json +31 -0
- package/templates/skills/sequential-thinking/references/advanced-strategies.md +79 -0
- package/templates/skills/sequential-thinking/references/advanced-techniques.md +76 -0
- package/templates/skills/sequential-thinking/references/core-patterns.md +95 -0
- package/templates/skills/sequential-thinking/references/examples-api.md +88 -0
- package/templates/skills/sequential-thinking/references/examples-architecture.md +94 -0
- package/templates/skills/sequential-thinking/references/examples-debug.md +90 -0
- package/templates/skills/sequential-thinking/scripts/format-thought.js +159 -0
- package/templates/skills/sequential-thinking/scripts/process-thought.js +236 -0
- package/templates/skills/sequential-thinking/tests/format-thought.test.js +133 -0
- package/templates/skills/sequential-thinking/tests/process-thought.test.js +215 -0
- package/templates/skills/shopify/README.md +66 -0
- package/templates/skills/shopify/SKILL.md +319 -0
- package/templates/skills/shopify/references/app-development.md +470 -0
- package/templates/skills/shopify/references/extensions.md +493 -0
- package/templates/skills/shopify/references/themes.md +498 -0
- package/templates/skills/shopify/scripts/.coverage +0 -0
- package/templates/skills/shopify/scripts/requirements.txt +19 -0
- package/templates/skills/shopify/scripts/shopify_init.py +423 -0
- package/templates/skills/shopify/scripts/tests/.coverage +0 -0
- package/templates/skills/shopify/scripts/tests/test_shopify_init.py +385 -0
- package/templates/skills/skill-creator/LICENSE.txt +202 -0
- package/templates/skills/skill-creator/SKILL.md +266 -0
- package/templates/skills/skill-creator/scripts/init_skill.py +303 -0
- package/templates/skills/skill-creator/scripts/package_skill.py +110 -0
- package/templates/skills/skill-creator/scripts/quick_validate.py +65 -0
- package/templates/skills/skill-share/SKILL.md +80 -0
- package/templates/skills/tasks-code-review/SKILL.md +298 -0
- package/templates/skills/tasks-documentation/SKILL.md +328 -0
- package/templates/skills/tasks-spec-update/SKILL.md +318 -0
- package/templates/skills/tasks-test-generation/SKILL.md +433 -0
- package/templates/skills/template-skill/SKILL.md +6 -0
- package/templates/skills/test-generation/SKILL.md +203 -0
- package/templates/skills/threejs/SKILL.md +89 -0
- package/templates/skills/threejs/references/01-getting-started.md +177 -0
- package/templates/skills/threejs/references/02-loaders.md +169 -0
- package/templates/skills/threejs/references/03-textures.md +170 -0
- package/templates/skills/threejs/references/04-cameras.md +195 -0
- package/templates/skills/threejs/references/05-lights.md +183 -0
- package/templates/skills/threejs/references/06-animations.md +214 -0
- package/templates/skills/threejs/references/07-math.md +260 -0
- package/templates/skills/threejs/references/08-interaction.md +267 -0
- package/templates/skills/threejs/references/09-postprocessing.md +240 -0
- package/templates/skills/threejs/references/10-controls.md +259 -0
- package/templates/skills/threejs/references/11-materials-advanced.md +270 -0
- package/templates/skills/threejs/references/12-performance.md +269 -0
- package/templates/skills/threejs/references/13-node-materials.md +298 -0
- package/templates/skills/threejs/references/14-physics-vr.md +304 -0
- package/templates/skills/threejs/references/15-specialized-loaders.md +333 -0
- package/templates/skills/threejs/references/16-webgpu.md +302 -0
- package/templates/skills/ui-styling/LICENSE.txt +202 -0
- package/templates/skills/ui-styling/SKILL.md +321 -0
- package/templates/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/templates/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/templates/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/templates/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/templates/skills/ui-styling/references/canvas-design-system.md +320 -0
- package/templates/skills/ui-styling/references/shadcn-accessibility.md +471 -0
- package/templates/skills/ui-styling/references/shadcn-components.md +424 -0
- package/templates/skills/ui-styling/references/shadcn-theming.md +373 -0
- package/templates/skills/ui-styling/references/tailwind-customization.md +483 -0
- package/templates/skills/ui-styling/references/tailwind-responsive.md +382 -0
- package/templates/skills/ui-styling/references/tailwind-utilities.md +455 -0
- package/templates/skills/ui-styling/scripts/.coverage +0 -0
- package/templates/skills/ui-styling/scripts/requirements.txt +17 -0
- package/templates/skills/ui-styling/scripts/shadcn_add.py +292 -0
- package/templates/skills/ui-styling/scripts/tailwind_config_gen.py +456 -0
- package/templates/skills/ui-styling/scripts/tests/coverage-ui.json +1 -0
- package/templates/skills/ui-styling/scripts/tests/requirements.txt +3 -0
- package/templates/skills/ui-styling/scripts/tests/test_shadcn_add.py +266 -0
- package/templates/skills/ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
- package/templates/skills/ui-ux-pro-max/SKILL.md +315 -0
- package/templates/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/templates/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/templates/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/templates/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/templates/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/templates/skills/ui-ux-pro-max/data/prompts.csv +24 -0
- package/templates/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/templates/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/templates/skills/ui-ux-pro-max/data/styles.csv +59 -0
- package/templates/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/templates/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/templates/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/templates/skills/ui-ux-pro-max/scripts/core.py +257 -0
- package/templates/skills/ui-ux-pro-max/scripts/search.py +61 -0
- package/templates/skills/web-frameworks/SKILL.md +324 -0
- package/templates/skills/web-frameworks/references/nextjs-app-router.md +465 -0
- package/templates/skills/web-frameworks/references/nextjs-data-fetching.md +459 -0
- package/templates/skills/web-frameworks/references/nextjs-optimization.md +511 -0
- package/templates/skills/web-frameworks/references/nextjs-server-components.md +495 -0
- package/templates/skills/web-frameworks/references/remix-icon-integration.md +603 -0
- package/templates/skills/web-frameworks/references/turborepo-caching.md +551 -0
- package/templates/skills/web-frameworks/references/turborepo-pipelines.md +517 -0
- package/templates/skills/web-frameworks/references/turborepo-setup.md +542 -0
- package/templates/skills/web-frameworks/scripts/.coverage +0 -0
- package/templates/skills/web-frameworks/scripts/__init__.py +0 -0
- package/templates/skills/web-frameworks/scripts/nextjs_init.py +547 -0
- package/templates/skills/web-frameworks/scripts/requirements.txt +16 -0
- package/templates/skills/web-frameworks/scripts/tests/coverage-web.json +1 -0
- package/templates/skills/web-frameworks/scripts/tests/requirements.txt +3 -0
- package/templates/skills/web-frameworks/scripts/tests/test_nextjs_init.py +319 -0
- package/templates/skills/web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -0
- package/templates/skills/web-frameworks/scripts/turborepo_migrate.py +394 -0
- package/templates/skills/webapp-testing/LICENSE.txt +202 -0
- package/templates/skills/webapp-testing/SKILL.md +96 -0
- package/templates/skills/webapp-testing/examples/console_logging.py +35 -0
- package/templates/skills/webapp-testing/examples/element_discovery.py +40 -0
- package/templates/skills/webapp-testing/examples/static_html_automation.py +33 -0
- package/templates/skills/webapp-testing/scripts/with_server.py +106 -0
- package/templates/statusline.cjs +306 -0
- package/templates/statusline.ps1 +308 -0
- package/templates/statusline.sh +238 -0
- package/templates/workflows/README.md +241 -0
- package/templates/workflows/development-rules.md +93 -0
- package/templates/workflows/documentation-management.md +121 -0
- package/templates/workflows/orchestration-protocol.md +16 -0
- package/templates/workflows/primary-workflow.md +45 -0
|
@@ -0,0 +1,324 @@
|
|
|
1
|
+
# Investigate Feature: $ARGUMENTS
|
|
2
|
+
|
|
3
|
+
Investigate and explain how an existing feature or logic works using structured knowledge model construction.
|
|
4
|
+
|
|
5
|
+
**KEY PRINCIPLE**: This is a **READ-ONLY exploration** - no code changes. Focus on understanding and explaining.
|
|
6
|
+
|
|
7
|
+
## Variables
|
|
8
|
+
|
|
9
|
+
- **FEATURE**: $ARGUMENTS (the feature/logic to investigate)
|
|
10
|
+
- **ANALYSIS_FILE**: `ai_task_analysis_notes/$ARGUMENTS-investigation.ai_task_analysis_notes_temp.md`
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## INPUT: Scout Output Integration
|
|
15
|
+
|
|
16
|
+
**If preceded by `/scout`:**
|
|
17
|
+
|
|
18
|
+
1. **Use the numbered file list** from Scout results as your analysis targets
|
|
19
|
+
2. **Prioritize in this order:**
|
|
20
|
+
- HIGH PRIORITY files (Domain Entities, Commands, Queries, Event Handlers, Controllers, Jobs, Consumers)
|
|
21
|
+
- Suggested Starting Points (if provided)
|
|
22
|
+
- MEDIUM PRIORITY files (Services, Helpers, Components)
|
|
23
|
+
3. **Skip redundant discovery** - Scout already searched the codebase
|
|
24
|
+
4. **Reference files by Scout's numbers** in your analysis (e.g., "File #3 from Scout")
|
|
25
|
+
|
|
26
|
+
**Scout Output Format Reference:**
|
|
27
|
+
```markdown
|
|
28
|
+
### HIGH PRIORITY (Analyze First)
|
|
29
|
+
| # | File | Purpose |
|
|
30
|
+
|---|------|---------|
|
|
31
|
+
| 1 | `path/Entity.cs` | Core domain entity |
|
|
32
|
+
|
|
33
|
+
### Suggested Starting Points
|
|
34
|
+
1. **[Most relevant file]** - [Why]
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**If NO Scout output available:** Proceed with Phase 1A discovery as normal.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## PHASE 1A: INITIALIZATION AND DISCOVERY
|
|
42
|
+
|
|
43
|
+
### Step 1: Initialize Analysis File
|
|
44
|
+
|
|
45
|
+
Create the analysis file at `ai_task_analysis_notes/[feature-name]-investigation.ai_task_analysis_notes_temp.md` with these required sections:
|
|
46
|
+
|
|
47
|
+
```markdown
|
|
48
|
+
## Metadata
|
|
49
|
+
|
|
50
|
+
```markdown
|
|
51
|
+
**Original Prompt:** [User's investigation question]
|
|
52
|
+
**Task Description:** [What we're investigating]
|
|
53
|
+
**Source Code Structure:** See ai-prompt-context.md
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Progress
|
|
57
|
+
|
|
58
|
+
- **Phase**: 1A
|
|
59
|
+
- **Items Processed**: 0
|
|
60
|
+
- **Total Items**: 0
|
|
61
|
+
- **Current Operation**: "initialization"
|
|
62
|
+
- **Current Focus**: "[feature summary]"
|
|
63
|
+
|
|
64
|
+
## Errors
|
|
65
|
+
|
|
66
|
+
[None yet]
|
|
67
|
+
|
|
68
|
+
## Assumption Validations
|
|
69
|
+
|
|
70
|
+
| Assumption | Status | Evidence |
|
|
71
|
+
|------------|--------|----------|
|
|
72
|
+
| ... | Pending/Validated/Invalid | ... |
|
|
73
|
+
|
|
74
|
+
## File List
|
|
75
|
+
|
|
76
|
+
[Numbered list of files to analyze]
|
|
77
|
+
|
|
78
|
+
## Knowledge Graph
|
|
79
|
+
|
|
80
|
+
[Detailed analysis of each file]
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Step 2: Semantic Discovery
|
|
84
|
+
|
|
85
|
+
Search for related code using multiple patterns:
|
|
86
|
+
|
|
87
|
+
**Primary Patterns:**
|
|
88
|
+
```
|
|
89
|
+
*Command*{Feature}* # CQRS Commands
|
|
90
|
+
*Query*{Feature}* # CQRS Queries
|
|
91
|
+
*{Feature}*EventHandler* # Entity Event Handlers
|
|
92
|
+
*{Feature}*Consumer* # Message Bus Consumers
|
|
93
|
+
*{Feature}*BackgroundJob* # Background Jobs
|
|
94
|
+
*{Feature}*Controller* # API Controllers
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Secondary Patterns:**
|
|
98
|
+
```
|
|
99
|
+
.*EventHandler.*{Feature}|{Feature}.*EventHandler
|
|
100
|
+
.*BackgroundJob.*{Feature}|{Feature}.*BackgroundJob
|
|
101
|
+
.*Consumer.*{Feature}|{Feature}.*Consumer
|
|
102
|
+
.*Service.*{Feature}|{Feature}.*Service
|
|
103
|
+
.*Helper.*{Feature}|{Feature}.*Helper
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**File Types:** `**/*.{cs,ts,html}`
|
|
107
|
+
|
|
108
|
+
### Step 3: Prioritize Files
|
|
109
|
+
|
|
110
|
+
**HIGH PRIORITY (Must Analyze):**
|
|
111
|
+
1. Domain Entities (`Domain/Entities/`)
|
|
112
|
+
2. CQRS Commands (`UseCaseCommands/`)
|
|
113
|
+
3. CQRS Queries (`UseCaseQueries/`)
|
|
114
|
+
4. Entity Event Handlers (`UseCaseEvents/`)
|
|
115
|
+
5. Controllers (`Controllers/`)
|
|
116
|
+
6. Background Jobs (`*BackgroundJob*.cs`)
|
|
117
|
+
7. Message Bus Consumers (`*Consumer.cs`)
|
|
118
|
+
8. Frontend Components (`*.component.ts`)
|
|
119
|
+
|
|
120
|
+
**MEDIUM PRIORITY:**
|
|
121
|
+
- Services, Helpers, DTOs, Repositories
|
|
122
|
+
|
|
123
|
+
Save ALL file paths as numbered list under `## File List` in analysis file.
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## PHASE 1B: KNOWLEDGE GRAPH CONSTRUCTION
|
|
128
|
+
|
|
129
|
+
### Step 1: Batch Processing Setup
|
|
130
|
+
|
|
131
|
+
Count total files, split into batches of 10. Use TodoWrite to create tasks:
|
|
132
|
+
|
|
133
|
+
```
|
|
134
|
+
- [ ] Analyze batch 1 (files 1-10)
|
|
135
|
+
- [ ] Analyze batch 2 (files 11-20)
|
|
136
|
+
...
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### Step 2: File Analysis Schema
|
|
140
|
+
|
|
141
|
+
For each file, add to `## Knowledge Graph` with this structure:
|
|
142
|
+
|
|
143
|
+
```markdown
|
|
144
|
+
### [#] [FileName]
|
|
145
|
+
|
|
146
|
+
- **filePath**: Full path to file
|
|
147
|
+
- **type**: Entity | Command | Query | EventHandler | Consumer | Controller | Job | Component | Service
|
|
148
|
+
- **architecturalPattern**: CQRS | Repository | EventSourcing | MessageBus | etc.
|
|
149
|
+
- **content**: Summary of purpose and logic
|
|
150
|
+
- **symbols**: Key classes, interfaces, methods
|
|
151
|
+
- **dependencies**: Imported modules / using statements
|
|
152
|
+
- **businessContext**: How it contributes to business requirements
|
|
153
|
+
- **referenceFiles**: Other files using this file's symbols
|
|
154
|
+
- **relevanceScore**: 1-10 (10 = most relevant)
|
|
155
|
+
- **evidenceLevel**: verified | inferred
|
|
156
|
+
- **uncertainties**: Aspects you're unsure about
|
|
157
|
+
- **platformAbstractions**: Base classes used (PlatformCqrsCommand, PlatformEntity, etc.)
|
|
158
|
+
- **serviceContext**: Which microservice owns this
|
|
159
|
+
- **dependencyInjection**: DI registrations
|
|
160
|
+
- **genericTypeParameters**: Generic type relationships
|
|
161
|
+
|
|
162
|
+
#### Targeted Analysis
|
|
163
|
+
|
|
164
|
+
**For Backend:**
|
|
165
|
+
- authorizationPolicies, commands, queries, domainEntities
|
|
166
|
+
- repositoryPatterns, businessRuleImplementations
|
|
167
|
+
|
|
168
|
+
**For Consumers:**
|
|
169
|
+
- messageBusMessage: The `*BusMessage` type consumed
|
|
170
|
+
- messageBusProducers: Files that SEND this message (grep across ALL services)
|
|
171
|
+
- crossServiceIntegration: How services communicate
|
|
172
|
+
|
|
173
|
+
**For Frontend:**
|
|
174
|
+
- componentHierarchy, routeConfig, stateManagementStores
|
|
175
|
+
- dataBindingPatterns, validationStrategies
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### Step 3: Cross-Service Analysis (CRITICAL for Consumers)
|
|
179
|
+
|
|
180
|
+
When analyzing `*Consumer.cs` files extending `PlatformApplicationMessageBusConsumer<T>`:
|
|
181
|
+
|
|
182
|
+
1. Identify the `*BusMessage` type
|
|
183
|
+
2. Grep search ALL services for files that **publish** this message
|
|
184
|
+
3. Document producer files and their service locations
|
|
185
|
+
4. Map the cross-service data flow
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## PHASE 2: CODE FLOW TRACING
|
|
190
|
+
|
|
191
|
+
### Step 1: Entry Points
|
|
192
|
+
|
|
193
|
+
Identify how the feature is triggered:
|
|
194
|
+
- API Endpoint → Controller → Command/Query Handler
|
|
195
|
+
- UI Action → Component → API Service → Backend
|
|
196
|
+
- Scheduled Job → BackgroundJob → Handler
|
|
197
|
+
- Message → Consumer → Handler
|
|
198
|
+
|
|
199
|
+
### Step 2: Trace Execution Path
|
|
200
|
+
|
|
201
|
+
Document in analysis file:
|
|
202
|
+
|
|
203
|
+
```markdown
|
|
204
|
+
## Data Flow
|
|
205
|
+
|
|
206
|
+
[Request] → [Controller] → [Handler] → [Repository] → [Response]
|
|
207
|
+
↓
|
|
208
|
+
[Event Handler] → [Side Effects]
|
|
209
|
+
↓
|
|
210
|
+
[Message Bus] → [Consumer in Other Service]
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### Step 3: Side Effects Mapping
|
|
214
|
+
|
|
215
|
+
- Entity events raised
|
|
216
|
+
- Messages published to bus
|
|
217
|
+
- External service calls
|
|
218
|
+
- Database operations
|
|
219
|
+
- Notifications triggered
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## PHASE 3: PRESENT FINDINGS
|
|
224
|
+
|
|
225
|
+
### Output Format
|
|
226
|
+
|
|
227
|
+
```markdown
|
|
228
|
+
## Executive Summary
|
|
229
|
+
|
|
230
|
+
[1-2 paragraph direct answer to the investigation question]
|
|
231
|
+
|
|
232
|
+
## How It Works
|
|
233
|
+
|
|
234
|
+
### 1. [Entry Point]
|
|
235
|
+
[Explanation with `file:line` reference]
|
|
236
|
+
|
|
237
|
+
### 2. [Core Processing]
|
|
238
|
+
[Explanation with `file:line` reference]
|
|
239
|
+
|
|
240
|
+
### 3. [Side Effects]
|
|
241
|
+
[Explanation with `file:line` reference]
|
|
242
|
+
|
|
243
|
+
## Key Files
|
|
244
|
+
|
|
245
|
+
| File | Type | Purpose | Relevance |
|
|
246
|
+
|------|------|---------|-----------|
|
|
247
|
+
| `path/file.cs:123` | Command | [Purpose] | 10/10 |
|
|
248
|
+
|
|
249
|
+
## Data Flow Diagram
|
|
250
|
+
|
|
251
|
+
```
|
|
252
|
+
[Visual text diagram of the flow]
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
## Platform Patterns Used
|
|
256
|
+
|
|
257
|
+
- **Pattern**: How it's applied
|
|
258
|
+
- **Pattern**: How it's applied
|
|
259
|
+
|
|
260
|
+
## Cross-Service Integration
|
|
261
|
+
|
|
262
|
+
| Source Service | Message | Target Service | Consumer |
|
|
263
|
+
|----------------|---------|----------------|----------|
|
|
264
|
+
| ... | ... | ... | ... |
|
|
265
|
+
|
|
266
|
+
## Unresolved Questions
|
|
267
|
+
|
|
268
|
+
- [Question 1]
|
|
269
|
+
- [Question 2]
|
|
270
|
+
|
|
271
|
+
## Want to Know More?
|
|
272
|
+
|
|
273
|
+
- [Related topic 1]
|
|
274
|
+
- [Related topic 2]
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## Anti-Hallucination Protocol
|
|
280
|
+
|
|
281
|
+
Before ANY claim, verify:
|
|
282
|
+
|
|
283
|
+
1. "What assumptions am I making?"
|
|
284
|
+
2. "Have I verified with actual code evidence?"
|
|
285
|
+
3. "Could I be wrong about how this works?"
|
|
286
|
+
|
|
287
|
+
### Verification Checklist
|
|
288
|
+
|
|
289
|
+
- [ ] Found actual code evidence for each claim?
|
|
290
|
+
- [ ] Traced the full code path?
|
|
291
|
+
- [ ] Checked cross-service message flows?
|
|
292
|
+
- [ ] Documented ALL findings with `file:line`?
|
|
293
|
+
- [ ] Answered the original question?
|
|
294
|
+
- [ ] Listed unresolved questions?
|
|
295
|
+
|
|
296
|
+
**If ANY unchecked → DO MORE INVESTIGATION**
|
|
297
|
+
|
|
298
|
+
---
|
|
299
|
+
|
|
300
|
+
## Progress Tracking
|
|
301
|
+
|
|
302
|
+
Update `## Progress` section after each batch:
|
|
303
|
+
|
|
304
|
+
```markdown
|
|
305
|
+
- **Phase**: 1B
|
|
306
|
+
- **Items Processed**: 20
|
|
307
|
+
- **Total Items**: 35
|
|
308
|
+
- **Current Operation**: "analyzing batch 3"
|
|
309
|
+
- **Current Focus**: "Event Handlers"
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Quick Reference
|
|
315
|
+
|
|
316
|
+
| Looking for... | Search in... |
|
|
317
|
+
|----------------|--------------|
|
|
318
|
+
| Entity CRUD | `UseCaseCommands/`, `UseCaseQueries/` |
|
|
319
|
+
| Business logic | `Domain/Entities/`, `*Service.cs` |
|
|
320
|
+
| Side effects | `UseCaseEvents/`, `*EventHandler.cs` |
|
|
321
|
+
| Cross-service | `*Consumer.cs`, `*BusMessage.cs` |
|
|
322
|
+
| API endpoints | `Controllers/`, `*Controller.cs` |
|
|
323
|
+
| Frontend | `libs/apps-domains/`, `*.component.ts` |
|
|
324
|
+
| Background processing | `*BackgroundJob*.cs`, `*Job.cs` |
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: ⚡ Write some journal entries.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Use the `journal-writer` subagent to explore the memories and recent code changes, and write some journal entries.
|
|
6
|
+
Journal entries should be concise and focused on the most important events, key changes, impacts, and decisions.
|
|
7
|
+
Keep journal entries in the `./docs/journals/` directory.
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: AI agent orchestration board (Coming Soon)
|
|
3
|
+
arguments:
|
|
4
|
+
- name: dir
|
|
5
|
+
description: Plans directory (default: ./plans)
|
|
6
|
+
required: false
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Plans dashboard with progress tracking and timeline visualization.
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
- `/kanban` - View dashboard for ./plans directory
|
|
14
|
+
- `/kanban plans/` - View dashboard for specific directory
|
|
15
|
+
- `/kanban --stop` - Stop running server
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
- Plan cards with progress bars
|
|
20
|
+
- Phase status breakdown (completed, in-progress, pending)
|
|
21
|
+
- Timeline/Gantt visualization
|
|
22
|
+
- Activity heatmap
|
|
23
|
+
- Issue and branch links
|
|
24
|
+
|
|
25
|
+
## Execution
|
|
26
|
+
|
|
27
|
+
**IMPORTANT:** Run server as Claude Code background task using `run_in_background: true` with the Bash tool. This makes the server visible in `/tasks` and manageable via `KillShell`.
|
|
28
|
+
|
|
29
|
+
Check if this script is located in the current workspace or in `$HOME/.claude/skills/plans-kanban` directory:
|
|
30
|
+
- If in current workspace: `$SKILL_DIR_PATH` = `./.claude/skills/plans-kanban/`
|
|
31
|
+
- If in home directory: `$SKILL_DIR_PATH` = `$HOME/.claude/skills/plans-kanban/`
|
|
32
|
+
|
|
33
|
+
### Stop Server
|
|
34
|
+
|
|
35
|
+
If `--stop` flag is provided:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
node $SKILL_DIR_PATH/scripts/server.cjs --stop
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Start Server
|
|
42
|
+
|
|
43
|
+
Otherwise, run the kanban server as CC background task with `--foreground` flag (keeps process alive for CC task management):
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
# Determine plans directory
|
|
47
|
+
INPUT_DIR="{{dir}}"
|
|
48
|
+
PLANS_DIR="${INPUT_DIR:-./plans}"
|
|
49
|
+
|
|
50
|
+
# Start kanban dashboard
|
|
51
|
+
node $SKILL_DIR_PATH/scripts/server.cjs \
|
|
52
|
+
--dir "$PLANS_DIR" \
|
|
53
|
+
--host 0.0.0.0 \
|
|
54
|
+
--open \
|
|
55
|
+
--foreground
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**Critical:** When calling the Bash tool:
|
|
59
|
+
- Set `run_in_background: true` to run as CC background task
|
|
60
|
+
- Set `timeout: 300000` (5 minutes) to prevent premature termination
|
|
61
|
+
- Parse JSON output and report URL to user
|
|
62
|
+
|
|
63
|
+
Example Bash tool call:
|
|
64
|
+
```json
|
|
65
|
+
{
|
|
66
|
+
"command": "node .claude/skills/plans-kanban/scripts/server.cjs --dir \"./plans\" --host 0.0.0.0 --open --foreground",
|
|
67
|
+
"run_in_background": true,
|
|
68
|
+
"timeout": 300000,
|
|
69
|
+
"description": "Start kanban server in background"
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
After starting, parse the JSON output (e.g., `{"success":true,"url":"http://localhost:3500/kanban?dir=...","networkUrl":"http://192.168.1.x:3500/kanban?dir=..."}`) and report:
|
|
74
|
+
- Local URL for browser access
|
|
75
|
+
- Network URL for remote device access (if available)
|
|
76
|
+
- Inform user that server is now running as CC background task (visible in `/tasks`)
|
|
77
|
+
|
|
78
|
+
**CRITICAL:** MUST display the FULL URL including path and query string. NEVER truncate to just `host:port`. The full URL is required for direct access.
|
|
79
|
+
|
|
80
|
+
## Future Plans
|
|
81
|
+
|
|
82
|
+
The `/kanban` command will evolve into **VibeKanban-inspired** AI agent orchestration:
|
|
83
|
+
|
|
84
|
+
### Phase 1 (Current - MVP)
|
|
85
|
+
- ✅ Task board with progress tracking
|
|
86
|
+
- ✅ Visual representation of plans/tasks
|
|
87
|
+
- ✅ Click to view plan details
|
|
88
|
+
|
|
89
|
+
### Phase 2 (Worktree Integration)
|
|
90
|
+
- Create tasks → spawn git worktrees
|
|
91
|
+
- Assign agents to tasks
|
|
92
|
+
- Track agent progress per worktree
|
|
93
|
+
|
|
94
|
+
### Phase 3 (Full Orchestration)
|
|
95
|
+
- Parallel agent execution monitoring
|
|
96
|
+
- Code diff/review interface
|
|
97
|
+
- PR creation workflow
|
|
98
|
+
- Agent output streaming
|
|
99
|
+
- Conflict detection
|
|
100
|
+
|
|
101
|
+
Track progress: https://github.com/claudekit/claudekit-engineer/issues/189
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Run linters and fix issues for backend or frontend
|
|
3
|
+
allowed-tools: Bash, Read, Edit, Glob, TodoWrite
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Run linting: $ARGUMENTS
|
|
7
|
+
|
|
8
|
+
## Instructions
|
|
9
|
+
|
|
10
|
+
1. **Parse arguments**:
|
|
11
|
+
- `backend` or `be` → Run .NET analyzers
|
|
12
|
+
- `frontend` or `fe` → Run ESLint/Prettier
|
|
13
|
+
- `fix` → Auto-fix issues where possible
|
|
14
|
+
- No argument → Run both, report only
|
|
15
|
+
|
|
16
|
+
2. **For Backend (.NET)**:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
dotnet build EasyPlatform.sln /p:TreatWarningsAsErrors=false
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
- Check for analyzer warnings (CA*, IDE*, etc.)
|
|
23
|
+
- Report code style violations
|
|
24
|
+
|
|
25
|
+
3. **For Frontend (Angular/Nx)**:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
cd src/PlatformExampleAppWeb
|
|
29
|
+
nx lint playground-text-snippet
|
|
30
|
+
nx lint platform-core
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
With auto-fix:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
nx lint playground-text-snippet --fix
|
|
37
|
+
npx prettier --write "apps/**/*.{ts,html,scss}" "libs/**/*.{ts,html,scss}"
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
4. **Report format**:
|
|
41
|
+
- Group issues by severity (error, warning, info)
|
|
42
|
+
- Show file paths and line numbers
|
|
43
|
+
- Suggest fixes for common issues
|
|
44
|
+
|
|
45
|
+
5. **Auto-fix behavior**:
|
|
46
|
+
- If `fix` argument provided, apply safe auto-fixes
|
|
47
|
+
- Report what was fixed vs what needs manual attention
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Create Migration: $ARGUMENTS
|
|
2
|
+
|
|
3
|
+
Create a data or schema migration following EasyPlatform patterns.
|
|
4
|
+
|
|
5
|
+
## Phase 1: Analyze Requirements
|
|
6
|
+
|
|
7
|
+
1. **Parse migration description** from: $ARGUMENTS
|
|
8
|
+
2. **Identify migration type:**
|
|
9
|
+
- Schema migration (EF Core) - for SQL Server/PostgreSQL table changes
|
|
10
|
+
- Data migration (PlatformDataMigrationExecutor) - for data transformations
|
|
11
|
+
- MongoDB migration (PlatformMongoMigrationExecutor) - for MongoDB changes
|
|
12
|
+
|
|
13
|
+
3. **Search for existing patterns:**
|
|
14
|
+
- `src/PlatformExampleApp/*/Persistence/Migrations/` for schema migrations
|
|
15
|
+
- Search for `PlatformDataMigrationExecutor` implementations
|
|
16
|
+
|
|
17
|
+
## Phase 2: Design Migration
|
|
18
|
+
|
|
19
|
+
1. **Determine affected entities and tables**
|
|
20
|
+
2. **Plan rollback strategy if applicable**
|
|
21
|
+
3. **Consider data volume and performance:**
|
|
22
|
+
- Use paging for large datasets (PageSize: 200-500)
|
|
23
|
+
- Set `dismissSendEvent: true` if entity events not needed
|
|
24
|
+
- Use `checkDiff: false` for bulk updates
|
|
25
|
+
|
|
26
|
+
## Phase 3: Generate Migration
|
|
27
|
+
|
|
28
|
+
Follow naming convention: `YYYYMMDDHHMMSS_MigrationName`
|
|
29
|
+
|
|
30
|
+
**For EF Core Schema Migration:**
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
dotnet ef migrations add MigrationName --project src/PlatformExampleApp/{Service}/{Service}.Persistence
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**For Data Migration (SQL Server/PostgreSQL):**
|
|
37
|
+
|
|
38
|
+
```csharp
|
|
39
|
+
public class YYYYMMDDHHMMSS_MigrationName : PlatformDataMigrationExecutor<{Service}DbContext>
|
|
40
|
+
{
|
|
41
|
+
public override string Name => "YYYYMMDDHHMMSS_MigrationName";
|
|
42
|
+
public override DateTime? OnlyForDbsCreatedBeforeDate => new(YYYY, MM, DD);
|
|
43
|
+
public override bool AllowRunInBackgroundThread => true;
|
|
44
|
+
|
|
45
|
+
public override async Task Execute({Service}DbContext dbContext)
|
|
46
|
+
{
|
|
47
|
+
var queryBuilder = repository.GetQueryBuilder(q => q.Where(FilterExpr()));
|
|
48
|
+
await RootServiceProvider.ExecuteInjectScopedPagingAsync(
|
|
49
|
+
maxItemCount: await repository.CountAsync(q => queryBuilder(q)),
|
|
50
|
+
pageSize: 200,
|
|
51
|
+
ExecutePaging,
|
|
52
|
+
queryBuilder);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
private static async Task<List<Entity>> ExecutePaging(
|
|
56
|
+
int skip, int take,
|
|
57
|
+
Func<IQueryable<Entity>, IQueryable<Entity>> qb,
|
|
58
|
+
IRepo<Entity> repo,
|
|
59
|
+
IPlatformUnitOfWorkManager uow)
|
|
60
|
+
{
|
|
61
|
+
using var unitOfWork = uow.Begin();
|
|
62
|
+
var items = await repo.GetAllAsync(q => qb(q).OrderBy(e => e.Id).Skip(skip).Take(take));
|
|
63
|
+
// Apply transformations
|
|
64
|
+
await repo.UpdateManyAsync(items, dismissSendEvent: true, checkDiff: false);
|
|
65
|
+
await unitOfWork.CompleteAsync();
|
|
66
|
+
return items;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**For MongoDB Migration:**
|
|
72
|
+
|
|
73
|
+
```csharp
|
|
74
|
+
internal sealed class YYYYMMDDHHMMSS_MigrationName : PlatformMongoMigrationExecutor<{Service}DbContext>
|
|
75
|
+
{
|
|
76
|
+
public override string Name => "YYYYMMDDHHMMSS_MigrationName";
|
|
77
|
+
public override DateTime? OnlyForDbInitBeforeDate => new(YYYY, MM, DD);
|
|
78
|
+
public override DateTime? ExpirationDate => new(YYYY, MM, DD); // Optional: auto-delete after date
|
|
79
|
+
|
|
80
|
+
public override async Task Execute({Service}DbContext dbContext)
|
|
81
|
+
{
|
|
82
|
+
// Ensure indexes
|
|
83
|
+
await dbContext.EnsureInboxBusMessageCollectionIndexesAsync(true);
|
|
84
|
+
await dbContext.EnsureOutboxBusMessageCollectionIndexesAsync(true);
|
|
85
|
+
|
|
86
|
+
// Or custom index/data operations
|
|
87
|
+
var collection = dbContext.GetCollection<Entity>();
|
|
88
|
+
await collection.Indexes.CreateOneAsync(
|
|
89
|
+
new CreateIndexModel<Entity>(
|
|
90
|
+
Builders<Entity>.IndexKeys.Ascending(e => e.Field),
|
|
91
|
+
new CreateIndexOptions { Unique = true }));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Phase 4: Verify
|
|
97
|
+
|
|
98
|
+
- [ ] Migration is idempotent (safe to run multiple times)
|
|
99
|
+
- [ ] Large datasets use paging
|
|
100
|
+
- [ ] Proper error handling
|
|
101
|
+
- [ ] Unit of work for transactions
|
|
102
|
+
- [ ] `OnlyForDbsCreatedBeforeDate` set correctly
|
|
103
|
+
- [ ] Tested with sample data
|
|
104
|
+
|
|
105
|
+
## Phase 5: Wait for Approval
|
|
106
|
+
|
|
107
|
+
**CRITICAL:** Present your migration design and wait for explicit user approval before creating files.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
Use `backend-data-migration` skill for detailed guidance.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Analyze Performance: $ARGUMENTS
|
|
2
|
+
|
|
3
|
+
Analyze and optimize performance for: $ARGUMENTS
|
|
4
|
+
|
|
5
|
+
## Phase 1: Identify Bottleneck Type
|
|
6
|
+
|
|
7
|
+
1. **Database queries:**
|
|
8
|
+
- N+1 query problems
|
|
9
|
+
- Missing indexes
|
|
10
|
+
- Inefficient projections
|
|
11
|
+
- Full table scans
|
|
12
|
+
|
|
13
|
+
2. **API endpoint latency:**
|
|
14
|
+
- Serialization overhead
|
|
15
|
+
- Unnecessary data loading
|
|
16
|
+
- Missing caching
|
|
17
|
+
- Sequential operations that could be parallel
|
|
18
|
+
|
|
19
|
+
3. **Frontend rendering:**
|
|
20
|
+
- Excessive change detection
|
|
21
|
+
- Large component trees
|
|
22
|
+
- Missing OnPush strategy
|
|
23
|
+
- Unnecessary re-renders
|
|
24
|
+
|
|
25
|
+
4. **Memory issues:**
|
|
26
|
+
- Subscription leaks
|
|
27
|
+
- Large object retention
|
|
28
|
+
- Missing cleanup in ngOnDestroy
|
|
29
|
+
|
|
30
|
+
## Phase 2: Investigation
|
|
31
|
+
|
|
32
|
+
### Backend Analysis
|
|
33
|
+
|
|
34
|
+
1. **Check repository patterns:**
|
|
35
|
+
|
|
36
|
+
```csharp
|
|
37
|
+
// ✅ Eager load related entities
|
|
38
|
+
await repository.GetAllAsync(expr, ct, e => e.RelatedEntity, e => e.AnotherRelated)
|
|
39
|
+
|
|
40
|
+
// ❌ N+1 problem - separate query per item
|
|
41
|
+
foreach (item in items) { await repo.GetById(item.RelatedId) }
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
2. **Review query builders:**
|
|
45
|
+
|
|
46
|
+
```csharp
|
|
47
|
+
// ✅ Use projections to reduce data transfer
|
|
48
|
+
.Select(e => new { e.Id, e.Name, e.Status })
|
|
49
|
+
|
|
50
|
+
// ❌ Loading full entities when only IDs needed
|
|
51
|
+
.Select(e => e).ToList().Select(e => e.Id)
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
3. **Check for parallel operations:**
|
|
55
|
+
|
|
56
|
+
```csharp
|
|
57
|
+
// ✅ Parallel tuple queries
|
|
58
|
+
var (total, items, counts) = await (
|
|
59
|
+
repository.CountAsync(queryBuilder, ct),
|
|
60
|
+
repository.GetAllAsync(queryBuilder.PageBy(skip, take), ct),
|
|
61
|
+
repository.GetGroupedCountsAsync(queryBuilder, ct)
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
// ❌ Sequential when independent
|
|
65
|
+
var total = await repository.CountAsync(queryBuilder, ct);
|
|
66
|
+
var items = await repository.GetAllAsync(queryBuilder.PageBy(skip, take), ct);
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
4. **Review full-text search usage:**
|
|
70
|
+
```csharp
|
|
71
|
+
// ✅ Use IPlatformFullTextSearchPersistenceService
|
|
72
|
+
.PipeIf(searchText.IsNotNullOrEmpty(), q =>
|
|
73
|
+
searchService.Search(q, searchText, Entity.SearchColumns()))
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Frontend Analysis
|
|
77
|
+
|
|
78
|
+
1. **Check signal usage and change detection**
|
|
79
|
+
2. **Review store patterns for unnecessary emissions**
|
|
80
|
+
3. **Verify `untilDestroyed()` on all subscriptions**
|
|
81
|
+
4. **Check for `trackBy` in `@for` loops**
|
|
82
|
+
5. **Review `observerLoadingErrorState` usage**
|
|
83
|
+
|
|
84
|
+
## Phase 3: Profiling Commands
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Backend - Check EF Core query logging
|
|
88
|
+
# Enable in appsettings.Development.json:
|
|
89
|
+
# "Logging": { "LogLevel": { "Microsoft.EntityFrameworkCore.Database.Command": "Information" } }
|
|
90
|
+
|
|
91
|
+
# Frontend - Angular DevTools profiler
|
|
92
|
+
# Use Angular DevTools Chrome extension
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Phase 4: Optimization Plan
|
|
96
|
+
|
|
97
|
+
Present findings with:
|
|
98
|
+
|
|
99
|
+
- Current performance metrics (if measurable)
|
|
100
|
+
- Root cause identification with file:line references
|
|
101
|
+
- Targeted fix recommendations
|
|
102
|
+
- Expected improvement rationale
|
|
103
|
+
|
|
104
|
+
## Phase 5: Wait for Approval
|
|
105
|
+
|
|
106
|
+
**CRITICAL:** Present your findings and optimization plan. Wait for explicit user approval before making changes.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
Use `arch-performance-optimization` skill for detailed guidance.
|