@hivehub/rulebook 2.1.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/README.md +779 -661
  2. package/dist/cli/commands.d.ts +22 -0
  3. package/dist/cli/commands.d.ts.map +1 -1
  4. package/dist/cli/commands.js +291 -8
  5. package/dist/cli/commands.js.map +1 -1
  6. package/dist/core/claude-mcp.d.ts +32 -0
  7. package/dist/core/claude-mcp.d.ts.map +1 -0
  8. package/dist/core/claude-mcp.js +92 -0
  9. package/dist/core/claude-mcp.js.map +1 -0
  10. package/dist/core/config-manager.d.ts.map +1 -1
  11. package/dist/core/config-manager.js +27 -6
  12. package/dist/core/config-manager.js.map +1 -1
  13. package/dist/core/generator.d.ts.map +1 -1
  14. package/dist/core/generator.js +98 -49
  15. package/dist/core/generator.js.map +1 -1
  16. package/dist/core/migrator.d.ts +13 -0
  17. package/dist/core/migrator.d.ts.map +1 -1
  18. package/dist/core/migrator.js +76 -9
  19. package/dist/core/migrator.js.map +1 -1
  20. package/dist/core/openspec-migrator.d.ts +1 -1
  21. package/dist/core/openspec-migrator.d.ts.map +1 -1
  22. package/dist/core/openspec-migrator.js +14 -7
  23. package/dist/core/openspec-migrator.js.map +1 -1
  24. package/dist/core/workflow-generator.js +297 -261
  25. package/dist/core/workflow-generator.js.map +1 -1
  26. package/dist/index.js +40 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  29. package/dist/mcp/rulebook-server.js +255 -74
  30. package/dist/mcp/rulebook-server.js.map +1 -1
  31. package/dist/memory/hnsw-index.d.ts +63 -0
  32. package/dist/memory/hnsw-index.d.ts.map +1 -0
  33. package/dist/memory/hnsw-index.js +421 -0
  34. package/dist/memory/hnsw-index.js.map +1 -0
  35. package/dist/memory/memory-cache.d.ts +33 -0
  36. package/dist/memory/memory-cache.d.ts.map +1 -0
  37. package/dist/memory/memory-cache.js +85 -0
  38. package/dist/memory/memory-cache.js.map +1 -0
  39. package/dist/memory/memory-hooks.d.ts +42 -0
  40. package/dist/memory/memory-hooks.d.ts.map +1 -0
  41. package/dist/memory/memory-hooks.js +193 -0
  42. package/dist/memory/memory-hooks.js.map +1 -0
  43. package/dist/memory/memory-manager.d.ts +55 -0
  44. package/dist/memory/memory-manager.d.ts.map +1 -0
  45. package/dist/memory/memory-manager.js +209 -0
  46. package/dist/memory/memory-manager.js.map +1 -0
  47. package/dist/memory/memory-search.d.ts +42 -0
  48. package/dist/memory/memory-search.d.ts.map +1 -0
  49. package/dist/memory/memory-search.js +166 -0
  50. package/dist/memory/memory-search.js.map +1 -0
  51. package/dist/memory/memory-store.d.ts +59 -0
  52. package/dist/memory/memory-store.d.ts.map +1 -0
  53. package/dist/memory/memory-store.js +394 -0
  54. package/dist/memory/memory-store.js.map +1 -0
  55. package/dist/memory/memory-types.d.ts +69 -0
  56. package/dist/memory/memory-types.d.ts.map +1 -0
  57. package/dist/memory/memory-types.js +7 -0
  58. package/dist/memory/memory-types.js.map +1 -0
  59. package/dist/memory/memory-vectorizer.d.ts +29 -0
  60. package/dist/memory/memory-vectorizer.d.ts.map +1 -0
  61. package/dist/memory/memory-vectorizer.js +104 -0
  62. package/dist/memory/memory-vectorizer.js.map +1 -0
  63. package/dist/types.d.ts +7 -0
  64. package/dist/types.d.ts.map +1 -1
  65. package/package.json +107 -106
  66. package/templates/commands/rulebook-memory-save.md +48 -0
  67. package/templates/commands/rulebook-memory-search.md +47 -0
  68. package/templates/commands/rulebook-task-apply.md +2 -2
  69. package/templates/commands/rulebook-task-archive.md +2 -2
  70. package/templates/commands/rulebook-task-create.md +2 -2
  71. package/templates/commands/rulebook-task-list.md +2 -2
  72. package/templates/commands/rulebook-task-show.md +2 -2
  73. package/templates/commands/rulebook-task-validate.md +2 -2
  74. package/templates/git/CI_CD_PATTERNS.md +4 -4
  75. package/templates/git/GITHUB_ACTIONS.md +3 -3
  76. package/templates/git/GITLAB_CI.md +4 -4
  77. package/templates/git/SECRETS_MANAGEMENT.md +4 -4
  78. package/templates/hooks/COMMIT_MSG.md +4 -4
  79. package/templates/hooks/POST_CHECKOUT.md +3 -3
  80. package/templates/hooks/PREPARE_COMMIT_MSG.md +3 -3
  81. package/templates/hooks/PRE_COMMIT.md +4 -4
  82. package/templates/hooks/PRE_PUSH.md +4 -4
  83. package/templates/modules/MEMORY.md +63 -0
  84. package/templates/skills/cli/aider/SKILL.md +59 -0
  85. package/templates/skills/cli/amazon-q/SKILL.md +35 -0
  86. package/templates/skills/cli/auggie/SKILL.md +42 -0
  87. package/templates/skills/cli/claude/SKILL.md +42 -0
  88. package/templates/skills/cli/claude-code/SKILL.md +146 -0
  89. package/templates/skills/cli/cline/SKILL.md +42 -0
  90. package/templates/skills/cli/codebuddy/SKILL.md +30 -0
  91. package/templates/skills/cli/codeium/SKILL.md +30 -0
  92. package/templates/skills/cli/codex/SKILL.md +31 -0
  93. package/templates/skills/cli/continue/SKILL.md +44 -0
  94. package/templates/skills/cli/cursor-cli/SKILL.md +38 -0
  95. package/templates/skills/cli/factory/SKILL.md +28 -0
  96. package/templates/skills/cli/gemini/SKILL.md +45 -0
  97. package/templates/skills/cli/kilocode/SKILL.md +28 -0
  98. package/templates/skills/cli/opencode/SKILL.md +28 -0
  99. package/templates/skills/core/agent-automation/SKILL.md +194 -0
  100. package/templates/skills/core/dag/SKILL.md +314 -0
  101. package/templates/skills/core/documentation-rules/SKILL.md +47 -0
  102. package/templates/skills/core/quality-enforcement/SKILL.md +78 -0
  103. package/templates/skills/frameworks/angular/SKILL.md +46 -0
  104. package/templates/skills/frameworks/django/SKILL.md +93 -0
  105. package/templates/skills/frameworks/electron/SKILL.md +157 -0
  106. package/templates/skills/frameworks/flask/SKILL.md +48 -0
  107. package/templates/skills/frameworks/flutter/SKILL.md +65 -0
  108. package/templates/skills/frameworks/jquery/SKILL.md +42 -0
  109. package/templates/skills/frameworks/laravel/SKILL.md +48 -0
  110. package/templates/skills/frameworks/nestjs/SKILL.md +53 -0
  111. package/templates/skills/frameworks/nextjs/SKILL.md +137 -0
  112. package/templates/skills/frameworks/nuxt/SKILL.md +50 -0
  113. package/templates/skills/frameworks/rails/SKILL.md +76 -0
  114. package/templates/skills/frameworks/react/SKILL.md +48 -0
  115. package/templates/skills/frameworks/react-native/SKILL.md +57 -0
  116. package/templates/skills/frameworks/spring/SKILL.md +49 -0
  117. package/templates/skills/frameworks/symfony/SKILL.md +46 -0
  118. package/templates/skills/frameworks/vue/SKILL.md +46 -0
  119. package/templates/skills/frameworks/zend/SKILL.md +45 -0
  120. package/templates/skills/ides/copilot/SKILL.md +47 -0
  121. package/templates/skills/ides/cursor/SKILL.md +53 -0
  122. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -0
  123. package/templates/skills/ides/replit/SKILL.md +46 -0
  124. package/templates/skills/ides/tabnine/SKILL.md +39 -0
  125. package/templates/skills/ides/vscode/SKILL.md +50 -0
  126. package/templates/skills/ides/windsurf/SKILL.md +46 -0
  127. package/templates/skills/ides/zed/SKILL.md +42 -0
  128. package/templates/skills/languages/ada/SKILL.md +68 -0
  129. package/templates/skills/languages/c/SKILL.md +343 -0
  130. package/templates/skills/languages/cpp/SKILL.md +753 -0
  131. package/templates/skills/languages/csharp/SKILL.md +427 -0
  132. package/templates/skills/languages/dart/SKILL.md +342 -0
  133. package/templates/skills/languages/elixir/SKILL.md +464 -0
  134. package/templates/skills/languages/erlang/SKILL.md +371 -0
  135. package/templates/skills/languages/go/SKILL.md +655 -0
  136. package/templates/skills/languages/haskell/SKILL.md +187 -0
  137. package/templates/skills/languages/java/SKILL.md +617 -0
  138. package/templates/skills/languages/javascript/SKILL.md +641 -0
  139. package/templates/skills/languages/julia/SKILL.md +107 -0
  140. package/templates/skills/languages/kotlin/SKILL.md +521 -0
  141. package/templates/skills/languages/lisp/SKILL.md +110 -0
  142. package/templates/skills/languages/lua/SKILL.md +84 -0
  143. package/templates/skills/languages/objectivec/SKILL.md +100 -0
  144. package/templates/skills/languages/php/SKILL.md +426 -0
  145. package/templates/skills/languages/python/SKILL.md +692 -0
  146. package/templates/skills/languages/r/SKILL.md +360 -0
  147. package/templates/skills/languages/ruby/SKILL.md +431 -0
  148. package/templates/skills/languages/rust/SKILL.md +487 -0
  149. package/templates/skills/languages/sas/SKILL.md +83 -0
  150. package/templates/skills/languages/scala/SKILL.md +358 -0
  151. package/templates/skills/languages/solidity/SKILL.md +590 -0
  152. package/templates/skills/languages/sql/SKILL.md +147 -0
  153. package/templates/skills/languages/swift/SKILL.md +476 -0
  154. package/templates/skills/languages/zig/SKILL.md +275 -0
  155. package/templates/skills/modules/atlassian/SKILL.md +265 -0
  156. package/templates/skills/modules/context7/SKILL.md +64 -0
  157. package/templates/skills/modules/figma/SKILL.md +277 -0
  158. package/templates/skills/modules/github-mcp/SKILL.md +74 -0
  159. package/templates/skills/modules/grafana/SKILL.md +338 -0
  160. package/templates/skills/modules/memory/SKILL.md +73 -0
  161. package/templates/skills/modules/notion/SKILL.md +257 -0
  162. package/templates/skills/modules/playwright/SKILL.md +100 -0
  163. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -0
  164. package/templates/skills/modules/serena/SKILL.md +347 -0
  165. package/templates/skills/modules/supabase/SKILL.md +233 -0
  166. package/templates/skills/modules/synap/SKILL.md +79 -0
  167. package/templates/skills/modules/vectorizer/SKILL.md +73 -0
  168. package/templates/skills/services/azure-blob/SKILL.md +194 -0
  169. package/templates/skills/services/cassandra/SKILL.md +249 -0
  170. package/templates/skills/services/dynamodb/SKILL.md +318 -0
  171. package/templates/skills/services/elasticsearch/SKILL.md +357 -0
  172. package/templates/skills/services/gcs/SKILL.md +188 -0
  173. package/templates/skills/services/influxdb/SKILL.md +275 -0
  174. package/templates/skills/services/kafka/SKILL.md +351 -0
  175. package/templates/skills/services/mariadb/SKILL.md +193 -0
  176. package/templates/skills/services/memcached/SKILL.md +252 -0
  177. package/templates/skills/services/minio/SKILL.md +211 -0
  178. package/templates/skills/services/mongodb/SKILL.md +278 -0
  179. package/templates/skills/services/mysql/SKILL.md +368 -0
  180. package/templates/skills/services/neo4j/SKILL.md +257 -0
  181. package/templates/skills/services/oracle/SKILL.md +300 -0
  182. package/templates/skills/services/postgresql/SKILL.md +336 -0
  183. package/templates/skills/services/rabbitmq/SKILL.md +296 -0
  184. package/templates/skills/services/redis/SKILL.md +302 -0
  185. package/templates/skills/services/s3/SKILL.md +308 -0
  186. package/templates/skills/services/sqlite/SKILL.md +304 -0
  187. package/templates/skills/services/sqlserver/SKILL.md +304 -0
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Memory System Type Definitions
3
+ *
4
+ * Core types for the persistent memory system with BM25 + HNSW hybrid search.
5
+ */
6
+ export type MemoryType = 'bugfix' | 'feature' | 'refactor' | 'decision' | 'discovery' | 'change' | 'observation';
7
+ export type SearchMode = 'bm25' | 'vector' | 'hybrid';
8
+ export interface Memory {
9
+ id: string;
10
+ type: MemoryType;
11
+ title: string;
12
+ content: string;
13
+ project: string;
14
+ tags: string[];
15
+ sessionId?: string;
16
+ createdAt: number;
17
+ updatedAt: number;
18
+ accessedAt: number;
19
+ }
20
+ export interface MemorySession {
21
+ id: string;
22
+ project: string;
23
+ status: 'active' | 'completed';
24
+ startedAt: number;
25
+ endedAt?: number;
26
+ summary?: string;
27
+ toolCalls: number;
28
+ }
29
+ export interface MemorySearchResult {
30
+ id: string;
31
+ title: string;
32
+ type: MemoryType;
33
+ score: number;
34
+ matchType: 'bm25' | 'vector' | 'both';
35
+ createdAt: number;
36
+ }
37
+ export interface MemorySearchOptions {
38
+ query: string;
39
+ mode?: SearchMode;
40
+ type?: MemoryType;
41
+ limit?: number;
42
+ project?: string;
43
+ }
44
+ export interface MemoryConfig {
45
+ enabled?: boolean;
46
+ dbPath?: string;
47
+ maxSizeBytes?: number;
48
+ autoCapture?: boolean;
49
+ vectorDimensions?: number;
50
+ }
51
+ export interface MemoryStats {
52
+ dbSizeBytes: number;
53
+ memoryCount: number;
54
+ sessionCount: number;
55
+ oldestMemory?: number;
56
+ newestMemory?: number;
57
+ maxSizeBytes: number;
58
+ usagePercent: number;
59
+ indexHealth: 'good' | 'degraded' | 'needs-rebuild';
60
+ }
61
+ export interface TimelineEntry {
62
+ id: string;
63
+ title: string;
64
+ type: MemoryType;
65
+ createdAt: number;
66
+ position: 'before' | 'anchor' | 'after';
67
+ distanceFromAnchor: number;
68
+ }
69
+ //# sourceMappingURL=memory-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-types.d.ts","sourceRoot":"","sources":["../../src/memory/memory-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,SAAS,GACT,UAAU,GACV,UAAU,GACV,WAAW,GACX,QAAQ,GACR,aAAa,CAAC;AAElB,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC;CACpD;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Memory System Type Definitions
3
+ *
4
+ * Core types for the persistent memory system with BM25 + HNSW hybrid search.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=memory-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-types.js","sourceRoot":"","sources":["../../src/memory/memory-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * TF-IDF Vectorizer with Feature Hashing (FNV1a)
3
+ *
4
+ * Generates fixed-dimension text embeddings using TF-IDF weighting
5
+ * with feature hashing (hashing trick). Zero external dependencies.
6
+ */
7
+ /**
8
+ * FNV-1a hash function - fast, simple, good distribution
9
+ */
10
+ export declare function fnv1a(str: string): number;
11
+ /**
12
+ * Tokenize text: lowercase, split on non-word chars, remove stop words
13
+ */
14
+ export declare function tokenize(text: string): string[];
15
+ /**
16
+ * Vectorize text using TF-IDF with feature hashing
17
+ *
18
+ * 1. Tokenize and compute term frequencies
19
+ * 2. Hash each token to a bucket via FNV1a
20
+ * 3. Apply TF weight (1 + log(tf)) to bucket
21
+ * 4. L2-normalize the result
22
+ */
23
+ export declare function vectorize(text: string, dimensions?: number): Float32Array;
24
+ /**
25
+ * Cosine similarity between two vectors
26
+ * Returns value between -1 and 1 (1 = identical, 0 = orthogonal)
27
+ */
28
+ export declare function cosineSimilarity(a: Float32Array, b: Float32Array): number;
29
+ //# sourceMappingURL=memory-vectorizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-vectorizer.d.ts","sourceRoot":"","sources":["../../src/memory/memory-vectorizer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH;;GAEG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOzC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAK/C;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,MAA2B,GACtC,YAAY,CAqCd;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAmBzE"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * TF-IDF Vectorizer with Feature Hashing (FNV1a)
3
+ *
4
+ * Generates fixed-dimension text embeddings using TF-IDF weighting
5
+ * with feature hashing (hashing trick). Zero external dependencies.
6
+ */
7
+ const DEFAULT_DIMENSIONS = 256;
8
+ const STOP_WORDS = new Set([
9
+ 'a', 'an', 'the', 'and', 'or', 'but', 'in', 'on', 'at', 'to', 'for',
10
+ 'of', 'with', 'by', 'from', 'is', 'it', 'as', 'be', 'was', 'were',
11
+ 'been', 'are', 'am', 'do', 'does', 'did', 'have', 'has', 'had',
12
+ 'will', 'would', 'could', 'should', 'may', 'might', 'shall', 'can',
13
+ 'not', 'no', 'nor', 'so', 'if', 'then', 'than', 'that', 'this',
14
+ 'these', 'those', 'what', 'which', 'who', 'whom', 'when', 'where',
15
+ 'why', 'how', 'all', 'each', 'every', 'both', 'few', 'more', 'most',
16
+ 'some', 'any', 'such', 'only', 'own', 'same', 'too', 'very',
17
+ 'just', 'about', 'above', 'after', 'again', 'also', 'because',
18
+ 'before', 'between', 'during', 'into', 'out', 'over', 'under',
19
+ 'up', 'down', 'here', 'there', 'other', 'its', 'my', 'your',
20
+ 'his', 'her', 'our', 'their', 'i', 'you', 'he', 'she', 'we', 'they',
21
+ 'me', 'him', 'us', 'them',
22
+ ]);
23
+ /**
24
+ * FNV-1a hash function - fast, simple, good distribution
25
+ */
26
+ export function fnv1a(str) {
27
+ let hash = 0x811c9dc5; // FNV offset basis (32-bit)
28
+ for (let i = 0; i < str.length; i++) {
29
+ hash ^= str.charCodeAt(i);
30
+ hash = (hash * 0x01000193) | 0; // FNV prime, force 32-bit
31
+ }
32
+ return hash >>> 0; // unsigned
33
+ }
34
+ /**
35
+ * Tokenize text: lowercase, split on non-word chars, remove stop words
36
+ */
37
+ export function tokenize(text) {
38
+ return text
39
+ .toLowerCase()
40
+ .split(/\W+/)
41
+ .filter((token) => token.length > 1 && !STOP_WORDS.has(token));
42
+ }
43
+ /**
44
+ * Vectorize text using TF-IDF with feature hashing
45
+ *
46
+ * 1. Tokenize and compute term frequencies
47
+ * 2. Hash each token to a bucket via FNV1a
48
+ * 3. Apply TF weight (1 + log(tf)) to bucket
49
+ * 4. L2-normalize the result
50
+ */
51
+ export function vectorize(text, dimensions = DEFAULT_DIMENSIONS) {
52
+ const vector = new Float32Array(dimensions);
53
+ const tokens = tokenize(text);
54
+ if (tokens.length === 0) {
55
+ return vector;
56
+ }
57
+ // Compute term frequencies
58
+ const tf = new Map();
59
+ for (const token of tokens) {
60
+ tf.set(token, (tf.get(token) || 0) + 1);
61
+ }
62
+ // Hash tokens to buckets with TF-IDF weight
63
+ for (const [token, count] of tf) {
64
+ const bucket = fnv1a(token) % dimensions;
65
+ const weight = 1 + Math.log(count); // TF weight: 1 + log(tf)
66
+ // Use sign hashing to reduce collision bias
67
+ const sign = fnv1a(token + '_sign') % 2 === 0 ? 1 : -1;
68
+ vector[bucket] += sign * weight;
69
+ }
70
+ // L2 normalize
71
+ let magnitude = 0;
72
+ for (let i = 0; i < dimensions; i++) {
73
+ magnitude += vector[i] * vector[i];
74
+ }
75
+ magnitude = Math.sqrt(magnitude);
76
+ if (magnitude > 0) {
77
+ for (let i = 0; i < dimensions; i++) {
78
+ vector[i] /= magnitude;
79
+ }
80
+ }
81
+ return vector;
82
+ }
83
+ /**
84
+ * Cosine similarity between two vectors
85
+ * Returns value between -1 and 1 (1 = identical, 0 = orthogonal)
86
+ */
87
+ export function cosineSimilarity(a, b) {
88
+ if (a.length !== b.length) {
89
+ throw new Error(`Vector dimensions mismatch: ${a.length} vs ${b.length}`);
90
+ }
91
+ let dot = 0;
92
+ let magA = 0;
93
+ let magB = 0;
94
+ for (let i = 0; i < a.length; i++) {
95
+ dot += a[i] * b[i];
96
+ magA += a[i] * a[i];
97
+ magB += b[i] * b[i];
98
+ }
99
+ const denominator = Math.sqrt(magA) * Math.sqrt(magB);
100
+ if (denominator === 0)
101
+ return 0;
102
+ return dot / denominator;
103
+ }
104
+ //# sourceMappingURL=memory-vectorizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-vectorizer.js","sourceRoot":"","sources":["../../src/memory/memory-vectorizer.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -123,6 +123,13 @@ export interface RulebookConfig {
123
123
  tasksDir?: string;
124
124
  archiveDir?: string;
125
125
  };
126
+ memory?: {
127
+ enabled?: boolean;
128
+ dbPath?: string;
129
+ maxSizeBytes?: number;
130
+ autoCapture?: boolean;
131
+ vectorDimensions?: number;
132
+ };
126
133
  skills?: {
127
134
  enabled: string[];
128
135
  disabled?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,106 +1,107 @@
1
- {
2
- "name": "@hivehub/rulebook",
3
- "version": "2.1.0",
4
- "description": "Standardize AI-generated projects with automated templates, quality gates, and framework detection for 28 languages, 17 frameworks, 12 MCP modules, and 20 services",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "bin": {
8
- "rulebook": "./dist/index.js",
9
- "rulebook-mcp": "./dist/mcp/rulebook-server.js"
10
- },
11
- "scripts": {
12
- "build": "tsc",
13
- "dev": "tsx src/index.ts",
14
- "test": "vitest run --no-watch",
15
- "test:watch": "vitest",
16
- "test:coverage": "vitest run --coverage --no-watch",
17
- "test:agent": "node scripts/test-agent-simple.mjs",
18
- "test:agent:quick": "node scripts/test-agent-simple.mjs",
19
- "test:agent:full": "node scripts/test-agent-manager.js all",
20
- "test:agent:comprehensive": "npx vitest run tests/agent-manager-comprehensive.test.ts",
21
- "setup:mcp": "node scripts/setup-mcp-config.js",
22
- "lint": "npx eslint src/**/*.ts --quiet",
23
- "lint:fix": "npx eslint src/**/*.ts --fix --quiet",
24
- "format": "npx prettier --write \"src/**/*.ts\" \"tests/**/*.ts\"",
25
- "type-check": "tsc --noEmit",
26
- "prepublishOnly": "npm run build",
27
- "publish:wsl": "export BROWSER=wslview && npm publish",
28
- "mcp-server": "node dist/mcp/rulebook-server.js"
29
- },
30
- "keywords": [
31
- "ai",
32
- "automation",
33
- "templates",
34
- "rules",
35
- "standards",
36
- "cli",
37
- "npx",
38
- "agents",
39
- "cursor",
40
- "windsurf",
41
- "git-hooks",
42
- "frameworks",
43
- "nestjs",
44
- "django",
45
- "nextjs",
46
- "mcp",
47
- "typescript",
48
- "rust",
49
- "python"
50
- ],
51
- "author": "HiveLLM Team",
52
- "license": "Apache-2.0",
53
- "engines": {
54
- "node": ">=20.0.0"
55
- },
56
- "dependencies": {
57
- "@modelcontextprotocol/sdk": "^1.22.0",
58
- "@types/blessed": "^0.1.26",
59
- "ansi-escapes": "^7.2.0",
60
- "blessed": "^0.1.81",
61
- "chalk": "^5.3.0",
62
- "cli-cursor": "^5.0.0",
63
- "commander": "^14.0.2",
64
- "execa": "^9.6.0",
65
- "glob": "^13.0.0",
66
- "inquirer": "^13.0.1",
67
- "js-yaml": "^4.1.1",
68
- "node-notifier": "^10.0.1",
69
- "ora": "^9.0.0",
70
- "picocolors": "^1.0.0",
71
- "uuid": "^13.0.0",
72
- "zod": "^3.25.76"
73
- },
74
- "devDependencies": {
75
- "@types/inquirer": "^9.0.0",
76
- "@types/js-yaml": "^4.0.0",
77
- "@types/node": "^24.10.1",
78
- "@types/node-notifier": "^8.0.5",
79
- "@types/uuid": "^10.0.0",
80
- "@eslint/js": "^9.37.0",
81
- "@typescript-eslint/eslint-plugin": "^8.47.0",
82
- "globals": "^15.11.0",
83
- "@typescript-eslint/parser": "^8.47.0",
84
- "@vitest/coverage-v8": "^4.0.13",
85
- "eslint": "^9.37.0",
86
- "prettier": "^3.2.0",
87
- "tsx": "^4.7.0",
88
- "typescript": "^5.3.3",
89
- "vitest": "^4.0.13"
90
- },
91
- "publishConfig": {
92
- "access": "public"
93
- },
94
- "files": [
95
- "dist",
96
- "templates"
97
- ],
98
- "repository": {
99
- "type": "git",
100
- "url": "https://github.com/hivellm/rulebook.git"
101
- },
102
- "bugs": {
103
- "url": "https://github.com/hivellm/rulebook/issues"
104
- },
105
- "homepage": "https://github.com/hivellm/rulebook#readme"
106
- }
1
+ {
2
+ "name": "@hivehub/rulebook",
3
+ "version": "3.0.0",
4
+ "description": "Standardize AI-generated projects with automated templates, quality gates, persistent memory, and framework detection for 28 languages, 17 frameworks, 13 MCP modules, and 20 services",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "rulebook": "./dist/index.js",
9
+ "rulebook-mcp": "./dist/mcp/rulebook-server.js"
10
+ },
11
+ "scripts": {
12
+ "build": "tsc",
13
+ "dev": "tsx src/index.ts",
14
+ "test": "vitest run --no-watch",
15
+ "test:watch": "vitest",
16
+ "test:coverage": "vitest run --coverage --no-watch",
17
+ "test:agent": "node scripts/test-agent-simple.mjs",
18
+ "test:agent:quick": "node scripts/test-agent-simple.mjs",
19
+ "test:agent:full": "node scripts/test-agent-manager.js all",
20
+ "test:agent:comprehensive": "npx vitest run tests/agent-manager-comprehensive.test.ts",
21
+ "setup:mcp": "node scripts/setup-mcp-config.js",
22
+ "lint": "npx eslint src/**/*.ts --quiet",
23
+ "lint:fix": "npx eslint src/**/*.ts --fix --quiet",
24
+ "format": "npx prettier --write \"src/**/*.ts\" \"tests/**/*.ts\"",
25
+ "type-check": "tsc --noEmit",
26
+ "prepublishOnly": "npm run build",
27
+ "publish:wsl": "export BROWSER=wslview && npm publish",
28
+ "mcp-server": "node dist/mcp/rulebook-server.js"
29
+ },
30
+ "keywords": [
31
+ "ai",
32
+ "automation",
33
+ "templates",
34
+ "rules",
35
+ "standards",
36
+ "cli",
37
+ "npx",
38
+ "agents",
39
+ "cursor",
40
+ "windsurf",
41
+ "git-hooks",
42
+ "frameworks",
43
+ "nestjs",
44
+ "django",
45
+ "nextjs",
46
+ "mcp",
47
+ "typescript",
48
+ "rust",
49
+ "python"
50
+ ],
51
+ "author": "HiveLLM Team",
52
+ "license": "Apache-2.0",
53
+ "engines": {
54
+ "node": ">=20.0.0"
55
+ },
56
+ "dependencies": {
57
+ "@modelcontextprotocol/sdk": "^1.22.0",
58
+ "@types/blessed": "^0.1.26",
59
+ "ansi-escapes": "^7.2.0",
60
+ "blessed": "^0.1.81",
61
+ "chalk": "^5.3.0",
62
+ "cli-cursor": "^5.0.0",
63
+ "commander": "^14.0.2",
64
+ "execa": "^9.6.0",
65
+ "glob": "^13.0.0",
66
+ "inquirer": "^13.0.1",
67
+ "js-yaml": "^4.1.1",
68
+ "node-notifier": "^10.0.1",
69
+ "ora": "^9.0.0",
70
+ "picocolors": "^1.0.0",
71
+ "sql.js": "^1.14.0",
72
+ "uuid": "^13.0.0",
73
+ "zod": "^3.25.76"
74
+ },
75
+ "devDependencies": {
76
+ "@eslint/js": "^9.37.0",
77
+ "@types/inquirer": "^9.0.0",
78
+ "@types/js-yaml": "^4.0.0",
79
+ "@types/node": "^24.10.1",
80
+ "@types/node-notifier": "^8.0.5",
81
+ "@types/uuid": "^10.0.0",
82
+ "@typescript-eslint/eslint-plugin": "^8.47.0",
83
+ "@typescript-eslint/parser": "^8.47.0",
84
+ "@vitest/coverage-v8": "^4.0.13",
85
+ "eslint": "^9.37.0",
86
+ "globals": "^15.11.0",
87
+ "prettier": "^3.2.0",
88
+ "tsx": "^4.7.0",
89
+ "typescript": "^5.3.3",
90
+ "vitest": "^4.0.13"
91
+ },
92
+ "publishConfig": {
93
+ "access": "public"
94
+ },
95
+ "files": [
96
+ "dist",
97
+ "templates"
98
+ ],
99
+ "repository": {
100
+ "type": "git",
101
+ "url": "https://github.com/hivellm/rulebook.git"
102
+ },
103
+ "bugs": {
104
+ "url": "https://github.com/hivellm/rulebook/issues"
105
+ },
106
+ "homepage": "https://github.com/hivellm/rulebook#readme"
107
+ }
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: /rulebook-memory-save
3
+ id: rulebook-memory-save
4
+ category: Rulebook
5
+ description: Save a new persistent memory for context across AI sessions.
6
+ ---
7
+ <!-- RULEBOOK:START -->
8
+ **Guardrails**
9
+ - Use the MCP memory tools when available (preferred over CLI commands).
10
+ - Choose the correct memory type for accurate classification and search.
11
+ - Keep titles concise and content descriptive.
12
+ - Use tags for better discoverability.
13
+
14
+ **Steps**
15
+ 1. **Save a memory** using the MCP tool or CLI:
16
+ ```
17
+ # Via MCP (preferred)
18
+ rulebook_memory_save({
19
+ type: "feature",
20
+ title: "Short descriptive title",
21
+ content: "Detailed description of what happened, why, and context",
22
+ tags: ["relevant", "tags"]
23
+ })
24
+
25
+ # Via CLI
26
+ rulebook memory save "content text" --type feature --title "Title" --tags tag1,tag2
27
+ ```
28
+
29
+ 2. **Choose the right type**:
30
+ - `bugfix` - Fixed a bug or resolved an error
31
+ - `feature` - Added new functionality
32
+ - `refactor` - Restructured code without changing behavior
33
+ - `decision` - Made an architecture or design choice (protected from eviction)
34
+ - `discovery` - Found something important about the codebase
35
+ - `change` - General code modification
36
+ - `observation` - Noted something worth remembering
37
+
38
+ 3. **Verify** the memory was saved:
39
+ ```
40
+ rulebook_memory_search({ query: "your title keywords" })
41
+ ```
42
+
43
+ **Best Practices**
44
+ - Save decisions early - they are protected from cache eviction
45
+ - Include "why" in content, not just "what"
46
+ - Use consistent tags across related memories
47
+ - Content within `<private>...</private>` tags will be automatically redacted
48
+ <!-- RULEBOOK:END -->
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: /rulebook-memory-search
3
+ id: rulebook-memory-search
4
+ category: Rulebook
5
+ description: Search persistent memories using hybrid BM25+vector search for context across sessions.
6
+ ---
7
+ <!-- RULEBOOK:START -->
8
+ **Guardrails**
9
+ - Use the MCP memory tools when available (preferred over CLI commands).
10
+ - The memory system uses 3-layer search: Layer 1 (compact search), Layer 2 (timeline), Layer 3 (full details).
11
+ - Always start with a broad search, then narrow down with timeline and full details.
12
+
13
+ **Steps**
14
+ 1. **Search memories** using the MCP tool or CLI:
15
+ ```
16
+ # Via MCP (preferred)
17
+ rulebook_memory_search({ query: "search terms", mode: "hybrid", limit: 20 })
18
+
19
+ # Via CLI
20
+ rulebook memory search "search terms" --mode hybrid --limit 20
21
+ ```
22
+ Modes: `hybrid` (default, best results), `bm25` (keyword only), `vector` (semantic only).
23
+
24
+ 2. **Get timeline context** around a relevant result:
25
+ ```
26
+ rulebook_memory_timeline({ memoryId: "<id>", window: 5 })
27
+ ```
28
+
29
+ 3. **Get full details** for specific memories:
30
+ ```
31
+ rulebook_memory_get({ ids: ["<id1>", "<id2>"] })
32
+ ```
33
+
34
+ **Memory Types**
35
+ - `bugfix` - Bug fixes and error resolutions
36
+ - `feature` - New features and capabilities
37
+ - `refactor` - Code restructuring
38
+ - `decision` - Architecture/design decisions (protected from eviction)
39
+ - `discovery` - Findings about codebase or tools
40
+ - `change` - General code changes
41
+ - `observation` - General observations
42
+
43
+ **Reference**
44
+ - Use `rulebook memory stats` to check database health
45
+ - Decisions are never evicted during cleanup
46
+ - Privacy: content within `<private>...</private>` tags is automatically redacted
47
+ <!-- RULEBOOK:END -->
@@ -8,7 +8,7 @@ description: Implement an approved Rulebook task and keep tasks checklist in syn
8
8
  **Guardrails**
9
9
  - Favor straightforward, minimal implementations first and add complexity only when it is requested or clearly required.
10
10
  - Keep changes tightly scoped to the requested outcome.
11
- - Refer to `/rulebook/RULEBOOK.md` for complete task management guidelines.
11
+ - Refer to `/rulebook/specs/RULEBOOK.md` for complete task management guidelines.
12
12
  - **CRITICAL**: Update `tasks.md` IMMEDIATELY after completing and testing each implementation step.
13
13
 
14
14
  **Steps**
@@ -62,6 +62,6 @@ Track these steps as TODOs and complete them one by one.
62
62
  **Reference**
63
63
  - Use `rulebook task show <task-id>` when additional context is required
64
64
  - Use `rulebook task validate <task-id>` to check format before archiving
65
- - See `/rulebook/RULEBOOK.md` for complete task management guidelines and priority order
65
+ - See `/rulebook/specs/RULEBOOK.md` for complete task management guidelines and priority order
66
66
  <!-- RULEBOOK:END -->
67
67
 
@@ -8,7 +8,7 @@ description: Archive a completed Rulebook task and apply spec deltas to main spe
8
8
  **Guardrails**
9
9
  - Favor straightforward, minimal implementations first and add complexity only when it is requested or clearly required.
10
10
  - Keep changes tightly scoped to the requested outcome.
11
- - Refer to `/rulebook/RULEBOOK.md` for complete task management guidelines.
11
+ - Refer to `/rulebook/specs/RULEBOOK.md` for complete task management guidelines.
12
12
 
13
13
  **Steps**
14
14
  1. **Verify Task Completion**:
@@ -65,6 +65,6 @@ description: Archive a completed Rulebook task and apply spec deltas to main spe
65
65
  **Reference**
66
66
  - Use `rulebook task list --archived` to see archived tasks
67
67
  - Use `rulebook task show <task-id>` to view task details
68
- - See `/rulebook/RULEBOOK.md` for complete task management guidelines
68
+ - See `/rulebook/specs/RULEBOOK.md` for complete task management guidelines
69
69
  <!-- RULEBOOK:END -->
70
70