@hivehub/rulebook 5.7.0 → 5.8.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/.claude/commands/analysis.md +35 -35
- package/.claude/commands/continue.md +33 -33
- 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-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/README.md +86 -0
- package/dist/cli/commands/claude.d.ts +17 -0
- package/dist/cli/commands/claude.d.ts.map +1 -0
- package/dist/cli/commands/claude.js +56 -0
- package/dist/cli/commands/claude.js.map +1 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +18 -2
- 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 +6 -1
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/prompts.d.ts +13 -0
- package/dist/cli/prompts.d.ts.map +1 -1
- package/dist/cli/prompts.js +106 -0
- package/dist/cli/prompts.js.map +1 -1
- package/dist/core/claude/claude-mcp.d.ts +9 -0
- package/dist/core/claude/claude-mcp.d.ts.map +1 -1
- package/dist/core/claude/claude-mcp.js +30 -0
- package/dist/core/claude/claude-mcp.js.map +1 -1
- package/dist/core/claude/claude-settings-manager.d.ts +12 -0
- package/dist/core/claude/claude-settings-manager.d.ts.map +1 -1
- package/dist/core/claude/claude-settings-manager.js +59 -3
- package/dist/core/claude/claude-settings-manager.js.map +1 -1
- package/dist/core/detect/detector.d.ts +8 -1
- package/dist/core/detect/detector.d.ts.map +1 -1
- package/dist/core/detect/detector.js +225 -0
- package/dist/core/detect/detector.js.map +1 -1
- package/dist/core/detect/library-registry.d.ts +40 -0
- package/dist/core/detect/library-registry.d.ts.map +1 -0
- package/dist/core/detect/library-registry.js +239 -0
- package/dist/core/detect/library-registry.js.map +1 -0
- package/dist/core/generators/generator.d.ts +1 -0
- package/dist/core/generators/generator.d.ts.map +1 -1
- package/dist/core/generators/generator.js +37 -0
- package/dist/core/generators/generator.js.map +1 -1
- package/dist/core/generators/rules-generator.d.ts +1 -5
- package/dist/core/generators/rules-generator.d.ts.map +1 -1
- package/dist/core/generators/rules-generator.js +40 -1
- package/dist/core/generators/rules-generator.js.map +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/rulebook-server.js +0 -0
- package/dist/types.d.ts +13 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +23 -22
- 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/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/project-manager.md +215 -0
- package/templates/agents/quality-gatekeeper.md +205 -0
- 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/claude-workflows/bugfix.js +94 -0
- package/templates/claude-workflows/feature-pipeline.js +88 -0
- package/templates/claude-workflows/release-gate.js +64 -0
- package/templates/claude-workflows/review-fanout.js +118 -0
- package/templates/claude-workflows/rulebook-driver.js +343 -0
- package/templates/claude-workflows/spec-author.js +133 -0
- 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/_GENERIC_TEMPLATE.md +29 -29
- 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-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 +90 -90
- 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/RULEBOOK.md +1947 -1947
- package/templates/core/TIER1_PROHIBITIONS.md +154 -154
- package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
- 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.sh +16 -6
- package/templates/hooks/update-check.ps1 +84 -0
- package/templates/hooks/update-check.sh +103 -0
- package/templates/ides/CONTINUE_RULES.md +16 -16
- package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
- package/templates/ides/GEMINI_RULES.md +17 -17
- package/templates/ides/WINDSURF_RULES.md +14 -14
- 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/libraries/go/ECHO.md +18 -0
- package/templates/libraries/go/GIN.md +18 -0
- package/templates/libraries/go/GORM.md +18 -0
- package/templates/libraries/python/DJANGO.md +18 -0
- package/templates/libraries/python/FASTAPI.md +18 -0
- package/templates/libraries/python/FLASK.md +17 -0
- package/templates/libraries/python/PYDANTIC.md +17 -0
- package/templates/libraries/python/PYTEST.md +17 -0
- package/templates/libraries/python/SQLALCHEMY.md +17 -0
- package/templates/libraries/rust/ACTIX.md +17 -0
- package/templates/libraries/rust/AXUM.md +18 -0
- package/templates/libraries/rust/SERDE.md +16 -0
- package/templates/libraries/rust/SQLX.md +17 -0
- package/templates/libraries/rust/TOKIO.md +16 -0
- package/templates/libraries/typescript/ANGULAR.md +17 -0
- package/templates/libraries/typescript/DRIZZLE.md +16 -0
- package/templates/libraries/typescript/EXPRESS.md +17 -0
- package/templates/libraries/typescript/HEROUI.md +16 -0
- package/templates/libraries/typescript/JEST.md +17 -0
- package/templates/libraries/typescript/NESTJS.md +17 -0
- package/templates/libraries/typescript/NEXT.md +18 -0
- package/templates/libraries/typescript/PRISMA.md +16 -0
- package/templates/libraries/typescript/RADIX.md +16 -0
- package/templates/libraries/typescript/REACT.md +18 -0
- package/templates/libraries/typescript/SHADCN.md +16 -0
- package/templates/libraries/typescript/SVELTE.md +16 -0
- package/templates/libraries/typescript/TAILWIND.md +16 -0
- package/templates/libraries/typescript/TRPC.md +16 -0
- package/templates/libraries/typescript/VITEST.md +17 -0
- package/templates/libraries/typescript/VUE.md +17 -0
- package/templates/libraries/typescript/ZOD.md +17 -0
- 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 -208
- 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/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/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/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 -116
- package/templates/skills/core/rulebook-terse-commit/SKILL.md +96 -96
- package/templates/skills/core/rulebook-terse-review/SKILL.md +112 -112
- 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/dev/spec/SKILL.md +65 -0
- 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/dist/agents/ralph-parser.d.ts +0 -91
- package/dist/agents/ralph-parser.d.ts.map +0 -1
- package/dist/agents/ralph-parser.js +0 -415
- package/dist/agents/ralph-parser.js.map +0 -1
- package/dist/cli/commands/analysis.d.ts +0 -8
- package/dist/cli/commands/analysis.d.ts.map +0 -1
- package/dist/cli/commands/analysis.js +0 -78
- package/dist/cli/commands/analysis.js.map +0 -1
- package/dist/cli/commands/compress.d.ts +0 -18
- package/dist/cli/commands/compress.d.ts.map +0 -1
- package/dist/cli/commands/compress.js +0 -100
- package/dist/cli/commands/compress.js.map +0 -1
- package/dist/cli/commands/ralph.d.ts +0 -45
- package/dist/cli/commands/ralph.d.ts.map +0 -1
- package/dist/cli/commands/ralph.js +0 -694
- package/dist/cli/commands/ralph.js.map +0 -1
- package/dist/cli/docs-prompts.d.ts +0 -3
- package/dist/cli/docs-prompts.d.ts.map +0 -1
- package/dist/cli/docs-prompts.js +0 -45
- package/dist/cli/docs-prompts.js.map +0 -1
- package/dist/core/agent-manager.d.ts +0 -69
- package/dist/core/agent-manager.d.ts.map +0 -1
- package/dist/core/agent-manager.js +0 -476
- package/dist/core/agent-manager.js.map +0 -1
- package/dist/core/agent-template-engine.d.ts +0 -51
- package/dist/core/agent-template-engine.d.ts.map +0 -1
- package/dist/core/agent-template-engine.js +0 -291
- package/dist/core/agent-template-engine.js.map +0 -1
- package/dist/core/analysis-manager.d.ts +0 -56
- package/dist/core/analysis-manager.d.ts.map +0 -1
- package/dist/core/analysis-manager.js +0 -218
- package/dist/core/analysis-manager.js.map +0 -1
- package/dist/core/auto-fixer.d.ts +0 -14
- package/dist/core/auto-fixer.d.ts.map +0 -1
- package/dist/core/auto-fixer.js +0 -207
- package/dist/core/auto-fixer.js.map +0 -1
- package/dist/core/changelog-generator.d.ts +0 -44
- package/dist/core/changelog-generator.d.ts.map +0 -1
- package/dist/core/changelog-generator.js +0 -222
- package/dist/core/changelog-generator.js.map +0 -1
- package/dist/core/claude-mcp.d.ts +0 -59
- package/dist/core/claude-mcp.d.ts.map +0 -1
- package/dist/core/claude-mcp.js +0 -220
- package/dist/core/claude-mcp.js.map +0 -1
- package/dist/core/claude-md-generator.d.ts +0 -52
- package/dist/core/claude-md-generator.d.ts.map +0 -1
- package/dist/core/claude-md-generator.js +0 -104
- package/dist/core/claude-md-generator.js.map +0 -1
- package/dist/core/claude-settings-manager.d.ts +0 -44
- package/dist/core/claude-settings-manager.d.ts.map +0 -1
- package/dist/core/claude-settings-manager.js +0 -191
- package/dist/core/claude-settings-manager.js.map +0 -1
- package/dist/core/cli-bridge.d.ts +0 -113
- package/dist/core/cli-bridge.d.ts.map +0 -1
- package/dist/core/cli-bridge.js +0 -1094
- package/dist/core/cli-bridge.js.map +0 -1
- package/dist/core/compact-context-manager.d.ts +0 -34
- package/dist/core/compact-context-manager.d.ts.map +0 -1
- package/dist/core/compact-context-manager.js +0 -60
- package/dist/core/compact-context-manager.js.map +0 -1
- package/dist/core/complexity-detector.d.ts +0 -36
- package/dist/core/complexity-detector.d.ts.map +0 -1
- package/dist/core/complexity-detector.js +0 -334
- package/dist/core/complexity-detector.js.map +0 -1
- package/dist/core/compress/compressor.d.ts +0 -60
- package/dist/core/compress/compressor.d.ts.map +0 -1
- package/dist/core/compress/compressor.js +0 -232
- package/dist/core/compress/compressor.js.map +0 -1
- package/dist/core/compress/discover.d.ts +0 -19
- package/dist/core/compress/discover.d.ts.map +0 -1
- package/dist/core/compress/discover.js +0 -100
- package/dist/core/compress/discover.js.map +0 -1
- package/dist/core/compress/validator.d.ts +0 -47
- package/dist/core/compress/validator.d.ts.map +0 -1
- package/dist/core/compress/validator.js +0 -131
- package/dist/core/compress/validator.js.map +0 -1
- package/dist/core/config-manager.d.ts +0 -86
- package/dist/core/config-manager.d.ts.map +0 -1
- package/dist/core/config-manager.js +0 -621
- package/dist/core/config-manager.js.map +0 -1
- package/dist/core/coverage-checker.d.ts +0 -14
- package/dist/core/coverage-checker.d.ts.map +0 -1
- package/dist/core/coverage-checker.js +0 -176
- package/dist/core/coverage-checker.js.map +0 -1
- package/dist/core/cursor-mdc-generator.d.ts +0 -30
- package/dist/core/cursor-mdc-generator.d.ts.map +0 -1
- package/dist/core/cursor-mdc-generator.js +0 -98
- package/dist/core/cursor-mdc-generator.js.map +0 -1
- package/dist/core/decision-manager.d.ts +0 -25
- package/dist/core/decision-manager.d.ts.map +0 -1
- package/dist/core/decision-manager.js +0 -183
- package/dist/core/decision-manager.js.map +0 -1
- package/dist/core/dependency-checker.d.ts +0 -21
- package/dist/core/dependency-checker.d.ts.map +0 -1
- package/dist/core/dependency-checker.js +0 -247
- package/dist/core/dependency-checker.js.map +0 -1
- package/dist/core/detector.d.ts +0 -27
- package/dist/core/detector.d.ts.map +0 -1
- package/dist/core/detector.js +0 -1763
- package/dist/core/detector.js.map +0 -1
- package/dist/core/docs-generator.d.ts +0 -9
- package/dist/core/docs-generator.d.ts.map +0 -1
- package/dist/core/docs-generator.js +0 -531
- package/dist/core/docs-generator.js.map +0 -1
- package/dist/core/doctor.d.ts +0 -19
- package/dist/core/doctor.d.ts.map +0 -1
- package/dist/core/doctor.js +0 -229
- package/dist/core/doctor.js.map +0 -1
- package/dist/core/generator.d.ts +0 -56
- package/dist/core/generator.d.ts.map +0 -1
- package/dist/core/generator.js +0 -1193
- package/dist/core/generator.js.map +0 -1
- package/dist/core/github-issues-importer.d.ts +0 -82
- package/dist/core/github-issues-importer.d.ts.map +0 -1
- package/dist/core/github-issues-importer.js +0 -161
- package/dist/core/github-issues-importer.js.map +0 -1
- package/dist/core/gitignore-generator.d.ts +0 -13
- package/dist/core/gitignore-generator.d.ts.map +0 -1
- package/dist/core/gitignore-generator.js +0 -307
- package/dist/core/gitignore-generator.js.map +0 -1
- package/dist/core/health-scorer.d.ts +0 -61
- package/dist/core/health-scorer.d.ts.map +0 -1
- package/dist/core/health-scorer.js +0 -638
- package/dist/core/health-scorer.js.map +0 -1
- package/dist/core/iteration-tracker.d.ts +0 -85
- package/dist/core/iteration-tracker.d.ts.map +0 -1
- package/dist/core/iteration-tracker.js +0 -295
- package/dist/core/iteration-tracker.js.map +0 -1
- package/dist/core/knowledge-manager.d.ts +0 -24
- package/dist/core/knowledge-manager.d.ts.map +0 -1
- package/dist/core/knowledge-manager.js +0 -173
- package/dist/core/knowledge-manager.js.map +0 -1
- package/dist/core/learn-manager.d.ts +0 -29
- package/dist/core/learn-manager.d.ts.map +0 -1
- package/dist/core/learn-manager.js +0 -159
- package/dist/core/learn-manager.js.map +0 -1
- package/dist/core/mcp-reference-generator.d.ts +0 -13
- package/dist/core/mcp-reference-generator.d.ts.map +0 -1
- package/dist/core/mcp-reference-generator.js +0 -66
- package/dist/core/mcp-reference-generator.js.map +0 -1
- package/dist/core/minimal-scaffolder.d.ts +0 -8
- package/dist/core/minimal-scaffolder.d.ts.map +0 -1
- package/dist/core/minimal-scaffolder.js +0 -51
- package/dist/core/minimal-scaffolder.js.map +0 -1
- package/dist/core/modern-console.d.ts +0 -98
- package/dist/core/modern-console.d.ts.map +0 -1
- package/dist/core/modern-console.js +0 -556
- package/dist/core/modern-console.js.map +0 -1
- package/dist/core/multi-tool-generator.d.ts +0 -59
- package/dist/core/multi-tool-generator.d.ts.map +0 -1
- package/dist/core/multi-tool-generator.js +0 -157
- package/dist/core/multi-tool-generator.js.map +0 -1
- package/dist/core/override-manager.d.ts +0 -23
- package/dist/core/override-manager.d.ts.map +0 -1
- package/dist/core/override-manager.js +0 -82
- package/dist/core/override-manager.js.map +0 -1
- package/dist/core/plans-manager.d.ts +0 -46
- package/dist/core/plans-manager.d.ts.map +0 -1
- package/dist/core/plans-manager.js +0 -158
- package/dist/core/plans-manager.js.map +0 -1
- package/dist/core/prd-generator.d.ts +0 -48
- package/dist/core/prd-generator.d.ts.map +0 -1
- package/dist/core/prd-generator.js +0 -233
- package/dist/core/prd-generator.js.map +0 -1
- package/dist/core/ralph-manager.d.ts +0 -163
- package/dist/core/ralph-manager.d.ts.map +0 -1
- package/dist/core/ralph-manager.js +0 -555
- package/dist/core/ralph-manager.js.map +0 -1
- package/dist/core/ralph-parallel.d.ts +0 -55
- package/dist/core/ralph-parallel.d.ts.map +0 -1
- package/dist/core/ralph-parallel.js +0 -201
- package/dist/core/ralph-parallel.js.map +0 -1
- package/dist/core/ralph-plan-checkpoint.d.ts +0 -58
- package/dist/core/ralph-plan-checkpoint.d.ts.map +0 -1
- package/dist/core/ralph-plan-checkpoint.js +0 -154
- package/dist/core/ralph-plan-checkpoint.js.map +0 -1
- package/dist/core/ralph-scripts.d.ts +0 -12
- package/dist/core/ralph-scripts.d.ts.map +0 -1
- package/dist/core/ralph-scripts.js +0 -50
- package/dist/core/ralph-scripts.js.map +0 -1
- package/dist/core/review-manager.d.ts +0 -74
- package/dist/core/review-manager.d.ts.map +0 -1
- package/dist/core/review-manager.js +0 -371
- package/dist/core/review-manager.js.map +0 -1
- package/dist/core/rules-generator.d.ts +0 -73
- package/dist/core/rules-generator.d.ts.map +0 -1
- package/dist/core/rules-generator.js +0 -202
- package/dist/core/rules-generator.js.map +0 -1
- package/dist/core/skills-manager.d.ts +0 -126
- package/dist/core/skills-manager.d.ts.map +0 -1
- package/dist/core/skills-manager.js +0 -654
- package/dist/core/skills-manager.js.map +0 -1
- package/dist/core/state-writer.d.ts +0 -35
- package/dist/core/state-writer.d.ts.map +0 -1
- package/dist/core/state-writer.js +0 -81
- package/dist/core/state-writer.js.map +0 -1
- package/dist/core/task-manager.d.ts +0 -127
- package/dist/core/task-manager.d.ts.map +0 -1
- package/dist/core/task-manager.js +0 -607
- package/dist/core/task-manager.js.map +0 -1
- package/dist/core/telemetry.d.ts +0 -29
- package/dist/core/telemetry.d.ts.map +0 -1
- package/dist/core/telemetry.js +0 -57
- package/dist/core/telemetry.js.map +0 -1
- package/dist/core/validator.d.ts +0 -21
- package/dist/core/validator.d.ts.map +0 -1
- package/dist/core/validator.js +0 -177
- package/dist/core/validator.js.map +0 -1
- package/dist/core/version-bumper.d.ts +0 -19
- package/dist/core/version-bumper.d.ts.map +0 -1
- package/dist/core/version-bumper.js +0 -180
- package/dist/core/version-bumper.js.map +0 -1
- package/dist/core/watcher.d.ts +0 -9
- package/dist/core/watcher.d.ts.map +0 -1
- package/dist/core/watcher.js +0 -22
- package/dist/core/watcher.js.map +0 -1
- package/dist/core/workflow-generator.d.ts +0 -15
- package/dist/core/workflow-generator.d.ts.map +0 -1
- package/dist/core/workflow-generator.js +0 -391
- package/dist/core/workflow-generator.js.map +0 -1
- package/dist/hooks/terse-activate.d.ts +0 -59
- package/dist/hooks/terse-activate.d.ts.map +0 -1
- package/dist/hooks/terse-activate.js +0 -149
- package/dist/hooks/terse-activate.js.map +0 -1
- package/dist/hooks/terse-config.d.ts +0 -51
- package/dist/hooks/terse-config.d.ts.map +0 -1
- package/dist/hooks/terse-config.js +0 -130
- package/dist/hooks/terse-config.js.map +0 -1
- package/dist/hooks/terse-mode-tracker.d.ts +0 -78
- package/dist/hooks/terse-mode-tracker.d.ts.map +0 -1
- package/dist/hooks/terse-mode-tracker.js +0 -213
- package/dist/hooks/terse-mode-tracker.js.map +0 -1
- package/dist/memory/hnsw-index.d.ts +0 -68
- package/dist/memory/hnsw-index.d.ts.map +0 -1
- package/dist/memory/hnsw-index.js +0 -544
- package/dist/memory/hnsw-index.js.map +0 -1
- package/dist/memory/memory-cache.d.ts +0 -33
- package/dist/memory/memory-cache.d.ts.map +0 -1
- package/dist/memory/memory-cache.js +0 -85
- package/dist/memory/memory-cache.js.map +0 -1
- package/dist/memory/memory-search.d.ts +0 -42
- package/dist/memory/memory-search.d.ts.map +0 -1
- package/dist/memory/memory-search.js +0 -180
- package/dist/memory/memory-search.js.map +0 -1
- package/dist/memory/memory-store.d.ts +0 -84
- package/dist/memory/memory-store.d.ts.map +0 -1
- package/dist/memory/memory-store.js +0 -566
- package/dist/memory/memory-store.js.map +0 -1
- package/dist/memory/memory-vectorizer.d.ts +0 -29
- package/dist/memory/memory-vectorizer.d.ts.map +0 -1
- package/dist/memory/memory-vectorizer.js +0 -199
- package/dist/memory/memory-vectorizer.js.map +0 -1
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: follow-task-sequence
|
|
3
|
-
tier: 1
|
|
4
|
-
description: "Execute tasks in the exact order defined — no reordering, no cherry-picking"
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
filePatterns: ["*"]
|
|
7
|
-
tools: ["all"]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Follow Task Sequence — No Reordering, No Cherry-Picking
|
|
11
|
-
|
|
12
|
-
When a `tasks.md` checklist defines a sequence, execute items in EXACTLY that order.
|
|
13
|
-
|
|
14
|
-
## Forbidden
|
|
15
|
-
|
|
16
|
-
- Skipping ahead to "easier" or "more interesting" tasks
|
|
17
|
-
- Reordering tasks because you think a different order is better
|
|
18
|
-
- Cherry-picking tasks from the middle of a list
|
|
19
|
-
- Deciding which tasks are "important enough" to do
|
|
20
|
-
- Grouping or batching tasks in a different sequence
|
|
21
|
-
- Starting Phase N+1 before Phase N is 100% complete
|
|
22
|
-
|
|
23
|
-
## Required Behavior
|
|
24
|
-
|
|
25
|
-
1. Read `tasks.md` from top to bottom
|
|
26
|
-
2. Find the FIRST unchecked item (`- [ ]`)
|
|
27
|
-
3. Implement THAT item — not the one you prefer
|
|
28
|
-
4. Mark it `[x]` with what was done
|
|
29
|
-
5. Move to the NEXT unchecked item
|
|
30
|
-
6. Repeat until all items are checked
|
|
31
|
-
|
|
32
|
-
## Why
|
|
33
|
-
|
|
34
|
-
The human spent time defining the task sequence for a reason. The order reflects dependencies, priorities, and a deliberate implementation strategy. When AI agents skip around, dependencies break, progress tracking becomes unreliable, and work has to be redone.
|
|
35
|
-
|
|
36
|
-
**The task list is an ORDER, not a MENU.**
|
|
1
|
+
---
|
|
2
|
+
name: follow-task-sequence
|
|
3
|
+
tier: 1
|
|
4
|
+
description: "Execute tasks in the exact order defined — no reordering, no cherry-picking"
|
|
5
|
+
alwaysApply: true
|
|
6
|
+
filePatterns: ["*"]
|
|
7
|
+
tools: ["all"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Follow Task Sequence — No Reordering, No Cherry-Picking
|
|
11
|
+
|
|
12
|
+
When a `tasks.md` checklist defines a sequence, execute items in EXACTLY that order.
|
|
13
|
+
|
|
14
|
+
## Forbidden
|
|
15
|
+
|
|
16
|
+
- Skipping ahead to "easier" or "more interesting" tasks
|
|
17
|
+
- Reordering tasks because you think a different order is better
|
|
18
|
+
- Cherry-picking tasks from the middle of a list
|
|
19
|
+
- Deciding which tasks are "important enough" to do
|
|
20
|
+
- Grouping or batching tasks in a different sequence
|
|
21
|
+
- Starting Phase N+1 before Phase N is 100% complete
|
|
22
|
+
|
|
23
|
+
## Required Behavior
|
|
24
|
+
|
|
25
|
+
1. Read `tasks.md` from top to bottom
|
|
26
|
+
2. Find the FIRST unchecked item (`- [ ]`)
|
|
27
|
+
3. Implement THAT item — not the one you prefer
|
|
28
|
+
4. Mark it `[x]` with what was done
|
|
29
|
+
5. Move to the NEXT unchecked item
|
|
30
|
+
6. Repeat until all items are checked
|
|
31
|
+
|
|
32
|
+
## Why
|
|
33
|
+
|
|
34
|
+
The human spent time defining the task sequence for a reason. The order reflects dependencies, priorities, and a deliberate implementation strategy. When AI agents skip around, dependencies break, progress tracking becomes unreliable, and work has to be redone.
|
|
35
|
+
|
|
36
|
+
**The task list is an ORDER, not a MENU.**
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: git-safety
|
|
3
|
-
tier: 1
|
|
4
|
-
description: "Git safety — explicit allow-list, forbidden destructive operations"
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
filePatterns: ["*"]
|
|
7
|
-
tools: ["all"]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Git Safety Rules
|
|
11
|
-
|
|
12
|
-
## Allowed (always safe)
|
|
13
|
-
- `git status`, `git diff`, `git log`, `git blame`
|
|
14
|
-
- `git add <files>`, `git commit` (after quality checks)
|
|
15
|
-
|
|
16
|
-
## Forbidden (require explicit user authorization)
|
|
17
|
-
- `git stash` — hidden state gets forgotten
|
|
18
|
-
- `git rebase` — rewrites history
|
|
19
|
-
- `git reset --hard` — destroys uncommitted changes
|
|
20
|
-
- `git checkout -- .` / `git restore .` — discards all changes
|
|
21
|
-
- `git revert` — creates unexpected commits
|
|
22
|
-
- `git cherry-pick` — can cause conflicts
|
|
23
|
-
- `git merge` — requires human judgment
|
|
24
|
-
- `git branch -D` — permanent branch deletion
|
|
25
|
-
- `git push --force` — NEVER on main/master
|
|
26
|
-
- `git clean -f` — permanently deletes untracked files
|
|
27
|
-
- `git checkout <branch>` / `git switch` — breaks concurrent AI sessions
|
|
28
|
-
|
|
29
|
-
Multiple AI sessions may share the same working tree. Branch switching or destructive operations affect ALL concurrent sessions.
|
|
1
|
+
---
|
|
2
|
+
name: git-safety
|
|
3
|
+
tier: 1
|
|
4
|
+
description: "Git safety — explicit allow-list, forbidden destructive operations"
|
|
5
|
+
alwaysApply: true
|
|
6
|
+
filePatterns: ["*"]
|
|
7
|
+
tools: ["all"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Git Safety Rules
|
|
11
|
+
|
|
12
|
+
## Allowed (always safe)
|
|
13
|
+
- `git status`, `git diff`, `git log`, `git blame`
|
|
14
|
+
- `git add <files>`, `git commit` (after quality checks)
|
|
15
|
+
|
|
16
|
+
## Forbidden (require explicit user authorization)
|
|
17
|
+
- `git stash` — hidden state gets forgotten
|
|
18
|
+
- `git rebase` — rewrites history
|
|
19
|
+
- `git reset --hard` — destroys uncommitted changes
|
|
20
|
+
- `git checkout -- .` / `git restore .` — discards all changes
|
|
21
|
+
- `git revert` — creates unexpected commits
|
|
22
|
+
- `git cherry-pick` — can cause conflicts
|
|
23
|
+
- `git merge` — requires human judgment
|
|
24
|
+
- `git branch -D` — permanent branch deletion
|
|
25
|
+
- `git push --force` — NEVER on main/master
|
|
26
|
+
- `git clean -f` — permanently deletes untracked files
|
|
27
|
+
- `git checkout <branch>` / `git switch` — breaks concurrent AI sessions
|
|
28
|
+
|
|
29
|
+
Multiple AI sessions may share the same working tree. Branch switching or destructive operations affect ALL concurrent sessions.
|
package/templates/rules/go.md
CHANGED
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
---
|
|
2
|
-
paths:
|
|
3
|
-
- "**/*.go"
|
|
4
|
-
- "go.mod"
|
|
5
|
-
- "go.sum"
|
|
6
|
-
---
|
|
7
|
-
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
8
|
-
|
|
9
|
-
# Go rules
|
|
10
|
-
|
|
11
|
-
Loaded by Claude Code when touching Go sources.
|
|
12
|
-
|
|
13
|
-
## Non-negotiables
|
|
14
|
-
|
|
15
|
-
1. **`go vet ./...` before `go test ./...`.** Vet is near-instant and catches common issues before the slower test runner.
|
|
16
|
-
2. **`gofmt -s -w .` and `goimports -w .`** on every file you touch. There is no formatting debate in Go.
|
|
17
|
-
3. **Error handling is explicit.** Every `err` is either handled, wrapped with `fmt.Errorf("context: %w", err)`, or propagated up. Never `_ = err`.
|
|
18
|
-
4. **No naked returns in functions longer than 5 lines.** They obscure control flow.
|
|
19
|
-
5. **`context.Context` is the first parameter** for any function that does I/O or may block. Never store contexts in structs.
|
|
20
|
-
|
|
21
|
-
## Conventions
|
|
22
|
-
|
|
23
|
-
- Package names are short, lowercase, and singular (`user`, not `users` or `userManager`).
|
|
24
|
-
- Interfaces defined by the consumer, not the producer. Keep them small (1–3 methods).
|
|
25
|
-
- Struct fields ordered: exported before unexported, grouped by logical purpose.
|
|
26
|
-
- Use `any` instead of `interface{}` (Go 1.18+).
|
|
27
|
-
- Prefer table-driven tests with `t.Run` subtests.
|
|
28
|
-
|
|
29
|
-
## Testing
|
|
30
|
-
|
|
31
|
-
- Test files live in the same package, suffix `_test.go`.
|
|
32
|
-
- `testify/require` or stdlib `testing` — pick one and stick with it.
|
|
33
|
-
- Race detector on CI: `go test -race ./...`.
|
|
34
|
-
- No test skipping without `t.Skip("reason: ...")`.
|
|
35
|
-
|
|
36
|
-
## Build & tooling
|
|
37
|
-
|
|
38
|
-
- `go mod tidy` after adding imports; commit both `go.mod` and `go.sum`.
|
|
39
|
-
- Never commit `vendor/` unless the project explicitly vendors.
|
|
40
|
-
- Use `go build ./...` to catch packages you forgot to test.
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.go"
|
|
4
|
+
- "go.mod"
|
|
5
|
+
- "go.sum"
|
|
6
|
+
---
|
|
7
|
+
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
8
|
+
|
|
9
|
+
# Go rules
|
|
10
|
+
|
|
11
|
+
Loaded by Claude Code when touching Go sources.
|
|
12
|
+
|
|
13
|
+
## Non-negotiables
|
|
14
|
+
|
|
15
|
+
1. **`go vet ./...` before `go test ./...`.** Vet is near-instant and catches common issues before the slower test runner.
|
|
16
|
+
2. **`gofmt -s -w .` and `goimports -w .`** on every file you touch. There is no formatting debate in Go.
|
|
17
|
+
3. **Error handling is explicit.** Every `err` is either handled, wrapped with `fmt.Errorf("context: %w", err)`, or propagated up. Never `_ = err`.
|
|
18
|
+
4. **No naked returns in functions longer than 5 lines.** They obscure control flow.
|
|
19
|
+
5. **`context.Context` is the first parameter** for any function that does I/O or may block. Never store contexts in structs.
|
|
20
|
+
|
|
21
|
+
## Conventions
|
|
22
|
+
|
|
23
|
+
- Package names are short, lowercase, and singular (`user`, not `users` or `userManager`).
|
|
24
|
+
- Interfaces defined by the consumer, not the producer. Keep them small (1–3 methods).
|
|
25
|
+
- Struct fields ordered: exported before unexported, grouped by logical purpose.
|
|
26
|
+
- Use `any` instead of `interface{}` (Go 1.18+).
|
|
27
|
+
- Prefer table-driven tests with `t.Run` subtests.
|
|
28
|
+
|
|
29
|
+
## Testing
|
|
30
|
+
|
|
31
|
+
- Test files live in the same package, suffix `_test.go`.
|
|
32
|
+
- `testify/require` or stdlib `testing` — pick one and stick with it.
|
|
33
|
+
- Race detector on CI: `go test -race ./...`.
|
|
34
|
+
- No test skipping without `t.Skip("reason: ...")`.
|
|
35
|
+
|
|
36
|
+
## Build & tooling
|
|
37
|
+
|
|
38
|
+
- `go mod tidy` after adding imports; commit both `go.mod` and `go.sum`.
|
|
39
|
+
- Never commit `vendor/` unless the project explicitly vendors.
|
|
40
|
+
- Use `go build ./...` to catch packages you forgot to test.
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: incremental-implementation
|
|
3
|
-
tier: 1
|
|
4
|
-
description: "Implement step by step, test each step, restart from scratch if stuck"
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
filePatterns: ["*"]
|
|
7
|
-
tools: ["all"]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Incremental Implementation — Step by Step, Test Each Step
|
|
11
|
-
|
|
12
|
-
NEVER implement everything at once. Build incrementally, verify at every step, and restart from scratch when stuck.
|
|
13
|
-
|
|
14
|
-
## Required Process
|
|
15
|
-
|
|
16
|
-
1. **Understand** the full scope before writing any code
|
|
17
|
-
2. **Decompose** into the smallest possible steps
|
|
18
|
-
3. **Implement ONE step** at a time
|
|
19
|
-
4. **Test/verify** that step immediately (compile, run, test)
|
|
20
|
-
5. **Fix any errors** before moving to the next step
|
|
21
|
-
6. **Record learnings** in the knowledge base after each significant discovery
|
|
22
|
-
7. **Repeat** until complete
|
|
23
|
-
|
|
24
|
-
## The Restart Rule
|
|
25
|
-
|
|
26
|
-
If you have spent more than 3 failed attempts fixing the same error:
|
|
27
|
-
|
|
28
|
-
1. **STOP** — do not try a 4th variation of the same approach
|
|
29
|
-
2. **Analyze** what went wrong — write down root causes, not symptoms
|
|
30
|
-
3. **Record** the failed approach as an anti-pattern in the knowledge base
|
|
31
|
-
4. **Remove** the broken code completely — do not patch on top of patches
|
|
32
|
-
5. **Reimplementation from scratch** using a different approach informed by what you learned
|
|
33
|
-
6. **Test each step** of the new approach before proceeding
|
|
34
|
-
|
|
35
|
-
## Knowledge Base Integration
|
|
36
|
-
|
|
37
|
-
After every significant implementation:
|
|
38
|
-
|
|
39
|
-
1. **Check existing knowledge** before starting: `rulebook knowledge list` or search `.rulebook/knowledge/`
|
|
40
|
-
2. **Record patterns** that worked: `rulebook knowledge add pattern "<title>" --category <cat>`
|
|
41
|
-
3. **Record anti-patterns** that failed: `rulebook knowledge add anti-pattern "<title>" --category <cat>`
|
|
42
|
-
4. **Capture learnings** from debugging: `rulebook learn capture --title "<title>" --content "<content>"`
|
|
43
|
-
|
|
44
|
-
## Forbidden
|
|
45
|
-
|
|
46
|
-
- Implementing an entire feature in one pass without intermediate verification
|
|
47
|
-
- Spending more than 3 attempts fixing the same error with the same approach
|
|
48
|
-
- Patching broken code on top of broken code instead of restarting clean
|
|
49
|
-
- Ignoring the knowledge base — check it BEFORE implementing, update it AFTER
|
|
50
|
-
- Batching all tests to the end instead of testing each step
|
|
51
|
-
|
|
52
|
-
## Why
|
|
53
|
-
|
|
54
|
-
AI agents that implement everything at once produce cascading errors. One early mistake propagates through the entire implementation, and debugging becomes exponentially harder. Step-by-step with immediate verification catches errors at the source. When stuck, restarting from scratch with new knowledge is always faster than patching endlessly. The line between persistence and stubbornness is thin.
|
|
55
|
-
|
|
56
|
-
**"Slow is smooth, smooth is fast."**
|
|
1
|
+
---
|
|
2
|
+
name: incremental-implementation
|
|
3
|
+
tier: 1
|
|
4
|
+
description: "Implement step by step, test each step, restart from scratch if stuck"
|
|
5
|
+
alwaysApply: true
|
|
6
|
+
filePatterns: ["*"]
|
|
7
|
+
tools: ["all"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Incremental Implementation — Step by Step, Test Each Step
|
|
11
|
+
|
|
12
|
+
NEVER implement everything at once. Build incrementally, verify at every step, and restart from scratch when stuck.
|
|
13
|
+
|
|
14
|
+
## Required Process
|
|
15
|
+
|
|
16
|
+
1. **Understand** the full scope before writing any code
|
|
17
|
+
2. **Decompose** into the smallest possible steps
|
|
18
|
+
3. **Implement ONE step** at a time
|
|
19
|
+
4. **Test/verify** that step immediately (compile, run, test)
|
|
20
|
+
5. **Fix any errors** before moving to the next step
|
|
21
|
+
6. **Record learnings** in the knowledge base after each significant discovery
|
|
22
|
+
7. **Repeat** until complete
|
|
23
|
+
|
|
24
|
+
## The Restart Rule
|
|
25
|
+
|
|
26
|
+
If you have spent more than 3 failed attempts fixing the same error:
|
|
27
|
+
|
|
28
|
+
1. **STOP** — do not try a 4th variation of the same approach
|
|
29
|
+
2. **Analyze** what went wrong — write down root causes, not symptoms
|
|
30
|
+
3. **Record** the failed approach as an anti-pattern in the knowledge base
|
|
31
|
+
4. **Remove** the broken code completely — do not patch on top of patches
|
|
32
|
+
5. **Reimplementation from scratch** using a different approach informed by what you learned
|
|
33
|
+
6. **Test each step** of the new approach before proceeding
|
|
34
|
+
|
|
35
|
+
## Knowledge Base Integration
|
|
36
|
+
|
|
37
|
+
After every significant implementation:
|
|
38
|
+
|
|
39
|
+
1. **Check existing knowledge** before starting: `rulebook knowledge list` or search `.rulebook/knowledge/`
|
|
40
|
+
2. **Record patterns** that worked: `rulebook knowledge add pattern "<title>" --category <cat>`
|
|
41
|
+
3. **Record anti-patterns** that failed: `rulebook knowledge add anti-pattern "<title>" --category <cat>`
|
|
42
|
+
4. **Capture learnings** from debugging: `rulebook learn capture --title "<title>" --content "<content>"`
|
|
43
|
+
|
|
44
|
+
## Forbidden
|
|
45
|
+
|
|
46
|
+
- Implementing an entire feature in one pass without intermediate verification
|
|
47
|
+
- Spending more than 3 attempts fixing the same error with the same approach
|
|
48
|
+
- Patching broken code on top of broken code instead of restarting clean
|
|
49
|
+
- Ignoring the knowledge base — check it BEFORE implementing, update it AFTER
|
|
50
|
+
- Batching all tests to the end instead of testing each step
|
|
51
|
+
|
|
52
|
+
## Why
|
|
53
|
+
|
|
54
|
+
AI agents that implement everything at once produce cascading errors. One early mistake propagates through the entire implementation, and debugging becomes exponentially harder. Step-by-step with immediate verification catches errors at the source. When stuck, restarting from scratch with new knowledge is always faster than patching endlessly. The line between persistence and stubbornness is thin.
|
|
55
|
+
|
|
56
|
+
**"Slow is smooth, smooth is fast."**
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: incremental-tests
|
|
3
|
-
tier: 2
|
|
4
|
-
description: "Write tests in small batches, verify immediately"
|
|
5
|
-
alwaysApply: true
|
|
6
|
-
filePatterns: ["*.test.*", "*.spec.*", "*_test.*"]
|
|
7
|
-
tools: ["all"]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Incremental Test Development
|
|
11
|
-
|
|
12
|
-
Write tests 1-3 at a time. Test immediately after writing. Fix errors before proceeding.
|
|
13
|
-
|
|
14
|
-
## Rules
|
|
15
|
-
|
|
16
|
-
1. **Write 1-3 tests** at a time, NOT entire test files at once
|
|
17
|
-
2. **Run immediately** after writing — use single-file test execution
|
|
18
|
-
3. **Fix errors** before writing more tests
|
|
19
|
-
4. **Never run full suite** while developing tests — use individual file execution
|
|
20
|
-
5. **Coverage updates** only after completing a block of tests
|
|
21
|
-
|
|
22
|
-
## Why
|
|
23
|
-
|
|
24
|
-
Writing full test files at once leads to cascading failures. One early error invalidates all subsequent tests, creating debug fatigue and wasted time.
|
|
25
|
-
|
|
26
|
-
## Development Testing vs Validation Testing
|
|
27
|
-
|
|
28
|
-
- **Development**: Run single test file (`vitest run tests/my.test.ts`)
|
|
29
|
-
- **Validation**: Run full suite only when a batch of tests is complete
|
|
1
|
+
---
|
|
2
|
+
name: incremental-tests
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "Write tests in small batches, verify immediately"
|
|
5
|
+
alwaysApply: true
|
|
6
|
+
filePatterns: ["*.test.*", "*.spec.*", "*_test.*"]
|
|
7
|
+
tools: ["all"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Incremental Test Development
|
|
11
|
+
|
|
12
|
+
Write tests 1-3 at a time. Test immediately after writing. Fix errors before proceeding.
|
|
13
|
+
|
|
14
|
+
## Rules
|
|
15
|
+
|
|
16
|
+
1. **Write 1-3 tests** at a time, NOT entire test files at once
|
|
17
|
+
2. **Run immediately** after writing — use single-file test execution
|
|
18
|
+
3. **Fix errors** before writing more tests
|
|
19
|
+
4. **Never run full suite** while developing tests — use individual file execution
|
|
20
|
+
5. **Coverage updates** only after completing a block of tests
|
|
21
|
+
|
|
22
|
+
## Why
|
|
23
|
+
|
|
24
|
+
Writing full test files at once leads to cascading failures. One early error invalidates all subsequent tests, creating debug fatigue and wasted time.
|
|
25
|
+
|
|
26
|
+
## Development Testing vs Validation Testing
|
|
27
|
+
|
|
28
|
+
- **Development**: Run single test file (`vitest run tests/my.test.ts`)
|
|
29
|
+
- **Validation**: Run full suite only when a batch of tests is complete
|
package/templates/rules/java.md
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
---
|
|
2
|
-
paths:
|
|
3
|
-
- "**/*.java"
|
|
4
|
-
- "pom.xml"
|
|
5
|
-
- "**/build.gradle"
|
|
6
|
-
- "**/build.gradle.kts"
|
|
7
|
-
- "**/settings.gradle"
|
|
8
|
-
- "**/settings.gradle.kts"
|
|
9
|
-
---
|
|
10
|
-
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
11
|
-
|
|
12
|
-
# Java rules
|
|
13
|
-
|
|
14
|
-
Loaded by Claude Code when touching Java sources or build files.
|
|
15
|
-
|
|
16
|
-
## Non-negotiables
|
|
17
|
-
|
|
18
|
-
1. **Compile before test.** `mvn compile` / `gradle classes` before running the test suite. Compilation errors are cheaper to fix than a broken test run.
|
|
19
|
-
2. **Static analysis enabled.** SpotBugs, ErrorProne, or Checkstyle per project config. Warnings count as failures.
|
|
20
|
-
3. **Null safety.** Use `Optional<T>` for values that may be absent at API boundaries. Annotate fields with `@Nullable` / `@NonNull` where the project uses JSR-305 / JSpecify.
|
|
21
|
-
4. **Immutability first.** `final` by default on fields, parameters, and local variables. Prefer records (Java 16+) for data carriers.
|
|
22
|
-
5. **Never swallow exceptions.** Every `catch` either handles, wraps (`throw new X("context", e)`), or logs with context.
|
|
23
|
-
|
|
24
|
-
## Conventions
|
|
25
|
-
|
|
26
|
-
- Follow the project's Google Java Style or similar — formatter handles it.
|
|
27
|
-
- Package names all lowercase, reverse-DNS (`com.hivehub.rulebook.foo`).
|
|
28
|
-
- One public class per file; file name matches the class.
|
|
29
|
-
- Prefer composition over inheritance; avoid deep hierarchies.
|
|
30
|
-
- Use `java.time` (not `java.util.Date`) for dates and times.
|
|
31
|
-
|
|
32
|
-
## Testing
|
|
33
|
-
|
|
34
|
-
- JUnit 5 is default; use the project's configured framework.
|
|
35
|
-
- AssertJ or Hamcrest for readable assertions.
|
|
36
|
-
- Mockito for mocks; avoid PowerMock unless strictly necessary.
|
|
37
|
-
- One logical assertion per test; multiple mechanical ones allowed.
|
|
38
|
-
|
|
39
|
-
## Build & tooling
|
|
40
|
-
|
|
41
|
-
- Commit `pom.xml` / `build.gradle`, never `target/` / `build/`.
|
|
42
|
-
- Pin plugin versions; do not use ranges.
|
|
43
|
-
- Java version declared in the build file, not assumed from the environment.
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.java"
|
|
4
|
+
- "pom.xml"
|
|
5
|
+
- "**/build.gradle"
|
|
6
|
+
- "**/build.gradle.kts"
|
|
7
|
+
- "**/settings.gradle"
|
|
8
|
+
- "**/settings.gradle.kts"
|
|
9
|
+
---
|
|
10
|
+
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
11
|
+
|
|
12
|
+
# Java rules
|
|
13
|
+
|
|
14
|
+
Loaded by Claude Code when touching Java sources or build files.
|
|
15
|
+
|
|
16
|
+
## Non-negotiables
|
|
17
|
+
|
|
18
|
+
1. **Compile before test.** `mvn compile` / `gradle classes` before running the test suite. Compilation errors are cheaper to fix than a broken test run.
|
|
19
|
+
2. **Static analysis enabled.** SpotBugs, ErrorProne, or Checkstyle per project config. Warnings count as failures.
|
|
20
|
+
3. **Null safety.** Use `Optional<T>` for values that may be absent at API boundaries. Annotate fields with `@Nullable` / `@NonNull` where the project uses JSR-305 / JSpecify.
|
|
21
|
+
4. **Immutability first.** `final` by default on fields, parameters, and local variables. Prefer records (Java 16+) for data carriers.
|
|
22
|
+
5. **Never swallow exceptions.** Every `catch` either handles, wraps (`throw new X("context", e)`), or logs with context.
|
|
23
|
+
|
|
24
|
+
## Conventions
|
|
25
|
+
|
|
26
|
+
- Follow the project's Google Java Style or similar — formatter handles it.
|
|
27
|
+
- Package names all lowercase, reverse-DNS (`com.hivehub.rulebook.foo`).
|
|
28
|
+
- One public class per file; file name matches the class.
|
|
29
|
+
- Prefer composition over inheritance; avoid deep hierarchies.
|
|
30
|
+
- Use `java.time` (not `java.util.Date`) for dates and times.
|
|
31
|
+
|
|
32
|
+
## Testing
|
|
33
|
+
|
|
34
|
+
- JUnit 5 is default; use the project's configured framework.
|
|
35
|
+
- AssertJ or Hamcrest for readable assertions.
|
|
36
|
+
- Mockito for mocks; avoid PowerMock unless strictly necessary.
|
|
37
|
+
- One logical assertion per test; multiple mechanical ones allowed.
|
|
38
|
+
|
|
39
|
+
## Build & tooling
|
|
40
|
+
|
|
41
|
+
- Commit `pom.xml` / `build.gradle`, never `target/` / `build/`.
|
|
42
|
+
- Pin plugin versions; do not use ranges.
|
|
43
|
+
- Java version declared in the build file, not assumed from the environment.
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
---
|
|
2
|
-
paths:
|
|
3
|
-
- "**/*.js"
|
|
4
|
-
- "**/*.jsx"
|
|
5
|
-
- "**/*.mjs"
|
|
6
|
-
- "**/*.cjs"
|
|
7
|
-
- "package.json"
|
|
8
|
-
---
|
|
9
|
-
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
10
|
-
|
|
11
|
-
# JavaScript rules
|
|
12
|
-
|
|
13
|
-
Loaded by Claude Code when touching JavaScript files.
|
|
14
|
-
|
|
15
|
-
## Non-negotiables
|
|
16
|
-
|
|
17
|
-
1. **Lint before test.** Run the project's linter (ESLint / Biome) before the test suite. Lint errors are cheaper to surface than test failures.
|
|
18
|
-
2. **No `var`.** Use `const` by default, `let` only when reassignment is necessary.
|
|
19
|
-
3. **Strict equality.** Always `===` and `!==`, never `==` / `!=`.
|
|
20
|
-
4. **No implicit globals.** Every file that modifies state at the top level should explicitly export it.
|
|
21
|
-
5. **Module type matches the project.** If the project is ESM (`"type": "module"` in package.json), use `import`/`export`; if CommonJS, use `require`/`module.exports`. Do not mix without a clear boundary.
|
|
22
|
-
|
|
23
|
-
## Conventions
|
|
24
|
-
|
|
25
|
-
- Prefer arrow functions for callbacks; named `function` declarations for top-level or hoisted functions.
|
|
26
|
-
- `async`/`await` over raw Promise chains.
|
|
27
|
-
- Destructure function arguments when there are 3+ parameters.
|
|
28
|
-
- Never rely on falsy checks for "value exists" — use explicit `=== undefined` / `!= null` where the distinction matters.
|
|
29
|
-
|
|
30
|
-
## Testing
|
|
31
|
-
|
|
32
|
-
- Use the project's configured test runner. Do not add a new one.
|
|
33
|
-
- Mock external boundaries (network, filesystem, time).
|
|
34
|
-
- No `describe.skip` / `it.skip` left behind in committed code.
|
|
35
|
-
|
|
36
|
-
## Dependencies
|
|
37
|
-
|
|
38
|
-
- Check `package.json` before adding imports. Do not install new dependencies without explicit authorization.
|
|
39
|
-
- Pin `peerDependencies` carefully; they affect consumers of the package.
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.js"
|
|
4
|
+
- "**/*.jsx"
|
|
5
|
+
- "**/*.mjs"
|
|
6
|
+
- "**/*.cjs"
|
|
7
|
+
- "package.json"
|
|
8
|
+
---
|
|
9
|
+
<!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
|
|
10
|
+
|
|
11
|
+
# JavaScript rules
|
|
12
|
+
|
|
13
|
+
Loaded by Claude Code when touching JavaScript files.
|
|
14
|
+
|
|
15
|
+
## Non-negotiables
|
|
16
|
+
|
|
17
|
+
1. **Lint before test.** Run the project's linter (ESLint / Biome) before the test suite. Lint errors are cheaper to surface than test failures.
|
|
18
|
+
2. **No `var`.** Use `const` by default, `let` only when reassignment is necessary.
|
|
19
|
+
3. **Strict equality.** Always `===` and `!==`, never `==` / `!=`.
|
|
20
|
+
4. **No implicit globals.** Every file that modifies state at the top level should explicitly export it.
|
|
21
|
+
5. **Module type matches the project.** If the project is ESM (`"type": "module"` in package.json), use `import`/`export`; if CommonJS, use `require`/`module.exports`. Do not mix without a clear boundary.
|
|
22
|
+
|
|
23
|
+
## Conventions
|
|
24
|
+
|
|
25
|
+
- Prefer arrow functions for callbacks; named `function` declarations for top-level or hoisted functions.
|
|
26
|
+
- `async`/`await` over raw Promise chains.
|
|
27
|
+
- Destructure function arguments when there are 3+ parameters.
|
|
28
|
+
- Never rely on falsy checks for "value exists" — use explicit `=== undefined` / `!= null` where the distinction matters.
|
|
29
|
+
|
|
30
|
+
## Testing
|
|
31
|
+
|
|
32
|
+
- Use the project's configured test runner. Do not add a new one.
|
|
33
|
+
- Mock external boundaries (network, filesystem, time).
|
|
34
|
+
- No `describe.skip` / `it.skip` left behind in committed code.
|
|
35
|
+
|
|
36
|
+
## Dependencies
|
|
37
|
+
|
|
38
|
+
- Check `package.json` before adding imports. Do not install new dependencies without explicit authorization.
|
|
39
|
+
- Pin `peerDependencies` carefully; they affect consumers of the package.
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
# Always use the knowledge base — read before implementing, write after learning
|
|
2
|
-
|
|
3
|
-
# Knowledge Base Usage — Mandatory for All Implementation Work
|
|
4
|
-
|
|
5
|
-
The knowledge base (`rulebook knowledge` + `rulebook learn`) is the project's institutional memory. It prevents repeating mistakes and ensures proven patterns are reused.
|
|
6
|
-
|
|
7
|
-
## BEFORE Starting Any Implementation
|
|
8
|
-
|
|
9
|
-
1. **Check existing knowledge**: `rulebook knowledge list`
|
|
10
|
-
2. **Search for relevant learnings**: `rulebook learn list`
|
|
11
|
-
3. **Apply patterns** that match your task — do NOT reinvent approaches that are already documented
|
|
12
|
-
4. **Avoid anti-patterns** — if a documented anti-pattern matches your planned approach, STOP and choose a different path
|
|
13
|
-
|
|
14
|
-
## DURING Implementation
|
|
15
|
-
|
|
16
|
-
When you discover something non-obvious:
|
|
17
|
-
- A workaround for a framework limitation → `rulebook learn capture`
|
|
18
|
-
- A debugging technique that saved time → `rulebook learn capture`
|
|
19
|
-
- A pattern that emerged and worked well → `rulebook knowledge add pattern`
|
|
20
|
-
- An approach that failed → `rulebook knowledge add anti-pattern`
|
|
21
|
-
|
|
22
|
-
## AFTER Completing a Task (before archive)
|
|
23
|
-
|
|
24
|
-
**Minimum 1 entry per task**. Record at least one of:
|
|
25
|
-
- `rulebook knowledge add pattern "<what worked>"` — reusable approach
|
|
26
|
-
- `rulebook knowledge add anti-pattern "<what failed>"` — approach to avoid
|
|
27
|
-
- `rulebook learn capture --title "<title>" --content "<insight>"` — implementation insight
|
|
28
|
-
- `rulebook decision create` — if a significant architectural choice was made
|
|
29
|
-
|
|
30
|
-
## Forbidden
|
|
31
|
-
|
|
32
|
-
- Starting implementation without checking `rulebook knowledge list`
|
|
33
|
-
- Archiving a task without capturing at least one learning
|
|
34
|
-
- Ignoring documented anti-patterns and repeating known mistakes
|
|
35
|
-
- Discovering a useful pattern and not recording it
|
|
36
|
-
|
|
37
|
-
## Why
|
|
38
|
-
|
|
39
|
-
Without the knowledge base, every session starts from zero. AI agents repeat the same mistakes, rediscover the same patterns, and waste cycles on approaches that were already tried and failed. The knowledge base is what makes the project smarter over time.
|
|
40
|
-
|
|
41
|
-
**"Those who cannot remember the past are condemned to repeat it."**
|
|
1
|
+
# Always use the knowledge base — read before implementing, write after learning
|
|
2
|
+
|
|
3
|
+
# Knowledge Base Usage — Mandatory for All Implementation Work
|
|
4
|
+
|
|
5
|
+
The knowledge base (`rulebook knowledge` + `rulebook learn`) is the project's institutional memory. It prevents repeating mistakes and ensures proven patterns are reused.
|
|
6
|
+
|
|
7
|
+
## BEFORE Starting Any Implementation
|
|
8
|
+
|
|
9
|
+
1. **Check existing knowledge**: `rulebook knowledge list`
|
|
10
|
+
2. **Search for relevant learnings**: `rulebook learn list`
|
|
11
|
+
3. **Apply patterns** that match your task — do NOT reinvent approaches that are already documented
|
|
12
|
+
4. **Avoid anti-patterns** — if a documented anti-pattern matches your planned approach, STOP and choose a different path
|
|
13
|
+
|
|
14
|
+
## DURING Implementation
|
|
15
|
+
|
|
16
|
+
When you discover something non-obvious:
|
|
17
|
+
- A workaround for a framework limitation → `rulebook learn capture`
|
|
18
|
+
- A debugging technique that saved time → `rulebook learn capture`
|
|
19
|
+
- A pattern that emerged and worked well → `rulebook knowledge add pattern`
|
|
20
|
+
- An approach that failed → `rulebook knowledge add anti-pattern`
|
|
21
|
+
|
|
22
|
+
## AFTER Completing a Task (before archive)
|
|
23
|
+
|
|
24
|
+
**Minimum 1 entry per task**. Record at least one of:
|
|
25
|
+
- `rulebook knowledge add pattern "<what worked>"` — reusable approach
|
|
26
|
+
- `rulebook knowledge add anti-pattern "<what failed>"` — approach to avoid
|
|
27
|
+
- `rulebook learn capture --title "<title>" --content "<insight>"` — implementation insight
|
|
28
|
+
- `rulebook decision create` — if a significant architectural choice was made
|
|
29
|
+
|
|
30
|
+
## Forbidden
|
|
31
|
+
|
|
32
|
+
- Starting implementation without checking `rulebook knowledge list`
|
|
33
|
+
- Archiving a task without capturing at least one learning
|
|
34
|
+
- Ignoring documented anti-patterns and repeating known mistakes
|
|
35
|
+
- Discovering a useful pattern and not recording it
|
|
36
|
+
|
|
37
|
+
## Why
|
|
38
|
+
|
|
39
|
+
Without the knowledge base, every session starts from zero. AI agents repeat the same mistakes, rediscover the same patterns, and waste cycles on approaches that were already tried and failed. The knowledge base is what makes the project smarter over time.
|
|
40
|
+
|
|
41
|
+
**"Those who cannot remember the past are condemned to repeat it."**
|