dino-spec 17.4.3 → 17.6.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 (277) hide show
  1. package/README.md +16 -1
  2. package/dist/commands/init.d.ts.map +1 -1
  3. package/dist/commands/init.js +10 -0
  4. package/dist/commands/init.js.map +1 -1
  5. package/dist/core/agents/__tests__/confidence-gate.test.d.ts +5 -0
  6. package/dist/core/agents/__tests__/confidence-gate.test.d.ts.map +1 -0
  7. package/dist/core/agents/__tests__/confidence-gate.test.js +329 -0
  8. package/dist/core/agents/__tests__/confidence-gate.test.js.map +1 -0
  9. package/dist/core/agents/__tests__/gap-detector.test.d.ts +5 -0
  10. package/dist/core/agents/__tests__/gap-detector.test.d.ts.map +1 -0
  11. package/dist/core/agents/__tests__/gap-detector.test.js +609 -0
  12. package/dist/core/agents/__tests__/gap-detector.test.js.map +1 -0
  13. package/dist/core/agents/__tests__/learning-loop.test.d.ts +5 -0
  14. package/dist/core/agents/__tests__/learning-loop.test.d.ts.map +1 -0
  15. package/dist/core/agents/__tests__/learning-loop.test.js +663 -0
  16. package/dist/core/agents/__tests__/learning-loop.test.js.map +1 -0
  17. package/dist/core/agents/__tests__/parallel-executor.test.d.ts +5 -0
  18. package/dist/core/agents/__tests__/parallel-executor.test.d.ts.map +1 -0
  19. package/dist/core/agents/__tests__/parallel-executor.test.js +610 -0
  20. package/dist/core/agents/__tests__/parallel-executor.test.js.map +1 -0
  21. package/dist/core/agents/__tests__/research-validator.test.js +5 -5
  22. package/dist/core/agents/__tests__/research-validator.test.js.map +1 -1
  23. package/dist/core/agents/__tests__/skill-creator.test.d.ts +5 -0
  24. package/dist/core/agents/__tests__/skill-creator.test.d.ts.map +1 -0
  25. package/dist/core/agents/__tests__/skill-creator.test.js +443 -0
  26. package/dist/core/agents/__tests__/skill-creator.test.js.map +1 -0
  27. package/dist/core/agents/__tests__/state-persistence.test.d.ts +2 -0
  28. package/dist/core/agents/__tests__/state-persistence.test.d.ts.map +1 -0
  29. package/dist/core/agents/__tests__/state-persistence.test.js +270 -0
  30. package/dist/core/agents/__tests__/state-persistence.test.js.map +1 -0
  31. package/dist/core/agents/__tests__/validation-cache.test.d.ts +2 -0
  32. package/dist/core/agents/__tests__/validation-cache.test.d.ts.map +1 -0
  33. package/dist/core/agents/__tests__/validation-cache.test.js +181 -0
  34. package/dist/core/agents/__tests__/validation-cache.test.js.map +1 -0
  35. package/dist/core/agents/ambiguity-resolver.d.ts +14 -1
  36. package/dist/core/agents/ambiguity-resolver.d.ts.map +1 -1
  37. package/dist/core/agents/ambiguity-resolver.js +24 -2
  38. package/dist/core/agents/ambiguity-resolver.js.map +1 -1
  39. package/dist/core/agents/blackboard.d.ts +22 -3
  40. package/dist/core/agents/blackboard.d.ts.map +1 -1
  41. package/dist/core/agents/blackboard.js +52 -2
  42. package/dist/core/agents/blackboard.js.map +1 -1
  43. package/dist/core/agents/circuit-breaker.d.ts +79 -1
  44. package/dist/core/agents/circuit-breaker.d.ts.map +1 -1
  45. package/dist/core/agents/circuit-breaker.js +175 -1
  46. package/dist/core/agents/circuit-breaker.js.map +1 -1
  47. package/dist/core/agents/clarification-phase.d.ts +128 -0
  48. package/dist/core/agents/clarification-phase.d.ts.map +1 -0
  49. package/dist/core/agents/clarification-phase.js +375 -0
  50. package/dist/core/agents/clarification-phase.js.map +1 -0
  51. package/dist/core/agents/confidence-gate.d.ts +133 -4
  52. package/dist/core/agents/confidence-gate.d.ts.map +1 -1
  53. package/dist/core/agents/confidence-gate.js +376 -9
  54. package/dist/core/agents/confidence-gate.js.map +1 -1
  55. package/dist/core/agents/correction-tracker.d.ts +197 -0
  56. package/dist/core/agents/correction-tracker.d.ts.map +1 -0
  57. package/dist/core/agents/correction-tracker.js +366 -0
  58. package/dist/core/agents/correction-tracker.js.map +1 -0
  59. package/dist/core/agents/dependency-graph.d.ts +193 -0
  60. package/dist/core/agents/dependency-graph.d.ts.map +1 -0
  61. package/dist/core/agents/dependency-graph.js +462 -0
  62. package/dist/core/agents/dependency-graph.js.map +1 -0
  63. package/dist/core/agents/gap-detector.d.ts +277 -0
  64. package/dist/core/agents/gap-detector.d.ts.map +1 -0
  65. package/dist/core/agents/gap-detector.js +540 -0
  66. package/dist/core/agents/gap-detector.js.map +1 -0
  67. package/dist/core/agents/index.d.ts +14 -1
  68. package/dist/core/agents/index.d.ts.map +1 -1
  69. package/dist/core/agents/index.js +26 -1
  70. package/dist/core/agents/index.js.map +1 -1
  71. package/dist/core/agents/message-protocol.d.ts +13 -2
  72. package/dist/core/agents/message-protocol.d.ts.map +1 -1
  73. package/dist/core/agents/message-protocol.js +20 -1
  74. package/dist/core/agents/message-protocol.js.map +1 -1
  75. package/dist/core/agents/parallel-executor.d.ts +182 -0
  76. package/dist/core/agents/parallel-executor.d.ts.map +1 -0
  77. package/dist/core/agents/parallel-executor.js +474 -0
  78. package/dist/core/agents/parallel-executor.js.map +1 -0
  79. package/dist/core/agents/pattern-detector.d.ts +157 -0
  80. package/dist/core/agents/pattern-detector.d.ts.map +1 -0
  81. package/dist/core/agents/pattern-detector.js +370 -0
  82. package/dist/core/agents/pattern-detector.js.map +1 -0
  83. package/dist/core/agents/registry-client.d.ts +6 -0
  84. package/dist/core/agents/registry-client.d.ts.map +1 -1
  85. package/dist/core/agents/registry-client.js +3 -0
  86. package/dist/core/agents/registry-client.js.map +1 -1
  87. package/dist/core/agents/research-phase.d.ts +114 -0
  88. package/dist/core/agents/research-phase.d.ts.map +1 -0
  89. package/dist/core/agents/research-phase.js +355 -0
  90. package/dist/core/agents/research-phase.js.map +1 -0
  91. package/dist/core/agents/research-validator.d.ts +13 -2
  92. package/dist/core/agents/research-validator.d.ts.map +1 -1
  93. package/dist/core/agents/research-validator.js +63 -31
  94. package/dist/core/agents/research-validator.js.map +1 -1
  95. package/dist/core/agents/skill-creator.d.ts +174 -0
  96. package/dist/core/agents/skill-creator.d.ts.map +1 -0
  97. package/dist/core/agents/skill-creator.js +570 -0
  98. package/dist/core/agents/skill-creator.js.map +1 -0
  99. package/dist/core/agents/state-persistence.d.ts +184 -0
  100. package/dist/core/agents/state-persistence.d.ts.map +1 -0
  101. package/dist/core/agents/state-persistence.js +394 -0
  102. package/dist/core/agents/state-persistence.js.map +1 -0
  103. package/dist/core/agents/validation-cache.d.ts +122 -0
  104. package/dist/core/agents/validation-cache.d.ts.map +1 -0
  105. package/dist/core/agents/validation-cache.js +280 -0
  106. package/dist/core/agents/validation-cache.js.map +1 -0
  107. package/dist/core/agents/validators/__tests__/validators.test.d.ts +5 -0
  108. package/dist/core/agents/validators/__tests__/validators.test.d.ts.map +1 -0
  109. package/dist/core/agents/validators/__tests__/validators.test.js +321 -0
  110. package/dist/core/agents/validators/__tests__/validators.test.js.map +1 -0
  111. package/dist/core/agents/validators/base-validator.d.ts +191 -0
  112. package/dist/core/agents/validators/base-validator.d.ts.map +1 -0
  113. package/dist/core/agents/validators/base-validator.js +192 -0
  114. package/dist/core/agents/validators/base-validator.js.map +1 -0
  115. package/dist/core/agents/validators/index.d.ts +7 -0
  116. package/dist/core/agents/validators/index.d.ts.map +1 -0
  117. package/dist/core/agents/validators/index.js +7 -0
  118. package/dist/core/agents/validators/index.js.map +1 -0
  119. package/dist/core/agents/validators/npm-validator.d.ts +50 -0
  120. package/dist/core/agents/validators/npm-validator.d.ts.map +1 -0
  121. package/dist/core/agents/validators/npm-validator.js +211 -0
  122. package/dist/core/agents/validators/npm-validator.js.map +1 -0
  123. package/dist/core/agents/validators/pip-validator.d.ts +49 -0
  124. package/dist/core/agents/validators/pip-validator.d.ts.map +1 -0
  125. package/dist/core/agents/validators/pip-validator.js +191 -0
  126. package/dist/core/agents/validators/pip-validator.js.map +1 -0
  127. package/dist/core/agents/validators/validator-registry.d.ts +122 -0
  128. package/dist/core/agents/validators/validator-registry.d.ts.map +1 -0
  129. package/dist/core/agents/validators/validator-registry.js +321 -0
  130. package/dist/core/agents/validators/validator-registry.js.map +1 -0
  131. package/dist/core/context/auto-injection-engine.d.ts +7 -1
  132. package/dist/core/context/auto-injection-engine.d.ts.map +1 -1
  133. package/dist/core/context/auto-injection-engine.js +46 -1
  134. package/dist/core/context/auto-injection-engine.js.map +1 -1
  135. package/dist/core/context-repl/types.d.ts +4 -4
  136. package/dist/core/memory/index.d.ts +1 -0
  137. package/dist/core/memory/index.d.ts.map +1 -1
  138. package/dist/core/memory/index.js +2 -0
  139. package/dist/core/memory/index.js.map +1 -1
  140. package/dist/core/memory/learning-store.d.ts +222 -0
  141. package/dist/core/memory/learning-store.d.ts.map +1 -0
  142. package/dist/core/memory/learning-store.js +477 -0
  143. package/dist/core/memory/learning-store.js.map +1 -0
  144. package/dist/core/ralph/__tests__/prd-generator-session-context.test.d.ts +7 -0
  145. package/dist/core/ralph/__tests__/prd-generator-session-context.test.d.ts.map +1 -0
  146. package/dist/core/ralph/__tests__/prd-generator-session-context.test.js +143 -0
  147. package/dist/core/ralph/__tests__/prd-generator-session-context.test.js.map +1 -0
  148. package/dist/core/ralph/index.d.ts +3 -3
  149. package/dist/core/ralph/index.d.ts.map +1 -1
  150. package/dist/core/ralph/index.js +2 -2
  151. package/dist/core/ralph/index.js.map +1 -1
  152. package/dist/core/ralph/prd-generator.d.ts +18 -3
  153. package/dist/core/ralph/prd-generator.d.ts.map +1 -1
  154. package/dist/core/ralph/prd-generator.js +33 -11
  155. package/dist/core/ralph/prd-generator.js.map +1 -1
  156. package/dist/core/ralph/progress-tracker.d.ts.map +1 -1
  157. package/dist/core/ralph/progress-tracker.js +2 -1
  158. package/dist/core/ralph/progress-tracker.js.map +1 -1
  159. package/dist/core/ralph/sub-agent-spawner.d.ts +4 -2
  160. package/dist/core/ralph/sub-agent-spawner.d.ts.map +1 -1
  161. package/dist/core/ralph/sub-agent-spawner.js +48 -3
  162. package/dist/core/ralph/sub-agent-spawner.js.map +1 -1
  163. package/dist/core/ralph/task-integration.d.ts.map +1 -1
  164. package/dist/core/ralph/task-integration.js +6 -3
  165. package/dist/core/ralph/task-integration.js.map +1 -1
  166. package/dist/core/ralph/types.d.ts +62 -3
  167. package/dist/core/ralph/types.d.ts.map +1 -1
  168. package/dist/core/ralph/types.js.map +1 -1
  169. package/dist/core/recommendations/recommendation-engine.d.ts +6 -0
  170. package/dist/core/recommendations/recommendation-engine.d.ts.map +1 -1
  171. package/dist/core/recommendations/recommendation-engine.js.map +1 -1
  172. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.d.ts +5 -0
  173. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.d.ts.map +1 -0
  174. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.js +401 -0
  175. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.js.map +1 -0
  176. package/dist/core/spec-analyzer/ambiguity-detector.d.ts +99 -0
  177. package/dist/core/spec-analyzer/ambiguity-detector.d.ts.map +1 -0
  178. package/dist/core/spec-analyzer/ambiguity-detector.js +250 -0
  179. package/dist/core/spec-analyzer/ambiguity-detector.js.map +1 -0
  180. package/dist/core/spec-analyzer/clarification-generator.d.ts +76 -0
  181. package/dist/core/spec-analyzer/clarification-generator.d.ts.map +1 -0
  182. package/dist/core/spec-analyzer/clarification-generator.js +257 -0
  183. package/dist/core/spec-analyzer/clarification-generator.js.map +1 -0
  184. package/dist/core/spec-analyzer/index.d.ts +22 -2
  185. package/dist/core/spec-analyzer/index.d.ts.map +1 -1
  186. package/dist/core/spec-analyzer/index.js +21 -3
  187. package/dist/core/spec-analyzer/index.js.map +1 -1
  188. package/dist/core/spec-analyzer/patterns.d.ts +73 -0
  189. package/dist/core/spec-analyzer/patterns.d.ts.map +1 -0
  190. package/dist/core/spec-analyzer/patterns.js +412 -0
  191. package/dist/core/spec-analyzer/patterns.js.map +1 -0
  192. package/dist/hooks/__tests__/dynamic-generator.test.d.ts +5 -0
  193. package/dist/hooks/__tests__/dynamic-generator.test.d.ts.map +1 -0
  194. package/dist/hooks/__tests__/dynamic-generator.test.js +425 -0
  195. package/dist/hooks/__tests__/dynamic-generator.test.js.map +1 -0
  196. package/dist/hooks/__tests__/hook-agent-bridge.test.d.ts +5 -0
  197. package/dist/hooks/__tests__/hook-agent-bridge.test.d.ts.map +1 -0
  198. package/dist/hooks/__tests__/hook-agent-bridge.test.js +315 -0
  199. package/dist/hooks/__tests__/hook-agent-bridge.test.js.map +1 -0
  200. package/dist/hooks/dynamic-generator.d.ts +158 -0
  201. package/dist/hooks/dynamic-generator.d.ts.map +1 -0
  202. package/dist/hooks/dynamic-generator.js +448 -0
  203. package/dist/hooks/dynamic-generator.js.map +1 -0
  204. package/dist/hooks/hook-agent-bridge.d.ts +252 -0
  205. package/dist/hooks/hook-agent-bridge.d.ts.map +1 -0
  206. package/dist/hooks/hook-agent-bridge.js +489 -0
  207. package/dist/hooks/hook-agent-bridge.js.map +1 -0
  208. package/dist/hooks/index.d.ts +3 -1
  209. package/dist/hooks/index.d.ts.map +1 -1
  210. package/dist/hooks/index.js +5 -1
  211. package/dist/hooks/index.js.map +1 -1
  212. package/dist/mcp/tool-catalog.d.ts.map +1 -1
  213. package/dist/mcp/tool-catalog.js +47 -0
  214. package/dist/mcp/tool-catalog.js.map +1 -1
  215. package/dist/mcp/tool-tiers.d.ts.map +1 -1
  216. package/dist/mcp/tool-tiers.js +4 -0
  217. package/dist/mcp/tool-tiers.js.map +1 -1
  218. package/dist/mcp/tools/auto-inject.d.ts +4 -0
  219. package/dist/mcp/tools/auto-inject.d.ts.map +1 -1
  220. package/dist/mcp/tools/auto-inject.js +13 -4
  221. package/dist/mcp/tools/auto-inject.js.map +1 -1
  222. package/dist/mcp/tools/chunking.d.ts +3 -0
  223. package/dist/mcp/tools/chunking.d.ts.map +1 -1
  224. package/dist/mcp/tools/chunking.js +10 -4
  225. package/dist/mcp/tools/chunking.js.map +1 -1
  226. package/dist/mcp/tools/embeddings.d.ts +4 -0
  227. package/dist/mcp/tools/embeddings.d.ts.map +1 -1
  228. package/dist/mcp/tools/embeddings.js +16 -6
  229. package/dist/mcp/tools/embeddings.js.map +1 -1
  230. package/dist/mcp/tools/index.d.ts +2 -1
  231. package/dist/mcp/tools/index.d.ts.map +1 -1
  232. package/dist/mcp/tools/index.js +15 -1
  233. package/dist/mcp/tools/index.js.map +1 -1
  234. package/dist/mcp/tools/knowledge-graph.d.ts +3 -0
  235. package/dist/mcp/tools/knowledge-graph.d.ts.map +1 -1
  236. package/dist/mcp/tools/knowledge-graph.js +19 -8
  237. package/dist/mcp/tools/knowledge-graph.js.map +1 -1
  238. package/dist/mcp/tools/lazy-context.d.ts +2 -0
  239. package/dist/mcp/tools/lazy-context.d.ts.map +1 -1
  240. package/dist/mcp/tools/lazy-context.js +10 -4
  241. package/dist/mcp/tools/lazy-context.js.map +1 -1
  242. package/dist/mcp/tools/learning-store.d.ts +30 -0
  243. package/dist/mcp/tools/learning-store.d.ts.map +1 -0
  244. package/dist/mcp/tools/learning-store.js +286 -0
  245. package/dist/mcp/tools/learning-store.js.map +1 -0
  246. package/dist/mcp/tools/memory-decay.d.ts.map +1 -1
  247. package/dist/mcp/tools/memory-decay.js +4 -2
  248. package/dist/mcp/tools/memory-decay.js.map +1 -1
  249. package/dist/mcp/tools/prefetch.d.ts +4 -1
  250. package/dist/mcp/tools/prefetch.d.ts.map +1 -1
  251. package/dist/mcp/tools/prefetch.js +18 -7
  252. package/dist/mcp/tools/prefetch.js.map +1 -1
  253. package/dist/mcp/tools/ralph.d.ts +2 -0
  254. package/dist/mcp/tools/ralph.d.ts.map +1 -1
  255. package/dist/mcp/tools/ralph.js +96 -6
  256. package/dist/mcp/tools/ralph.js.map +1 -1
  257. package/dist/mcp/tools/recommendations.d.ts +2 -0
  258. package/dist/mcp/tools/recommendations.d.ts.map +1 -1
  259. package/dist/mcp/tools/recommendations.js +13 -4
  260. package/dist/mcp/tools/recommendations.js.map +1 -1
  261. package/dist/mcp/tools/retrieval.d.ts +4 -0
  262. package/dist/mcp/tools/retrieval.d.ts.map +1 -1
  263. package/dist/mcp/tools/retrieval.js +25 -10
  264. package/dist/mcp/tools/retrieval.js.map +1 -1
  265. package/dist/mcp/tools/spec-feedback.d.ts +2 -0
  266. package/dist/mcp/tools/spec-feedback.d.ts.map +1 -1
  267. package/dist/mcp/tools/spec-feedback.js +33 -16
  268. package/dist/mcp/tools/spec-feedback.js.map +1 -1
  269. package/dist/mcp/utils/index.d.ts +1 -0
  270. package/dist/mcp/utils/index.d.ts.map +1 -1
  271. package/dist/mcp/utils/index.js +2 -0
  272. package/dist/mcp/utils/index.js.map +1 -1
  273. package/dist/mcp/utils/session-context.d.ts +108 -0
  274. package/dist/mcp/utils/session-context.d.ts.map +1 -0
  275. package/dist/mcp/utils/session-context.js +157 -0
  276. package/dist/mcp/utils/session-context.js.map +1 -0
  277. package/package.json +1 -1
@@ -0,0 +1,286 @@
1
+ /**
2
+ * Learning Store Tools - v17.5.0
3
+ *
4
+ * MCP tools for learning pattern management:
5
+ * - dino_learning_patterns_list: List all learned patterns with filtering
6
+ * - dino_learning_pattern_get: Get a specific pattern by ID
7
+ * - dino_learning_pattern_suggest: Get pattern suggestions for context
8
+ */
9
+ import { enhanceToolDescription } from '../../core/examples/index.js';
10
+ import { textResult, wrapHandler } from '../utils/response-helpers.js';
11
+ /**
12
+ * dino_learning_patterns_list - List all learned patterns
13
+ */
14
+ export const learningPatternsListTool = {
15
+ name: 'dino_learning_patterns_list',
16
+ description: enhanceToolDescription('dino_learning_patterns_list', `List learned patterns from correction history (v17.5.0)
17
+
18
+ Lists patterns learned from user corrections. Patterns capture
19
+ user preferences for style, naming, structure, tools, and workflows.
20
+
21
+ Filter by type, confidence, or active status.
22
+ Returns summary with statistics and pattern details.`),
23
+ inputSchema: {
24
+ type: 'object',
25
+ properties: {
26
+ type: {
27
+ type: 'string',
28
+ enum: ['style', 'naming', 'structure', 'tool', 'workflow', 'preference'],
29
+ description: 'Filter by pattern type',
30
+ },
31
+ confidence: {
32
+ type: 'string',
33
+ enum: ['high', 'medium', 'low'],
34
+ description: 'Filter by confidence level',
35
+ },
36
+ activeOnly: {
37
+ type: 'boolean',
38
+ description: 'Only show active patterns (default: true)',
39
+ },
40
+ limit: {
41
+ type: 'number',
42
+ description: 'Maximum number of patterns to return (default: 20)',
43
+ },
44
+ },
45
+ },
46
+ handler: wrapHandler(async (params) => {
47
+ const type = params.type;
48
+ const confidence = params.confidence;
49
+ const activeOnly = params.activeOnly !== false;
50
+ const limit = params.limit || 20;
51
+ try {
52
+ const { getLearningStore, formatLearnedPattern, formatLearningStats } = await import('../../core/memory/learning-store.js');
53
+ const { getCwd } = await import('../utils/session-helpers.js');
54
+ const store = getLearningStore(getCwd());
55
+ store.load();
56
+ // Get patterns based on filters
57
+ let patterns = activeOnly ? store.getActivePatterns() : store.getAllPatterns();
58
+ // Filter by type
59
+ if (type) {
60
+ patterns = patterns.filter((p) => p.type === type);
61
+ }
62
+ // Filter by confidence
63
+ if (confidence) {
64
+ patterns = patterns.filter((p) => p.confidence === confidence);
65
+ }
66
+ // Sort by apply count (most applied first)
67
+ patterns.sort((a, b) => b.applyCount - a.applyCount);
68
+ // Apply limit
69
+ patterns = patterns.slice(0, limit);
70
+ const lines = [];
71
+ lines.push('## Learned Patterns');
72
+ lines.push('');
73
+ // Stats summary
74
+ const stats = store.getStats();
75
+ lines.push(formatLearningStats(stats));
76
+ lines.push('');
77
+ // Pattern list
78
+ if (patterns.length === 0) {
79
+ lines.push('No patterns found matching the criteria.');
80
+ }
81
+ else {
82
+ lines.push(`### Patterns (${patterns.length})`);
83
+ lines.push('');
84
+ for (const pattern of patterns) {
85
+ lines.push(`#### ${pattern.id}`);
86
+ lines.push(formatLearnedPattern(pattern));
87
+ lines.push('');
88
+ }
89
+ }
90
+ return textResult(lines.join('\n'));
91
+ }
92
+ catch (error) {
93
+ const message = error instanceof Error ? error.message : String(error);
94
+ return textResult(`## Error\n\n**Error:** ${message}`);
95
+ }
96
+ }, 'Learning patterns list error'),
97
+ };
98
+ /**
99
+ * dino_learning_pattern_get - Get a specific pattern by ID
100
+ */
101
+ export const learningPatternGetTool = {
102
+ name: 'dino_learning_pattern_get',
103
+ description: enhanceToolDescription('dino_learning_pattern_get', `Get a specific learned pattern by ID (v17.5.0)
104
+
105
+ Retrieves full details of a learned pattern including:
106
+ - Trigger and preference
107
+ - Examples that formed the pattern
108
+ - Keywords for matching
109
+ - Application history`),
110
+ inputSchema: {
111
+ type: 'object',
112
+ properties: {
113
+ patternId: {
114
+ type: 'string',
115
+ description: 'The pattern ID to retrieve',
116
+ },
117
+ },
118
+ required: ['patternId'],
119
+ },
120
+ handler: wrapHandler(async (params) => {
121
+ const patternId = params.patternId;
122
+ try {
123
+ const { getLearningStore } = await import('../../core/memory/learning-store.js');
124
+ const { getCwd } = await import('../utils/session-helpers.js');
125
+ const store = getLearningStore(getCwd());
126
+ store.load();
127
+ const pattern = store.getPattern(patternId);
128
+ if (!pattern) {
129
+ return textResult(`## Not Found\n\nPattern with ID "${patternId}" not found.`);
130
+ }
131
+ const lines = [];
132
+ lines.push(`## Pattern: ${pattern.id}`);
133
+ lines.push('');
134
+ // Status
135
+ const statusIcon = pattern.active ? '✅' : '❌';
136
+ lines.push(`**Status:** ${statusIcon} ${pattern.active ? 'Active' : 'Inactive'}`);
137
+ lines.push('');
138
+ // Core info
139
+ lines.push('### Details');
140
+ lines.push(`- **Type:** ${pattern.type}`);
141
+ lines.push(`- **Confidence:** ${pattern.confidence}`);
142
+ lines.push(`- **Occurrences:** ${pattern.occurrences}`);
143
+ lines.push(`- **Apply Count:** ${pattern.applyCount}`);
144
+ lines.push('');
145
+ // Trigger and preference
146
+ lines.push('### Pattern');
147
+ lines.push(`- **Trigger:** "${pattern.trigger}"`);
148
+ lines.push(`- **Preference:** "${pattern.preference}"`);
149
+ lines.push('');
150
+ // Keywords
151
+ if (pattern.keywords.length > 0) {
152
+ lines.push('### Keywords');
153
+ lines.push(pattern.keywords.map((k) => `\`${k}\``).join(', '));
154
+ lines.push('');
155
+ }
156
+ // Examples
157
+ if (pattern.examples.length > 0) {
158
+ lines.push('### Examples');
159
+ for (const [i, example] of pattern.examples.entries()) {
160
+ lines.push(`\n**Example ${i + 1}:**`);
161
+ lines.push(`- Original: "${example.original}"`);
162
+ lines.push(`- Corrected: "${example.corrected}"`);
163
+ }
164
+ lines.push('');
165
+ }
166
+ // Timestamps
167
+ lines.push('### History');
168
+ lines.push(`- **Learned:** ${pattern.learnedAt}`);
169
+ if (pattern.lastApplied) {
170
+ lines.push(`- **Last Applied:** ${pattern.lastApplied}`);
171
+ }
172
+ lines.push(`- **Source Cluster:** ${pattern.sourceClusterId}`);
173
+ return textResult(lines.join('\n'));
174
+ }
175
+ catch (error) {
176
+ const message = error instanceof Error ? error.message : String(error);
177
+ return textResult(`## Error\n\n**Error:** ${message}`);
178
+ }
179
+ }, 'Learning pattern get error'),
180
+ };
181
+ /**
182
+ * dino_learning_pattern_suggest - Get pattern suggestions for context
183
+ */
184
+ export const learningPatternSuggestTool = {
185
+ name: 'dino_learning_pattern_suggest',
186
+ description: enhanceToolDescription('dino_learning_pattern_suggest', `Get pattern suggestions for current context (v17.5.0)
187
+
188
+ Analyzes learned patterns against current session context to
189
+ suggest relevant patterns. Uses focus area, recent files, and
190
+ current task to match patterns.
191
+
192
+ Returns ranked suggestions with relevance scores and reasons.`),
193
+ inputSchema: {
194
+ type: 'object',
195
+ properties: {
196
+ focusArea: {
197
+ type: 'string',
198
+ description: 'Current focus area (e.g., "src/core/")',
199
+ },
200
+ currentTask: {
201
+ type: 'string',
202
+ description: 'Description of current task',
203
+ },
204
+ recentFiles: {
205
+ type: 'array',
206
+ items: { type: 'string' },
207
+ description: 'List of recently modified files',
208
+ },
209
+ maxSuggestions: {
210
+ type: 'number',
211
+ description: 'Maximum suggestions to return (default: 5)',
212
+ },
213
+ },
214
+ },
215
+ handler: wrapHandler(async (params) => {
216
+ const focusArea = params.focusArea;
217
+ const currentTask = params.currentTask;
218
+ const recentFiles = params.recentFiles;
219
+ const maxSuggestions = params.maxSuggestions || 5;
220
+ try {
221
+ const { getLearningStore, formatLearningSuggestions } = await import('../../core/memory/learning-store.js');
222
+ const { getCwd } = await import('../utils/session-helpers.js');
223
+ const store = getLearningStore(getCwd());
224
+ store.load();
225
+ // Build context
226
+ const context = {
227
+ focusArea,
228
+ currentTask,
229
+ recentFiles,
230
+ };
231
+ // Get suggestions
232
+ const suggestions = store.getSuggestions(context);
233
+ const limitedSuggestions = suggestions.slice(0, maxSuggestions);
234
+ const lines = [];
235
+ lines.push('## Pattern Suggestions');
236
+ lines.push('');
237
+ // Show context used
238
+ lines.push('### Context');
239
+ if (focusArea) {
240
+ lines.push(`- **Focus:** ${focusArea}`);
241
+ }
242
+ if (currentTask) {
243
+ lines.push(`- **Task:** ${currentTask}`);
244
+ }
245
+ if (recentFiles && recentFiles.length > 0) {
246
+ lines.push(`- **Recent Files:** ${recentFiles.length} files`);
247
+ }
248
+ lines.push('');
249
+ // Suggestions
250
+ if (limitedSuggestions.length === 0) {
251
+ lines.push('No relevant patterns found for this context.');
252
+ lines.push('');
253
+ lines.push('Patterns are learned from user corrections over time.');
254
+ }
255
+ else {
256
+ lines.push(formatLearningSuggestions(limitedSuggestions));
257
+ lines.push('');
258
+ // Confidence boost
259
+ const boost = store.calculateConfidenceBoost(context);
260
+ if (boost > 0) {
261
+ lines.push(`**Confidence Boost:** +${(boost * 100).toFixed(1)}% from learned patterns`);
262
+ }
263
+ }
264
+ return textResult(lines.join('\n'));
265
+ }
266
+ catch (error) {
267
+ const message = error instanceof Error ? error.message : String(error);
268
+ return textResult(`## Error\n\n**Error:** ${message}`);
269
+ }
270
+ }, 'Learning pattern suggest error'),
271
+ };
272
+ /**
273
+ * All learning store tools
274
+ */
275
+ export const learningStoreTools = [
276
+ learningPatternsListTool,
277
+ learningPatternGetTool,
278
+ learningPatternSuggestTool,
279
+ ];
280
+ /**
281
+ * Register all learning store tools
282
+ */
283
+ export function registerLearningStoreTools() {
284
+ // Tools are exported as arrays for easy registration
285
+ }
286
+ //# sourceMappingURL=learning-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning-store.js","sourceRoot":"","sources":["../../../src/mcp/tools/learning-store.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAErE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAY;IAC/C,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,sBAAsB,CACjC,6BAA6B,EAC7B;;;;;;qDAMiD,CAClD;IACD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC;gBACxE,WAAW,EAAE,wBAAwB;aACtC;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;gBAC/B,WAAW,EAAE,4BAA4B;aAC1C;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,2CAA2C;aACzD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD;aAClE;SACF;KACF;IACD,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAA0B,CAAA;QAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,UAAgC,CAAA;QAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,KAAK,KAAK,CAAA;QAC9C,MAAM,KAAK,GAAI,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAA;QAE5C,IAAI,CAAC;YACH,MAAM,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAClF,qCAAqC,CACtC,CAAA;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;YAE9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAA;YACxC,KAAK,CAAC,IAAI,EAAE,CAAA;YAEZ,gCAAgC;YAChC,IAAI,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAA;YAE9E,iBAAiB;YACjB,IAAI,IAAI,EAAE,CAAC;gBACT,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;YACpD,CAAC;YAED,uBAAuB;YACvB,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAA;YAChE,CAAC;YAED,2CAA2C;YAC3C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAA;YAEpD,cAAc;YACd,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YAEnC,MAAM,KAAK,GAAa,EAAE,CAAA;YAC1B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;YACjC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,gBAAgB;YAChB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;YAC9B,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;YACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,eAAe;YACf,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;YACxD,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;gBAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAEd,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;oBAChC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAA;oBACzC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAChB,CAAC;YACH,CAAC;YAED,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtE,OAAO,UAAU,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAA;QACxD,CAAC;IACH,CAAC,EAAE,8BAA8B,CAAC;CACnC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAY;IAC7C,IAAI,EAAE,2BAA2B;IACjC,WAAW,EAAE,sBAAsB,CACjC,2BAA2B,EAC3B;;;;;;sBAMkB,CACnB;IACD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4BAA4B;aAC1C;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;IACD,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAA;QAE5C,IAAI,CAAC;YACH,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAA;YAChF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;YAE9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAA;YACxC,KAAK,CAAC,IAAI,EAAE,CAAA;YAEZ,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAE3C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,UAAU,CAAC,oCAAoC,SAAS,cAAc,CAAC,CAAA;YAChF,CAAC;YAED,MAAM,KAAK,GAAa,EAAE,CAAA;YAC1B,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;YACvC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,SAAS;YACT,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;YAC7C,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAA;YACjF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,YAAY;YACZ,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YACzC,KAAK,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;YACrD,KAAK,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YACvD,KAAK,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;YACtD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,yBAAyB;YACzB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,KAAK,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,OAAO,GAAG,CAAC,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,UAAU,GAAG,CAAC,CAAA;YACvD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,WAAW;YACX,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;gBAC1B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC9D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAChB,CAAC;YAED,WAAW;YACX,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;gBAC1B,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;oBACtD,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACrC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;oBAC/C,KAAK,CAAC,IAAI,CAAC,iBAAiB,OAAO,CAAC,SAAS,GAAG,CAAC,CAAA;gBACnD,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAChB,CAAC;YAED,aAAa;YACb,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,KAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;YACjD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,uBAAuB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YAC1D,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;YAE9D,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtE,OAAO,UAAU,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAA;QACxD,CAAC;IACH,CAAC,EAAE,4BAA4B,CAAC;CACjC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAY;IACjD,IAAI,EAAE,+BAA+B;IACrC,WAAW,EAAE,sBAAsB,CACjC,+BAA+B,EAC/B;;;;;;8DAM0D,CAC3D;IACD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,iCAAiC;aAC/C;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4CAA4C;aAC1D;SACF;KACF;IACD,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,SAA+B,CAAA;QACxD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAiC,CAAA;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,WAAmC,CAAA;QAC9D,MAAM,cAAc,GAAI,MAAM,CAAC,cAAyB,IAAI,CAAC,CAAA;QAE7D,IAAI,CAAC;YACH,MAAM,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAClE,qCAAqC,CACtC,CAAA;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;YAE9D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAA;YACxC,KAAK,CAAC,IAAI,EAAE,CAAA;YAEZ,gBAAgB;YAChB,MAAM,OAAO,GAAG;gBACd,SAAS;gBACT,WAAW;gBACX,WAAW;aACZ,CAAA;YAED,kBAAkB;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YACjD,MAAM,kBAAkB,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAA;YAE/D,MAAM,KAAK,GAAa,EAAE,CAAA;YAC1B,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;YACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,oBAAoB;YACpB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,IAAI,SAAS,EAAE,CAAC;gBACd,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAA;YACzC,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,KAAK,CAAC,IAAI,CAAC,eAAe,WAAW,EAAE,CAAC,CAAA;YAC1C,CAAC;YACD,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,KAAK,CAAC,IAAI,CAAC,uBAAuB,WAAW,CAAC,MAAM,QAAQ,CAAC,CAAA;YAC/D,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEd,cAAc;YACd,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAA;gBAC1D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACd,KAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;YACrE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,CAAC,CAAA;gBACzD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAEd,mBAAmB;gBACnB,MAAM,KAAK,GAAG,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;gBACrD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAA;gBACzF,CAAC;YACH,CAAC;YAED,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtE,OAAO,UAAU,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAA;QACxD,CAAC;IACH,CAAC,EAAE,gCAAgC,CAAC;CACrC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAc;IAC3C,wBAAwB;IACxB,sBAAsB;IACtB,0BAA0B;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B;IACxC,qDAAqD;AACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-decay.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory-decay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAM1E,UAAU,gBAAgB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAkDD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,cAAc,CAAC,gBAAgB,CA4B3D,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAAwC,CAAA;AAErF;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
1
+ {"version":3,"file":"memory-decay.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory-decay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAO1E,UAAU,gBAAgB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAuDD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,cAAc,CAAC,gBAAgB,CA4B3D,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAAwC,CAAA;AAErF;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
@@ -10,13 +10,15 @@
10
10
  */
11
11
  import { executeMemoryDecay, formatDecayResult, } from '../../core/context/memory-decay.js';
12
12
  import { defineTool, registry } from '../registry.js';
13
+ import { withSessionContext } from '../utils/session-context.js';
13
14
  // =============================================================================
14
15
  // Tool Handlers
15
16
  // =============================================================================
16
17
  /**
17
18
  * Memory decay handler
19
+ * v17.6.0: Session context available for focus-aware decay prioritization
18
20
  */
19
- async function handleMemoryDecay(params, projectDir) {
21
+ async function handleMemoryDecay(params, projectDir, _session) {
20
22
  // Generate session ID if not provided
21
23
  const sessionId = params.sessionId ?? `session-${Date.now()}`;
22
24
  // Build config from params
@@ -75,7 +77,7 @@ export const memoryDecayTool = defineTool({
75
77
  },
76
78
  required: [],
77
79
  },
78
- handler: handleMemoryDecay,
80
+ handler: withSessionContext(handleMemoryDecay),
79
81
  whenToUse: 'Use at session start to age content from previous sessions. Automatically moves old content to Archive section.',
80
82
  relatedTools: ['dino_auto_unload', 'dino_health_check'],
81
83
  version: '15.0.0',
@@ -1 +1 @@
1
- {"version":3,"file":"memory-decay.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory-decay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-decay.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory-decay.ts"],"names":[],"mappings":"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"}
@@ -6,15 +6,18 @@
6
6
  *
7
7
  * Tools:
8
8
  * - dino_prefetch - Prefetch files based on focus and dependency graph
9
+ *
10
+ * v17.6.0: Added automatic session context loading for focus
9
11
  */
10
12
  import { type ToolDefinition } from '../registry.js';
11
13
  interface PrefetchInput {
12
- focus: string;
14
+ focus?: string;
13
15
  budgetPercentage?: number;
14
16
  maxCandidates?: number;
15
17
  }
16
18
  /**
17
19
  * Prefetch tool definition
20
+ * v17.6.0: Auto-loads focus from session context
18
21
  */
19
22
  export declare const prefetchTool: ToolDefinition<PrefetchInput>;
20
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prefetch.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/prefetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAM1E,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAuGD;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,cAAc,CAAC,aAAa,CA4BrD,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,cAAc,EAAqC,CAAA;AAE/E;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
1
+ {"version":3,"file":"prefetch.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/prefetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAO1E,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAmHD;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,cAAc,CAAC,aAAa,CA6BrD,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,cAAc,EAAqC,CAAA;AAE/E;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -6,22 +6,31 @@
6
6
  *
7
7
  * Tools:
8
8
  * - dino_prefetch - Prefetch files based on focus and dependency graph
9
+ *
10
+ * v17.6.0: Added automatic session context loading for focus
9
11
  */
10
12
  import { getFeatureFlags } from '../../core/config/feature-flags.js';
11
13
  import { loadAccessPatterns } from '../../core/context/access-tracker.js';
12
14
  import { formatPrefetchCandidates, getPrefetchCandidates, getPrefetchStats, loadGraphForPrefetch, } from '../../core/context/prefetch-optimizer.js';
13
15
  import { recordMetric } from '../../core/metrics/index.js';
14
16
  import { defineTool, registry } from '../registry.js';
17
+ import { withSessionContext } from '../utils/session-context.js';
15
18
  // =============================================================================
16
19
  // Tool Handlers
17
20
  // =============================================================================
18
21
  /**
19
22
  * Prefetch handler
20
23
  * Loads dependency graph and access patterns, returns prefetch candidates
24
+ * v17.6.0: Auto-loads focus from session context if not provided
21
25
  */
22
- async function handlePrefetch(params, projectDir) {
26
+ async function handlePrefetch(params, projectDir, session) {
23
27
  // v16.0.0: Track execution time for metrics
24
28
  const metricsStartTime = performance.now();
29
+ // Auto-load focus from session if not provided
30
+ const focus = params.focus || session.focusArea;
31
+ if (!focus) {
32
+ return '# Prefetch\n\n**Skipped:** No focus area provided and no focus in session.md. Please set a focus area first.';
33
+ }
25
34
  // Check feature flag
26
35
  const flags = await getFeatureFlags(projectDir);
27
36
  if (!flags.autoPrefetch) {
@@ -45,14 +54,14 @@ async function handlePrefetch(params, projectDir) {
45
54
  // Get stats
46
55
  const stats = getPrefetchStats(graph, accessPatterns);
47
56
  // Get candidates using focus as entry point
48
- const candidates = getPrefetchCandidates(params.focus, graph, accessPatterns, {
57
+ const candidates = getPrefetchCandidates(focus, graph, accessPatterns, {
49
58
  maxFiles: maxCandidates,
50
59
  });
51
60
  // Format output
52
61
  const lines = [];
53
62
  lines.push('# Prefetch Result');
54
63
  lines.push('');
55
- lines.push(`**Focus:** \`${params.focus}\``);
64
+ lines.push(`**Focus:** \`${focus}\`${params.focus ? '' : ' (from session)'}`);
56
65
  lines.push(`**Budget:** ${budgetPercent}%`);
57
66
  lines.push(`**Graph available:** ${stats.hasGraph ? 'Yes' : 'No'}`);
58
67
  lines.push(`**Access patterns:** ${stats.hasPatterns ? `Yes (${stats.totalPatterns} patterns)` : 'No'}`);
@@ -83,11 +92,12 @@ async function handlePrefetch(params, projectDir) {
83
92
  outcome: candidates.length > 0 ? 'success' : 'skipped',
84
93
  durationMs: performance.now() - metricsStartTime,
85
94
  budgetPercentage: budgetPercent,
86
- focusArea: params.focus,
95
+ focusArea: focus,
87
96
  metadata: {
88
97
  candidateCount: candidates.length,
89
98
  hasGraph: stats.hasGraph,
90
99
  hasPatterns: stats.hasPatterns,
100
+ autoLoaded: !params.focus,
91
101
  },
92
102
  });
93
103
  }
@@ -101,6 +111,7 @@ async function handlePrefetch(params, projectDir) {
101
111
  // =============================================================================
102
112
  /**
103
113
  * Prefetch tool definition
114
+ * v17.6.0: Auto-loads focus from session context
104
115
  */
105
116
  export const prefetchTool = defineTool({
106
117
  name: 'dino_prefetch',
@@ -111,7 +122,7 @@ export const prefetchTool = defineTool({
111
122
  properties: {
112
123
  focus: {
113
124
  type: 'string',
114
- description: 'Current focus path (file or directory) to prefetch related files for',
125
+ description: 'Current focus path (file or directory) to prefetch related files for (optional, auto-loaded from session)',
115
126
  },
116
127
  budgetPercentage: {
117
128
  type: 'number',
@@ -122,9 +133,9 @@ export const prefetchTool = defineTool({
122
133
  description: 'Maximum files to prefetch (default: 5)',
123
134
  },
124
135
  },
125
- required: ['focus'],
136
+ required: [],
126
137
  },
127
- handler: handlePrefetch,
138
+ handler: withSessionContext(handlePrefetch),
128
139
  whenToUse: 'Use to predictively prefetch related files when focus changes. Called by post-edit hook on focus change. Respects autoPrefetch feature flag.',
129
140
  relatedTools: ['dino_retrieval_optimize', 'dino_expand'],
130
141
  version: '15.0.0',
@@ -1 +1 @@
1
- {"version":3,"file":"prefetch.js","sourceRoot":"","sources":["../../../src/mcp/tools/prefetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prefetch.js","sourceRoot":"","sources":["../../../src/mcp/tools/prefetch.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,8 @@ interface RalphIterateParallelInput {
84
84
  * - [ ] Validates email format
85
85
  * **Test Command:** vitest run src/auth/login.test.ts
86
86
  * ```
87
+ *
88
+ * v17.6.0: If content is empty, attempts to read from .dino/prd.md as fallback
87
89
  */
88
90
  export declare function parsePRD(content: string, overrideTitle?: string): RalphPRD;
89
91
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ralph.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/ralph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ralph.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/ralph.ts"],"names":[],"mappings":"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"}