@houtini/lm 1.0.12 → 2.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 (263) hide show
  1. package/README.md +5 -6
  2. package/dist/index.d.ts +5 -3
  3. package/dist/index.js +142 -213
  4. package/dist/index.js.map +1 -1
  5. package/package.json +10 -33
  6. package/CHANGELOG.md +0 -282
  7. package/dist/cache/analysis-cache.d.ts +0 -33
  8. package/dist/cache/analysis-cache.d.ts.map +0 -1
  9. package/dist/cache/analysis-cache.js +0 -56
  10. package/dist/cache/analysis-cache.js.map +0 -1
  11. package/dist/cache/cache-manager.d.ts +0 -29
  12. package/dist/cache/cache-manager.d.ts.map +0 -1
  13. package/dist/cache/cache-manager.js +0 -85
  14. package/dist/cache/cache-manager.js.map +0 -1
  15. package/dist/cache/index.d.ts +0 -16
  16. package/dist/cache/index.d.ts.map +0 -1
  17. package/dist/cache/index.js +0 -17
  18. package/dist/cache/index.js.map +0 -1
  19. package/dist/cache/prompt-cache.d.ts +0 -33
  20. package/dist/cache/prompt-cache.d.ts.map +0 -1
  21. package/dist/cache/prompt-cache.js +0 -61
  22. package/dist/cache/prompt-cache.js.map +0 -1
  23. package/dist/config.d.ts +0 -41
  24. package/dist/config.d.ts.map +0 -1
  25. package/dist/config.js +0 -71
  26. package/dist/config.js.map +0 -1
  27. package/dist/core/ThreeStagePromptManager.d.ts +0 -23
  28. package/dist/core/ThreeStagePromptManager.d.ts.map +0 -1
  29. package/dist/core/ThreeStagePromptManager.js +0 -118
  30. package/dist/core/ThreeStagePromptManager.js.map +0 -1
  31. package/dist/index.d.ts.map +0 -1
  32. package/dist/plugins/base-plugin.d.ts +0 -55
  33. package/dist/plugins/base-plugin.d.ts.map +0 -1
  34. package/dist/plugins/base-plugin.js +0 -120
  35. package/dist/plugins/base-plugin.js.map +0 -1
  36. package/dist/plugins/index.d.ts +0 -58
  37. package/dist/plugins/index.d.ts.map +0 -1
  38. package/dist/plugins/index.js +0 -162
  39. package/dist/plugins/index.js.map +0 -1
  40. package/dist/plugins/types.d.ts +0 -5
  41. package/dist/plugins/types.d.ts.map +0 -1
  42. package/dist/plugins/types.js +0 -5
  43. package/dist/plugins/types.js.map +0 -1
  44. package/dist/prompts/analyze/code-quality.d.ts +0 -116
  45. package/dist/prompts/analyze/code-quality.d.ts.map +0 -1
  46. package/dist/prompts/analyze/code-quality.js +0 -437
  47. package/dist/prompts/analyze/code-quality.js.map +0 -1
  48. package/dist/prompts/analyze/compare-integration.d.ts +0 -130
  49. package/dist/prompts/analyze/compare-integration.d.ts.map +0 -1
  50. package/dist/prompts/analyze/compare-integration.js +0 -547
  51. package/dist/prompts/analyze/compare-integration.js.map +0 -1
  52. package/dist/prompts/analyze/count-files.d.ts +0 -109
  53. package/dist/prompts/analyze/count-files.d.ts.map +0 -1
  54. package/dist/prompts/analyze/count-files.js +0 -403
  55. package/dist/prompts/analyze/count-files.js.map +0 -1
  56. package/dist/prompts/analyze/database-queries.d.ts +0 -156
  57. package/dist/prompts/analyze/database-queries.d.ts.map +0 -1
  58. package/dist/prompts/analyze/database-queries.js +0 -763
  59. package/dist/prompts/analyze/database-queries.js.map +0 -1
  60. package/dist/prompts/analyze/dependencies.d.ts +0 -97
  61. package/dist/prompts/analyze/dependencies.d.ts.map +0 -1
  62. package/dist/prompts/analyze/dependencies.js +0 -337
  63. package/dist/prompts/analyze/dependencies.js.map +0 -1
  64. package/dist/prompts/analyze/diff-signatures.d.ts +0 -139
  65. package/dist/prompts/analyze/diff-signatures.d.ts.map +0 -1
  66. package/dist/prompts/analyze/diff-signatures.js +0 -708
  67. package/dist/prompts/analyze/diff-signatures.js.map +0 -1
  68. package/dist/prompts/analyze/find-patterns.d.ts +0 -128
  69. package/dist/prompts/analyze/find-patterns.d.ts.map +0 -1
  70. package/dist/prompts/analyze/find-patterns.js +0 -524
  71. package/dist/prompts/analyze/find-patterns.js.map +0 -1
  72. package/dist/prompts/analyze/find-unused-css.d.ts +0 -151
  73. package/dist/prompts/analyze/find-unused-css.d.ts.map +0 -1
  74. package/dist/prompts/analyze/find-unused-css.js +0 -760
  75. package/dist/prompts/analyze/find-unused-css.js.map +0 -1
  76. package/dist/prompts/analyze/n8n-workflow.d.ts +0 -137
  77. package/dist/prompts/analyze/n8n-workflow.d.ts.map +0 -1
  78. package/dist/prompts/analyze/n8n-workflow.js +0 -533
  79. package/dist/prompts/analyze/n8n-workflow.js.map +0 -1
  80. package/dist/prompts/analyze/project-structure.d.ts +0 -126
  81. package/dist/prompts/analyze/project-structure.d.ts.map +0 -1
  82. package/dist/prompts/analyze/project-structure.js +0 -573
  83. package/dist/prompts/analyze/project-structure.js.map +0 -1
  84. package/dist/prompts/analyze/security-audit.d.ts +0 -142
  85. package/dist/prompts/analyze/security-audit.d.ts.map +0 -1
  86. package/dist/prompts/analyze/security-audit.js +0 -641
  87. package/dist/prompts/analyze/security-audit.js.map +0 -1
  88. package/dist/prompts/analyze/single-file.d.ts +0 -162
  89. package/dist/prompts/analyze/single-file.d.ts.map +0 -1
  90. package/dist/prompts/analyze/single-file.js +0 -669
  91. package/dist/prompts/analyze/single-file.js.map +0 -1
  92. package/dist/prompts/analyze/trace-execution.d.ts +0 -126
  93. package/dist/prompts/analyze/trace-execution.d.ts.map +0 -1
  94. package/dist/prompts/analyze/trace-execution.js +0 -613
  95. package/dist/prompts/analyze/trace-execution.js.map +0 -1
  96. package/dist/prompts/analyze/wordpress-plugin-audit.d.ts +0 -116
  97. package/dist/prompts/analyze/wordpress-plugin-audit.d.ts.map +0 -1
  98. package/dist/prompts/analyze/wordpress-plugin-audit.js +0 -456
  99. package/dist/prompts/analyze/wordpress-plugin-audit.js.map +0 -1
  100. package/dist/prompts/analyze/wordpress-plugin-readiness.d.ts +0 -103
  101. package/dist/prompts/analyze/wordpress-plugin-readiness.d.ts.map +0 -1
  102. package/dist/prompts/analyze/wordpress-plugin-readiness.js +0 -506
  103. package/dist/prompts/analyze/wordpress-plugin-readiness.js.map +0 -1
  104. package/dist/prompts/analyze/wordpress-security.d.ts +0 -146
  105. package/dist/prompts/analyze/wordpress-security.d.ts.map +0 -1
  106. package/dist/prompts/analyze/wordpress-security.js +0 -702
  107. package/dist/prompts/analyze/wordpress-security.js.map +0 -1
  108. package/dist/prompts/analyze/wordpress-theme-audit.d.ts +0 -114
  109. package/dist/prompts/analyze/wordpress-theme-audit.d.ts.map +0 -1
  110. package/dist/prompts/analyze/wordpress-theme-audit.js +0 -540
  111. package/dist/prompts/analyze/wordpress-theme-audit.js.map +0 -1
  112. package/dist/prompts/custom/custom-prompt.d.ts +0 -135
  113. package/dist/prompts/custom/custom-prompt.d.ts.map +0 -1
  114. package/dist/prompts/custom/custom-prompt.js +0 -421
  115. package/dist/prompts/custom/custom-prompt.js.map +0 -1
  116. package/dist/prompts/fun/arcade-game.d.ts +0 -152
  117. package/dist/prompts/fun/arcade-game.d.ts.map +0 -1
  118. package/dist/prompts/fun/arcade-game.js +0 -657
  119. package/dist/prompts/fun/arcade-game.js.map +0 -1
  120. package/dist/prompts/fun/create_text_adventure.d.ts +0 -100
  121. package/dist/prompts/fun/create_text_adventure.d.ts.map +0 -1
  122. package/dist/prompts/fun/create_text_adventure.js +0 -401
  123. package/dist/prompts/fun/create_text_adventure.js.map +0 -1
  124. package/dist/prompts/fun/css-art-generator.d.ts +0 -168
  125. package/dist/prompts/fun/css-art-generator.d.ts.map +0 -1
  126. package/dist/prompts/fun/css-art-generator.js +0 -831
  127. package/dist/prompts/fun/css-art-generator.js.map +0 -1
  128. package/dist/prompts/generate/project-documentation.d.ts +0 -137
  129. package/dist/prompts/generate/project-documentation.d.ts.map +0 -1
  130. package/dist/prompts/generate/project-documentation.js +0 -670
  131. package/dist/prompts/generate/project-documentation.js.map +0 -1
  132. package/dist/prompts/generate/refactoring.d.ts +0 -164
  133. package/dist/prompts/generate/refactoring.d.ts.map +0 -1
  134. package/dist/prompts/generate/refactoring.js +0 -625
  135. package/dist/prompts/generate/refactoring.js.map +0 -1
  136. package/dist/prompts/generate/responsive-component.d.ts +0 -147
  137. package/dist/prompts/generate/responsive-component.d.ts.map +0 -1
  138. package/dist/prompts/generate/responsive-component.js +0 -957
  139. package/dist/prompts/generate/responsive-component.js.map +0 -1
  140. package/dist/prompts/generate/typescript-conversion.d.ts +0 -144
  141. package/dist/prompts/generate/typescript-conversion.d.ts.map +0 -1
  142. package/dist/prompts/generate/typescript-conversion.js +0 -531
  143. package/dist/prompts/generate/typescript-conversion.js.map +0 -1
  144. package/dist/prompts/generate/unit-tests.d.ts +0 -139
  145. package/dist/prompts/generate/unit-tests.d.ts.map +0 -1
  146. package/dist/prompts/generate/unit-tests.js +0 -582
  147. package/dist/prompts/generate/unit-tests.js.map +0 -1
  148. package/dist/prompts/generate/wordpress-plugin.d.ts +0 -179
  149. package/dist/prompts/generate/wordpress-plugin.d.ts.map +0 -1
  150. package/dist/prompts/generate/wordpress-plugin.js +0 -767
  151. package/dist/prompts/generate/wordpress-plugin.js.map +0 -1
  152. package/dist/prompts/generate/wordpress-theme-from-static.d.ts +0 -177
  153. package/dist/prompts/generate/wordpress-theme-from-static.d.ts.map +0 -1
  154. package/dist/prompts/generate/wordpress-theme-from-static.js +0 -699
  155. package/dist/prompts/generate/wordpress-theme-from-static.js.map +0 -1
  156. package/dist/prompts/shared/cache-manager.d.ts +0 -45
  157. package/dist/prompts/shared/cache-manager.d.ts.map +0 -1
  158. package/dist/prompts/shared/cache-manager.js +0 -129
  159. package/dist/prompts/shared/cache-manager.js.map +0 -1
  160. package/dist/prompts/shared/helpers.d.ts +0 -39
  161. package/dist/prompts/shared/helpers.d.ts.map +0 -1
  162. package/dist/prompts/shared/helpers.js +0 -151
  163. package/dist/prompts/shared/helpers.js.map +0 -1
  164. package/dist/prompts/shared/templates.d.ts +0 -35
  165. package/dist/prompts/shared/templates.d.ts.map +0 -1
  166. package/dist/prompts/shared/templates.js +0 -77
  167. package/dist/prompts/shared/templates.js.map +0 -1
  168. package/dist/prompts/shared/types.d.ts +0 -112
  169. package/dist/prompts/shared/types.d.ts.map +0 -1
  170. package/dist/prompts/shared/types.js +0 -5
  171. package/dist/prompts/shared/types.js.map +0 -1
  172. package/dist/prompts/system/find-unused-files.d.ts +0 -106
  173. package/dist/prompts/system/find-unused-files.d.ts.map +0 -1
  174. package/dist/prompts/system/find-unused-files.js +0 -357
  175. package/dist/prompts/system/find-unused-files.js.map +0 -1
  176. package/dist/security/index.d.ts +0 -39
  177. package/dist/security/index.d.ts.map +0 -1
  178. package/dist/security/index.js +0 -46
  179. package/dist/security/index.js.map +0 -1
  180. package/dist/security/integration-helpers.d.ts +0 -121
  181. package/dist/security/integration-helpers.d.ts.map +0 -1
  182. package/dist/security/integration-helpers.js +0 -190
  183. package/dist/security/integration-helpers.js.map +0 -1
  184. package/dist/security/output-encoder.d.ts +0 -94
  185. package/dist/security/output-encoder.d.ts.map +0 -1
  186. package/dist/security/output-encoder.js +0 -295
  187. package/dist/security/output-encoder.js.map +0 -1
  188. package/dist/security/prompt-injection-guard.d.ts +0 -59
  189. package/dist/security/prompt-injection-guard.d.ts.map +0 -1
  190. package/dist/security/prompt-injection-guard.js +0 -249
  191. package/dist/security/prompt-injection-guard.js.map +0 -1
  192. package/dist/security/sanitisation.d.ts +0 -67
  193. package/dist/security/sanitisation.d.ts.map +0 -1
  194. package/dist/security/sanitisation.js +0 -398
  195. package/dist/security/sanitisation.js.map +0 -1
  196. package/dist/security/security-service.d.ts +0 -103
  197. package/dist/security/security-service.d.ts.map +0 -1
  198. package/dist/security/security-service.js +0 -303
  199. package/dist/security/security-service.js.map +0 -1
  200. package/dist/security-config.d.ts +0 -45
  201. package/dist/security-config.d.ts.map +0 -1
  202. package/dist/security-config.js +0 -63
  203. package/dist/security-config.js.map +0 -1
  204. package/dist/system/function-list.d.ts +0 -61
  205. package/dist/system/function-list.d.ts.map +0 -1
  206. package/dist/system/function-list.js +0 -111
  207. package/dist/system/function-list.js.map +0 -1
  208. package/dist/system/function-registry.d.ts +0 -23
  209. package/dist/system/function-registry.d.ts.map +0 -1
  210. package/dist/system/function-registry.js +0 -136
  211. package/dist/system/function-registry.js.map +0 -1
  212. package/dist/system/health-check.d.ts +0 -33
  213. package/dist/system/health-check.d.ts.map +0 -1
  214. package/dist/system/health-check.js +0 -98
  215. package/dist/system/health-check.js.map +0 -1
  216. package/dist/system/path-resolver.d.ts +0 -55
  217. package/dist/system/path-resolver.d.ts.map +0 -1
  218. package/dist/system/path-resolver.js +0 -90
  219. package/dist/system/path-resolver.js.map +0 -1
  220. package/dist/templates/plugin-template.d.ts +0 -121
  221. package/dist/templates/plugin-template.d.ts.map +0 -1
  222. package/dist/templates/plugin-template.js +0 -454
  223. package/dist/templates/plugin-template.js.map +0 -1
  224. package/dist/types/chunking-types.d.ts +0 -88
  225. package/dist/types/chunking-types.d.ts.map +0 -1
  226. package/dist/types/chunking-types.js +0 -18
  227. package/dist/types/chunking-types.js.map +0 -1
  228. package/dist/types/prompt-stages.d.ts +0 -30
  229. package/dist/types/prompt-stages.d.ts.map +0 -1
  230. package/dist/types/prompt-stages.js +0 -6
  231. package/dist/types/prompt-stages.js.map +0 -1
  232. package/dist/types.d.ts +0 -45
  233. package/dist/types.d.ts.map +0 -1
  234. package/dist/types.js +0 -6
  235. package/dist/types.js.map +0 -1
  236. package/dist/utils/css-parser.d.ts +0 -26
  237. package/dist/utils/css-parser.d.ts.map +0 -1
  238. package/dist/utils/css-parser.js +0 -117
  239. package/dist/utils/css-parser.js.map +0 -1
  240. package/dist/utils/path-resolver.d.ts +0 -13
  241. package/dist/utils/path-resolver.d.ts.map +0 -1
  242. package/dist/utils/path-resolver.js +0 -78
  243. package/dist/utils/path-resolver.js.map +0 -1
  244. package/dist/utils/plugin-utilities.d.ts +0 -176
  245. package/dist/utils/plugin-utilities.d.ts.map +0 -1
  246. package/dist/utils/plugin-utilities.js +0 -269
  247. package/dist/utils/plugin-utilities.js.map +0 -1
  248. package/dist/utils/streamHandler.d.ts +0 -3
  249. package/dist/utils/streamHandler.d.ts.map +0 -1
  250. package/dist/utils/streamHandler.js +0 -137
  251. package/dist/utils/streamHandler.js.map +0 -1
  252. package/dist/validation/output-validator.d.ts +0 -136
  253. package/dist/validation/output-validator.d.ts.map +0 -1
  254. package/dist/validation/output-validator.js +0 -262
  255. package/dist/validation/output-validator.js.map +0 -1
  256. package/dist/validation/response-factory.d.ts +0 -44
  257. package/dist/validation/response-factory.d.ts.map +0 -1
  258. package/dist/validation/response-factory.js +0 -202
  259. package/dist/validation/response-factory.js.map +0 -1
  260. package/dist/validation/schemas.d.ts +0 -519
  261. package/dist/validation/schemas.d.ts.map +0 -1
  262. package/dist/validation/schemas.js +0 -6
  263. package/dist/validation/schemas.js.map +0 -1
package/CHANGELOG.md DELETED
@@ -1,282 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [1.0.10] - 2025-01-09
9
-
10
- ### Fixed
11
- - **Increased timeout to 5 minutes** - Changed LM Studio timeout from 120000ms (2 minutes) to 300000ms (5 minutes)
12
- - Prevents timeouts on large multi-file analysis and complex generation tasks
13
- - Improves reliability for slower local models or heavily loaded systems
14
- - Addresses timeout issues with project-wide security audits and creative functions
15
- - Particularly beneficial for WordPress plugin/theme analysis and large codebase operations
16
-
17
- ## [4.1.0] - 2025-08-29
18
-
19
- ### 🎉 MAJOR RELEASE - 3-Stage Architecture Complete
20
-
21
- ### Added
22
- - **Complete 3-Stage Architecture Deployment** - All multifile plugins now use the proven 3-stage prompt architecture
23
- - `ThreeStagePromptManager` integration across all 4 multifile plugins
24
- - `getPromptStages()` method with structured prompt stages (System+Context, Data Payload, Output Instructions)
25
- - `executeSinglePass()` and `executeWithChunking()` methods for intelligent operation sizing
26
- - Dynamic context detection from LM Studio (23,832 tokens from Qwen 3 Coder 30B)
27
-
28
- ### Changed
29
- - **Architecture Consistency** - Eliminated dual chunking conflicts throughout codebase
30
- - Context Window Manager is now the sole chunking authority
31
- - Single, consistent 3-stage chunking system across all multifile operations
32
- - Smart prompt staging for optimal LLM utilization
33
- - Consistent error handling and response formatting
34
-
35
- ### Fixed
36
- - **100% Success Rate** - All multifile functions tested and verified working:
37
- - ✅ `compare_integration`: Perfect integration analysis with detailed findings
38
- - ✅ `trace_execution_path`: Successful 4-chunk processing with execution traces
39
- - ✅ `diff_method_signatures`: Accurate signature compatibility analysis
40
- - ✅ `find_pattern_usage`: Pattern detection across entire codebase
41
-
42
- ### Performance
43
- - **Context Preservation** - Eliminated hardcoded limits in favor of dynamic detection
44
- - **Scalable Operations** - Support for any operation size through intelligent chunking
45
- - **Memory Efficiency** - Optimized prompt staging reduces token waste
46
- - **Reliability** - Robust error handling and fallback mechanisms
47
-
48
- ## [4.0.1] - 2025-08-29
49
-
50
- ### Fixed
51
- - **Cache Management Tools Registration** - Fixed plugin loader to properly register cache management functions
52
- - `clear_analysis_cache` and `get_cache_statistics` now properly available as MCP tools
53
- - Fixed file:// URL format issue in plugin loader for Windows paths
54
- - Build process now correctly compiles and exposes all 17 functions
55
-
56
- ### Added
57
- - **100% Function Completion** - All 17 functions from functional specification v4.0 now working:
58
- - 4 Analysis functions: analyze_single_file, security_audit, analyze_project_structure, analyze_n8n_workflow
59
- - 6 Generation functions: generate_unit_tests, generate_documentation, suggest_refactoring, generate_wordpress_plugin, convert_to_typescript, generate_responsive_component
60
- - 4 Multi-file functions: compare_integration, trace_execution_path, find_pattern_usage, diff_method_signatures
61
- - 3 System functions: health_check, clear_analysis_cache, get_cache_statistics
62
-
63
- ### Changed
64
- - **Documentation Updates** - Comprehensive README.md updates to reflect 100% completion status
65
- - Updated function counts and categorization
66
- - Added completion badges and status indicators
67
- - Improved tool organization and descriptions
68
- - Token savings data refreshed
69
-
70
- ## [4.0.0] - 2025-08-28
71
-
72
- ### Changed
73
- - **BREAKING**: Renamed `analyze_code_structure` to `analyze_single_file` for clarity
74
- - The function now explicitly indicates it analyses a single file, not a directory
75
- - Use `analyze_project_structure` for multi-file/directory analysis
76
- - All enum references updated from `CODE_STRUCTURE` to `ANALYZE_SINGLE_FILE`
77
-
78
- ## [3.0.4] - 2025-08-27
79
-
80
- ### Fixed
81
- - **Critical streaming issue** - Resolved `[object Object]` output when processing LLM responses
82
- - **LM Studio SDK compatibility** - Proper handling of object-based chunks with `content` property
83
- - **Qwen model support** - Fixed streaming for Qwen thinking models that output structured chunks
84
-
85
- ### Added
86
- - **Stream handler integration** - Robust chunk processing for multiple streaming formats
87
- - **Test scripts**:
88
- - `test-llm-streaming.mjs` - Direct LLM streaming validation
89
- - `test-streaming-fix.mjs` - MCP protocol streaming test
90
- - **Comprehensive streaming support** for:
91
- - LM Studio object chunks
92
- - OpenAI-style responses
93
- - Plain text strings
94
- - Unknown object formats with JSON fallback
95
-
96
- ### Changed
97
- - Replaced simple string concatenation with `handleLLMResponse` function
98
- - Improved error handling for malformed chunks
99
-
100
- ## [3.0.3] - 2025-08-26
101
-
102
- ### Fixed
103
- - Added missing `health_check` tool definition (handler existed but tool wasn't registered)
104
- - Added empty handlers for `resources/list` and `prompts/list` to prevent "Method not found" errors in Claude logs
105
- - These optional MCP protocol methods now return empty arrays as expected
106
-
107
- ### Added
108
- - **Diagnostic Tools**:
109
- - `diagnostics/run-diagnostics.mjs` - Comprehensive system diagnostic tool that checks:
110
- - Node.js version compatibility
111
- - LM Studio connection and loaded models
112
- - Claude configuration validity
113
- - Multiple Claude process detection
114
- - MCP server startup capability
115
- - Generates detailed `diagnostic-report.json`
116
- - `diagnostics/check-claude-processes.mjs` - Windows-specific tool to detect multiple Claude.exe processes
117
- - **Documentation Updates**:
118
- - Added "Known Issues" section to TROUBLESHOOTING.md
119
- - Documented multiple Claude.exe processes issue and solution
120
- - Documented "Method not found" errors and resolution
121
- - Added diagnostic tool usage instructions
122
-
123
- ### Changed
124
- - Enhanced troubleshooting guide with new debugging tools section
125
- - Improved error diagnostics and user guidance
126
-
127
- ## [3.0.2] - 2025-08-23
128
-
129
- ### Fixed
130
- - Added missing shebang (`#!/usr/bin/env node`) to dist/index.js for NPX execution
131
- - Fixed NPM package execution on Windows
132
- - Added post-build script to ensure shebang persists after TypeScript compilation
133
-
134
- ## [3.0.1] - 2025-08-23
135
-
136
- ### Changed
137
- - Cleaned up root directory by removing development and handover files
138
- - Updated .gitignore to prevent future development file commits
139
- - Repository now contains only essential files for npm package and GitHub
140
-
141
- ### Removed
142
- - Development documentation files (handover, implementation notes)
143
- - Test files used during development (test-enhanced*.mjs)
144
- - Backup directories and migration scripts
145
- - 18 unnecessary files total
146
-
147
- ## [3.0.0] - 2025-08-25
148
-
149
- ### Added
150
- - **Context-aware prompts** for enhanced code analysis
151
- - Support for 11 project types (WordPress, React, n8n, Node.js, etc.)
152
- - Framework-specific best practices and suggestions
153
- - Optional context parameter maintains backward compatibility
154
- - **5 new powerful tools**:
155
- - `generate_wordpress_plugin` - Complete WordPress plugin generator with Brain Monkey test support
156
- - `analyze_n8n_workflow` - n8n workflow optimization and analysis
157
- - `generate_responsive_component` - Accessible, responsive component generator
158
- - `convert_to_typescript` - Intelligent JavaScript to TypeScript converter
159
- - `security_audit` - Project-specific security vulnerability scanner
160
- - **90% token savings** through intelligent task delegation
161
- - **Enhanced type system** with comprehensive TypeScript definitions
162
- - **Project-specific security checklists** for each supported framework
163
-
164
- ### Changed
165
- - **RENAMED**: `analyze_code_structure` is now `analyze_single_file` for clarity
166
- - `analyze_single_file` - Now provides framework-specific insights for a single file
167
- - Note: Use `analyze_project_structure` for multi-file/directory analysis
168
- - Enhanced existing tools with optional context support:
169
- - `generate_unit_tests` - Creates framework-aware test suites
170
- - `generate_documentation` - Generates audience-appropriate documentation
171
- - `suggest_refactoring` - Offers project-specific improvements
172
- - Improved prompt quality for better LLM responses
173
- - Better error messages with context-aware suggestions
174
-
175
- ### Technical Improvements
176
- - Modular prompt system for easier maintenance
177
- - Comprehensive type definitions for all contexts
178
- - Enhanced prompt templates with domain knowledge
179
- - Improved code organization and separation of concerns
180
-
181
- ## [2.2.2] - 2025-08-25
182
-
183
- ### Fixed
184
- - Fixed NPX execution on Windows by normalizing file paths
185
- - Handle forward/backward slash differences between import.meta.url and process.argv
186
- - Fixed "server transport closed unexpectedly" error when using NPX
187
-
188
- ## [2.2.1] - 2025-08-25
189
-
190
- ### Fixed
191
- - Added missing bin field to enable NPX execution
192
- - Fixed "could not determine executable to run" error
193
- - Updated examples to show NPX usage
194
-
195
- ### Added
196
- - Clean and rebuild scripts for easier development
197
-
198
- ## [2.2.0] - 2025-08-25
199
-
200
- ### Fixed
201
- - Restored all missing tool definitions in setupHandlers
202
- - Fixed issue where only health_check was being registered
203
-
204
- ### Added
205
- - All 10 tools now properly available:
206
- - analyze_single_file
207
- - generate_unit_tests
208
- - generate_documentation
209
- - suggest_refactoring
210
- - detect_patterns
211
- - validate_syntax
212
- - suggest_variable_names
213
- - analyze_file
214
- - analyze_csv_data
215
- - health_check
216
-
217
- ## [2.1.0] - 2025-08-24
218
-
219
- ### Added
220
- - **Security Features**:
221
- - Path validation to prevent unauthorized file access
222
- - Configurable allowed directories via LLM_MCP_ALLOWED_DIRS
223
- - Path traversal protection
224
- - File size limits (configurable, default 10MB)
225
- - **Configuration options**:
226
- - Environment variable support for security settings
227
- - Configurable retry logic
228
- - Adjustable timeout settings
229
-
230
- ### Fixed
231
- - Thinking tag regex for better response parsing
232
- - TypeScript strict mode compliance
233
- - Better error handling for invalid paths
234
-
235
- ### Changed
236
- - Improved security posture with opt-in directory access
237
- - Better error messages for permission issues
238
-
239
- ## [2.0.0] - 2025-08-23
240
-
241
- ### Added
242
- - **File attachment support** - Analyze files directly without reading content first
243
- - **LM Studio SDK integration** - Replaced axios with official @lmstudio/sdk
244
- - **New tools**:
245
- - `analyze_file` - General file analysis with custom instructions
246
- - `analyze_csv_data` - CSV filtering and analysis
247
- - **Streaming support** for better performance
248
- - **Enhanced error handling** with better LM Studio status detection
249
-
250
- ### Changed
251
- - Complete rewrite using LM Studio SDK
252
- - Improved connection handling and retry logic
253
- - Better model detection and validation
254
-
255
- ### Removed
256
- - Axios dependency (replaced with LM Studio SDK)
257
- - Manual HTTP request handling
258
-
259
- ## [1.0.0] - 2025-08-22
260
-
261
- ### Initial Release
262
- - Basic code analysis tools
263
- - Unit test generation
264
- - Documentation generation
265
- - Refactoring suggestions
266
- - Pattern detection
267
- - Bug finding
268
- - Variable naming suggestions
269
- - Basic LM Studio integration via HTTP
270
-
271
- ## Migration Notes
272
-
273
- ### Upgrading to v3.0.0
274
- - No breaking changes - all existing code continues to work
275
- - To use new context features, add optional `context` parameter
276
- - New tools available immediately after upgrade
277
- - See [Migration Guide](MIGRATION_GUIDE_V3.md) for detailed upgrade instructions
278
-
279
- ### Upgrading to v2.0.0
280
- - Update LM Studio URL from http:// to ws:// protocol
281
- - File analysis now available through new tools
282
- - Check [Migration Guide](MIGRATION_GUIDE.md) for details
@@ -1,33 +0,0 @@
1
- /**
2
- * Analysis Result Cache
3
- * Specialized caching for plugin analysis results
4
- */
5
- import { BaseCacheManager, CacheConfig } from './cache-manager.js';
6
- export interface AnalysisResult {
7
- summary: string;
8
- findings?: any[];
9
- data?: any;
10
- metadata?: {
11
- modelUsed: string;
12
- executionTime: number;
13
- timestamp: string;
14
- };
15
- }
16
- export declare class AnalysisCache extends BaseCacheManager<AnalysisResult> {
17
- private static instance;
18
- constructor(config?: Partial<CacheConfig>);
19
- static getInstance(config?: Partial<CacheConfig>): AnalysisCache;
20
- /**
21
- * Generate cache key for analysis results
22
- */
23
- generateKey(functionName: string, params: any, fileHashes?: string[]): string;
24
- /**
25
- * Cache analysis result with metadata
26
- */
27
- cacheAnalysis(key: string, result: AnalysisResult, metadata: AnalysisResult['metadata']): Promise<void>;
28
- /**
29
- * Simple hash function for cache keys
30
- */
31
- private hashObject;
32
- }
33
- //# sourceMappingURL=analysis-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analysis-cache.d.ts","sourceRoot":"","sources":["../../src/cache/analysis-cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,qBAAa,aAAc,SAAQ,gBAAgB,CAAC,cAAc,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;gBAE3B,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IASzC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,aAAa;IAOhE;;OAEG;IACH,WAAW,CACT,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,GAAG,EACX,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB,MAAM;IAOT;;OAEG;IACG,aAAa,CACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC;IAYhB;;OAEG;IACH,OAAO,CAAC,UAAU;CAUnB"}
@@ -1,56 +0,0 @@
1
- /**
2
- * Analysis Result Cache
3
- * Specialized caching for plugin analysis results
4
- */
5
- import { BaseCacheManager } from './cache-manager.js';
6
- export class AnalysisCache extends BaseCacheManager {
7
- constructor(config) {
8
- super({
9
- maxEntries: 50, // Smaller cache for analysis results
10
- ttlMs: 30 * 60 * 1000, // 30 minutes TTL
11
- enableStats: true,
12
- ...config
13
- });
14
- }
15
- static getInstance(config) {
16
- if (!this.instance) {
17
- this.instance = new AnalysisCache(config);
18
- }
19
- return this.instance;
20
- }
21
- /**
22
- * Generate cache key for analysis results
23
- */
24
- generateKey(functionName, params, fileHashes) {
25
- const paramHash = this.hashObject(params);
26
- const filesHash = fileHashes ? fileHashes.join('|') : '';
27
- return `${functionName}:${paramHash}:${filesHash}`.substring(0, 128);
28
- }
29
- /**
30
- * Cache analysis result with metadata
31
- */
32
- async cacheAnalysis(key, result, metadata) {
33
- const enrichedResult = {
34
- ...result,
35
- metadata: {
36
- ...metadata,
37
- cachedAt: new Date().toISOString()
38
- }
39
- };
40
- await this.set(key, enrichedResult);
41
- }
42
- /**
43
- * Simple hash function for cache keys
44
- */
45
- hashObject(obj) {
46
- const str = JSON.stringify(obj, Object.keys(obj).sort());
47
- let hash = 0;
48
- for (let i = 0; i < str.length; i++) {
49
- const char = str.charCodeAt(i);
50
- hash = ((hash << 5) - hash) + char;
51
- hash = hash & hash; // Convert to 32bit integer
52
- }
53
- return Math.abs(hash).toString(36);
54
- }
55
- }
56
- //# sourceMappingURL=analysis-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analysis-cache.js","sourceRoot":"","sources":["../../src/cache/analysis-cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAanE,MAAM,OAAO,aAAc,SAAQ,gBAAgC;IAGjE,YAAY,MAA6B;QACvC,KAAK,CAAC;YACJ,UAAU,EAAE,EAAE,EAAG,qCAAqC;YACtD,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAG,iBAAiB;YACzC,WAAW,EAAE,IAAI;YACjB,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAA6B;QAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,WAAW,CACT,YAAoB,EACpB,MAAW,EACX,UAAqB;QAErB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEzD,OAAO,GAAG,YAAY,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,GAAW,EACX,MAAsB,EACtB,QAAoC;QAEpC,MAAM,cAAc,GAAG;YACrB,GAAG,MAAM;YACT,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBACX,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC;SACF,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,GAAQ;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YACnC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,2BAA2B;QACjD,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Core Cache Manager
3
- * Foundation for all caching functionality - analysis, prompts, memory, etc.
4
- */
5
- export interface CacheEntry<T = any> {
6
- value: T;
7
- timestamp: number;
8
- hits: number;
9
- size?: number;
10
- }
11
- export interface CacheConfig {
12
- maxEntries: number;
13
- ttlMs?: number;
14
- enableStats: boolean;
15
- }
16
- export declare abstract class BaseCacheManager<T = any> {
17
- protected cache: Map<string, CacheEntry<T>>;
18
- protected config: CacheConfig;
19
- constructor(config?: Partial<CacheConfig>);
20
- protected isExpired(entry: CacheEntry<T>): boolean;
21
- protected evictIfNeeded(): void;
22
- protected createEntry(value: T): CacheEntry<T>;
23
- protected estimateSize(value: T): number;
24
- get(key: string): Promise<T | null>;
25
- set(key: string, value: T): Promise<void>;
26
- clear(key?: string): void;
27
- getStatistics(): any;
28
- }
29
- //# sourceMappingURL=cache-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache-manager.d.ts","sourceRoot":"","sources":["../../src/cache/cache-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IACjC,KAAK,EAAE,CAAC,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,8BAAsB,gBAAgB,CAAC,CAAC,GAAG,GAAG;IAC5C,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAa;IACxD,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;gBAElB,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM;IAS7C,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO;IAKlD,SAAS,CAAC,aAAa,IAAI,IAAI;IAU/B,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAS9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,GAAG,MAAM;IAQlC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAgBnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAM/C,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzB,aAAa,IAAI,GAAG;CAerB"}
@@ -1,85 +0,0 @@
1
- /**
2
- * Core Cache Manager
3
- * Foundation for all caching functionality - analysis, prompts, memory, etc.
4
- */
5
- export class BaseCacheManager {
6
- constructor(config = {}) {
7
- this.cache = new Map();
8
- this.config = {
9
- maxEntries: 100,
10
- ttlMs: undefined, // No TTL by default
11
- enableStats: true,
12
- ...config
13
- };
14
- }
15
- isExpired(entry) {
16
- if (!this.config.ttlMs)
17
- return false;
18
- return (Date.now() - entry.timestamp) > this.config.ttlMs;
19
- }
20
- evictIfNeeded() {
21
- if (this.cache.size <= this.config.maxEntries)
22
- return;
23
- // Simple FIFO eviction - remove oldest entry
24
- const firstKey = this.cache.keys().next().value;
25
- if (firstKey) {
26
- this.cache.delete(firstKey);
27
- }
28
- }
29
- createEntry(value) {
30
- return {
31
- value,
32
- timestamp: Date.now(),
33
- hits: 0,
34
- size: this.estimateSize(value)
35
- };
36
- }
37
- estimateSize(value) {
38
- try {
39
- return JSON.stringify(value).length;
40
- }
41
- catch {
42
- return 0;
43
- }
44
- }
45
- async get(key) {
46
- const entry = this.cache.get(key);
47
- if (!entry)
48
- return null;
49
- if (this.isExpired(entry)) {
50
- this.cache.delete(key);
51
- return null;
52
- }
53
- // Update hit count for stats
54
- entry.hits++;
55
- return entry.value;
56
- }
57
- async set(key, value) {
58
- this.evictIfNeeded();
59
- const entry = this.createEntry(value);
60
- this.cache.set(key, entry);
61
- }
62
- clear(key) {
63
- if (key) {
64
- this.cache.delete(key);
65
- }
66
- else {
67
- this.cache.clear();
68
- }
69
- }
70
- getStatistics() {
71
- const entries = Array.from(this.cache.values());
72
- const totalSize = entries.reduce((sum, entry) => sum + (entry.size || 0), 0);
73
- const totalHits = entries.reduce((sum, entry) => sum + entry.hits, 0);
74
- return {
75
- totalEntries: this.cache.size,
76
- maxEntries: this.config.maxEntries,
77
- memoryUsage: `${(totalSize / 1024).toFixed(2)} KB`,
78
- totalHits,
79
- avgHitsPerEntry: entries.length > 0 ? (totalHits / entries.length).toFixed(1) : 0,
80
- oldestEntry: entries.length > 0 ? new Date(Math.min(...entries.map(e => e.timestamp))) : null,
81
- config: this.config
82
- };
83
- }
84
- }
85
- //# sourceMappingURL=cache-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache-manager.js","sourceRoot":"","sources":["../../src/cache/cache-manager.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Cache System Exports
3
- * Centralized exports for all caching functionality
4
- */
5
- export { BaseCacheManager } from './cache-manager.js';
6
- export type { CacheEntry, CacheConfig } from './cache-manager.js';
7
- export { AnalysisCache } from './analysis-cache.js';
8
- export type { AnalysisResult } from './analysis-cache.js';
9
- export { PromptCache, MemoryCache } from './prompt-cache.js';
10
- export type { PromptCacheEntry, MemoryEntry } from './prompt-cache.js';
11
- import { AnalysisCache } from './analysis-cache.js';
12
- import { PromptCache, MemoryCache } from './prompt-cache.js';
13
- export declare const getAnalysisCache: () => AnalysisCache;
14
- export declare const getPromptCache: () => PromptCache;
15
- export declare const getMemoryCache: () => MemoryCache;
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGvE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG7D,eAAO,MAAM,gBAAgB,qBAAoC,CAAC;AAClE,eAAO,MAAM,cAAc,mBAAkC,CAAC;AAC9D,eAAO,MAAM,cAAc,mBAAkC,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Cache System Exports
3
- * Centralized exports for all caching functionality
4
- */
5
- // Core cache infrastructure
6
- export { BaseCacheManager } from './cache-manager.js';
7
- // Specialized cache implementations
8
- export { AnalysisCache } from './analysis-cache.js';
9
- export { PromptCache, MemoryCache } from './prompt-cache.js';
10
- // Import the classes for the convenience functions
11
- import { AnalysisCache } from './analysis-cache.js';
12
- import { PromptCache, MemoryCache } from './prompt-cache.js';
13
- // Convenience exports for common usage patterns
14
- export const getAnalysisCache = () => AnalysisCache.getInstance();
15
- export const getPromptCache = () => PromptCache.getInstance();
16
- export const getMemoryCache = () => MemoryCache.getInstance();
17
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4BAA4B;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,sCAAsC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAG7D,mDAAmD;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE7D,gDAAgD;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;AAClE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC"}
@@ -1,33 +0,0 @@
1
- /**
2
- * Prompt/Memory Cache - Placeholder for your planned feature
3
- *
4
- * This is where prompt caching and memory functionality will live
5
- */
6
- import { BaseCacheManager, CacheConfig } from './cache-manager.js';
7
- export interface PromptCacheEntry {
8
- prompt: string;
9
- response: string;
10
- modelUsed: string;
11
- timestamp: string;
12
- contextHash: string;
13
- }
14
- export interface MemoryEntry {
15
- content: string;
16
- context: any;
17
- importance: number;
18
- associations: string[];
19
- timestamp: string;
20
- }
21
- export declare class PromptCache extends BaseCacheManager<PromptCacheEntry> {
22
- private static instance;
23
- constructor(config?: Partial<CacheConfig>);
24
- static getInstance(config?: Partial<CacheConfig>): PromptCache;
25
- cachePromptResponse(promptHash: string, prompt: string, response: string, modelUsed: string): Promise<void>;
26
- }
27
- export declare class MemoryCache extends BaseCacheManager<MemoryEntry> {
28
- private static instance;
29
- constructor(config?: Partial<CacheConfig>);
30
- static getInstance(config?: Partial<CacheConfig>): MemoryCache;
31
- storeMemory(key: string, content: string, context: any, importance?: number): Promise<void>;
32
- }
33
- //# sourceMappingURL=prompt-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-cache.d.ts","sourceRoot":"","sources":["../../src/cache/prompt-cache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,GAAG,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,gBAAgB,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;gBAEzB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IASzC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW;IAQxD,mBAAmB,CACvB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;CAWjB;AAED,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,WAAW,CAAC;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;gBAEzB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IASzC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW;IAQxD,WAAW,CACf,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,GAAG,EACZ,UAAU,GAAE,MAAY,GACvB,OAAO,CAAC,IAAI,CAAC;CAWjB"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Prompt/Memory Cache - Placeholder for your planned feature
3
- *
4
- * This is where prompt caching and memory functionality will live
5
- */
6
- import { BaseCacheManager } from './cache-manager.js';
7
- export class PromptCache extends BaseCacheManager {
8
- constructor(config) {
9
- super({
10
- maxEntries: 200, // Larger cache for prompts
11
- ttlMs: 60 * 60 * 1000, // 1 hour TTL
12
- enableStats: true,
13
- ...config
14
- });
15
- }
16
- static getInstance(config) {
17
- if (!this.instance) {
18
- this.instance = new PromptCache(config);
19
- }
20
- return this.instance;
21
- }
22
- // TODO: Implement your prompt caching logic here
23
- async cachePromptResponse(promptHash, prompt, response, modelUsed) {
24
- const entry = {
25
- prompt,
26
- response,
27
- modelUsed,
28
- timestamp: new Date().toISOString(),
29
- contextHash: promptHash
30
- };
31
- await this.set(promptHash, entry);
32
- }
33
- }
34
- export class MemoryCache extends BaseCacheManager {
35
- constructor(config) {
36
- super({
37
- maxEntries: 1000, // Large cache for memory
38
- ttlMs: undefined, // No expiration for memory
39
- enableStats: true,
40
- ...config
41
- });
42
- }
43
- static getInstance(config) {
44
- if (!this.instance) {
45
- this.instance = new MemoryCache(config);
46
- }
47
- return this.instance;
48
- }
49
- // TODO: Implement your memory functionality here
50
- async storeMemory(key, content, context, importance = 0.5) {
51
- const entry = {
52
- content,
53
- context,
54
- importance,
55
- associations: [], // TODO: Implement association logic
56
- timestamp: new Date().toISOString()
57
- };
58
- await this.set(key, entry);
59
- }
60
- }
61
- //# sourceMappingURL=prompt-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-cache.js","sourceRoot":"","sources":["../../src/cache/prompt-cache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAe,MAAM,oBAAoB,CAAC;AAkBnE,MAAM,OAAO,WAAY,SAAQ,gBAAkC;IAGjE,YAAY,MAA6B;QACvC,KAAK,CAAC;YACJ,UAAU,EAAE,GAAG,EAAG,2BAA2B;YAC7C,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAG,aAAa;YACrC,WAAW,EAAE,IAAI;YACjB,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAA6B;QAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,iDAAiD;IACjD,KAAK,CAAC,mBAAmB,CACvB,UAAkB,EAClB,MAAc,EACd,QAAgB,EAChB,SAAiB;QAEjB,MAAM,KAAK,GAAqB;YAC9B,MAAM;YACN,QAAQ;YACR,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,WAAW,EAAE,UAAU;SACxB,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,gBAA6B;IAG5D,YAAY,MAA6B;QACvC,KAAK,CAAC;YACJ,UAAU,EAAE,IAAI,EAAG,yBAAyB;YAC5C,KAAK,EAAE,SAAS,EAAI,2BAA2B;YAC/C,WAAW,EAAE,IAAI;YACjB,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAA6B;QAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,iDAAiD;IACjD,KAAK,CAAC,WAAW,CACf,GAAW,EACX,OAAe,EACf,OAAY,EACZ,aAAqB,GAAG;QAExB,MAAM,KAAK,GAAgB;YACzB,OAAO;YACP,OAAO;YACP,UAAU;YACV,YAAY,EAAE,EAAE,EAAE,oCAAoC;YACtD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;CACF"}