@hivehub/rulebook 4.3.1 → 4.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.
Files changed (60) hide show
  1. package/.claude/commands/rulebook-decision-create.md +55 -0
  2. package/.claude/commands/rulebook-decision-list.md +15 -0
  3. package/.claude/commands/rulebook-knowledge-add.md +41 -0
  4. package/.claude/commands/rulebook-knowledge-list.md +15 -0
  5. package/.claude/commands/rulebook-learn-capture.md +48 -0
  6. package/.claude/commands/rulebook-learn-list.md +13 -0
  7. package/.claude/commands/rulebook-task-archive.md +24 -0
  8. package/.claude-plugin/plugin.json +1 -1
  9. package/README.md +8 -6
  10. package/dist/cli/commands.d.ts +32 -0
  11. package/dist/cli/commands.d.ts.map +1 -1
  12. package/dist/cli/commands.js +171 -0
  13. package/dist/cli/commands.js.map +1 -1
  14. package/dist/core/decision-manager.d.ts +25 -0
  15. package/dist/core/decision-manager.d.ts.map +1 -0
  16. package/dist/core/decision-manager.js +188 -0
  17. package/dist/core/decision-manager.js.map +1 -0
  18. package/dist/core/generator.d.ts.map +1 -1
  19. package/dist/core/generator.js +26 -0
  20. package/dist/core/generator.js.map +1 -1
  21. package/dist/core/indexer/background-indexer.d.ts +7 -0
  22. package/dist/core/indexer/background-indexer.d.ts.map +1 -1
  23. package/dist/core/indexer/background-indexer.js +45 -23
  24. package/dist/core/indexer/background-indexer.js.map +1 -1
  25. package/dist/core/knowledge-manager.d.ts +24 -0
  26. package/dist/core/knowledge-manager.d.ts.map +1 -0
  27. package/dist/core/knowledge-manager.js +173 -0
  28. package/dist/core/knowledge-manager.js.map +1 -0
  29. package/dist/core/learn-manager.d.ts +29 -0
  30. package/dist/core/learn-manager.d.ts.map +1 -0
  31. package/dist/core/learn-manager.js +159 -0
  32. package/dist/core/learn-manager.js.map +1 -0
  33. package/dist/core/workspace/project-worker.d.ts +9 -0
  34. package/dist/core/workspace/project-worker.d.ts.map +1 -1
  35. package/dist/core/workspace/project-worker.js +27 -0
  36. package/dist/core/workspace/project-worker.js.map +1 -1
  37. package/dist/index.js +68 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  40. package/dist/mcp/rulebook-server.js +498 -14
  41. package/dist/mcp/rulebook-server.js.map +1 -1
  42. package/dist/memory/memory-manager.d.ts +3 -0
  43. package/dist/memory/memory-manager.d.ts.map +1 -1
  44. package/dist/memory/memory-manager.js +18 -1
  45. package/dist/memory/memory-manager.js.map +1 -1
  46. package/dist/memory/memory-store.d.ts.map +1 -1
  47. package/dist/memory/memory-store.js +3 -1
  48. package/dist/memory/memory-store.js.map +1 -1
  49. package/dist/types.d.ts +43 -0
  50. package/dist/types.d.ts.map +1 -1
  51. package/package.json +1 -1
  52. package/templates/agents/context-intelligence.md +52 -0
  53. package/templates/commands/rulebook-decision-create.md +55 -0
  54. package/templates/commands/rulebook-decision-list.md +15 -0
  55. package/templates/commands/rulebook-knowledge-add.md +41 -0
  56. package/templates/commands/rulebook-knowledge-list.md +15 -0
  57. package/templates/commands/rulebook-learn-capture.md +48 -0
  58. package/templates/commands/rulebook-learn-list.md +13 -0
  59. package/templates/core/DECISIONS.md +38 -0
  60. package/templates/core/KNOWLEDGE.md +49 -0
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,cAAc;AACd,yBAAyB;AACzB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB;AAClB,yBAAyB;AACzB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB;AACnB,wBAAwB;AACxB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB;AACxB,wBAAwB;AACxB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc;AACd,2BAA2B;AAC3B,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB;AACpB,wBAAwB;AACxB,aAAa;AACb,iBAAiB;AACjB,qBAAqB,EACrB,sBAAsB;AACtB,4BAA4B;AAC5B,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB;AACtB,uCAAuC;AACvC,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,gCAAgC;AAChC,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QACnE,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC,CAAC,mBAAmB;IACtC,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,WAAW,EAAE,wCAAwC,CAAC;KAC7D,MAAM,CAAC,aAAa,EAAE,8DAA8D,CAAC;KACrF,MAAM,CAAC,WAAW,EAAE,mCAAmC,CAAC;KACxD,MAAM,CAAC,SAAS,EAAE,uDAAuD,CAAC;KAC1E,MAAM,CAAC,QAAQ,EAAE,2EAA2E,CAAC;KAC7F,MAAM,CAAC,kBAAkB,EAAE,oDAAoD,CAAC;KAChF,MAAM,CAAC,2BAA2B,EAAE,+CAA+C,CAAC;KACpF,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,0DAA0D,CAAC;KACvE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,uDAAuD,CAAC;KACpE,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,gDAAgD,CAAC;KAC7D,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,0BAA0B,EAAE,+BAA+B,EAAE,IAAI,CAAC;KACzE,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;AAEzF,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,WAAW,EAAE,+BAA+B,CAAC;KACpD,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE/B,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,4CAA4C,CAAC;KACzD,QAAQ,CAAC,QAAQ,EAAE,2CAA2C,CAAC;KAC/D,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE;IACvB,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,cAAc,CAAC,EAAE,IAAI,EAAE,IAAmC,EAAE,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,yBAAyB,EAAE,wCAAwC,CAAC;KAC3E,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAE1F,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAExF,+BAA+B;AAC/B,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,8EAA8E,CAAC;KAC3F,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6DAA6D,CAAC;KAC1E,MAAM,CAAC,WAAW,EAAE,2CAA2C,CAAC;KAChE,MAAM,CAAC,eAAe,EAAE,iEAAiE,CAAC;KAC1F,MAAM,CAAC,uBAAuB,EAAE,8BAA8B,EAAE,IAAI,CAAC;KACrE,MAAM,CAAC,SAAS,EAAE,8CAA8C,CAAC;KACjE,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,YAAY,CAAC;IACX,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;IACxC,KAAK,EAAE,OAAO,CAAC,KAAK;CACrB,CAAC,CACH,CAAC;AAEJ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;KAC9C,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;KACtD,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC;KAC7D,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC;KACpC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC;KACtC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,aAAa,CAAC;IACZ,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,GAAG,EAAE,OAAO,CAAC,GAAG;IAChB,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,MAAM,EAAE,OAAO,CAAC,MAAM;CACvB,CAAC,CACH,CAAC;AAEJ,2BAA2B;AAC3B,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;AAEjF,WAAW;KACR,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KACjE,MAAM,CAAC,CAAC,MAAc,EAAE,OAA6B,EAAE,EAAE,CACxD,iBAAiB,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CACxD,CAAC;AAEJ,WAAW;KACR,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,YAAY,EAAE,wBAAwB,CAAC;KAC9C,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KACjE,MAAM,CAAC,gBAAgB,EAAE,wCAAwC,CAAC;KAClE,MAAM,CAAC,CAAC,OAAwE,EAAE,EAAE,CACnF,eAAe,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,EAAE;IACzC,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,WAAW,EAAE,OAAO,CAAC,WAAW;CACjC,CAAC,CACH,CAAC;AAEJ,WAAW;KACR,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KACjE,MAAM,CAAC,CAAC,MAAc,EAAE,OAA6B,EAAE,EAAE,CACxD,eAAe,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CACtD,CAAC;AAEJ,WAAW;KACR,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KACjE,MAAM,CAAC,CAAC,MAAc,EAAE,OAA6B,EAAE,EAAE,CACxD,mBAAmB,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAC1D,CAAC;AAEJ,WAAW;KACR,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,mBAAmB,EAAE,kCAAkC,CAAC;KAC/D,MAAM,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KACjE,MAAM,CAAC,CAAC,MAAc,EAAE,OAAuD,EAAE,EAAE,CAClF,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAC1F,CAAC;AAEJ,oCAAoC;AACpC,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,QAAQ,EAAE,2BAA2B,CAAC;KAC7C,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;KACjD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,YAAY,CAAC;IACX,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,MAAM,EAAE,OAAO,CAAC,MAAM;CACvB,CAAC,CACH,CAAC;AAEJ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,kDAAkD,CAAC;KAC/D,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,WAAW,EAAE,iDAAiD,CAAC;KACtE,MAAM,CAAC,SAAS,EAAE,uDAAuD,CAAC;KAC1E,MAAM,CAAC,QAAQ,EAAE,2EAA2E,CAAC;KAC7F,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,eAAe;AACf,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;AAEpF,UAAU;KACP,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gEAAgE,CAAC;KAC7E,MAAM,CAAC,aAAa,EAAE,kDAAkD,CAAC;KACzE,MAAM,CAAC,CAAC,OAAgC,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzE,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,kFAAkF,CAAC;KAC/F,MAAM,CAAC,aAAa,EAAE,uCAAuC,CAAC;KAC9D,MAAM,CAAC,GAAG,EAAE;IACX,gBAAgB,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEL,yBAAyB;AACzB,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;AAE3F,YAAY;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,2BAA2B,EAAE,oBAAoB,CAAC;KACzD,MAAM,CAAC,eAAe,EAAE,0BAA0B,CAAC;KACnD,MAAM,CAAC,CAAC,OAAiD,EAAE,EAAE,CAC5D,gBAAgB,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAC3E,CAAC;AAEJ,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzD,YAAY;KACT,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE5D,YAAY;KACT,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE1D,YAAY;KACT,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAExD,yBAAyB;AACzB,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,iCAAiC,CAAC,CAAC;AAE/F,aAAa;KACV,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC;KAChD,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,mCAAmC,EAAE,QAAQ,CAAC;KACtE,MAAM,CAAC,CAAC,KAAa,EAAE,OAAyD,EAAE,EAAE,CACnF,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CACpC,CAAC;AAEJ,aAAa;KACV,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,eAAe,EAAE,+CAA+C,CAAC;KACxE,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC;KACzC,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC;KAC/C,MAAM,CAAC,CAAC,IAAY,EAAE,OAAyD,EAAE,EAAE,CAClF,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CACjC,CAAC;AAEJ,aAAa;KACV,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACzC,MAAM,CAAC,CAAC,OAA0C,EAAE,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAEtF,aAAa;KACV,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEtC,aAAa;KACV,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oDAAoD,CAAC;KACjE,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAEvC,aAAa;KACV,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;KACrD,MAAM,CAAC,CAAC,OAA4B,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3E,aAAa;KACV,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,CAAC;KACjE,MAAM,CAAC,iBAAiB,EAAE,oCAAoC,CAAC;KAC/D,MAAM,CAAC,CAAC,OAA6C,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3F,wCAAwC;AACxC,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;AAE5F,YAAY;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAEpC,YAAY;KACT,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,IAAI,CAAC;KAC1D,MAAM,CAAC,eAAe,EAAE,kCAAkC,EAAE,QAAQ,CAAC;KACrE,MAAM,CAAC,gBAAgB,EAAE,kDAAkD,CAAC;KAC5E,MAAM,CAAC,cAAc,EAAE,wDAAwD,CAAC;KAChF,MAAM,CACL,CAAC,OAA0F,EAAE,EAAE,CAC7F,eAAe,CAAC;IACd,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;IAClF,IAAI,EAAG,OAAO,CAAC,IAAoC,IAAI,QAAQ;IAC/D,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;IACnE,SAAS,EAAE,OAAO,CAAC,SAAS;CAC7B,CAAC,CACL,CAAC;AAEJ,YAAY;KACT,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEtC,YAAY;KACT,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,aAAa,EAAE,wBAAwB,EAAE,IAAI,CAAC;KACrD,MAAM,CAAC,CAAC,OAA2B,EAAE,EAAE,CACtC,mBAAmB,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CACpF,CAAC;AAEJ,YAAY;KACT,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAErC,YAAY;KACT,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEtC,YAAY;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;KAC5C,MAAM,CAAC,yBAAyB,EAAE,qBAAqB,CAAC;KACxD,MAAM,CAAC,aAAa,EAAE,0BAA0B,EAAE,IAAI,CAAC;KACvD,MAAM,CAAC,WAAW,EAAE,gCAAgC,CAAC;KACrD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,wBAAwB,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;IACnD,MAAM,EAAE,OAAO,CAAC,MAAM;CACvB,CAAC,CACH,CAAC;AAEJ,sDAAsD;AACtD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,oCAAoC,CAAC,CAAC;AAEhG,YAAY;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAEpC,YAAY;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAEpC,YAAY;KACT,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAErC,yDAAyD;AACzD,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,0DAA0D,CAAC;KACvE,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;AAEnC,+CAA+C;AAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;AAC/F,WAAW;KACR,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,yEAAyE,CAAC;KACtF,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE;IACvB,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,0BAA0B,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,cAAc,CAAC,IAAuB,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEL,2DAA2D;AAC3D,MAAM,eAAe,GAAG,OAAO;KAC5B,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,yEAAyE,CAAC,CAAC;AAE1F,eAAe;KACZ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAEvC,eAAe;KACZ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oDAAoD,CAAC;KACjE,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAEvC,eAAe;KACZ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAExC,0CAA0C;AAC1C,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,sDAAsD,CAAC;KACnE,MAAM,CAAC,mBAAmB,EAAE,+CAA+C,EAAE,UAAU,CAAC;KACxF,MAAM,CACL,sBAAsB,EACtB,+EAA+E,CAChF;KACA,MAAM,CAAC,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,CAAC;KACvE,MAAM,CAAC,eAAe,EAAE,qCAAqC,EAAE,QAAQ,CAAC;KACxE,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAClB,aAAa,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC,MAAgD;IAChE,MAAM,EAAE,OAAO,CAAC,MAAoD;IACpE,UAAU,EAAE,OAAO,CAAC,UAAU;IAC9B,IAAI,EAAE,OAAO,CAAC,IAAI;CACnB,CAAC,CACH,CAAC;AAEJ,iBAAiB;AACjB,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC;AAEzC,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,EAAE,CAAC,CAAC;AAE1C,4BAA4B;AAC5B,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;AAEpG,gBAAgB;KACb,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,4EAA4E,CAAC;KACzF,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAExC,gBAAgB;KACb,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,CAAC,WAAmB,EAAE,EAAE,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;AAErE,gBAAgB;KACb,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1D,gBAAgB;KACb,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAExC,gBAAgB;KACb,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yDAAyD,CAAC;KACtE,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,EAAE,CAAC,CAAC;AAE1C,uCAAuC;AACvC,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;AAExG,eAAe;KACZ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;KACjD,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC;KACpD,MAAM,CAAC,CAAC,KAAa,EAAE,OAAmD,EAAE,EAAE,CAC7E,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CACtC,CAAC;AAEJ,eAAe;KACZ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,mBAAmB,EAAE,8DAA8D,CAAC;KAC3F,MAAM,CAAC,CAAC,OAA4B,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE1E,eAAe;KACZ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,uBAAuB,CAAC;KACpC,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnD,eAAe;KACZ,OAAO,CAAC,2BAA2B,CAAC;KACpC,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAEpF,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;AAEnG,gBAAgB;KACb,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,uBAAuB,EAAE,sEAAsE,EAAE,MAAM,CAAC;KAC/G,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC;KAC5D,MAAM,CAAC,CAAC,IAAY,EAAE,KAAa,EAAE,OAAoD,EAAE,EAAE,CAC5F,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAC1C,CAAC;AAEJ,gBAAgB;KACb,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;KAChE,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;KACrD,MAAM,CAAC,CAAC,OAA6C,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE5F,gBAAgB;KACb,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;AAEpD,gBAAgB;KACb,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC;AAEtD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;AAE3F,YAAY;KACT,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;KAC3C,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;KACjD,MAAM,CAAC,yBAAyB,EAAE,iBAAiB,CAAC;KACpD,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC;KAC/C,MAAM,CAAC,CAAC,OAAkF,EAAE,EAAE,CAC7F,mBAAmB,CAAC,OAAO,CAAC,CAC7B,CAAC;AAEJ,YAAY;KACT,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,gDAAgD,CAAC;KAC7D,MAAM,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC;AAEzC,YAAY;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,CAAC;KAC1C,MAAM,CAAC,CAAC,OAA2B,EAAE,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAEtE,YAAY;KACT,OAAO,CAAC,uBAAuB,CAAC;KAChC,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,iBAAiB,EAAE,uCAAuC,CAAC;KAClE,MAAM,CAAC,CAAC,EAAU,EAAE,MAAc,EAAE,OAA2B,EAAE,EAAE,CAClE,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CACzC,CAAC;AAEJ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rulebook-server.d.ts","sourceRoot":"","sources":["../../src/mcp/rulebook-server.ts"],"names":[],"mappings":";AAgBA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAalE;AA2CD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAozD5D"}
1
+ {"version":3,"file":"rulebook-server.d.ts","sourceRoot":"","sources":["../../src/mcp/rulebook-server.ts"],"names":[],"mappings":";AAgCA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAalE;AA2CD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2zE5D"}
@@ -9,6 +9,17 @@ import { BackgroundIndexer } from '../core/indexer/background-indexer.js';
9
9
  import { SkillsManager, getDefaultTemplatesPath } from '../core/skills-manager.js';
10
10
  import { TaskManager } from '../core/task-manager.js';
11
11
  import { WorkspaceManager } from '../core/workspace/workspace-manager.js';
12
+ // --- Timeout guard for MCP tool handlers ---
13
+ // Prevents the MCP server from hanging when a tool handler blocks (SQLite, WASM, fs).
14
+ const MCP_TOOL_TIMEOUT_MS = parseInt(process.env.RULEBOOK_MCP_TIMEOUT_MS ?? '10000', 10);
15
+ function withTimeout(promise, ms = MCP_TOOL_TIMEOUT_MS, label = 'tool') {
16
+ return new Promise((resolve, reject) => {
17
+ const timer = setTimeout(() => {
18
+ reject(new Error(`[rulebook-mcp] ${label} timed out after ${ms}ms`));
19
+ }, ms);
20
+ promise.then((val) => { clearTimeout(timer); resolve(val); }, (err) => { clearTimeout(timer); reject(err); });
21
+ });
22
+ }
12
23
  // Find .rulebook file/directory by walking up directories
13
24
  export function findRulebookConfig(startDir) {
14
25
  let current = resolve(startDir);
@@ -141,7 +152,25 @@ export async function startRulebookMcpServer() {
141
152
  }
142
153
  const server = new McpServer({
143
154
  name: 'rulebook-task-management',
144
- version: '4.3.1',
155
+ version: '4.4.1',
156
+ });
157
+ // --- Wrap all tool handlers with timeout guard ---
158
+ // Intercept registerTool to automatically add timeout protection to every handler.
159
+ const originalRegisterTool = server.registerTool.bind(server);
160
+ server.registerTool = ((name, config, handler) => {
161
+ const wrappedHandler = async (...handlerArgs) => {
162
+ try {
163
+ return await withTimeout(handler(...handlerArgs), MCP_TOOL_TIMEOUT_MS, name);
164
+ }
165
+ catch (error) {
166
+ const msg = error instanceof Error ? error.message : String(error);
167
+ console.error(`[rulebook-mcp] ${name} error: ${msg}`);
168
+ return {
169
+ content: [{ type: 'text', text: JSON.stringify({ success: false, error: msg }) }],
170
+ };
171
+ }
172
+ };
173
+ return originalRegisterTool(name, config, wrappedHandler);
145
174
  });
146
175
  // Zod schema reused across tools for workspace project targeting
147
176
  const projectIdSchema = z
@@ -672,9 +701,16 @@ export async function startRulebookMcpServer() {
672
701
  console.error(`[rulebook-mcp] Memory DB: ${memoryDbPath}`);
673
702
  memoryManager = createMemoryManager(projectRoot, rulebookConfig.memory);
674
703
  autoCaptureEnabled = rulebookConfig.memory.autoCapture !== false;
675
- // Boot Background Indexer
704
+ // Boot Background Indexer — deferred to avoid blocking server startup
676
705
  bgIndexer = new BackgroundIndexer(memoryManager, projectRoot, { enabled: true });
677
- bgIndexer.start();
706
+ setTimeout(() => {
707
+ try {
708
+ bgIndexer?.start();
709
+ }
710
+ catch (e) {
711
+ console.error('[rulebook-mcp] BackgroundIndexer start failed:', e);
712
+ }
713
+ }, 5000);
678
714
  global.__indexerStatus = () => bgIndexer?.getStatus();
679
715
  }
680
716
  catch (e) {
@@ -697,24 +733,28 @@ export async function startRulebookMcpServer() {
697
733
  /**
698
734
  * Auto-capture: save tool interactions to memory in the background.
699
735
  * Fire-and-forget — never blocks or fails the original tool call.
736
+ * Has its own 2s timeout to prevent hanging the event loop.
700
737
  */
738
+ const AUTO_CAPTURE_TIMEOUT_MS = 2000;
701
739
  async function autoCapture(toolName, args, resultText) {
702
740
  if (!memoryManager || !autoCaptureEnabled)
703
741
  return;
704
742
  try {
705
- const { captureFromToolCall } = await import('../memory/memory-hooks.js');
706
- const captured = captureFromToolCall(toolName, args, resultText);
707
- if (!captured)
708
- return;
709
- await memoryManager.saveMemory({
710
- type: captured.type,
711
- title: captured.title,
712
- content: captured.content,
713
- tags: captured.tags,
714
- });
743
+ await withTimeout((async () => {
744
+ const { captureFromToolCall } = await import('../memory/memory-hooks.js');
745
+ const captured = captureFromToolCall(toolName, args, resultText);
746
+ if (!captured)
747
+ return;
748
+ await memoryManager.saveMemory({
749
+ type: captured.type,
750
+ title: captured.title,
751
+ content: captured.content,
752
+ tags: captured.tags,
753
+ });
754
+ })(), AUTO_CAPTURE_TIMEOUT_MS, `autoCapture(${toolName})`);
715
755
  }
716
756
  catch {
717
- // Never fail the original tool call
757
+ // Never fail the original tool call — timeout or error is silently dropped
718
758
  }
719
759
  }
720
760
  function memoryNotEnabled() {
@@ -1640,6 +1680,450 @@ export async function startRulebookMcpServer() {
1640
1680
  }
1641
1681
  });
1642
1682
  }
1683
+ // ============================================
1684
+ // Context Intelligence Layer Tools (v4.4)
1685
+ // ============================================
1686
+ // Register tool: rulebook_decision_create
1687
+ server.registerTool('rulebook_decision_create', {
1688
+ title: 'Create Decision Record',
1689
+ description: 'Create a new architectural decision record (ADR)',
1690
+ inputSchema: {
1691
+ title: z.string().describe('Decision title'),
1692
+ context: z.string().optional().describe('Context and problem statement'),
1693
+ decision: z.string().optional().describe('The decision made'),
1694
+ alternatives: z.array(z.string()).optional().describe('Alternatives considered'),
1695
+ consequences: z.string().optional().describe('Consequences and tradeoffs'),
1696
+ relatedTasks: z.array(z.string()).optional().describe('Related task IDs'),
1697
+ projectId: projectIdSchema,
1698
+ },
1699
+ }, async (args) => {
1700
+ try {
1701
+ const root = args.projectId && workspaceManager
1702
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1703
+ : projectRoot;
1704
+ const { DecisionManager } = await import('../core/decision-manager.js');
1705
+ const dm = new DecisionManager(root);
1706
+ const decision = await dm.create(args.title, {
1707
+ context: args.context,
1708
+ decision: args.decision,
1709
+ alternatives: args.alternatives,
1710
+ consequences: args.consequences,
1711
+ relatedTasks: args.relatedTasks,
1712
+ });
1713
+ return {
1714
+ content: [
1715
+ {
1716
+ type: 'text',
1717
+ text: JSON.stringify({ success: true, decision }),
1718
+ },
1719
+ ],
1720
+ };
1721
+ }
1722
+ catch (error) {
1723
+ return {
1724
+ content: [
1725
+ {
1726
+ type: 'text',
1727
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1728
+ },
1729
+ ],
1730
+ };
1731
+ }
1732
+ });
1733
+ // Register tool: rulebook_decision_list
1734
+ server.registerTool('rulebook_decision_list', {
1735
+ title: 'List Decision Records',
1736
+ description: 'List all architectural decision records',
1737
+ inputSchema: {
1738
+ status: z.string().optional().describe('Filter by status (proposed, accepted, rejected, superseded, deprecated)'),
1739
+ projectId: projectIdSchema,
1740
+ },
1741
+ }, async (args) => {
1742
+ try {
1743
+ const root = args.projectId && workspaceManager
1744
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1745
+ : projectRoot;
1746
+ const { DecisionManager } = await import('../core/decision-manager.js');
1747
+ const dm = new DecisionManager(root);
1748
+ const decisions = await dm.list(args.status);
1749
+ return {
1750
+ content: [
1751
+ {
1752
+ type: 'text',
1753
+ text: JSON.stringify({ success: true, decisions, count: decisions.length }),
1754
+ },
1755
+ ],
1756
+ };
1757
+ }
1758
+ catch (error) {
1759
+ return {
1760
+ content: [
1761
+ {
1762
+ type: 'text',
1763
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1764
+ },
1765
+ ],
1766
+ };
1767
+ }
1768
+ });
1769
+ // Register tool: rulebook_decision_show
1770
+ server.registerTool('rulebook_decision_show', {
1771
+ title: 'Show Decision Record',
1772
+ description: 'Show full details of a decision record',
1773
+ inputSchema: {
1774
+ id: z.number().describe('Decision ID'),
1775
+ projectId: projectIdSchema,
1776
+ },
1777
+ }, async (args) => {
1778
+ try {
1779
+ const root = args.projectId && workspaceManager
1780
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1781
+ : projectRoot;
1782
+ const { DecisionManager } = await import('../core/decision-manager.js');
1783
+ const dm = new DecisionManager(root);
1784
+ const result = await dm.show(args.id);
1785
+ if (!result) {
1786
+ return {
1787
+ content: [
1788
+ {
1789
+ type: 'text',
1790
+ text: JSON.stringify({ success: false, error: `Decision ${args.id} not found` }),
1791
+ },
1792
+ ],
1793
+ };
1794
+ }
1795
+ return {
1796
+ content: [
1797
+ {
1798
+ type: 'text',
1799
+ text: JSON.stringify({ success: true, decision: result.decision, content: result.content }),
1800
+ },
1801
+ ],
1802
+ };
1803
+ }
1804
+ catch (error) {
1805
+ return {
1806
+ content: [
1807
+ {
1808
+ type: 'text',
1809
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1810
+ },
1811
+ ],
1812
+ };
1813
+ }
1814
+ });
1815
+ // Register tool: rulebook_decision_update
1816
+ server.registerTool('rulebook_decision_update', {
1817
+ title: 'Update Decision Record',
1818
+ description: 'Update an existing architectural decision record',
1819
+ inputSchema: {
1820
+ id: z.number().describe('Decision ID to update'),
1821
+ status: z.string().optional().describe('New status (proposed, accepted, rejected, superseded, deprecated)'),
1822
+ context: z.string().optional().describe('Updated context'),
1823
+ decision: z.string().optional().describe('Updated decision text'),
1824
+ projectId: projectIdSchema,
1825
+ },
1826
+ }, async (args) => {
1827
+ try {
1828
+ const root = args.projectId && workspaceManager
1829
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1830
+ : projectRoot;
1831
+ const { DecisionManager } = await import('../core/decision-manager.js');
1832
+ const dm = new DecisionManager(root);
1833
+ const updated = await dm.update(args.id, {
1834
+ status: args.status,
1835
+ context: args.context,
1836
+ decision: args.decision,
1837
+ });
1838
+ if (!updated) {
1839
+ return {
1840
+ content: [
1841
+ {
1842
+ type: 'text',
1843
+ text: JSON.stringify({ success: false, error: `Decision ${args.id} not found` }),
1844
+ },
1845
+ ],
1846
+ };
1847
+ }
1848
+ return {
1849
+ content: [
1850
+ {
1851
+ type: 'text',
1852
+ text: JSON.stringify({ success: true, decision: updated }),
1853
+ },
1854
+ ],
1855
+ };
1856
+ }
1857
+ catch (error) {
1858
+ return {
1859
+ content: [
1860
+ {
1861
+ type: 'text',
1862
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1863
+ },
1864
+ ],
1865
+ };
1866
+ }
1867
+ });
1868
+ // Register tool: rulebook_knowledge_add
1869
+ server.registerTool('rulebook_knowledge_add', {
1870
+ title: 'Add Knowledge Entry',
1871
+ description: 'Add a new pattern or anti-pattern to the project knowledge base',
1872
+ inputSchema: {
1873
+ type: z.string().describe('Knowledge type: "pattern" or "anti-pattern"'),
1874
+ title: z.string().describe('Entry title'),
1875
+ category: z.string().describe('Category (e.g. code, architecture, testing, security)'),
1876
+ description: z.string().describe('Description of the pattern'),
1877
+ example: z.string().optional().describe('Code or usage example'),
1878
+ whenToUse: z.string().optional().describe('When to use this pattern'),
1879
+ whenNotToUse: z.string().optional().describe('When NOT to use this pattern'),
1880
+ tags: z.array(z.string()).optional().describe('Tags for search'),
1881
+ projectId: projectIdSchema,
1882
+ },
1883
+ }, async (args) => {
1884
+ try {
1885
+ const root = args.projectId && workspaceManager
1886
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1887
+ : projectRoot;
1888
+ const { KnowledgeManager } = await import('../core/knowledge-manager.js');
1889
+ const km = new KnowledgeManager(root);
1890
+ const entry = await km.add(args.type, args.title, {
1891
+ category: args.category,
1892
+ description: args.description,
1893
+ example: args.example,
1894
+ whenToUse: args.whenToUse,
1895
+ whenNotToUse: args.whenNotToUse,
1896
+ tags: args.tags,
1897
+ });
1898
+ return {
1899
+ content: [
1900
+ {
1901
+ type: 'text',
1902
+ text: JSON.stringify({ success: true, entry }),
1903
+ },
1904
+ ],
1905
+ };
1906
+ }
1907
+ catch (error) {
1908
+ return {
1909
+ content: [
1910
+ {
1911
+ type: 'text',
1912
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1913
+ },
1914
+ ],
1915
+ };
1916
+ }
1917
+ });
1918
+ // Register tool: rulebook_knowledge_list
1919
+ server.registerTool('rulebook_knowledge_list', {
1920
+ title: 'List Knowledge Entries',
1921
+ description: 'List patterns and anti-patterns in the project knowledge base',
1922
+ inputSchema: {
1923
+ type: z.string().optional().describe('Filter by type: "pattern" or "anti-pattern"'),
1924
+ category: z.string().optional().describe('Filter by category'),
1925
+ projectId: projectIdSchema,
1926
+ },
1927
+ }, async (args) => {
1928
+ try {
1929
+ const root = args.projectId && workspaceManager
1930
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1931
+ : projectRoot;
1932
+ const { KnowledgeManager } = await import('../core/knowledge-manager.js');
1933
+ const km = new KnowledgeManager(root);
1934
+ const entries = await km.list(args.type, args.category);
1935
+ return {
1936
+ content: [
1937
+ {
1938
+ type: 'text',
1939
+ text: JSON.stringify({ success: true, entries, count: entries.length }),
1940
+ },
1941
+ ],
1942
+ };
1943
+ }
1944
+ catch (error) {
1945
+ return {
1946
+ content: [
1947
+ {
1948
+ type: 'text',
1949
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1950
+ },
1951
+ ],
1952
+ };
1953
+ }
1954
+ });
1955
+ // Register tool: rulebook_knowledge_show
1956
+ server.registerTool('rulebook_knowledge_show', {
1957
+ title: 'Show Knowledge Entry',
1958
+ description: 'Show full details of a knowledge entry',
1959
+ inputSchema: {
1960
+ id: z.string().describe('Knowledge entry ID (slug)'),
1961
+ projectId: projectIdSchema,
1962
+ },
1963
+ }, async (args) => {
1964
+ try {
1965
+ const root = args.projectId && workspaceManager
1966
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
1967
+ : projectRoot;
1968
+ const { KnowledgeManager } = await import('../core/knowledge-manager.js');
1969
+ const km = new KnowledgeManager(root);
1970
+ const result = await km.show(args.id);
1971
+ if (!result) {
1972
+ return {
1973
+ content: [
1974
+ {
1975
+ type: 'text',
1976
+ text: JSON.stringify({ success: false, error: `Knowledge entry "${args.id}" not found` }),
1977
+ },
1978
+ ],
1979
+ };
1980
+ }
1981
+ return {
1982
+ content: [
1983
+ {
1984
+ type: 'text',
1985
+ text: JSON.stringify({ success: true, entry: result.entry, content: result.content }),
1986
+ },
1987
+ ],
1988
+ };
1989
+ }
1990
+ catch (error) {
1991
+ return {
1992
+ content: [
1993
+ {
1994
+ type: 'text',
1995
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
1996
+ },
1997
+ ],
1998
+ };
1999
+ }
2000
+ });
2001
+ // Register tool: rulebook_learn_capture
2002
+ server.registerTool('rulebook_learn_capture', {
2003
+ title: 'Capture Learning',
2004
+ description: 'Capture a learning or insight for future reference',
2005
+ inputSchema: {
2006
+ title: z.string().describe('Brief title for the learning'),
2007
+ content: z.string().describe('Full content of the learning'),
2008
+ tags: z.array(z.string()).optional().describe('Tags for search'),
2009
+ relatedTask: z.string().optional().describe('Related task ID'),
2010
+ projectId: projectIdSchema,
2011
+ },
2012
+ }, async (args) => {
2013
+ try {
2014
+ const root = args.projectId && workspaceManager
2015
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
2016
+ : projectRoot;
2017
+ const { LearnManager } = await import('../core/learn-manager.js');
2018
+ const lm = new LearnManager(root);
2019
+ const learning = await lm.capture(args.title, args.content, {
2020
+ tags: args.tags,
2021
+ relatedTask: args.relatedTask,
2022
+ });
2023
+ return {
2024
+ content: [
2025
+ {
2026
+ type: 'text',
2027
+ text: JSON.stringify({ success: true, learning }),
2028
+ },
2029
+ ],
2030
+ };
2031
+ }
2032
+ catch (error) {
2033
+ return {
2034
+ content: [
2035
+ {
2036
+ type: 'text',
2037
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
2038
+ },
2039
+ ],
2040
+ };
2041
+ }
2042
+ });
2043
+ // Register tool: rulebook_learn_list
2044
+ server.registerTool('rulebook_learn_list', {
2045
+ title: 'List Learnings',
2046
+ description: 'List captured learnings, newest first',
2047
+ inputSchema: {
2048
+ limit: z.number().optional().describe('Maximum number of learnings to return'),
2049
+ projectId: projectIdSchema,
2050
+ },
2051
+ }, async (args) => {
2052
+ try {
2053
+ const root = args.projectId && workspaceManager
2054
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
2055
+ : projectRoot;
2056
+ const { LearnManager } = await import('../core/learn-manager.js');
2057
+ const lm = new LearnManager(root);
2058
+ const learnings = await lm.list(args.limit);
2059
+ return {
2060
+ content: [
2061
+ {
2062
+ type: 'text',
2063
+ text: JSON.stringify({ success: true, learnings, count: learnings.length }),
2064
+ },
2065
+ ],
2066
+ };
2067
+ }
2068
+ catch (error) {
2069
+ return {
2070
+ content: [
2071
+ {
2072
+ type: 'text',
2073
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
2074
+ },
2075
+ ],
2076
+ };
2077
+ }
2078
+ });
2079
+ // Register tool: rulebook_learn_promote
2080
+ server.registerTool('rulebook_learn_promote', {
2081
+ title: 'Promote Learning',
2082
+ description: 'Promote a learning to a knowledge entry or decision record',
2083
+ inputSchema: {
2084
+ id: z.string().describe('Learning ID to promote'),
2085
+ target: z.enum(['knowledge', 'decision']).describe('Promote to knowledge base or decision record'),
2086
+ title: z.string().optional().describe('Override title for the promoted entry'),
2087
+ projectId: projectIdSchema,
2088
+ },
2089
+ }, async (args) => {
2090
+ try {
2091
+ const root = args.projectId && workspaceManager
2092
+ ? (await workspaceManager.getWorker(args.projectId)).projectRoot
2093
+ : projectRoot;
2094
+ const { LearnManager } = await import('../core/learn-manager.js');
2095
+ const lm = new LearnManager(root);
2096
+ const result = await lm.promote(args.id, args.target, { title: args.title });
2097
+ if (!result) {
2098
+ return {
2099
+ content: [
2100
+ {
2101
+ type: 'text',
2102
+ text: JSON.stringify({ success: false, error: `Learning "${args.id}" not found` }),
2103
+ },
2104
+ ],
2105
+ };
2106
+ }
2107
+ return {
2108
+ content: [
2109
+ {
2110
+ type: 'text',
2111
+ text: JSON.stringify({ success: true, promoted: result }),
2112
+ },
2113
+ ],
2114
+ };
2115
+ }
2116
+ catch (error) {
2117
+ return {
2118
+ content: [
2119
+ {
2120
+ type: 'text',
2121
+ text: JSON.stringify({ success: false, error: error instanceof Error ? error.message : String(error) }),
2122
+ },
2123
+ ],
2124
+ };
2125
+ }
2126
+ });
1643
2127
  const transport = new StdioServerTransport();
1644
2128
  await server.connect(transport);
1645
2129
  }