aigroup-workflow 2.1.2 → 2.2.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/.codex/AGENTS.md +1 -1
- package/CLAUDE.md +1 -4
- package/README.md +333 -333
- package/cli/commands/init.mjs +20 -6
- package/cli/utils/scaffold.mjs +39 -9
- package/docs/red-flags.md +1 -1
- package/docs/rules/entropy.md +1 -1
- package/docs/rules/performance.md +1 -1
- package/docs/workflow-pipeline.md +1 -0
- package/manifests/install-modules.json +223 -133
- package/package.json +39 -39
- package/scripts/orchestration/lib/orchestrator.cjs +34 -0
- package/scripts/orchestration/session.cjs +24 -1
- package/skills/ai-ml/fine-tuning-expert/SKILL.md +162 -0
- package/skills/ai-ml/fine-tuning-expert/references/dataset-preparation.md +540 -0
- package/skills/ai-ml/fine-tuning-expert/references/deployment-optimization.md +673 -0
- package/skills/ai-ml/fine-tuning-expert/references/evaluation-metrics.md +597 -0
- package/skills/ai-ml/fine-tuning-expert/references/hyperparameter-tuning.md +565 -0
- package/skills/ai-ml/fine-tuning-expert/references/lora-peft.md +347 -0
- package/skills/ai-ml/ml-pipeline/SKILL.md +159 -0
- package/skills/ai-ml/ml-pipeline/references/experiment-tracking.md +833 -0
- package/skills/ai-ml/ml-pipeline/references/feature-engineering.md +631 -0
- package/skills/ai-ml/ml-pipeline/references/model-validation.md +978 -0
- package/skills/ai-ml/ml-pipeline/references/pipeline-orchestration.md +907 -0
- package/skills/ai-ml/ml-pipeline/references/training-pipelines.md +782 -0
- package/skills/ai-ml/rag-architect/SKILL.md +194 -0
- package/skills/ai-ml/rag-architect/references/chunking-strategies.md +878 -0
- package/skills/ai-ml/rag-architect/references/embedding-models.md +561 -0
- package/skills/ai-ml/rag-architect/references/rag-evaluation.md +833 -0
- package/skills/ai-ml/rag-architect/references/retrieval-optimization.md +795 -0
- package/skills/ai-ml/rag-architect/references/vector-databases.md +589 -0
- package/skills/ai-ml/spark-engineer/SKILL.md +148 -0
- package/skills/ai-ml/spark-engineer/references/partitioning-caching.md +543 -0
- package/skills/ai-ml/spark-engineer/references/performance-tuning.md +544 -0
- package/skills/ai-ml/spark-engineer/references/rdd-operations.md +599 -0
- package/skills/ai-ml/spark-engineer/references/spark-sql-dataframes.md +474 -0
- package/skills/ai-ml/spark-engineer/references/streaming-patterns.md +786 -0
- package/skills/backend/api-designer/SKILL.md +217 -0
- package/skills/backend/api-designer/references/error-handling.md +541 -0
- package/skills/backend/api-designer/references/openapi.md +824 -0
- package/skills/backend/api-designer/references/pagination.md +494 -0
- package/skills/backend/api-designer/references/rest-patterns.md +335 -0
- package/skills/backend/api-designer/references/versioning.md +391 -0
- package/skills/backend/architecture-designer/SKILL.md +117 -0
- package/skills/backend/architecture-designer/references/adr-template.md +116 -0
- package/skills/backend/architecture-designer/references/architecture-patterns.md +111 -0
- package/skills/backend/architecture-designer/references/database-selection.md +102 -0
- package/skills/backend/architecture-designer/references/nfr-checklist.md +112 -0
- package/skills/backend/architecture-designer/references/system-design.md +100 -0
- package/skills/backend/code-documenter/SKILL.md +147 -0
- package/skills/backend/code-documenter/references/api-docs-fastapi-django.md +166 -0
- package/skills/backend/code-documenter/references/api-docs-nestjs-express.md +220 -0
- package/skills/backend/code-documenter/references/coverage-reports.md +125 -0
- package/skills/backend/code-documenter/references/documentation-systems.md +333 -0
- package/skills/backend/code-documenter/references/interactive-api-docs.md +531 -0
- package/skills/backend/code-documenter/references/python-docstrings.md +121 -0
- package/skills/backend/code-documenter/references/typescript-jsdoc.md +145 -0
- package/skills/backend/code-documenter/references/user-guides-tutorials.md +530 -0
- package/skills/backend/debugging-wizard/SKILL.md +105 -0
- package/skills/backend/debugging-wizard/references/common-patterns.md +132 -0
- package/skills/backend/debugging-wizard/references/debugging-tools.md +140 -0
- package/skills/backend/debugging-wizard/references/quick-fixes.md +177 -0
- package/skills/backend/debugging-wizard/references/strategies.md +142 -0
- package/skills/backend/debugging-wizard/references/systematic-debugging.md +367 -0
- package/skills/backend/feature-forge/SKILL.md +98 -0
- package/skills/backend/feature-forge/references/acceptance-criteria.md +104 -0
- package/skills/backend/feature-forge/references/ears-syntax.md +99 -0
- package/skills/backend/feature-forge/references/interview-questions.md +150 -0
- package/skills/backend/feature-forge/references/pre-discovery-subagents.md +54 -0
- package/skills/backend/feature-forge/references/specification-template.md +103 -0
- package/skills/backend/fullstack-guardian/SKILL.md +105 -0
- package/skills/backend/fullstack-guardian/references/api-design-standards.md +307 -0
- package/skills/backend/fullstack-guardian/references/architecture-decisions.md +350 -0
- package/skills/backend/fullstack-guardian/references/backend-patterns.md +237 -0
- package/skills/backend/fullstack-guardian/references/common-patterns.md +134 -0
- package/skills/backend/fullstack-guardian/references/deliverables-checklist.md +354 -0
- package/skills/backend/fullstack-guardian/references/design-template.md +91 -0
- package/skills/backend/fullstack-guardian/references/error-handling.md +135 -0
- package/skills/backend/fullstack-guardian/references/frontend-patterns.md +340 -0
- package/skills/backend/fullstack-guardian/references/integration-patterns.md +333 -0
- package/skills/backend/fullstack-guardian/references/security-checklist.md +106 -0
- package/skills/backend/graphql-architect/SKILL.md +146 -0
- package/skills/backend/graphql-architect/references/federation.md +418 -0
- package/skills/backend/graphql-architect/references/migration-from-rest.md +1141 -0
- package/skills/backend/graphql-architect/references/resolvers.md +425 -0
- package/skills/backend/graphql-architect/references/schema-design.md +393 -0
- package/skills/backend/graphql-architect/references/security.md +569 -0
- package/skills/backend/graphql-architect/references/subscriptions.md +510 -0
- package/skills/backend/legacy-modernizer/SKILL.md +137 -0
- package/skills/backend/legacy-modernizer/references/legacy-testing.md +381 -0
- package/skills/backend/legacy-modernizer/references/migration-strategies.md +423 -0
- package/skills/backend/legacy-modernizer/references/refactoring-patterns.md +395 -0
- package/skills/backend/legacy-modernizer/references/strangler-fig-pattern.md +281 -0
- package/skills/backend/legacy-modernizer/references/system-assessment.md +487 -0
- package/skills/backend/microservices-architect/SKILL.md +164 -0
- package/skills/backend/microservices-architect/references/communication.md +499 -0
- package/skills/backend/microservices-architect/references/data.md +721 -0
- package/skills/backend/microservices-architect/references/decomposition.md +344 -0
- package/skills/backend/microservices-architect/references/observability.md +805 -0
- package/skills/backend/microservices-architect/references/patterns.md +603 -0
- package/skills/database/database-optimizer/SKILL.md +147 -0
- package/skills/database/database-optimizer/references/index-strategies.md +331 -0
- package/skills/database/database-optimizer/references/monitoring-analysis.md +501 -0
- package/skills/database/database-optimizer/references/mysql-tuning.md +452 -0
- package/skills/database/database-optimizer/references/postgresql-tuning.md +413 -0
- package/skills/database/database-optimizer/references/query-optimization.md +251 -0
- package/skills/database/postgres-pro/SKILL.md +152 -0
- package/skills/database/postgres-pro/references/extensions.md +404 -0
- package/skills/database/postgres-pro/references/jsonb.md +321 -0
- package/skills/database/postgres-pro/references/maintenance.md +481 -0
- package/skills/database/postgres-pro/references/performance.md +265 -0
- package/skills/database/postgres-pro/references/replication.md +446 -0
- package/skills/database/sql-pro/SKILL.md +129 -0
- package/skills/database/sql-pro/references/database-design.md +402 -0
- package/skills/database/sql-pro/references/dialect-differences.md +419 -0
- package/skills/database/sql-pro/references/optimization.md +384 -0
- package/skills/database/sql-pro/references/query-patterns.md +285 -0
- package/skills/database/sql-pro/references/window-functions.md +328 -0
- package/skills/dotnet/csharp-developer/SKILL.md +125 -0
- package/skills/dotnet/csharp-developer/references/aspnet-core.md +394 -0
- package/skills/dotnet/csharp-developer/references/blazor.md +553 -0
- package/skills/dotnet/csharp-developer/references/entity-framework.md +409 -0
- package/skills/dotnet/csharp-developer/references/modern-csharp.md +248 -0
- package/skills/dotnet/csharp-developer/references/performance.md +498 -0
- package/skills/dotnet/dotnet-core-expert/SKILL.md +138 -0
- package/skills/dotnet/dotnet-core-expert/references/authentication.md +546 -0
- package/skills/dotnet/dotnet-core-expert/references/clean-architecture.md +455 -0
- package/skills/dotnet/dotnet-core-expert/references/cloud-native.md +548 -0
- package/skills/dotnet/dotnet-core-expert/references/entity-framework.md +440 -0
- package/skills/dotnet/dotnet-core-expert/references/minimal-apis.md +319 -0
- package/skills/frontend/angular-architect/SKILL.md +152 -0
- package/skills/frontend/angular-architect/references/components.md +297 -0
- package/skills/frontend/angular-architect/references/ngrx.md +401 -0
- package/skills/frontend/angular-architect/references/routing.md +361 -0
- package/skills/frontend/angular-architect/references/rxjs.md +319 -0
- package/skills/frontend/angular-architect/references/testing.md +405 -0
- package/skills/frontend/flutter-expert/SKILL.md +138 -0
- package/skills/frontend/flutter-expert/references/bloc-state.md +259 -0
- package/skills/frontend/flutter-expert/references/gorouter-navigation.md +119 -0
- package/skills/frontend/flutter-expert/references/performance.md +99 -0
- package/skills/frontend/flutter-expert/references/project-structure.md +118 -0
- package/skills/frontend/flutter-expert/references/riverpod-state.md +130 -0
- package/skills/frontend/flutter-expert/references/widget-patterns.md +123 -0
- package/skills/frontend/nextjs-developer/SKILL.md +143 -0
- package/skills/frontend/nextjs-developer/references/app-router.md +311 -0
- package/skills/frontend/nextjs-developer/references/data-fetching.md +482 -0
- package/skills/frontend/nextjs-developer/references/deployment.md +545 -0
- package/skills/frontend/nextjs-developer/references/server-actions.md +462 -0
- package/skills/frontend/nextjs-developer/references/server-components.md +384 -0
- package/skills/frontend/react-expert/SKILL.md +149 -0
- package/skills/frontend/react-expert/references/hooks-patterns.md +162 -0
- package/skills/frontend/react-expert/references/migration-class-to-modern.md +1119 -0
- package/skills/frontend/react-expert/references/performance.md +168 -0
- package/skills/frontend/react-expert/references/react-19-features.md +174 -0
- package/skills/frontend/react-expert/references/server-components.md +143 -0
- package/skills/frontend/react-expert/references/state-management.md +171 -0
- package/skills/frontend/react-expert/references/testing-react.md +174 -0
- package/skills/frontend/react-native-expert/SKILL.md +185 -0
- package/skills/frontend/react-native-expert/references/expo-router.md +187 -0
- package/skills/frontend/react-native-expert/references/list-optimization.md +204 -0
- package/skills/frontend/react-native-expert/references/platform-handling.md +188 -0
- package/skills/frontend/react-native-expert/references/project-structure.md +171 -0
- package/skills/frontend/react-native-expert/references/storage-hooks.md +173 -0
- package/skills/frontend/vue-expert/SKILL.md +98 -0
- package/skills/frontend/vue-expert/references/build-tooling.md +480 -0
- package/skills/frontend/vue-expert/references/components.md +448 -0
- package/skills/frontend/vue-expert/references/composition-api.md +299 -0
- package/skills/frontend/vue-expert/references/mobile-hybrid.md +636 -0
- package/skills/frontend/vue-expert/references/nuxt.md +669 -0
- package/skills/frontend/vue-expert/references/state-management.md +449 -0
- package/skills/frontend/vue-expert/references/typescript.md +584 -0
- package/skills/frontend/vue-expert-js/SKILL.md +167 -0
- package/skills/frontend/vue-expert-js/references/component-architecture.md +219 -0
- package/skills/frontend/vue-expert-js/references/composables-patterns.md +183 -0
- package/skills/frontend/vue-expert-js/references/jsdoc-typing.md +535 -0
- package/skills/frontend/vue-expert-js/references/state-management.md +249 -0
- package/skills/frontend/vue-expert-js/references/testing-patterns.md +237 -0
- package/skills/go-rust-cpp/cpp-pro/SKILL.md +115 -0
- package/skills/go-rust-cpp/cpp-pro/references/build-tooling.md +440 -0
- package/skills/go-rust-cpp/cpp-pro/references/concurrency.md +437 -0
- package/skills/go-rust-cpp/cpp-pro/references/memory-performance.md +397 -0
- package/skills/go-rust-cpp/cpp-pro/references/modern-cpp.md +304 -0
- package/skills/go-rust-cpp/cpp-pro/references/templates.md +357 -0
- package/skills/go-rust-cpp/golang-pro/SKILL.md +122 -0
- package/skills/go-rust-cpp/golang-pro/references/concurrency.md +329 -0
- package/skills/go-rust-cpp/golang-pro/references/generics.md +442 -0
- package/skills/go-rust-cpp/golang-pro/references/interfaces.md +432 -0
- package/skills/go-rust-cpp/golang-pro/references/project-structure.md +477 -0
- package/skills/go-rust-cpp/golang-pro/references/testing.md +451 -0
- package/skills/go-rust-cpp/rust-engineer/SKILL.md +167 -0
- package/skills/go-rust-cpp/rust-engineer/references/async.md +458 -0
- package/skills/go-rust-cpp/rust-engineer/references/error-handling.md +334 -0
- package/skills/go-rust-cpp/rust-engineer/references/ownership.md +278 -0
- package/skills/go-rust-cpp/rust-engineer/references/testing.md +470 -0
- package/skills/go-rust-cpp/rust-engineer/references/traits.md +413 -0
- package/skills/infra/cli-developer/SKILL.md +113 -0
- package/skills/infra/cli-developer/references/design-patterns.md +221 -0
- package/skills/infra/cli-developer/references/go-cli.md +540 -0
- package/skills/infra/cli-developer/references/node-cli.md +383 -0
- package/skills/infra/cli-developer/references/python-cli.md +422 -0
- package/skills/infra/cli-developer/references/ux-patterns.md +448 -0
- package/skills/infra/cloud-architect/SKILL.md +216 -0
- package/skills/infra/cloud-architect/references/aws.md +394 -0
- package/skills/infra/cloud-architect/references/azure.md +562 -0
- package/skills/infra/cloud-architect/references/cost.md +582 -0
- package/skills/infra/cloud-architect/references/gcp.md +633 -0
- package/skills/infra/cloud-architect/references/multi-cloud.md +483 -0
- package/skills/infra/devops-engineer/SKILL.md +144 -0
- package/skills/infra/devops-engineer/references/deployment-strategies.md +241 -0
- package/skills/infra/devops-engineer/references/docker-patterns.md +113 -0
- package/skills/infra/devops-engineer/references/github-actions.md +139 -0
- package/skills/infra/devops-engineer/references/incident-response.md +331 -0
- package/skills/infra/devops-engineer/references/kubernetes.md +154 -0
- package/skills/infra/devops-engineer/references/platform-engineering.md +417 -0
- package/skills/infra/devops-engineer/references/release-automation.md +527 -0
- package/skills/infra/devops-engineer/references/terraform-iac.md +141 -0
- package/skills/infra/kubernetes-specialist/SKILL.md +241 -0
- package/skills/infra/kubernetes-specialist/references/configuration.md +452 -0
- package/skills/infra/kubernetes-specialist/references/cost-optimization.md +458 -0
- package/skills/infra/kubernetes-specialist/references/custom-operators.md +563 -0
- package/skills/infra/kubernetes-specialist/references/gitops.md +530 -0
- package/skills/infra/kubernetes-specialist/references/helm-charts.md +912 -0
- package/skills/infra/kubernetes-specialist/references/multi-cluster.md +507 -0
- package/skills/infra/kubernetes-specialist/references/networking.md +447 -0
- package/skills/infra/kubernetes-specialist/references/service-mesh.md +459 -0
- package/skills/infra/kubernetes-specialist/references/storage.md +535 -0
- package/skills/infra/kubernetes-specialist/references/troubleshooting.md +414 -0
- package/skills/infra/kubernetes-specialist/references/workloads.md +377 -0
- package/skills/infra/mcp-developer/SKILL.md +143 -0
- package/skills/infra/mcp-developer/references/protocol.md +244 -0
- package/skills/infra/mcp-developer/references/python-sdk.md +367 -0
- package/skills/infra/mcp-developer/references/resources.md +554 -0
- package/skills/infra/mcp-developer/references/tools.md +480 -0
- package/skills/infra/mcp-developer/references/typescript-sdk.md +350 -0
- package/skills/infra/monitoring-expert/SKILL.md +176 -0
- package/skills/infra/monitoring-expert/references/alerting-rules.md +141 -0
- package/skills/infra/monitoring-expert/references/application-profiling.md +331 -0
- package/skills/infra/monitoring-expert/references/capacity-planning.md +344 -0
- package/skills/infra/monitoring-expert/references/dashboards.md +126 -0
- package/skills/infra/monitoring-expert/references/opentelemetry.md +123 -0
- package/skills/infra/monitoring-expert/references/performance-testing.md +269 -0
- package/skills/infra/monitoring-expert/references/prometheus-metrics.md +136 -0
- package/skills/infra/monitoring-expert/references/structured-logging.md +142 -0
- package/skills/infra/sre-engineer/SKILL.md +181 -0
- package/skills/infra/sre-engineer/references/automation-toil.md +492 -0
- package/skills/infra/sre-engineer/references/error-budget-policy.md +334 -0
- package/skills/infra/sre-engineer/references/incident-chaos.md +576 -0
- package/skills/infra/sre-engineer/references/monitoring-alerting.md +424 -0
- package/skills/infra/sre-engineer/references/slo-sli-management.md +238 -0
- package/skills/infra/terraform-engineer/SKILL.md +143 -0
- package/skills/infra/terraform-engineer/references/best-practices.md +583 -0
- package/skills/infra/terraform-engineer/references/module-patterns.md +297 -0
- package/skills/infra/terraform-engineer/references/providers.md +452 -0
- package/skills/infra/terraform-engineer/references/state-management.md +371 -0
- package/skills/infra/terraform-engineer/references/testing.md +486 -0
- package/skills/infra/websocket-engineer/SKILL.md +168 -0
- package/skills/infra/websocket-engineer/references/alternatives.md +391 -0
- package/skills/infra/websocket-engineer/references/patterns.md +400 -0
- package/skills/infra/websocket-engineer/references/protocol.md +195 -0
- package/skills/infra/websocket-engineer/references/scaling.md +333 -0
- package/skills/infra/websocket-engineer/references/security.md +474 -0
- package/skills/java/java-architect/SKILL.md +132 -0
- package/skills/java/java-architect/references/jpa-optimization.md +393 -0
- package/skills/java/java-architect/references/reactive-webflux.md +356 -0
- package/skills/java/java-architect/references/spring-boot-setup.md +269 -0
- package/skills/java/java-architect/references/spring-security.md +445 -0
- package/skills/java/java-architect/references/testing-patterns.md +500 -0
- package/skills/java/kotlin-specialist/SKILL.md +147 -0
- package/skills/java/kotlin-specialist/references/android-compose.md +419 -0
- package/skills/java/kotlin-specialist/references/coroutines-flow.md +276 -0
- package/skills/java/kotlin-specialist/references/dsl-idioms.md +421 -0
- package/skills/java/kotlin-specialist/references/ktor-server.md +426 -0
- package/skills/java/kotlin-specialist/references/multiplatform-kmp.md +380 -0
- package/skills/java/spring-boot-engineer/SKILL.md +195 -0
- package/skills/java/spring-boot-engineer/references/cloud.md +498 -0
- package/skills/java/spring-boot-engineer/references/data.md +381 -0
- package/skills/java/spring-boot-engineer/references/security.md +459 -0
- package/skills/java/spring-boot-engineer/references/testing.md +545 -0
- package/skills/java/spring-boot-engineer/references/web.md +295 -0
- package/skills/javascript/javascript-pro/SKILL.md +132 -0
- package/skills/javascript/javascript-pro/references/async-patterns.md +334 -0
- package/skills/javascript/javascript-pro/references/browser-apis.md +398 -0
- package/skills/javascript/javascript-pro/references/modern-syntax.md +272 -0
- package/skills/javascript/javascript-pro/references/modules.md +357 -0
- package/skills/javascript/javascript-pro/references/node-essentials.md +471 -0
- package/skills/javascript/nestjs-expert/SKILL.md +206 -0
- package/skills/javascript/nestjs-expert/references/authentication.md +166 -0
- package/skills/javascript/nestjs-expert/references/controllers-routing.md +111 -0
- package/skills/javascript/nestjs-expert/references/dtos-validation.md +153 -0
- package/skills/javascript/nestjs-expert/references/migration-from-express.md +1237 -0
- package/skills/javascript/nestjs-expert/references/services-di.md +140 -0
- package/skills/javascript/nestjs-expert/references/testing-patterns.md +186 -0
- package/skills/javascript/typescript-pro/SKILL.md +145 -0
- package/skills/javascript/typescript-pro/references/advanced-types.md +259 -0
- package/skills/javascript/typescript-pro/references/configuration.md +445 -0
- package/skills/javascript/typescript-pro/references/patterns.md +484 -0
- package/skills/javascript/typescript-pro/references/type-guards.md +352 -0
- package/skills/javascript/typescript-pro/references/utility-types.md +329 -0
- package/skills/php/laravel-specialist/SKILL.md +262 -0
- package/skills/php/laravel-specialist/references/eloquent.md +351 -0
- package/skills/php/laravel-specialist/references/livewire.md +512 -0
- package/skills/php/laravel-specialist/references/queues.md +423 -0
- package/skills/php/laravel-specialist/references/routing.md +362 -0
- package/skills/php/laravel-specialist/references/testing.md +522 -0
- package/skills/php/php-pro/SKILL.md +206 -0
- package/skills/php/php-pro/references/async-patterns.md +412 -0
- package/skills/php/php-pro/references/laravel-patterns.md +377 -0
- package/skills/php/php-pro/references/modern-php-features.md +323 -0
- package/skills/php/php-pro/references/symfony-patterns.md +466 -0
- package/skills/php/php-pro/references/testing-quality.md +466 -0
- package/skills/python/django-expert/SKILL.md +162 -0
- package/skills/python/django-expert/references/authentication.md +145 -0
- package/skills/python/django-expert/references/drf-serializers.md +148 -0
- package/skills/python/django-expert/references/models-orm.md +151 -0
- package/skills/python/django-expert/references/testing-django.md +204 -0
- package/skills/python/django-expert/references/viewsets-views.md +153 -0
- package/skills/python/fastapi-expert/SKILL.md +185 -0
- package/skills/python/fastapi-expert/references/async-sqlalchemy.md +146 -0
- package/skills/python/fastapi-expert/references/authentication.md +159 -0
- package/skills/python/fastapi-expert/references/endpoints-routing.md +142 -0
- package/skills/python/fastapi-expert/references/migration-from-django.md +997 -0
- package/skills/python/fastapi-expert/references/pydantic-v2.md +135 -0
- package/skills/python/fastapi-expert/references/testing-async.md +159 -0
- package/skills/python/pandas-pro/SKILL.md +178 -0
- package/skills/python/pandas-pro/references/aggregation-groupby.md +545 -0
- package/skills/python/pandas-pro/references/data-cleaning.md +500 -0
- package/skills/python/pandas-pro/references/dataframe-operations.md +420 -0
- package/skills/python/pandas-pro/references/merging-joining.md +596 -0
- package/skills/python/pandas-pro/references/performance-optimization.md +597 -0
- package/skills/python/python-pro/SKILL.md +177 -0
- package/skills/python/python-pro/references/async-patterns.md +356 -0
- package/skills/python/python-pro/references/packaging.md +460 -0
- package/skills/python/python-pro/references/standard-library.md +378 -0
- package/skills/python/python-pro/references/testing.md +404 -0
- package/skills/python/python-pro/references/type-system.md +290 -0
- package/skills/quality/chaos-engineer/SKILL.md +182 -0
- package/skills/quality/chaos-engineer/references/chaos-tools.md +511 -0
- package/skills/quality/chaos-engineer/references/experiment-design.md +229 -0
- package/skills/quality/chaos-engineer/references/game-days.md +434 -0
- package/skills/quality/chaos-engineer/references/infrastructure-chaos.md +348 -0
- package/skills/quality/chaos-engineer/references/kubernetes-chaos.md +432 -0
- package/skills/quality/code-reviewer/SKILL.md +119 -0
- package/skills/quality/code-reviewer/references/common-issues.md +142 -0
- package/skills/quality/code-reviewer/references/feedback-examples.md +144 -0
- package/skills/quality/code-reviewer/references/receiving-feedback.md +238 -0
- package/skills/quality/code-reviewer/references/report-template.md +109 -0
- package/skills/quality/code-reviewer/references/review-checklist.md +88 -0
- package/skills/quality/code-reviewer/references/spec-compliance-review.md +258 -0
- package/skills/quality/playwright-expert/SKILL.md +169 -0
- package/skills/quality/playwright-expert/references/api-mocking.md +140 -0
- package/skills/quality/playwright-expert/references/configuration.md +155 -0
- package/skills/quality/playwright-expert/references/debugging-flaky.md +150 -0
- package/skills/quality/playwright-expert/references/page-object-model.md +152 -0
- package/skills/quality/playwright-expert/references/selectors-locators.md +119 -0
- package/skills/quality/secure-code-guardian/SKILL.md +191 -0
- package/skills/quality/secure-code-guardian/references/authentication.md +136 -0
- package/skills/quality/secure-code-guardian/references/input-validation.md +146 -0
- package/skills/quality/secure-code-guardian/references/owasp-prevention.md +135 -0
- package/skills/quality/secure-code-guardian/references/security-headers.md +133 -0
- package/skills/quality/secure-code-guardian/references/xss-csrf.md +157 -0
- package/skills/quality/security-reviewer/SKILL.md +103 -0
- package/skills/quality/security-reviewer/references/infrastructure-security.md +268 -0
- package/skills/quality/security-reviewer/references/penetration-testing.md +268 -0
- package/skills/quality/security-reviewer/references/report-template.md +170 -0
- package/skills/quality/security-reviewer/references/sast-tools.md +117 -0
- package/skills/quality/security-reviewer/references/secret-scanning.md +125 -0
- package/skills/quality/security-reviewer/references/vulnerability-patterns.md +152 -0
- package/skills/quality/tdd-guide/assets/sample_coverage_report.lcov +0 -0
- package/skills/quality/test-master/SKILL.md +94 -0
- package/skills/quality/test-master/references/automation-frameworks.md +294 -0
- package/skills/quality/test-master/references/e2e-testing.md +128 -0
- package/skills/quality/test-master/references/integration-testing.md +120 -0
- package/skills/quality/test-master/references/performance-testing.md +118 -0
- package/skills/quality/test-master/references/qa-methodology.md +247 -0
- package/skills/quality/test-master/references/security-testing.md +127 -0
- package/skills/quality/test-master/references/tdd-iron-laws.md +174 -0
- package/skills/quality/test-master/references/test-reports.md +104 -0
- package/skills/quality/test-master/references/testing-anti-patterns.md +231 -0
- package/skills/quality/test-master/references/unit-testing.md +113 -0
- package/skills/ruby/rails-expert/SKILL.md +154 -0
- package/skills/ruby/rails-expert/references/active-record.md +244 -0
- package/skills/ruby/rails-expert/references/api-development.md +401 -0
- package/skills/ruby/rails-expert/references/background-jobs.md +272 -0
- package/skills/ruby/rails-expert/references/hotwire-turbo.md +228 -0
- package/skills/ruby/rails-expert/references/rspec-testing.md +367 -0
- package/skills/swift/swift-expert/SKILL.md +163 -0
- package/skills/swift/swift-expert/references/async-concurrency.md +360 -0
- package/skills/swift/swift-expert/references/memory-performance.md +377 -0
- package/skills/swift/swift-expert/references/protocol-oriented.md +354 -0
- package/skills/swift/swift-expert/references/swiftui-patterns.md +291 -0
- package/skills/swift/swift-expert/references/testing-patterns.md +399 -0
- package/skills/workflow/brainstorming/SKILL.md +164 -0
- package/skills/workflow/brainstorming/scripts/helper.js +88 -0
- package/skills/workflow/brainstorming/scripts/start-server.sh +148 -0
- package/skills/workflow/brainstorming/scripts/stop-server.sh +56 -0
- package/skills/workflow/brainstorming/spec-document-reviewer-prompt.md +49 -0
- package/skills/workflow/brainstorming/visual-companion.md +287 -0
- package/skills/workflow/documentation/SKILL.md +45 -0
- package/skills/workflow/entropy-management/SKILL.md +115 -0
- package/skills/workflow/executing-plans/SKILL.md +70 -0
- package/skills/workflow/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/workflow/receiving-code-review/SKILL.md +213 -0
- package/skills/workflow/requesting-code-review/SKILL.md +105 -0
- package/skills/workflow/requesting-code-review/code-reviewer.md +146 -0
- package/skills/workflow/requirement-engineering/SKILL.md +111 -0
- package/skills/workflow/systematic-debugging/CREATION-LOG.md +119 -0
- package/skills/workflow/systematic-debugging/SKILL.md +296 -0
- package/skills/workflow/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/skills/workflow/systematic-debugging/condition-based-waiting.md +115 -0
- package/skills/workflow/systematic-debugging/defense-in-depth.md +122 -0
- package/skills/workflow/systematic-debugging/find-polluter.sh +63 -0
- package/skills/workflow/systematic-debugging/root-cause-tracing.md +169 -0
- package/skills/workflow/systematic-debugging/test-academic.md +14 -0
- package/skills/workflow/systematic-debugging/test-pressure-1.md +58 -0
- package/skills/workflow/systematic-debugging/test-pressure-2.md +68 -0
- package/skills/workflow/systematic-debugging/test-pressure-3.md +69 -0
- package/skills/workflow/using-git-worktrees/SKILL.md +218 -0
- package/skills/workflow/verification-before-completion/SKILL.md +139 -0
- package/skills/workflow/writing-plans/SKILL.md +151 -0
- package/skills/workflow/writing-plans/plan-document-reviewer-prompt.md +49 -0
- package/skills/workflow/writing-skills/SKILL.md +655 -0
- package/skills/workflow/writing-skills/anthropic-best-practices.md +1150 -0
- package/skills/workflow/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/workflow/writing-skills/graphviz-conventions.dot +0 -0
- package/skills/workflow/writing-skills/persuasion-principles.md +187 -0
- package/skills/workflow/writing-skills/render-graphs.js +168 -0
- package/skills/workflow/writing-skills/testing-skills-with-subagents.md +384 -0
- package/skills/angular-architect/SKILL.md +0 -152
- package/skills/angular-architect/references/components.md +0 -297
- package/skills/angular-architect/references/ngrx.md +0 -401
- package/skills/angular-architect/references/routing.md +0 -361
- package/skills/angular-architect/references/rxjs.md +0 -319
- package/skills/angular-architect/references/testing.md +0 -405
- package/skills/api-designer/SKILL.md +0 -217
- package/skills/api-designer/references/error-handling.md +0 -541
- package/skills/api-designer/references/openapi.md +0 -824
- package/skills/api-designer/references/pagination.md +0 -494
- package/skills/api-designer/references/rest-patterns.md +0 -335
- package/skills/api-designer/references/versioning.md +0 -391
- package/skills/architecture-designer/SKILL.md +0 -117
- package/skills/architecture-designer/references/adr-template.md +0 -116
- package/skills/architecture-designer/references/architecture-patterns.md +0 -111
- package/skills/architecture-designer/references/database-selection.md +0 -102
- package/skills/architecture-designer/references/nfr-checklist.md +0 -112
- package/skills/architecture-designer/references/system-design.md +0 -100
- package/skills/brainstorming/SKILL.md +0 -164
- package/skills/brainstorming/scripts/helper.js +0 -88
- package/skills/brainstorming/scripts/start-server.sh +0 -148
- package/skills/brainstorming/scripts/stop-server.sh +0 -56
- package/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
- package/skills/brainstorming/visual-companion.md +0 -287
- package/skills/chaos-engineer/SKILL.md +0 -182
- package/skills/chaos-engineer/references/chaos-tools.md +0 -511
- package/skills/chaos-engineer/references/experiment-design.md +0 -229
- package/skills/chaos-engineer/references/game-days.md +0 -434
- package/skills/chaos-engineer/references/infrastructure-chaos.md +0 -348
- package/skills/chaos-engineer/references/kubernetes-chaos.md +0 -432
- package/skills/cli-developer/SKILL.md +0 -113
- package/skills/cli-developer/references/design-patterns.md +0 -221
- package/skills/cli-developer/references/go-cli.md +0 -540
- package/skills/cli-developer/references/node-cli.md +0 -383
- package/skills/cli-developer/references/python-cli.md +0 -422
- package/skills/cli-developer/references/ux-patterns.md +0 -448
- package/skills/cloud-architect/SKILL.md +0 -216
- package/skills/cloud-architect/references/aws.md +0 -394
- package/skills/cloud-architect/references/azure.md +0 -562
- package/skills/cloud-architect/references/cost.md +0 -582
- package/skills/cloud-architect/references/gcp.md +0 -633
- package/skills/cloud-architect/references/multi-cloud.md +0 -483
- package/skills/code-documenter/SKILL.md +0 -147
- package/skills/code-documenter/references/api-docs-fastapi-django.md +0 -166
- package/skills/code-documenter/references/api-docs-nestjs-express.md +0 -220
- package/skills/code-documenter/references/coverage-reports.md +0 -125
- package/skills/code-documenter/references/documentation-systems.md +0 -333
- package/skills/code-documenter/references/interactive-api-docs.md +0 -531
- package/skills/code-documenter/references/python-docstrings.md +0 -121
- package/skills/code-documenter/references/typescript-jsdoc.md +0 -145
- package/skills/code-documenter/references/user-guides-tutorials.md +0 -530
- package/skills/code-reviewer/SKILL.md +0 -119
- package/skills/code-reviewer/references/common-issues.md +0 -142
- package/skills/code-reviewer/references/feedback-examples.md +0 -144
- package/skills/code-reviewer/references/receiving-feedback.md +0 -238
- package/skills/code-reviewer/references/report-template.md +0 -109
- package/skills/code-reviewer/references/review-checklist.md +0 -88
- package/skills/code-reviewer/references/spec-compliance-review.md +0 -258
- package/skills/cpp-pro/SKILL.md +0 -115
- package/skills/cpp-pro/references/build-tooling.md +0 -440
- package/skills/cpp-pro/references/concurrency.md +0 -437
- package/skills/cpp-pro/references/memory-performance.md +0 -397
- package/skills/cpp-pro/references/modern-cpp.md +0 -304
- package/skills/cpp-pro/references/templates.md +0 -357
- package/skills/csharp-developer/SKILL.md +0 -125
- package/skills/csharp-developer/references/aspnet-core.md +0 -394
- package/skills/csharp-developer/references/blazor.md +0 -553
- package/skills/csharp-developer/references/entity-framework.md +0 -409
- package/skills/csharp-developer/references/modern-csharp.md +0 -248
- package/skills/csharp-developer/references/performance.md +0 -498
- package/skills/database-optimizer/SKILL.md +0 -147
- package/skills/database-optimizer/references/index-strategies.md +0 -331
- package/skills/database-optimizer/references/monitoring-analysis.md +0 -501
- package/skills/database-optimizer/references/mysql-tuning.md +0 -452
- package/skills/database-optimizer/references/postgresql-tuning.md +0 -413
- package/skills/database-optimizer/references/query-optimization.md +0 -251
- package/skills/debugging-wizard/SKILL.md +0 -105
- package/skills/debugging-wizard/references/common-patterns.md +0 -132
- package/skills/debugging-wizard/references/debugging-tools.md +0 -140
- package/skills/debugging-wizard/references/quick-fixes.md +0 -177
- package/skills/debugging-wizard/references/strategies.md +0 -142
- package/skills/debugging-wizard/references/systematic-debugging.md +0 -367
- package/skills/devops-engineer/SKILL.md +0 -144
- package/skills/devops-engineer/references/deployment-strategies.md +0 -241
- package/skills/devops-engineer/references/docker-patterns.md +0 -113
- package/skills/devops-engineer/references/github-actions.md +0 -139
- package/skills/devops-engineer/references/incident-response.md +0 -331
- package/skills/devops-engineer/references/kubernetes.md +0 -154
- package/skills/devops-engineer/references/platform-engineering.md +0 -417
- package/skills/devops-engineer/references/release-automation.md +0 -527
- package/skills/devops-engineer/references/terraform-iac.md +0 -141
- package/skills/django-expert/SKILL.md +0 -162
- package/skills/django-expert/references/authentication.md +0 -145
- package/skills/django-expert/references/drf-serializers.md +0 -148
- package/skills/django-expert/references/models-orm.md +0 -151
- package/skills/django-expert/references/testing-django.md +0 -204
- package/skills/django-expert/references/viewsets-views.md +0 -153
- package/skills/documentation/SKILL.md +0 -45
- package/skills/dotnet-core-expert/SKILL.md +0 -138
- package/skills/dotnet-core-expert/references/authentication.md +0 -546
- package/skills/dotnet-core-expert/references/clean-architecture.md +0 -455
- package/skills/dotnet-core-expert/references/cloud-native.md +0 -548
- package/skills/dotnet-core-expert/references/entity-framework.md +0 -440
- package/skills/dotnet-core-expert/references/minimal-apis.md +0 -319
- package/skills/entropy-management/SKILL.md +0 -115
- package/skills/executing-plans/SKILL.md +0 -70
- package/skills/fastapi-expert/SKILL.md +0 -185
- package/skills/fastapi-expert/references/async-sqlalchemy.md +0 -146
- package/skills/fastapi-expert/references/authentication.md +0 -159
- package/skills/fastapi-expert/references/endpoints-routing.md +0 -142
- package/skills/fastapi-expert/references/migration-from-django.md +0 -997
- package/skills/fastapi-expert/references/pydantic-v2.md +0 -135
- package/skills/fastapi-expert/references/testing-async.md +0 -159
- package/skills/feature-forge/SKILL.md +0 -98
- package/skills/feature-forge/references/acceptance-criteria.md +0 -104
- package/skills/feature-forge/references/ears-syntax.md +0 -99
- package/skills/feature-forge/references/interview-questions.md +0 -150
- package/skills/feature-forge/references/pre-discovery-subagents.md +0 -54
- package/skills/feature-forge/references/specification-template.md +0 -103
- package/skills/fine-tuning-expert/SKILL.md +0 -162
- package/skills/fine-tuning-expert/references/dataset-preparation.md +0 -540
- package/skills/fine-tuning-expert/references/deployment-optimization.md +0 -673
- package/skills/fine-tuning-expert/references/evaluation-metrics.md +0 -597
- package/skills/fine-tuning-expert/references/hyperparameter-tuning.md +0 -565
- package/skills/fine-tuning-expert/references/lora-peft.md +0 -347
- package/skills/finishing-a-development-branch/SKILL.md +0 -200
- package/skills/flutter-expert/SKILL.md +0 -138
- package/skills/flutter-expert/references/bloc-state.md +0 -259
- package/skills/flutter-expert/references/gorouter-navigation.md +0 -119
- package/skills/flutter-expert/references/performance.md +0 -99
- package/skills/flutter-expert/references/project-structure.md +0 -118
- package/skills/flutter-expert/references/riverpod-state.md +0 -130
- package/skills/flutter-expert/references/widget-patterns.md +0 -123
- package/skills/fullstack-guardian/SKILL.md +0 -105
- package/skills/fullstack-guardian/references/api-design-standards.md +0 -307
- package/skills/fullstack-guardian/references/architecture-decisions.md +0 -350
- package/skills/fullstack-guardian/references/backend-patterns.md +0 -237
- package/skills/fullstack-guardian/references/common-patterns.md +0 -134
- package/skills/fullstack-guardian/references/deliverables-checklist.md +0 -354
- package/skills/fullstack-guardian/references/design-template.md +0 -91
- package/skills/fullstack-guardian/references/error-handling.md +0 -135
- package/skills/fullstack-guardian/references/frontend-patterns.md +0 -340
- package/skills/fullstack-guardian/references/integration-patterns.md +0 -333
- package/skills/fullstack-guardian/references/security-checklist.md +0 -106
- package/skills/golang-pro/SKILL.md +0 -122
- package/skills/golang-pro/references/concurrency.md +0 -329
- package/skills/golang-pro/references/generics.md +0 -442
- package/skills/golang-pro/references/interfaces.md +0 -432
- package/skills/golang-pro/references/project-structure.md +0 -477
- package/skills/golang-pro/references/testing.md +0 -451
- package/skills/graphql-architect/SKILL.md +0 -146
- package/skills/graphql-architect/references/federation.md +0 -418
- package/skills/graphql-architect/references/migration-from-rest.md +0 -1141
- package/skills/graphql-architect/references/resolvers.md +0 -425
- package/skills/graphql-architect/references/schema-design.md +0 -393
- package/skills/graphql-architect/references/security.md +0 -569
- package/skills/graphql-architect/references/subscriptions.md +0 -510
- package/skills/java-architect/SKILL.md +0 -132
- package/skills/java-architect/references/jpa-optimization.md +0 -393
- package/skills/java-architect/references/reactive-webflux.md +0 -356
- package/skills/java-architect/references/spring-boot-setup.md +0 -269
- package/skills/java-architect/references/spring-security.md +0 -445
- package/skills/java-architect/references/testing-patterns.md +0 -500
- package/skills/javascript-pro/SKILL.md +0 -132
- package/skills/javascript-pro/references/async-patterns.md +0 -334
- package/skills/javascript-pro/references/browser-apis.md +0 -398
- package/skills/javascript-pro/references/modern-syntax.md +0 -272
- package/skills/javascript-pro/references/modules.md +0 -357
- package/skills/javascript-pro/references/node-essentials.md +0 -471
- package/skills/kotlin-specialist/SKILL.md +0 -147
- package/skills/kotlin-specialist/references/android-compose.md +0 -419
- package/skills/kotlin-specialist/references/coroutines-flow.md +0 -276
- package/skills/kotlin-specialist/references/dsl-idioms.md +0 -421
- package/skills/kotlin-specialist/references/ktor-server.md +0 -426
- package/skills/kotlin-specialist/references/multiplatform-kmp.md +0 -380
- package/skills/kubernetes-specialist/SKILL.md +0 -241
- package/skills/kubernetes-specialist/references/configuration.md +0 -452
- package/skills/kubernetes-specialist/references/cost-optimization.md +0 -458
- package/skills/kubernetes-specialist/references/custom-operators.md +0 -563
- package/skills/kubernetes-specialist/references/gitops.md +0 -530
- package/skills/kubernetes-specialist/references/helm-charts.md +0 -912
- package/skills/kubernetes-specialist/references/multi-cluster.md +0 -507
- package/skills/kubernetes-specialist/references/networking.md +0 -447
- package/skills/kubernetes-specialist/references/service-mesh.md +0 -459
- package/skills/kubernetes-specialist/references/storage.md +0 -535
- package/skills/kubernetes-specialist/references/troubleshooting.md +0 -414
- package/skills/kubernetes-specialist/references/workloads.md +0 -377
- package/skills/laravel-specialist/SKILL.md +0 -262
- package/skills/laravel-specialist/references/eloquent.md +0 -351
- package/skills/laravel-specialist/references/livewire.md +0 -512
- package/skills/laravel-specialist/references/queues.md +0 -423
- package/skills/laravel-specialist/references/routing.md +0 -362
- package/skills/laravel-specialist/references/testing.md +0 -522
- package/skills/legacy-modernizer/SKILL.md +0 -137
- package/skills/legacy-modernizer/references/legacy-testing.md +0 -381
- package/skills/legacy-modernizer/references/migration-strategies.md +0 -423
- package/skills/legacy-modernizer/references/refactoring-patterns.md +0 -395
- package/skills/legacy-modernizer/references/strangler-fig-pattern.md +0 -281
- package/skills/legacy-modernizer/references/system-assessment.md +0 -487
- package/skills/mcp-developer/SKILL.md +0 -143
- package/skills/mcp-developer/references/protocol.md +0 -244
- package/skills/mcp-developer/references/python-sdk.md +0 -367
- package/skills/mcp-developer/references/resources.md +0 -554
- package/skills/mcp-developer/references/tools.md +0 -480
- package/skills/mcp-developer/references/typescript-sdk.md +0 -350
- package/skills/microservices-architect/SKILL.md +0 -164
- package/skills/microservices-architect/references/communication.md +0 -499
- package/skills/microservices-architect/references/data.md +0 -721
- package/skills/microservices-architect/references/decomposition.md +0 -344
- package/skills/microservices-architect/references/observability.md +0 -805
- package/skills/microservices-architect/references/patterns.md +0 -603
- package/skills/ml-pipeline/SKILL.md +0 -159
- package/skills/ml-pipeline/references/experiment-tracking.md +0 -833
- package/skills/ml-pipeline/references/feature-engineering.md +0 -631
- package/skills/ml-pipeline/references/model-validation.md +0 -978
- package/skills/ml-pipeline/references/pipeline-orchestration.md +0 -907
- package/skills/ml-pipeline/references/training-pipelines.md +0 -782
- package/skills/monitoring-expert/SKILL.md +0 -176
- package/skills/monitoring-expert/references/alerting-rules.md +0 -141
- package/skills/monitoring-expert/references/application-profiling.md +0 -331
- package/skills/monitoring-expert/references/capacity-planning.md +0 -344
- package/skills/monitoring-expert/references/dashboards.md +0 -126
- package/skills/monitoring-expert/references/opentelemetry.md +0 -123
- package/skills/monitoring-expert/references/performance-testing.md +0 -269
- package/skills/monitoring-expert/references/prometheus-metrics.md +0 -136
- package/skills/monitoring-expert/references/structured-logging.md +0 -142
- package/skills/nestjs-expert/SKILL.md +0 -206
- package/skills/nestjs-expert/references/authentication.md +0 -166
- package/skills/nestjs-expert/references/controllers-routing.md +0 -111
- package/skills/nestjs-expert/references/dtos-validation.md +0 -153
- package/skills/nestjs-expert/references/migration-from-express.md +0 -1237
- package/skills/nestjs-expert/references/services-di.md +0 -140
- package/skills/nestjs-expert/references/testing-patterns.md +0 -186
- package/skills/nextjs-developer/SKILL.md +0 -143
- package/skills/nextjs-developer/references/app-router.md +0 -311
- package/skills/nextjs-developer/references/data-fetching.md +0 -482
- package/skills/nextjs-developer/references/deployment.md +0 -545
- package/skills/nextjs-developer/references/server-actions.md +0 -462
- package/skills/nextjs-developer/references/server-components.md +0 -384
- package/skills/pandas-pro/SKILL.md +0 -178
- package/skills/pandas-pro/references/aggregation-groupby.md +0 -545
- package/skills/pandas-pro/references/data-cleaning.md +0 -500
- package/skills/pandas-pro/references/dataframe-operations.md +0 -420
- package/skills/pandas-pro/references/merging-joining.md +0 -596
- package/skills/pandas-pro/references/performance-optimization.md +0 -597
- package/skills/php-pro/SKILL.md +0 -206
- package/skills/php-pro/references/async-patterns.md +0 -412
- package/skills/php-pro/references/laravel-patterns.md +0 -377
- package/skills/php-pro/references/modern-php-features.md +0 -323
- package/skills/php-pro/references/symfony-patterns.md +0 -466
- package/skills/php-pro/references/testing-quality.md +0 -466
- package/skills/playwright-expert/SKILL.md +0 -169
- package/skills/playwright-expert/references/api-mocking.md +0 -140
- package/skills/playwright-expert/references/configuration.md +0 -155
- package/skills/playwright-expert/references/debugging-flaky.md +0 -150
- package/skills/playwright-expert/references/page-object-model.md +0 -152
- package/skills/playwright-expert/references/selectors-locators.md +0 -119
- package/skills/postgres-pro/SKILL.md +0 -152
- package/skills/postgres-pro/references/extensions.md +0 -404
- package/skills/postgres-pro/references/jsonb.md +0 -321
- package/skills/postgres-pro/references/maintenance.md +0 -481
- package/skills/postgres-pro/references/performance.md +0 -265
- package/skills/postgres-pro/references/replication.md +0 -446
- package/skills/python-pro/SKILL.md +0 -177
- package/skills/python-pro/references/async-patterns.md +0 -356
- package/skills/python-pro/references/packaging.md +0 -460
- package/skills/python-pro/references/standard-library.md +0 -378
- package/skills/python-pro/references/testing.md +0 -404
- package/skills/python-pro/references/type-system.md +0 -290
- package/skills/rag-architect/SKILL.md +0 -194
- package/skills/rag-architect/references/chunking-strategies.md +0 -878
- package/skills/rag-architect/references/embedding-models.md +0 -561
- package/skills/rag-architect/references/rag-evaluation.md +0 -833
- package/skills/rag-architect/references/retrieval-optimization.md +0 -795
- package/skills/rag-architect/references/vector-databases.md +0 -589
- package/skills/rails-expert/SKILL.md +0 -154
- package/skills/rails-expert/references/active-record.md +0 -244
- package/skills/rails-expert/references/api-development.md +0 -401
- package/skills/rails-expert/references/background-jobs.md +0 -272
- package/skills/rails-expert/references/hotwire-turbo.md +0 -228
- package/skills/rails-expert/references/rspec-testing.md +0 -367
- package/skills/react-expert/SKILL.md +0 -149
- package/skills/react-expert/references/hooks-patterns.md +0 -162
- package/skills/react-expert/references/migration-class-to-modern.md +0 -1119
- package/skills/react-expert/references/performance.md +0 -168
- package/skills/react-expert/references/react-19-features.md +0 -174
- package/skills/react-expert/references/server-components.md +0 -143
- package/skills/react-expert/references/state-management.md +0 -171
- package/skills/react-expert/references/testing-react.md +0 -174
- package/skills/react-native-expert/SKILL.md +0 -185
- package/skills/react-native-expert/references/expo-router.md +0 -187
- package/skills/react-native-expert/references/list-optimization.md +0 -204
- package/skills/react-native-expert/references/platform-handling.md +0 -188
- package/skills/react-native-expert/references/project-structure.md +0 -171
- package/skills/react-native-expert/references/storage-hooks.md +0 -173
- package/skills/receiving-code-review/SKILL.md +0 -213
- package/skills/requesting-code-review/SKILL.md +0 -105
- package/skills/requesting-code-review/code-reviewer.md +0 -146
- package/skills/requirement-engineering/SKILL.md +0 -111
- package/skills/rust-engineer/SKILL.md +0 -167
- package/skills/rust-engineer/references/async.md +0 -458
- package/skills/rust-engineer/references/error-handling.md +0 -334
- package/skills/rust-engineer/references/ownership.md +0 -278
- package/skills/rust-engineer/references/testing.md +0 -470
- package/skills/rust-engineer/references/traits.md +0 -413
- package/skills/secure-code-guardian/SKILL.md +0 -191
- package/skills/secure-code-guardian/references/authentication.md +0 -136
- package/skills/secure-code-guardian/references/input-validation.md +0 -146
- package/skills/secure-code-guardian/references/owasp-prevention.md +0 -135
- package/skills/secure-code-guardian/references/security-headers.md +0 -133
- package/skills/secure-code-guardian/references/xss-csrf.md +0 -157
- package/skills/security-reviewer/SKILL.md +0 -103
- package/skills/security-reviewer/references/infrastructure-security.md +0 -268
- package/skills/security-reviewer/references/penetration-testing.md +0 -268
- package/skills/security-reviewer/references/report-template.md +0 -170
- package/skills/security-reviewer/references/sast-tools.md +0 -117
- package/skills/security-reviewer/references/secret-scanning.md +0 -125
- package/skills/security-reviewer/references/vulnerability-patterns.md +0 -152
- package/skills/spark-engineer/SKILL.md +0 -148
- package/skills/spark-engineer/references/partitioning-caching.md +0 -543
- package/skills/spark-engineer/references/performance-tuning.md +0 -544
- package/skills/spark-engineer/references/rdd-operations.md +0 -599
- package/skills/spark-engineer/references/spark-sql-dataframes.md +0 -474
- package/skills/spark-engineer/references/streaming-patterns.md +0 -786
- package/skills/spring-boot-engineer/SKILL.md +0 -195
- package/skills/spring-boot-engineer/references/cloud.md +0 -498
- package/skills/spring-boot-engineer/references/data.md +0 -381
- package/skills/spring-boot-engineer/references/security.md +0 -459
- package/skills/spring-boot-engineer/references/testing.md +0 -545
- package/skills/spring-boot-engineer/references/web.md +0 -295
- package/skills/sql-pro/SKILL.md +0 -129
- package/skills/sql-pro/references/database-design.md +0 -402
- package/skills/sql-pro/references/dialect-differences.md +0 -419
- package/skills/sql-pro/references/optimization.md +0 -384
- package/skills/sql-pro/references/query-patterns.md +0 -285
- package/skills/sql-pro/references/window-functions.md +0 -328
- package/skills/sre-engineer/SKILL.md +0 -181
- package/skills/sre-engineer/references/automation-toil.md +0 -492
- package/skills/sre-engineer/references/error-budget-policy.md +0 -334
- package/skills/sre-engineer/references/incident-chaos.md +0 -576
- package/skills/sre-engineer/references/monitoring-alerting.md +0 -424
- package/skills/sre-engineer/references/slo-sli-management.md +0 -238
- package/skills/swift-expert/SKILL.md +0 -163
- package/skills/swift-expert/references/async-concurrency.md +0 -360
- package/skills/swift-expert/references/memory-performance.md +0 -377
- package/skills/swift-expert/references/protocol-oriented.md +0 -354
- package/skills/swift-expert/references/swiftui-patterns.md +0 -291
- package/skills/swift-expert/references/testing-patterns.md +0 -399
- package/skills/systematic-debugging/CREATION-LOG.md +0 -119
- package/skills/systematic-debugging/SKILL.md +0 -296
- package/skills/systematic-debugging/condition-based-waiting-example.ts +0 -158
- package/skills/systematic-debugging/condition-based-waiting.md +0 -115
- package/skills/systematic-debugging/defense-in-depth.md +0 -122
- package/skills/systematic-debugging/find-polluter.sh +0 -63
- package/skills/systematic-debugging/root-cause-tracing.md +0 -169
- package/skills/systematic-debugging/test-academic.md +0 -14
- package/skills/systematic-debugging/test-pressure-1.md +0 -58
- package/skills/systematic-debugging/test-pressure-2.md +0 -68
- package/skills/systematic-debugging/test-pressure-3.md +0 -69
- package/skills/tdd-guide/assets/sample_coverage_report.lcov +0 -56
- package/skills/terraform-engineer/SKILL.md +0 -143
- package/skills/terraform-engineer/references/best-practices.md +0 -583
- package/skills/terraform-engineer/references/module-patterns.md +0 -297
- package/skills/terraform-engineer/references/providers.md +0 -452
- package/skills/terraform-engineer/references/state-management.md +0 -371
- package/skills/terraform-engineer/references/testing.md +0 -486
- package/skills/test-master/SKILL.md +0 -94
- package/skills/test-master/references/automation-frameworks.md +0 -294
- package/skills/test-master/references/e2e-testing.md +0 -128
- package/skills/test-master/references/integration-testing.md +0 -120
- package/skills/test-master/references/performance-testing.md +0 -118
- package/skills/test-master/references/qa-methodology.md +0 -247
- package/skills/test-master/references/security-testing.md +0 -127
- package/skills/test-master/references/tdd-iron-laws.md +0 -174
- package/skills/test-master/references/test-reports.md +0 -104
- package/skills/test-master/references/testing-anti-patterns.md +0 -231
- package/skills/test-master/references/unit-testing.md +0 -113
- package/skills/typescript-pro/SKILL.md +0 -145
- package/skills/typescript-pro/references/advanced-types.md +0 -259
- package/skills/typescript-pro/references/configuration.md +0 -445
- package/skills/typescript-pro/references/patterns.md +0 -484
- package/skills/typescript-pro/references/type-guards.md +0 -352
- package/skills/typescript-pro/references/utility-types.md +0 -329
- package/skills/using-git-worktrees/SKILL.md +0 -218
- package/skills/verification-before-completion/SKILL.md +0 -139
- package/skills/vue-expert/SKILL.md +0 -98
- package/skills/vue-expert/references/build-tooling.md +0 -480
- package/skills/vue-expert/references/components.md +0 -448
- package/skills/vue-expert/references/composition-api.md +0 -299
- package/skills/vue-expert/references/mobile-hybrid.md +0 -636
- package/skills/vue-expert/references/nuxt.md +0 -669
- package/skills/vue-expert/references/state-management.md +0 -449
- package/skills/vue-expert/references/typescript.md +0 -584
- package/skills/vue-expert-js/SKILL.md +0 -167
- package/skills/vue-expert-js/references/component-architecture.md +0 -219
- package/skills/vue-expert-js/references/composables-patterns.md +0 -183
- package/skills/vue-expert-js/references/jsdoc-typing.md +0 -535
- package/skills/vue-expert-js/references/state-management.md +0 -249
- package/skills/vue-expert-js/references/testing-patterns.md +0 -237
- package/skills/websocket-engineer/SKILL.md +0 -168
- package/skills/websocket-engineer/references/alternatives.md +0 -391
- package/skills/websocket-engineer/references/patterns.md +0 -400
- package/skills/websocket-engineer/references/protocol.md +0 -195
- package/skills/websocket-engineer/references/scaling.md +0 -333
- package/skills/websocket-engineer/references/security.md +0 -474
- package/skills/writing-plans/SKILL.md +0 -151
- package/skills/writing-plans/plan-document-reviewer-prompt.md +0 -49
- package/skills/writing-skills/SKILL.md +0 -655
- package/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/skills/writing-skills/persuasion-principles.md +0 -187
- package/skills/writing-skills/render-graphs.js +0 -168
- package/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- /package/skills/{design-commands → frontend/design-commands}/design.md +0 -0
- /package/skills/{design-commands → frontend/design-commands}/handoff.md +0 -0
- /package/skills/{design-commands → frontend/design-commands}/prototype.md +0 -0
- /package/skills/{design-commands → frontend/design-commands}/spec.md +0 -0
- /package/skills/{design-commands → frontend/design-commands}/style.md +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/SKILL.md +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/references/frontend_best_practices.md +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/references/nextjs_optimization_guide.md +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/references/react_patterns.md +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/scripts/bundle_analyzer.py +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/scripts/component_generator.py +0 -0
- /package/skills/{senior-frontend → frontend/senior-frontend}/scripts/frontend_scaffolder.py +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/SKILL.md +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/charts.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/colors.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/icons.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/landing.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/products.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/react-performance.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/astro.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/flutter.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/html-tailwind.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/jetpack-compose.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/nextjs.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/nuxt-ui.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/nuxtjs.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/react-native.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/react.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/shadcn.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/svelte.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/swiftui.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/stacks/vue.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/styles.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/typography.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/ui-reasoning.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/ux-guidelines.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/data/web-interface.csv +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/scripts/core.py +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/scripts/design_system.py +0 -0
- /package/skills/{ui-ux-pro-max → frontend/ui-ux-pro-max}/scripts/search.py +0 -0
- /package/skills/{competitive-analysis → product/competitive-analysis}/SKILL.md +0 -0
- /package/skills/{meeting-notes → product/meeting-notes}/SKILL.md +0 -0
- /package/skills/{prd-template → product/prd-template}/SKILL.md +0 -0
- /package/skills/{stakeholder-update → product/stakeholder-update}/SKILL.md +0 -0
- /package/skills/{user-research-synthesis → product/user-research-synthesis}/SKILL.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/README.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/SKILL.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/references/qa_best_practices.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/references/test_automation_patterns.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/references/testing_strategies.md +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/scripts/coverage_analyzer.py +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/scripts/e2e_test_scaffolder.py +0 -0
- /package/skills/{senior-qa → quality/senior-qa}/scripts/test_suite_generator.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/HOW_TO_USE.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/README.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/SKILL.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/assets/expected_output.json +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/assets/sample_input_python.json +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/assets/sample_input_typescript.json +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/references/ci-integration.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/references/framework-guide.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/references/tdd-best-practices.md +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/coverage_analyzer.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/fixture_generator.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/format_detector.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/framework_adapter.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/metrics_calculator.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/output_formatter.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/tdd_workflow.py +0 -0
- /package/skills/{tdd-guide → quality/tdd-guide}/scripts/test_generator.py +0 -0
- /package/skills/{brainstorming → workflow/brainstorming}/scripts/frame-template.html +0 -0
- /package/skills/{brainstorming → workflow/brainstorming}/scripts/server.cjs +0 -0
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
# LoRA and Parameter-Efficient Fine-Tuning
|
|
2
|
-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
Parameter-Efficient Fine-Tuning (PEFT) methods train only a small subset of model parameters while keeping the base model frozen. This dramatically reduces memory requirements and enables fine-tuning of large models on consumer hardware.
|
|
8
|
-
|
|
9
|
-
## When to Use PEFT vs Full Fine-Tuning
|
|
10
|
-
|
|
11
|
-
| Method | Use When | Avoid When |
|
|
12
|
-
|--------|----------|------------|
|
|
13
|
-
| **LoRA** | 7B+ models, limited VRAM, need multiple task adapters | Very small models (<1B), need maximum quality |
|
|
14
|
-
| **QLoRA** | 13B+ models, single GPU, memory-constrained | High-throughput training, inference speed critical |
|
|
15
|
-
| **Full Fine-Tuning** | Small models, abundant compute, maximum performance needed | Large models, limited resources |
|
|
16
|
-
| **Prefix Tuning** | Generation tasks, need interpretable soft prompts | Complex reasoning tasks |
|
|
17
|
-
| **IA3** | Extreme efficiency needed, inference overhead critical | Tasks needing high adapter capacity |
|
|
18
|
-
|
|
19
|
-
## LoRA Configuration
|
|
20
|
-
|
|
21
|
-
```python
|
|
22
|
-
from peft import LoraConfig, get_peft_model, TaskType
|
|
23
|
-
from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
24
|
-
|
|
25
|
-
# Load base model
|
|
26
|
-
model = AutoModelForCausalLM.from_pretrained(
|
|
27
|
-
"meta-llama/Llama-3.1-8B",
|
|
28
|
-
torch_dtype=torch.bfloat16,
|
|
29
|
-
device_map="auto",
|
|
30
|
-
attn_implementation="flash_attention_2" # Use Flash Attention if available
|
|
31
|
-
)
|
|
32
|
-
|
|
33
|
-
# LoRA configuration for instruction tuning
|
|
34
|
-
lora_config = LoraConfig(
|
|
35
|
-
task_type=TaskType.CAUSAL_LM,
|
|
36
|
-
r=16, # Rank - start with 8-16, increase if underfitting
|
|
37
|
-
lora_alpha=32, # Alpha - typically 2x rank
|
|
38
|
-
lora_dropout=0.05, # Dropout for regularization
|
|
39
|
-
target_modules=[ # Target attention layers
|
|
40
|
-
"q_proj", "k_proj", "v_proj", "o_proj", # Attention
|
|
41
|
-
"gate_proj", "up_proj", "down_proj" # MLP (optional, increases capacity)
|
|
42
|
-
],
|
|
43
|
-
bias="none", # "none", "all", or "lora_only"
|
|
44
|
-
modules_to_save=None # Modules to train fully (e.g., embed_tokens for new tokens)
|
|
45
|
-
)
|
|
46
|
-
|
|
47
|
-
# Create PEFT model
|
|
48
|
-
model = get_peft_model(model, lora_config)
|
|
49
|
-
model.print_trainable_parameters()
|
|
50
|
-
# Output: trainable params: 13,631,488 || all params: 8,043,163,648 || trainable%: 0.1695
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Rank Selection Guide
|
|
54
|
-
|
|
55
|
-
```python
|
|
56
|
-
def recommend_lora_rank(task_complexity: str, dataset_size: int, model_size_b: float) -> int:
|
|
57
|
-
"""
|
|
58
|
-
Recommend LoRA rank based on task and resources.
|
|
59
|
-
|
|
60
|
-
Args:
|
|
61
|
-
task_complexity: "simple" (classification), "moderate" (QA), "complex" (creative)
|
|
62
|
-
dataset_size: Number of training examples
|
|
63
|
-
model_size_b: Model size in billions of parameters
|
|
64
|
-
"""
|
|
65
|
-
base_rank = {
|
|
66
|
-
"simple": 8,
|
|
67
|
-
"moderate": 16,
|
|
68
|
-
"complex": 32
|
|
69
|
-
}[task_complexity]
|
|
70
|
-
|
|
71
|
-
# Adjust for dataset size
|
|
72
|
-
if dataset_size < 1000:
|
|
73
|
-
rank = max(4, base_rank // 2) # Reduce rank to prevent overfitting
|
|
74
|
-
elif dataset_size > 50000:
|
|
75
|
-
rank = min(64, base_rank * 2) # Can support higher rank
|
|
76
|
-
else:
|
|
77
|
-
rank = base_rank
|
|
78
|
-
|
|
79
|
-
# Adjust for model size (larger models may need lower rank)
|
|
80
|
-
if model_size_b > 30:
|
|
81
|
-
rank = max(4, rank // 2)
|
|
82
|
-
|
|
83
|
-
return rank
|
|
84
|
-
|
|
85
|
-
# Example usage
|
|
86
|
-
rank = recommend_lora_rank("moderate", dataset_size=10000, model_size_b=8)
|
|
87
|
-
print(f"Recommended rank: {rank}") # 16
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## QLoRA Configuration
|
|
91
|
-
|
|
92
|
-
QLoRA combines 4-bit quantization with LoRA for extreme memory efficiency.
|
|
93
|
-
|
|
94
|
-
```python
|
|
95
|
-
from transformers import BitsAndBytesConfig
|
|
96
|
-
import torch
|
|
97
|
-
|
|
98
|
-
# 4-bit quantization config
|
|
99
|
-
bnb_config = BitsAndBytesConfig(
|
|
100
|
-
load_in_4bit=True,
|
|
101
|
-
bnb_4bit_quant_type="nf4", # NormalFloat4 for better quality
|
|
102
|
-
bnb_4bit_compute_dtype=torch.bfloat16,
|
|
103
|
-
bnb_4bit_use_double_quant=True # Nested quantization for more savings
|
|
104
|
-
)
|
|
105
|
-
|
|
106
|
-
# Load quantized model
|
|
107
|
-
model = AutoModelForCausalLM.from_pretrained(
|
|
108
|
-
"meta-llama/Llama-3.1-70B",
|
|
109
|
-
quantization_config=bnb_config,
|
|
110
|
-
device_map="auto",
|
|
111
|
-
attn_implementation="flash_attention_2"
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
# Prepare model for kbit training
|
|
115
|
-
from peft import prepare_model_for_kbit_training
|
|
116
|
-
model = prepare_model_for_kbit_training(model, use_gradient_checkpointing=True)
|
|
117
|
-
|
|
118
|
-
# Apply LoRA
|
|
119
|
-
lora_config = LoraConfig(
|
|
120
|
-
r=16,
|
|
121
|
-
lora_alpha=32,
|
|
122
|
-
target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
|
|
123
|
-
lora_dropout=0.05,
|
|
124
|
-
bias="none",
|
|
125
|
-
task_type=TaskType.CAUSAL_LM
|
|
126
|
-
)
|
|
127
|
-
model = get_peft_model(model, lora_config)
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
### Memory Comparison
|
|
131
|
-
|
|
132
|
-
| Model | Full FT | LoRA (r=16) | QLoRA (r=16) |
|
|
133
|
-
|-------|---------|-------------|--------------|
|
|
134
|
-
| Llama 3.1 8B | ~64 GB | ~18 GB | ~6 GB |
|
|
135
|
-
| Llama 3.1 70B | ~560 GB | ~160 GB | ~48 GB |
|
|
136
|
-
| Mistral 7B | ~56 GB | ~16 GB | ~5 GB |
|
|
137
|
-
|
|
138
|
-
## Training with PEFT
|
|
139
|
-
|
|
140
|
-
```python
|
|
141
|
-
from transformers import TrainingArguments, Trainer
|
|
142
|
-
from trl import SFTTrainer
|
|
143
|
-
|
|
144
|
-
training_args = TrainingArguments(
|
|
145
|
-
output_dir="./lora-output",
|
|
146
|
-
num_train_epochs=3,
|
|
147
|
-
per_device_train_batch_size=4,
|
|
148
|
-
gradient_accumulation_steps=4, # Effective batch size = 16
|
|
149
|
-
learning_rate=2e-4, # Higher LR for LoRA than full FT
|
|
150
|
-
lr_scheduler_type="cosine",
|
|
151
|
-
warmup_ratio=0.03,
|
|
152
|
-
logging_steps=10,
|
|
153
|
-
save_strategy="steps",
|
|
154
|
-
save_steps=100,
|
|
155
|
-
evaluation_strategy="steps",
|
|
156
|
-
eval_steps=100,
|
|
157
|
-
bf16=True,
|
|
158
|
-
gradient_checkpointing=True,
|
|
159
|
-
gradient_checkpointing_kwargs={"use_reentrant": False},
|
|
160
|
-
optim="paged_adamw_8bit", # Memory-efficient optimizer
|
|
161
|
-
max_grad_norm=0.3,
|
|
162
|
-
group_by_length=True, # Group similar length sequences
|
|
163
|
-
report_to="wandb"
|
|
164
|
-
)
|
|
165
|
-
|
|
166
|
-
# Using TRL's SFTTrainer for instruction tuning
|
|
167
|
-
trainer = SFTTrainer(
|
|
168
|
-
model=model,
|
|
169
|
-
args=training_args,
|
|
170
|
-
train_dataset=train_dataset,
|
|
171
|
-
eval_dataset=eval_dataset,
|
|
172
|
-
tokenizer=tokenizer,
|
|
173
|
-
max_seq_length=2048,
|
|
174
|
-
packing=True, # Pack short sequences for efficiency
|
|
175
|
-
dataset_text_field="text"
|
|
176
|
-
)
|
|
177
|
-
|
|
178
|
-
trainer.train()
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
## Target Module Selection
|
|
182
|
-
|
|
183
|
-
Different architectures have different module names:
|
|
184
|
-
|
|
185
|
-
```python
|
|
186
|
-
# Common target modules by architecture
|
|
187
|
-
TARGET_MODULES = {
|
|
188
|
-
"llama": ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"],
|
|
189
|
-
"mistral": ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"],
|
|
190
|
-
"falcon": ["query_key_value", "dense", "dense_h_to_4h", "dense_4h_to_h"],
|
|
191
|
-
"gpt2": ["c_attn", "c_proj", "c_fc"],
|
|
192
|
-
"phi": ["q_proj", "k_proj", "v_proj", "dense", "fc1", "fc2"],
|
|
193
|
-
"qwen2": ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"],
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
def get_target_modules(model_name: str, include_mlp: bool = True) -> list[str]:
|
|
197
|
-
"""Get appropriate target modules for a model architecture."""
|
|
198
|
-
name_lower = model_name.lower()
|
|
199
|
-
|
|
200
|
-
for arch, modules in TARGET_MODULES.items():
|
|
201
|
-
if arch in name_lower:
|
|
202
|
-
if include_mlp:
|
|
203
|
-
return modules
|
|
204
|
-
# Return only attention modules
|
|
205
|
-
attention_keywords = ["q_proj", "k_proj", "v_proj", "o_proj", "query", "key", "value", "attn"]
|
|
206
|
-
return [m for m in modules if any(kw in m.lower() for kw in attention_keywords)]
|
|
207
|
-
|
|
208
|
-
# Default for unknown architectures - inspect model
|
|
209
|
-
raise ValueError(f"Unknown architecture: {model_name}. Inspect model.named_modules() to find target modules.")
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
## Adapter Merging Strategies
|
|
213
|
-
|
|
214
|
-
```python
|
|
215
|
-
from peft import PeftModel
|
|
216
|
-
|
|
217
|
-
# Load base model and adapter
|
|
218
|
-
base_model = AutoModelForCausalLM.from_pretrained("meta-llama/Llama-3.1-8B")
|
|
219
|
-
model = PeftModel.from_pretrained(base_model, "path/to/lora-adapter")
|
|
220
|
-
|
|
221
|
-
# Method 1: Merge adapter weights into base model
|
|
222
|
-
merged_model = model.merge_and_unload()
|
|
223
|
-
merged_model.save_pretrained("./merged-model")
|
|
224
|
-
|
|
225
|
-
# Method 2: Merge multiple adapters (weighted combination)
|
|
226
|
-
from peft import add_weighted_adapter
|
|
227
|
-
|
|
228
|
-
# Load multiple adapters
|
|
229
|
-
model = PeftModel.from_pretrained(base_model, "adapter1", adapter_name="adapter1")
|
|
230
|
-
model.load_adapter("adapter2", adapter_name="adapter2")
|
|
231
|
-
model.load_adapter("adapter3", adapter_name="adapter3")
|
|
232
|
-
|
|
233
|
-
# Combine with weights
|
|
234
|
-
model.add_weighted_adapter(
|
|
235
|
-
adapters=["adapter1", "adapter2", "adapter3"],
|
|
236
|
-
weights=[0.5, 0.3, 0.2],
|
|
237
|
-
adapter_name="combined",
|
|
238
|
-
combination_type="linear" # or "svd", "cat"
|
|
239
|
-
)
|
|
240
|
-
model.set_adapter("combined")
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
## DoRA (Weight-Decomposed LoRA)
|
|
244
|
-
|
|
245
|
-
DoRA improves on LoRA by decomposing weights into magnitude and direction components.
|
|
246
|
-
|
|
247
|
-
```python
|
|
248
|
-
from peft import LoraConfig
|
|
249
|
-
|
|
250
|
-
# DoRA configuration
|
|
251
|
-
dora_config = LoraConfig(
|
|
252
|
-
r=16,
|
|
253
|
-
lora_alpha=32,
|
|
254
|
-
target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
|
|
255
|
-
lora_dropout=0.05,
|
|
256
|
-
use_dora=True, # Enable DoRA
|
|
257
|
-
task_type=TaskType.CAUSAL_LM
|
|
258
|
-
)
|
|
259
|
-
|
|
260
|
-
# Training is identical to LoRA
|
|
261
|
-
model = get_peft_model(model, dora_config)
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
## rsLoRA (Rank-Stabilized LoRA)
|
|
265
|
-
|
|
266
|
-
Proper scaling for higher ranks:
|
|
267
|
-
|
|
268
|
-
```python
|
|
269
|
-
from peft import LoraConfig
|
|
270
|
-
|
|
271
|
-
# rsLoRA for high-rank training
|
|
272
|
-
rslora_config = LoraConfig(
|
|
273
|
-
r=64, # Higher rank
|
|
274
|
-
lora_alpha=64,
|
|
275
|
-
target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
|
|
276
|
-
use_rslora=True, # Rank-stabilized scaling
|
|
277
|
-
task_type=TaskType.CAUSAL_LM
|
|
278
|
-
)
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
## Common Issues and Solutions
|
|
282
|
-
|
|
283
|
-
### Issue: Loss Not Decreasing
|
|
284
|
-
|
|
285
|
-
```python
|
|
286
|
-
# Check 1: Verify adapter is training
|
|
287
|
-
for name, param in model.named_parameters():
|
|
288
|
-
if param.requires_grad:
|
|
289
|
-
print(f"Training: {name}")
|
|
290
|
-
|
|
291
|
-
# Check 2: Increase rank or alpha
|
|
292
|
-
config = LoraConfig(r=32, lora_alpha=64, ...)
|
|
293
|
-
|
|
294
|
-
# Check 3: Reduce learning rate
|
|
295
|
-
training_args = TrainingArguments(learning_rate=1e-4, ...)
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
### Issue: Out of Memory
|
|
299
|
-
|
|
300
|
-
```python
|
|
301
|
-
# Solution 1: Use QLoRA
|
|
302
|
-
bnb_config = BitsAndBytesConfig(load_in_4bit=True, ...)
|
|
303
|
-
|
|
304
|
-
# Solution 2: Enable gradient checkpointing
|
|
305
|
-
model.gradient_checkpointing_enable()
|
|
306
|
-
|
|
307
|
-
# Solution 3: Reduce batch size, increase gradient accumulation
|
|
308
|
-
training_args = TrainingArguments(
|
|
309
|
-
per_device_train_batch_size=1,
|
|
310
|
-
gradient_accumulation_steps=16
|
|
311
|
-
)
|
|
312
|
-
|
|
313
|
-
# Solution 4: Use 8-bit optimizer
|
|
314
|
-
training_args = TrainingArguments(optim="paged_adamw_8bit")
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
### Issue: Adapter Not Loading
|
|
318
|
-
|
|
319
|
-
```python
|
|
320
|
-
# Ensure architecture matches
|
|
321
|
-
from peft import PeftModel, PeftConfig
|
|
322
|
-
|
|
323
|
-
# Check adapter config
|
|
324
|
-
config = PeftConfig.from_pretrained("path/to/adapter")
|
|
325
|
-
print(f"Base model: {config.base_model_name_or_path}")
|
|
326
|
-
print(f"Target modules: {config.target_modules}")
|
|
327
|
-
|
|
328
|
-
# Load with correct base model
|
|
329
|
-
base_model = AutoModelForCausalLM.from_pretrained(config.base_model_name_or_path)
|
|
330
|
-
model = PeftModel.from_pretrained(base_model, "path/to/adapter")
|
|
331
|
-
```
|
|
332
|
-
|
|
333
|
-
## Quick Reference
|
|
334
|
-
|
|
335
|
-
| Parameter | Typical Range | Effect |
|
|
336
|
-
|-----------|---------------|--------|
|
|
337
|
-
| `r` (rank) | 4-64 | Adapter capacity; higher = more expressive |
|
|
338
|
-
| `lora_alpha` | r to 2*r | Scaling factor; higher = larger updates |
|
|
339
|
-
| `lora_dropout` | 0.0-0.1 | Regularization; increase for small datasets |
|
|
340
|
-
| `learning_rate` | 1e-5 to 3e-4 | LoRA tolerates higher LR than full FT |
|
|
341
|
-
| `target_modules` | attention + MLP | More modules = more capacity + memory |
|
|
342
|
-
|
|
343
|
-
## Related References
|
|
344
|
-
|
|
345
|
-
- `hyperparameter-tuning.md` - Learning rate schedules, batch sizes
|
|
346
|
-
- `deployment-optimization.md` - Adapter merging, quantization for inference
|
|
347
|
-
- `dataset-preparation.md` - Training data formatting
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: finishing-a-development-branch
|
|
3
|
-
description: Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Finishing a Development Branch
|
|
7
|
-
|
|
8
|
-
## Overview
|
|
9
|
-
|
|
10
|
-
Guide completion of development work by presenting clear options and handling chosen workflow.
|
|
11
|
-
|
|
12
|
-
**Core principle:** Verify tests → Present options → Execute choice → Clean up.
|
|
13
|
-
|
|
14
|
-
**Announce at start:** "I'm using the finishing-a-development-branch skill to complete this work."
|
|
15
|
-
|
|
16
|
-
## The Process
|
|
17
|
-
|
|
18
|
-
### Step 1: Verify Tests
|
|
19
|
-
|
|
20
|
-
**Before presenting options, verify tests pass:**
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
# Run project's test suite
|
|
24
|
-
npm test / cargo test / pytest / go test ./...
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
**If tests fail:**
|
|
28
|
-
```
|
|
29
|
-
Tests failing (<N> failures). Must fix before completing:
|
|
30
|
-
|
|
31
|
-
[Show failures]
|
|
32
|
-
|
|
33
|
-
Cannot proceed with merge/PR until tests pass.
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Stop. Don't proceed to Step 2.
|
|
37
|
-
|
|
38
|
-
**If tests pass:** Continue to Step 2.
|
|
39
|
-
|
|
40
|
-
### Step 2: Determine Base Branch
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
# Try common base branches
|
|
44
|
-
git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
Or ask: "This branch split from main - is that correct?"
|
|
48
|
-
|
|
49
|
-
### Step 3: Present Options
|
|
50
|
-
|
|
51
|
-
Present exactly these 4 options:
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
Implementation complete. What would you like to do?
|
|
55
|
-
|
|
56
|
-
1. Merge back to <base-branch> locally
|
|
57
|
-
2. Push and create a Pull Request
|
|
58
|
-
3. Keep the branch as-is (I'll handle it later)
|
|
59
|
-
4. Discard this work
|
|
60
|
-
|
|
61
|
-
Which option?
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
**Don't add explanation** - keep options concise.
|
|
65
|
-
|
|
66
|
-
### Step 4: Execute Choice
|
|
67
|
-
|
|
68
|
-
#### Option 1: Merge Locally
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
# Switch to base branch
|
|
72
|
-
git checkout <base-branch>
|
|
73
|
-
|
|
74
|
-
# Pull latest
|
|
75
|
-
git pull
|
|
76
|
-
|
|
77
|
-
# Merge feature branch
|
|
78
|
-
git merge <feature-branch>
|
|
79
|
-
|
|
80
|
-
# Verify tests on merged result
|
|
81
|
-
<test command>
|
|
82
|
-
|
|
83
|
-
# If tests pass
|
|
84
|
-
git branch -d <feature-branch>
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Then: Cleanup worktree (Step 5)
|
|
88
|
-
|
|
89
|
-
#### Option 2: Push and Create PR
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
# Push branch
|
|
93
|
-
git push -u origin <feature-branch>
|
|
94
|
-
|
|
95
|
-
# Create PR
|
|
96
|
-
gh pr create --title "<title>" --body "$(cat <<'EOF'
|
|
97
|
-
## Summary
|
|
98
|
-
<2-3 bullets of what changed>
|
|
99
|
-
|
|
100
|
-
## Test Plan
|
|
101
|
-
- [ ] <verification steps>
|
|
102
|
-
EOF
|
|
103
|
-
)"
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
Then: Cleanup worktree (Step 5)
|
|
107
|
-
|
|
108
|
-
#### Option 3: Keep As-Is
|
|
109
|
-
|
|
110
|
-
Report: "Keeping branch <name>. Worktree preserved at <path>."
|
|
111
|
-
|
|
112
|
-
**Don't cleanup worktree.**
|
|
113
|
-
|
|
114
|
-
#### Option 4: Discard
|
|
115
|
-
|
|
116
|
-
**Confirm first:**
|
|
117
|
-
```
|
|
118
|
-
This will permanently delete:
|
|
119
|
-
- Branch <name>
|
|
120
|
-
- All commits: <commit-list>
|
|
121
|
-
- Worktree at <path>
|
|
122
|
-
|
|
123
|
-
Type 'discard' to confirm.
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
Wait for exact confirmation.
|
|
127
|
-
|
|
128
|
-
If confirmed:
|
|
129
|
-
```bash
|
|
130
|
-
git checkout <base-branch>
|
|
131
|
-
git branch -D <feature-branch>
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Then: Cleanup worktree (Step 5)
|
|
135
|
-
|
|
136
|
-
### Step 5: Cleanup Worktree
|
|
137
|
-
|
|
138
|
-
**For Options 1, 2, 4:**
|
|
139
|
-
|
|
140
|
-
Check if in worktree:
|
|
141
|
-
```bash
|
|
142
|
-
git worktree list | grep $(git branch --show-current)
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
If yes:
|
|
146
|
-
```bash
|
|
147
|
-
git worktree remove <worktree-path>
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
**For Option 3:** Keep worktree.
|
|
151
|
-
|
|
152
|
-
## Quick Reference
|
|
153
|
-
|
|
154
|
-
| Option | Merge | Push | Keep Worktree | Cleanup Branch |
|
|
155
|
-
|--------|-------|------|---------------|----------------|
|
|
156
|
-
| 1. Merge locally | ✓ | - | - | ✓ |
|
|
157
|
-
| 2. Create PR | - | ✓ | ✓ | - |
|
|
158
|
-
| 3. Keep as-is | - | - | ✓ | - |
|
|
159
|
-
| 4. Discard | - | - | - | ✓ (force) |
|
|
160
|
-
|
|
161
|
-
## Common Mistakes
|
|
162
|
-
|
|
163
|
-
**Skipping test verification**
|
|
164
|
-
- **Problem:** Merge broken code, create failing PR
|
|
165
|
-
- **Fix:** Always verify tests before offering options
|
|
166
|
-
|
|
167
|
-
**Open-ended questions**
|
|
168
|
-
- **Problem:** "What should I do next?" → ambiguous
|
|
169
|
-
- **Fix:** Present exactly 4 structured options
|
|
170
|
-
|
|
171
|
-
**Automatic worktree cleanup**
|
|
172
|
-
- **Problem:** Remove worktree when might need it (Option 2, 3)
|
|
173
|
-
- **Fix:** Only cleanup for Options 1 and 4
|
|
174
|
-
|
|
175
|
-
**No confirmation for discard**
|
|
176
|
-
- **Problem:** Accidentally delete work
|
|
177
|
-
- **Fix:** Require typed "discard" confirmation
|
|
178
|
-
|
|
179
|
-
## Red Flags
|
|
180
|
-
|
|
181
|
-
**Never:**
|
|
182
|
-
- Proceed with failing tests
|
|
183
|
-
- Merge without verifying tests on result
|
|
184
|
-
- Delete work without confirmation
|
|
185
|
-
- Force-push without explicit request
|
|
186
|
-
|
|
187
|
-
**Always:**
|
|
188
|
-
- Verify tests before offering options
|
|
189
|
-
- Present exactly 4 options
|
|
190
|
-
- Get typed confirmation for Option 4
|
|
191
|
-
- Clean up worktree for Options 1 & 4 only
|
|
192
|
-
|
|
193
|
-
## Integration
|
|
194
|
-
|
|
195
|
-
**Called by:**
|
|
196
|
-
- Subagent dispatch flow per `docs/rules/agents.md` - After all tasks complete
|
|
197
|
-
- **executing-plans** (Step 5) - After all batches complete
|
|
198
|
-
|
|
199
|
-
**Pairs with:**
|
|
200
|
-
- **using-git-worktrees** - Cleans up worktree created by that skill
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: flutter-expert
|
|
3
|
-
description: Use when building cross-platform applications with Flutter 3+ and Dart. Invoke for widget development, Riverpod/Bloc state management, GoRouter navigation, platform-specific implementations, performance optimization.
|
|
4
|
-
license: MIT
|
|
5
|
-
metadata:
|
|
6
|
-
author: https://github.com/Jeffallan
|
|
7
|
-
version: "1.1.0"
|
|
8
|
-
domain: frontend
|
|
9
|
-
triggers: Flutter, Dart, widget, Riverpod, Bloc, GoRouter, cross-platform
|
|
10
|
-
role: specialist
|
|
11
|
-
scope: implementation
|
|
12
|
-
output-format: code
|
|
13
|
-
related-skills: react-native-expert, test-master, fullstack-guardian
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# Flutter Expert
|
|
17
|
-
|
|
18
|
-
Senior mobile engineer building high-performance cross-platform applications with Flutter 3 and Dart.
|
|
19
|
-
|
|
20
|
-
## When to Use This Skill
|
|
21
|
-
|
|
22
|
-
- Building cross-platform Flutter applications
|
|
23
|
-
- Implementing state management (Riverpod, Bloc)
|
|
24
|
-
- Setting up navigation with GoRouter
|
|
25
|
-
- Creating custom widgets and animations
|
|
26
|
-
- Optimizing Flutter performance
|
|
27
|
-
- Platform-specific implementations
|
|
28
|
-
|
|
29
|
-
## Core Workflow
|
|
30
|
-
|
|
31
|
-
1. **Setup** — Scaffold project, add dependencies (`flutter pub get`), configure routing
|
|
32
|
-
2. **State** — Define Riverpod providers or Bloc/Cubit classes; verify with `flutter analyze`
|
|
33
|
-
- If `flutter analyze` reports issues: fix all lints and warnings before proceeding; re-run until clean
|
|
34
|
-
3. **Widgets** — Build reusable, const-optimized components; run `flutter test` after each feature
|
|
35
|
-
- If tests fail: inspect widget tree with Flutter DevTools, fix failing assertions, re-run `flutter test`
|
|
36
|
-
4. **Test** — Write widget and integration tests; confirm with `flutter test --coverage`
|
|
37
|
-
- If coverage drops or tests fail: identify untested branches, add targeted tests, re-run before merging
|
|
38
|
-
5. **Optimize** — Profile with Flutter DevTools (`flutter run --profile`), eliminate jank, reduce rebuilds
|
|
39
|
-
- If jank persists: check rebuild counts in the Performance overlay, isolate expensive `build()` calls, apply `const` or move state closer to consumers
|
|
40
|
-
|
|
41
|
-
## Reference Guide
|
|
42
|
-
|
|
43
|
-
Load detailed guidance based on context:
|
|
44
|
-
|
|
45
|
-
| Topic | Reference | Load When |
|
|
46
|
-
|-------|-----------|-----------|
|
|
47
|
-
| Riverpod | `references/riverpod-state.md` | State management, providers, notifiers |
|
|
48
|
-
| Bloc | `references/bloc-state.md` | Bloc, Cubit, event-driven state, complex business logic |
|
|
49
|
-
| GoRouter | `references/gorouter-navigation.md` | Navigation, routing, deep linking |
|
|
50
|
-
| Widgets | `references/widget-patterns.md` | Building UI components, const optimization |
|
|
51
|
-
| Structure | `references/project-structure.md` | Setting up project, architecture |
|
|
52
|
-
| Performance | `references/performance.md` | Optimization, profiling, jank fixes |
|
|
53
|
-
|
|
54
|
-
## Code Examples
|
|
55
|
-
|
|
56
|
-
### Riverpod Provider + ConsumerWidget (correct pattern)
|
|
57
|
-
|
|
58
|
-
```dart
|
|
59
|
-
// provider definition
|
|
60
|
-
final counterProvider = StateNotifierProvider<CounterNotifier, int>(
|
|
61
|
-
(ref) => CounterNotifier(),
|
|
62
|
-
);
|
|
63
|
-
|
|
64
|
-
class CounterNotifier extends StateNotifier<int> {
|
|
65
|
-
CounterNotifier() : super(0);
|
|
66
|
-
void increment() => state = state + 1; // new instance, never mutate
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
// consuming widget — use ConsumerWidget, not StatefulWidget
|
|
70
|
-
class CounterView extends ConsumerWidget {
|
|
71
|
-
const CounterView({super.key});
|
|
72
|
-
|
|
73
|
-
@override
|
|
74
|
-
Widget build(BuildContext context, WidgetRef ref) {
|
|
75
|
-
final count = ref.watch(counterProvider);
|
|
76
|
-
return Text('$count');
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### Before / After — State Management
|
|
82
|
-
|
|
83
|
-
```dart
|
|
84
|
-
// ❌ WRONG: app-wide state in setState
|
|
85
|
-
class _BadCounterState extends State<BadCounter> {
|
|
86
|
-
int _count = 0;
|
|
87
|
-
void _inc() => setState(() => _count++); // causes full subtree rebuild
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// ✅ CORRECT: scoped Riverpod consumer
|
|
91
|
-
class GoodCounter extends ConsumerWidget {
|
|
92
|
-
const GoodCounter({super.key});
|
|
93
|
-
@override
|
|
94
|
-
Widget build(BuildContext context, WidgetRef ref) {
|
|
95
|
-
final count = ref.watch(counterProvider);
|
|
96
|
-
return IconButton(
|
|
97
|
-
onPressed: () => ref.read(counterProvider.notifier).increment(),
|
|
98
|
-
icon: const Icon(Icons.add), // const on static widgets
|
|
99
|
-
);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
## Constraints
|
|
105
|
-
|
|
106
|
-
### MUST DO
|
|
107
|
-
- Use `const` constructors wherever possible
|
|
108
|
-
- Implement proper keys for lists
|
|
109
|
-
- Use `Consumer`/`ConsumerWidget` for state (not `StatefulWidget`)
|
|
110
|
-
- Follow Material/Cupertino design guidelines
|
|
111
|
-
- Profile with DevTools, fix jank
|
|
112
|
-
- Test widgets with `flutter_test`
|
|
113
|
-
|
|
114
|
-
### MUST NOT DO
|
|
115
|
-
- Build widgets inside `build()` method
|
|
116
|
-
- Mutate state directly (always create new instances)
|
|
117
|
-
- Use `setState` for app-wide state
|
|
118
|
-
- Skip `const` on static widgets
|
|
119
|
-
- Ignore platform-specific behavior
|
|
120
|
-
- Block UI thread with heavy computation (use `compute()`)
|
|
121
|
-
|
|
122
|
-
## Troubleshooting Common Failures
|
|
123
|
-
|
|
124
|
-
| Symptom | Likely Cause | Recovery |
|
|
125
|
-
|---------|-------------|----------|
|
|
126
|
-
| `flutter analyze` errors | Unresolved imports, missing `const`, type mismatches | Fix flagged lines; run `flutter pub get` if imports are missing |
|
|
127
|
-
| Widget test assertion failures | Widget tree mismatch or async state not settled | Use `tester.pumpAndSettle()` after state changes; verify finder selectors |
|
|
128
|
-
| Build fails after adding package | Incompatible dependency version | Run `flutter pub upgrade --major-versions`; check pub.dev compatibility |
|
|
129
|
-
| Jank / dropped frames | Expensive `build()` calls, uncached widgets, heavy main-thread work | Use `RepaintBoundary`, move heavy work to `compute()`, add `const` |
|
|
130
|
-
| Hot reload not reflecting changes | State held in `StateNotifier` not reset | Use hot restart (`R` in terminal) to reset full app state |
|
|
131
|
-
|
|
132
|
-
## Output Templates
|
|
133
|
-
|
|
134
|
-
When implementing Flutter features, provide:
|
|
135
|
-
1. Widget code with proper `const` usage
|
|
136
|
-
2. Provider/Bloc definitions
|
|
137
|
-
3. Route configuration if needed
|
|
138
|
-
4. Test file structure
|