cokit-cli 1.0.9 → 1.2.2
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 +32 -32
- package/README.FLOW.md +237 -237
- package/README.md +142 -92
- package/agents/brainstormer.agent.md +71 -71
- package/agents/code-reviewer.agent.md +136 -136
- package/agents/code-simplifier.agent.md +43 -0
- package/agents/debugger.agent.md +128 -128
- package/agents/docs-manager.agent.md +121 -121
- package/agents/fullstack-developer.agent.md +52 -0
- package/agents/git-manager.agent.md +390 -390
- package/agents/planner.agent.md +94 -94
- package/agents/researcher.agent.md +31 -32
- package/agents/scout.agent.md +107 -107
- package/agents/tester.agent.md +117 -117
- package/agents/ui-ux-designer.agent.md +57 -0
- package/bin/cokit.js +4 -4
- package/collections/ck-core.collection.yml +28 -28
- package/collections/ck-development-rules.collection.yml +18 -18
- package/collections/ck-documentation.collection.yml +14 -14
- package/collections/ck-git-workflow.collection.yml +12 -12
- package/collections/ck-orchestration.collection.yml +16 -16
- package/docs/README.md +75 -108
- package/docs/code-standards.md +68 -0
- package/docs/codebase-summary.md +263 -0
- package/docs/cokit-commands-usage-guide.md +138 -0
- package/docs/cokit-comprehensive-mapping-guide.md +361 -374
- package/docs/cokit-slides.md +212 -222
- package/docs/cokit-sync-and-maintenance-guide.md +414 -0
- package/docs/cokit-team-presentation.md +356 -378
- package/docs/copilot-processing-flow.md +215 -212
- package/docs/guide-next-steps-speckit-cokit-implementation.md +187 -0
- package/docs/migration-guide.md +133 -133
- package/docs/project-overview-pdr.md +45 -0
- package/docs/project-roadmap.md +308 -280
- package/docs/system-architecture.md +81 -0
- package/instructions/ck-backend.instructions.md +48 -48
- package/instructions/ck-development.instructions.md +54 -54
- package/instructions/ck-frontend.instructions.md +44 -44
- package/instructions/ck-research.instructions.md +167 -167
- package/instructions/ck-testing.instructions.md +36 -36
- package/package.json +71 -42
- package/prompts/ck-ask.prompt.md +67 -57
- package/prompts/ck-bootstrap.prompt.md +141 -136
- package/prompts/ck-brainstorm.prompt.md +87 -105
- package/prompts/ck-cook.prompt.md +96 -97
- package/prompts/ck-debug.prompt.md +115 -14
- package/prompts/ck-docs.prompt.md +102 -51
- package/prompts/ck-fix-ci.prompt.md +46 -0
- package/prompts/ck-fix-fast.prompt.md +44 -0
- package/prompts/ck-fix-hard.prompt.md +60 -0
- package/prompts/ck-fix-logs.prompt.md +53 -0
- package/prompts/ck-fix-test.prompt.md +47 -0
- package/prompts/ck-fix-types.prompt.md +29 -0
- package/prompts/ck-fix-ui.prompt.md +50 -0
- package/prompts/ck-fix.prompt.md +50 -44
- package/prompts/ck-git.prompt.md +104 -79
- package/{templates/repo/.github/prompts/ck-ck-help.prompt.md → prompts/ck-help.prompt.md} +142 -112
- package/prompts/ck-journal.prompt.md +19 -0
- package/prompts/ck-plan-fast.prompt.md +106 -0
- package/prompts/ck-plan-hard.prompt.md +133 -0
- package/prompts/ck-plan-validate.prompt.md +209 -0
- package/prompts/ck-plan.prompt.md +75 -80
- package/prompts/ck-preview.prompt.md +77 -0
- package/{templates/repo/.github/prompts/ck-review-codebase.prompt.md → prompts/ck-review.prompt.md} +58 -44
- package/prompts/ck-scout.prompt.md +85 -25
- package/prompts/ck-simplify.prompt.md +46 -0
- package/prompts/ck-spec-analyze.prompt.md +201 -0
- package/prompts/ck-spec-checklist.prompt.md +308 -0
- package/prompts/ck-spec-clarify.prompt.md +190 -0
- package/prompts/ck-spec-constitution.prompt.md +92 -0
- package/prompts/ck-spec-implement.prompt.md +157 -0
- package/prompts/ck-spec-plan.prompt.md +95 -0
- package/prompts/ck-spec-specify.prompt.md +260 -0
- package/prompts/ck-spec-tasks.prompt.md +181 -0
- package/prompts/ck-test.prompt.md +21 -10
- package/prompts/ck-watzup.prompt.md +21 -0
- package/skills/INSTALLATION.md +311 -0
- package/skills/README.md +112 -0
- package/skills/THIRD_PARTY_NOTICES.md +405 -0
- package/skills/agent-browser/SKILL.md +291 -0
- package/skills/agent-browser/references/.gitkeep +0 -0
- package/skills/agent-browser/references/browserbase-cloud-setup.md +161 -0
- package/skills/agent_skills_spec.md +55 -0
- package/skills/{ck-backend-development → backend-development}/SKILL.md +94 -96
- package/skills/{ck-backend-development → backend-development}/references/backend-api-design.md +697 -495
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-architecture.md +454 -454
- package/skills/{ck-backend-development → backend-development}/references/backend-authentication.md +433 -338
- package/skills/{ck-backend-development → backend-development}/references/backend-code-quality.md +659 -659
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-debugging.md +904 -904
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-devops.md +494 -494
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-mindset.md +387 -387
- package/skills/{ck-backend-development → backend-development}/references/backend-performance.md +397 -397
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-security.md +340 -290
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-technologies.md +300 -290
- package/{templates/repo/.github/skills/ck-backend-development → skills/backend-development}/references/backend-testing.md +484 -561
- package/skills/brainstorm/SKILL.md +74 -0
- package/skills/{ck-code-review → code-review}/SKILL.md +143 -143
- package/skills/{ck-code-review → code-review}/references/code-review-reception.md +1 -1
- package/skills/{ck-code-review → code-review}/references/requesting-code-review.md +7 -7
- package/skills/common/README.md +120 -0
- package/skills/common/api_key_helper.py +411 -0
- package/skills/common/api_key_rotator.py +248 -0
- package/skills/context-engineering/SKILL.md +106 -0
- package/skills/context-engineering/references/context-compression.md +84 -0
- package/skills/context-engineering/references/context-degradation.md +93 -0
- package/skills/context-engineering/references/context-fundamentals.md +75 -0
- package/skills/context-engineering/references/context-optimization.md +82 -0
- package/skills/context-engineering/references/evaluation.md +89 -0
- package/skills/context-engineering/references/memory-systems.md +88 -0
- package/skills/context-engineering/references/multi-agent-patterns.md +90 -0
- package/skills/context-engineering/references/project-development.md +97 -0
- package/skills/context-engineering/references/runtime-awareness.md +202 -0
- package/skills/context-engineering/references/tool-design.md +86 -0
- package/skills/context-engineering/scripts/compression_evaluator.py +349 -0
- package/skills/context-engineering/scripts/context_analyzer.py +317 -0
- package/skills/cook/README.md +86 -0
- package/skills/cook/SKILL.md +93 -0
- package/skills/cook/references/agent-patterns.md +75 -0
- package/skills/cook/references/intent-detection.md +101 -0
- package/skills/cook/references/review-cycle.md +75 -0
- package/skills/cook/references/workflow-steps.md +140 -0
- package/skills/databases/SKILL.md +111 -0
- package/skills/databases/analytics.md +198 -0
- package/skills/databases/db-design.md +188 -0
- package/skills/databases/incremental-etl.md +213 -0
- package/skills/databases/references/mongodb-aggregation.md +447 -0
- package/skills/databases/references/mongodb-atlas.md +465 -0
- package/skills/databases/references/mongodb-crud.md +408 -0
- package/skills/databases/references/mongodb-indexing.md +442 -0
- package/skills/databases/references/postgresql-administration.md +594 -0
- package/skills/databases/references/postgresql-performance.md +527 -0
- package/skills/databases/references/postgresql-psql-cli.md +467 -0
- package/skills/databases/references/postgresql-queries.md +475 -0
- package/skills/databases/scripts/db_backup.py +502 -0
- package/skills/databases/scripts/db_migrate.py +426 -0
- package/skills/databases/scripts/db_performance_check.py +457 -0
- package/skills/databases/scripts/requirements.txt +20 -0
- package/skills/databases/stacks/bigquery.md +231 -0
- package/skills/databases/stacks/d1_cloudflare.md +137 -0
- package/skills/databases/stacks/mysql.md +216 -0
- package/skills/databases/stacks/postgres.md +235 -0
- package/skills/databases/stacks/sqlite.md +244 -0
- package/skills/databases/transactional.md +176 -0
- package/{templates/repo/.github/skills/ck-debugging → skills/debug}/SKILL.md +83 -82
- package/{templates/repo/.github/skills/ck-debugging → skills/debug}/references/defense-in-depth.md +124 -124
- package/skills/{ck-debugging → debug}/references/root-cause-tracing.md +122 -122
- package/{templates/repo/.github/skills/ck-debugging → skills/debug}/references/systematic-debugging.md +102 -102
- package/skills/{ck-debugging → debug}/references/verification.md +123 -123
- package/{templates/repo/.github/skills/ck-debugging → skills/debug}/scripts/find-polluter.sh +63 -63
- package/{templates/repo/.github/skills/ck-debugging → skills/debug}/scripts/find-polluter.test.md +102 -102
- package/skills/devops/.env.example +76 -0
- package/skills/devops/SKILL.md +102 -0
- package/skills/devops/references/browser-rendering.md +305 -0
- package/skills/devops/references/cloudflare-d1-kv.md +123 -0
- package/skills/devops/references/cloudflare-platform.md +271 -0
- package/skills/devops/references/cloudflare-r2-storage.md +280 -0
- package/skills/devops/references/cloudflare-workers-advanced.md +312 -0
- package/skills/devops/references/cloudflare-workers-apis.md +309 -0
- package/skills/devops/references/cloudflare-workers-basics.md +418 -0
- package/skills/devops/references/docker-basics.md +297 -0
- package/skills/devops/references/docker-compose.md +292 -0
- package/skills/devops/references/gcloud-platform.md +297 -0
- package/skills/devops/references/gcloud-services.md +304 -0
- package/skills/devops/references/kubernetes-basics.md +99 -0
- package/skills/devops/references/kubernetes-helm-advanced.md +75 -0
- package/skills/devops/references/kubernetes-helm.md +81 -0
- package/skills/devops/references/kubernetes-kubectl.md +74 -0
- package/skills/devops/references/kubernetes-security-advanced.md +98 -0
- package/skills/devops/references/kubernetes-security.md +95 -0
- package/skills/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
- package/skills/devops/references/kubernetes-troubleshooting.md +49 -0
- package/skills/devops/references/kubernetes-workflows-advanced.md +75 -0
- package/skills/devops/references/kubernetes-workflows.md +78 -0
- package/skills/devops/scripts/cloudflare_deploy.py +269 -0
- package/skills/devops/scripts/docker_optimize.py +332 -0
- package/skills/devops/scripts/requirements.txt +20 -0
- package/skills/docs-seeker/.env.example +15 -0
- package/skills/docs-seeker/SKILL.md +96 -0
- package/skills/docs-seeker/package.json +25 -0
- package/skills/docs-seeker/references/advanced.md +79 -0
- package/skills/docs-seeker/references/context7-patterns.md +64 -0
- package/skills/docs-seeker/references/errors.md +68 -0
- package/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/skills/docs-seeker/scripts/detect-topic.js +172 -0
- package/skills/docs-seeker/scripts/fetch-docs.js +214 -0
- package/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
- package/skills/docs-seeker/workflows/library-search.md +86 -0
- package/skills/docs-seeker/workflows/repo-analysis.md +91 -0
- package/skills/docs-seeker/workflows/topic-search.md +77 -0
- package/skills/fix/SKILL.md +100 -0
- package/skills/fix/references/complexity-assessment.md +61 -0
- package/skills/fix/references/mode-selection.md +30 -0
- package/skills/fix/references/parallel-exploration.md +77 -0
- package/skills/fix/references/review-cycle.md +77 -0
- package/skills/fix/references/skill-activation-matrix.md +65 -0
- package/skills/fix/references/workflow-ci.md +28 -0
- package/skills/fix/references/workflow-deep.md +91 -0
- package/skills/fix/references/workflow-logs.md +36 -0
- package/skills/fix/references/workflow-quick.md +59 -0
- package/skills/fix/references/workflow-standard.md +86 -0
- package/skills/fix/references/workflow-test.md +36 -0
- package/skills/fix/references/workflow-types.md +33 -0
- package/skills/fix/references/workflow-ui.md +34 -0
- package/skills/frontend-design/SKILL.md +74 -0
- package/skills/frontend-design/references/analysis-best-practices.md +80 -0
- package/skills/frontend-design/references/analysis-prompts.md +141 -0
- package/skills/frontend-design/references/analysis-techniques.md +118 -0
- package/skills/frontend-design/references/animejs.md +396 -0
- package/skills/frontend-design/references/asset-generation.md +161 -0
- package/skills/frontend-design/references/design-extraction-overview.md +71 -0
- package/skills/frontend-design/references/extraction-best-practices.md +141 -0
- package/skills/frontend-design/references/extraction-output-templates.md +162 -0
- package/skills/frontend-design/references/extraction-prompts.md +127 -0
- package/skills/frontend-design/references/technical-accessibility.md +119 -0
- package/skills/frontend-design/references/technical-best-practices.md +97 -0
- package/skills/frontend-design/references/technical-optimization.md +44 -0
- package/skills/frontend-design/references/technical-overview.md +90 -0
- package/skills/frontend-design/references/technical-workflows.md +150 -0
- package/skills/frontend-design/references/visual-analysis-overview.md +95 -0
- package/skills/frontend-design/references/workflow-describe.md +86 -0
- package/skills/frontend-design/references/workflow-quick.md +54 -0
- package/skills/frontend-design/references/workflow-screenshot.md +62 -0
- package/skills/git/SKILL.md +99 -0
- package/skills/git/references/branch-management.md +88 -0
- package/skills/git/references/commit-standards.md +46 -0
- package/skills/git/references/gh-cli-guide.md +109 -0
- package/skills/git/references/safety-protocols.md +69 -0
- package/skills/git/references/workflow-commit.md +58 -0
- package/skills/git/references/workflow-merge.md +48 -0
- package/skills/git/references/workflow-pr.md +58 -0
- package/skills/git/references/workflow-push.md +52 -0
- package/skills/install.ps1 +1247 -0
- package/skills/install.sh +1300 -0
- package/skills/mcp-management/README.md +219 -0
- package/skills/mcp-management/SKILL.md +209 -0
- package/skills/mcp-management/assets/tools.json +3146 -0
- package/skills/mcp-management/references/configuration.md +114 -0
- package/skills/mcp-management/references/gemini-cli-integration.md +221 -0
- package/skills/mcp-management/references/mcp-protocol.md +116 -0
- package/skills/mcp-management/scripts/.env.example +10 -0
- package/skills/mcp-management/scripts/cli.ts +195 -0
- package/skills/mcp-management/scripts/dist/analyze-tools.js +70 -0
- package/skills/mcp-management/scripts/dist/cli.js +160 -0
- package/skills/mcp-management/scripts/dist/mcp-client.js +183 -0
- package/skills/mcp-management/scripts/mcp-client.ts +230 -0
- package/skills/mcp-management/scripts/package.json +20 -0
- package/skills/mcp-management/scripts/tsconfig.json +15 -0
- package/skills/mermaidjs-v11/SKILL.md +115 -0
- package/skills/mermaidjs-v11/references/cli-usage.md +228 -0
- package/skills/mermaidjs-v11/references/configuration.md +232 -0
- package/skills/mermaidjs-v11/references/diagram-types.md +315 -0
- package/skills/mermaidjs-v11/references/examples.md +344 -0
- package/skills/mermaidjs-v11/references/integration.md +310 -0
- package/skills/{ck-planning → planning}/SKILL.md +131 -112
- package/{templates/repo/.github/skills/ck-planning → skills/planning}/references/codebase-understanding.md +62 -62
- package/skills/{ck-planning → planning}/references/output-standards.md +141 -127
- package/{templates/repo/.github/skills/ck-planning → skills/planning}/references/plan-organization.md +160 -150
- package/skills/{ck-planning → planning}/references/research-phase.md +49 -49
- package/{templates/repo/.github/skills/ck-planning → skills/planning}/references/solution-design.md +63 -63
- package/skills/{ck-problem-solving → problem-solving}/SKILL.md +95 -95
- package/{templates/repo/.github/skills/ck-problem-solving → skills/problem-solving}/references/attribution.md +69 -69
- package/skills/{ck-problem-solving → problem-solving}/references/collision-zone-thinking.md +79 -79
- package/{templates/repo/.github/skills/ck-problem-solving → skills/problem-solving}/references/inversion-exercise.md +91 -91
- package/skills/{ck-problem-solving → problem-solving}/references/meta-pattern-recognition.md +87 -87
- package/skills/{ck-problem-solving → problem-solving}/references/scale-game.md +95 -95
- package/skills/{ck-problem-solving → problem-solving}/references/simplification-cascades.md +80 -80
- package/{templates/repo/.github/skills/ck-problem-solving → skills/problem-solving}/references/when-stuck.md +72 -72
- package/skills/repomix/SKILL.md +247 -0
- package/skills/repomix/references/configuration.md +211 -0
- package/skills/repomix/references/usage-patterns.md +232 -0
- package/skills/repomix/scripts/README.md +179 -0
- package/skills/repomix/scripts/repomix_batch.py +455 -0
- package/skills/repomix/scripts/repos.example.json +15 -0
- package/skills/repomix/scripts/requirements.txt +15 -0
- package/skills/research/SKILL.md +169 -0
- package/skills/scout/SKILL.md +78 -0
- package/skills/scout/references/external-scouting.md +140 -0
- package/skills/scout/references/internal-scouting.md +119 -0
- package/skills/{ck-sequential-thinking → sequential-thinking}/.env.example +8 -8
- package/skills/{ck-sequential-thinking → sequential-thinking}/README.md +183 -183
- package/{templates/repo/.github/skills/ck-sequential-thinking → skills/sequential-thinking}/SKILL.md +92 -92
- package/skills/{ck-sequential-thinking → sequential-thinking}/package.json +31 -31
- package/{templates/repo/.github/skills/ck-sequential-thinking → skills/sequential-thinking}/references/advanced-strategies.md +79 -79
- package/{templates/repo/.github/skills/ck-sequential-thinking → skills/sequential-thinking}/references/advanced-techniques.md +76 -76
- package/{templates/repo/.github/skills/ck-sequential-thinking → skills/sequential-thinking}/references/core-patterns.md +95 -95
- package/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-api.md +88 -88
- package/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-architecture.md +94 -94
- package/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-debug.md +90 -90
- package/skills/{ck-sequential-thinking → sequential-thinking}/scripts/format-thought.js +159 -159
- package/{templates/repo/.github/skills/ck-sequential-thinking → skills/sequential-thinking}/scripts/process-thought.js +236 -236
- package/skills/ui-styling/LICENSE.txt +202 -0
- package/skills/ui-styling/SKILL.md +319 -0
- package/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/skills/ui-styling/references/canvas-design-system.md +320 -0
- package/skills/ui-styling/references/shadcn-accessibility.md +471 -0
- package/skills/ui-styling/references/shadcn-components.md +424 -0
- package/skills/ui-styling/references/shadcn-theming.md +373 -0
- package/skills/ui-styling/references/tailwind-customization.md +483 -0
- package/skills/ui-styling/references/tailwind-responsive.md +382 -0
- package/skills/ui-styling/references/tailwind-utilities.md +455 -0
- package/skills/ui-styling/scripts/requirements.txt +17 -0
- package/skills/ui-styling/scripts/shadcn_add.py +292 -0
- package/skills/ui-styling/scripts/tailwind_config_gen.py +456 -0
- package/skills/web-testing/SKILL.md +94 -0
- package/skills/web-testing/references/accessibility-testing.md +84 -0
- package/skills/web-testing/references/api-testing.md +78 -0
- package/skills/web-testing/references/ci-cd-testing-workflows.md +121 -0
- package/skills/web-testing/references/component-testing.md +94 -0
- package/skills/web-testing/references/contract-testing.md +146 -0
- package/skills/web-testing/references/cross-browser-checklist.md +72 -0
- package/skills/web-testing/references/database-testing.md +139 -0
- package/skills/web-testing/references/e2e-testing-playwright.md +119 -0
- package/skills/web-testing/references/functional-testing-checklist.md +88 -0
- package/skills/web-testing/references/interactive-testing-patterns.md +89 -0
- package/skills/web-testing/references/load-testing-k6.md +93 -0
- package/skills/web-testing/references/mobile-gesture-testing.md +85 -0
- package/skills/web-testing/references/performance-core-web-vitals.md +124 -0
- package/skills/web-testing/references/playwright-component-testing.md +115 -0
- package/skills/web-testing/references/pre-release-checklist.md +75 -0
- package/skills/web-testing/references/security-checklists.md +81 -0
- package/skills/web-testing/references/security-testing-overview.md +92 -0
- package/skills/web-testing/references/shadow-dom-testing.md +70 -0
- package/skills/web-testing/references/test-data-management.md +131 -0
- package/skills/web-testing/references/test-flakiness-mitigation.md +86 -0
- package/skills/web-testing/references/testing-pyramid-strategy.md +76 -0
- package/skills/web-testing/references/unit-integration-testing.md +138 -0
- package/skills/web-testing/references/visual-regression.md +92 -0
- package/skills/web-testing/references/vulnerability-payloads.md +93 -0
- package/skills/web-testing/scripts/analyze-test-results.js +280 -0
- package/skills/web-testing/scripts/init-playwright.js +233 -0
- package/src/commands/add.js +93 -93
- package/src/commands/doctor.js +117 -117
- package/src/commands/init.js +183 -183
- package/src/commands/list.js +91 -91
- package/src/commands/update.js +22 -22
- package/src/index.js +35 -35
- package/src/utils/colors.js +14 -14
- package/src/utils/copy.js +122 -122
- package/src/utils/paths.js +66 -66
- package/src/utils/update-checker.js +126 -126
- package/templates/repo/.github/AGENTS.md +103 -55
- package/templates/repo/.github/agents/brainstormer.agent.md +71 -71
- package/templates/repo/.github/agents/code-reviewer.agent.md +136 -136
- package/templates/repo/.github/agents/code-simplifier.agent.md +43 -0
- package/templates/repo/.github/agents/debugger.agent.md +128 -128
- package/templates/repo/.github/agents/docs-manager.agent.md +121 -121
- package/templates/repo/.github/agents/fullstack-developer.agent.md +52 -0
- package/templates/repo/.github/agents/git-manager.agent.md +390 -390
- package/templates/repo/.github/agents/planner.agent.md +94 -94
- package/templates/repo/.github/agents/researcher.agent.md +31 -32
- package/templates/repo/.github/agents/scout.agent.md +107 -107
- package/templates/repo/.github/agents/tester.agent.md +117 -117
- package/templates/repo/.github/agents/ui-ux-designer.agent.md +57 -0
- package/templates/repo/.github/collections/ck-core.collection.yml +28 -28
- package/templates/repo/.github/collections/ck-development-rules.collection.yml +18 -18
- package/templates/repo/.github/collections/ck-documentation.collection.yml +14 -14
- package/templates/repo/.github/collections/ck-git-workflow.collection.yml +12 -12
- package/templates/repo/.github/collections/ck-orchestration.collection.yml +16 -16
- package/templates/repo/.github/instructions/ck-backend.instructions.md +48 -48
- package/templates/repo/.github/instructions/ck-development.instructions.md +54 -54
- package/templates/repo/.github/instructions/ck-frontend.instructions.md +44 -44
- package/templates/repo/.github/instructions/ck-research.instructions.md +167 -167
- package/templates/repo/.github/instructions/ck-testing.instructions.md +36 -36
- package/templates/repo/.github/prompts/ck-ask.prompt.md +67 -57
- package/templates/repo/.github/prompts/ck-bootstrap.prompt.md +141 -136
- package/templates/repo/.github/prompts/ck-brainstorm.prompt.md +87 -105
- package/templates/repo/.github/prompts/ck-cook.prompt.md +96 -97
- package/templates/repo/.github/prompts/ck-debug.prompt.md +115 -14
- package/templates/repo/.github/prompts/ck-docs.prompt.md +102 -51
- package/templates/repo/.github/prompts/ck-fix-ci.prompt.md +46 -0
- package/templates/repo/.github/prompts/ck-fix-fast.prompt.md +44 -0
- package/templates/repo/.github/prompts/ck-fix-hard.prompt.md +60 -0
- package/templates/repo/.github/prompts/ck-fix-logs.prompt.md +53 -0
- package/templates/repo/.github/prompts/ck-fix-test.prompt.md +47 -0
- package/templates/repo/.github/prompts/ck-fix-types.prompt.md +29 -0
- package/templates/repo/.github/prompts/ck-fix-ui.prompt.md +50 -0
- package/templates/repo/.github/prompts/ck-fix.prompt.md +50 -44
- package/templates/repo/.github/prompts/ck-git.prompt.md +104 -79
- package/{prompts/ck-ck-help.prompt.md → templates/repo/.github/prompts/ck-help.prompt.md} +142 -112
- package/templates/repo/.github/prompts/ck-journal.prompt.md +19 -0
- package/templates/repo/.github/prompts/ck-plan-fast.prompt.md +106 -0
- package/templates/repo/.github/prompts/ck-plan-hard.prompt.md +133 -0
- package/templates/repo/.github/prompts/ck-plan-validate.prompt.md +209 -0
- package/templates/repo/.github/prompts/ck-plan.prompt.md +75 -80
- package/templates/repo/.github/prompts/ck-preview.prompt.md +77 -0
- package/{prompts/ck-review-codebase.prompt.md → templates/repo/.github/prompts/ck-review.prompt.md} +58 -44
- package/templates/repo/.github/prompts/ck-scout.prompt.md +85 -25
- package/templates/repo/.github/prompts/ck-simplify.prompt.md +46 -0
- package/templates/repo/.github/prompts/ck-spec-analyze.prompt.md +201 -0
- package/templates/repo/.github/prompts/ck-spec-checklist.prompt.md +308 -0
- package/templates/repo/.github/prompts/ck-spec-clarify.prompt.md +190 -0
- package/templates/repo/.github/prompts/ck-spec-constitution.prompt.md +92 -0
- package/templates/repo/.github/prompts/ck-spec-implement.prompt.md +157 -0
- package/templates/repo/.github/prompts/ck-spec-plan.prompt.md +95 -0
- package/templates/repo/.github/prompts/ck-spec-specify.prompt.md +260 -0
- package/templates/repo/.github/prompts/ck-spec-tasks.prompt.md +181 -0
- package/templates/repo/.github/prompts/ck-test.prompt.md +21 -10
- package/templates/repo/.github/prompts/ck-watzup.prompt.md +21 -0
- package/templates/repo/.github/skills/INSTALLATION.md +311 -0
- package/templates/repo/.github/skills/README.md +112 -0
- package/templates/repo/.github/skills/THIRD_PARTY_NOTICES.md +405 -0
- package/templates/repo/.github/skills/agent-browser/SKILL.md +291 -0
- package/templates/repo/.github/skills/agent-browser/references/.gitkeep +0 -0
- package/templates/repo/.github/skills/agent-browser/references/browserbase-cloud-setup.md +161 -0
- package/templates/repo/.github/skills/agent_skills_spec.md +55 -0
- package/templates/repo/.github/skills/{ck-backend-development → backend-development}/SKILL.md +94 -96
- package/templates/repo/.github/skills/{ck-backend-development → backend-development}/references/backend-api-design.md +697 -495
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-architecture.md +454 -454
- package/templates/repo/.github/skills/{ck-backend-development → backend-development}/references/backend-authentication.md +433 -338
- package/templates/repo/.github/skills/{ck-backend-development → backend-development}/references/backend-code-quality.md +659 -659
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-debugging.md +904 -904
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-devops.md +494 -494
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-mindset.md +387 -387
- package/templates/repo/.github/skills/{ck-backend-development → backend-development}/references/backend-performance.md +397 -397
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-security.md +340 -290
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-technologies.md +300 -290
- package/{skills/ck-backend-development → templates/repo/.github/skills/backend-development}/references/backend-testing.md +484 -561
- package/templates/repo/.github/skills/brainstorm/SKILL.md +74 -0
- package/templates/repo/.github/skills/{ck-code-review → code-review}/SKILL.md +143 -143
- package/templates/repo/.github/skills/{ck-code-review → code-review}/references/code-review-reception.md +208 -208
- package/templates/repo/.github/skills/{ck-code-review → code-review}/references/requesting-code-review.md +104 -104
- package/templates/repo/.github/skills/{ck-code-review → code-review}/references/verification-before-completion.md +138 -138
- package/templates/repo/.github/skills/common/README.md +120 -0
- package/templates/repo/.github/skills/common/api_key_helper.py +411 -0
- package/templates/repo/.github/skills/common/api_key_rotator.py +248 -0
- package/templates/repo/.github/skills/context-engineering/SKILL.md +106 -0
- package/templates/repo/.github/skills/context-engineering/references/context-compression.md +84 -0
- package/templates/repo/.github/skills/context-engineering/references/context-degradation.md +93 -0
- package/templates/repo/.github/skills/context-engineering/references/context-fundamentals.md +75 -0
- package/templates/repo/.github/skills/context-engineering/references/context-optimization.md +82 -0
- package/templates/repo/.github/skills/context-engineering/references/evaluation.md +89 -0
- package/templates/repo/.github/skills/context-engineering/references/memory-systems.md +88 -0
- package/templates/repo/.github/skills/context-engineering/references/multi-agent-patterns.md +90 -0
- package/templates/repo/.github/skills/context-engineering/references/project-development.md +97 -0
- package/templates/repo/.github/skills/context-engineering/references/runtime-awareness.md +202 -0
- package/templates/repo/.github/skills/context-engineering/references/tool-design.md +86 -0
- package/templates/repo/.github/skills/context-engineering/scripts/compression_evaluator.py +349 -0
- package/templates/repo/.github/skills/context-engineering/scripts/context_analyzer.py +317 -0
- package/templates/repo/.github/skills/cook/README.md +86 -0
- package/templates/repo/.github/skills/cook/SKILL.md +93 -0
- package/templates/repo/.github/skills/cook/references/agent-patterns.md +75 -0
- package/templates/repo/.github/skills/cook/references/intent-detection.md +101 -0
- package/templates/repo/.github/skills/cook/references/review-cycle.md +75 -0
- package/templates/repo/.github/skills/cook/references/workflow-steps.md +140 -0
- package/templates/repo/.github/skills/databases/SKILL.md +111 -0
- package/templates/repo/.github/skills/databases/analytics.md +198 -0
- package/templates/repo/.github/skills/databases/db-design.md +188 -0
- package/templates/repo/.github/skills/databases/incremental-etl.md +213 -0
- package/templates/repo/.github/skills/databases/references/mongodb-aggregation.md +447 -0
- package/templates/repo/.github/skills/databases/references/mongodb-atlas.md +465 -0
- package/templates/repo/.github/skills/databases/references/mongodb-crud.md +408 -0
- package/templates/repo/.github/skills/databases/references/mongodb-indexing.md +442 -0
- package/templates/repo/.github/skills/databases/references/postgresql-administration.md +594 -0
- package/templates/repo/.github/skills/databases/references/postgresql-performance.md +527 -0
- package/templates/repo/.github/skills/databases/references/postgresql-psql-cli.md +467 -0
- package/templates/repo/.github/skills/databases/references/postgresql-queries.md +475 -0
- package/templates/repo/.github/skills/databases/scripts/db_backup.py +502 -0
- package/templates/repo/.github/skills/databases/scripts/db_migrate.py +426 -0
- package/templates/repo/.github/skills/databases/scripts/db_performance_check.py +457 -0
- package/templates/repo/.github/skills/databases/scripts/requirements.txt +20 -0
- package/templates/repo/.github/skills/databases/stacks/bigquery.md +231 -0
- package/templates/repo/.github/skills/databases/stacks/d1_cloudflare.md +137 -0
- package/templates/repo/.github/skills/databases/stacks/mysql.md +216 -0
- package/templates/repo/.github/skills/databases/stacks/postgres.md +235 -0
- package/templates/repo/.github/skills/databases/stacks/sqlite.md +244 -0
- package/templates/repo/.github/skills/databases/transactional.md +176 -0
- package/{skills/ck-debugging → templates/repo/.github/skills/debug}/SKILL.md +83 -82
- package/{skills/ck-debugging → templates/repo/.github/skills/debug}/references/defense-in-depth.md +124 -124
- package/templates/repo/.github/skills/{ck-debugging → debug}/references/root-cause-tracing.md +122 -122
- package/{skills/ck-debugging → templates/repo/.github/skills/debug}/references/systematic-debugging.md +102 -102
- package/templates/repo/.github/skills/{ck-debugging → debug}/references/verification.md +123 -123
- package/{skills/ck-debugging → templates/repo/.github/skills/debug}/scripts/find-polluter.sh +63 -63
- package/{skills/ck-debugging → templates/repo/.github/skills/debug}/scripts/find-polluter.test.md +102 -102
- package/templates/repo/.github/skills/devops/.env.example +76 -0
- package/templates/repo/.github/skills/devops/SKILL.md +102 -0
- package/templates/repo/.github/skills/devops/references/browser-rendering.md +305 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-d1-kv.md +123 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-platform.md +271 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-r2-storage.md +280 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-workers-advanced.md +312 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-workers-apis.md +309 -0
- package/templates/repo/.github/skills/devops/references/cloudflare-workers-basics.md +418 -0
- package/templates/repo/.github/skills/devops/references/docker-basics.md +297 -0
- package/templates/repo/.github/skills/devops/references/docker-compose.md +292 -0
- package/templates/repo/.github/skills/devops/references/gcloud-platform.md +297 -0
- package/templates/repo/.github/skills/devops/references/gcloud-services.md +304 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-basics.md +99 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-helm-advanced.md +75 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-helm.md +81 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-kubectl.md +74 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-security-advanced.md +98 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-security.md +95 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-troubleshooting.md +49 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-workflows-advanced.md +75 -0
- package/templates/repo/.github/skills/devops/references/kubernetes-workflows.md +78 -0
- package/templates/repo/.github/skills/devops/scripts/cloudflare_deploy.py +269 -0
- package/templates/repo/.github/skills/devops/scripts/docker_optimize.py +332 -0
- package/templates/repo/.github/skills/devops/scripts/requirements.txt +20 -0
- package/templates/repo/.github/skills/docs-seeker/.env.example +15 -0
- package/templates/repo/.github/skills/docs-seeker/SKILL.md +96 -0
- package/templates/repo/.github/skills/docs-seeker/package.json +25 -0
- package/templates/repo/.github/skills/docs-seeker/references/advanced.md +79 -0
- package/templates/repo/.github/skills/docs-seeker/references/context7-patterns.md +64 -0
- package/templates/repo/.github/skills/docs-seeker/references/errors.md +68 -0
- package/templates/repo/.github/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/templates/repo/.github/skills/docs-seeker/scripts/detect-topic.js +172 -0
- package/templates/repo/.github/skills/docs-seeker/scripts/fetch-docs.js +214 -0
- package/templates/repo/.github/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
- package/templates/repo/.github/skills/docs-seeker/workflows/library-search.md +86 -0
- package/templates/repo/.github/skills/docs-seeker/workflows/repo-analysis.md +91 -0
- package/templates/repo/.github/skills/docs-seeker/workflows/topic-search.md +77 -0
- package/templates/repo/.github/skills/fix/SKILL.md +100 -0
- package/templates/repo/.github/skills/fix/references/complexity-assessment.md +61 -0
- package/templates/repo/.github/skills/fix/references/mode-selection.md +30 -0
- package/templates/repo/.github/skills/fix/references/parallel-exploration.md +77 -0
- package/templates/repo/.github/skills/fix/references/review-cycle.md +77 -0
- package/templates/repo/.github/skills/fix/references/skill-activation-matrix.md +65 -0
- package/templates/repo/.github/skills/fix/references/workflow-ci.md +28 -0
- package/templates/repo/.github/skills/fix/references/workflow-deep.md +91 -0
- package/templates/repo/.github/skills/fix/references/workflow-logs.md +36 -0
- package/templates/repo/.github/skills/fix/references/workflow-quick.md +59 -0
- package/templates/repo/.github/skills/fix/references/workflow-standard.md +86 -0
- package/templates/repo/.github/skills/fix/references/workflow-test.md +36 -0
- package/templates/repo/.github/skills/fix/references/workflow-types.md +33 -0
- package/templates/repo/.github/skills/fix/references/workflow-ui.md +34 -0
- package/templates/repo/.github/skills/frontend-design/SKILL.md +74 -0
- package/templates/repo/.github/skills/frontend-design/references/analysis-best-practices.md +80 -0
- package/templates/repo/.github/skills/frontend-design/references/analysis-prompts.md +141 -0
- package/templates/repo/.github/skills/frontend-design/references/analysis-techniques.md +118 -0
- package/templates/repo/.github/skills/frontend-design/references/animejs.md +396 -0
- package/templates/repo/.github/skills/frontend-design/references/asset-generation.md +161 -0
- package/templates/repo/.github/skills/frontend-design/references/design-extraction-overview.md +71 -0
- package/templates/repo/.github/skills/frontend-design/references/extraction-best-practices.md +141 -0
- package/templates/repo/.github/skills/frontend-design/references/extraction-output-templates.md +162 -0
- package/templates/repo/.github/skills/frontend-design/references/extraction-prompts.md +127 -0
- package/templates/repo/.github/skills/frontend-design/references/technical-accessibility.md +119 -0
- package/templates/repo/.github/skills/frontend-design/references/technical-best-practices.md +97 -0
- package/templates/repo/.github/skills/frontend-design/references/technical-optimization.md +44 -0
- package/templates/repo/.github/skills/frontend-design/references/technical-overview.md +90 -0
- package/templates/repo/.github/skills/frontend-design/references/technical-workflows.md +150 -0
- package/templates/repo/.github/skills/frontend-design/references/visual-analysis-overview.md +95 -0
- package/templates/repo/.github/skills/frontend-design/references/workflow-describe.md +86 -0
- package/templates/repo/.github/skills/frontend-design/references/workflow-quick.md +54 -0
- package/templates/repo/.github/skills/frontend-design/references/workflow-screenshot.md +62 -0
- package/templates/repo/.github/skills/git/SKILL.md +99 -0
- package/templates/repo/.github/skills/git/references/branch-management.md +88 -0
- package/templates/repo/.github/skills/git/references/commit-standards.md +46 -0
- package/templates/repo/.github/skills/git/references/gh-cli-guide.md +109 -0
- package/templates/repo/.github/skills/git/references/safety-protocols.md +69 -0
- package/templates/repo/.github/skills/git/references/workflow-commit.md +58 -0
- package/templates/repo/.github/skills/git/references/workflow-merge.md +48 -0
- package/templates/repo/.github/skills/git/references/workflow-pr.md +58 -0
- package/templates/repo/.github/skills/git/references/workflow-push.md +52 -0
- package/templates/repo/.github/skills/install.ps1 +1247 -0
- package/templates/repo/.github/skills/install.sh +1300 -0
- package/templates/repo/.github/skills/mcp-management/README.md +219 -0
- package/templates/repo/.github/skills/mcp-management/SKILL.md +209 -0
- package/templates/repo/.github/skills/mcp-management/assets/tools.json +3146 -0
- package/templates/repo/.github/skills/mcp-management/references/configuration.md +114 -0
- package/templates/repo/.github/skills/mcp-management/references/gemini-cli-integration.md +221 -0
- package/templates/repo/.github/skills/mcp-management/references/mcp-protocol.md +116 -0
- package/templates/repo/.github/skills/mcp-management/scripts/.env.example +10 -0
- package/templates/repo/.github/skills/mcp-management/scripts/cli.ts +195 -0
- package/templates/repo/.github/skills/mcp-management/scripts/dist/analyze-tools.js +70 -0
- package/templates/repo/.github/skills/mcp-management/scripts/dist/cli.js +160 -0
- package/templates/repo/.github/skills/mcp-management/scripts/dist/mcp-client.js +183 -0
- package/templates/repo/.github/skills/mcp-management/scripts/mcp-client.ts +230 -0
- package/templates/repo/.github/skills/mcp-management/scripts/package.json +20 -0
- package/templates/repo/.github/skills/mcp-management/scripts/tsconfig.json +15 -0
- package/templates/repo/.github/skills/mermaidjs-v11/SKILL.md +115 -0
- package/templates/repo/.github/skills/mermaidjs-v11/references/cli-usage.md +228 -0
- package/templates/repo/.github/skills/mermaidjs-v11/references/configuration.md +232 -0
- package/templates/repo/.github/skills/mermaidjs-v11/references/diagram-types.md +315 -0
- package/templates/repo/.github/skills/mermaidjs-v11/references/examples.md +344 -0
- package/templates/repo/.github/skills/mermaidjs-v11/references/integration.md +310 -0
- package/templates/repo/.github/skills/{ck-planning → planning}/SKILL.md +131 -112
- package/{skills/ck-planning → templates/repo/.github/skills/planning}/references/codebase-understanding.md +62 -62
- package/templates/repo/.github/skills/{ck-planning → planning}/references/output-standards.md +141 -127
- package/{skills/ck-planning → templates/repo/.github/skills/planning}/references/plan-organization.md +160 -150
- package/templates/repo/.github/skills/{ck-planning → planning}/references/research-phase.md +49 -49
- package/{skills/ck-planning → templates/repo/.github/skills/planning}/references/solution-design.md +63 -63
- package/templates/repo/.github/skills/{ck-problem-solving → problem-solving}/SKILL.md +95 -95
- package/{skills/ck-problem-solving → templates/repo/.github/skills/problem-solving}/references/attribution.md +69 -69
- package/templates/repo/.github/skills/{ck-problem-solving → problem-solving}/references/collision-zone-thinking.md +79 -79
- package/{skills/ck-problem-solving → templates/repo/.github/skills/problem-solving}/references/inversion-exercise.md +91 -91
- package/templates/repo/.github/skills/{ck-problem-solving → problem-solving}/references/meta-pattern-recognition.md +87 -87
- package/templates/repo/.github/skills/{ck-problem-solving → problem-solving}/references/scale-game.md +95 -95
- package/templates/repo/.github/skills/{ck-problem-solving → problem-solving}/references/simplification-cascades.md +80 -80
- package/{skills/ck-problem-solving → templates/repo/.github/skills/problem-solving}/references/when-stuck.md +72 -72
- package/templates/repo/.github/skills/repomix/SKILL.md +247 -0
- package/templates/repo/.github/skills/repomix/references/configuration.md +211 -0
- package/templates/repo/.github/skills/repomix/references/usage-patterns.md +232 -0
- package/templates/repo/.github/skills/repomix/scripts/README.md +179 -0
- package/templates/repo/.github/skills/repomix/scripts/repomix_batch.py +455 -0
- package/templates/repo/.github/skills/repomix/scripts/repos.example.json +15 -0
- package/templates/repo/.github/skills/repomix/scripts/requirements.txt +15 -0
- package/templates/repo/.github/skills/research/SKILL.md +169 -0
- package/templates/repo/.github/skills/scout/SKILL.md +78 -0
- package/templates/repo/.github/skills/scout/references/external-scouting.md +140 -0
- package/templates/repo/.github/skills/scout/references/internal-scouting.md +119 -0
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/.env.example +8 -8
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/README.md +183 -183
- package/{skills/ck-sequential-thinking → templates/repo/.github/skills/sequential-thinking}/SKILL.md +92 -92
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/package.json +31 -31
- package/{skills/ck-sequential-thinking → templates/repo/.github/skills/sequential-thinking}/references/advanced-strategies.md +79 -79
- package/{skills/ck-sequential-thinking → templates/repo/.github/skills/sequential-thinking}/references/advanced-techniques.md +76 -76
- package/{skills/ck-sequential-thinking → templates/repo/.github/skills/sequential-thinking}/references/core-patterns.md +95 -95
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-api.md +88 -88
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-architecture.md +94 -94
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/references/examples-debug.md +90 -90
- package/templates/repo/.github/skills/{ck-sequential-thinking → sequential-thinking}/scripts/format-thought.js +159 -159
- package/{skills/ck-sequential-thinking → templates/repo/.github/skills/sequential-thinking}/scripts/process-thought.js +236 -236
- package/templates/repo/.github/skills/ui-styling/LICENSE.txt +202 -0
- package/templates/repo/.github/skills/ui-styling/SKILL.md +319 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/templates/repo/.github/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/templates/repo/.github/skills/ui-styling/references/canvas-design-system.md +320 -0
- package/templates/repo/.github/skills/ui-styling/references/shadcn-accessibility.md +471 -0
- package/templates/repo/.github/skills/ui-styling/references/shadcn-components.md +424 -0
- package/templates/repo/.github/skills/ui-styling/references/shadcn-theming.md +373 -0
- package/templates/repo/.github/skills/ui-styling/references/tailwind-customization.md +483 -0
- package/templates/repo/.github/skills/ui-styling/references/tailwind-responsive.md +382 -0
- package/templates/repo/.github/skills/ui-styling/references/tailwind-utilities.md +455 -0
- package/templates/repo/.github/skills/ui-styling/scripts/requirements.txt +17 -0
- package/templates/repo/.github/skills/ui-styling/scripts/shadcn_add.py +292 -0
- package/templates/repo/.github/skills/ui-styling/scripts/tailwind_config_gen.py +456 -0
- package/templates/repo/.github/skills/web-testing/SKILL.md +94 -0
- package/templates/repo/.github/skills/web-testing/references/accessibility-testing.md +84 -0
- package/templates/repo/.github/skills/web-testing/references/api-testing.md +78 -0
- package/templates/repo/.github/skills/web-testing/references/ci-cd-testing-workflows.md +121 -0
- package/templates/repo/.github/skills/web-testing/references/component-testing.md +94 -0
- package/templates/repo/.github/skills/web-testing/references/contract-testing.md +146 -0
- package/templates/repo/.github/skills/web-testing/references/cross-browser-checklist.md +72 -0
- package/templates/repo/.github/skills/web-testing/references/database-testing.md +139 -0
- package/templates/repo/.github/skills/web-testing/references/e2e-testing-playwright.md +119 -0
- package/templates/repo/.github/skills/web-testing/references/functional-testing-checklist.md +88 -0
- package/templates/repo/.github/skills/web-testing/references/interactive-testing-patterns.md +89 -0
- package/templates/repo/.github/skills/web-testing/references/load-testing-k6.md +93 -0
- package/templates/repo/.github/skills/web-testing/references/mobile-gesture-testing.md +85 -0
- package/templates/repo/.github/skills/web-testing/references/performance-core-web-vitals.md +124 -0
- package/templates/repo/.github/skills/web-testing/references/playwright-component-testing.md +115 -0
- package/templates/repo/.github/skills/web-testing/references/pre-release-checklist.md +75 -0
- package/templates/repo/.github/skills/web-testing/references/security-checklists.md +81 -0
- package/templates/repo/.github/skills/web-testing/references/security-testing-overview.md +92 -0
- package/templates/repo/.github/skills/web-testing/references/shadow-dom-testing.md +70 -0
- package/templates/repo/.github/skills/web-testing/references/test-data-management.md +131 -0
- package/templates/repo/.github/skills/web-testing/references/test-flakiness-mitigation.md +86 -0
- package/templates/repo/.github/skills/web-testing/references/testing-pyramid-strategy.md +76 -0
- package/templates/repo/.github/skills/web-testing/references/unit-integration-testing.md +138 -0
- package/templates/repo/.github/skills/web-testing/references/visual-regression.md +92 -0
- package/templates/repo/.github/skills/web-testing/references/vulnerability-payloads.md +93 -0
- package/templates/repo/.github/skills/web-testing/scripts/analyze-test-results.js +280 -0
- package/templates/repo/.github/skills/web-testing/scripts/init-playwright.js +233 -0
- package/templates/repo/.github/spec-kit/memory/constitution.md +50 -0
- package/templates/repo/.github/spec-kit/scripts/bash/check-prerequisites.sh +166 -0
- package/templates/repo/.github/spec-kit/scripts/bash/common.sh +156 -0
- package/templates/repo/.github/spec-kit/scripts/bash/create-new-feature.sh +297 -0
- package/templates/repo/.github/spec-kit/scripts/bash/setup-plan.sh +61 -0
- package/templates/repo/.github/spec-kit/scripts/bash/update-agent-context.sh +799 -0
- package/templates/repo/.github/spec-kit/scripts/powershell/check-prerequisites.ps1 +148 -0
- package/templates/repo/.github/spec-kit/scripts/powershell/common.ps1 +137 -0
- package/templates/repo/.github/spec-kit/scripts/powershell/create-new-feature.ps1 +283 -0
- package/templates/repo/.github/spec-kit/scripts/powershell/setup-plan.ps1 +61 -0
- package/templates/repo/.github/spec-kit/scripts/powershell/update-agent-context.ps1 +448 -0
- package/templates/repo/.github/spec-kit/templates/agent-file-template.md +28 -0
- package/templates/repo/.github/spec-kit/templates/checklist-template.md +40 -0
- package/templates/repo/.github/spec-kit/templates/commands/analyze.md +187 -0
- package/templates/repo/.github/spec-kit/templates/commands/checklist.md +297 -0
- package/templates/repo/.github/spec-kit/templates/commands/clarify.md +184 -0
- package/templates/repo/.github/spec-kit/templates/commands/constitution.md +82 -0
- package/templates/repo/.github/spec-kit/templates/commands/implement.md +138 -0
- package/templates/repo/.github/spec-kit/templates/commands/plan.md +95 -0
- package/templates/repo/.github/spec-kit/templates/commands/specify.md +261 -0
- package/templates/repo/.github/spec-kit/templates/commands/tasks.md +140 -0
- package/templates/repo/.github/spec-kit/templates/commands/taskstoissues.md +33 -0
- package/templates/repo/.github/spec-kit/templates/plan-template.md +104 -0
- package/templates/repo/.github/spec-kit/templates/spec-template.md +115 -0
- package/templates/repo/.github/spec-kit/templates/tasks-phase-template.md +42 -0
- package/templates/repo/.github/spec-kit/templates/tasks-template.md +268 -0
- package/templates/repo/.github/spec-kit/templates/vscode-settings.json +14 -0
- package/templates/repo/.vscode/settings.json +70 -70
- package/.vscode/settings.json +0 -70
- package/AGENTS.md +0 -103
- package/FAQ.md +0 -101
- package/INIT.md +0 -154
- package/QUICK-START.md +0 -37
- package/changelogs/1.0.8.md +0 -77
- package/changelogs/1.0.9.md +0 -173
- package/plans/reports/docs-manager-260120-0854-documentation-update.md +0 -323
- package/prompts/ck-code.prompt.md +0 -178
- package/repomix-output.xml +0 -40725
- package/rules/README.agents.md +0 -55
- package/rules/README.collections.md +0 -78
- package/rules/README.copilot-instructions.md +0 -66
- package/rules/README.instructions.md +0 -73
- package/rules/README.md +0 -39
- package/rules/README.prompts.md +0 -76
- package/rules/README.skills.md +0 -71
- package/skills/ck-frontend-development/SKILL.md +0 -399
- package/skills/ck-frontend-development/resources/common-patterns.md +0 -331
- package/skills/ck-frontend-development/resources/complete-examples.md +0 -872
- package/skills/ck-frontend-development/resources/component-patterns.md +0 -502
- package/skills/ck-frontend-development/resources/data-fetching.md +0 -767
- package/skills/ck-frontend-development/resources/file-organization.md +0 -502
- package/skills/ck-frontend-development/resources/loading-and-error-states.md +0 -501
- package/skills/ck-frontend-development/resources/performance.md +0 -406
- package/skills/ck-frontend-development/resources/routing-guide.md +0 -364
- package/skills/ck-frontend-development/resources/styling-guide.md +0 -428
- package/skills/ck-frontend-development/resources/typescript-standards.md +0 -418
- package/skills/ck-sequential-thinking/tests/format-thought.test.js +0 -133
- package/skills/ck-sequential-thinking/tests/process-thought.test.js +0 -215
- package/templates/repo/.github/.cokit-version +0 -4
- package/templates/repo/.github/copilot-instructions.md +0 -45
- package/templates/repo/.github/prompts/ck-code.prompt.md +0 -178
- package/templates/repo/.github/skills/ck-frontend-development/SKILL.md +0 -399
- package/templates/repo/.github/skills/ck-frontend-development/resources/common-patterns.md +0 -331
- package/templates/repo/.github/skills/ck-frontend-development/resources/complete-examples.md +0 -872
- package/templates/repo/.github/skills/ck-frontend-development/resources/component-patterns.md +0 -502
- package/templates/repo/.github/skills/ck-frontend-development/resources/data-fetching.md +0 -767
- package/templates/repo/.github/skills/ck-frontend-development/resources/file-organization.md +0 -502
- package/templates/repo/.github/skills/ck-frontend-development/resources/loading-and-error-states.md +0 -501
- package/templates/repo/.github/skills/ck-frontend-development/resources/performance.md +0 -406
- package/templates/repo/.github/skills/ck-frontend-development/resources/routing-guide.md +0 -364
- package/templates/repo/.github/skills/ck-frontend-development/resources/styling-guide.md +0 -428
- package/templates/repo/.github/skills/ck-frontend-development/resources/typescript-standards.md +0 -418
- package/templates/repo/.github/skills/ck-sequential-thinking/tests/format-thought.test.js +0 -133
- package/templates/repo/.github/skills/ck-sequential-thinking/tests/process-thought.test.js +0 -215
- /package/skills/{ck-code-review → code-review}/references/verification-before-completion.md +0 -0
package/{templates/repo/.github/skills/ck-debugging → skills/debug}/references/defense-in-depth.md
RENAMED
|
@@ -1,124 +1,124 @@
|
|
|
1
|
-
# Defense-in-Depth Validation
|
|
2
|
-
|
|
3
|
-
Validate at every layer data passes through to make bugs impossible.
|
|
4
|
-
|
|
5
|
-
## Core Principle
|
|
6
|
-
|
|
7
|
-
**Validate at EVERY layer data passes through. Make bug structurally impossible.**
|
|
8
|
-
|
|
9
|
-
When fix bug caused by invalid data, adding validation at one place feels sufficient. But single check can be bypassed by different code paths, refactoring, or mocks.
|
|
10
|
-
|
|
11
|
-
## Why Multiple Layers
|
|
12
|
-
|
|
13
|
-
Single validation: "We fixed bug"
|
|
14
|
-
Multiple layers: "We made bug impossible"
|
|
15
|
-
|
|
16
|
-
Different layers catch different cases:
|
|
17
|
-
- Entry validation catches most bugs
|
|
18
|
-
- Business logic catches edge cases
|
|
19
|
-
- Environment guards prevent context-specific dangers
|
|
20
|
-
- Debug logging helps when other layers fail
|
|
21
|
-
|
|
22
|
-
## The Four Layers
|
|
23
|
-
|
|
24
|
-
### Layer 1: Entry Point Validation
|
|
25
|
-
**Purpose:** Reject obviously invalid input at API boundary
|
|
26
|
-
|
|
27
|
-
```typescript
|
|
28
|
-
function createProject(name: string, workingDirectory: string) {
|
|
29
|
-
if (!workingDirectory || workingDirectory.trim() === '') {
|
|
30
|
-
throw new Error('workingDirectory cannot be empty');
|
|
31
|
-
}
|
|
32
|
-
if (!existsSync(workingDirectory)) {
|
|
33
|
-
throw new Error(`workingDirectory does not exist: ${workingDirectory}`);
|
|
34
|
-
}
|
|
35
|
-
if (!statSync(workingDirectory).isDirectory()) {
|
|
36
|
-
throw new Error(`workingDirectory is not a directory: ${workingDirectory}`);
|
|
37
|
-
}
|
|
38
|
-
// proceed
|
|
39
|
-
}
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### Layer 2: Business Logic Validation
|
|
43
|
-
**Purpose:** Ensure data makes sense for this operation
|
|
44
|
-
|
|
45
|
-
```typescript
|
|
46
|
-
function initializeWorkspace(projectDir: string, sessionId: string) {
|
|
47
|
-
if (!projectDir) {
|
|
48
|
-
throw new Error('projectDir required for workspace initialization');
|
|
49
|
-
}
|
|
50
|
-
// proceed
|
|
51
|
-
}
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Layer 3: Environment Guards
|
|
55
|
-
**Purpose:** Prevent dangerous operations in specific contexts
|
|
56
|
-
|
|
57
|
-
```typescript
|
|
58
|
-
async function gitInit(directory: string) {
|
|
59
|
-
// In tests, refuse git init outside temp directories
|
|
60
|
-
if (process.env.NODE_ENV === 'test') {
|
|
61
|
-
const normalized = normalize(resolve(directory));
|
|
62
|
-
const tmpDir = normalize(resolve(tmpdir()));
|
|
63
|
-
|
|
64
|
-
if (!normalized.startsWith(tmpDir)) {
|
|
65
|
-
throw new Error(
|
|
66
|
-
`Refusing git init outside temp dir during tests: ${directory}`
|
|
67
|
-
);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
// proceed
|
|
71
|
-
}
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Layer 4: Debug Instrumentation
|
|
75
|
-
**Purpose:** Capture context for forensics
|
|
76
|
-
|
|
77
|
-
```typescript
|
|
78
|
-
async function gitInit(directory: string) {
|
|
79
|
-
const stack = new Error().stack;
|
|
80
|
-
logger.debug('About to git init', {
|
|
81
|
-
directory,
|
|
82
|
-
cwd: process.cwd(),
|
|
83
|
-
stack,
|
|
84
|
-
});
|
|
85
|
-
// proceed
|
|
86
|
-
}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
## Applying the Pattern
|
|
90
|
-
|
|
91
|
-
When find bug:
|
|
92
|
-
|
|
93
|
-
1. **Trace data flow** - Where does bad value originate? Where used?
|
|
94
|
-
2. **Map all checkpoints** - List every point data passes through
|
|
95
|
-
3. **Add validation at each layer** - Entry, business, environment, debug
|
|
96
|
-
4. **Test each layer** - Try to bypass layer 1, verify layer 2 catches it
|
|
97
|
-
|
|
98
|
-
## Example from Real Session
|
|
99
|
-
|
|
100
|
-
Bug: Empty `projectDir` caused `git init` in source code
|
|
101
|
-
|
|
102
|
-
**Data flow:**
|
|
103
|
-
1. Test setup → empty string
|
|
104
|
-
2. `Project.create(name, '')`
|
|
105
|
-
3. `WorkspaceManager.createWorkspace('')`
|
|
106
|
-
4. `git init` runs in `process.cwd()`
|
|
107
|
-
|
|
108
|
-
**Four layers added:**
|
|
109
|
-
- Layer 1: `Project.create()` validates not empty/exists/writable
|
|
110
|
-
- Layer 2: `WorkspaceManager` validates projectDir not empty
|
|
111
|
-
- Layer 3: `WorktreeManager` refuses git init outside tmpdir in tests
|
|
112
|
-
- Layer 4: Stack trace logging before git init
|
|
113
|
-
|
|
114
|
-
**Result:** All 1847 tests passed, bug impossible to reproduce
|
|
115
|
-
|
|
116
|
-
## Key Insight
|
|
117
|
-
|
|
118
|
-
All four layers were necessary. During testing, each layer caught bugs others missed:
|
|
119
|
-
- Different code paths bypassed entry validation
|
|
120
|
-
- Mocks bypassed business logic checks
|
|
121
|
-
- Edge cases on different platforms needed environment guards
|
|
122
|
-
- Debug logging identified structural misuse
|
|
123
|
-
|
|
124
|
-
**Don't stop at one validation point.** Add checks at every layer.
|
|
1
|
+
# Defense-in-Depth Validation
|
|
2
|
+
|
|
3
|
+
Validate at every layer data passes through to make bugs impossible.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
**Validate at EVERY layer data passes through. Make bug structurally impossible.**
|
|
8
|
+
|
|
9
|
+
When fix bug caused by invalid data, adding validation at one place feels sufficient. But single check can be bypassed by different code paths, refactoring, or mocks.
|
|
10
|
+
|
|
11
|
+
## Why Multiple Layers
|
|
12
|
+
|
|
13
|
+
Single validation: "We fixed bug"
|
|
14
|
+
Multiple layers: "We made bug impossible"
|
|
15
|
+
|
|
16
|
+
Different layers catch different cases:
|
|
17
|
+
- Entry validation catches most bugs
|
|
18
|
+
- Business logic catches edge cases
|
|
19
|
+
- Environment guards prevent context-specific dangers
|
|
20
|
+
- Debug logging helps when other layers fail
|
|
21
|
+
|
|
22
|
+
## The Four Layers
|
|
23
|
+
|
|
24
|
+
### Layer 1: Entry Point Validation
|
|
25
|
+
**Purpose:** Reject obviously invalid input at API boundary
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
function createProject(name: string, workingDirectory: string) {
|
|
29
|
+
if (!workingDirectory || workingDirectory.trim() === '') {
|
|
30
|
+
throw new Error('workingDirectory cannot be empty');
|
|
31
|
+
}
|
|
32
|
+
if (!existsSync(workingDirectory)) {
|
|
33
|
+
throw new Error(`workingDirectory does not exist: ${workingDirectory}`);
|
|
34
|
+
}
|
|
35
|
+
if (!statSync(workingDirectory).isDirectory()) {
|
|
36
|
+
throw new Error(`workingDirectory is not a directory: ${workingDirectory}`);
|
|
37
|
+
}
|
|
38
|
+
// proceed
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Layer 2: Business Logic Validation
|
|
43
|
+
**Purpose:** Ensure data makes sense for this operation
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
function initializeWorkspace(projectDir: string, sessionId: string) {
|
|
47
|
+
if (!projectDir) {
|
|
48
|
+
throw new Error('projectDir required for workspace initialization');
|
|
49
|
+
}
|
|
50
|
+
// proceed
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Layer 3: Environment Guards
|
|
55
|
+
**Purpose:** Prevent dangerous operations in specific contexts
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
async function gitInit(directory: string) {
|
|
59
|
+
// In tests, refuse git init outside temp directories
|
|
60
|
+
if (process.env.NODE_ENV === 'test') {
|
|
61
|
+
const normalized = normalize(resolve(directory));
|
|
62
|
+
const tmpDir = normalize(resolve(tmpdir()));
|
|
63
|
+
|
|
64
|
+
if (!normalized.startsWith(tmpDir)) {
|
|
65
|
+
throw new Error(
|
|
66
|
+
`Refusing git init outside temp dir during tests: ${directory}`
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// proceed
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Layer 4: Debug Instrumentation
|
|
75
|
+
**Purpose:** Capture context for forensics
|
|
76
|
+
|
|
77
|
+
```typescript
|
|
78
|
+
async function gitInit(directory: string) {
|
|
79
|
+
const stack = new Error().stack;
|
|
80
|
+
logger.debug('About to git init', {
|
|
81
|
+
directory,
|
|
82
|
+
cwd: process.cwd(),
|
|
83
|
+
stack,
|
|
84
|
+
});
|
|
85
|
+
// proceed
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Applying the Pattern
|
|
90
|
+
|
|
91
|
+
When find bug:
|
|
92
|
+
|
|
93
|
+
1. **Trace data flow** - Where does bad value originate? Where used?
|
|
94
|
+
2. **Map all checkpoints** - List every point data passes through
|
|
95
|
+
3. **Add validation at each layer** - Entry, business, environment, debug
|
|
96
|
+
4. **Test each layer** - Try to bypass layer 1, verify layer 2 catches it
|
|
97
|
+
|
|
98
|
+
## Example from Real Session
|
|
99
|
+
|
|
100
|
+
Bug: Empty `projectDir` caused `git init` in source code
|
|
101
|
+
|
|
102
|
+
**Data flow:**
|
|
103
|
+
1. Test setup → empty string
|
|
104
|
+
2. `Project.create(name, '')`
|
|
105
|
+
3. `WorkspaceManager.createWorkspace('')`
|
|
106
|
+
4. `git init` runs in `process.cwd()`
|
|
107
|
+
|
|
108
|
+
**Four layers added:**
|
|
109
|
+
- Layer 1: `Project.create()` validates not empty/exists/writable
|
|
110
|
+
- Layer 2: `WorkspaceManager` validates projectDir not empty
|
|
111
|
+
- Layer 3: `WorktreeManager` refuses git init outside tmpdir in tests
|
|
112
|
+
- Layer 4: Stack trace logging before git init
|
|
113
|
+
|
|
114
|
+
**Result:** All 1847 tests passed, bug impossible to reproduce
|
|
115
|
+
|
|
116
|
+
## Key Insight
|
|
117
|
+
|
|
118
|
+
All four layers were necessary. During testing, each layer caught bugs others missed:
|
|
119
|
+
- Different code paths bypassed entry validation
|
|
120
|
+
- Mocks bypassed business logic checks
|
|
121
|
+
- Edge cases on different platforms needed environment guards
|
|
122
|
+
- Debug logging identified structural misuse
|
|
123
|
+
|
|
124
|
+
**Don't stop at one validation point.** Add checks at every layer.
|
|
@@ -1,122 +1,122 @@
|
|
|
1
|
-
# Root Cause Tracing
|
|
2
|
-
|
|
3
|
-
Systematically trace bugs backward through call stack to find original trigger.
|
|
4
|
-
|
|
5
|
-
## Core Principle
|
|
6
|
-
|
|
7
|
-
**Trace backward through call chain until finding original trigger, then fix at source.**
|
|
8
|
-
|
|
9
|
-
Bugs often manifest deep in call stack (git init in wrong directory, file created in wrong location). Instinct is to fix where error appears, but that's treating symptom.
|
|
10
|
-
|
|
11
|
-
## When to Use
|
|
12
|
-
|
|
13
|
-
**Use when:**
|
|
14
|
-
- Error happens deep in execution (not at entry point)
|
|
15
|
-
- Stack trace shows long call chain
|
|
16
|
-
- Unclear where invalid data originated
|
|
17
|
-
- Need to find which test/code triggers problem
|
|
18
|
-
|
|
19
|
-
## The Tracing Process
|
|
20
|
-
|
|
21
|
-
### 1. Observe the Symptom
|
|
22
|
-
```
|
|
23
|
-
Error: git init failed in /Users/jesse/project/packages/core
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### 2. Find Immediate Cause
|
|
27
|
-
What code directly causes this?
|
|
28
|
-
```typescript
|
|
29
|
-
await execFileAsync('git', ['init'], { cwd: projectDir });
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### 3. Ask: What Called This?
|
|
33
|
-
```typescript
|
|
34
|
-
WorktreeManager.createSessionWorktree(projectDir, sessionId)
|
|
35
|
-
→ called by Session.initializeWorkspace()
|
|
36
|
-
→ called by Session.create()
|
|
37
|
-
→ called by test at Project.create()
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### 4. Keep Tracing Up
|
|
41
|
-
What value was passed?
|
|
42
|
-
- `projectDir = ''` (empty string!)
|
|
43
|
-
- Empty string as `cwd` resolves to `process.cwd()`
|
|
44
|
-
- That's the source code directory!
|
|
45
|
-
|
|
46
|
-
### 5. Find Original Trigger
|
|
47
|
-
Where did empty string come from?
|
|
48
|
-
```typescript
|
|
49
|
-
const context = setupCoreTest(); // Returns { tempDir: '' }
|
|
50
|
-
Project.create('name', context.tempDir); // Accessed before beforeEach!
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Adding Stack Traces
|
|
54
|
-
|
|
55
|
-
When can't trace manually, add instrumentation:
|
|
56
|
-
|
|
57
|
-
```typescript
|
|
58
|
-
async function gitInit(directory: string) {
|
|
59
|
-
const stack = new Error().stack;
|
|
60
|
-
console.error('DEBUG git init:', {
|
|
61
|
-
directory,
|
|
62
|
-
cwd: process.cwd(),
|
|
63
|
-
stack,
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
await execFileAsync('git', ['init'], { cwd: directory });
|
|
67
|
-
}
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
**Critical:** Use `console.error()` in tests (not logger - may not show)
|
|
71
|
-
|
|
72
|
-
**Run and capture:**
|
|
73
|
-
```bash
|
|
74
|
-
npm test 2>&1 | grep 'DEBUG git init'
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
**Analyze stack traces:**
|
|
78
|
-
- Look for test file names
|
|
79
|
-
- Find line number triggering call
|
|
80
|
-
- Identify pattern (same test? same parameter?)
|
|
81
|
-
|
|
82
|
-
## Finding Which Test Causes Pollution
|
|
83
|
-
|
|
84
|
-
If something appears during tests but don't know which test:
|
|
85
|
-
|
|
86
|
-
Use bisection script: `scripts/find-polluter.sh`
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
./scripts/find-polluter.sh '.git' 'src/**/*.test.ts'
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Runs tests one-by-one, stops at first polluter.
|
|
93
|
-
|
|
94
|
-
## Key Principle
|
|
95
|
-
|
|
96
|
-
**NEVER fix just where error appears.** Trace back to find original trigger.
|
|
97
|
-
|
|
98
|
-
When found immediate cause:
|
|
99
|
-
- Can trace one level up? → Trace backwards
|
|
100
|
-
- Is this the source? → Fix at source
|
|
101
|
-
- Then add validation at each layer (see defense-in-depth.md)
|
|
102
|
-
|
|
103
|
-
## Real Example
|
|
104
|
-
|
|
105
|
-
**Symptom:** `.git` created in `packages/core/` (source code)
|
|
106
|
-
|
|
107
|
-
**Trace chain:**
|
|
108
|
-
1. `git init` runs in `process.cwd()` ← empty cwd parameter
|
|
109
|
-
2. WorktreeManager called with empty projectDir
|
|
110
|
-
3. Session.create() passed empty string
|
|
111
|
-
4. Test accessed `context.tempDir` before beforeEach
|
|
112
|
-
5. setupCoreTest() returns `{ tempDir: '' }` initially
|
|
113
|
-
|
|
114
|
-
**Root cause:** Top-level variable initialization accessing empty value
|
|
115
|
-
|
|
116
|
-
**Fix:** Made tempDir a getter that throws if accessed before beforeEach
|
|
117
|
-
|
|
118
|
-
**Also added defense-in-depth:**
|
|
119
|
-
- Layer 1: Project.create() validates directory
|
|
120
|
-
- Layer 2: WorkspaceManager validates not empty
|
|
121
|
-
- Layer 3: NODE_ENV guard refuses git init outside tmpdir
|
|
122
|
-
- Layer 4: Stack trace logging before git init
|
|
1
|
+
# Root Cause Tracing
|
|
2
|
+
|
|
3
|
+
Systematically trace bugs backward through call stack to find original trigger.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
**Trace backward through call chain until finding original trigger, then fix at source.**
|
|
8
|
+
|
|
9
|
+
Bugs often manifest deep in call stack (git init in wrong directory, file created in wrong location). Instinct is to fix where error appears, but that's treating symptom.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
**Use when:**
|
|
14
|
+
- Error happens deep in execution (not at entry point)
|
|
15
|
+
- Stack trace shows long call chain
|
|
16
|
+
- Unclear where invalid data originated
|
|
17
|
+
- Need to find which test/code triggers problem
|
|
18
|
+
|
|
19
|
+
## The Tracing Process
|
|
20
|
+
|
|
21
|
+
### 1. Observe the Symptom
|
|
22
|
+
```
|
|
23
|
+
Error: git init failed in /Users/jesse/project/packages/core
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### 2. Find Immediate Cause
|
|
27
|
+
What code directly causes this?
|
|
28
|
+
```typescript
|
|
29
|
+
await execFileAsync('git', ['init'], { cwd: projectDir });
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### 3. Ask: What Called This?
|
|
33
|
+
```typescript
|
|
34
|
+
WorktreeManager.createSessionWorktree(projectDir, sessionId)
|
|
35
|
+
→ called by Session.initializeWorkspace()
|
|
36
|
+
→ called by Session.create()
|
|
37
|
+
→ called by test at Project.create()
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 4. Keep Tracing Up
|
|
41
|
+
What value was passed?
|
|
42
|
+
- `projectDir = ''` (empty string!)
|
|
43
|
+
- Empty string as `cwd` resolves to `process.cwd()`
|
|
44
|
+
- That's the source code directory!
|
|
45
|
+
|
|
46
|
+
### 5. Find Original Trigger
|
|
47
|
+
Where did empty string come from?
|
|
48
|
+
```typescript
|
|
49
|
+
const context = setupCoreTest(); // Returns { tempDir: '' }
|
|
50
|
+
Project.create('name', context.tempDir); // Accessed before beforeEach!
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Adding Stack Traces
|
|
54
|
+
|
|
55
|
+
When can't trace manually, add instrumentation:
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
async function gitInit(directory: string) {
|
|
59
|
+
const stack = new Error().stack;
|
|
60
|
+
console.error('DEBUG git init:', {
|
|
61
|
+
directory,
|
|
62
|
+
cwd: process.cwd(),
|
|
63
|
+
stack,
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
await execFileAsync('git', ['init'], { cwd: directory });
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Critical:** Use `console.error()` in tests (not logger - may not show)
|
|
71
|
+
|
|
72
|
+
**Run and capture:**
|
|
73
|
+
```bash
|
|
74
|
+
npm test 2>&1 | grep 'DEBUG git init'
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Analyze stack traces:**
|
|
78
|
+
- Look for test file names
|
|
79
|
+
- Find line number triggering call
|
|
80
|
+
- Identify pattern (same test? same parameter?)
|
|
81
|
+
|
|
82
|
+
## Finding Which Test Causes Pollution
|
|
83
|
+
|
|
84
|
+
If something appears during tests but don't know which test:
|
|
85
|
+
|
|
86
|
+
Use bisection script: `scripts/find-polluter.sh`
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
./scripts/find-polluter.sh '.git' 'src/**/*.test.ts'
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Runs tests one-by-one, stops at first polluter.
|
|
93
|
+
|
|
94
|
+
## Key Principle
|
|
95
|
+
|
|
96
|
+
**NEVER fix just where error appears.** Trace back to find original trigger.
|
|
97
|
+
|
|
98
|
+
When found immediate cause:
|
|
99
|
+
- Can trace one level up? → Trace backwards
|
|
100
|
+
- Is this the source? → Fix at source
|
|
101
|
+
- Then add validation at each layer (see defense-in-depth.md)
|
|
102
|
+
|
|
103
|
+
## Real Example
|
|
104
|
+
|
|
105
|
+
**Symptom:** `.git` created in `packages/core/` (source code)
|
|
106
|
+
|
|
107
|
+
**Trace chain:**
|
|
108
|
+
1. `git init` runs in `process.cwd()` ← empty cwd parameter
|
|
109
|
+
2. WorktreeManager called with empty projectDir
|
|
110
|
+
3. Session.create() passed empty string
|
|
111
|
+
4. Test accessed `context.tempDir` before beforeEach
|
|
112
|
+
5. setupCoreTest() returns `{ tempDir: '' }` initially
|
|
113
|
+
|
|
114
|
+
**Root cause:** Top-level variable initialization accessing empty value
|
|
115
|
+
|
|
116
|
+
**Fix:** Made tempDir a getter that throws if accessed before beforeEach
|
|
117
|
+
|
|
118
|
+
**Also added defense-in-depth:**
|
|
119
|
+
- Layer 1: Project.create() validates directory
|
|
120
|
+
- Layer 2: WorkspaceManager validates not empty
|
|
121
|
+
- Layer 3: NODE_ENV guard refuses git init outside tmpdir
|
|
122
|
+
- Layer 4: Stack trace logging before git init
|