cokit-cli 1.0.1 → 1.0.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/AGENTS.md +103 -0
- package/README.FLOW.md +237 -0
- package/README.md +153 -94
- package/agents/brainstormer.agent.md +71 -0
- package/agents/code-reviewer.agent.md +128 -0
- package/agents/database-admin.agent.md +91 -0
- package/agents/debugger.agent.md +128 -0
- package/agents/docs-manager.agent.md +121 -0
- package/agents/fullstack-developer.agent.md +96 -0
- package/agents/git-manager.agent.md +392 -0
- package/agents/mcp-manager.agent.md +93 -0
- package/agents/planner.agent.md +94 -0
- package/agents/project-manager.agent.md +124 -0
- package/agents/researcher.agent.md +32 -0
- package/agents/scout-external.agent.md +141 -0
- package/agents/scout.agent.md +107 -0
- package/agents/tester.agent.md +106 -0
- package/agents/ui-ux-designer.agent.md +225 -0
- package/collections/ck-core.collection.yml +30 -0
- package/collections/ck-development-rules.collection.yml +18 -0
- package/collections/ck-documentation.collection.yml +18 -0
- package/collections/ck-git-workflow.collection.yml +18 -0
- package/collections/ck-orchestration.collection.yml +22 -0
- package/collections/ck-ui-design.collection.yml +18 -0
- package/docs/README.md +85 -0
- package/docs/copilot-processing-flow.md +128 -0
- package/instructions/ck-backend.instructions.md +48 -0
- package/instructions/ck-development.instructions.md +40 -0
- package/instructions/ck-frontend-design-pro.instructions.md +58 -0
- package/instructions/ck-frontend.instructions.md +44 -0
- package/instructions/ck-google-adk-python.instructions.md +242 -0
- package/instructions/ck-research.instructions.md +167 -0
- package/instructions/ck-testing.instructions.md +36 -0
- package/package.json +9 -2
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-01-restructure-folders.md +183 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-02-convert-agents.md +206 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-03-convert-commands-to-prompts.md +284 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-04-convert-skills-to-instructions.md +349 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-05-create-collections.md +320 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-06-update-cli-build-scripts.md +450 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-07-update-documentation.md +407 -0
- package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/plan.md +136 -0
- package/prompts/ck-ask.prompt.md +57 -0
- package/prompts/ck-bootstrap-auto-fast.prompt.md +108 -0
- package/prompts/ck-bootstrap-auto-parallel.prompt.md +66 -0
- package/prompts/ck-bootstrap-auto.prompt.md +114 -0
- package/prompts/ck-bootstrap.prompt.md +136 -0
- package/prompts/ck-brainstorm.prompt.md +68 -0
- package/prompts/ck-ck-help.prompt.md +114 -0
- package/prompts/ck-code-auto.prompt.md +171 -0
- package/prompts/ck-code-no-test.prompt.md +159 -0
- package/prompts/ck-code-parallel.prompt.md +56 -0
- package/prompts/ck-code.prompt.md +177 -0
- package/prompts/ck-coding-level.prompt.md +54 -0
- package/prompts/ck-cook-auto-fast.prompt.md +26 -0
- package/prompts/ck-cook-auto-parallel.prompt.md +49 -0
- package/prompts/ck-cook-auto.prompt.md +15 -0
- package/prompts/ck-cook.prompt.md +96 -0
- package/prompts/ck-debug.prompt.md +14 -0
- package/prompts/ck-design-3d.prompt.md +84 -0
- package/prompts/ck-design-describe.prompt.md +24 -0
- package/prompts/ck-design-fast.prompt.md +32 -0
- package/prompts/ck-design-good.prompt.md +36 -0
- package/prompts/ck-design-screenshot.prompt.md +35 -0
- package/prompts/ck-design-video.prompt.md +35 -0
- package/prompts/ck-docs-init.prompt.md +27 -0
- package/prompts/ck-docs-summarize.prompt.md +23 -0
- package/prompts/ck-docs-update.prompt.md +36 -0
- package/prompts/ck-fix-ci.prompt.md +18 -0
- package/prompts/ck-fix-fast.prompt.md +18 -0
- package/prompts/ck-fix-hard.prompt.md +36 -0
- package/prompts/ck-fix-logs.prompt.md +27 -0
- package/prompts/ck-fix-parallel.prompt.md +54 -0
- package/prompts/ck-fix-test.prompt.md +19 -0
- package/prompts/ck-fix-types.prompt.md +11 -0
- package/prompts/ck-fix-ui.prompt.md +49 -0
- package/prompts/ck-fix.prompt.md +44 -0
- package/prompts/ck-git-cm.prompt.md +8 -0
- package/prompts/ck-git-cp.prompt.md +7 -0
- package/prompts/ck-git-merge.prompt.md +41 -0
- package/prompts/ck-git-pr.prompt.md +49 -0
- package/prompts/ck-kanban.prompt.md +77 -0
- package/prompts/ck-plan-archive.prompt.md +58 -0
- package/prompts/ck-plan-ci.prompt.md +34 -0
- package/prompts/ck-plan-cro.prompt.md +66 -0
- package/prompts/ck-plan-fast.prompt.md +67 -0
- package/prompts/ck-plan-hard.prompt.md +89 -0
- package/prompts/ck-plan-parallel.prompt.md +126 -0
- package/prompts/ck-plan-two.prompt.md +43 -0
- package/prompts/ck-plan-validate.prompt.md +118 -0
- package/prompts/ck-plan.prompt.md +29 -1
- package/prompts/ck-preview.prompt.md +65 -0
- package/prompts/ck-review-codebase.prompt.md +44 -0
- package/prompts/ck-scout-ext.prompt.md +35 -0
- package/prompts/ck-scout.prompt.md +25 -0
- package/prompts/ck-skill-add.prompt.md +36 -0
- package/prompts/ck-skill-create.prompt.md +29 -0
- package/prompts/ck-skill-fix-logs.prompt.md +22 -0
- package/prompts/ck-skill-optimize-auto.prompt.md +25 -0
- package/prompts/ck-skill-optimize.prompt.md +34 -0
- package/prompts/ck-skill-plan.prompt.md +46 -0
- package/prompts/ck-test-ui.prompt.md +92 -0
- package/prompts/ck-test.prompt.md +10 -0
- package/prompts/ck-use-mcp.prompt.md +27 -0
- package/prompts/ck-watzup.prompt.md +11 -0
- package/prompts/ck-worktree.prompt.md +127 -0
- package/rules/README.agents.md +55 -0
- package/rules/README.collections.md +78 -0
- package/rules/README.copilot-instructions.md +66 -0
- package/rules/README.instructions.md +73 -0
- package/rules/README.md +39 -0
- package/rules/README.prompts.md +76 -0
- package/rules/README.skills.md +71 -0
- package/skills/ck-ai-artist/SKILL.md +73 -0
- package/skills/ck-ai-artist/references/advanced-techniques.md +184 -0
- package/skills/ck-ai-artist/references/domain-code.md +66 -0
- package/skills/ck-ai-artist/references/domain-data.md +72 -0
- package/skills/ck-ai-artist/references/domain-marketing.md +66 -0
- package/skills/ck-ai-artist/references/domain-patterns.md +33 -0
- package/skills/ck-ai-artist/references/domain-writing.md +68 -0
- package/skills/ck-ai-artist/references/image-prompting.md +141 -0
- package/skills/ck-ai-artist/references/llm-prompting.md +165 -0
- package/skills/ck-ai-artist/references/nano-banana.md +59 -0
- package/skills/ck-ai-artist/references/reasoning-techniques.md +201 -0
- package/skills/ck-backend-development/SKILL.md +93 -0
- package/skills/ck-backend-development/references/backend-api-design.md +495 -0
- package/skills/ck-backend-development/references/backend-architecture.md +454 -0
- package/skills/ck-backend-development/references/backend-authentication.md +338 -0
- package/skills/ck-backend-development/references/backend-code-quality.md +659 -0
- package/skills/ck-backend-development/references/backend-debugging.md +904 -0
- package/skills/ck-backend-development/references/backend-devops.md +494 -0
- package/skills/ck-backend-development/references/backend-mindset.md +387 -0
- package/skills/ck-backend-development/references/backend-performance.md +397 -0
- package/skills/ck-backend-development/references/backend-security.md +290 -0
- package/skills/ck-backend-development/references/backend-technologies.md +256 -0
- package/skills/ck-backend-development/references/backend-testing.md +429 -0
- package/skills/ck-better-auth/SKILL.md +202 -0
- package/skills/ck-better-auth/references/advanced-features.md +553 -0
- package/skills/ck-better-auth/references/database-integration.md +577 -0
- package/skills/ck-better-auth/references/email-password-auth.md +416 -0
- package/skills/ck-better-auth/references/oauth-providers.md +430 -0
- package/skills/ck-better-auth/scripts/.coverage +0 -0
- package/skills/ck-better-auth/scripts/better_auth_init.py +521 -0
- package/skills/ck-better-auth/scripts/requirements.txt +15 -0
- package/skills/ck-better-auth/scripts/tests/.coverage +0 -0
- package/skills/ck-better-auth/scripts/tests/test_better_auth_init.py +421 -0
- package/skills/ck-chrome-devtools/SKILL.md +470 -0
- package/skills/ck-chrome-devtools/references/cdp-domains.md +694 -0
- package/skills/ck-chrome-devtools/references/performance-guide.md +940 -0
- package/skills/ck-chrome-devtools/references/puppeteer-reference.md +953 -0
- package/skills/ck-chrome-devtools/scripts/README.md +272 -0
- package/skills/ck-chrome-devtools/scripts/__tests__/selector.test.js +210 -0
- package/skills/ck-chrome-devtools/scripts/aria-snapshot.js +362 -0
- package/skills/ck-chrome-devtools/scripts/click.js +83 -0
- package/skills/ck-chrome-devtools/scripts/console.js +79 -0
- package/skills/ck-chrome-devtools/scripts/evaluate.js +53 -0
- package/skills/ck-chrome-devtools/scripts/fill.js +76 -0
- package/skills/ck-chrome-devtools/scripts/inject-auth.js +229 -0
- package/skills/ck-chrome-devtools/scripts/install-deps.sh +181 -0
- package/skills/ck-chrome-devtools/scripts/install.sh +83 -0
- package/skills/ck-chrome-devtools/scripts/lib/browser.js +318 -0
- package/skills/ck-chrome-devtools/scripts/lib/selector.js +178 -0
- package/skills/ck-chrome-devtools/scripts/navigate.js +54 -0
- package/skills/ck-chrome-devtools/scripts/network.js +106 -0
- package/skills/ck-chrome-devtools/scripts/package-lock.json +1589 -0
- package/skills/ck-chrome-devtools/scripts/package.json +16 -0
- package/skills/ck-chrome-devtools/scripts/performance.js +149 -0
- package/skills/ck-chrome-devtools/scripts/screenshot.js +198 -0
- package/skills/ck-chrome-devtools/scripts/select-ref.js +131 -0
- package/skills/ck-chrome-devtools/scripts/snapshot.js +135 -0
- package/skills/ck-code-review/SKILL.md +110 -53
- package/skills/ck-code-review/references/code-review-reception.md +182 -49
- package/skills/ck-code-review/references/requesting-code-review.md +105 -0
- package/skills/ck-code-review/references/verification-before-completion.md +111 -58
- package/skills/ck-databases/SKILL.md +231 -0
- package/skills/ck-databases/references/mongodb-aggregation.md +447 -0
- package/skills/ck-databases/references/mongodb-atlas.md +465 -0
- package/skills/ck-databases/references/mongodb-crud.md +408 -0
- package/skills/ck-databases/references/mongodb-indexing.md +442 -0
- package/skills/ck-databases/references/postgresql-administration.md +594 -0
- package/skills/ck-databases/references/postgresql-performance.md +527 -0
- package/skills/ck-databases/references/postgresql-psql-cli.md +467 -0
- package/skills/ck-databases/references/postgresql-queries.md +475 -0
- package/skills/ck-databases/scripts/.coverage +0 -0
- package/skills/ck-databases/scripts/db_backup.py +502 -0
- package/skills/ck-databases/scripts/db_migrate.py +425 -0
- package/skills/ck-databases/scripts/db_performance_check.py +456 -0
- package/skills/ck-databases/scripts/requirements.txt +20 -0
- package/skills/ck-databases/scripts/tests/coverage-db.json +1 -0
- package/skills/ck-databases/scripts/tests/requirements.txt +4 -0
- package/skills/ck-databases/scripts/tests/test_db_backup.py +340 -0
- package/skills/ck-databases/scripts/tests/test_db_migrate.py +277 -0
- package/skills/ck-databases/scripts/tests/test_db_performance_check.py +370 -0
- package/skills/ck-debugging/SKILL.md +55 -43
- package/skills/ck-debugging/references/defense-in-depth.md +124 -0
- package/skills/ck-debugging/references/root-cause-tracing.md +100 -43
- package/skills/ck-debugging/references/systematic-debugging.md +80 -52
- package/skills/ck-debugging/references/verification.md +101 -52
- package/skills/ck-debugging/scripts/find-polluter.sh +63 -0
- package/skills/ck-debugging/scripts/find-polluter.test.md +102 -0
- package/skills/ck-devops/.env.example +76 -0
- package/skills/ck-devops/SKILL.md +283 -0
- package/skills/ck-devops/references/browser-rendering.md +305 -0
- package/skills/ck-devops/references/cloudflare-d1-kv.md +123 -0
- package/skills/ck-devops/references/cloudflare-platform.md +271 -0
- package/skills/ck-devops/references/cloudflare-r2-storage.md +280 -0
- package/skills/ck-devops/references/cloudflare-workers-advanced.md +312 -0
- package/skills/ck-devops/references/cloudflare-workers-apis.md +309 -0
- package/skills/ck-devops/references/cloudflare-workers-basics.md +418 -0
- package/skills/ck-devops/references/docker-basics.md +297 -0
- package/skills/ck-devops/references/docker-compose.md +292 -0
- package/skills/ck-devops/references/gcloud-platform.md +297 -0
- package/skills/ck-devops/references/gcloud-services.md +304 -0
- package/skills/ck-devops/scripts/cloudflare_deploy.py +269 -0
- package/skills/ck-devops/scripts/docker_optimize.py +331 -0
- package/skills/ck-devops/scripts/requirements.txt +20 -0
- package/skills/ck-devops/scripts/tests/requirements.txt +3 -0
- package/skills/ck-devops/scripts/tests/test_cloudflare_deploy.py +285 -0
- package/skills/ck-devops/scripts/tests/test_docker_optimize.py +436 -0
- package/skills/ck-docs-seeker/.env.example +15 -0
- package/skills/ck-docs-seeker/SKILL.md +70 -65
- package/skills/ck-docs-seeker/package.json +25 -0
- package/skills/ck-docs-seeker/references/advanced.md +79 -0
- package/skills/ck-docs-seeker/references/context7-patterns.md +68 -0
- package/skills/ck-docs-seeker/references/errors.md +68 -0
- package/skills/ck-docs-seeker/scripts/analyze-llms-txt.js +211 -0
- package/skills/ck-docs-seeker/scripts/detect-topic.js +172 -0
- package/skills/ck-docs-seeker/scripts/fetch-docs.js +213 -0
- package/skills/ck-docs-seeker/scripts/tests/run-tests.js +72 -0
- package/skills/ck-docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
- package/skills/ck-docs-seeker/scripts/tests/test-detect-topic.js +112 -0
- package/skills/ck-docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
- package/skills/ck-docs-seeker/scripts/utils/env-loader.js +94 -0
- package/skills/ck-docs-seeker/workflows/library-search.md +87 -0
- package/skills/ck-docs-seeker/workflows/repo-analysis.md +91 -0
- package/skills/ck-docs-seeker/workflows/topic-search.md +77 -0
- package/skills/ck-frontend-design/SKILL.md +79 -0
- package/skills/ck-frontend-design/references/analysis-best-practices.md +80 -0
- package/skills/ck-frontend-design/references/analysis-prompts.md +141 -0
- package/skills/ck-frontend-design/references/analysis-techniques.md +118 -0
- package/skills/ck-frontend-design/references/animejs.md +396 -0
- package/skills/ck-frontend-design/references/design-extraction-overview.md +71 -0
- package/skills/ck-frontend-design/references/extraction-best-practices.md +141 -0
- package/skills/ck-frontend-design/references/extraction-output-templates.md +162 -0
- package/skills/ck-frontend-design/references/extraction-prompts.md +127 -0
- package/skills/ck-frontend-design/references/technical-accessibility.md +119 -0
- package/skills/ck-frontend-design/references/technical-best-practices.md +97 -0
- package/skills/ck-frontend-design/references/technical-optimization.md +44 -0
- package/skills/ck-frontend-design/references/technical-overview.md +90 -0
- package/skills/ck-frontend-design/references/technical-workflows.md +150 -0
- package/skills/ck-frontend-design/references/visual-analysis-overview.md +95 -0
- package/skills/ck-frontend-development/SKILL.md +399 -0
- package/skills/ck-frontend-development/resources/common-patterns.md +331 -0
- package/skills/ck-frontend-development/resources/complete-examples.md +872 -0
- package/skills/ck-frontend-development/resources/component-patterns.md +502 -0
- package/skills/ck-frontend-development/resources/data-fetching.md +767 -0
- package/skills/ck-frontend-development/resources/file-organization.md +502 -0
- package/skills/ck-frontend-development/resources/loading-and-error-states.md +501 -0
- package/skills/ck-frontend-development/resources/performance.md +406 -0
- package/skills/ck-frontend-development/resources/routing-guide.md +364 -0
- package/skills/ck-frontend-development/resources/styling-guide.md +428 -0
- package/skills/ck-frontend-development/resources/typescript-standards.md +418 -0
- package/skills/ck-markdown-novel-viewer/SKILL.md +190 -0
- package/skills/ck-markdown-novel-viewer/assets/directory-browser.css +215 -0
- package/skills/ck-markdown-novel-viewer/assets/favicon.png +0 -0
- package/skills/ck-markdown-novel-viewer/assets/novel-theme.css +818 -0
- package/skills/ck-markdown-novel-viewer/assets/reader.js +262 -0
- package/skills/ck-markdown-novel-viewer/assets/template.html +80 -0
- package/skills/ck-markdown-novel-viewer/package.json +15 -0
- package/skills/ck-markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
- package/skills/ck-markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +272 -0
- package/skills/ck-markdown-novel-viewer/scripts/lib/plan-navigator.cjs +509 -0
- package/skills/ck-markdown-novel-viewer/scripts/lib/port-finder.cjs +48 -0
- package/skills/ck-markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
- package/skills/ck-markdown-novel-viewer/scripts/server.cjs +411 -0
- package/skills/ck-markdown-novel-viewer/scripts/tests/server.test.cjs +283 -0
- package/skills/ck-markdown-novel-viewer/tests/dashboard-assets.test.cjs +340 -0
- package/skills/ck-markdown-novel-viewer/tests/dashboard-renderer.test.cjs +404 -0
- package/skills/ck-markdown-novel-viewer/tests/http-server.test.cjs +271 -0
- package/skills/ck-markdown-novel-viewer/tests/run-tests.cjs +51 -0
- package/skills/ck-markdown-novel-viewer/tests/test-framework.cjs +154 -0
- package/skills/ck-markdown-novel-viewer/tests/verify-xss.cjs +90 -0
- package/skills/ck-mcp-builder/LICENSE.txt +202 -0
- package/skills/ck-mcp-builder/SKILL.md +327 -0
- package/skills/ck-mcp-builder/reference/evaluation.md +602 -0
- package/skills/ck-mcp-builder/reference/mcp_best_practices.md +915 -0
- package/skills/ck-mcp-builder/reference/node_mcp_server.md +916 -0
- package/skills/ck-mcp-builder/reference/python_mcp_server.md +752 -0
- package/skills/ck-mcp-builder/scripts/connections.py +151 -0
- package/skills/ck-mcp-builder/scripts/evaluation.py +373 -0
- package/skills/ck-mcp-builder/scripts/example_evaluation.xml +22 -0
- package/skills/ck-mcp-builder/scripts/requirements.txt +2 -0
- package/skills/ck-mcp-management/README.md +219 -0
- package/skills/ck-mcp-management/SKILL.md +209 -0
- package/skills/ck-mcp-management/assets/tools.json +3146 -0
- package/skills/ck-mcp-management/references/configuration.md +114 -0
- package/skills/ck-mcp-management/references/gemini-cli-integration.md +215 -0
- package/skills/ck-mcp-management/references/mcp-protocol.md +116 -0
- package/skills/ck-mcp-management/scripts/.env.example +10 -0
- package/skills/ck-mcp-management/scripts/cli.ts +195 -0
- package/skills/ck-mcp-management/scripts/dist/analyze-tools.js +70 -0
- package/skills/ck-mcp-management/scripts/dist/cli.js +160 -0
- package/skills/ck-mcp-management/scripts/dist/mcp-client.js +183 -0
- package/skills/ck-mcp-management/scripts/mcp-client.ts +230 -0
- package/skills/ck-mcp-management/scripts/package.json +20 -0
- package/skills/ck-mcp-management/scripts/tsconfig.json +15 -0
- package/skills/ck-media-processing/SKILL.md +90 -0
- package/skills/ck-media-processing/references/common-workflows.md +132 -0
- package/skills/ck-media-processing/references/ffmpeg-encoding.md +358 -0
- package/skills/ck-media-processing/references/ffmpeg-filters.md +503 -0
- package/skills/ck-media-processing/references/ffmpeg-streaming.md +403 -0
- package/skills/ck-media-processing/references/format-compatibility.md +375 -0
- package/skills/ck-media-processing/references/imagemagick-batch.md +612 -0
- package/skills/ck-media-processing/references/imagemagick-editing.md +623 -0
- package/skills/ck-media-processing/references/rmbg-background-removal.md +66 -0
- package/skills/ck-media-processing/references/troubleshooting.md +109 -0
- package/skills/ck-media-processing/scripts/README.md +111 -0
- package/skills/ck-media-processing/scripts/batch-remove-background.sh +124 -0
- package/skills/ck-media-processing/scripts/batch_resize.py +342 -0
- package/skills/ck-media-processing/scripts/media_convert.py +311 -0
- package/skills/ck-media-processing/scripts/remove-background.sh +96 -0
- package/skills/ck-media-processing/scripts/remove-bg-node.js +158 -0
- package/skills/ck-media-processing/scripts/requirements.txt +24 -0
- package/skills/ck-media-processing/scripts/tests/.coverage +0 -0
- package/skills/ck-media-processing/scripts/tests/requirements.txt +2 -0
- package/skills/ck-media-processing/scripts/tests/test_batch_resize.py +372 -0
- package/skills/ck-media-processing/scripts/tests/test_media_convert.py +259 -0
- package/skills/ck-media-processing/scripts/tests/test_video_optimize.py +397 -0
- package/skills/ck-media-processing/scripts/video_optimize.py +414 -0
- package/skills/ck-mobile-development/SKILL.md +210 -0
- package/skills/ck-mobile-development/references/mobile-android.md +604 -0
- package/skills/ck-mobile-development/references/mobile-best-practices.md +545 -0
- package/skills/ck-mobile-development/references/mobile-debugging.md +1089 -0
- package/skills/ck-mobile-development/references/mobile-frameworks.md +465 -0
- package/skills/ck-mobile-development/references/mobile-ios.md +496 -0
- package/skills/ck-mobile-development/references/mobile-mindset.md +544 -0
- package/skills/ck-payment-integration/README.md +185 -0
- package/skills/ck-payment-integration/SKILL.md +116 -0
- package/skills/ck-payment-integration/references/polar/benefits.md +396 -0
- package/skills/ck-payment-integration/references/polar/best-practices.md +482 -0
- package/skills/ck-payment-integration/references/polar/checkouts.md +266 -0
- package/skills/ck-payment-integration/references/polar/overview.md +184 -0
- package/skills/ck-payment-integration/references/polar/products.md +244 -0
- package/skills/ck-payment-integration/references/polar/sdk.md +436 -0
- package/skills/ck-payment-integration/references/polar/subscriptions.md +340 -0
- package/skills/ck-payment-integration/references/polar/webhooks.md +405 -0
- package/skills/ck-payment-integration/references/sepay/api.md +140 -0
- package/skills/ck-payment-integration/references/sepay/best-practices.md +337 -0
- package/skills/ck-payment-integration/references/sepay/overview.md +138 -0
- package/skills/ck-payment-integration/references/sepay/qr-codes.md +228 -0
- package/skills/ck-payment-integration/references/sepay/sdk.md +213 -0
- package/skills/ck-payment-integration/references/sepay/webhooks.md +208 -0
- package/skills/ck-payment-integration/scripts/.env.example +20 -0
- package/skills/ck-payment-integration/scripts/checkout-helper.js +244 -0
- package/skills/ck-payment-integration/scripts/package.json +17 -0
- package/skills/ck-payment-integration/scripts/polar-webhook-verify.js +202 -0
- package/skills/ck-payment-integration/scripts/sepay-webhook-verify.js +193 -0
- package/skills/ck-payment-integration/scripts/test-scripts.js +237 -0
- package/skills/ck-planning/SKILL.md +79 -49
- package/skills/ck-planning/references/codebase-understanding.md +62 -0
- package/skills/ck-planning/references/output-standards.md +127 -0
- package/skills/ck-planning/references/plan-organization.md +122 -60
- package/skills/ck-planning/references/research-phase.md +49 -56
- package/skills/ck-planning/references/solution-design.md +61 -63
- package/skills/ck-problem-solving/SKILL.md +95 -0
- package/skills/ck-problem-solving/references/attribution.md +69 -0
- package/skills/ck-problem-solving/references/collision-zone-thinking.md +79 -0
- package/skills/ck-problem-solving/references/inversion-exercise.md +91 -0
- package/skills/ck-problem-solving/references/meta-pattern-recognition.md +87 -0
- package/skills/ck-problem-solving/references/scale-game.md +95 -0
- package/skills/ck-problem-solving/references/simplification-cascades.md +80 -0
- package/skills/ck-problem-solving/references/when-stuck.md +72 -0
- package/skills/ck-repomix/SKILL.md +247 -0
- package/skills/ck-repomix/references/configuration.md +211 -0
- package/skills/ck-repomix/references/usage-patterns.md +232 -0
- package/skills/ck-repomix/scripts/.coverage +0 -0
- package/skills/ck-repomix/scripts/README.md +179 -0
- package/skills/ck-repomix/scripts/repomix_batch.py +455 -0
- package/skills/ck-repomix/scripts/repos.example.json +15 -0
- package/skills/ck-repomix/scripts/requirements.txt +15 -0
- package/skills/ck-repomix/scripts/tests/test_repomix_batch.py +531 -0
- package/skills/ck-sequential-thinking/.env.example +8 -0
- package/skills/ck-sequential-thinking/README.md +183 -0
- package/skills/ck-sequential-thinking/SKILL.md +14 -2
- package/skills/ck-sequential-thinking/package.json +31 -0
- package/skills/ck-sequential-thinking/references/advanced-strategies.md +79 -0
- package/skills/ck-sequential-thinking/references/advanced-techniques.md +2 -14
- package/skills/ck-sequential-thinking/references/core-patterns.md +8 -0
- package/skills/ck-sequential-thinking/references/examples-api.md +88 -0
- package/skills/ck-sequential-thinking/references/examples-architecture.md +94 -0
- package/skills/ck-sequential-thinking/references/examples-debug.md +90 -0
- package/skills/ck-sequential-thinking/scripts/format-thought.js +159 -0
- package/skills/ck-sequential-thinking/scripts/process-thought.js +236 -0
- package/skills/ck-sequential-thinking/tests/format-thought.test.js +133 -0
- package/skills/ck-sequential-thinking/tests/process-thought.test.js +215 -0
- package/skills/ck-shopify/README.md +66 -0
- package/skills/ck-shopify/SKILL.md +319 -0
- package/skills/ck-shopify/references/app-development.md +470 -0
- package/skills/ck-shopify/references/extensions.md +493 -0
- package/skills/ck-shopify/references/themes.md +498 -0
- package/skills/ck-shopify/scripts/.coverage +0 -0
- package/skills/ck-shopify/scripts/requirements.txt +19 -0
- package/skills/ck-shopify/scripts/shopify_init.py +423 -0
- package/skills/ck-shopify/scripts/tests/.coverage +0 -0
- package/skills/ck-shopify/scripts/tests/test_shopify_init.py +385 -0
- package/skills/ck-skill-creator/LICENSE.txt +202 -0
- package/skills/ck-skill-creator/SKILL.md +265 -0
- package/skills/ck-skill-creator/scripts/init_skill.py +303 -0
- package/skills/ck-skill-creator/scripts/package_skill.py +110 -0
- package/skills/ck-skill-creator/scripts/quick_validate.py +65 -0
- package/skills/ck-threejs/SKILL.md +87 -0
- package/skills/ck-threejs/references/01-getting-started.md +177 -0
- package/skills/ck-threejs/references/02-loaders.md +169 -0
- package/skills/ck-threejs/references/03-textures.md +170 -0
- package/skills/ck-threejs/references/04-cameras.md +195 -0
- package/skills/ck-threejs/references/05-lights.md +183 -0
- package/skills/ck-threejs/references/06-animations.md +214 -0
- package/skills/ck-threejs/references/07-math.md +260 -0
- package/skills/ck-threejs/references/08-interaction.md +267 -0
- package/skills/ck-threejs/references/09-postprocessing.md +240 -0
- package/skills/ck-threejs/references/10-controls.md +259 -0
- package/skills/ck-threejs/references/11-materials-advanced.md +270 -0
- package/skills/ck-threejs/references/12-performance.md +269 -0
- package/skills/ck-threejs/references/13-node-materials.md +298 -0
- package/skills/ck-threejs/references/14-physics-vr.md +304 -0
- package/skills/ck-threejs/references/15-specialized-loaders.md +333 -0
- package/skills/ck-threejs/references/16-webgpu.md +302 -0
- package/skills/ck-ui-styling/LICENSE.txt +202 -0
- package/skills/ck-ui-styling/SKILL.md +319 -0
- package/skills/ck-ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/skills/ck-ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/skills/ck-ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/skills/ck-ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/skills/ck-ui-styling/references/canvas-design-system.md +320 -0
- package/skills/ck-ui-styling/references/shadcn-accessibility.md +471 -0
- package/skills/ck-ui-styling/references/shadcn-components.md +424 -0
- package/skills/ck-ui-styling/references/shadcn-theming.md +373 -0
- package/skills/ck-ui-styling/references/tailwind-customization.md +483 -0
- package/skills/ck-ui-styling/references/tailwind-responsive.md +382 -0
- package/skills/ck-ui-styling/references/tailwind-utilities.md +455 -0
- package/skills/ck-ui-styling/scripts/.coverage +0 -0
- package/skills/ck-ui-styling/scripts/requirements.txt +17 -0
- package/skills/ck-ui-styling/scripts/shadcn_add.py +292 -0
- package/skills/ck-ui-styling/scripts/tailwind_config_gen.py +456 -0
- package/skills/ck-ui-styling/scripts/tests/coverage-ui.json +1 -0
- package/skills/ck-ui-styling/scripts/tests/requirements.txt +3 -0
- package/skills/ck-ui-styling/scripts/tests/test_shadcn_add.py +266 -0
- package/skills/ck-ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
- package/skills/ck-ui-ux-pro-max/SKILL.md +227 -0
- package/skills/ck-ui-ux-pro-max/data/charts.csv +26 -0
- package/skills/ck-ui-ux-pro-max/data/colors.csv +97 -0
- package/skills/ck-ui-ux-pro-max/data/landing.csv +31 -0
- package/skills/ck-ui-ux-pro-max/data/products.csv +97 -0
- package/skills/ck-ui-ux-pro-max/data/prompts.csv +24 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/html-tailwind.csv +51 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/skills/ck-ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/skills/ck-ui-ux-pro-max/data/styles.csv +59 -0
- package/skills/ck-ui-ux-pro-max/data/typography.csv +58 -0
- package/skills/ck-ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/skills/ck-ui-ux-pro-max/scripts/core.py +236 -0
- package/skills/ck-ui-ux-pro-max/scripts/search.py +76 -0
- package/skills/ck-web-frameworks/SKILL.md +322 -0
- package/skills/ck-web-frameworks/references/nextjs-app-router.md +465 -0
- package/skills/ck-web-frameworks/references/nextjs-data-fetching.md +459 -0
- package/skills/ck-web-frameworks/references/nextjs-optimization.md +511 -0
- package/skills/ck-web-frameworks/references/nextjs-server-components.md +495 -0
- package/skills/ck-web-frameworks/references/remix-icon-integration.md +603 -0
- package/skills/ck-web-frameworks/references/turborepo-caching.md +551 -0
- package/skills/ck-web-frameworks/references/turborepo-pipelines.md +517 -0
- package/skills/ck-web-frameworks/references/turborepo-setup.md +542 -0
- package/skills/ck-web-frameworks/scripts/.coverage +0 -0
- package/skills/ck-web-frameworks/scripts/__init__.py +0 -0
- package/skills/ck-web-frameworks/scripts/nextjs_init.py +547 -0
- package/skills/ck-web-frameworks/scripts/requirements.txt +16 -0
- package/skills/ck-web-frameworks/scripts/tests/coverage-web.json +1 -0
- package/skills/ck-web-frameworks/scripts/tests/requirements.txt +3 -0
- package/skills/ck-web-frameworks/scripts/tests/test_nextjs_init.py +319 -0
- package/skills/ck-web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -0
- package/skills/ck-web-frameworks/scripts/turborepo_migrate.py +394 -0
- package/src/commands/init.js +61 -30
- package/src/utils/paths.js +35 -4
|
@@ -1,65 +1,63 @@
|
|
|
1
1
|
# Solution Design
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
- [ ] Trade-offs documented?
|
|
65
|
-
- [ ] Fits existing patterns?
|
|
3
|
+
## Core Principles
|
|
4
|
+
|
|
5
|
+
Follow these fundamental principles:
|
|
6
|
+
- **YAGNI** (You Aren't Gonna Need It) - Don't add functionality until necessary
|
|
7
|
+
- **KISS** (Keep It Simple, Stupid) - Prefer simple solutions over complex ones
|
|
8
|
+
- **DRY** (Don't Repeat Yourself) - Avoid code duplication
|
|
9
|
+
|
|
10
|
+
## Design Activities
|
|
11
|
+
|
|
12
|
+
### Technical Trade-off Analysis
|
|
13
|
+
- Evaluate multiple approaches for each requirement
|
|
14
|
+
- Compare pros and cons of different solutions
|
|
15
|
+
- Consider short-term vs long-term implications
|
|
16
|
+
- Balance complexity with maintainability
|
|
17
|
+
- Assess development effort vs benefit
|
|
18
|
+
- Recommend optimal solution based on current best practices
|
|
19
|
+
|
|
20
|
+
### Security Assessment
|
|
21
|
+
- Identify potential vulnerabilities during design phase
|
|
22
|
+
- Consider authentication and authorization requirements
|
|
23
|
+
- Assess data protection needs
|
|
24
|
+
- Evaluate input validation requirements
|
|
25
|
+
- Plan for secure configuration management
|
|
26
|
+
- Address OWASP Top 10 concerns
|
|
27
|
+
- Consider API security (rate limiting, CORS, etc.)
|
|
28
|
+
|
|
29
|
+
### Performance & Scalability
|
|
30
|
+
- Identify potential bottlenecks early
|
|
31
|
+
- Consider database query optimization needs
|
|
32
|
+
- Plan for caching strategies
|
|
33
|
+
- Assess resource usage (memory, CPU, network)
|
|
34
|
+
- Design for horizontal/vertical scaling
|
|
35
|
+
- Plan for load distribution
|
|
36
|
+
- Consider asynchronous processing where appropriate
|
|
37
|
+
|
|
38
|
+
### Edge Cases & Failure Modes
|
|
39
|
+
- Think through error scenarios
|
|
40
|
+
- Plan for network failures
|
|
41
|
+
- Consider partial failure handling
|
|
42
|
+
- Design retry and fallback mechanisms
|
|
43
|
+
- Plan for data consistency
|
|
44
|
+
- Consider race conditions
|
|
45
|
+
- Design for graceful degradation
|
|
46
|
+
|
|
47
|
+
### Architecture Design
|
|
48
|
+
- Create scalable system architectures
|
|
49
|
+
- Design for maintainability
|
|
50
|
+
- Plan component interactions
|
|
51
|
+
- Design data flow
|
|
52
|
+
- Consider microservices vs monolith trade-offs
|
|
53
|
+
- Plan API contracts
|
|
54
|
+
- Design state management
|
|
55
|
+
|
|
56
|
+
## Best Practices
|
|
57
|
+
|
|
58
|
+
- Document design decisions and rationale
|
|
59
|
+
- Consider both technical and business requirements
|
|
60
|
+
- Think through the entire user journey
|
|
61
|
+
- Plan for monitoring and observability
|
|
62
|
+
- Design with testing in mind
|
|
63
|
+
- Consider deployment and rollback strategies
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'ck-problem-solving'
|
|
3
|
+
description: 'Apply systematic problem-solving techniques for complexity spirals (simplification cascades), innovation blocks (collision-zone thinking), recurring patterns (meta-pattern recognition), assumption constraints (inversion exercise), scale uncertainty (scale game), and dispatch when stuck. Techniques derived from Microsoft Amplifier project patterns adapted for immediate application.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Problem-Solving Techniques
|
|
7
|
+
|
|
8
|
+
Systematic approaches for different types of stuck-ness. Each technique targets specific problem patterns.
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
|
|
12
|
+
Apply when encountering:
|
|
13
|
+
- **Complexity spiraling** - Multiple implementations, growing special cases, excessive branching
|
|
14
|
+
- **Innovation blocks** - Conventional solutions inadequate, need breakthrough thinking
|
|
15
|
+
- **Recurring patterns** - Same issue across domains, reinventing solutions
|
|
16
|
+
- **Assumption constraints** - Forced into "only way", can't question premise
|
|
17
|
+
- **Scale uncertainty** - Production readiness unclear, edge cases unknown
|
|
18
|
+
- **General stuck-ness** - Unsure which technique applies
|
|
19
|
+
|
|
20
|
+
## Quick Dispatch
|
|
21
|
+
|
|
22
|
+
**Match symptom to technique:**
|
|
23
|
+
|
|
24
|
+
| Stuck Symptom | Technique | Reference |
|
|
25
|
+
|---------------|-----------|-----------|
|
|
26
|
+
| Same thing implemented 5+ ways, growing special cases | **Simplification Cascades** | `references/simplification-cascades.md` |
|
|
27
|
+
| Conventional solutions inadequate, need breakthrough | **Collision-Zone Thinking** | `references/collision-zone-thinking.md` |
|
|
28
|
+
| Same issue in different places, reinventing wheels | **Meta-Pattern Recognition** | `references/meta-pattern-recognition.md` |
|
|
29
|
+
| Solution feels forced, "must be done this way" | **Inversion Exercise** | `references/inversion-exercise.md` |
|
|
30
|
+
| Will this work at production? Edge cases unclear? | **Scale Game** | `references/scale-game.md` |
|
|
31
|
+
| Unsure which technique to use | **When Stuck** | `references/when-stuck.md` |
|
|
32
|
+
|
|
33
|
+
## Core Techniques
|
|
34
|
+
|
|
35
|
+
### 1. Simplification Cascades
|
|
36
|
+
Find one insight eliminating multiple components. "If this is true, we don't need X, Y, Z."
|
|
37
|
+
|
|
38
|
+
**Key insight:** Everything is a special case of one general pattern.
|
|
39
|
+
|
|
40
|
+
**Red flag:** "Just need to add one more case..." (repeating forever)
|
|
41
|
+
|
|
42
|
+
### 2. Collision-Zone Thinking
|
|
43
|
+
Force unrelated concepts together to discover emergent properties. "What if we treated X like Y?"
|
|
44
|
+
|
|
45
|
+
**Key insight:** Revolutionary ideas from deliberate metaphor-mixing.
|
|
46
|
+
|
|
47
|
+
**Red flag:** "I've tried everything in this domain"
|
|
48
|
+
|
|
49
|
+
### 3. Meta-Pattern Recognition
|
|
50
|
+
Spot patterns appearing in 3+ domains to find universal principles.
|
|
51
|
+
|
|
52
|
+
**Key insight:** Patterns in how patterns emerge reveal reusable abstractions.
|
|
53
|
+
|
|
54
|
+
**Red flag:** "This problem is unique" (probably not)
|
|
55
|
+
|
|
56
|
+
### 4. Inversion Exercise
|
|
57
|
+
Flip core assumptions to reveal hidden constraints. "What if the opposite were true?"
|
|
58
|
+
|
|
59
|
+
**Key insight:** Valid inversions reveal context-dependence of "rules."
|
|
60
|
+
|
|
61
|
+
**Red flag:** "There's only one way to do this"
|
|
62
|
+
|
|
63
|
+
### 5. Scale Game
|
|
64
|
+
Test at extremes (1000x bigger/smaller, instant/year-long) to expose fundamental truths.
|
|
65
|
+
|
|
66
|
+
**Key insight:** What works at one scale fails at another.
|
|
67
|
+
|
|
68
|
+
**Red flag:** "Should scale fine" (without testing)
|
|
69
|
+
|
|
70
|
+
## Application Process
|
|
71
|
+
|
|
72
|
+
1. **Identify stuck-type** - Match symptom to technique above
|
|
73
|
+
2. **Load detailed reference** - Read specific technique from `references/`
|
|
74
|
+
3. **Apply systematically** - Follow technique's process
|
|
75
|
+
4. **Document insights** - Record what worked/failed
|
|
76
|
+
5. **Combine if needed** - Some problems need multiple techniques
|
|
77
|
+
|
|
78
|
+
## Combining Techniques
|
|
79
|
+
|
|
80
|
+
Powerful combinations:
|
|
81
|
+
- **Simplification + Meta-pattern** - Find pattern, then simplify all instances
|
|
82
|
+
- **Collision + Inversion** - Force metaphor, then invert its assumptions
|
|
83
|
+
- **Scale + Simplification** - Extremes reveal what to eliminate
|
|
84
|
+
- **Meta-pattern + Scale** - Universal patterns tested at extremes
|
|
85
|
+
|
|
86
|
+
## References
|
|
87
|
+
|
|
88
|
+
Load detailed guides as needed:
|
|
89
|
+
- `references/when-stuck.md` - Dispatch flowchart and decision tree
|
|
90
|
+
- `references/simplification-cascades.md` - Cascade detection and extraction
|
|
91
|
+
- `references/collision-zone-thinking.md` - Metaphor collision process
|
|
92
|
+
- `references/meta-pattern-recognition.md` - Pattern abstraction techniques
|
|
93
|
+
- `references/inversion-exercise.md` - Assumption flipping methodology
|
|
94
|
+
- `references/scale-game.md` - Extreme testing procedures
|
|
95
|
+
- `references/attribution.md` - Source and adaptation notes
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Problem-Solving Skills - Attribution
|
|
2
|
+
|
|
3
|
+
These skills were derived from agent patterns in the Microsoft Amplifier project.
|
|
4
|
+
|
|
5
|
+
## Source Repository
|
|
6
|
+
|
|
7
|
+
- **Name:** Amplifier
|
|
8
|
+
- **URL:** https://github.com/microsoft/amplifier
|
|
9
|
+
- **Commit:** 2adb63f858e7d760e188197c8e8d4c1ef721e2a6
|
|
10
|
+
- **Date:** 2025-10-10
|
|
11
|
+
|
|
12
|
+
## Skills Derived from Amplifier Agents
|
|
13
|
+
|
|
14
|
+
### From insight-synthesizer agent:
|
|
15
|
+
- **simplification-cascades** - Finding insights that eliminate multiple components
|
|
16
|
+
- **collision-zone-thinking** - Forcing unrelated concepts together for breakthroughs
|
|
17
|
+
- **meta-pattern-recognition** - Spotting patterns across 3+ domains
|
|
18
|
+
- **inversion-exercise** - Flipping assumptions to reveal alternatives
|
|
19
|
+
- **scale-game** - Testing at extremes to expose fundamental truths
|
|
20
|
+
|
|
21
|
+
### From ambiguity-guardian agent:
|
|
22
|
+
- **preserving-productive-tensions** - Preserving multiple valid approaches (in architecture skill)
|
|
23
|
+
|
|
24
|
+
### From knowledge-archaeologist agent:
|
|
25
|
+
- **tracing-knowledge-lineages** - Understanding how ideas evolved (in research skill)
|
|
26
|
+
|
|
27
|
+
### Dispatch pattern:
|
|
28
|
+
- **when-stuck** - Maps stuck-symptoms to appropriate technique
|
|
29
|
+
|
|
30
|
+
## What Was Adapted
|
|
31
|
+
|
|
32
|
+
The Amplifier agents are specialized long-lived agents with structured JSON output. These skills extract the core problem-solving techniques and adapt them as:
|
|
33
|
+
|
|
34
|
+
- **Scannable quick-reference guides** (~60-80 lines each)
|
|
35
|
+
- **Symptom-based discovery** via when_to_use descriptions
|
|
36
|
+
- **Immediate application** without special tooling
|
|
37
|
+
- **Composable patterns** through dispatch system
|
|
38
|
+
- **Progressive disclosure** via SKILL.md + references structure
|
|
39
|
+
|
|
40
|
+
## Core Insight
|
|
41
|
+
|
|
42
|
+
Agent capabilities are domain-agnostic patterns. Whether packaged as "amplifier agent" or "problem-solving skill", the underlying technique is the same.
|
|
43
|
+
|
|
44
|
+
We extracted the techniques and made them:
|
|
45
|
+
- Portable across contexts
|
|
46
|
+
- Immediately applicable
|
|
47
|
+
- Token-efficient through progressive disclosure
|
|
48
|
+
- Discoverable through symptom-matching
|
|
49
|
+
- Combinable for complex problems
|
|
50
|
+
|
|
51
|
+
## License
|
|
52
|
+
|
|
53
|
+
Original Amplifier project uses MIT License. These adapted skills maintain attribution and follow the same open spirit.
|
|
54
|
+
|
|
55
|
+
## Adaptation Notes
|
|
56
|
+
|
|
57
|
+
**Changes from original:**
|
|
58
|
+
- Converted from long-lived agent to scannable reference
|
|
59
|
+
- Added symptom-based dispatch system
|
|
60
|
+
- Removed JSON output requirements
|
|
61
|
+
- Focused on immediate application
|
|
62
|
+
- Added concrete examples
|
|
63
|
+
- Structured for progressive disclosure
|
|
64
|
+
|
|
65
|
+
**Preserved from original:**
|
|
66
|
+
- Core problem-solving techniques
|
|
67
|
+
- Recognition patterns
|
|
68
|
+
- Application processes
|
|
69
|
+
- Fundamental insights
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Collision-Zone Thinking
|
|
2
|
+
|
|
3
|
+
Force unrelated concepts together to discover emergent properties. "What if we treated X like Y?"
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
Revolutionary insights from deliberate metaphor-mixing. Treat X like Y and see what emerges.
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
| Symptom | Action |
|
|
12
|
+
|---------|--------|
|
|
13
|
+
| Stuck in conventional thinking | Force wild domain collision |
|
|
14
|
+
| Solutions feel incremental | Need breakthrough, not optimization |
|
|
15
|
+
| "Tried everything in this domain" | Import concepts from elsewhere |
|
|
16
|
+
| Need innovation, not iteration | Deliberately mix unrelated ideas |
|
|
17
|
+
|
|
18
|
+
## Quick Reference Collisions
|
|
19
|
+
|
|
20
|
+
| Treat This | Like This | Discovers |
|
|
21
|
+
|------------|-----------|-----------|
|
|
22
|
+
| Code organization | DNA/genetics | Mutation testing, evolutionary algorithms |
|
|
23
|
+
| Service architecture | Lego bricks | Composable microservices, plug-and-play |
|
|
24
|
+
| Data management | Water flow | Streaming, data lakes, flow-based systems |
|
|
25
|
+
| Request handling | Postal mail | Message queues, async processing |
|
|
26
|
+
| Error handling | Circuit breakers | Fault isolation, graceful degradation |
|
|
27
|
+
|
|
28
|
+
## Process
|
|
29
|
+
|
|
30
|
+
1. **Pick two unrelated concepts** from different domains
|
|
31
|
+
2. **Force combination** - "What if we treated [A] like [B]?"
|
|
32
|
+
3. **Explore emergent properties** - What new capabilities appear?
|
|
33
|
+
4. **Test boundaries** - Where does the metaphor break?
|
|
34
|
+
5. **Extract insight** - What did we learn?
|
|
35
|
+
|
|
36
|
+
## Detailed Example
|
|
37
|
+
|
|
38
|
+
**Problem:** Complex distributed system with cascading failures
|
|
39
|
+
|
|
40
|
+
**Collision:** "What if we treated services like electrical circuits?"
|
|
41
|
+
|
|
42
|
+
**Emergent properties:**
|
|
43
|
+
- Circuit breakers (disconnect on overload)
|
|
44
|
+
- Fuses (one-time failure protection)
|
|
45
|
+
- Ground faults (error isolation)
|
|
46
|
+
- Load balancing (current distribution)
|
|
47
|
+
- Voltage regulation (rate limiting)
|
|
48
|
+
|
|
49
|
+
**Where it works:** Preventing cascade failures, fault isolation
|
|
50
|
+
|
|
51
|
+
**Where it breaks:** Circuits don't have retry logic, healing mechanisms
|
|
52
|
+
|
|
53
|
+
**Insight gained:** Failure isolation patterns from electrical engineering
|
|
54
|
+
|
|
55
|
+
## Best Source Domains
|
|
56
|
+
|
|
57
|
+
Rich domains for concept mining:
|
|
58
|
+
- **Physics** - Forces, thermodynamics, relativity
|
|
59
|
+
- **Biology** - Evolution, ecosystems, immune systems
|
|
60
|
+
- **Economics** - Markets, incentives, game theory
|
|
61
|
+
- **Psychology** - Cognition, behavior, motivation
|
|
62
|
+
- **Architecture** - Structure, flow, space utilization
|
|
63
|
+
|
|
64
|
+
## Red Flags
|
|
65
|
+
|
|
66
|
+
You need collision-zone thinking when:
|
|
67
|
+
- "I've tried everything in this domain"
|
|
68
|
+
- Solutions feel incremental, not breakthrough
|
|
69
|
+
- Stuck in conventional thinking
|
|
70
|
+
- Need innovation, not optimization
|
|
71
|
+
- "Standard approach isn't working"
|
|
72
|
+
|
|
73
|
+
## Remember
|
|
74
|
+
|
|
75
|
+
- Wild combinations often yield best insights
|
|
76
|
+
- Test metaphor boundaries rigorously
|
|
77
|
+
- Document even failed collisions (they teach)
|
|
78
|
+
- Breakthrough > incremental improvement
|
|
79
|
+
- Question: "What would [domain expert] do?"
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Inversion Exercise
|
|
2
|
+
|
|
3
|
+
Flip core assumptions to reveal hidden constraints and alternative approaches. "What if the opposite were true?"
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
**Inversion exposes hidden assumptions.** Sometimes the opposite reveals the truth.
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
| Symptom | Action |
|
|
12
|
+
|---------|--------|
|
|
13
|
+
| "There's only one way" | Flip the assumption |
|
|
14
|
+
| Solution feels forced | Invert the constraints |
|
|
15
|
+
| Can't articulate why necessary | Question the "must" |
|
|
16
|
+
| "This is just how it's done" | Try the opposite |
|
|
17
|
+
|
|
18
|
+
## Quick Reference
|
|
19
|
+
|
|
20
|
+
| Normal Assumption | Inverted | What It Reveals |
|
|
21
|
+
|-------------------|----------|-----------------|
|
|
22
|
+
| Cache to reduce latency | Add latency to enable caching | Debouncing patterns |
|
|
23
|
+
| Pull data when needed | Push data before needed | Prefetching, eager loading |
|
|
24
|
+
| Handle errors when occur | Make errors impossible | Type systems, contracts |
|
|
25
|
+
| Build features users want | Remove features users don't need | Simplicity >> addition |
|
|
26
|
+
| Optimize for common case | Optimize for worst case | Resilience patterns |
|
|
27
|
+
|
|
28
|
+
## Process
|
|
29
|
+
|
|
30
|
+
1. **List core assumptions** - What "must" be true?
|
|
31
|
+
2. **Invert each systematically** - "What if opposite were true?"
|
|
32
|
+
3. **Explore implications** - What would we do differently?
|
|
33
|
+
4. **Find valid inversions** - Which actually work somewhere?
|
|
34
|
+
5. **Document insights** - What did we learn?
|
|
35
|
+
|
|
36
|
+
## Detailed Example
|
|
37
|
+
|
|
38
|
+
**Problem:** Users complain app is slow
|
|
39
|
+
|
|
40
|
+
**Normal approach:** Make everything faster
|
|
41
|
+
- Add caching
|
|
42
|
+
- Optimize queries
|
|
43
|
+
- Use CDN
|
|
44
|
+
- Reduce bundle size
|
|
45
|
+
|
|
46
|
+
**Inverted approach:** Make things intentionally slower in some places
|
|
47
|
+
- **Debounce search** - Add latency → enable better results (wait for full query)
|
|
48
|
+
- **Rate limit requests** - Add friction → prevent abuse, improve for others
|
|
49
|
+
- **Lazy load content** - Delay loading → reduce initial load time
|
|
50
|
+
- **Progressive rendering** - Show slower → perceived performance
|
|
51
|
+
|
|
52
|
+
**Insight:** Strategic slowness can improve UX
|
|
53
|
+
|
|
54
|
+
## Valid vs Invalid Inversions
|
|
55
|
+
|
|
56
|
+
**Valid inversion example:**
|
|
57
|
+
- Normal: "Store data in database"
|
|
58
|
+
- Inverted: "Derive data on-demand instead of storing"
|
|
59
|
+
- Valid when: Computation cheaper than storage, data changes frequently
|
|
60
|
+
|
|
61
|
+
**Invalid inversion example:**
|
|
62
|
+
- Normal: "Validate user input"
|
|
63
|
+
- Inverted: "Trust all user input"
|
|
64
|
+
- Invalid because: Security vulnerability, not context-dependent
|
|
65
|
+
|
|
66
|
+
**Test validity:** Does the inversion work in ANY context? If yes, it's valid somewhere.
|
|
67
|
+
|
|
68
|
+
## Common Inversions
|
|
69
|
+
|
|
70
|
+
- **Eager → Lazy** (or vice versa)
|
|
71
|
+
- **Push → Pull** (or vice versa)
|
|
72
|
+
- **Store → Compute** (or vice versa)
|
|
73
|
+
- **Optimize → Simplify** (or vice versa)
|
|
74
|
+
- **Add features → Remove features** (or vice versa)
|
|
75
|
+
|
|
76
|
+
## Red Flags
|
|
77
|
+
|
|
78
|
+
You need inversion exercise when:
|
|
79
|
+
- "There's only one way to do this"
|
|
80
|
+
- Forcing solution that feels wrong
|
|
81
|
+
- Can't articulate why approach is necessary
|
|
82
|
+
- "This is just how it's done"
|
|
83
|
+
- Stuck on unquestioned assumptions
|
|
84
|
+
|
|
85
|
+
## Remember
|
|
86
|
+
|
|
87
|
+
- Not all inversions work (test boundaries)
|
|
88
|
+
- Valid inversions reveal context-dependence
|
|
89
|
+
- Sometimes opposite is the answer
|
|
90
|
+
- Question "must be" statements
|
|
91
|
+
- Document both successful and failed inversions
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Meta-Pattern Recognition
|
|
2
|
+
|
|
3
|
+
Spot patterns appearing in 3+ domains to find universal principles.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
**Find patterns in how patterns emerge.** When the same pattern appears in 3+ domains, it's likely a universal principle worth extracting.
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
| Symptom | Action |
|
|
12
|
+
|---------|--------|
|
|
13
|
+
| Same issue in different places | Extract the abstract form |
|
|
14
|
+
| Déjà vu in problem-solving | Find the universal pattern |
|
|
15
|
+
| Reinventing wheels across domains | Identify the meta-pattern |
|
|
16
|
+
| "Haven't we done this before?" | Yes, find and reuse it |
|
|
17
|
+
|
|
18
|
+
## Quick Reference
|
|
19
|
+
|
|
20
|
+
| Pattern Appears In | Abstract Form | Where Else? |
|
|
21
|
+
|-------------------|---------------|-------------|
|
|
22
|
+
| CPU/DB/HTTP/DNS caching | Store frequently-accessed data closer | LLM prompt caching, CDN |
|
|
23
|
+
| Layering (network/storage/compute) | Separate concerns into abstraction levels | Architecture, org structure |
|
|
24
|
+
| Queuing (message/task/request) | Decouple producer from consumer with buffer | Event systems, async |
|
|
25
|
+
| Pooling (connection/thread/object) | Reuse expensive resources | Memory mgmt, governance |
|
|
26
|
+
|
|
27
|
+
## Process
|
|
28
|
+
|
|
29
|
+
1. **Spot repetition** - See same shape in 3+ places
|
|
30
|
+
2. **Extract abstract form** - Describe independent of any domain
|
|
31
|
+
3. **Identify variations** - How does it adapt per domain?
|
|
32
|
+
4. **Check applicability** - Where else might this help?
|
|
33
|
+
5. **Document pattern** - Make it reusable
|
|
34
|
+
|
|
35
|
+
## Detailed Example
|
|
36
|
+
|
|
37
|
+
**Pattern spotted:** Rate limiting appears in:
|
|
38
|
+
- API throttling (requests per minute)
|
|
39
|
+
- Traffic shaping (packets per second)
|
|
40
|
+
- Circuit breakers (failures per window)
|
|
41
|
+
- Admission control (concurrent connections)
|
|
42
|
+
|
|
43
|
+
**Abstract form:** Bound resource consumption to prevent exhaustion
|
|
44
|
+
|
|
45
|
+
**Variation points:**
|
|
46
|
+
- What resource (requests, packets, failures, connections)
|
|
47
|
+
- What limit (per time window, concurrent, cumulative)
|
|
48
|
+
- What happens when exceeded (reject, queue, degrade)
|
|
49
|
+
|
|
50
|
+
**New application:** LLM token budgets
|
|
51
|
+
- Same pattern: prevent context window exhaustion
|
|
52
|
+
- Resource: tokens
|
|
53
|
+
- Limit: context window size
|
|
54
|
+
- Action: truncate or reject
|
|
55
|
+
|
|
56
|
+
## 3+ Domain Rule
|
|
57
|
+
|
|
58
|
+
**Why 3 domains?**
|
|
59
|
+
- 1 occurrence = coincidence
|
|
60
|
+
- 2 occurrences = possible pattern
|
|
61
|
+
- 3+ occurrences = likely universal
|
|
62
|
+
|
|
63
|
+
**Domain independence test:**
|
|
64
|
+
Can you describe the pattern without mentioning specific domains?
|
|
65
|
+
|
|
66
|
+
## Red Flags
|
|
67
|
+
|
|
68
|
+
Signs you're missing meta-patterns:
|
|
69
|
+
- "This problem is unique" (probably not)
|
|
70
|
+
- Multiple teams solving "different" problems identically
|
|
71
|
+
- Reinventing wheels across domains
|
|
72
|
+
- "Haven't we done something like this?" (yes, find it)
|
|
73
|
+
|
|
74
|
+
## Benefits of Meta-Patterns
|
|
75
|
+
|
|
76
|
+
- **Battle-tested** - Proven across multiple domains
|
|
77
|
+
- **Reusable** - Apply to new situations
|
|
78
|
+
- **Universal** - Domain-independent solutions
|
|
79
|
+
- **Documented** - Known variations and trade-offs
|
|
80
|
+
|
|
81
|
+
## Remember
|
|
82
|
+
|
|
83
|
+
- 3+ domains = likely universal
|
|
84
|
+
- Abstract form reveals new applications
|
|
85
|
+
- Variations show adaptation points
|
|
86
|
+
- Universal patterns save time
|
|
87
|
+
- Document for future reuse
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Scale Game
|
|
2
|
+
|
|
3
|
+
Test at extremes (1000x bigger/smaller, instant/year-long) to expose fundamental truths hidden at normal scales.
|
|
4
|
+
|
|
5
|
+
## Core Principle
|
|
6
|
+
|
|
7
|
+
**Extremes expose fundamentals.** What works at one scale fails at another.
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
| Symptom | Action |
|
|
12
|
+
|---------|--------|
|
|
13
|
+
| "Should scale fine" (without testing) | Test at extremes |
|
|
14
|
+
| Uncertain about production behavior | Scale up 1000x |
|
|
15
|
+
| Edge cases unclear | Test minimum and maximum |
|
|
16
|
+
| Architecture validation needed | Extreme testing |
|
|
17
|
+
|
|
18
|
+
## Quick Reference
|
|
19
|
+
|
|
20
|
+
| Scale Dimension | Test At Extremes | What It Reveals |
|
|
21
|
+
|-----------------|------------------|-----------------|
|
|
22
|
+
| **Volume** | 1 item vs 1B items | Algorithmic complexity limits |
|
|
23
|
+
| **Speed** | Instant vs 1 year | Async requirements, caching needs |
|
|
24
|
+
| **Users** | 1 user vs 1B users | Concurrency issues, resource limits |
|
|
25
|
+
| **Duration** | Milliseconds vs years | Memory leaks, state growth |
|
|
26
|
+
| **Failure rate** | Never fails vs always fails | Error handling adequacy |
|
|
27
|
+
|
|
28
|
+
## Process
|
|
29
|
+
|
|
30
|
+
1. **Pick dimension** - What could vary extremely?
|
|
31
|
+
2. **Test minimum** - What if 1000x smaller/faster/fewer?
|
|
32
|
+
3. **Test maximum** - What if 1000x bigger/slower/more?
|
|
33
|
+
4. **Note what breaks** - Where do limits appear?
|
|
34
|
+
5. **Note what survives** - What's fundamentally sound?
|
|
35
|
+
6. **Design for reality** - Use insights to validate architecture
|
|
36
|
+
|
|
37
|
+
## Detailed Examples
|
|
38
|
+
|
|
39
|
+
### Example 1: Error Handling
|
|
40
|
+
- **Normal scale:** "Handle errors when they occur" works fine
|
|
41
|
+
- **At 1B scale:** Error volume overwhelms logging, crashes system
|
|
42
|
+
- **Reveals:** Need to make errors impossible (type systems) or expect them (chaos engineering)
|
|
43
|
+
- **Action:** Design error handling for volume, not just occurrence
|
|
44
|
+
|
|
45
|
+
### Example 2: Synchronous APIs
|
|
46
|
+
- **Normal scale:** Direct function calls work, < 100ms latency
|
|
47
|
+
- **At global scale:** Network latency makes synchronous unusable (200-500ms)
|
|
48
|
+
- **Reveals:** Async/messaging becomes survival requirement, not optimization
|
|
49
|
+
- **Action:** Design async-first from start
|
|
50
|
+
|
|
51
|
+
### Example 3: In-Memory State
|
|
52
|
+
- **Normal duration:** Works for hours/days in development
|
|
53
|
+
- **At years:** Memory grows unbounded, eventual crash (weeks → months → years)
|
|
54
|
+
- **Reveals:** Need persistence or periodic cleanup, can't rely on memory forever
|
|
55
|
+
- **Action:** Design for stateless or externalized state
|
|
56
|
+
|
|
57
|
+
### Example 4: Single vs Million Users
|
|
58
|
+
- **Normal scale:** Session in memory works for 100 users
|
|
59
|
+
- **At 1M scale:** Memory exhausted, server crashes
|
|
60
|
+
- **Reveals:** Need distributed session store (Redis, database)
|
|
61
|
+
- **Action:** Design for horizontal scaling from start
|
|
62
|
+
|
|
63
|
+
## Both Directions Matter
|
|
64
|
+
|
|
65
|
+
**Test smaller too:**
|
|
66
|
+
- What if only 1 user? Does complexity make sense?
|
|
67
|
+
- What if only 10 items? Is optimization premature?
|
|
68
|
+
- What if instant response? What becomes unnecessary?
|
|
69
|
+
|
|
70
|
+
Often reveals over-engineering or premature optimization.
|
|
71
|
+
|
|
72
|
+
## Red Flags
|
|
73
|
+
|
|
74
|
+
You need scale game when:
|
|
75
|
+
- "It works in dev" (but will it work in production?)
|
|
76
|
+
- No idea where limits are
|
|
77
|
+
- "Should scale fine" (without evidence)
|
|
78
|
+
- Surprised by production behavior
|
|
79
|
+
- Architecture feels arbitrary
|
|
80
|
+
|
|
81
|
+
## Success Metrics
|
|
82
|
+
|
|
83
|
+
After scale game, you should know:
|
|
84
|
+
- Where system breaks (exact limits)
|
|
85
|
+
- What survives (fundamentally sound parts)
|
|
86
|
+
- What needs redesign (scale-dependent)
|
|
87
|
+
- Production readiness (validated architecture)
|
|
88
|
+
|
|
89
|
+
## Remember
|
|
90
|
+
|
|
91
|
+
- Extremes reveal fundamentals hidden at normal scales
|
|
92
|
+
- What works at one scale fails at another
|
|
93
|
+
- Test BOTH directions (bigger AND smaller)
|
|
94
|
+
- Use insights to validate architecture early
|
|
95
|
+
- Don't guess - test at extremes
|