@hivehub/rulebook 5.3.3 → 5.4.1
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/.claude/commands/analysis.md +35 -35
- package/.claude/commands/continue.md +33 -33
- package/.claude/commands/ralph-config.md +112 -112
- package/.claude/commands/ralph-history.md +110 -110
- package/.claude/commands/ralph-init.md +72 -72
- package/.claude/commands/ralph-pause-resume.md +105 -105
- package/.claude/commands/ralph-run.md +101 -101
- package/.claude/commands/ralph-status.md +76 -76
- package/.claude/commands/rulebook-decision-create.md +55 -55
- package/.claude/commands/rulebook-decision-list.md +15 -15
- package/.claude/commands/rulebook-knowledge-add.md +41 -41
- package/.claude/commands/rulebook-knowledge-list.md +15 -15
- package/.claude/commands/rulebook-learn-capture.md +48 -48
- package/.claude/commands/rulebook-learn-list.md +13 -13
- package/.claude/commands/rulebook-memory-save.md +48 -48
- package/.claude/commands/rulebook-memory-search.md +47 -47
- package/.claude/commands/rulebook-task-apply.md +67 -67
- package/.claude/commands/rulebook-task-archive.md +94 -94
- package/.claude/commands/rulebook-task-create.md +93 -93
- package/.claude/commands/rulebook-task-list.md +42 -42
- package/.claude/commands/rulebook-task-show.md +52 -52
- package/.claude/commands/rulebook-task-validate.md +53 -53
- package/.claude-plugin/marketplace.json +28 -28
- package/.claude-plugin/plugin.json +8 -8
- package/LICENSE +191 -191
- package/README.md +42 -3
- package/dist/cli/commands/compress.d.ts +18 -0
- package/dist/cli/commands/compress.d.ts.map +1 -0
- package/dist/cli/commands/compress.js +100 -0
- package/dist/cli/commands/compress.js.map +1 -0
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +1 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +2 -0
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +2 -0
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/core/claude-settings-manager.d.ts +7 -0
- package/dist/core/claude-settings-manager.d.ts.map +1 -1
- package/dist/core/claude-settings-manager.js +31 -14
- package/dist/core/claude-settings-manager.js.map +1 -1
- package/dist/core/compress/compressor.d.ts +60 -0
- package/dist/core/compress/compressor.d.ts.map +1 -0
- package/dist/core/compress/compressor.js +232 -0
- package/dist/core/compress/compressor.js.map +1 -0
- package/dist/core/compress/discover.d.ts +19 -0
- package/dist/core/compress/discover.d.ts.map +1 -0
- package/dist/core/compress/discover.js +100 -0
- package/dist/core/compress/discover.js.map +1 -0
- package/dist/core/compress/validator.d.ts +47 -0
- package/dist/core/compress/validator.d.ts.map +1 -0
- package/dist/core/compress/validator.js +131 -0
- package/dist/core/compress/validator.js.map +1 -0
- package/dist/core/doctor.d.ts.map +1 -1
- package/dist/core/doctor.js +66 -0
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/generator.d.ts +16 -0
- package/dist/core/generator.d.ts.map +1 -1
- package/dist/core/generator.js +36 -11
- package/dist/core/generator.js.map +1 -1
- package/dist/hooks/safe-flag-io.d.ts +77 -0
- package/dist/hooks/safe-flag-io.d.ts.map +1 -0
- package/dist/hooks/safe-flag-io.js +169 -0
- package/dist/hooks/safe-flag-io.js.map +1 -0
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/rulebook-server.d.ts.map +1 -1
- package/dist/mcp/rulebook-server.js +236 -0
- package/dist/mcp/rulebook-server.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +23 -21
- package/templates/agents/accessibility-reviewer.md +43 -43
- package/templates/agents/api-designer.md +42 -42
- package/templates/agents/architect.md +51 -51
- package/templates/agents/build-engineer.md +36 -36
- package/templates/agents/code-reviewer.md +47 -47
- package/templates/agents/compiler/codegen-debugger.md +34 -34
- package/templates/agents/compiler/stdlib-engineer.md +28 -28
- package/templates/agents/compiler/test-coverage-guardian.md +31 -31
- package/templates/agents/context-intelligence.md +52 -52
- package/templates/agents/database-architect.md +41 -41
- package/templates/agents/devops-engineer.md +42 -42
- package/templates/agents/docs-writer.md +38 -38
- package/templates/agents/game-engine/cpp-core-expert.md +35 -35
- package/templates/agents/game-engine/render-engineer.md +22 -22
- package/templates/agents/game-engine/shader-engineer.md +38 -38
- package/templates/agents/game-engine/systems-integration.md +43 -43
- package/templates/agents/generic/code-reviewer.md +41 -41
- package/templates/agents/generic/docs-writer.md +25 -25
- package/templates/agents/generic/project-manager.md +36 -36
- package/templates/agents/generic/researcher.md +34 -34
- package/templates/agents/generic/test-engineer.md +41 -41
- package/templates/agents/i18n-engineer.md +42 -42
- package/templates/agents/implementer.md +42 -42
- package/templates/agents/migration-engineer.md +42 -42
- package/templates/agents/mobile/platform-specialist.md +22 -22
- package/templates/agents/mobile/ui-engineer.md +22 -22
- package/templates/agents/performance-engineer.md +49 -49
- package/templates/agents/refactoring-agent.md +41 -41
- package/templates/agents/researcher.md +38 -38
- package/templates/agents/security-reviewer.md +40 -40
- package/templates/agents/team-lead.md +37 -37
- package/templates/agents/tester.md +48 -48
- package/templates/agents/ux-reviewer.md +43 -43
- package/templates/agents/web-app/api-designer.md +22 -22
- package/templates/agents/web-app/backend-engineer.md +30 -30
- package/templates/agents/web-app/database-engineer.md +22 -22
- package/templates/agents/web-app/frontend-engineer.md +29 -29
- package/templates/agents/web-app/security-reviewer.md +32 -32
- package/templates/ci/rulebook-review.yml +26 -26
- package/templates/cli/AIDER.md +49 -49
- package/templates/cli/AMAZON_Q.md +25 -25
- package/templates/cli/AUGGIE.md +32 -32
- package/templates/cli/CLAUDE.md +117 -117
- package/templates/cli/CLINE.md +99 -99
- package/templates/cli/CODEBUDDY.md +20 -20
- package/templates/cli/CODEIUM.md +20 -20
- package/templates/cli/CODEX.md +21 -21
- package/templates/cli/CONTINUE.md +34 -34
- package/templates/cli/CURSOR_CLI.md +62 -62
- package/templates/cli/FACTORY.md +18 -18
- package/templates/cli/GEMINI.md +35 -35
- package/templates/cli/KILOCODE.md +18 -18
- package/templates/cli/OPENCODE.md +18 -18
- package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
- package/templates/cli/gemini-extension.json +77 -77
- package/templates/commands/rulebook-decision-create.md +55 -55
- package/templates/commands/rulebook-decision-list.md +15 -15
- package/templates/commands/rulebook-knowledge-add.md +41 -41
- package/templates/commands/rulebook-knowledge-list.md +15 -15
- package/templates/commands/rulebook-learn-capture.md +48 -48
- package/templates/commands/rulebook-learn-list.md +13 -13
- package/templates/commands/rulebook-memory-save.md +48 -48
- package/templates/commands/rulebook-memory-search.md +47 -47
- package/templates/commands/rulebook-task-apply.md +67 -67
- package/templates/commands/rulebook-task-archive.md +94 -94
- package/templates/commands/rulebook-task-create.md +93 -93
- package/templates/commands/rulebook-task-list.md +42 -42
- package/templates/commands/rulebook-task-show.md +52 -52
- package/templates/commands/rulebook-task-validate.md +53 -53
- package/templates/compact-context/_default.md +23 -23
- package/templates/compact-context/cpp.md +26 -26
- package/templates/compact-context/go.md +26 -26
- package/templates/compact-context/python.md +26 -26
- package/templates/compact-context/rust.md +28 -28
- package/templates/compact-context/typescript.md +29 -29
- package/templates/core/AGENTS_OVERRIDE.md +16 -16
- package/templates/core/AGENT_AUTOMATION.md +296 -296
- package/templates/core/CLAUDE_MD_v2.md +71 -71
- package/templates/core/DAG.md +304 -304
- package/templates/core/DECISIONS.md +38 -38
- package/templates/core/DOCUMENTATION_RULES.md +36 -36
- package/templates/core/KNOWLEDGE.md +49 -49
- package/templates/core/MULTI_AGENT.md +74 -74
- package/templates/core/PLANS.md +28 -28
- package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
- package/templates/core/RALPH.md +471 -471
- package/templates/core/RULEBOOK.md +1947 -1947
- package/templates/core/TIER1_PROHIBITIONS.md +154 -154
- package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
- package/templates/core/WORKSPACE.md +69 -69
- package/templates/frameworks/ANGULAR.md +36 -36
- package/templates/frameworks/DJANGO.md +83 -83
- package/templates/frameworks/ELECTRON.md +147 -147
- package/templates/frameworks/FLASK.md +38 -38
- package/templates/frameworks/FLUTTER.md +55 -55
- package/templates/frameworks/JQUERY.md +32 -32
- package/templates/frameworks/LARAVEL.md +38 -38
- package/templates/frameworks/NESTJS.md +43 -43
- package/templates/frameworks/NEXTJS.md +127 -127
- package/templates/frameworks/NUXT.md +40 -40
- package/templates/frameworks/RAILS.md +66 -66
- package/templates/frameworks/REACT.md +38 -38
- package/templates/frameworks/REACT_NATIVE.md +47 -47
- package/templates/frameworks/SPRING.md +39 -39
- package/templates/frameworks/SYMFONY.md +36 -36
- package/templates/frameworks/VUE.md +36 -36
- package/templates/frameworks/ZEND.md +35 -35
- package/templates/git/CI_CD_PATTERNS.md +661 -661
- package/templates/git/GITHUB_ACTIONS.md +728 -728
- package/templates/git/GITLAB_CI.md +730 -730
- package/templates/git/GIT_WORKFLOW.md +1192 -1192
- package/templates/git/SECRETS_MANAGEMENT.md +585 -585
- package/templates/hooks/COMMIT_MSG.md +530 -530
- package/templates/hooks/POST_CHECKOUT.md +546 -546
- package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
- package/templates/hooks/PRE_COMMIT.md +414 -414
- package/templates/hooks/PRE_PUSH.md +601 -601
- package/templates/hooks/check-context-and-handoff.ps1 +58 -58
- package/templates/hooks/check-context-and-handoff.sh +76 -76
- package/templates/hooks/enforce-team-for-background-agents.ps1 +63 -63
- package/templates/hooks/enforce-team-for-background-agents.sh +55 -55
- package/templates/hooks/on-compact-reinject.sh +34 -34
- package/templates/hooks/resume-from-handoff.ps1 +40 -40
- package/templates/hooks/resume-from-handoff.sh +61 -61
- package/templates/hooks/terse-activate.ps1 +143 -0
- package/templates/hooks/terse-activate.sh +197 -0
- package/templates/hooks/terse-mode-tracker.ps1 +153 -0
- package/templates/hooks/terse-mode-tracker.sh +187 -0
- package/templates/ides/CONTINUE_RULES.md +16 -16
- package/templates/ides/COPILOT.md +37 -37
- package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
- package/templates/ides/CURSOR.md +43 -43
- package/templates/ides/GEMINI_RULES.md +17 -17
- package/templates/ides/JETBRAINS_AI.md +35 -35
- package/templates/ides/REPLIT.md +36 -36
- package/templates/ides/TABNINE.md +29 -29
- package/templates/ides/VSCODE.md +40 -40
- package/templates/ides/WINDSURF.md +36 -36
- package/templates/ides/WINDSURF_RULES.md +14 -14
- package/templates/ides/ZED.md +32 -32
- package/templates/ides/cursor-mdc/go.mdc +24 -24
- package/templates/ides/cursor-mdc/python.mdc +24 -24
- package/templates/ides/cursor-mdc/quality.mdc +25 -25
- package/templates/ides/cursor-mdc/ralph.mdc +39 -39
- package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
- package/templates/ides/cursor-mdc/rust.mdc +24 -24
- package/templates/ides/cursor-mdc/typescript.mdc +25 -25
- package/templates/languages/C.md +333 -333
- package/templates/languages/CPP.md +743 -743
- package/templates/languages/CSHARP.md +417 -417
- package/templates/languages/ELIXIR.md +454 -454
- package/templates/languages/ERLANG.md +361 -361
- package/templates/languages/GO.md +645 -645
- package/templates/languages/HASKELL.md +177 -177
- package/templates/languages/JAVA.md +607 -607
- package/templates/languages/JAVASCRIPT.md +631 -631
- package/templates/languages/JULIA.md +97 -97
- package/templates/languages/KOTLIN.md +511 -511
- package/templates/languages/LISP.md +100 -100
- package/templates/languages/LUA.md +74 -74
- package/templates/languages/OBJECTIVEC.md +90 -90
- package/templates/languages/PHP.md +416 -416
- package/templates/languages/PYTHON.md +682 -682
- package/templates/languages/RUBY.md +421 -421
- package/templates/languages/RUST.md +477 -477
- package/templates/languages/SAS.md +73 -73
- package/templates/languages/SCALA.md +348 -348
- package/templates/languages/SOLIDITY.md +580 -580
- package/templates/languages/SQL.md +137 -137
- package/templates/languages/SWIFT.md +466 -466
- package/templates/languages/TYPESCRIPT.md +591 -591
- package/templates/languages/ZIG.md +265 -265
- package/templates/modules/ATLASSIAN.md +255 -255
- package/templates/modules/CONTEXT7.md +54 -54
- package/templates/modules/FIGMA.md +267 -267
- package/templates/modules/GITHUB_MCP.md +64 -64
- package/templates/modules/GRAFANA.md +328 -328
- package/templates/modules/MEMORY.md +126 -126
- package/templates/modules/NOTION.md +247 -247
- package/templates/modules/PLAYWRIGHT.md +90 -90
- package/templates/modules/RULEBOOK_MCP.md +208 -156
- package/templates/modules/SERENA.md +337 -337
- package/templates/modules/SUPABASE.md +223 -223
- package/templates/modules/SYNAP.md +69 -69
- package/templates/modules/VECTORIZER.md +63 -63
- package/templates/modules/sequential-thinking.md +42 -42
- package/templates/ralph/ralph-history.bat +4 -4
- package/templates/ralph/ralph-history.sh +5 -5
- package/templates/ralph/ralph-init.bat +5 -5
- package/templates/ralph/ralph-init.sh +5 -5
- package/templates/ralph/ralph-pause.bat +5 -5
- package/templates/ralph/ralph-pause.sh +5 -5
- package/templates/ralph/ralph-run.bat +5 -5
- package/templates/ralph/ralph-run.sh +5 -5
- package/templates/ralph/ralph-status.bat +4 -4
- package/templates/ralph/ralph-status.sh +5 -5
- package/templates/rules/consult-analysis-before-implementing.md +23 -23
- package/templates/rules/cpp.md +46 -46
- package/templates/rules/csharp.md +44 -44
- package/templates/rules/diagnostic-first.md +39 -39
- package/templates/rules/fail-twice-escalate.md +46 -46
- package/templates/rules/follow-task-sequence.md +36 -36
- package/templates/rules/git-safety.md +29 -29
- package/templates/rules/go.md +40 -40
- package/templates/rules/incremental-implementation.md +56 -56
- package/templates/rules/incremental-tests.md +29 -29
- package/templates/rules/java.md +43 -43
- package/templates/rules/javascript.md +39 -39
- package/templates/rules/knowledge-base-usage.md +41 -41
- package/templates/rules/multi-agent-teams.md +75 -75
- package/templates/rules/no-deferred.md +31 -31
- package/templates/rules/no-shortcuts.md +30 -30
- package/templates/rules/python.md +43 -43
- package/templates/rules/research-first.md +30 -30
- package/templates/rules/respect-handoff-trigger.md +41 -41
- package/templates/rules/rust.md +40 -40
- package/templates/rules/sequential-editing.md +21 -21
- package/templates/rules/session-workflow.md +24 -24
- package/templates/rules/task-decomposition.md +32 -32
- package/templates/rules/typescript.md +40 -40
- package/templates/services/AZURE_BLOB.md +184 -184
- package/templates/services/CASSANDRA.md +239 -239
- package/templates/services/DATADOG.md +26 -26
- package/templates/services/DOCKER.md +124 -124
- package/templates/services/DOCKER_COMPOSE.md +168 -168
- package/templates/services/DYNAMODB.md +308 -308
- package/templates/services/ELASTICSEARCH.md +347 -347
- package/templates/services/GCS.md +178 -178
- package/templates/services/HELM.md +194 -194
- package/templates/services/INFLUXDB.md +265 -265
- package/templates/services/KAFKA.md +341 -341
- package/templates/services/KUBERNETES.md +208 -208
- package/templates/services/MARIADB.md +183 -183
- package/templates/services/MEMCACHED.md +242 -242
- package/templates/services/MINIO.md +201 -201
- package/templates/services/MONGODB.md +268 -268
- package/templates/services/MYSQL.md +358 -358
- package/templates/services/NEO4J.md +247 -247
- package/templates/services/OPENTELEMETRY.md +25 -25
- package/templates/services/ORACLE.md +290 -290
- package/templates/services/PINO.md +24 -24
- package/templates/services/POSTGRESQL.md +326 -326
- package/templates/services/PROMETHEUS.md +33 -33
- package/templates/services/RABBITMQ.md +286 -286
- package/templates/services/REDIS.md +292 -292
- package/templates/services/S3.md +298 -298
- package/templates/services/SENTRY.md +23 -23
- package/templates/services/SQLITE.md +294 -294
- package/templates/services/SQLSERVER.md +294 -294
- package/templates/services/WINSTON.md +30 -30
- package/templates/skills/cli/aider/SKILL.md +59 -59
- package/templates/skills/cli/amazon-q/SKILL.md +35 -35
- package/templates/skills/cli/auggie/SKILL.md +42 -42
- package/templates/skills/cli/claude/SKILL.md +42 -42
- package/templates/skills/cli/cline/SKILL.md +42 -42
- package/templates/skills/cli/codebuddy/SKILL.md +30 -30
- package/templates/skills/cli/codeium/SKILL.md +30 -30
- package/templates/skills/cli/codex/SKILL.md +31 -31
- package/templates/skills/cli/continue/SKILL.md +44 -44
- package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
- package/templates/skills/cli/factory/SKILL.md +28 -28
- package/templates/skills/cli/gemini/SKILL.md +45 -45
- package/templates/skills/cli/kilocode/SKILL.md +28 -28
- package/templates/skills/cli/opencode/SKILL.md +28 -28
- package/templates/skills/core/agent-automation/SKILL.md +194 -194
- package/templates/skills/core/dag/SKILL.md +314 -314
- package/templates/skills/core/documentation-rules/SKILL.md +46 -46
- package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
- package/templates/skills/core/rulebook/SKILL.md +176 -176
- package/templates/skills/core/rulebook-terse/SKILL.md +116 -0
- package/templates/skills/core/rulebook-terse-commit/SKILL.md +96 -0
- package/templates/skills/core/rulebook-terse-review/SKILL.md +112 -0
- package/templates/skills/dev/accessibility/SKILL.md +17 -17
- package/templates/skills/dev/analysis/SKILL.md +19 -19
- package/templates/skills/dev/api-design/SKILL.md +15 -15
- package/templates/skills/dev/architect/SKILL.md +17 -17
- package/templates/skills/dev/build-fix/SKILL.md +17 -17
- package/templates/skills/dev/db-design/SKILL.md +15 -15
- package/templates/skills/dev/debug/SKILL.md +16 -16
- package/templates/skills/dev/deploy/SKILL.md +17 -17
- package/templates/skills/dev/docs/SKILL.md +17 -17
- package/templates/skills/dev/handoff/SKILL.md +27 -27
- package/templates/skills/dev/migrate/SKILL.md +15 -15
- package/templates/skills/dev/perf/SKILL.md +17 -17
- package/templates/skills/dev/refactor/SKILL.md +17 -17
- package/templates/skills/dev/research/SKILL.md +14 -14
- package/templates/skills/dev/review/SKILL.md +18 -18
- package/templates/skills/dev/security-audit/SKILL.md +17 -17
- package/templates/skills/frameworks/angular/SKILL.md +46 -46
- package/templates/skills/frameworks/django/SKILL.md +93 -93
- package/templates/skills/frameworks/electron/SKILL.md +157 -157
- package/templates/skills/frameworks/flask/SKILL.md +48 -48
- package/templates/skills/frameworks/flutter/SKILL.md +65 -65
- package/templates/skills/frameworks/jquery/SKILL.md +42 -42
- package/templates/skills/frameworks/laravel/SKILL.md +48 -48
- package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
- package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
- package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
- package/templates/skills/frameworks/rails/SKILL.md +76 -76
- package/templates/skills/frameworks/react/SKILL.md +48 -48
- package/templates/skills/frameworks/react-native/SKILL.md +57 -57
- package/templates/skills/frameworks/spring/SKILL.md +49 -49
- package/templates/skills/frameworks/symfony/SKILL.md +46 -46
- package/templates/skills/frameworks/vue/SKILL.md +46 -46
- package/templates/skills/frameworks/zend/SKILL.md +45 -45
- package/templates/skills/ides/copilot/SKILL.md +47 -47
- package/templates/skills/ides/cursor/SKILL.md +53 -53
- package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
- package/templates/skills/ides/replit/SKILL.md +46 -46
- package/templates/skills/ides/tabnine/SKILL.md +39 -39
- package/templates/skills/ides/vscode/SKILL.md +50 -50
- package/templates/skills/ides/windsurf/SKILL.md +46 -46
- package/templates/skills/ides/zed/SKILL.md +42 -42
- package/templates/skills/languages/c/SKILL.md +343 -343
- package/templates/skills/languages/cpp/SKILL.md +753 -753
- package/templates/skills/languages/csharp/SKILL.md +427 -427
- package/templates/skills/languages/elixir/SKILL.md +464 -464
- package/templates/skills/languages/erlang/SKILL.md +371 -371
- package/templates/skills/languages/go/SKILL.md +655 -655
- package/templates/skills/languages/haskell/SKILL.md +187 -187
- package/templates/skills/languages/java/SKILL.md +617 -617
- package/templates/skills/languages/javascript/SKILL.md +641 -641
- package/templates/skills/languages/julia/SKILL.md +107 -107
- package/templates/skills/languages/kotlin/SKILL.md +521 -521
- package/templates/skills/languages/lisp/SKILL.md +110 -110
- package/templates/skills/languages/lua/SKILL.md +84 -84
- package/templates/skills/languages/objectivec/SKILL.md +100 -100
- package/templates/skills/languages/php/SKILL.md +426 -426
- package/templates/skills/languages/python/SKILL.md +692 -692
- package/templates/skills/languages/ruby/SKILL.md +431 -431
- package/templates/skills/languages/rust/SKILL.md +487 -487
- package/templates/skills/languages/sas/SKILL.md +83 -83
- package/templates/skills/languages/scala/SKILL.md +358 -358
- package/templates/skills/languages/solidity/SKILL.md +590 -590
- package/templates/skills/languages/sql/SKILL.md +147 -147
- package/templates/skills/languages/swift/SKILL.md +476 -476
- package/templates/skills/languages/typescript/SKILL.md +302 -302
- package/templates/skills/languages/zig/SKILL.md +275 -275
- package/templates/skills/modules/atlassian/SKILL.md +265 -265
- package/templates/skills/modules/context7/SKILL.md +64 -64
- package/templates/skills/modules/figma/SKILL.md +277 -277
- package/templates/skills/modules/github-mcp/SKILL.md +74 -74
- package/templates/skills/modules/grafana/SKILL.md +338 -338
- package/templates/skills/modules/memory/SKILL.md +73 -73
- package/templates/skills/modules/notion/SKILL.md +257 -257
- package/templates/skills/modules/playwright/SKILL.md +100 -100
- package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
- package/templates/skills/modules/serena/SKILL.md +347 -347
- package/templates/skills/modules/supabase/SKILL.md +233 -233
- package/templates/skills/modules/synap/SKILL.md +79 -79
- package/templates/skills/modules/vectorizer/SKILL.md +73 -73
- package/templates/skills/services/azure-blob/SKILL.md +194 -194
- package/templates/skills/services/cassandra/SKILL.md +249 -249
- package/templates/skills/services/dynamodb/SKILL.md +318 -318
- package/templates/skills/services/elasticsearch/SKILL.md +357 -357
- package/templates/skills/services/gcs/SKILL.md +188 -188
- package/templates/skills/services/influxdb/SKILL.md +275 -275
- package/templates/skills/services/kafka/SKILL.md +351 -351
- package/templates/skills/services/mariadb/SKILL.md +193 -193
- package/templates/skills/services/memcached/SKILL.md +252 -252
- package/templates/skills/services/minio/SKILL.md +211 -211
- package/templates/skills/services/mongodb/SKILL.md +278 -278
- package/templates/skills/services/mysql/SKILL.md +368 -368
- package/templates/skills/services/neo4j/SKILL.md +257 -257
- package/templates/skills/services/oracle/SKILL.md +300 -300
- package/templates/skills/services/postgresql/SKILL.md +336 -336
- package/templates/skills/services/rabbitmq/SKILL.md +296 -296
- package/templates/skills/services/redis/SKILL.md +302 -302
- package/templates/skills/services/s3/SKILL.md +308 -308
- package/templates/skills/services/sqlite/SKILL.md +304 -304
- package/templates/skills/services/sqlserver/SKILL.md +304 -304
- package/templates/skills/workflows/ralph/SKILL.md +309 -309
- package/templates/skills/workflows/ralph/install.sh +87 -87
- package/templates/skills/workflows/ralph/manifest.json +158 -158
- package/templates/workflows/codespell.yml +31 -31
- package/templates/workflows/cpp-lint.yml +47 -47
- package/templates/workflows/cpp-publish.yml +119 -119
- package/templates/workflows/cpp-test.yml +77 -77
- package/templates/workflows/dotnet-lint.yml +29 -29
- package/templates/workflows/dotnet-publish.yml +40 -40
- package/templates/workflows/dotnet-test.yml +41 -41
- package/templates/workflows/elixir-lint.yml +45 -45
- package/templates/workflows/elixir-publish.yml +49 -49
- package/templates/workflows/elixir-test.yml +54 -54
- package/templates/workflows/erlang-lint.yml +47 -47
- package/templates/workflows/erlang-test.yml +62 -62
- package/templates/workflows/go-lint.yml +39 -39
- package/templates/workflows/go-publish.yml +95 -95
- package/templates/workflows/go-test.yml +59 -59
- package/templates/workflows/java-lint.yml +60 -60
- package/templates/workflows/java-publish.yml +120 -120
- package/templates/workflows/java-test.yml +85 -85
- package/templates/workflows/kotlin-lint.yml +34 -34
- package/templates/workflows/kotlin-publish.yml +56 -56
- package/templates/workflows/kotlin-test.yml +48 -48
- package/templates/workflows/php-lint.yml +39 -39
- package/templates/workflows/php-publish.yml +50 -50
- package/templates/workflows/php-test.yml +54 -54
- package/templates/workflows/python-lint.yml +47 -47
- package/templates/workflows/python-publish.yml +91 -91
- package/templates/workflows/python-test.yml +59 -59
- package/templates/workflows/rust-lint.yml +54 -54
- package/templates/workflows/rust-publish.yml +66 -66
- package/templates/workflows/rust-test.yml +75 -75
- package/templates/workflows/solidity-lint.yml +41 -41
- package/templates/workflows/solidity-test.yml +47 -47
- package/templates/workflows/swift-lint.yml +32 -32
- package/templates/workflows/swift-publish.yml +58 -58
- package/templates/workflows/swift-test.yml +44 -44
- package/templates/workflows/typescript-publish.yml +60 -60
- package/templates/workflows/typescript-test.yml +73 -73
- package/templates/workflows/zig-lint.yml +27 -27
- package/templates/workflows/zig-test.yml +40 -40
- package/dist/cli/commands.d.ts +0 -225
- package/dist/cli/commands.d.ts.map +0 -1
- package/dist/cli/commands.js +0 -3984
- package/dist/cli/commands.js.map +0 -1
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: handoff
|
|
3
|
-
description: Save session state to .rulebook/handoff/_pending.md for cross-session continuity
|
|
4
|
-
model: sonnet
|
|
5
|
-
context: fork
|
|
6
|
-
agent: researcher
|
|
7
|
-
---
|
|
8
|
-
Save a session handoff to `.rulebook/handoff/_pending.md`.
|
|
9
|
-
|
|
10
|
-
The handoff file MUST contain:
|
|
11
|
-
|
|
12
|
-
1. **Active task**: current task ID + phase + which checklist items are done
|
|
13
|
-
2. **Decisions made this session**: architectural choices, trade-offs, rejected alternatives
|
|
14
|
-
3. **Files touched**: list of files modified with one-line reason each
|
|
15
|
-
4. **Next steps**: concrete, actionable items (not vague "continue working")
|
|
16
|
-
5. **Exact resume command**: what to tell the next session to do first
|
|
17
|
-
6. **Open questions / blockers**: anything unresolved that needs the user's input
|
|
18
|
-
|
|
19
|
-
Write the file to `.rulebook/handoff/_pending.md` using the Write tool.
|
|
20
|
-
|
|
21
|
-
After writing successfully, display this message prominently:
|
|
22
|
-
|
|
23
|
-
>>> TYPE /clear NOW — your context will be auto-restored in the next session <<<
|
|
24
|
-
|
|
25
|
-
If the file `.rulebook/handoff/.urgent` exists, skip any confirmations and write immediately.
|
|
26
|
-
|
|
27
|
-
The SessionStart hook (`resume-from-handoff.sh`) will automatically inject the handoff content into the next session and archive the file.
|
|
1
|
+
---
|
|
2
|
+
name: handoff
|
|
3
|
+
description: Save session state to .rulebook/handoff/_pending.md for cross-session continuity
|
|
4
|
+
model: sonnet
|
|
5
|
+
context: fork
|
|
6
|
+
agent: researcher
|
|
7
|
+
---
|
|
8
|
+
Save a session handoff to `.rulebook/handoff/_pending.md`.
|
|
9
|
+
|
|
10
|
+
The handoff file MUST contain:
|
|
11
|
+
|
|
12
|
+
1. **Active task**: current task ID + phase + which checklist items are done
|
|
13
|
+
2. **Decisions made this session**: architectural choices, trade-offs, rejected alternatives
|
|
14
|
+
3. **Files touched**: list of files modified with one-line reason each
|
|
15
|
+
4. **Next steps**: concrete, actionable items (not vague "continue working")
|
|
16
|
+
5. **Exact resume command**: what to tell the next session to do first
|
|
17
|
+
6. **Open questions / blockers**: anything unresolved that needs the user's input
|
|
18
|
+
|
|
19
|
+
Write the file to `.rulebook/handoff/_pending.md` using the Write tool.
|
|
20
|
+
|
|
21
|
+
After writing successfully, display this message prominently:
|
|
22
|
+
|
|
23
|
+
>>> TYPE /clear NOW — your context will be auto-restored in the next session <<<
|
|
24
|
+
|
|
25
|
+
If the file `.rulebook/handoff/.urgent` exists, skip any confirmations and write immediately.
|
|
26
|
+
|
|
27
|
+
The SessionStart hook (`resume-from-handoff.sh`) will automatically inject the handoff content into the next session and archive the file.
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: migrate
|
|
3
|
-
description: Plan and execute migrations (database, API, framework)
|
|
4
|
-
model: sonnet
|
|
5
|
-
context: fork
|
|
6
|
-
agent: migration-engineer
|
|
7
|
-
---
|
|
8
|
-
Plan and execute migration for: $ARGUMENTS
|
|
9
|
-
|
|
10
|
-
Steps:
|
|
11
|
-
1. Assess the scope and impact of the migration
|
|
12
|
-
2. Create a step-by-step migration plan with rollback strategy
|
|
13
|
-
3. Write migration scripts or code changes
|
|
14
|
-
4. Test the migration including rollback path
|
|
15
|
-
5. Document breaking changes and migration guide
|
|
1
|
+
---
|
|
2
|
+
name: migrate
|
|
3
|
+
description: Plan and execute migrations (database, API, framework)
|
|
4
|
+
model: sonnet
|
|
5
|
+
context: fork
|
|
6
|
+
agent: migration-engineer
|
|
7
|
+
---
|
|
8
|
+
Plan and execute migration for: $ARGUMENTS
|
|
9
|
+
|
|
10
|
+
Steps:
|
|
11
|
+
1. Assess the scope and impact of the migration
|
|
12
|
+
2. Create a step-by-step migration plan with rollback strategy
|
|
13
|
+
3. Write migration scripts or code changes
|
|
14
|
+
4. Test the migration including rollback path
|
|
15
|
+
5. Document breaking changes and migration guide
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: perf
|
|
3
|
-
description: Performance analysis, profiling, and optimization
|
|
4
|
-
model: sonnet
|
|
5
|
-
context: fork
|
|
6
|
-
agent: performance-engineer
|
|
7
|
-
---
|
|
8
|
-
Analyze performance for: $ARGUMENTS
|
|
9
|
-
|
|
10
|
-
If no arguments, do a general performance review of the project.
|
|
11
|
-
|
|
12
|
-
Steps:
|
|
13
|
-
1. Identify the performance bottleneck or area of concern
|
|
14
|
-
2. Profile the code (check for N+1 queries, unnecessary allocations, blocking I/O)
|
|
15
|
-
3. Benchmark the current performance baseline
|
|
16
|
-
4. Propose optimizations with expected impact
|
|
17
|
-
5. Implement the optimization and measure improvement
|
|
1
|
+
---
|
|
2
|
+
name: perf
|
|
3
|
+
description: Performance analysis, profiling, and optimization
|
|
4
|
+
model: sonnet
|
|
5
|
+
context: fork
|
|
6
|
+
agent: performance-engineer
|
|
7
|
+
---
|
|
8
|
+
Analyze performance for: $ARGUMENTS
|
|
9
|
+
|
|
10
|
+
If no arguments, do a general performance review of the project.
|
|
11
|
+
|
|
12
|
+
Steps:
|
|
13
|
+
1. Identify the performance bottleneck or area of concern
|
|
14
|
+
2. Profile the code (check for N+1 queries, unnecessary allocations, blocking I/O)
|
|
15
|
+
3. Benchmark the current performance baseline
|
|
16
|
+
4. Propose optimizations with expected impact
|
|
17
|
+
5. Implement the optimization and measure improvement
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: refactor
|
|
3
|
-
description: Identify code smells and execute safe refactorings
|
|
4
|
-
model: sonnet
|
|
5
|
-
context: fork
|
|
6
|
-
agent: refactoring-agent
|
|
7
|
-
---
|
|
8
|
-
Analyze and refactor the specified code.
|
|
9
|
-
|
|
10
|
-
Target: $ARGUMENTS (file path, module, or area to refactor)
|
|
11
|
-
|
|
12
|
-
Steps:
|
|
13
|
-
1. Read the target code and understand its purpose
|
|
14
|
-
2. Identify code smells (long functions, duplication, high complexity)
|
|
15
|
-
3. Propose specific refactorings with rationale
|
|
16
|
-
4. Implement refactorings one at a time, verifying tests pass after each
|
|
17
|
-
5. Report what was changed and why
|
|
1
|
+
---
|
|
2
|
+
name: refactor
|
|
3
|
+
description: Identify code smells and execute safe refactorings
|
|
4
|
+
model: sonnet
|
|
5
|
+
context: fork
|
|
6
|
+
agent: refactoring-agent
|
|
7
|
+
---
|
|
8
|
+
Analyze and refactor the specified code.
|
|
9
|
+
|
|
10
|
+
Target: $ARGUMENTS (file path, module, or area to refactor)
|
|
11
|
+
|
|
12
|
+
Steps:
|
|
13
|
+
1. Read the target code and understand its purpose
|
|
14
|
+
2. Identify code smells (long functions, duplication, high complexity)
|
|
15
|
+
3. Propose specific refactorings with rationale
|
|
16
|
+
4. Implement refactorings one at a time, verifying tests pass after each
|
|
17
|
+
5. Report what was changed and why
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: research
|
|
3
|
-
description: Explore codebase and gather context about a topic or area
|
|
4
|
-
model: haiku
|
|
5
|
-
context: fork
|
|
6
|
-
agent: researcher
|
|
7
|
-
---
|
|
8
|
-
Research the following topic in this codebase: $ARGUMENTS
|
|
9
|
-
|
|
10
|
-
Steps:
|
|
11
|
-
1. Search for relevant files, types, and patterns related to the topic
|
|
12
|
-
2. Read key files to understand the architecture and conventions
|
|
13
|
-
3. Identify dependencies and relationships between components
|
|
14
|
-
4. Report findings with file paths, key types, and patterns discovered
|
|
1
|
+
---
|
|
2
|
+
name: research
|
|
3
|
+
description: Explore codebase and gather context about a topic or area
|
|
4
|
+
model: haiku
|
|
5
|
+
context: fork
|
|
6
|
+
agent: researcher
|
|
7
|
+
---
|
|
8
|
+
Research the following topic in this codebase: $ARGUMENTS
|
|
9
|
+
|
|
10
|
+
Steps:
|
|
11
|
+
1. Search for relevant files, types, and patterns related to the topic
|
|
12
|
+
2. Read key files to understand the architecture and conventions
|
|
13
|
+
3. Identify dependencies and relationships between components
|
|
14
|
+
4. Report findings with file paths, key types, and patterns discovered
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: review
|
|
3
|
-
description: Deep code review of recent changes or specified files
|
|
4
|
-
model: sonnet
|
|
5
|
-
context: fork
|
|
6
|
-
agent: code-reviewer
|
|
7
|
-
---
|
|
8
|
-
Perform a thorough code review.
|
|
9
|
-
|
|
10
|
-
If $ARGUMENTS is provided, review those specific files or the given PR/commit.
|
|
11
|
-
Otherwise, review uncommitted changes via `git diff`.
|
|
12
|
-
|
|
13
|
-
Steps:
|
|
14
|
-
1. Get the diff (git diff or specified files)
|
|
15
|
-
2. Review for correctness, bugs, and edge cases
|
|
16
|
-
3. Check adherence to project patterns and conventions
|
|
17
|
-
4. Identify security concerns
|
|
18
|
-
5. Report findings as: blocker / suggestion / nit with file:line references
|
|
1
|
+
---
|
|
2
|
+
name: review
|
|
3
|
+
description: Deep code review of recent changes or specified files
|
|
4
|
+
model: sonnet
|
|
5
|
+
context: fork
|
|
6
|
+
agent: code-reviewer
|
|
7
|
+
---
|
|
8
|
+
Perform a thorough code review.
|
|
9
|
+
|
|
10
|
+
If $ARGUMENTS is provided, review those specific files or the given PR/commit.
|
|
11
|
+
Otherwise, review uncommitted changes via `git diff`.
|
|
12
|
+
|
|
13
|
+
Steps:
|
|
14
|
+
1. Get the diff (git diff or specified files)
|
|
15
|
+
2. Review for correctness, bugs, and edge cases
|
|
16
|
+
3. Check adherence to project patterns and conventions
|
|
17
|
+
4. Identify security concerns
|
|
18
|
+
5. Report findings as: blocker / suggestion / nit with file:line references
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: security-audit
|
|
3
|
-
description: Run a security audit on the project (dependencies, secrets, OWASP)
|
|
4
|
-
model: haiku
|
|
5
|
-
context: fork
|
|
6
|
-
agent: security-reviewer
|
|
7
|
-
---
|
|
8
|
-
Perform a comprehensive security audit of this project.
|
|
9
|
-
|
|
10
|
-
If $ARGUMENTS is provided, focus the audit on that specific area.
|
|
11
|
-
|
|
12
|
-
Steps:
|
|
13
|
-
1. Run dependency audit (npm audit, pip-audit, cargo audit, etc.)
|
|
14
|
-
2. Scan for hardcoded secrets, API keys, and credentials
|
|
15
|
-
3. Review authentication and authorization patterns
|
|
16
|
-
4. Check for OWASP Top 10 vulnerabilities in the codebase
|
|
17
|
-
5. Report findings categorized by severity (critical/high/medium/low)
|
|
1
|
+
---
|
|
2
|
+
name: security-audit
|
|
3
|
+
description: Run a security audit on the project (dependencies, secrets, OWASP)
|
|
4
|
+
model: haiku
|
|
5
|
+
context: fork
|
|
6
|
+
agent: security-reviewer
|
|
7
|
+
---
|
|
8
|
+
Perform a comprehensive security audit of this project.
|
|
9
|
+
|
|
10
|
+
If $ARGUMENTS is provided, focus the audit on that specific area.
|
|
11
|
+
|
|
12
|
+
Steps:
|
|
13
|
+
1. Run dependency audit (npm audit, pip-audit, cargo audit, etc.)
|
|
14
|
+
2. Scan for hardcoded secrets, API keys, and credentials
|
|
15
|
+
3. Review authentication and authorization patterns
|
|
16
|
+
4. Check for OWASP Top 10 vulnerabilities in the codebase
|
|
17
|
+
5. Report findings categorized by severity (critical/high/medium/low)
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Angular"
|
|
3
|
-
description: "Angular projects must meet these standards before delivery."
|
|
4
|
-
version: "1.0.0"
|
|
5
|
-
category: "frameworks"
|
|
6
|
-
author: "Rulebook"
|
|
7
|
-
tags: ["frameworks", "framework"]
|
|
8
|
-
dependencies: []
|
|
9
|
-
conflicts: []
|
|
10
|
-
---
|
|
11
|
-
<!-- ANGULAR:START -->
|
|
12
|
-
# Angular Framework Rules
|
|
13
|
-
|
|
14
|
-
**CRITICAL**: Angular projects must meet these standards before delivery.
|
|
15
|
-
|
|
16
|
-
## Quality Commands
|
|
17
|
-
- Lint: `npm run lint`
|
|
18
|
-
- Unit tests: `npm run test -- --watch=false --code-coverage`
|
|
19
|
-
- e2e tests: `npm run e2e`
|
|
20
|
-
- Build: `npm run build -- --configuration production`
|
|
21
|
-
|
|
22
|
-
## Project Structure
|
|
23
|
-
- Colocate features inside `src/app/<feature>/`
|
|
24
|
-
- Keep shared modules in `src/app/shared`
|
|
25
|
-
- Avoid `providedIn: 'root'` unless service truly global
|
|
26
|
-
- Leverage `OnPush` change detection for performance-critical components
|
|
27
|
-
|
|
28
|
-
## Implementation Guidelines
|
|
29
|
-
- Define interfaces for component inputs/outputs
|
|
30
|
-
- Use `HttpClient` interceptors for auth/logging
|
|
31
|
-
- Isolate environment variables in `src/environments/`
|
|
32
|
-
- Prefer Reactive Forms and RxJS operators over manual subscriptions
|
|
33
|
-
|
|
34
|
-
## Pre-Commit Sequence
|
|
35
|
-
```bash
|
|
36
|
-
npm run lint
|
|
37
|
-
npm run test -- --watch=false
|
|
38
|
-
npm run build -- --configuration production
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Documentation
|
|
42
|
-
- Update `/docs/angular-architecture.md` with new modules and routes
|
|
43
|
-
- Record shared component APIs in Storybook or `/docs/ui-components.md`
|
|
44
|
-
- Version major route changes in `/docs/roadmap.md`
|
|
45
|
-
|
|
46
|
-
<!-- ANGULAR:END -->
|
|
1
|
+
---
|
|
2
|
+
name: "Angular"
|
|
3
|
+
description: "Angular projects must meet these standards before delivery."
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
category: "frameworks"
|
|
6
|
+
author: "Rulebook"
|
|
7
|
+
tags: ["frameworks", "framework"]
|
|
8
|
+
dependencies: []
|
|
9
|
+
conflicts: []
|
|
10
|
+
---
|
|
11
|
+
<!-- ANGULAR:START -->
|
|
12
|
+
# Angular Framework Rules
|
|
13
|
+
|
|
14
|
+
**CRITICAL**: Angular projects must meet these standards before delivery.
|
|
15
|
+
|
|
16
|
+
## Quality Commands
|
|
17
|
+
- Lint: `npm run lint`
|
|
18
|
+
- Unit tests: `npm run test -- --watch=false --code-coverage`
|
|
19
|
+
- e2e tests: `npm run e2e`
|
|
20
|
+
- Build: `npm run build -- --configuration production`
|
|
21
|
+
|
|
22
|
+
## Project Structure
|
|
23
|
+
- Colocate features inside `src/app/<feature>/`
|
|
24
|
+
- Keep shared modules in `src/app/shared`
|
|
25
|
+
- Avoid `providedIn: 'root'` unless service truly global
|
|
26
|
+
- Leverage `OnPush` change detection for performance-critical components
|
|
27
|
+
|
|
28
|
+
## Implementation Guidelines
|
|
29
|
+
- Define interfaces for component inputs/outputs
|
|
30
|
+
- Use `HttpClient` interceptors for auth/logging
|
|
31
|
+
- Isolate environment variables in `src/environments/`
|
|
32
|
+
- Prefer Reactive Forms and RxJS operators over manual subscriptions
|
|
33
|
+
|
|
34
|
+
## Pre-Commit Sequence
|
|
35
|
+
```bash
|
|
36
|
+
npm run lint
|
|
37
|
+
npm run test -- --watch=false
|
|
38
|
+
npm run build -- --configuration production
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Documentation
|
|
42
|
+
- Update `/docs/angular-architecture.md` with new modules and routes
|
|
43
|
+
- Record shared component APIs in Storybook or `/docs/ui-components.md`
|
|
44
|
+
- Version major route changes in `/docs/roadmap.md`
|
|
45
|
+
|
|
46
|
+
<!-- ANGULAR:END -->
|
|
@@ -1,93 +1,93 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Django"
|
|
3
|
-
description: "Language: Python"
|
|
4
|
-
version: "1.0.0"
|
|
5
|
-
category: "frameworks"
|
|
6
|
-
author: "Rulebook"
|
|
7
|
-
tags: ["frameworks", "framework"]
|
|
8
|
-
dependencies: []
|
|
9
|
-
conflicts: []
|
|
10
|
-
---
|
|
11
|
-
<!-- DJANGO:START -->
|
|
12
|
-
# Django Framework Rules
|
|
13
|
-
|
|
14
|
-
**Language**: Python
|
|
15
|
-
**Version**: Django 4.2+ (LTS) or 5.0+
|
|
16
|
-
|
|
17
|
-
## Setup & Configuration
|
|
18
|
-
|
|
19
|
-
```python
|
|
20
|
-
# settings.py
|
|
21
|
-
SECRET_KEY = env('SECRET_KEY') # Never hardcode
|
|
22
|
-
DEBUG = env.bool('DEBUG', default=False)
|
|
23
|
-
ALLOWED_HOSTS = env.list('ALLOWED_HOSTS')
|
|
24
|
-
|
|
25
|
-
INSTALLED_APPS = [
|
|
26
|
-
# Django apps
|
|
27
|
-
'django.contrib.admin',
|
|
28
|
-
'django.contrib.auth',
|
|
29
|
-
# Third-party
|
|
30
|
-
'rest_framework',
|
|
31
|
-
'corsheaders',
|
|
32
|
-
# Local apps
|
|
33
|
-
'apps.users',
|
|
34
|
-
]
|
|
35
|
-
|
|
36
|
-
DATABASES = {
|
|
37
|
-
'default': env.db('DATABASE_URL') # Use django-environ
|
|
38
|
-
}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Quality Gates
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
# Code quality
|
|
45
|
-
black . # Format
|
|
46
|
-
ruff check . # Lint
|
|
47
|
-
mypy . # Type check
|
|
48
|
-
|
|
49
|
-
# Tests
|
|
50
|
-
python manage.py test # Run tests
|
|
51
|
-
pytest --cov=apps --cov-report=html # With coverage
|
|
52
|
-
|
|
53
|
-
# Security
|
|
54
|
-
python manage.py check --deploy # Production checks
|
|
55
|
-
bandit -r apps/ # Security scan
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## Best Practices
|
|
59
|
-
|
|
60
|
-
✅ **DO:**
|
|
61
|
-
- Use Class-Based Views (CBVs) or Django REST Framework ViewSets
|
|
62
|
-
- Implement custom User model from start
|
|
63
|
-
- Use Django ORM properly (select_related, prefetch_related)
|
|
64
|
-
- Enable CSRF protection
|
|
65
|
-
- Use environment variables for secrets
|
|
66
|
-
- Write tests for views, models, and forms
|
|
67
|
-
|
|
68
|
-
❌ **DON'T:**
|
|
69
|
-
- Use `DEBUG=True` in production
|
|
70
|
-
- Store secrets in settings.py
|
|
71
|
-
- Use raw SQL without parameterization
|
|
72
|
-
- Skip migrations
|
|
73
|
-
- Ignore security middleware
|
|
74
|
-
|
|
75
|
-
## Project Structure
|
|
76
|
-
|
|
77
|
-
```
|
|
78
|
-
project/
|
|
79
|
-
├── manage.py
|
|
80
|
-
├── requirements.txt
|
|
81
|
-
├── apps/
|
|
82
|
-
│ ├── users/
|
|
83
|
-
│ ├── api/
|
|
84
|
-
│ └── core/
|
|
85
|
-
├── config/
|
|
86
|
-
│ ├── settings.py
|
|
87
|
-
│ ├── urls.py
|
|
88
|
-
│ └── wsgi.py
|
|
89
|
-
└── tests/
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
<!-- DJANGO:END -->
|
|
93
|
-
|
|
1
|
+
---
|
|
2
|
+
name: "Django"
|
|
3
|
+
description: "Language: Python"
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
category: "frameworks"
|
|
6
|
+
author: "Rulebook"
|
|
7
|
+
tags: ["frameworks", "framework"]
|
|
8
|
+
dependencies: []
|
|
9
|
+
conflicts: []
|
|
10
|
+
---
|
|
11
|
+
<!-- DJANGO:START -->
|
|
12
|
+
# Django Framework Rules
|
|
13
|
+
|
|
14
|
+
**Language**: Python
|
|
15
|
+
**Version**: Django 4.2+ (LTS) or 5.0+
|
|
16
|
+
|
|
17
|
+
## Setup & Configuration
|
|
18
|
+
|
|
19
|
+
```python
|
|
20
|
+
# settings.py
|
|
21
|
+
SECRET_KEY = env('SECRET_KEY') # Never hardcode
|
|
22
|
+
DEBUG = env.bool('DEBUG', default=False)
|
|
23
|
+
ALLOWED_HOSTS = env.list('ALLOWED_HOSTS')
|
|
24
|
+
|
|
25
|
+
INSTALLED_APPS = [
|
|
26
|
+
# Django apps
|
|
27
|
+
'django.contrib.admin',
|
|
28
|
+
'django.contrib.auth',
|
|
29
|
+
# Third-party
|
|
30
|
+
'rest_framework',
|
|
31
|
+
'corsheaders',
|
|
32
|
+
# Local apps
|
|
33
|
+
'apps.users',
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
DATABASES = {
|
|
37
|
+
'default': env.db('DATABASE_URL') # Use django-environ
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Quality Gates
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# Code quality
|
|
45
|
+
black . # Format
|
|
46
|
+
ruff check . # Lint
|
|
47
|
+
mypy . # Type check
|
|
48
|
+
|
|
49
|
+
# Tests
|
|
50
|
+
python manage.py test # Run tests
|
|
51
|
+
pytest --cov=apps --cov-report=html # With coverage
|
|
52
|
+
|
|
53
|
+
# Security
|
|
54
|
+
python manage.py check --deploy # Production checks
|
|
55
|
+
bandit -r apps/ # Security scan
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Best Practices
|
|
59
|
+
|
|
60
|
+
✅ **DO:**
|
|
61
|
+
- Use Class-Based Views (CBVs) or Django REST Framework ViewSets
|
|
62
|
+
- Implement custom User model from start
|
|
63
|
+
- Use Django ORM properly (select_related, prefetch_related)
|
|
64
|
+
- Enable CSRF protection
|
|
65
|
+
- Use environment variables for secrets
|
|
66
|
+
- Write tests for views, models, and forms
|
|
67
|
+
|
|
68
|
+
❌ **DON'T:**
|
|
69
|
+
- Use `DEBUG=True` in production
|
|
70
|
+
- Store secrets in settings.py
|
|
71
|
+
- Use raw SQL without parameterization
|
|
72
|
+
- Skip migrations
|
|
73
|
+
- Ignore security middleware
|
|
74
|
+
|
|
75
|
+
## Project Structure
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
project/
|
|
79
|
+
├── manage.py
|
|
80
|
+
├── requirements.txt
|
|
81
|
+
├── apps/
|
|
82
|
+
│ ├── users/
|
|
83
|
+
│ ├── api/
|
|
84
|
+
│ └── core/
|
|
85
|
+
├── config/
|
|
86
|
+
│ ├── settings.py
|
|
87
|
+
│ ├── urls.py
|
|
88
|
+
│ └── wsgi.py
|
|
89
|
+
└── tests/
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
<!-- DJANGO:END -->
|
|
93
|
+
|