cfsa-antigravity 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.mjs +324 -0
- package/package.json +34 -0
- package/template/.agent/instructions/commands.md +48 -0
- package/template/.agent/instructions/patterns.md +61 -0
- package/template/.agent/instructions/structure.md +29 -0
- package/template/.agent/instructions/tech-stack.md +43 -0
- package/template/.agent/instructions/workflow.md +41 -0
- package/template/.agent/kit-sync.md +15 -0
- package/template/.agent/rules/boundary-not-placeholder.md +146 -0
- package/template/.agent/rules/completion-checklist.md +48 -0
- package/template/.agent/rules/decision-classification.md +103 -0
- package/template/.agent/rules/extensibility.md +47 -0
- package/template/.agent/rules/question-vs-command.md +81 -0
- package/template/.agent/rules/security-first.md +43 -0
- package/template/.agent/rules/specificity-standards.md +54 -0
- package/template/.agent/rules/tdd-contract-first.md +57 -0
- package/template/.agent/rules/vertical-slices.md +42 -0
- package/template/.agent/skill-library/MANIFEST.md +480 -0
- package/template/.agent/skill-library/README.md +38 -0
- package/template/.agent/skill-library/meta/brand-guidelines/SKILL.md +73 -0
- package/template/.agent/skill-library/meta/claude-code/README.md +9 -0
- package/template/.agent/skill-library/meta/claude-code/agent-development/SKILL.md +415 -0
- package/template/.agent/skill-library/meta/claude-code/hook-development/SKILL.md +712 -0
- package/template/.agent/skill-library/meta/claude-code/plugin-structure/SKILL.md +476 -0
- package/template/.agent/skill-library/meta/git-advanced/SKILL.md +972 -0
- package/template/.agent/skill-library/meta/mcp-builder/SKILL.md +236 -0
- package/template/.agent/skill-library/meta/product-marketing-context/SKILL.md +241 -0
- package/template/.agent/skill-library/meta/regex-patterns/SKILL.md +751 -0
- package/template/.agent/skill-library/meta/tmux-processes/SKILL.md +210 -0
- package/template/.agent/skill-library/meta/using-tmux-for-interactive-commands/SKILL.md +178 -0
- package/template/.agent/skill-library/stack/3d/threejs-pro/SKILL.md +300 -0
- package/template/.agent/skill-library/stack/ai/ai-sdk/SKILL.md +77 -0
- package/template/.agent/skill-library/stack/ai/langchain/SKILL.md +530 -0
- package/template/.agent/skill-library/stack/ai/ollama/SKILL.md +321 -0
- package/template/.agent/skill-library/stack/ai/openai-sdk/SKILL.md +549 -0
- package/template/.agent/skill-library/stack/analytics/google-analytics/SKILL.md +153 -0
- package/template/.agent/skill-library/stack/api/graphql/SKILL.md +1061 -0
- package/template/.agent/skill-library/stack/api/trpc/SKILL.md +576 -0
- package/template/.agent/skill-library/stack/auth/authjs/SKILL.md +569 -0
- package/template/.agent/skill-library/stack/auth/clerk/SKILL.md +590 -0
- package/template/.agent/skill-library/stack/auth/firebase-auth/SKILL.md +734 -0
- package/template/.agent/skill-library/stack/cms/payload-cms/SKILL.md +573 -0
- package/template/.agent/skill-library/stack/cms/shopify/SKILL.md +1193 -0
- package/template/.agent/skill-library/stack/cms/wordpress/SKILL.md +1104 -0
- package/template/.agent/skill-library/stack/css/sass-scss/SKILL.md +1121 -0
- package/template/.agent/skill-library/stack/css/tailwind-css-patterns/SKILL.md +863 -0
- package/template/.agent/skill-library/stack/css/tailwind-design-system/SKILL.md +490 -0
- package/template/.agent/skill-library/stack/css/vanilla-css/SKILL.md +1078 -0
- package/template/.agent/skill-library/stack/databases/clickhouse/SKILL.md +311 -0
- package/template/.agent/skill-library/stack/databases/influxdb/SKILL.md +280 -0
- package/template/.agent/skill-library/stack/databases/lancedb/SKILL.md +415 -0
- package/template/.agent/skill-library/stack/databases/mongodb/SKILL.md +1169 -0
- package/template/.agent/skill-library/stack/databases/neo4j/SKILL.md +839 -0
- package/template/.agent/skill-library/stack/databases/pgvector/SKILL.md +241 -0
- package/template/.agent/skill-library/stack/databases/pinecone/SKILL.md +212 -0
- package/template/.agent/skill-library/stack/databases/postgresql/SKILL.md +658 -0
- package/template/.agent/skill-library/stack/databases/qdrant/SKILL.md +312 -0
- package/template/.agent/skill-library/stack/databases/redis/SKILL.md +1079 -0
- package/template/.agent/skill-library/stack/databases/spacetimedb/SKILL.md +532 -0
- package/template/.agent/skill-library/stack/databases/sqlite/SKILL.md +1132 -0
- package/template/.agent/skill-library/stack/databases/supabase/SKILL.md +640 -0
- package/template/.agent/skill-library/stack/databases/surrealdb-expert/SKILL.md +945 -0
- package/template/.agent/skill-library/stack/databases/timescaledb/SKILL.md +745 -0
- package/template/.agent/skill-library/stack/databases/weaviate/SKILL.md +218 -0
- package/template/.agent/skill-library/stack/devops/github-actions/SKILL.md +554 -0
- package/template/.agent/skill-library/stack/devops/kubernetes/SKILL.md +950 -0
- package/template/.agent/skill-library/stack/devops/nginx/SKILL.md +841 -0
- package/template/.agent/skill-library/stack/devops/terraform/SKILL.md +860 -0
- package/template/.agent/skill-library/stack/email/resend/SKILL.md +391 -0
- package/template/.agent/skill-library/stack/engines/godot/SKILL.md +488 -0
- package/template/.agent/skill-library/stack/extensions/chrome-extension/SKILL.md +375 -0
- package/template/.agent/skill-library/stack/extensions/vscode-extension/SKILL.md +453 -0
- package/template/.agent/skill-library/stack/frameworks/astro-framework/SKILL.md +162 -0
- package/template/.agent/skill-library/stack/frameworks/electron/SKILL.md +1286 -0
- package/template/.agent/skill-library/stack/frameworks/fastapi/SKILL.md +650 -0
- package/template/.agent/skill-library/stack/frameworks/hono/SKILL.md +90 -0
- package/template/.agent/skill-library/stack/frameworks/nestjs/SKILL.md +878 -0
- package/template/.agent/skill-library/stack/frameworks/nextjs/SKILL.md +635 -0
- package/template/.agent/skill-library/stack/frameworks/nuxt/SKILL.md +564 -0
- package/template/.agent/skill-library/stack/frameworks/sveltekit/SKILL.md +614 -0
- package/template/.agent/skill-library/stack/frameworks/tauri/SKILL.md +920 -0
- package/template/.agent/skill-library/stack/gamedev/godot/SKILL.md +1032 -0
- package/template/.agent/skill-library/stack/gamedev/unity/SKILL.md +1175 -0
- package/template/.agent/skill-library/stack/hosting/aws/SKILL.md +467 -0
- package/template/.agent/skill-library/stack/hosting/cloudflare/SKILL.md +201 -0
- package/template/.agent/skill-library/stack/hosting/docker-expert/SKILL.md +409 -0
- package/template/.agent/skill-library/stack/hosting/vercel/SKILL.md +484 -0
- package/template/.agent/skill-library/stack/languages/bash-scripting/SKILL.md +773 -0
- package/template/.agent/skill-library/stack/languages/c-cpp/SKILL.md +712 -0
- package/template/.agent/skill-library/stack/languages/gdscript/SKILL.md +789 -0
- package/template/.agent/skill-library/stack/languages/go/SKILL.md +664 -0
- package/template/.agent/skill-library/stack/languages/java/SKILL.md +778 -0
- package/template/.agent/skill-library/stack/languages/kotlin/SKILL.md +665 -0
- package/template/.agent/skill-library/stack/languages/python/SKILL.md +678 -0
- package/template/.agent/skill-library/stack/languages/rust/SKILL.md +673 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/SKILL.md +141 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/advanced-generics.md +90 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/branded-types.md +57 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/builder-pattern.md +71 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/common-pitfalls.md +135 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/conditional-types.md +27 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/decorators.md +98 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/discriminated-unions.md +62 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/mapped-types.md +53 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/performance-best-practices.md +104 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/template-literal-types.md +49 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/testing-types.md +112 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/type-guards.md +70 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/type-inference.md +101 -0
- package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/utility-types.md +98 -0
- package/template/.agent/skill-library/stack/languages/vanilla-javascript/SKILL.md +803 -0
- package/template/.agent/skill-library/stack/messaging/kafka/SKILL.md +235 -0
- package/template/.agent/skill-library/stack/mobile/expo-react-native/SKILL.md +665 -0
- package/template/.agent/skill-library/stack/mobile/flutter/SKILL.md +316 -0
- package/template/.agent/skill-library/stack/mobile/react-native/SKILL.md +337 -0
- package/template/.agent/skill-library/stack/monitoring/posthog/SKILL.md +396 -0
- package/template/.agent/skill-library/stack/monitoring/sentry/SKILL.md +509 -0
- package/template/.agent/skill-library/stack/observability/datadog/SKILL.md +179 -0
- package/template/.agent/skill-library/stack/observability/distributed-tracing/SKILL.md +140 -0
- package/template/.agent/skill-library/stack/observability/logging-best-practices/SKILL.md +168 -0
- package/template/.agent/skill-library/stack/observability/opentelemetry/SKILL.md +164 -0
- package/template/.agent/skill-library/stack/observability/prometheus-grafana/SKILL.md +246 -0
- package/template/.agent/skill-library/stack/observability/python-observability/SKILL.md +158 -0
- package/template/.agent/skill-library/stack/orm/drizzle-orm/SKILL.md +613 -0
- package/template/.agent/skill-library/stack/orm/prisma/SKILL.md +744 -0
- package/template/.agent/skill-library/stack/payments/lemonsqueezy/SKILL.md +393 -0
- package/template/.agent/skill-library/stack/payments/stripe-integration/SKILL.md +457 -0
- package/template/.agent/skill-library/stack/queue/bullmq/SKILL.md +385 -0
- package/template/.agent/skill-library/stack/queue/inngest/SKILL.md +438 -0
- package/template/.agent/skill-library/stack/realtime/socketio/SKILL.md +595 -0
- package/template/.agent/skill-library/stack/search/elasticsearch/SKILL.md +248 -0
- package/template/.agent/skill-library/stack/search/meilisearch/SKILL.md +385 -0
- package/template/.agent/skill-library/stack/security/crypto-patterns/SKILL.md +437 -0
- package/template/.agent/skill-library/stack/security/csp-cors-headers/SKILL.md +588 -0
- package/template/.agent/skill-library/stack/security/dependency-auditing/SKILL.md +560 -0
- package/template/.agent/skill-library/stack/security/input-sanitization/SKILL.md +430 -0
- package/template/.agent/skill-library/stack/security/owasp-web-security/SKILL.md +421 -0
- package/template/.agent/skill-library/stack/state/tanstack-query/SKILL.md +637 -0
- package/template/.agent/skill-library/stack/state/zustand/SKILL.md +483 -0
- package/template/.agent/skill-library/stack/storage/aws-s3/SKILL.md +415 -0
- package/template/.agent/skill-library/stack/testing/playwright/SKILL.md +641 -0
- package/template/.agent/skill-library/stack/testing/storybook/SKILL.md +923 -0
- package/template/.agent/skill-library/stack/testing/testing-library/SKILL.md +872 -0
- package/template/.agent/skill-library/stack/testing/vitest/SKILL.md +714 -0
- package/template/.agent/skill-library/stack/ui/react-best-practices/SKILL.md +877 -0
- package/template/.agent/skill-library/stack/ui/react-composition-patterns/SKILL.md +1107 -0
- package/template/.agent/skill-library/stack/ui/react-flow/SKILL.md +425 -0
- package/template/.agent/skill-library/stack/ui/shadcn-ui/SKILL.md +703 -0
- package/template/.agent/skill-library/surface/api/api-caching/SKILL.md +458 -0
- package/template/.agent/skill-library/surface/api/api-documentation-openapi/SKILL.md +697 -0
- package/template/.agent/skill-library/surface/api/api-error-handling/SKILL.md +478 -0
- package/template/.agent/skill-library/surface/api/api-security-checklist/SKILL.md +147 -0
- package/template/.agent/skill-library/surface/api/api-versioning/SKILL.md +420 -0
- package/template/.agent/skill-library/surface/api/email-best-practices/SKILL.md +59 -0
- package/template/.agent/skill-library/surface/api/rate-limiting-abuse-protection/SKILL.md +147 -0
- package/template/.agent/skill-library/surface/api/rest-api-design/SKILL.md +478 -0
- package/template/.agent/skill-library/surface/api/webhook-design/SKILL.md +752 -0
- package/template/.agent/skill-library/surface/cli/cli-configuration-management/SKILL.md +445 -0
- package/template/.agent/skill-library/surface/cli/cli-error-diagnostics/SKILL.md +515 -0
- package/template/.agent/skill-library/surface/cli/cli-shell-integration/SKILL.md +479 -0
- package/template/.agent/skill-library/surface/cli/cli-ux-design/SKILL.md +477 -0
- package/template/.agent/skill-library/surface/desktop/desktop-app-distribution/SKILL.md +416 -0
- package/template/.agent/skill-library/surface/desktop/desktop-security-sandboxing/SKILL.md +407 -0
- package/template/.agent/skill-library/surface/desktop/desktop-ux-conventions/SKILL.md +361 -0
- package/template/.agent/skill-library/surface/desktop/native-os-integration/SKILL.md +563 -0
- package/template/.agent/skill-library/surface/extension/browser-extension-patterns/SKILL.md +482 -0
- package/template/.agent/skill-library/surface/extension/plugin-architecture-design/SKILL.md +632 -0
- package/template/.agent/skill-library/surface/extension/vscode-extension-development/SKILL.md +728 -0
- package/template/.agent/skill-library/surface/mobile/app-store-submission/SKILL.md +304 -0
- package/template/.agent/skill-library/surface/mobile/mobile-offline-sync/SKILL.md +443 -0
- package/template/.agent/skill-library/surface/mobile/mobile-responsive-patterns/SKILL.md +432 -0
- package/template/.agent/skill-library/surface/mobile/push-notifications/SKILL.md +495 -0
- package/template/.agent/skill-library/surface/web/accessibility-compliance/SKILL.md +827 -0
- package/template/.agent/skill-library/surface/web/ai-seo/SKILL.md +398 -0
- package/template/.agent/skill-library/surface/web/ai-seo/references/content-patterns.md +285 -0
- package/template/.agent/skill-library/surface/web/ai-seo/references/platform-ranking-factors.md +152 -0
- package/template/.agent/skill-library/surface/web/analytics-tracking/SKILL.md +309 -0
- package/template/.agent/skill-library/surface/web/analytics-tracking/references/event-library.md +260 -0
- package/template/.agent/skill-library/surface/web/analytics-tracking/references/ga4-implementation.md +300 -0
- package/template/.agent/skill-library/surface/web/analytics-tracking/references/gtm-implementation.md +390 -0
- package/template/.agent/skill-library/surface/web/authentication-ui-flows/SKILL.md +530 -0
- package/template/.agent/skill-library/surface/web/dark-mode-theming/SKILL.md +516 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/SKILL.md +105 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/charts.csv +26 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/colors.csv +97 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/landing.csv +31 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/styles.csv +59 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/typography.csv +58 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/data/ux-guidelines.csv +100 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/scripts/core.py +258 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/scripts/design_system.py +1067 -0
- package/template/.agent/skill-library/surface/web/design-reference-data/scripts/search.py +106 -0
- package/template/.agent/skill-library/surface/web/form-handling-validation/SKILL.md +675 -0
- package/template/.agent/skill-library/surface/web/frontend-design/SKILL.md +1393 -0
- package/template/.agent/skill-library/surface/web/frontend-design/templates/cppn-hero.tsx +299 -0
- package/template/.agent/skill-library/surface/web/frontend-design/templates/wave-hero.tsx +875 -0
- package/template/.agent/skill-library/surface/web/frontend-verification/SKILL.md +111 -0
- package/template/.agent/skill-library/surface/web/frontend-verification/scripts/ux_audit.py +739 -0
- package/template/.agent/skill-library/surface/web/i18n-localization/SKILL.md +154 -0
- package/template/.agent/skill-library/surface/web/offline-first-pwa/SKILL.md +657 -0
- package/template/.agent/skill-library/surface/web/page-cro/SKILL.md +182 -0
- package/template/.agent/skill-library/surface/web/page-cro/references/experiments.md +248 -0
- package/template/.agent/skill-library/surface/web/programmatic-seo/SKILL.md +238 -0
- package/template/.agent/skill-library/surface/web/programmatic-seo/references/playbooks.md +308 -0
- package/template/.agent/skill-library/surface/web/schema-markup/SKILL.md +179 -0
- package/template/.agent/skill-library/surface/web/schema-markup/references/schema-examples.md +398 -0
- package/template/.agent/skill-library/surface/web/seo-audit/SKILL.md +394 -0
- package/template/.agent/skill-library/surface/web/seo-audit/references/ai-writing-detection.md +200 -0
- package/template/.agent/skill-library/surface/web/web-performance-optimization/SKILL.md +646 -0
- package/template/.agent/skill-library/surface/web/web-scraping/SKILL.md +58 -0
- package/template/.agent/skills/accessibility/SKILL.md +522 -0
- package/template/.agent/skills/accessibility/references/WCAG.md +162 -0
- package/template/.agent/skills/adversarial-review/SKILL.md +90 -0
- package/template/.agent/skills/antigravity-workflows/SKILL.md +81 -0
- package/template/.agent/skills/antigravity-workflows/resources/implementation-playbook.md +36 -0
- package/template/.agent/skills/api-design-principles/SKILL.md +37 -0
- package/template/.agent/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/template/.agent/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/template/.agent/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/template/.agent/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/template/.agent/skills/api-design-principles/resources/implementation-playbook.md +513 -0
- package/template/.agent/skills/api-versioning/SKILL.md +420 -0
- package/template/.agent/skills/architecture-mapping/SKILL.md +219 -0
- package/template/.agent/skills/bootstrap-agents/SKILL.md +259 -0
- package/template/.agent/skills/brainstorming/SKILL.md +236 -0
- package/template/.agent/skills/brand-guidelines/SKILL.md +44 -0
- package/template/.agent/skills/clean-code/SKILL.md +94 -0
- package/template/.agent/skills/code-review-pro/SKILL.md +152 -0
- package/template/.agent/skills/concise-planning/SKILL.md +68 -0
- package/template/.agent/skills/cross-layer-consistency/SKILL.md +117 -0
- package/template/.agent/skills/database-schema-design/SKILL.md +429 -0
- package/template/.agent/skills/deployment-procedures/SKILL.md +241 -0
- package/template/.agent/skills/design-anti-cliche/SKILL.md +159 -0
- package/template/.agent/skills/design-direction/SKILL.md +45 -0
- package/template/.agent/skills/error-handling-patterns/SKILL.md +721 -0
- package/template/.agent/skills/find-skills/SKILL.md +145 -0
- package/template/.agent/skills/git-advanced/SKILL.md +972 -0
- package/template/.agent/skills/git-workflow/SKILL.md +420 -0
- package/template/.agent/skills/idea-extraction/SKILL.md +271 -0
- package/template/.agent/skills/logging-best-practices/SKILL.md +851 -0
- package/template/.agent/skills/migration-management/SKILL.md +384 -0
- package/template/.agent/skills/minimalist-surgical-development/SKILL.md +69 -0
- package/template/.agent/skills/parallel-agents/SKILL.md +165 -0
- package/template/.agent/skills/parallel-debugging/SKILL.md +135 -0
- package/template/.agent/skills/parallel-feature-development/SKILL.md +166 -0
- package/template/.agent/skills/performance-budgeting/SKILL.md +144 -0
- package/template/.agent/skills/pipeline-rubrics/SKILL.md +51 -0
- package/template/.agent/skills/pipeline-rubrics/references/architecture-rubric.md +19 -0
- package/template/.agent/skills/pipeline-rubrics/references/be-rubric.md +21 -0
- package/template/.agent/skills/pipeline-rubrics/references/fe-rubric.md +20 -0
- package/template/.agent/skills/pipeline-rubrics/references/ia-rubric.md +19 -0
- package/template/.agent/skills/pipeline-rubrics/references/scoring.md +28 -0
- package/template/.agent/skills/pipeline-rubrics/references/vision-rubric.md +11 -0
- package/template/.agent/skills/prd-templates/SKILL.md +88 -0
- package/template/.agent/skills/prd-templates/references/architecture-design-template.md +88 -0
- package/template/.agent/skills/prd-templates/references/be-spec-template.md +101 -0
- package/template/.agent/skills/prd-templates/references/data-placement-template.md +74 -0
- package/template/.agent/skills/prd-templates/references/decomposition-templates.md +211 -0
- package/template/.agent/skills/prd-templates/references/design-system-decisions.md +198 -0
- package/template/.agent/skills/prd-templates/references/engineering-standards-template.md +124 -0
- package/template/.agent/skills/prd-templates/references/fe-classification-procedures.md +47 -0
- package/template/.agent/skills/prd-templates/references/fe-spec-template.md +84 -0
- package/template/.agent/skills/prd-templates/references/infrastructure-report-template.md +71 -0
- package/template/.agent/skills/prd-templates/references/operational-templates.md +116 -0
- package/template/.agent/skills/prd-templates/references/placeholder-guard-template.md +21 -0
- package/template/.agent/skills/prd-templates/references/surface-model.md +61 -0
- package/template/.agent/skills/prd-templates/references/vision-template.md +66 -0
- package/template/.agent/skills/prompt-engineer/README.md +659 -0
- package/template/.agent/skills/prompt-engineer/SKILL.md +249 -0
- package/template/.agent/skills/regex-patterns/SKILL.md +751 -0
- package/template/.agent/skills/resolve-ambiguity/SKILL.md +278 -0
- package/template/.agent/skills/rest-api-design/SKILL.md +478 -0
- package/template/.agent/skills/security-scanning-security-hardening/SKILL.md +231 -0
- package/template/.agent/skills/session-continuity/SKILL.md +730 -0
- package/template/.agent/skills/session-continuity/protocols/01-session-resumption.md +38 -0
- package/template/.agent/skills/session-continuity/protocols/02-progress-generation.md +85 -0
- package/template/.agent/skills/session-continuity/protocols/03-progress-update.md +70 -0
- package/template/.agent/skills/session-continuity/protocols/04-pattern-extraction.md +60 -0
- package/template/.agent/skills/session-continuity/protocols/05-session-close.md +37 -0
- package/template/.agent/skills/session-continuity/protocols/06-decision-analysis.md +84 -0
- package/template/.agent/skills/session-continuity/protocols/07-spec-pipeline-generation.md +48 -0
- package/template/.agent/skills/session-continuity/protocols/08-spec-pipeline-update.md +43 -0
- package/template/.agent/skills/session-continuity/protocols/09-parallel-claim.md +122 -0
- package/template/.agent/skills/session-continuity/protocols/10-placeholder-verification-gate.md +104 -0
- package/template/.agent/skills/session-continuity/protocols/ambiguity-gates.md +48 -0
- package/template/.agent/skills/skill-creator/LICENSE.txt +202 -0
- package/template/.agent/skills/skill-creator/README.md +270 -0
- package/template/.agent/skills/skill-creator/SKILL.md +590 -0
- package/template/.agent/skills/skill-creator/references/output-patterns.md +82 -0
- package/template/.agent/skills/skill-creator/references/workflows.md +28 -0
- package/template/.agent/skills/skill-creator/scripts/init_skill.py +303 -0
- package/template/.agent/skills/skill-creator/scripts/package_skill.py +110 -0
- package/template/.agent/skills/skill-creator/scripts/quick_validate.py +95 -0
- package/template/.agent/skills/spec-writing/SKILL.md +110 -0
- package/template/.agent/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/template/.agent/skills/systematic-debugging/SKILL.md +297 -0
- package/template/.agent/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/template/.agent/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/template/.agent/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/template/.agent/skills/systematic-debugging/find-polluter.sh +63 -0
- package/template/.agent/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/template/.agent/skills/systematic-debugging/test-academic.md +14 -0
- package/template/.agent/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/template/.agent/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/template/.agent/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/template/.agent/skills/tdd-workflow/SKILL.md +409 -0
- package/template/.agent/skills/tech-stack-catalog/SKILL.md +49 -0
- package/template/.agent/skills/tech-stack-catalog/references/constraint-questions.md +21 -0
- package/template/.agent/skills/tech-stack-catalog/references/dev-tooling-decisions.md +37 -0
- package/template/.agent/skills/tech-stack-catalog/references/surface-decision-tables.md +69 -0
- package/template/.agent/skills/technical-writer/SKILL.md +242 -0
- package/template/.agent/skills/testing-strategist/SKILL.md +932 -0
- package/template/.agent/skills/verification-before-completion/SKILL.md +145 -0
- package/template/.agent/skills/workflow-automation/SKILL.md +73 -0
- package/template/.agent/workflows/audit-ambiguity-execute.md +165 -0
- package/template/.agent/workflows/audit-ambiguity-rubrics.md +83 -0
- package/template/.agent/workflows/audit-ambiguity.md +64 -0
- package/template/.agent/workflows/bootstrap-agents-fill.md +201 -0
- package/template/.agent/workflows/bootstrap-agents-provision.md +197 -0
- package/template/.agent/workflows/bootstrap-agents.md +66 -0
- package/template/.agent/workflows/create-prd-architecture.md +119 -0
- package/template/.agent/workflows/create-prd-compile.md +138 -0
- package/template/.agent/workflows/create-prd-design-system.md +135 -0
- package/template/.agent/workflows/create-prd-security.md +113 -0
- package/template/.agent/workflows/create-prd-stack.md +91 -0
- package/template/.agent/workflows/create-prd.md +168 -0
- package/template/.agent/workflows/decompose-architecture-structure.md +82 -0
- package/template/.agent/workflows/decompose-architecture-validate.md +119 -0
- package/template/.agent/workflows/decompose-architecture.md +111 -0
- package/template/.agent/workflows/evolve-contract.md +98 -0
- package/template/.agent/workflows/evolve-feature-cascade.md +140 -0
- package/template/.agent/workflows/evolve-feature-classify.md +116 -0
- package/template/.agent/workflows/evolve-feature.md +56 -0
- package/template/.agent/workflows/ideate-discover.md +144 -0
- package/template/.agent/workflows/ideate-extract.md +129 -0
- package/template/.agent/workflows/ideate-validate.md +117 -0
- package/template/.agent/workflows/ideate.md +113 -0
- package/template/.agent/workflows/implement-slice-setup.md +113 -0
- package/template/.agent/workflows/implement-slice-tdd.md +198 -0
- package/template/.agent/workflows/implement-slice.md +50 -0
- package/template/.agent/workflows/plan-phase.md +202 -0
- package/template/.agent/workflows/propagate-decision-apply.md +135 -0
- package/template/.agent/workflows/propagate-decision-scan.md +147 -0
- package/template/.agent/workflows/propagate-decision.md +56 -0
- package/template/.agent/workflows/remediate-pipeline-assess.md +138 -0
- package/template/.agent/workflows/remediate-pipeline-execute.md +135 -0
- package/template/.agent/workflows/remediate-pipeline.md +55 -0
- package/template/.agent/workflows/resolve-ambiguity.md +82 -0
- package/template/.agent/workflows/sync-kit.md +209 -0
- package/template/.agent/workflows/update-architecture-map.md +74 -0
- package/template/.agent/workflows/validate-phase.md +219 -0
- package/template/.agent/workflows/verify-infrastructure.md +207 -0
- package/template/.agent/workflows/write-architecture-spec-deepen.md +139 -0
- package/template/.agent/workflows/write-architecture-spec-design.md +202 -0
- package/template/.agent/workflows/write-architecture-spec.md +63 -0
- package/template/.agent/workflows/write-be-spec-classify.md +165 -0
- package/template/.agent/workflows/write-be-spec-write.md +98 -0
- package/template/.agent/workflows/write-be-spec.md +76 -0
- package/template/.agent/workflows/write-fe-spec-classify.md +170 -0
- package/template/.agent/workflows/write-fe-spec-write.md +94 -0
- package/template/.agent/workflows/write-fe-spec.md +71 -0
- package/template/AGENTS.md +176 -0
- package/template/GEMINI.md +177 -0
- package/template/docs/README.md +187 -0
- package/template/docs/audits/.gitkeep +0 -0
- package/template/docs/audits/README.md +10 -0
- package/template/docs/plans/.gitkeep +0 -0
- package/template/docs/plans/README.md +21 -0
- package/template/docs/plans/be/.gitkeep +0 -0
- package/template/docs/plans/be/README.md +11 -0
- package/template/docs/plans/fe/.gitkeep +0 -0
- package/template/docs/plans/fe/README.md +11 -0
- package/template/docs/plans/ia/.gitkeep +0 -0
- package/template/docs/plans/ia/README.md +17 -0
- package/template/docs/plans/ia/deep-dives/.gitkeep +0 -0
- package/template/docs/plans/ia/deep-dives/README.md +5 -0
- package/template/docs/plans/phases/.gitkeep +0 -0
- package/template/docs/plans/phases/README.md +11 -0
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: git-workflow
|
|
3
|
+
description: Essential Git patterns for effective version control, eliminating redundant Git guidance per agent.
|
|
4
|
+
license: Apache-2.0
|
|
5
|
+
compatibility: claude-code
|
|
6
|
+
metadata:
|
|
7
|
+
updated_at: 2025-10-30T17:00:00Z
|
|
8
|
+
tags: [git, version-control, workflow, best-practices]
|
|
9
|
+
progressive_disclosure:
|
|
10
|
+
entry_point:
|
|
11
|
+
summary: "Essential Git patterns for effective version control, eliminating redundant Git guidance per agent."
|
|
12
|
+
when_to_use: "When working with version control, branches, or pull requests."
|
|
13
|
+
quick_start: "1. Review the core concepts below. 2. Apply patterns to your use case. 3. Follow best practices for implementation."
|
|
14
|
+
---
|
|
15
|
+
# Git Workflow
|
|
16
|
+
|
|
17
|
+
Essential Git patterns for effective version control. Eliminates ~120-150 lines of redundant Git guidance per agent.
|
|
18
|
+
|
|
19
|
+
## Commit Best Practices
|
|
20
|
+
|
|
21
|
+
### Conventional Commits Format
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
<type>(<scope>): <subject>
|
|
25
|
+
|
|
26
|
+
<body>
|
|
27
|
+
|
|
28
|
+
<footer>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Types:**
|
|
32
|
+
- `feat`: New feature
|
|
33
|
+
- `fix`: Bug fix
|
|
34
|
+
- `docs`: Documentation only
|
|
35
|
+
- `refactor`: Code change that neither fixes bug nor adds feature
|
|
36
|
+
- `perf`: Performance improvement
|
|
37
|
+
- `test`: Adding or updating tests
|
|
38
|
+
- `chore`: Build process, dependencies, tooling
|
|
39
|
+
|
|
40
|
+
**Examples:**
|
|
41
|
+
```bash
|
|
42
|
+
feat(auth): add OAuth2 authentication
|
|
43
|
+
|
|
44
|
+
Implements OAuth2 flow using Google provider.
|
|
45
|
+
Includes token refresh and validation.
|
|
46
|
+
|
|
47
|
+
Closes #123
|
|
48
|
+
|
|
49
|
+
fix(api): handle null response in user endpoint
|
|
50
|
+
|
|
51
|
+
Previously crashed when user not found.
|
|
52
|
+
Now returns 404 with error message.
|
|
53
|
+
|
|
54
|
+
perf(db): optimize user query with index
|
|
55
|
+
|
|
56
|
+
Reduces query time from 500ms to 50ms.
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Atomic Commits
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
# Good: Each commit does one thing
|
|
63
|
+
git commit -m "feat: add user authentication"
|
|
64
|
+
git commit -m "test: add auth tests"
|
|
65
|
+
git commit -m "docs: update API docs for auth"
|
|
66
|
+
|
|
67
|
+
# Bad: Multiple unrelated changes
|
|
68
|
+
git commit -m "add auth, fix bugs, update docs"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Branching Strategy
|
|
72
|
+
|
|
73
|
+
### Git Flow (Feature Branches)
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Create feature branch from main
|
|
77
|
+
git checkout main
|
|
78
|
+
git pull origin main
|
|
79
|
+
git checkout -b feature/user-authentication
|
|
80
|
+
|
|
81
|
+
# Work on feature with regular commits
|
|
82
|
+
git add src/auth.py
|
|
83
|
+
git commit -m "feat(auth): implement login endpoint"
|
|
84
|
+
|
|
85
|
+
# Keep branch updated with main
|
|
86
|
+
git checkout main
|
|
87
|
+
git pull origin main
|
|
88
|
+
git checkout feature/user-authentication
|
|
89
|
+
git rebase main # Or: git merge main
|
|
90
|
+
|
|
91
|
+
# Push and create PR
|
|
92
|
+
git push -u origin feature/user-authentication
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Trunk-Based Development
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# Work directly on main with short-lived branches
|
|
99
|
+
git checkout main
|
|
100
|
+
git pull origin main
|
|
101
|
+
git checkout -b fix/null-pointer
|
|
102
|
+
# Make small change
|
|
103
|
+
git commit -m "fix: handle null in user query"
|
|
104
|
+
git push origin fix/null-pointer
|
|
105
|
+
# Merge immediately via PR
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Common Workflows
|
|
109
|
+
|
|
110
|
+
### Updating Branch with Latest Changes
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Option 1: Rebase (cleaner history)
|
|
114
|
+
git checkout feature-branch
|
|
115
|
+
git fetch origin
|
|
116
|
+
git rebase origin/main
|
|
117
|
+
|
|
118
|
+
# Resolve conflicts if any
|
|
119
|
+
git add resolved_file.py
|
|
120
|
+
git rebase --continue
|
|
121
|
+
|
|
122
|
+
# Option 2: Merge (preserves history)
|
|
123
|
+
git checkout feature-branch
|
|
124
|
+
git merge origin/main
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Undoing Changes
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Undo last commit (keep changes)
|
|
131
|
+
git reset --soft HEAD~1
|
|
132
|
+
|
|
133
|
+
# Undo last commit (discard changes)
|
|
134
|
+
git reset --hard HEAD~1
|
|
135
|
+
|
|
136
|
+
# Undo changes to specific file
|
|
137
|
+
git checkout -- file.py
|
|
138
|
+
|
|
139
|
+
# Revert a commit (creates new commit)
|
|
140
|
+
git revert abc123
|
|
141
|
+
|
|
142
|
+
# Amend last commit
|
|
143
|
+
git add forgotten_file.py
|
|
144
|
+
git commit --amend --no-edit
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Stashing Work
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
# Save current work temporarily
|
|
151
|
+
git stash
|
|
152
|
+
|
|
153
|
+
# List stashes
|
|
154
|
+
git stash list
|
|
155
|
+
|
|
156
|
+
# Apply most recent stash
|
|
157
|
+
git stash pop
|
|
158
|
+
|
|
159
|
+
# Apply specific stash
|
|
160
|
+
git stash apply stash@{0}
|
|
161
|
+
|
|
162
|
+
# Create named stash
|
|
163
|
+
git stash save "WIP: authentication feature"
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Cherry-Picking Commits
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# Apply specific commit from another branch
|
|
170
|
+
git cherry-pick abc123
|
|
171
|
+
|
|
172
|
+
# Cherry-pick multiple commits
|
|
173
|
+
git cherry-pick abc123 def456
|
|
174
|
+
|
|
175
|
+
# Cherry-pick without committing
|
|
176
|
+
git cherry-pick -n abc123
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Resolving Conflicts
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
# When conflicts occur during merge/rebase
|
|
183
|
+
# 1. Check conflicted files
|
|
184
|
+
git status
|
|
185
|
+
|
|
186
|
+
# 2. Edit files to resolve conflicts
|
|
187
|
+
# Look for conflict markers:
|
|
188
|
+
<<<<<<< HEAD
|
|
189
|
+
Your changes
|
|
190
|
+
=======
|
|
191
|
+
Their changes
|
|
192
|
+
>>>>>>> branch-name
|
|
193
|
+
|
|
194
|
+
# 3. Mark as resolved
|
|
195
|
+
git add resolved_file.py
|
|
196
|
+
|
|
197
|
+
# 4. Continue operation
|
|
198
|
+
git rebase --continue # or git merge --continue
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
## Viewing History
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
# Compact log
|
|
205
|
+
git log --oneline -10
|
|
206
|
+
|
|
207
|
+
# Graphical log
|
|
208
|
+
git log --graph --oneline --all
|
|
209
|
+
|
|
210
|
+
# Commits by author
|
|
211
|
+
git log --author="John Doe"
|
|
212
|
+
|
|
213
|
+
# Commits affecting specific file
|
|
214
|
+
git log -- path/to/file.py
|
|
215
|
+
|
|
216
|
+
# See changes in commit
|
|
217
|
+
git show abc123
|
|
218
|
+
|
|
219
|
+
# Compare branches
|
|
220
|
+
git diff main..feature-branch
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
## Branch Management
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
# List branches
|
|
227
|
+
git branch -a # All branches (local + remote)
|
|
228
|
+
|
|
229
|
+
# Delete local branch
|
|
230
|
+
git branch -d feature-branch # Safe delete (merged only)
|
|
231
|
+
git branch -D feature-branch # Force delete
|
|
232
|
+
|
|
233
|
+
# Delete remote branch
|
|
234
|
+
git push origin --delete feature-branch
|
|
235
|
+
|
|
236
|
+
# Rename branch
|
|
237
|
+
git branch -m old-name new-name
|
|
238
|
+
|
|
239
|
+
# Track remote branch
|
|
240
|
+
git checkout --track origin/feature-branch
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
## Tags
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
# Create lightweight tag
|
|
247
|
+
git tag v1.0.0
|
|
248
|
+
|
|
249
|
+
# Create annotated tag (recommended)
|
|
250
|
+
git tag -a v1.0.0 -m "Release version 1.0.0"
|
|
251
|
+
|
|
252
|
+
# Push tags to remote
|
|
253
|
+
git push origin v1.0.0
|
|
254
|
+
git push origin --tags # Push all tags
|
|
255
|
+
|
|
256
|
+
# Checkout tag
|
|
257
|
+
git checkout v1.0.0
|
|
258
|
+
|
|
259
|
+
# Delete tag
|
|
260
|
+
git tag -d v1.0.0
|
|
261
|
+
git push origin --delete v1.0.0
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
## Advanced Operations
|
|
265
|
+
|
|
266
|
+
### Interactive Rebase
|
|
267
|
+
|
|
268
|
+
```bash
|
|
269
|
+
# Edit last 3 commits
|
|
270
|
+
git rebase -i HEAD~3
|
|
271
|
+
|
|
272
|
+
# Options in editor:
|
|
273
|
+
# pick = use commit
|
|
274
|
+
# reword = change commit message
|
|
275
|
+
# edit = stop to amend commit
|
|
276
|
+
# squash = combine with previous commit
|
|
277
|
+
# fixup = like squash but discard message
|
|
278
|
+
# drop = remove commit
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
### Bisect (Find Bug Introduction)
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
# Start bisect
|
|
285
|
+
git bisect start
|
|
286
|
+
git bisect bad # Current version has bug
|
|
287
|
+
git bisect good v1.0.0 # This version was good
|
|
288
|
+
|
|
289
|
+
# Git checks out middle commit
|
|
290
|
+
# Test if bug exists
|
|
291
|
+
git bisect bad # if bug exists
|
|
292
|
+
git bisect good # if bug doesn't exist
|
|
293
|
+
|
|
294
|
+
# Git narrows down until finding first bad commit
|
|
295
|
+
git bisect reset # Return to original branch
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
### Blame (Find Who Changed Line)
|
|
299
|
+
|
|
300
|
+
```bash
|
|
301
|
+
# See who last modified each line
|
|
302
|
+
git blame file.py
|
|
303
|
+
|
|
304
|
+
# Ignore whitespace changes
|
|
305
|
+
git blame -w file.py
|
|
306
|
+
|
|
307
|
+
# Show specific line range
|
|
308
|
+
git blame -L 10,20 file.py
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
## Git Hooks
|
|
312
|
+
|
|
313
|
+
```bash
|
|
314
|
+
# Pre-commit hook (runs before commit)
|
|
315
|
+
# .git/hooks/pre-commit
|
|
316
|
+
#!/bin/bash
|
|
317
|
+
npm run lint
|
|
318
|
+
npm test
|
|
319
|
+
|
|
320
|
+
# Pre-push hook (runs before push)
|
|
321
|
+
# .git/hooks/pre-push
|
|
322
|
+
#!/bin/bash
|
|
323
|
+
npm run test:integration
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
## Best Practices
|
|
327
|
+
|
|
328
|
+
### ✅ DO
|
|
329
|
+
|
|
330
|
+
- Commit frequently with atomic changes
|
|
331
|
+
- Write clear, descriptive commit messages
|
|
332
|
+
- Pull before push to avoid conflicts
|
|
333
|
+
- Review changes before committing (`git diff --staged`)
|
|
334
|
+
- Use branches for features and fixes
|
|
335
|
+
- Keep commits small and focused
|
|
336
|
+
|
|
337
|
+
### ❌ DON'T
|
|
338
|
+
|
|
339
|
+
- Commit sensitive data (use `.gitignore`)
|
|
340
|
+
- Commit generated files (build artifacts, `node_modules`)
|
|
341
|
+
- Force push to shared branches (`git push --force`)
|
|
342
|
+
- Commit work-in-progress to main
|
|
343
|
+
- Include multiple unrelated changes in one commit
|
|
344
|
+
- Rewrite public history
|
|
345
|
+
|
|
346
|
+
## .gitignore Patterns
|
|
347
|
+
|
|
348
|
+
```gitignore
|
|
349
|
+
# Dependencies
|
|
350
|
+
node_modules/
|
|
351
|
+
venv/
|
|
352
|
+
__pycache__/
|
|
353
|
+
|
|
354
|
+
# Build outputs
|
|
355
|
+
dist/
|
|
356
|
+
build/
|
|
357
|
+
*.pyc
|
|
358
|
+
*.o
|
|
359
|
+
*.exe
|
|
360
|
+
|
|
361
|
+
# IDE
|
|
362
|
+
.vscode/
|
|
363
|
+
.idea/
|
|
364
|
+
*.swp
|
|
365
|
+
|
|
366
|
+
# Secrets
|
|
367
|
+
.env
|
|
368
|
+
*.key
|
|
369
|
+
*.pem
|
|
370
|
+
secrets.yml
|
|
371
|
+
|
|
372
|
+
# OS
|
|
373
|
+
.DS_Store
|
|
374
|
+
Thumbs.db
|
|
375
|
+
|
|
376
|
+
# Logs
|
|
377
|
+
*.log
|
|
378
|
+
logs/
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
## Quick Command Reference
|
|
382
|
+
|
|
383
|
+
```bash
|
|
384
|
+
# Status and diff
|
|
385
|
+
git status
|
|
386
|
+
git diff
|
|
387
|
+
git diff --staged
|
|
388
|
+
|
|
389
|
+
# Commit
|
|
390
|
+
git add .
|
|
391
|
+
git commit -m "message"
|
|
392
|
+
git push
|
|
393
|
+
|
|
394
|
+
# Branch
|
|
395
|
+
git branch
|
|
396
|
+
git checkout -b branch-name
|
|
397
|
+
git merge branch-name
|
|
398
|
+
|
|
399
|
+
# Update
|
|
400
|
+
git pull
|
|
401
|
+
git fetch
|
|
402
|
+
|
|
403
|
+
# Undo
|
|
404
|
+
git reset HEAD~1
|
|
405
|
+
git checkout -- file
|
|
406
|
+
git revert commit-hash
|
|
407
|
+
|
|
408
|
+
# History
|
|
409
|
+
git log
|
|
410
|
+
git log --oneline
|
|
411
|
+
git show commit-hash
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
## Remember
|
|
415
|
+
|
|
416
|
+
- **Commit often** - Small commits are easier to review and revert
|
|
417
|
+
- **Descriptive messages** - Future you will thank present you
|
|
418
|
+
- **Pull before push** - Stay synchronized with team
|
|
419
|
+
- **Use branches** - Keep main stable
|
|
420
|
+
- **Review before commit** - Check what is being committed
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: idea-extraction
|
|
3
|
+
description: "Exhaustive idea extraction through input-adaptive interviewing. Use during /ideate to transform raw ideas — whether richly documented, lightly sketched, or entirely in the user's head — into comprehensive vision material. This is NOT a quick Q&A — it's a deep, collaborative exploration that refuses to stop until every domain is explored."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Idea Extraction — Exhaustion Engine
|
|
7
|
+
|
|
8
|
+
## Philosophy
|
|
9
|
+
|
|
10
|
+
> This pipeline does not build MVPs. It does not produce shallow specs. It does not
|
|
11
|
+
> create technical debt by rushing past the ideation phase. The ideation phase is where
|
|
12
|
+
> the entire downstream pipeline gets its DNA — if the vision is shallow, every spec,
|
|
13
|
+
> every architecture decision, every line of code downstream will be shallow too.
|
|
14
|
+
|
|
15
|
+
This skill exists because the ideation phase is the **front door** of a production-grade
|
|
16
|
+
pipeline. The brainstorming skill is deliberately lightweight — it's a modifier skill for
|
|
17
|
+
quick collaborative decisions. This skill is the opposite: it's an **exhaustion engine**
|
|
18
|
+
designed to extract every ounce of product vision from the user, whether that vision is
|
|
19
|
+
already documented, partially formed, or entirely in their head.
|
|
20
|
+
|
|
21
|
+
Your job is not to collect answers. Your job is to **generate new thinking** in the user
|
|
22
|
+
by asking questions they haven't considered, exploring edges they haven't mapped, and
|
|
23
|
+
helping them make decisions they haven't faced yet.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Input-Adaptive Modes
|
|
28
|
+
|
|
29
|
+
Before starting, classify what the user has provided and select the right mode.
|
|
30
|
+
|
|
31
|
+
### Extraction Mode — Rich Input
|
|
32
|
+
|
|
33
|
+
**Trigger:** User provides substantial existing material (>5KB, detailed docs, chat logs,
|
|
34
|
+
design conversations, competitor analysis, previous specs).
|
|
35
|
+
|
|
36
|
+
**The job:** Don't lose information. The user has already done deep thinking — your job is
|
|
37
|
+
to organize it, validate it, and fill gaps.
|
|
38
|
+
|
|
39
|
+
**Process:**
|
|
40
|
+
1. Read/ingest every document provided
|
|
41
|
+
2. Enumerate what you found, organized by domain (not by source document)
|
|
42
|
+
3. Present the organized inventory back to the user: "Here's what I extracted, organized by domain. Is anything missing or wrong?"
|
|
43
|
+
4. Identify gaps — domains or sub-topics not covered by the existing material
|
|
44
|
+
5. For each gap, switch to Interview Mode for that topic
|
|
45
|
+
6. Validate completeness against the domain coverage map
|
|
46
|
+
|
|
47
|
+
**Anti-patterns:**
|
|
48
|
+
- ❌ Summarizing 738KB into 70 lines (lossy compression)
|
|
49
|
+
- ❌ Ignoring details because they don't fit the template
|
|
50
|
+
- ❌ Re-asking questions the material already answers
|
|
51
|
+
- ✅ Preserving depth, organizing structure, filling gaps
|
|
52
|
+
|
|
53
|
+
### Expansion Mode — Thin Input
|
|
54
|
+
|
|
55
|
+
**Trigger:** User provides brief notes, a rough sketch, a short PRD (<5KB, structured but shallow).
|
|
56
|
+
|
|
57
|
+
**The job:** Take what's there and systematically deepen it. Every bullet point in their
|
|
58
|
+
input should spawn 3-5 follow-up questions that drive toward implementation depth.
|
|
59
|
+
|
|
60
|
+
**Process:**
|
|
61
|
+
1. Read the input and understand its structure
|
|
62
|
+
2. For each section, identify the depth level (surface → detailed → implementation-ready)
|
|
63
|
+
3. Start with the shallowest sections first
|
|
64
|
+
4. For each shallow section, ask targeted deepening questions
|
|
65
|
+
5. Build out the domain coverage map as you go
|
|
66
|
+
6. Don't stop until every section reaches implementation depth
|
|
67
|
+
|
|
68
|
+
**Deepening questions by section type:**
|
|
69
|
+
- **Feature mentioned without detail:** "You listed [feature]. Help me understand: What does the user see? What happens when they interact with it? What happens when it fails? What data does it need?"
|
|
70
|
+
- **User type without specifics:** "You mentioned [user type]. What's their primary workflow? What are they trying to accomplish? What frustrates them about existing solutions? What would make them switch?"
|
|
71
|
+
- **Constraint without numbers:** "You noted [constraint]. Can we put a number on that? For latency — what's the threshold where users notice? For budget — what's the monthly ceiling?"
|
|
72
|
+
|
|
73
|
+
### Interview Mode — No Input / One-Liner
|
|
74
|
+
|
|
75
|
+
**Trigger:** User has no file input. They describe the idea verbally or provide a one-liner
|
|
76
|
+
like "I want to build a trading app."
|
|
77
|
+
|
|
78
|
+
**The job:** Be the relentless interviewer. Extract everything from the user's head through
|
|
79
|
+
persistent, deep questioning. No topic is "done" until the user explicitly says "I don't
|
|
80
|
+
know" or "I haven't decided" — and even then, help them decide.
|
|
81
|
+
|
|
82
|
+
**Process:**
|
|
83
|
+
1. Start with the highest-level question: "In one sentence, what problem does this solve and for whom?"
|
|
84
|
+
2. From that sentence, identify the key nouns — these become your initial domains
|
|
85
|
+
3. For each domain, drill systematically (see Domain Exhaustion Protocol below)
|
|
86
|
+
4. Maintain and share the domain coverage map
|
|
87
|
+
5. Use the decision classification rule to route questions appropriately
|
|
88
|
+
6. Don't stop until the coverage map shows ≥80% of identified domains at ≥3 levels deep
|
|
89
|
+
|
|
90
|
+
**Interview techniques:**
|
|
91
|
+
- **Follow the thread:** When a user mentions a concept, drill into it before moving on. Don't breadth-first hop between topics.
|
|
92
|
+
- **Challenge weak answers:** "You mentioned risk management — can you tell me more? For example, what happens when a user hits their position limit? What's the escalation path?"
|
|
93
|
+
- **Generate new thinking:** "You've described [concept A] and [concept B] — what happens when they interact? If A triggers while B is active, what should the system do?"
|
|
94
|
+
- **Make them think about failures:** "What's the worst thing a user could do with [feature]? How should the system prevent or recover from that?"
|
|
95
|
+
- **Help them decide:** When the user says "I'm not sure," don't log it as an open question. Present 2-3 options with trade-offs: "Most platforms handle this one of three ways: [A], [B], or [C]. A is simpler but less flexible. C is powerful but complex to build. B is the middle ground. Which resonates?"
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Expansion Mode Awareness
|
|
100
|
+
|
|
101
|
+
Before beginning any drilling, read the current expansion mode from `ideation.md`. The mode overrides the default depth-first behavior:
|
|
102
|
+
|
|
103
|
+
| Mode | Drilling Strategy |
|
|
104
|
+
|---|---|
|
|
105
|
+
| Full | Breadth-first during horizontal sweep; depth-first during vertical drilling; interaction-first during synthesis |
|
|
106
|
+
| Vertical | Depth-first — finish one domain before moving to the next |
|
|
107
|
+
| Horizontal | Breadth-first — map all domains before deepening any |
|
|
108
|
+
| Cross-cutting | Interaction-first — focus on connection points, not individual domain depth |
|
|
109
|
+
| Combination | User-directed — follow the user's specified sequence of modes in order |
|
|
110
|
+
| As-is | No active drilling — scan only |
|
|
111
|
+
|
|
112
|
+
### Cross-cut Watch Protocol
|
|
113
|
+
|
|
114
|
+
Cross-cut detection is always-on regardless of mode. During all active drilling, ask these questions:
|
|
115
|
+
|
|
116
|
+
- After each sub-feature: "Does this behavior depend on or affect any other domain?"
|
|
117
|
+
- After each edge case: "Which other parts of the system need to know about this failure mode?"
|
|
118
|
+
- After each state transition: "Does this state change trigger anything in another domain?"
|
|
119
|
+
|
|
120
|
+
When a cross-cut is identified, immediately log it to `## Cross-cutting Candidates` in `ideation.md`:
|
|
121
|
+
`[Domain A] × [Domain B]: [what the connection is]` — status: pending
|
|
122
|
+
|
|
123
|
+
Do not stop to explore the cross-cut immediately — flag and continue the current drill. The synthesis pass will address all candidates.
|
|
124
|
+
|
|
125
|
+
### Cross-cut Candidate Format
|
|
126
|
+
|
|
127
|
+
After synthesis, annotate each candidate with its outcome:
|
|
128
|
+
- `✅ confirmed → see [Interaction Name]`
|
|
129
|
+
- `❌ rejected: [reason]`
|
|
130
|
+
|
|
131
|
+
Never clear the candidates section — it is the audit trail.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Domain Exhaustion Protocol
|
|
136
|
+
|
|
137
|
+
> **Mode-aware**: This protocol operates differently depending on the active expansion mode. Read the Expansion Mode Awareness section above before applying this protocol. In Full Mode, apply breadth-first during the horizontal sweep and depth-first during vertical drilling. In As-is Mode, skip active drilling entirely.
|
|
138
|
+
|
|
139
|
+
This is the core mechanism. For every domain identified, drill systematically using these
|
|
140
|
+
questions. **Never accept a bucket label as a feature.** "Risk management" is a category,
|
|
141
|
+
not a feature — drill until you have specific, testable behaviors.
|
|
142
|
+
|
|
143
|
+
### For Every Entity
|
|
144
|
+
|
|
145
|
+
- What are its attributes/fields?
|
|
146
|
+
- What are its possible states?
|
|
147
|
+
- What transitions between states? What triggers each transition?
|
|
148
|
+
- What's the full lifecycle (creation → active use → archival/deletion)?
|
|
149
|
+
- Who can create, read, update, delete it?
|
|
150
|
+
- What happens when it's referenced by other entities and gets deleted?
|
|
151
|
+
|
|
152
|
+
### For Every Feature
|
|
153
|
+
|
|
154
|
+
- What does the user see when they first encounter this feature?
|
|
155
|
+
- What's the happy path interaction flow (step by step)?
|
|
156
|
+
- What happens when it fails? What error does the user see?
|
|
157
|
+
- What happens on partial failure (e.g., network drops mid-operation)?
|
|
158
|
+
- What permissions are required? What happens without them?
|
|
159
|
+
- Does it have different states (loading, empty, populated, error)?
|
|
160
|
+
- How does it interact with other features?
|
|
161
|
+
- What edge cases exist? (concurrent edits, duplicate submissions, boundary values)
|
|
162
|
+
|
|
163
|
+
### For Every User Type
|
|
164
|
+
|
|
165
|
+
- What's their primary workflow through the product?
|
|
166
|
+
- What's the worst thing they could intentionally do? How is it prevented?
|
|
167
|
+
- What's the worst thing they could accidentally do? How is it recovered?
|
|
168
|
+
- What do they see that other user types don't?
|
|
169
|
+
- What can they do that other user types can't?
|
|
170
|
+
- What's their tolerance for complexity? (progressive disclosure implications)
|
|
171
|
+
|
|
172
|
+
### For Every Integration / External System
|
|
173
|
+
|
|
174
|
+
- What happens when it's unavailable? (retry? fallback? degrade gracefully?)
|
|
175
|
+
- What's the expected latency? What if it's 10x slower than expected?
|
|
176
|
+
- What data format does it use? How does the product transform it?
|
|
177
|
+
- What rate limits exist? How does the product handle hitting them?
|
|
178
|
+
- What happens when the external system changes its API?
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Domain Coverage Map
|
|
183
|
+
|
|
184
|
+
Throughout the conversation, maintain and periodically share a coverage map with the user.
|
|
185
|
+
|
|
186
|
+
**Format:**
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
Domain Coverage Map — [Project Name]
|
|
190
|
+
═══════════════════════════════════════════
|
|
191
|
+
|
|
192
|
+
[████████████ ] Strategy Lifecycle (85%) — 12 sub-topics explored
|
|
193
|
+
[████████░░░░ ] Risk Management (60%) — 7 sub-topics explored
|
|
194
|
+
[████░░░░░░░░ ] Market Data Pipeline (30%) — 3 sub-topics explored
|
|
195
|
+
[░░░░░░░░░░░░ ] AI/ML Integration (5%) — 1 sub-topic mentioned
|
|
196
|
+
[████████████ ] User Authentication (90%) — 10 sub-topics explored
|
|
197
|
+
...
|
|
198
|
+
|
|
199
|
+
Overall: 54% complete — 8 domains identified, 3 deeply explored
|
|
200
|
+
|
|
201
|
+
Next suggested domain: Risk Management (currently at 60%, high importance)
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
**Rules:**
|
|
205
|
+
- Share the map after every 5-6 questions, or whenever switching domains
|
|
206
|
+
- Use it to guide the conversation: "We've covered Strategy deeply. Risk Management is important and only at 60%. Want to dig into that next?"
|
|
207
|
+
- Don't compile the vision document until overall coverage is ≥80%
|
|
208
|
+
- When the user says "I think that's everything," check the map. If domains are under-explored, point it out: "We're at 65% overall. [Domain X] and [Domain Y] are still shallow — should we explore them, or are they intentionally minimal?"
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Decision Routing During Extraction
|
|
213
|
+
|
|
214
|
+
When a decision point arises, classify it using the decision classification rule:
|
|
215
|
+
|
|
216
|
+
| Decision Type | During Ideation | Example |
|
|
217
|
+
|---|---|---|
|
|
218
|
+
| **Product** | Ask the user. It's their product. | "Should free users be able to...?" |
|
|
219
|
+
| **Architecture** | Note it for `/create-prd`. Don't burden the user. | "Should we use SQL or NoSQL?" |
|
|
220
|
+
| **Implementation** | Note it for later. Don't even mention it. | "How should we name the routes?" |
|
|
221
|
+
|
|
222
|
+
**Exception:** If the user brings up an architecture or implementation topic, engage with it.
|
|
223
|
+
Don't refuse to discuss it — just don't initiate it. The user may have strong opinions about
|
|
224
|
+
their tech stack, and those opinions are valuable context.
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## Anti-Rushing Mechanisms
|
|
229
|
+
|
|
230
|
+
### Depth Before Breadth
|
|
231
|
+
|
|
232
|
+
Finish exploring the current topic completely before moving to the next. If you're
|
|
233
|
+
discussing "user authentication," don't jump to "payment processing" until auth is
|
|
234
|
+
explored to satisfaction. The user can redirect if they want — but you shouldn't hop.
|
|
235
|
+
|
|
236
|
+
### No Premature Compilation
|
|
237
|
+
|
|
238
|
+
Don't start writing the output document until:
|
|
239
|
+
- At least 80% of identified domains are explored
|
|
240
|
+
- Every Must Have feature has been discussed at level ≥2 (sub-features and failure modes)
|
|
241
|
+
- The user has confirmed the domain coverage map
|
|
242
|
+
|
|
243
|
+
### Challenge Weak Answers
|
|
244
|
+
|
|
245
|
+
When the user gives a one-sentence answer to a complex question, don't accept it. Probe
|
|
246
|
+
deeper with a concrete follow-up:
|
|
247
|
+
|
|
248
|
+
- **Weak:** "Yeah, we need notifications."
|
|
249
|
+
- **Probe:** "What kinds of notifications? Just in-app, or also email and push? What events trigger them? Can users configure which ones they receive? What happens with notification overload?"
|
|
250
|
+
|
|
251
|
+
### Summarize and Validate
|
|
252
|
+
|
|
253
|
+
After every 5-6 questions, pause and summarize:
|
|
254
|
+
- "Here's what I've captured about [topic] so far: [summary]. Does this cover everything, or is there more?"
|
|
255
|
+
- This prevents drift, catches misunderstandings early, and gives the user a chance to add things they forgot.
|
|
256
|
+
|
|
257
|
+
### Progress Transparency
|
|
258
|
+
|
|
259
|
+
Don't let the user wonder "how much longer." Be transparent:
|
|
260
|
+
- "We've covered [N] of [M] domains. We're about [X]% through the exploration."
|
|
261
|
+
- "This is a complex project — I want to make sure we don't miss anything that will cause rework later. We've got [domains] left to explore."
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## What This Skill Does NOT Do
|
|
266
|
+
|
|
267
|
+
- **Does not make product decisions** — It extracts them from the user
|
|
268
|
+
- **Does not explore architecture** — That's `/create-prd`'s job
|
|
269
|
+
- **Does not replace brainstorming** — Brainstorming is a lightweight modifier skill for quick decisions; this skill is a heavyweight extraction engine for ideation only
|
|
270
|
+
- **Does not produce the vision document** — The ideate workflow compiles the document; this skill drives the conversation that produces the raw material
|
|
271
|
+
- **Does not rush** — The entire downstream pipeline depends on the depth produced here
|