@polka-codes/cli 0.10.23 → 0.10.24

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 (335) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +3 -3
  3. package/dist/ApiProviderConfig.js +0 -57
  4. package/dist/ApiProviderConfig.js.map +0 -1
  5. package/dist/ApiProviderConfig.test.js +0 -278
  6. package/dist/ApiProviderConfig.test.js.map +0 -1
  7. package/dist/agent/advanced-discovery.js +0 -604
  8. package/dist/agent/advanced-discovery.js.map +0 -1
  9. package/dist/agent/config.js +0 -139
  10. package/dist/agent/config.js.map +0 -1
  11. package/dist/agent/config.test.js +0 -140
  12. package/dist/agent/config.test.js.map +0 -1
  13. package/dist/agent/constants.js +0 -172
  14. package/dist/agent/constants.js.map +0 -1
  15. package/dist/agent/constants.test.js +0 -132
  16. package/dist/agent/constants.test.js.map +0 -1
  17. package/dist/agent/debug-logger.js +0 -281
  18. package/dist/agent/debug-logger.js.map +0 -1
  19. package/dist/agent/debug-logger.test.js +0 -294
  20. package/dist/agent/debug-logger.test.js.map +0 -1
  21. package/dist/agent/error-handling.js +0 -114
  22. package/dist/agent/error-handling.js.map +0 -1
  23. package/dist/agent/error-handling.test.js +0 -191
  24. package/dist/agent/error-handling.test.js.map +0 -1
  25. package/dist/agent/errors.js +0 -301
  26. package/dist/agent/errors.js.map +0 -1
  27. package/dist/agent/executor.js +0 -206
  28. package/dist/agent/executor.js.map +0 -1
  29. package/dist/agent/executor.test.js +0 -228
  30. package/dist/agent/executor.test.js.map +0 -1
  31. package/dist/agent/goal-decomposer.js +0 -281
  32. package/dist/agent/goal-decomposer.js.map +0 -1
  33. package/dist/agent/goal-decomposer.test.js +0 -225
  34. package/dist/agent/goal-decomposer.test.js.map +0 -1
  35. package/dist/agent/health-monitor.js +0 -89
  36. package/dist/agent/health-monitor.js.map +0 -1
  37. package/dist/agent/improvement-loop.js +0 -177
  38. package/dist/agent/improvement-loop.js.map +0 -1
  39. package/dist/agent/index.js +0 -38
  40. package/dist/agent/index.js.map +0 -1
  41. package/dist/agent/metrics.js +0 -158
  42. package/dist/agent/metrics.js.map +0 -1
  43. package/dist/agent/metrics.test.js +0 -311
  44. package/dist/agent/metrics.test.js.map +0 -1
  45. package/dist/agent/orchestrator.js +0 -438
  46. package/dist/agent/orchestrator.js.map +0 -1
  47. package/dist/agent/planner.js +0 -199
  48. package/dist/agent/planner.js.map +0 -1
  49. package/dist/agent/planner.test.js +0 -135
  50. package/dist/agent/planner.test.js.map +0 -1
  51. package/dist/agent/progress.js +0 -298
  52. package/dist/agent/progress.js.map +0 -1
  53. package/dist/agent/progress.test.js +0 -255
  54. package/dist/agent/progress.test.js.map +0 -1
  55. package/dist/agent/resource-monitor.js +0 -114
  56. package/dist/agent/resource-monitor.js.map +0 -1
  57. package/dist/agent/safety/approval.js +0 -178
  58. package/dist/agent/safety/approval.js.map +0 -1
  59. package/dist/agent/safety/approval.test.js +0 -142
  60. package/dist/agent/safety/approval.test.js.map +0 -1
  61. package/dist/agent/safety/checks.js +0 -152
  62. package/dist/agent/safety/checks.js.map +0 -1
  63. package/dist/agent/safety/checks.test.js +0 -89
  64. package/dist/agent/safety/checks.test.js.map +0 -1
  65. package/dist/agent/safety/interrupt.js +0 -92
  66. package/dist/agent/safety/interrupt.js.map +0 -1
  67. package/dist/agent/safety/interrupt.test.js +0 -53
  68. package/dist/agent/safety/interrupt.test.js.map +0 -1
  69. package/dist/agent/session.js +0 -117
  70. package/dist/agent/session.js.map +0 -1
  71. package/dist/agent/session.test.js +0 -213
  72. package/dist/agent/session.test.js.map +0 -1
  73. package/dist/agent/state-manager.js +0 -287
  74. package/dist/agent/state-manager.js.map +0 -1
  75. package/dist/agent/task-discovery.js +0 -433
  76. package/dist/agent/task-discovery.js.map +0 -1
  77. package/dist/agent/task-discovery.test.js +0 -40
  78. package/dist/agent/task-discovery.test.js.map +0 -1
  79. package/dist/agent/task-history.js +0 -128
  80. package/dist/agent/task-history.js.map +0 -1
  81. package/dist/agent/task-prioritizer.js +0 -286
  82. package/dist/agent/task-prioritizer.js.map +0 -1
  83. package/dist/agent/test-fixtures.js +0 -112
  84. package/dist/agent/test-fixtures.js.map +0 -1
  85. package/dist/agent/types.js +0 -15
  86. package/dist/agent/types.js.map +0 -1
  87. package/dist/agent/workflow-adapter.js +0 -219
  88. package/dist/agent/workflow-adapter.js.map +0 -1
  89. package/dist/agent/workflow-adapter.test.js +0 -11
  90. package/dist/agent/workflow-adapter.test.js.map +0 -1
  91. package/dist/agent/working-dir-discovery.js +0 -54
  92. package/dist/agent/working-dir-discovery.js.map +0 -1
  93. package/dist/agent/working-space.js +0 -484
  94. package/dist/agent/working-space.js.map +0 -1
  95. package/dist/agent/working-space.test.js +0 -436
  96. package/dist/agent/working-space.test.js.map +0 -1
  97. package/dist/api.js +0 -279
  98. package/dist/api.js.map +0 -1
  99. package/dist/builtin-commands.js +0 -20
  100. package/dist/builtin-commands.js.map +0 -1
  101. package/dist/commandSummarizer.js +0 -96
  102. package/dist/commandSummarizer.js.map +0 -1
  103. package/dist/commands/__tests__/command-detection.integration.test.js +0 -238
  104. package/dist/commands/__tests__/command-detection.integration.test.js.map +0 -1
  105. package/dist/commands/__tests__/script-generator.integration.test.js +0 -271
  106. package/dist/commands/__tests__/script-generator.integration.test.js.map +0 -1
  107. package/dist/commands/agent.js +0 -218
  108. package/dist/commands/agent.js.map +0 -1
  109. package/dist/commands/code.js +0 -102
  110. package/dist/commands/code.js.map +0 -1
  111. package/dist/commands/command.constants.js +0 -13
  112. package/dist/commands/command.constants.js.map +0 -1
  113. package/dist/commands/commit.js +0 -17
  114. package/dist/commands/commit.js.map +0 -1
  115. package/dist/commands/fix.js +0 -17
  116. package/dist/commands/fix.js.map +0 -1
  117. package/dist/commands/init.js +0 -501
  118. package/dist/commands/init.js.map +0 -1
  119. package/dist/commands/mcp-server.js +0 -122
  120. package/dist/commands/mcp-server.js.map +0 -1
  121. package/dist/commands/memory.js +0 -410
  122. package/dist/commands/memory.js.map +0 -1
  123. package/dist/commands/memory.test.js +0 -453
  124. package/dist/commands/memory.test.js.map +0 -1
  125. package/dist/commands/meta.js +0 -142
  126. package/dist/commands/meta.js.map +0 -1
  127. package/dist/commands/plan.js +0 -39
  128. package/dist/commands/plan.js.map +0 -1
  129. package/dist/commands/pr.js +0 -14
  130. package/dist/commands/pr.js.map +0 -1
  131. package/dist/commands/review-json.test.js +0 -33
  132. package/dist/commands/review-json.test.js.map +0 -1
  133. package/dist/commands/review.js +0 -137
  134. package/dist/commands/review.js.map +0 -1
  135. package/dist/commands/review.usage.test.js +0 -41
  136. package/dist/commands/review.usage.test.js.map +0 -1
  137. package/dist/commands/run.js +0 -107
  138. package/dist/commands/run.js.map +0 -1
  139. package/dist/commands/skills.js +0 -175
  140. package/dist/commands/skills.js.map +0 -1
  141. package/dist/commands/task.js +0 -34
  142. package/dist/commands/task.js.map +0 -1
  143. package/dist/commands/workflow.js +0 -117
  144. package/dist/commands/workflow.js.map +0 -1
  145. package/dist/configPrompt.js +0 -39
  146. package/dist/configPrompt.js.map +0 -1
  147. package/dist/env.js +0 -22
  148. package/dist/env.js.map +0 -1
  149. package/dist/errors.js +0 -132
  150. package/dist/errors.js.map +0 -1
  151. package/dist/errors.test.js +0 -21
  152. package/dist/errors.test.js.map +0 -1
  153. package/dist/file-attachments.js +0 -77
  154. package/dist/file-attachments.js.map +0 -1
  155. package/dist/file-attachments.test.js +0 -214
  156. package/dist/file-attachments.test.js.map +0 -1
  157. package/dist/getModel.js +0 -229
  158. package/dist/getModel.js.map +0 -1
  159. package/dist/getModel.test.js +0 -67
  160. package/dist/getModel.test.js.map +0 -1
  161. package/dist/getProviderOptions.js +0 -58
  162. package/dist/getProviderOptions.js.map +0 -1
  163. package/dist/git-operations.js +0 -363
  164. package/dist/git-operations.js.map +0 -1
  165. package/dist/git-operations.test.js +0 -81
  166. package/dist/git-operations.test.js.map +0 -1
  167. package/dist/index.js.map +0 -1
  168. package/dist/logger.js +0 -41
  169. package/dist/logger.js.map +0 -1
  170. package/dist/mcp/client.js +0 -11
  171. package/dist/mcp/client.js.map +0 -1
  172. package/dist/mcp/error-scenarios.test.js +0 -206
  173. package/dist/mcp/error-scenarios.test.js.map +0 -1
  174. package/dist/mcp/errors.js +0 -63
  175. package/dist/mcp/errors.js.map +0 -1
  176. package/dist/mcp/index.js +0 -9
  177. package/dist/mcp/index.js.map +0 -1
  178. package/dist/mcp/manager.js +0 -231
  179. package/dist/mcp/manager.js.map +0 -1
  180. package/dist/mcp/manager.test.js +0 -40
  181. package/dist/mcp/manager.test.js.map +0 -1
  182. package/dist/mcp/sdk-client.js +0 -166
  183. package/dist/mcp/sdk-client.js.map +0 -1
  184. package/dist/mcp/shared-types.js +0 -3
  185. package/dist/mcp/shared-types.js.map +0 -1
  186. package/dist/mcp/tools-integration.test.js +0 -198
  187. package/dist/mcp/tools-integration.test.js.map +0 -1
  188. package/dist/mcp/tools.js +0 -60
  189. package/dist/mcp/tools.js.map +0 -1
  190. package/dist/mcp/transport.js +0 -257
  191. package/dist/mcp/transport.js.map +0 -1
  192. package/dist/mcp/types.js +0 -3
  193. package/dist/mcp/types.js.map +0 -1
  194. package/dist/mcp-server/index.js +0 -5
  195. package/dist/mcp-server/index.js.map +0 -1
  196. package/dist/mcp-server/plan-formatting.test.js +0 -74
  197. package/dist/mcp-server/plan-formatting.test.js.map +0 -1
  198. package/dist/mcp-server/sdk-server.js +0 -102
  199. package/dist/mcp-server/sdk-server.js.map +0 -1
  200. package/dist/mcp-server/sdk-server.test.js +0 -363
  201. package/dist/mcp-server/sdk-server.test.js.map +0 -1
  202. package/dist/mcp-server/tools.js +0 -785
  203. package/dist/mcp-server/tools.js.map +0 -1
  204. package/dist/mcp-server/types.js +0 -3
  205. package/dist/mcp-server/types.js.map +0 -1
  206. package/dist/options.js +0 -85
  207. package/dist/options.js.map +0 -1
  208. package/dist/options.test.js +0 -177
  209. package/dist/options.test.js.map +0 -1
  210. package/dist/prices.js +0 -61
  211. package/dist/prices.js.map +0 -1
  212. package/dist/prices.test.js +0 -148
  213. package/dist/prices.test.js.map +0 -1
  214. package/dist/runWorkflow.js +0 -313
  215. package/dist/runWorkflow.js.map +0 -1
  216. package/dist/script/__tests__/execution.integration.test.js +0 -274
  217. package/dist/script/__tests__/execution.integration.test.js.map +0 -1
  218. package/dist/script/__tests__/runner.test.js +0 -176
  219. package/dist/script/__tests__/runner.test.js.map +0 -1
  220. package/dist/script/__tests__/validator.test.js +0 -180
  221. package/dist/script/__tests__/validator.test.js.map +0 -1
  222. package/dist/script/executor.js +0 -127
  223. package/dist/script/executor.js.map +0 -1
  224. package/dist/script/index.js +0 -4
  225. package/dist/script/index.js.map +0 -1
  226. package/dist/script/runner.js +0 -258
  227. package/dist/script/runner.js.map +0 -1
  228. package/dist/skillIntegration.js +0 -46
  229. package/dist/skillIntegration.js.map +0 -1
  230. package/dist/skillIntegration.test.js +0 -128
  231. package/dist/skillIntegration.test.js.map +0 -1
  232. package/dist/test/utils.js +0 -200
  233. package/dist/test/utils.js.map +0 -1
  234. package/dist/test/workflow-fixtures.js +0 -120
  235. package/dist/test/workflow-fixtures.js.map +0 -1
  236. package/dist/tool-implementations.js +0 -521
  237. package/dist/tool-implementations.js.map +0 -1
  238. package/dist/tool-implementations.skill-tools.test.js +0 -106
  239. package/dist/tool-implementations.skill-tools.test.js.map +0 -1
  240. package/dist/tools/getTodoItem.js +0 -33
  241. package/dist/tools/getTodoItem.js.map +0 -1
  242. package/dist/tools/gitDiff.js +0 -108
  243. package/dist/tools/gitDiff.js.map +0 -1
  244. package/dist/tools/index.js +0 -8
  245. package/dist/tools/index.js.map +0 -1
  246. package/dist/tools/listMemoryTopics.js +0 -24
  247. package/dist/tools/listMemoryTopics.js.map +0 -1
  248. package/dist/tools/listTodoItems.js +0 -35
  249. package/dist/tools/listTodoItems.js.map +0 -1
  250. package/dist/tools/listTodoItems.test.js +0 -89
  251. package/dist/tools/listTodoItems.test.js.map +0 -1
  252. package/dist/tools/readMemory.js +0 -33
  253. package/dist/tools/readMemory.js.map +0 -1
  254. package/dist/tools/updateMemory.js +0 -62
  255. package/dist/tools/updateMemory.js.map +0 -1
  256. package/dist/tools/updateMemory.test.js +0 -109
  257. package/dist/tools/updateMemory.test.js.map +0 -1
  258. package/dist/tools/updateTodoItem.js +0 -31
  259. package/dist/tools/updateTodoItem.js.map +0 -1
  260. package/dist/tools/utils/diffLineNumbers.js +0 -178
  261. package/dist/tools/utils/diffLineNumbers.js.map +0 -1
  262. package/dist/utils/cacheControl.js +0 -59
  263. package/dist/utils/cacheControl.js.map +0 -1
  264. package/dist/utils/cacheControl.test.js +0 -128
  265. package/dist/utils/cacheControl.test.js.map +0 -1
  266. package/dist/utils/command.js +0 -50
  267. package/dist/utils/command.js.map +0 -1
  268. package/dist/utils/shell.js +0 -56
  269. package/dist/utils/shell.js.map +0 -1
  270. package/dist/utils/userInput.js +0 -47
  271. package/dist/utils/userInput.js.map +0 -1
  272. package/dist/workflow-tools.js +0 -21
  273. package/dist/workflow-tools.js.map +0 -1
  274. package/dist/workflows/agent-builder.js +0 -90
  275. package/dist/workflows/agent-builder.js.map +0 -1
  276. package/dist/workflows/agent-builder.test.js +0 -115
  277. package/dist/workflows/agent-builder.test.js.map +0 -1
  278. package/dist/workflows/code.workflow.js +0 -145
  279. package/dist/workflows/code.workflow.js.map +0 -1
  280. package/dist/workflows/commit.workflow.js +0 -111
  281. package/dist/workflows/commit.workflow.js.map +0 -1
  282. package/dist/workflows/commit.workflow.test.js +0 -141
  283. package/dist/workflows/commit.workflow.test.js.map +0 -1
  284. package/dist/workflows/fix.workflow.js +0 -172
  285. package/dist/workflows/fix.workflow.js.map +0 -1
  286. package/dist/workflows/fix.workflow.test.js +0 -137
  287. package/dist/workflows/fix.workflow.test.js.map +0 -1
  288. package/dist/workflows/git-file-tools.js +0 -408
  289. package/dist/workflows/git-file-tools.js.map +0 -1
  290. package/dist/workflows/index.js +0 -12
  291. package/dist/workflows/index.js.map +0 -1
  292. package/dist/workflows/init-interactive.workflow.js +0 -198
  293. package/dist/workflows/init-interactive.workflow.js.map +0 -1
  294. package/dist/workflows/init.workflow.js +0 -41
  295. package/dist/workflows/init.workflow.js.map +0 -1
  296. package/dist/workflows/meta.workflow.js +0 -107
  297. package/dist/workflows/meta.workflow.js.map +0 -1
  298. package/dist/workflows/plan.workflow.js +0 -275
  299. package/dist/workflows/plan.workflow.js.map +0 -1
  300. package/dist/workflows/plan.workflow.test.js +0 -419
  301. package/dist/workflows/plan.workflow.test.js.map +0 -1
  302. package/dist/workflows/pr.workflow.js +0 -54
  303. package/dist/workflows/pr.workflow.js.map +0 -1
  304. package/dist/workflows/pr.workflow.test.js +0 -98
  305. package/dist/workflows/pr.workflow.test.js.map +0 -1
  306. package/dist/workflows/prompts/coder.js +0 -85
  307. package/dist/workflows/prompts/coder.js.map +0 -1
  308. package/dist/workflows/prompts/commit.js +0 -16
  309. package/dist/workflows/prompts/commit.js.map +0 -1
  310. package/dist/workflows/prompts/fix.js +0 -44
  311. package/dist/workflows/prompts/fix.js.map +0 -1
  312. package/dist/workflows/prompts/index.js +0 -10
  313. package/dist/workflows/prompts/index.js.map +0 -1
  314. package/dist/workflows/prompts/init.js +0 -48
  315. package/dist/workflows/prompts/init.js.map +0 -1
  316. package/dist/workflows/prompts/meta.js +0 -17
  317. package/dist/workflows/prompts/meta.js.map +0 -1
  318. package/dist/workflows/prompts/plan.js +0 -212
  319. package/dist/workflows/prompts/plan.js.map +0 -1
  320. package/dist/workflows/prompts/pr.js +0 -15
  321. package/dist/workflows/prompts/pr.js.map +0 -1
  322. package/dist/workflows/prompts/review.js +0 -145
  323. package/dist/workflows/prompts/review.js.map +0 -1
  324. package/dist/workflows/prompts/shared.js +0 -93
  325. package/dist/workflows/prompts/shared.js.map +0 -1
  326. package/dist/workflows/review.workflow.js +0 -357
  327. package/dist/workflows/review.workflow.js.map +0 -1
  328. package/dist/workflows/task.workflow.js +0 -47
  329. package/dist/workflows/task.workflow.js.map +0 -1
  330. package/dist/workflows/testing/helper.js +0 -41
  331. package/dist/workflows/testing/helper.js.map +0 -1
  332. package/dist/workflows/workflow.utils.js +0 -351
  333. package/dist/workflows/workflow.utils.js.map +0 -1
  334. package/dist/workflows/workflow.utils.test.js +0 -45
  335. package/dist/workflows/workflow.utils.test.js.map +0 -1
@@ -1,122 +0,0 @@
1
- // generated by polka.codes
2
- import { Command } from 'commander';
3
- import { createLogger } from '../logger';
4
- import { createPolkaCodesMcpServer, startStdioServer } from '../mcp-server/sdk-server';
5
- import { createPolkaCodesServerTools } from '../mcp-server/tools';
6
- export const mcpServerCommand = new Command('mcp-server')
7
- .description('Start polka-codes as an MCP server')
8
- .option('-c --config <paths>', 'Path to config file(s)', (value, prev) => prev.concat(value), [])
9
- .option('--api-provider <provider>', 'API provider')
10
- .option('--model <model>', 'Model ID')
11
- .option('--api-key <key>', 'API key')
12
- .option('-v, --verbose', 'Enable verbose logging', false)
13
- .action(async (options) => {
14
- // Configure logger to write to stderr (stdout is reserved for MCP protocol)
15
- const logger = createLogger({
16
- verbose: options.verbose ? 1 : 0,
17
- stream: process.stderr,
18
- });
19
- // Print usage information to stderr via logger
20
- logger.info('');
21
- logger.info('╔════════════════════════════════════════════════╗');
22
- logger.info('║ Polka Codes MCP Server ║');
23
- logger.info('╚════════════════════════════════════════════════╝');
24
- logger.info('');
25
- // Print server configuration if provided
26
- if (options.apiProvider || options.model) {
27
- logger.info('Server Configuration:');
28
- if (options.apiProvider) {
29
- logger.info(` Provider: ${options.apiProvider}`);
30
- }
31
- if (options.model) {
32
- logger.info(` Model: ${options.model}`);
33
- }
34
- logger.info('');
35
- }
36
- logger.info('Available Tools:');
37
- // Create tools (pass logger for workflow execution)
38
- const tools = createPolkaCodesServerTools(logger);
39
- // Create and start server using official SDK
40
- // Pass default provider configuration from CLI options
41
- const defaultProvider = {
42
- provider: options.apiProvider,
43
- model: options.model,
44
- apiKey: options.apiKey,
45
- };
46
- const server = createPolkaCodesMcpServer(tools, logger, defaultProvider);
47
- // Print available tools to stderr via logger
48
- for (const tool of tools) {
49
- logger.info(` • ${tool.name}`);
50
- logger.info(` ${tool.description}`);
51
- logger.info('');
52
- }
53
- logger.info('Configuration:');
54
- logger.info('');
55
- logger.info(' To use this MCP server with Claude Code, add to your config:');
56
- logger.info('');
57
- logger.info(' claude mcp add polka polka mcp-server');
58
- logger.info('');
59
- logger.info(' Or manually add to ~/.claude/config.json:');
60
- logger.info(' {');
61
- logger.info(' "mcpServers": {');
62
- logger.info(' "polka": {');
63
- logger.info(' "command": "polka",');
64
- logger.info(' "args": ["mcp-server"]');
65
- if (options.apiProvider || options.model) {
66
- logger.info(' "args": ["mcp-server"');
67
- if (options.apiProvider) {
68
- logger.info(` , "--api-provider", "${options.apiProvider}"`);
69
- }
70
- if (options.model) {
71
- logger.info(` , "--model", "${options.model}"`);
72
- }
73
- logger.info(' ]');
74
- }
75
- else {
76
- logger.info(' "args": ["mcp-server"]');
77
- }
78
- logger.info(' }');
79
- logger.info(' }');
80
- logger.info(' }');
81
- logger.info('');
82
- logger.info('Server-level Provider Options:');
83
- logger.info(' --api-provider <provider> Set default AI provider');
84
- logger.info(' --model <model> Set default model');
85
- logger.info(' --api-key <key> Set API key');
86
- logger.info('');
87
- logger.info('Per-call Override Options:');
88
- logger.info(' Each tool call can override the server defaults by including:');
89
- logger.info(' - provider: Override provider for this call');
90
- logger.info(' - model: Override model for this call');
91
- logger.info(' - parameters: Override model parameters for this call');
92
- logger.info('');
93
- logger.info('Press Ctrl+C to stop the server');
94
- logger.info('═════════════════════════════════════════════════════════════════');
95
- logger.info('');
96
- logger.info('Starting MCP server using official @modelcontextprotocol/sdk...');
97
- // Start server
98
- await startStdioServer(server, logger);
99
- logger.info('MCP server is running and listening for connections...');
100
- // Handle shutdown gracefully
101
- const shutdown = async () => {
102
- logger.info('Shutting down MCP server...');
103
- // Force exit after 5 seconds if graceful shutdown takes too long
104
- const timeout = setTimeout(() => {
105
- logger.warn('Forcing exit after timeout');
106
- process.exit(1);
107
- }, 5000);
108
- try {
109
- await server.close();
110
- }
111
- catch (error) {
112
- logger.error('Error closing server:', error);
113
- }
114
- finally {
115
- clearTimeout(timeout);
116
- }
117
- process.exit(0);
118
- };
119
- process.on('SIGINT', shutdown);
120
- process.on('SIGTERM', shutdown);
121
- });
122
- //# sourceMappingURL=mcp-server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/commands/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -1,410 +0,0 @@
1
- // generated by polka.codes
2
- import { mkdir, readFile, writeFile } from 'node:fs/promises';
3
- import { dirname, resolve } from 'node:path';
4
- import { detectProjectScope, getGlobalConfigPath, loadConfigAtPath, MemoryManager, SQLiteMemoryStore, } from '@polka-codes/cli-shared';
5
- import { DEFAULT_MEMORY_CONFIG, resolveHomePath } from '@polka-codes/core';
6
- /**
7
- * Get memory store instance
8
- * @internal Exported for testing purposes
9
- */
10
- export async function getMemoryStore() {
11
- const globalConfigPath = getGlobalConfigPath();
12
- const config = (await loadConfigAtPath(globalConfigPath));
13
- const memoryConfig = config?.memory || DEFAULT_MEMORY_CONFIG;
14
- if (!memoryConfig.enabled || memoryConfig.type === 'memory') {
15
- console.error('Memory store is not enabled. Enable it in config with memory.enabled: true');
16
- process.exit(1);
17
- }
18
- const cwd = process.cwd();
19
- // Detect scope once and pass to SQLite store using shared utility
20
- const scope = detectProjectScope(cwd);
21
- // Create SQLite store implementation with scope
22
- const sqliteStore = new SQLiteMemoryStore(memoryConfig, scope);
23
- // Wrap with MemoryManager for core logic
24
- return new MemoryManager(sqliteStore);
25
- }
26
- /**
27
- * List memory entries
28
- */
29
- export async function memoryList(options) {
30
- const store = await getMemoryStore();
31
- try {
32
- const query = {
33
- scope: 'auto',
34
- };
35
- if (options.type)
36
- query.type = options.type;
37
- if (options.status)
38
- query.status = options.status;
39
- if (options.priority)
40
- query.priority = options.priority;
41
- if (options.tags)
42
- query.tags = options.tags.split(',');
43
- if (options.search)
44
- query.search = options.search;
45
- if (options.limit)
46
- query.limit = options.limit;
47
- if (options.offset)
48
- query.offset = options.offset;
49
- if (options.sortBy)
50
- query.sortBy = options.sortBy;
51
- if (options.sortOrder)
52
- query.sortOrder = options.sortOrder;
53
- const entries = await store.queryMemory(query, { operation: 'select' });
54
- if (options.format === 'json') {
55
- console.log(JSON.stringify(entries, null, 2));
56
- }
57
- else {
58
- // Table format
59
- if (!Array.isArray(entries) || entries.length === 0) {
60
- console.log('No entries found.');
61
- return;
62
- }
63
- console.log('\nMemory Entries:');
64
- console.log('─'.repeat(80));
65
- for (const entry of entries) {
66
- console.log(`\nName: ${entry.name}`);
67
- console.log(`Type: ${entry.entry_type}`);
68
- console.log(`Status: ${entry.status || 'N/A'}`);
69
- console.log(`Priority: ${entry.priority || 'N/A'}`);
70
- console.log(`Tags: ${entry.tags || 'N/A'}`);
71
- console.log(`Updated: ${new Date(entry.updated_at).toLocaleString()}`);
72
- console.log(`Content:\n${entry.content}`);
73
- console.log('─'.repeat(80));
74
- }
75
- console.log(`\nTotal: ${entries.length} entries`);
76
- }
77
- }
78
- finally {
79
- store.close();
80
- }
81
- }
82
- /**
83
- * Read a specific memory entry
84
- */
85
- export async function memoryRead(name, options) {
86
- const store = await getMemoryStore();
87
- try {
88
- const content = await store.readMemory(name);
89
- if (!content) {
90
- console.error(`Memory entry "${name}" not found.`);
91
- process.exit(1);
92
- }
93
- if (options.format === 'json') {
94
- console.log(JSON.stringify({ name, content }, null, 2));
95
- }
96
- else {
97
- console.log(content);
98
- }
99
- }
100
- finally {
101
- store.close();
102
- }
103
- }
104
- /**
105
- * Delete a memory entry
106
- */
107
- export async function memoryDelete(name, options) {
108
- if (!options.force) {
109
- console.log(`Are you sure you want to delete memory entry "${name}"?`);
110
- console.log('This action cannot be undone.');
111
- console.log('Use --force to skip this confirmation.');
112
- process.exit(1);
113
- }
114
- const store = await getMemoryStore();
115
- try {
116
- await store.updateMemory('remove', name, undefined);
117
- console.log(`Memory entry "${name}" deleted.`);
118
- }
119
- finally {
120
- store.close();
121
- }
122
- }
123
- /**
124
- * Rename a memory entry
125
- */
126
- export async function memoryRename(oldName, newName) {
127
- const store = await getMemoryStore();
128
- try {
129
- // Use transaction to atomically check for newName, fetch oldEntry, and perform rename
130
- // This prevents race conditions where concurrent processes could modify data
131
- await store.transaction(async () => {
132
- // Check if old entry exists (within transaction for consistency)
133
- const oldEntries = await store.queryMemory({ name: oldName }, { operation: 'select' });
134
- if (!Array.isArray(oldEntries) || oldEntries.length === 0) {
135
- throw new Error(`Memory entry "${oldName}" not found.`);
136
- }
137
- const oldEntry = oldEntries[0];
138
- // Check if new name already exists (within transaction for consistency)
139
- const newEntries = await store.queryMemory({ name: newName }, { operation: 'select' });
140
- if (Array.isArray(newEntries) && newEntries.length > 0) {
141
- throw new Error(`Memory entry "${newName}" already exists.`);
142
- }
143
- // Perform the rename
144
- await store.batchUpdateMemory([
145
- {
146
- operation: 'replace',
147
- name: newName,
148
- content: oldEntry.content,
149
- metadata: {
150
- entry_type: oldEntry.entry_type,
151
- status: oldEntry.status,
152
- priority: oldEntry.priority,
153
- tags: oldEntry.tags,
154
- created_at: oldEntry.created_at,
155
- updated_at: oldEntry.updated_at,
156
- last_accessed: oldEntry.last_accessed,
157
- },
158
- },
159
- { operation: 'remove', name: oldName },
160
- ]);
161
- });
162
- console.log(`Memory entry renamed from "${oldName}" to "${newName}".`);
163
- }
164
- catch (error) {
165
- if (error instanceof Error) {
166
- if (error.message.includes('already exists') || error.message.includes('not found')) {
167
- console.error(error.message);
168
- process.exit(1);
169
- }
170
- }
171
- throw error;
172
- }
173
- finally {
174
- store.close();
175
- }
176
- }
177
- /**
178
- * Export memory to JSON
179
- */
180
- export async function memoryExport(options) {
181
- const store = await getMemoryStore();
182
- try {
183
- const query = {};
184
- if (options.type)
185
- query.type = options.type;
186
- if (options.scope === 'global') {
187
- query.scope = 'global';
188
- }
189
- else if (options.scope === 'project') {
190
- query.scope = 'project';
191
- }
192
- else {
193
- query.scope = 'auto';
194
- }
195
- const entries = await store.queryMemory(query, { operation: 'select' });
196
- if (!Array.isArray(entries)) {
197
- console.error('Failed to export: query did not return entries');
198
- return;
199
- }
200
- const outputPath = options.output ? resolve(process.cwd(), options.output) : resolve(process.cwd(), `memory-export-${Date.now()}.json`);
201
- // Ensure directory exists
202
- await mkdir(dirname(outputPath), { recursive: true });
203
- await writeFile(outputPath, JSON.stringify(entries, null, 2));
204
- console.log(`Exported ${entries.length} entries to ${outputPath}`);
205
- }
206
- finally {
207
- store.close();
208
- }
209
- }
210
- /**
211
- * Import memory from JSON
212
- */
213
- export async function memoryImport(inputFile, options) {
214
- const store = await getMemoryStore();
215
- try {
216
- const inputPath = resolve(process.cwd(), inputFile);
217
- const data = await readFile(inputPath, 'utf-8');
218
- let entries;
219
- try {
220
- entries = JSON.parse(data);
221
- }
222
- catch (error) {
223
- console.error(`Failed to parse JSON from ${inputPath}:`, error);
224
- process.exit(1);
225
- }
226
- if (!Array.isArray(entries)) {
227
- console.error('Invalid import file format. Expected an array of memory entries.');
228
- process.exit(1);
229
- }
230
- // Collect all valid entries first, then batch import for better performance
231
- const validEntries = [];
232
- const validPriorities = ['low', 'medium', 'high', 'critical'];
233
- let skipped = 0;
234
- // If not merging, we need to check for existing entries upfront
235
- const existingNames = new Set();
236
- if (!options.merge) {
237
- const allEntries = await store.queryMemory({}, { operation: 'select' });
238
- if (Array.isArray(allEntries)) {
239
- for (const entry of allEntries) {
240
- existingNames.add(entry.name);
241
- }
242
- }
243
- }
244
- for (const entry of entries) {
245
- try {
246
- // Validate that entry is an object
247
- if (typeof entry !== 'object' || entry === null) {
248
- console.error('Skipping invalid entry: not an object');
249
- skipped++;
250
- continue;
251
- }
252
- const entryObj = entry;
253
- // Validate required fields
254
- if (!entryObj.name || typeof entryObj.name !== 'string') {
255
- console.error('Skipping invalid entry: missing or invalid name');
256
- skipped++;
257
- continue;
258
- }
259
- const entryName = entryObj.name;
260
- if (!entryObj.content || typeof entryObj.content !== 'string') {
261
- console.error(`Skipping entry "${entryName}": missing or invalid content`);
262
- skipped++;
263
- continue;
264
- }
265
- // Check if entry already exists (when not merging)
266
- if (existingNames.has(entryName)) {
267
- skipped++;
268
- continue;
269
- }
270
- // Validate priority if present
271
- let priority = entryObj.priority;
272
- if (priority && !validPriorities.includes(priority)) {
273
- console.warn(`Entry "${entryName}" has invalid priority "${priority}", defaulting to null`);
274
- priority = undefined;
275
- }
276
- // Validate and cast metadata fields
277
- const entryType = entryObj.entry_type;
278
- const validatedEntryType = typeof entryType === 'string' ? entryType : 'note';
279
- const status = entryObj.status;
280
- const validatedStatus = typeof status === 'string' ? status : undefined;
281
- const tags = entryObj.tags;
282
- const validatedTags = typeof tags === 'string' ? tags : undefined;
283
- // Preserve timestamps if available
284
- const createdAt = entryObj.created_at;
285
- const validatedCreatedAt = typeof createdAt === 'number' ? createdAt : undefined;
286
- const updatedAt = entryObj.updated_at;
287
- const validatedUpdatedAt = typeof updatedAt === 'number' ? updatedAt : undefined;
288
- const lastAccessed = entryObj.last_accessed;
289
- const validatedLastAccessed = typeof lastAccessed === 'number' ? lastAccessed : undefined;
290
- validEntries.push({
291
- operation: 'replace',
292
- name: entryName,
293
- content: entryObj.content,
294
- metadata: {
295
- entry_type: validatedEntryType,
296
- status: validatedStatus,
297
- priority: priority,
298
- tags: validatedTags,
299
- created_at: validatedCreatedAt,
300
- updated_at: validatedUpdatedAt,
301
- last_accessed: validatedLastAccessed,
302
- },
303
- });
304
- }
305
- catch (error) {
306
- console.error(`Failed to process entry:`, error);
307
- skipped++;
308
- }
309
- }
310
- // Batch import all valid entries in a single transaction
311
- if (validEntries.length > 0) {
312
- await store.batchUpdateMemory(validEntries);
313
- }
314
- console.log(`Imported ${validEntries.length} entries, skipped ${skipped} entries.`);
315
- }
316
- finally {
317
- store.close();
318
- }
319
- }
320
- /**
321
- * Show memory statistics
322
- */
323
- export async function memoryStatus() {
324
- const store = await getMemoryStore();
325
- try {
326
- const stats = await store.getStats();
327
- const globalConfigPath = getGlobalConfigPath();
328
- const config = (await loadConfigAtPath(globalConfigPath));
329
- const memoryConfig = config?.memory || { path: '~/.config/polkacodes/memory/memory.sqlite' };
330
- const dbPath = resolveHomePath(memoryConfig.path || '~/.config/polkacodes/memory/memory.sqlite');
331
- console.log('\nMemory Store Status:');
332
- console.log('─'.repeat(80));
333
- console.log(`Database: ${dbPath}`);
334
- console.log(`Total entries: ${stats.totalEntries}`);
335
- console.log(`Database size: ${(stats.databaseSize / 1024).toFixed(2)} KB`);
336
- console.log('\nEntries by type:');
337
- for (const [type, count] of Object.entries(stats.entriesByType)) {
338
- console.log(` ${type}: ${count}`);
339
- }
340
- console.log('─'.repeat(80));
341
- }
342
- finally {
343
- store.close();
344
- }
345
- }
346
- /**
347
- * Register memory commands
348
- */
349
- export function registerMemoryCommands(program) {
350
- const memoryCmd = program.command('memory').description('Memory management commands');
351
- memoryCmd
352
- .command('list')
353
- .description('List memory entries')
354
- .option('--type <type>', 'Filter by type')
355
- .option('--status <status>', 'Filter by status')
356
- .option('--priority <priority>', 'Filter by priority')
357
- .option('--tags <tags>', 'Filter by tags (comma-separated)')
358
- .option('--search <term>', 'Search in content and name')
359
- .option('--limit <number>', 'Limit results', parseInt)
360
- .option('--offset <number>', 'Offset results', parseInt)
361
- .option('--sort-by <field>', 'Sort by field (created, updated, accessed, name)')
362
- .option('--sort-order <order>', 'Sort order (asc, desc)', 'desc')
363
- .option('--format <format>', 'Output format (json, table)', 'table')
364
- .action(async (options) => {
365
- await memoryList(options);
366
- });
367
- memoryCmd
368
- .command('read <name>')
369
- .description('Read a specific memory entry')
370
- .option('--format <format>', 'Output format (json, text)', 'text')
371
- .action(async (name, options) => {
372
- await memoryRead(name, options);
373
- });
374
- memoryCmd
375
- .command('delete <name>')
376
- .description('Delete a memory entry')
377
- .option('--force', 'Skip confirmation')
378
- .action(async (name, options) => {
379
- await memoryDelete(name, options);
380
- });
381
- memoryCmd
382
- .command('rename <oldName> <newName>')
383
- .description('Rename a memory entry')
384
- .action(async (oldName, newName) => {
385
- await memoryRename(oldName, newName);
386
- });
387
- memoryCmd
388
- .command('export')
389
- .description('Export memory to JSON')
390
- .option('--output <file>', 'Output file path')
391
- .option('--type <type>', 'Filter by type')
392
- .option('--scope <scope>', 'Filter by scope (global, project)')
393
- .action(async (options) => {
394
- await memoryExport(options);
395
- });
396
- memoryCmd
397
- .command('import <file>')
398
- .description('Import memory from JSON')
399
- .option('--merge', 'Overwrite existing entries during import (default: skip existing entries)')
400
- .action(async (file, options) => {
401
- await memoryImport(file, options);
402
- });
403
- memoryCmd
404
- .command('status')
405
- .description('Show memory statistics')
406
- .action(async () => {
407
- await memoryStatus();
408
- });
409
- }
410
- //# sourceMappingURL=memory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"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"}