@nanocollective/nanocoder 1.17.3 → 1.19.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 (688) hide show
  1. package/README.md +178 -13
  2. package/assets/nanocoder-vscode.vsix +0 -0
  3. package/dist/ai-sdk-client-empty-message.spec.d.ts +2 -0
  4. package/dist/ai-sdk-client-empty-message.spec.d.ts.map +1 -0
  5. package/dist/ai-sdk-client-empty-message.spec.js +124 -0
  6. package/dist/ai-sdk-client-empty-message.spec.js.map +1 -0
  7. package/dist/ai-sdk-client.d.ts +19 -3
  8. package/dist/ai-sdk-client.d.ts.map +1 -1
  9. package/dist/ai-sdk-client.js +359 -211
  10. package/dist/ai-sdk-client.js.map +1 -1
  11. package/dist/app/utils/appUtils.d.ts +1 -1
  12. package/dist/app/utils/appUtils.d.ts.map +1 -1
  13. package/dist/app/utils/appUtils.js +80 -14
  14. package/dist/app/utils/appUtils.js.map +1 -1
  15. package/dist/app.d.ts +22 -1
  16. package/dist/app.d.ts.map +1 -1
  17. package/dist/app.js +369 -53
  18. package/dist/app.js.map +1 -1
  19. package/dist/cli.js +37 -2
  20. package/dist/cli.js.map +1 -1
  21. package/dist/cli.spec.d.ts +2 -0
  22. package/dist/cli.spec.d.ts.map +1 -0
  23. package/dist/cli.spec.js +101 -0
  24. package/dist/cli.spec.js.map +1 -0
  25. package/dist/client-factory.d.ts.map +1 -1
  26. package/dist/client-factory.js +2 -2
  27. package/dist/client-factory.js.map +1 -1
  28. package/dist/commands/checkpoint.d.ts +6 -0
  29. package/dist/commands/checkpoint.d.ts.map +1 -0
  30. package/dist/commands/checkpoint.js +277 -0
  31. package/dist/commands/checkpoint.js.map +1 -0
  32. package/dist/commands/clear.d.ts.map +1 -1
  33. package/dist/commands/clear.js +1 -1
  34. package/dist/commands/clear.js.map +1 -1
  35. package/dist/commands/custom-commands.d.ts.map +1 -1
  36. package/dist/commands/custom-commands.js +4 -4
  37. package/dist/commands/custom-commands.js.map +1 -1
  38. package/dist/commands/exit.d.ts.map +1 -1
  39. package/dist/commands/exit.js.map +1 -1
  40. package/dist/commands/export.d.ts.map +1 -1
  41. package/dist/commands/export.js +2 -2
  42. package/dist/commands/export.js.map +1 -1
  43. package/dist/commands/help.d.ts.map +1 -1
  44. package/dist/commands/help.js +5 -5
  45. package/dist/commands/help.js.map +1 -1
  46. package/dist/commands/index.d.ts +2 -2
  47. package/dist/commands/index.d.ts.map +1 -1
  48. package/dist/commands/index.js +2 -2
  49. package/dist/commands/index.js.map +1 -1
  50. package/dist/commands/init.d.ts.map +1 -1
  51. package/dist/commands/init.js +15 -14
  52. package/dist/commands/init.js.map +1 -1
  53. package/dist/commands/lsp.d.ts.map +1 -1
  54. package/dist/commands/lsp.js +6 -6
  55. package/dist/commands/lsp.js.map +1 -1
  56. package/dist/commands/mcp.d.ts +1 -1
  57. package/dist/commands/mcp.d.ts.map +1 -1
  58. package/dist/commands/mcp.js +6 -6
  59. package/dist/commands/mcp.js.map +1 -1
  60. package/dist/commands/model-database.d.ts +8 -0
  61. package/dist/commands/model-database.d.ts.map +1 -0
  62. package/dist/commands/model-database.js +193 -0
  63. package/dist/commands/model-database.js.map +1 -0
  64. package/dist/commands/model.d.ts.map +1 -1
  65. package/dist/commands/model.js.map +1 -1
  66. package/dist/commands/provider.d.ts.map +1 -1
  67. package/dist/commands/provider.js.map +1 -1
  68. package/dist/commands/setup-config.js +1 -1
  69. package/dist/commands/setup-config.js.map +1 -1
  70. package/dist/commands/status.d.ts.map +1 -1
  71. package/dist/commands/status.js.map +1 -1
  72. package/dist/commands/theme.d.ts.map +1 -1
  73. package/dist/commands/theme.js.map +1 -1
  74. package/dist/commands/update.d.ts.map +1 -1
  75. package/dist/commands/update.js +5 -5
  76. package/dist/commands/update.js.map +1 -1
  77. package/dist/commands/usage.d.ts.map +1 -1
  78. package/dist/commands/usage.js +4 -4
  79. package/dist/commands/usage.js.map +1 -1
  80. package/dist/commands.d.ts.map +1 -1
  81. package/dist/commands.js +1 -1
  82. package/dist/commands.js.map +1 -1
  83. package/dist/components/assistant-message.d.ts.map +1 -1
  84. package/dist/components/assistant-message.js +5 -4
  85. package/dist/components/assistant-message.js.map +1 -1
  86. package/dist/components/bash-execution-indicator.d.ts.map +1 -1
  87. package/dist/components/bash-execution-indicator.js +2 -2
  88. package/dist/components/bash-execution-indicator.js.map +1 -1
  89. package/dist/components/cancelling-indicator.js +3 -3
  90. package/dist/components/cancelling-indicator.js.map +1 -1
  91. package/dist/components/chat-queue.d.ts.map +1 -1
  92. package/dist/components/chat-queue.js +1 -1
  93. package/dist/components/chat-queue.js.map +1 -1
  94. package/dist/components/checkpoint-display.d.ts +8 -0
  95. package/dist/components/checkpoint-display.d.ts.map +1 -0
  96. package/dist/components/checkpoint-display.js +29 -0
  97. package/dist/components/checkpoint-display.js.map +1 -0
  98. package/dist/components/checkpoint-selector.d.ts +11 -0
  99. package/dist/components/checkpoint-selector.d.ts.map +1 -0
  100. package/dist/components/checkpoint-selector.js +55 -0
  101. package/dist/components/checkpoint-selector.js.map +1 -0
  102. package/dist/components/error-message.d.ts.map +1 -1
  103. package/dist/components/error-message.js +4 -4
  104. package/dist/components/error-message.js.map +1 -1
  105. package/dist/components/info-message.d.ts.map +1 -1
  106. package/dist/components/info-message.js +4 -4
  107. package/dist/components/info-message.js.map +1 -1
  108. package/dist/components/model-selector.d.ts.map +1 -1
  109. package/dist/components/model-selector.js +7 -7
  110. package/dist/components/model-selector.js.map +1 -1
  111. package/dist/components/provider-selector.d.ts.map +1 -1
  112. package/dist/components/provider-selector.js +6 -6
  113. package/dist/components/provider-selector.js.map +1 -1
  114. package/dist/components/security-disclaimer.d.ts.map +1 -1
  115. package/dist/components/security-disclaimer.js +4 -4
  116. package/dist/components/security-disclaimer.js.map +1 -1
  117. package/dist/components/status.d.ts +5 -0
  118. package/dist/components/status.d.ts.map +1 -1
  119. package/dist/components/status.js +36 -7
  120. package/dist/components/status.js.map +1 -1
  121. package/dist/components/success-message.d.ts.map +1 -1
  122. package/dist/components/success-message.js +4 -4
  123. package/dist/components/success-message.js.map +1 -1
  124. package/dist/components/theme-selector.d.ts.map +1 -1
  125. package/dist/components/theme-selector.js +8 -8
  126. package/dist/components/theme-selector.js.map +1 -1
  127. package/dist/components/tool-confirmation.d.ts.map +1 -1
  128. package/dist/components/tool-confirmation.js +7 -7
  129. package/dist/components/tool-confirmation.js.map +1 -1
  130. package/dist/components/tool-execution-indicator.d.ts.map +1 -1
  131. package/dist/components/tool-execution-indicator.js +2 -2
  132. package/dist/components/tool-execution-indicator.js.map +1 -1
  133. package/dist/components/tool-message.d.ts.map +1 -1
  134. package/dist/components/tool-message.js +4 -5
  135. package/dist/components/tool-message.js.map +1 -1
  136. package/dist/components/ui/titled-box.d.ts +16 -0
  137. package/dist/components/ui/titled-box.d.ts.map +1 -0
  138. package/dist/components/ui/titled-box.js +10 -0
  139. package/dist/components/ui/titled-box.js.map +1 -0
  140. package/dist/components/usage/progress-bar.d.ts.map +1 -1
  141. package/dist/components/usage/progress-bar.js +3 -0
  142. package/dist/components/usage/progress-bar.js.map +1 -1
  143. package/dist/components/usage/usage-display.d.ts.map +1 -1
  144. package/dist/components/usage/usage-display.js +7 -4
  145. package/dist/components/usage/usage-display.js.map +1 -1
  146. package/dist/components/user-input.d.ts.map +1 -1
  147. package/dist/components/user-input.js +9 -8
  148. package/dist/components/user-input.js.map +1 -1
  149. package/dist/components/user-message.d.ts.map +1 -1
  150. package/dist/components/user-message.js +1 -1
  151. package/dist/components/user-message.js.map +1 -1
  152. package/dist/components/vscode-extension-prompt.js +3 -3
  153. package/dist/components/vscode-extension-prompt.js.map +1 -1
  154. package/dist/components/warning-message.d.ts.map +1 -1
  155. package/dist/components/warning-message.js +4 -4
  156. package/dist/components/warning-message.js.map +1 -1
  157. package/dist/components/welcome-message.d.ts.map +1 -1
  158. package/dist/components/welcome-message.js +4 -4
  159. package/dist/components/welcome-message.js.map +1 -1
  160. package/dist/config/index.d.ts.map +1 -1
  161. package/dist/config/index.js +7 -7
  162. package/dist/config/index.js.map +1 -1
  163. package/dist/config/index.spec.js +4 -4
  164. package/dist/config/index.spec.js.map +1 -1
  165. package/dist/config/paths.spec.js +1 -1
  166. package/dist/config/paths.spec.js.map +1 -1
  167. package/dist/config/preferences.d.ts +0 -2
  168. package/dist/config/preferences.d.ts.map +1 -1
  169. package/dist/config/preferences.js +1 -11
  170. package/dist/config/preferences.js.map +1 -1
  171. package/dist/context/mode-context.d.ts +12 -0
  172. package/dist/context/mode-context.d.ts.map +1 -0
  173. package/dist/context/mode-context.js +21 -0
  174. package/dist/context/mode-context.js.map +1 -0
  175. package/dist/context/mode-context.spec.d.ts +2 -0
  176. package/dist/context/mode-context.spec.d.ts.map +1 -0
  177. package/dist/context/mode-context.spec.js +61 -0
  178. package/dist/context/mode-context.spec.js.map +1 -0
  179. package/dist/custom-commands/executor.d.ts.map +1 -1
  180. package/dist/custom-commands/executor.js.map +1 -1
  181. package/dist/custom-commands/loader.d.ts.map +1 -1
  182. package/dist/custom-commands/loader.js +1 -1
  183. package/dist/custom-commands/loader.js.map +1 -1
  184. package/dist/custom-commands/parser.d.ts.map +1 -1
  185. package/dist/custom-commands/parser.js.map +1 -1
  186. package/dist/hooks/useAppInitialization.d.ts +9 -5
  187. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  188. package/dist/hooks/useAppInitialization.js +119 -45
  189. package/dist/hooks/useAppInitialization.js.map +1 -1
  190. package/dist/hooks/useAppState.d.ts +28 -9
  191. package/dist/hooks/useAppState.d.ts.map +1 -1
  192. package/dist/hooks/useAppState.js +28 -8
  193. package/dist/hooks/useAppState.js.map +1 -1
  194. package/dist/hooks/useChatHandler.d.ts +5 -3
  195. package/dist/hooks/useChatHandler.d.ts.map +1 -1
  196. package/dist/hooks/useChatHandler.js +218 -118
  197. package/dist/hooks/useChatHandler.js.map +1 -1
  198. package/dist/hooks/useDirectoryTrust.js +1 -1
  199. package/dist/hooks/useDirectoryTrust.js.map +1 -1
  200. package/dist/hooks/useInputState.js +2 -2
  201. package/dist/hooks/useInputState.js.map +1 -1
  202. package/dist/hooks/useModeHandlers.d.ts +5 -5
  203. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  204. package/dist/hooks/useModeHandlers.js +12 -12
  205. package/dist/hooks/useModeHandlers.js.map +1 -1
  206. package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
  207. package/dist/hooks/useTerminalWidth.js +3 -3
  208. package/dist/hooks/useTerminalWidth.js.map +1 -1
  209. package/dist/hooks/useTheme.d.ts.map +1 -1
  210. package/dist/hooks/useTheme.js +1 -1
  211. package/dist/hooks/useTheme.js.map +1 -1
  212. package/dist/hooks/useToolHandler.d.ts +1 -1
  213. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  214. package/dist/hooks/useToolHandler.js +4 -4
  215. package/dist/hooks/useToolHandler.js.map +1 -1
  216. package/dist/hooks/useUIState.d.ts +1 -1
  217. package/dist/hooks/useUIState.d.ts.map +1 -1
  218. package/dist/hooks/useUIState.js.map +1 -1
  219. package/dist/hooks/useVSCodeServer.js +2 -2
  220. package/dist/hooks/useVSCodeServer.js.map +1 -1
  221. package/dist/init/agents-template-generator.d.ts +1 -1
  222. package/dist/init/agents-template-generator.d.ts.map +1 -1
  223. package/dist/init/agents-template-generator.js.map +1 -1
  224. package/dist/init/existing-rules-extractor.js +1 -1
  225. package/dist/init/existing-rules-extractor.js.map +1 -1
  226. package/dist/init/file-scanner.js +2 -2
  227. package/dist/init/file-scanner.js.map +1 -1
  228. package/dist/init/framework-detector.js +1 -1
  229. package/dist/init/framework-detector.js.map +1 -1
  230. package/dist/init/project-analyzer.d.ts +1 -1
  231. package/dist/init/project-analyzer.d.ts.map +1 -1
  232. package/dist/init/project-analyzer.js +3 -3
  233. package/dist/init/project-analyzer.js.map +1 -1
  234. package/dist/lsp/lsp-client.d.ts +1 -1
  235. package/dist/lsp/lsp-client.d.ts.map +1 -1
  236. package/dist/lsp/lsp-client.js +1 -1
  237. package/dist/lsp/lsp-client.js.map +1 -1
  238. package/dist/lsp/lsp-client.spec.js +1 -2
  239. package/dist/lsp/lsp-client.spec.js.map +1 -1
  240. package/dist/lsp/lsp-manager.d.ts +1 -1
  241. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  242. package/dist/lsp/lsp-manager.js.map +1 -1
  243. package/dist/lsp/lsp-manager.spec.js +1 -1
  244. package/dist/lsp/lsp-manager.spec.js.map +1 -1
  245. package/dist/lsp/protocol.spec.js +1 -1
  246. package/dist/lsp/protocol.spec.js.map +1 -1
  247. package/dist/lsp/server-discovery.spec.js +1 -1
  248. package/dist/lsp/server-discovery.spec.js.map +1 -1
  249. package/dist/markdown-parser/index.spec.js.map +1 -1
  250. package/dist/markdown-parser/table-parser.spec.js.map +1 -1
  251. package/dist/mcp/mcp-client.d.ts +3 -2
  252. package/dist/mcp/mcp-client.d.ts.map +1 -1
  253. package/dist/mcp/mcp-client.js +279 -96
  254. package/dist/mcp/mcp-client.js.map +1 -1
  255. package/dist/mcp/transport-factory.d.ts +1 -1
  256. package/dist/mcp/transport-factory.d.ts.map +1 -1
  257. package/dist/mcp/transport-factory.js +16 -3
  258. package/dist/mcp/transport-factory.js.map +1 -1
  259. package/dist/mcp/transport-factory.spec.js +30 -48
  260. package/dist/mcp/transport-factory.spec.js.map +1 -1
  261. package/dist/message-handler.d.ts +1 -1
  262. package/dist/message-handler.d.ts.map +1 -1
  263. package/dist/message-handler.js +1 -1
  264. package/dist/message-handler.js.map +1 -1
  265. package/dist/model-database/database-engine.d.ts +25 -0
  266. package/dist/model-database/database-engine.d.ts.map +1 -0
  267. package/dist/model-database/database-engine.js +37 -0
  268. package/dist/model-database/database-engine.js.map +1 -0
  269. package/dist/model-database/database-engine.spec.d.ts +2 -0
  270. package/dist/model-database/database-engine.spec.d.ts.map +1 -0
  271. package/dist/model-database/database-engine.spec.js +413 -0
  272. package/dist/model-database/database-engine.spec.js.map +1 -0
  273. package/dist/model-database/model-database.d.ts +30 -0
  274. package/dist/model-database/model-database.d.ts.map +1 -0
  275. package/dist/model-database/model-database.js +82 -0
  276. package/dist/model-database/model-database.js.map +1 -0
  277. package/dist/model-database/model-database.spec.d.ts +2 -0
  278. package/dist/model-database/model-database.spec.d.ts.map +1 -0
  279. package/dist/model-database/model-database.spec.js +322 -0
  280. package/dist/model-database/model-database.spec.js.map +1 -0
  281. package/dist/model-database/model-engine.d.ts +25 -0
  282. package/dist/model-database/model-engine.d.ts.map +1 -0
  283. package/dist/model-database/model-engine.js +49 -0
  284. package/dist/model-database/model-engine.js.map +1 -0
  285. package/dist/model-database/model-engine.spec.d.ts +2 -0
  286. package/dist/model-database/model-engine.spec.d.ts.map +1 -0
  287. package/dist/model-database/model-engine.spec.js +381 -0
  288. package/dist/model-database/model-engine.spec.js.map +1 -0
  289. package/dist/model-database/model-fetcher.d.ts +14 -0
  290. package/dist/model-database/model-fetcher.d.ts.map +1 -0
  291. package/dist/model-database/model-fetcher.js +249 -0
  292. package/dist/model-database/model-fetcher.js.map +1 -0
  293. package/dist/model-database/model-fetcher.spec.d.ts +2 -0
  294. package/dist/model-database/model-fetcher.spec.d.ts.map +1 -0
  295. package/dist/model-database/model-fetcher.spec.js +498 -0
  296. package/dist/model-database/model-fetcher.spec.js.map +1 -0
  297. package/dist/models/models-cache.d.ts +1 -1
  298. package/dist/models/models-cache.d.ts.map +1 -1
  299. package/dist/models/models-cache.js +1 -1
  300. package/dist/models/models-cache.js.map +1 -1
  301. package/dist/models/models-dev-client.d.ts.map +1 -1
  302. package/dist/models/models-dev-client.js +23 -7
  303. package/dist/models/models-dev-client.js.map +1 -1
  304. package/dist/prompt-history.js +2 -2
  305. package/dist/prompt-history.js.map +1 -1
  306. package/dist/services/checkpoint-manager.d.ts +68 -0
  307. package/dist/services/checkpoint-manager.d.ts.map +1 -0
  308. package/dist/services/checkpoint-manager.js +345 -0
  309. package/dist/services/checkpoint-manager.js.map +1 -0
  310. package/dist/services/checkpoint-manager.spec.d.ts +2 -0
  311. package/dist/services/checkpoint-manager.spec.d.ts.map +1 -0
  312. package/dist/services/checkpoint-manager.spec.js +353 -0
  313. package/dist/services/checkpoint-manager.spec.js.map +1 -0
  314. package/dist/services/file-snapshot.d.ts +32 -0
  315. package/dist/services/file-snapshot.d.ts.map +1 -0
  316. package/dist/services/file-snapshot.js +161 -0
  317. package/dist/services/file-snapshot.js.map +1 -0
  318. package/dist/services/file-snapshot.spec.d.ts +2 -0
  319. package/dist/services/file-snapshot.spec.d.ts.map +1 -0
  320. package/dist/services/file-snapshot.spec.js +285 -0
  321. package/dist/services/file-snapshot.spec.js.map +1 -0
  322. package/dist/test-utils/render-with-theme.d.ts +7 -0
  323. package/dist/test-utils/render-with-theme.d.ts.map +1 -0
  324. package/dist/test-utils/render-with-theme.js +38 -0
  325. package/dist/test-utils/render-with-theme.js.map +1 -0
  326. package/dist/tokenization/tokenizer-factory.js +2 -2
  327. package/dist/tokenization/tokenizer-factory.js.map +1 -1
  328. package/dist/tokenization/tokenizer-factory.spec.js +2 -2
  329. package/dist/tokenization/tokenizer-factory.spec.js.map +1 -1
  330. package/dist/tokenization/tokenizers/anthropic-tokenizer.d.ts +1 -1
  331. package/dist/tokenization/tokenizers/anthropic-tokenizer.d.ts.map +1 -1
  332. package/dist/tokenization/tokenizers/anthropic-tokenizer.js.map +1 -1
  333. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.js.map +1 -1
  334. package/dist/tokenization/tokenizers/fallback-tokenizer.d.ts +1 -1
  335. package/dist/tokenization/tokenizers/fallback-tokenizer.d.ts.map +1 -1
  336. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.js.map +1 -1
  337. package/dist/tokenization/tokenizers/llama-tokenizer.d.ts +1 -1
  338. package/dist/tokenization/tokenizers/llama-tokenizer.d.ts.map +1 -1
  339. package/dist/tokenization/tokenizers/llama-tokenizer.js.map +1 -1
  340. package/dist/tokenization/tokenizers/llama-tokenizer.spec.js.map +1 -1
  341. package/dist/tokenization/tokenizers/openai-tokenizer.d.ts +1 -1
  342. package/dist/tokenization/tokenizers/openai-tokenizer.d.ts.map +1 -1
  343. package/dist/tokenization/tokenizers/openai-tokenizer.js.map +1 -1
  344. package/dist/tokenization/tokenizers/openai-tokenizer.spec.js.map +1 -1
  345. package/dist/tool-calling/json-parser.d.ts.map +1 -1
  346. package/dist/tool-calling/json-parser.js +12 -14
  347. package/dist/tool-calling/json-parser.js.map +1 -1
  348. package/dist/tool-calling/json-parser.spec.js +7 -7
  349. package/dist/tool-calling/json-parser.spec.js.map +1 -1
  350. package/dist/tool-calling/tool-parser.d.ts.map +1 -1
  351. package/dist/tool-calling/tool-parser.js +38 -10
  352. package/dist/tool-calling/tool-parser.js.map +1 -1
  353. package/dist/tool-calling/tool-parser.spec.js +82 -4
  354. package/dist/tool-calling/tool-parser.spec.js.map +1 -1
  355. package/dist/tool-calling/xml-parser.d.ts.map +1 -1
  356. package/dist/tool-calling/xml-parser.js +21 -23
  357. package/dist/tool-calling/xml-parser.js.map +1 -1
  358. package/dist/tool-calling/xml-parser.spec.js +23 -3
  359. package/dist/tool-calling/xml-parser.spec.js.map +1 -1
  360. package/dist/tools/create-file.d.ts +24 -2
  361. package/dist/tools/create-file.d.ts.map +1 -1
  362. package/dist/tools/create-file.js +20 -16
  363. package/dist/tools/create-file.js.map +1 -1
  364. package/dist/tools/delete-lines.d.ts +18 -2
  365. package/dist/tools/delete-lines.d.ts.map +1 -1
  366. package/dist/tools/delete-lines.js +22 -17
  367. package/dist/tools/delete-lines.js.map +1 -1
  368. package/dist/tools/execute-bash.d.ts +2 -2
  369. package/dist/tools/execute-bash.d.ts.map +1 -1
  370. package/dist/tools/execute-bash.js +13 -12
  371. package/dist/tools/execute-bash.js.map +1 -1
  372. package/dist/tools/execute-function.spec.d.ts +2 -0
  373. package/dist/tools/execute-function.spec.d.ts.map +1 -0
  374. package/dist/tools/execute-function.spec.js +141 -0
  375. package/dist/tools/execute-function.spec.js.map +1 -0
  376. package/dist/tools/fetch-url.d.ts +16 -2
  377. package/dist/tools/fetch-url.d.ts.map +1 -1
  378. package/dist/tools/fetch-url.js +13 -13
  379. package/dist/tools/fetch-url.js.map +1 -1
  380. package/dist/tools/find-files.d.ts +18 -2
  381. package/dist/tools/find-files.d.ts.map +1 -1
  382. package/dist/tools/find-files.js +13 -11
  383. package/dist/tools/find-files.js.map +1 -1
  384. package/dist/tools/index.d.ts +2 -3
  385. package/dist/tools/index.d.ts.map +1 -1
  386. package/dist/tools/index.js +35 -25
  387. package/dist/tools/index.js.map +1 -1
  388. package/dist/tools/insert-lines.d.ts +18 -2
  389. package/dist/tools/insert-lines.d.ts.map +1 -1
  390. package/dist/tools/insert-lines.js +21 -16
  391. package/dist/tools/insert-lines.js.map +1 -1
  392. package/dist/tools/lsp-get-diagnostics.d.ts +10 -2
  393. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  394. package/dist/tools/lsp-get-diagnostics.js +13 -11
  395. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  396. package/dist/tools/needs-approval.spec.d.ts +2 -0
  397. package/dist/tools/needs-approval.spec.d.ts.map +1 -0
  398. package/dist/tools/needs-approval.spec.js +308 -0
  399. package/dist/tools/needs-approval.spec.js.map +1 -0
  400. package/dist/tools/read-file.d.ts +2 -2
  401. package/dist/tools/read-file.d.ts.map +1 -1
  402. package/dist/tools/read-file.js +16 -18
  403. package/dist/tools/read-file.js.map +1 -1
  404. package/dist/tools/replace-lines.d.ts +19 -2
  405. package/dist/tools/replace-lines.d.ts.map +1 -1
  406. package/dist/tools/replace-lines.js +21 -16
  407. package/dist/tools/replace-lines.js.map +1 -1
  408. package/dist/tools/search-file-contents.d.ts +20 -2
  409. package/dist/tools/search-file-contents.d.ts.map +1 -1
  410. package/dist/tools/search-file-contents.js +17 -14
  411. package/dist/tools/search-file-contents.js.map +1 -1
  412. package/dist/tools/tool-manager.d.ts +1 -1
  413. package/dist/tools/tool-manager.d.ts.map +1 -1
  414. package/dist/tools/tool-manager.js +1 -1
  415. package/dist/tools/tool-manager.js.map +1 -1
  416. package/dist/tools/tool-registry.d.ts +1 -1
  417. package/dist/tools/tool-registry.d.ts.map +1 -1
  418. package/dist/tools/web-search.d.ts +2 -2
  419. package/dist/tools/web-search.d.ts.map +1 -1
  420. package/dist/tools/web-search.js +14 -14
  421. package/dist/tools/web-search.js.map +1 -1
  422. package/dist/types/app.d.ts +7 -4
  423. package/dist/types/app.d.ts.map +1 -1
  424. package/dist/types/checkpoint.d.ts +43 -0
  425. package/dist/types/checkpoint.d.ts.map +1 -0
  426. package/dist/types/checkpoint.js +2 -0
  427. package/dist/types/checkpoint.js.map +1 -0
  428. package/dist/types/config.d.ts +0 -1
  429. package/dist/types/config.d.ts.map +1 -1
  430. package/dist/types/core-connection-status.spec.d.ts +2 -0
  431. package/dist/types/core-connection-status.spec.d.ts.map +1 -0
  432. package/dist/types/core-connection-status.spec.js +52 -0
  433. package/dist/types/core-connection-status.spec.js.map +1 -0
  434. package/dist/types/core.d.ts +34 -29
  435. package/dist/types/core.d.ts.map +1 -1
  436. package/dist/types/core.js +1 -1
  437. package/dist/types/core.js.map +1 -1
  438. package/dist/types/index.d.ts +1 -0
  439. package/dist/types/index.d.ts.map +1 -1
  440. package/dist/types/index.js +1 -0
  441. package/dist/types/index.js.map +1 -1
  442. package/dist/types/system.d.ts +5 -30
  443. package/dist/types/system.d.ts.map +1 -1
  444. package/dist/usage/calculator.spec.js +1 -1
  445. package/dist/usage/calculator.spec.js.map +1 -1
  446. package/dist/usage/storage.d.ts +1 -1
  447. package/dist/usage/storage.d.ts.map +1 -1
  448. package/dist/usage/storage.js +9 -3
  449. package/dist/usage/storage.js.map +1 -1
  450. package/dist/usage/storage.spec.js +3 -3
  451. package/dist/usage/storage.spec.js.map +1 -1
  452. package/dist/usage/tracker.d.ts.map +1 -1
  453. package/dist/usage/tracker.js +1 -1
  454. package/dist/usage/tracker.js.map +1 -1
  455. package/dist/usage/tracker.spec.js +4 -4
  456. package/dist/usage/tracker.spec.js.map +1 -1
  457. package/dist/utils/atomic-deletion.spec.js +1 -1
  458. package/dist/utils/atomic-deletion.spec.js.map +1 -1
  459. package/dist/utils/checkpoint-utils.d.ts +12 -0
  460. package/dist/utils/checkpoint-utils.d.ts.map +1 -0
  461. package/dist/utils/checkpoint-utils.js +85 -0
  462. package/dist/utils/checkpoint-utils.js.map +1 -0
  463. package/dist/utils/checkpoint-utils.spec.d.ts +2 -0
  464. package/dist/utils/checkpoint-utils.spec.d.ts.map +1 -0
  465. package/dist/utils/checkpoint-utils.spec.js +182 -0
  466. package/dist/utils/checkpoint-utils.spec.js.map +1 -0
  467. package/dist/utils/error-formatter.d.ts +35 -0
  468. package/dist/utils/error-formatter.d.ts.map +1 -1
  469. package/dist/utils/error-formatter.js +123 -0
  470. package/dist/utils/error-formatter.js.map +1 -1
  471. package/dist/utils/file-autocomplete.js +2 -2
  472. package/dist/utils/file-autocomplete.js.map +1 -1
  473. package/dist/utils/file-autocomplete.spec.js +1 -1
  474. package/dist/utils/file-autocomplete.spec.js.map +1 -1
  475. package/dist/utils/file-content-loader.js +1 -1
  476. package/dist/utils/file-content-loader.js.map +1 -1
  477. package/dist/utils/file-content-loader.spec.js +4 -4
  478. package/dist/utils/file-content-loader.spec.js.map +1 -1
  479. package/dist/utils/file-mention-handler.js.map +1 -1
  480. package/dist/utils/file-mention-handler.spec.js +4 -4
  481. package/dist/utils/file-mention-handler.spec.js.map +1 -1
  482. package/dist/utils/file-mention-parser.spec.js +2 -2
  483. package/dist/utils/file-mention-parser.spec.js.map +1 -1
  484. package/dist/utils/installation-detector.js +2 -2
  485. package/dist/utils/installation-detector.js.map +1 -1
  486. package/dist/utils/installation-detector.spec.js +10 -17
  487. package/dist/utils/installation-detector.spec.js.map +1 -1
  488. package/dist/utils/logging/config.d.ts +41 -0
  489. package/dist/utils/logging/config.d.ts.map +1 -0
  490. package/dist/utils/logging/config.js +188 -0
  491. package/dist/utils/logging/config.js.map +1 -0
  492. package/dist/utils/logging/config.spec.d.ts +2 -0
  493. package/dist/utils/logging/config.spec.d.ts.map +1 -0
  494. package/dist/utils/logging/config.spec.js +233 -0
  495. package/dist/utils/logging/config.spec.js.map +1 -0
  496. package/dist/utils/logging/console-facade.d.ts +93 -0
  497. package/dist/utils/logging/console-facade.d.ts.map +1 -0
  498. package/dist/utils/logging/console-facade.js +295 -0
  499. package/dist/utils/logging/console-facade.js.map +1 -0
  500. package/dist/utils/logging/console-facade.spec.d.ts +2 -0
  501. package/dist/utils/logging/console-facade.spec.d.ts.map +1 -0
  502. package/dist/utils/logging/console-facade.spec.js +143 -0
  503. package/dist/utils/logging/console-facade.spec.js.map +1 -0
  504. package/dist/utils/logging/correlation.d.ts +139 -0
  505. package/dist/utils/logging/correlation.d.ts.map +1 -0
  506. package/dist/utils/logging/correlation.js +410 -0
  507. package/dist/utils/logging/correlation.js.map +1 -0
  508. package/dist/utils/logging/correlation.spec.d.ts +2 -0
  509. package/dist/utils/logging/correlation.spec.d.ts.map +1 -0
  510. package/dist/utils/logging/correlation.spec.js +449 -0
  511. package/dist/utils/logging/correlation.spec.js.map +1 -0
  512. package/dist/utils/logging/formatters.d.ts +70 -0
  513. package/dist/utils/logging/formatters.d.ts.map +1 -0
  514. package/dist/utils/logging/formatters.js +186 -0
  515. package/dist/utils/logging/formatters.js.map +1 -0
  516. package/dist/utils/logging/formatters.spec.d.ts +2 -0
  517. package/dist/utils/logging/formatters.spec.d.ts.map +1 -0
  518. package/dist/utils/logging/formatters.spec.js +356 -0
  519. package/dist/utils/logging/formatters.spec.js.map +1 -0
  520. package/dist/utils/logging/health-monitor.d.ts +216 -0
  521. package/dist/utils/logging/health-monitor.d.ts.map +1 -0
  522. package/dist/utils/logging/health-monitor.js +760 -0
  523. package/dist/utils/logging/health-monitor.js.map +1 -0
  524. package/dist/utils/logging/health-monitor.spec.d.ts +2 -0
  525. package/dist/utils/logging/health-monitor.spec.d.ts.map +1 -0
  526. package/dist/utils/logging/health-monitor.spec.js +305 -0
  527. package/dist/utils/logging/health-monitor.spec.js.map +1 -0
  528. package/dist/utils/logging/index.d.ts +100 -0
  529. package/dist/utils/logging/index.d.ts.map +1 -0
  530. package/dist/utils/logging/index.js +186 -0
  531. package/dist/utils/logging/index.js.map +1 -0
  532. package/dist/utils/logging/index.spec.d.ts +2 -0
  533. package/dist/utils/logging/index.spec.d.ts.map +1 -0
  534. package/dist/utils/logging/index.spec.js +214 -0
  535. package/dist/utils/logging/index.spec.js.map +1 -0
  536. package/dist/utils/logging/integration.spec.d.ts +2 -0
  537. package/dist/utils/logging/integration.spec.d.ts.map +1 -0
  538. package/dist/utils/logging/integration.spec.js +312 -0
  539. package/dist/utils/logging/integration.spec.js.map +1 -0
  540. package/dist/utils/logging/log-method-factory.d.ts +43 -0
  541. package/dist/utils/logging/log-method-factory.d.ts.map +1 -0
  542. package/dist/utils/logging/log-method-factory.js +176 -0
  543. package/dist/utils/logging/log-method-factory.js.map +1 -0
  544. package/dist/utils/logging/log-method-factory.spec.d.ts +2 -0
  545. package/dist/utils/logging/log-method-factory.spec.d.ts.map +1 -0
  546. package/dist/utils/logging/log-method-factory.spec.js +428 -0
  547. package/dist/utils/logging/log-method-factory.spec.js.map +1 -0
  548. package/dist/utils/logging/log-query.d.ts +275 -0
  549. package/dist/utils/logging/log-query.d.ts.map +1 -0
  550. package/dist/utils/logging/log-query.js +621 -0
  551. package/dist/utils/logging/log-query.js.map +1 -0
  552. package/dist/utils/logging/log-query.spec.d.ts +2 -0
  553. package/dist/utils/logging/log-query.spec.d.ts.map +1 -0
  554. package/dist/utils/logging/log-query.spec.js +737 -0
  555. package/dist/utils/logging/log-query.spec.js.map +1 -0
  556. package/dist/utils/logging/logger-provider.d.ts +73 -0
  557. package/dist/utils/logging/logger-provider.d.ts.map +1 -0
  558. package/dist/utils/logging/logger-provider.js +298 -0
  559. package/dist/utils/logging/logger-provider.js.map +1 -0
  560. package/dist/utils/logging/logger-provider.spec.d.ts +2 -0
  561. package/dist/utils/logging/logger-provider.spec.d.ts.map +1 -0
  562. package/dist/utils/logging/logger-provider.spec.js +204 -0
  563. package/dist/utils/logging/logger-provider.spec.js.map +1 -0
  564. package/dist/utils/logging/performance.d.ts +147 -0
  565. package/dist/utils/logging/performance.d.ts.map +1 -0
  566. package/dist/utils/logging/performance.js +520 -0
  567. package/dist/utils/logging/performance.js.map +1 -0
  568. package/dist/utils/logging/performance.spec.d.ts +2 -0
  569. package/dist/utils/logging/performance.spec.d.ts.map +1 -0
  570. package/dist/utils/logging/performance.spec.js +139 -0
  571. package/dist/utils/logging/performance.spec.js.map +1 -0
  572. package/dist/utils/logging/pino-logger.d.ts +22 -0
  573. package/dist/utils/logging/pino-logger.d.ts.map +1 -0
  574. package/dist/utils/logging/pino-logger.js +372 -0
  575. package/dist/utils/logging/pino-logger.js.map +1 -0
  576. package/dist/utils/logging/pino-logger.spec.d.ts +2 -0
  577. package/dist/utils/logging/pino-logger.spec.d.ts.map +1 -0
  578. package/dist/utils/logging/pino-logger.spec.js +294 -0
  579. package/dist/utils/logging/pino-logger.spec.js.map +1 -0
  580. package/dist/utils/logging/redaction.d.ts +38 -0
  581. package/dist/utils/logging/redaction.d.ts.map +1 -0
  582. package/dist/utils/logging/redaction.js +210 -0
  583. package/dist/utils/logging/redaction.js.map +1 -0
  584. package/dist/utils/logging/redaction.spec.d.ts +2 -0
  585. package/dist/utils/logging/redaction.spec.d.ts.map +1 -0
  586. package/dist/utils/logging/redaction.spec.js +338 -0
  587. package/dist/utils/logging/redaction.spec.js.map +1 -0
  588. package/dist/utils/logging/request-tracker.d.ts +189 -0
  589. package/dist/utils/logging/request-tracker.d.ts.map +1 -0
  590. package/dist/utils/logging/request-tracker.js +569 -0
  591. package/dist/utils/logging/request-tracker.js.map +1 -0
  592. package/dist/utils/logging/request-tracker.spec.d.ts +2 -0
  593. package/dist/utils/logging/request-tracker.spec.d.ts.map +1 -0
  594. package/dist/utils/logging/request-tracker.spec.js +868 -0
  595. package/dist/utils/logging/request-tracker.spec.js.map +1 -0
  596. package/dist/utils/logging/transports.d.ts +55 -0
  597. package/dist/utils/logging/transports.d.ts.map +1 -0
  598. package/dist/utils/logging/transports.js +252 -0
  599. package/dist/utils/logging/transports.js.map +1 -0
  600. package/dist/utils/logging/transports.spec.d.ts +2 -0
  601. package/dist/utils/logging/transports.spec.d.ts.map +1 -0
  602. package/dist/utils/logging/transports.spec.js +390 -0
  603. package/dist/utils/logging/transports.spec.js.map +1 -0
  604. package/dist/utils/logging/types.d.ts +173 -0
  605. package/dist/utils/logging/types.d.ts.map +1 -0
  606. package/dist/utils/logging/types.js +5 -0
  607. package/dist/utils/logging/types.js.map +1 -0
  608. package/dist/utils/message-queue.d.ts +64 -4
  609. package/dist/utils/message-queue.d.ts.map +1 -1
  610. package/dist/utils/message-queue.js +282 -28
  611. package/dist/utils/message-queue.js.map +1 -1
  612. package/dist/utils/paste-utils.spec.js +1 -1
  613. package/dist/utils/paste-utils.spec.js.map +1 -1
  614. package/dist/utils/prompt-processor.d.ts +2 -3
  615. package/dist/utils/prompt-processor.d.ts.map +1 -1
  616. package/dist/utils/prompt-processor.js +4 -52
  617. package/dist/utils/prompt-processor.js.map +1 -1
  618. package/dist/utils/tool-cancellation.spec.js.map +1 -1
  619. package/dist/utils/tool-result-display.d.ts +2 -2
  620. package/dist/utils/tool-result-display.d.ts.map +1 -1
  621. package/dist/utils/tool-result-display.js +3 -3
  622. package/dist/utils/tool-result-display.js.map +1 -1
  623. package/dist/utils/update-checker.d.ts.map +1 -1
  624. package/dist/utils/update-checker.js +1 -1
  625. package/dist/utils/update-checker.js.map +1 -1
  626. package/dist/utils/update-checker.spec.js +2 -2
  627. package/dist/utils/update-checker.spec.js.map +1 -1
  628. package/dist/vscode/extension-installer.js +1 -1
  629. package/dist/vscode/extension-installer.js.map +1 -1
  630. package/dist/vscode/extension-installer.spec.js +1 -1
  631. package/dist/vscode/extension-installer.spec.js.map +1 -1
  632. package/dist/vscode/protocol.spec.js +1 -1
  633. package/dist/vscode/protocol.spec.js.map +1 -1
  634. package/dist/vscode/vscode-server.d.ts.map +1 -1
  635. package/dist/vscode/vscode-server.js +2 -2
  636. package/dist/vscode/vscode-server.js.map +1 -1
  637. package/dist/vscode/vscode-server.spec.js.map +1 -1
  638. package/dist/wizard/config-wizard.d.ts.map +1 -1
  639. package/dist/wizard/config-wizard.js +16 -12
  640. package/dist/wizard/config-wizard.js.map +1 -1
  641. package/dist/wizard/steps/location-step.js +4 -4
  642. package/dist/wizard/steps/location-step.js.map +1 -1
  643. package/dist/wizard/steps/mcp-step.d.ts.map +1 -1
  644. package/dist/wizard/steps/mcp-step.js +4 -4
  645. package/dist/wizard/steps/mcp-step.js.map +1 -1
  646. package/dist/wizard/steps/provider-step.d.ts.map +1 -1
  647. package/dist/wizard/steps/provider-step.js +4 -4
  648. package/dist/wizard/steps/provider-step.js.map +1 -1
  649. package/dist/wizard/steps/summary-step.d.ts.map +1 -1
  650. package/dist/wizard/steps/summary-step.js +2 -2
  651. package/dist/wizard/steps/summary-step.js.map +1 -1
  652. package/dist/wizard/templates/provider-templates.d.ts.map +1 -1
  653. package/dist/wizard/templates/provider-templates.js +66 -2
  654. package/dist/wizard/templates/provider-templates.js.map +1 -1
  655. package/dist/wizard/validation-array.spec.js +1 -1
  656. package/dist/wizard/validation-array.spec.js.map +1 -1
  657. package/dist/wizard/validation.spec.js +1 -1
  658. package/dist/wizard/validation.spec.js.map +1 -1
  659. package/package.json +28 -26
  660. package/source/app/prompts/main-prompt.md +29 -96
  661. package/dist/commands/recommendations.d.ts +0 -8
  662. package/dist/commands/recommendations.d.ts.map +0 -1
  663. package/dist/commands/recommendations.js +0 -311
  664. package/dist/commands/recommendations.js.map +0 -1
  665. package/dist/commands/streaming.d.ts +0 -3
  666. package/dist/commands/streaming.d.ts.map +0 -1
  667. package/dist/commands/streaming.js +0 -23
  668. package/dist/commands/streaming.js.map +0 -1
  669. package/dist/components/thinking-indicator.d.ts +0 -3
  670. package/dist/components/thinking-indicator.d.ts.map +0 -1
  671. package/dist/components/thinking-indicator.js +0 -69
  672. package/dist/components/thinking-indicator.js.map +0 -1
  673. package/dist/recommendations/model-database.d.ts +0 -8
  674. package/dist/recommendations/model-database.d.ts.map +0 -1
  675. package/dist/recommendations/model-database.js +0 -514
  676. package/dist/recommendations/model-database.js.map +0 -1
  677. package/dist/recommendations/model-engine.d.ts +0 -16
  678. package/dist/recommendations/model-engine.d.ts.map +0 -1
  679. package/dist/recommendations/model-engine.js +0 -185
  680. package/dist/recommendations/model-engine.js.map +0 -1
  681. package/dist/recommendations/recommendation-engine.d.ts +0 -39
  682. package/dist/recommendations/recommendation-engine.d.ts.map +0 -1
  683. package/dist/recommendations/recommendation-engine.js +0 -144
  684. package/dist/recommendations/recommendation-engine.js.map +0 -1
  685. package/dist/system/detector.d.ts +0 -18
  686. package/dist/system/detector.d.ts.map +0 -1
  687. package/dist/system/detector.js +0 -140
  688. package/dist/system/detector.js.map +0 -1
package/README.md CHANGED
@@ -10,6 +10,9 @@ A local-first CLI coding agent that brings the power of agentic coding tools lik
10
10
  - [Installation](#installation)
11
11
  - [For Users](#for-users)
12
12
  - [For Development](#for-development)
13
+ - [Usage](#usage)
14
+ - [Interactive Mode](#interactive-mode)
15
+ - [Non-Interactive Mode](#non-interactive-mode)
13
16
  - [Configuration](#configuration)
14
17
  - [AI Provider Setup](#ai-provider-setup)
15
18
  - [MCP (Model Context Protocol) Servers](#mcp-model-context-protocol-servers)
@@ -19,11 +22,11 @@ A local-first CLI coding agent that brings the power of agentic coding tools lik
19
22
  - [Built-in Commands](#built-in-commands)
20
23
  - [Custom Commands](#custom-commands)
21
24
  - [Features](#features)
22
- - [Multi-Provider Support](#-multi-provider-support)
23
- - [Advanced Tool System](#️-advanced-tool-system)
24
- - [Custom Command System](#-custom-command-system)
25
- - [Enhanced User Experience](#-enhanced-user-experience)
26
- - [Developer Features](#️-developer-features)
25
+ - [Multi-Provider Support](#multi-provider-support)
26
+ - [Advanced Tool System](#advanced-tool-system)
27
+ - [Custom Command System](#custom-command-system)
28
+ - [Enhanced User Experience](#enhanced-user-experience)
29
+ - [Developer Features](#developer-features)
27
30
  - [VS Code Extension](#vs-code-extension)
28
31
  - [Community](#community)
29
32
 
@@ -165,6 +168,62 @@ Or build and run in one command:
165
168
  pnpm run dev
166
169
  ```
167
170
 
171
+ ## Usage
172
+
173
+ ### Interactive Mode
174
+
175
+ To start Nanocoder in interactive mode (the default), simply run:
176
+
177
+ ```bash
178
+ nanocoder
179
+ ```
180
+
181
+ This will open an interactive chat session where you can:
182
+
183
+ - Chat with the AI about your code
184
+ - Use slash commands (e.g., `/help`, `/model`, `/status`)
185
+ - Execute bash commands with `!`
186
+ - Tag files with `@`
187
+ - Review and approve tool executions
188
+ - Switch between different models and providers
189
+
190
+ ### Non-Interactive Mode
191
+
192
+ For automated tasks, scripting, or CI/CD pipelines, use the `run` command:
193
+
194
+ ```bash
195
+ nanocoder run "your prompt here"
196
+ ```
197
+
198
+ **Examples:**
199
+
200
+ ```bash
201
+ # Simple task
202
+ nanocoder run "analyze the code in src/app.ts"
203
+
204
+ # Code generation
205
+ nanocoder run "create a new React component for user login"
206
+
207
+ # Testing
208
+ nanocoder run "write unit tests for all functions in utils.js"
209
+
210
+ # Refactoring
211
+ nanocoder run "refactor the database connection to use a connection pool"
212
+ ```
213
+
214
+ **Non-interactive mode behavior:**
215
+
216
+ - Automatically executes the given prompt
217
+ - Runs in auto-accept mode (tools execute without confirmation)
218
+ - Displays all output and tool execution results
219
+ - Exits automatically when the task is complete
220
+
221
+ **Note:** When using non-interactive mode with VS Code integration, place any flags (like `--vscode` or `--vscode-port`) before the `run` command:
222
+
223
+ ```bash
224
+ nanocoder --vscode run "your prompt"
225
+ ```
226
+
168
227
  ## Configuration
169
228
 
170
229
  ### AI Provider Setup
@@ -237,6 +296,18 @@ Nanocoder looks for configuration in the following order (first found wins):
237
296
  "baseUrl": "https://api.z.ai/api/coding/paas/v4/",
238
297
  "apiKey": "your-z.ai-coding-api-key",
239
298
  "models": ["glm-4.6", "glm-4.5", "glm-4.5-air"]
299
+ },
300
+ {
301
+ "name": "GitHub Models",
302
+ "baseUrl": "https://models.github.ai/inference",
303
+ "apiKey": "your-github-pat",
304
+ "models": ["openai/gpt-4o-mini", "meta/llama-3.1-70b-instruct"]
305
+ },
306
+ {
307
+ "name": "Poe",
308
+ "baseUrl": "https://api.poe.com/v1",
309
+ "apiKey": "your-poe-api-key",
310
+ "models": ["Claude-Sonnet-4", "GPT-4o", "Gemini-2.5-Pro"]
240
311
  }
241
312
  ]
242
313
  }
@@ -253,6 +324,8 @@ Nanocoder looks for configuration in the following order (first found wins):
253
324
  - **vLLM**: `"baseUrl": "http://localhost:8000/v1"`
254
325
  - **LocalAI**: `"baseUrl": "http://localhost:8080/v1"`
255
326
  - **OpenAI**: `"baseUrl": "https://api.openai.com/v1"`
327
+ - **Poe**: `"baseUrl": "https://api.poe.com/v1"` (get API key from [poe.com/api_key](https://poe.com/api_key))
328
+ - **GitHub Models**: `"baseUrl": "https://models.github.ai/inference"` (requires PAT with `models:read` scope)
256
329
  - **Z.ai**: `"baseUrl": "https://api.z.ai/api/paas/v4/"`
257
330
  - **Z.ai Coding**: `"baseUrl": "https://api.z.ai/api/coding/paas/v4/"`
258
331
 
@@ -321,6 +394,40 @@ If you experience the model repeating tool calls or getting into loops (especial
321
394
 
322
395
  Tool-calling conversations require more context to track the history of tool calls and their results. If the context window is too small, the model may lose track of previous actions and repeat them indefinitely.
323
396
 
397
+ ### Logging Configuration
398
+
399
+ Nanocoder now includes comprehensive structured logging with Pino, providing enterprise-grade logging capabilities including correlation tracking, performance monitoring, and security features.
400
+
401
+ **Logging Configuration Options:**
402
+
403
+ ```bash
404
+ # Environment Variables
405
+ NANOCODER_LOG_LEVEL=debug # Log level (trace, debug, info, warn, error, fatal)
406
+ NANOCODER_LOG_TO_FILE=true # Enable file logging
407
+ NANOCODER_LOG_TO_CONSOLE=true # Enable console logging
408
+ NANOCODER_LOG_DIR=/var/log/nanocoder # Log directory
409
+ NANOCODER_CORRELATION_ENABLED=true # Enable correlation tracking
410
+ ```
411
+
412
+ **Features:**
413
+ - Structured JSON logging with metadata support
414
+ - Correlation tracking across components
415
+ - Automatic PII detection and redaction
416
+ - Performance monitoring and metrics
417
+ - Production-ready file rotation and compression
418
+
419
+ **Default Log File Locations:**
420
+
421
+ When `NANOCODER_LOG_TO_FILE=true` is set, logs are stored in platform-specific locations:
422
+
423
+ - **macOS**: `~/Library/Preferences/nanocoder/logs`
424
+ - **Linux/Unix**: `~/.config/nanocoder/logs/nanocoder/`
425
+ - **Windows**: `%APPDATA%\nanocoder\logs\`
426
+
427
+ You can override the default location using `NANOCODER_LOG_DIR` environment variable.
428
+
429
+ For complete documentation, see [Pino Logging Guide](docs/pino-logging-comprehensive.md).
430
+
324
431
  ### MCP (Model Context Protocol) Servers
325
432
 
326
433
  Nanocoder supports connecting to MCP servers to extend its capabilities with additional tools. Configure MCP servers in your `agents.config.json`:
@@ -423,7 +530,6 @@ Preferences follow the same location hierarchy as configuration files:
423
530
  - **Last model per provider**: Your preferred model for each provider
424
531
  - **Session continuity**: Automatically switches back to your preferred provider/model when restarting
425
532
  - **Last theme used**: The theme you last selected
426
- - **Streaming preference**: Whether response streaming is enabled (toggle with `/streaming` command)
427
533
 
428
534
  **Manual management:**
429
535
 
@@ -445,16 +551,16 @@ You can override this directory using `NANOCODER_DATA_DIR`.
445
551
  #### Built-in Commands
446
552
 
447
553
  - `/help` - Show available commands
448
- - `/init` - Initialize project with intelligent analysis, create AGENTS.md and configuration files
554
+ - `/init` - Initialize project with intelligent analysis, create AGENTS.md and configuration files. Use `/init --force` to regenerate AGENTS.md if it already exists.
449
555
  - `/setup-config` - Interactive wizard for configuring AI providers and MCP servers with templates
450
556
  - `/clear` - Clear chat history
451
557
  - `/model` - Switch between available models
452
558
  - `/provider` - Switch between configured AI providers
453
559
  - `/status` - Display current status (CWD, provider, model, theme, available updates, AGENTS setup)
454
- - `/streaming` - Toggle response streaming on/off (streams tokens in real-time when enabled)
455
- - `/recommendations` - Get AI model recommendations based on your system capabilities (RAM, GPU, network)
560
+ - `/model-database` - Browse coding models from OpenRouter (searchable, filterable by open/proprietary)
456
561
  - `/mcp` - Show connected MCP servers and their tools
457
562
  - `/custom-commands` - List all custom commands
563
+ - `/checkpoint` - Save and restore conversation snapshots (see [Checkpointing](#checkpointing) section)
458
564
  - `/exit` - Exit the application
459
565
  - `/export` - Export current session to markdown file
460
566
  - `/theme` - Select a theme for the Nanocoder CLI
@@ -464,6 +570,66 @@ You can override this directory using `NANOCODER_DATA_DIR`.
464
570
  - `!command` - Execute bash commands directly without leaving Nanocoder (output becomes context for the LLM)
465
571
  - `@file` - Include file contents in messages automatically via fuzzy search as you type
466
572
 
573
+ #### Checkpointing
574
+
575
+ Nanocoder supports conversation checkpointing, allowing you to save snapshots of your coding sessions and restore them later. This is perfect for experimenting with different approaches or preserving important milestones.
576
+
577
+ **Checkpoint Commands:**
578
+
579
+ - `/checkpoint create [name]` - Create a checkpoint with optional custom name
580
+
581
+ - Auto-generates timestamp-based name if not provided
582
+ - Captures conversation history, modified files, and AI model configuration
583
+ - Example: `/checkpoint create feature-auth-v1`
584
+
585
+ - `/checkpoint list` - List all available checkpoints
586
+
587
+ - Shows checkpoint name, creation time, message count, and files changed
588
+ - Sorted by creation date (newest first)
589
+
590
+ - `/checkpoint load [name]` - Restore files from a checkpoint
591
+
592
+ - **Without name**: Shows interactive list to select checkpoint
593
+ - **With name**: Directly loads the specified checkpoint
594
+ - Prompts "Create backup before loading? (Y/n)" if current session has messages
595
+ - Press Y (or Enter) to auto-backup, N to skip, Esc to cancel
596
+ - Note: Conversation history restore requires restarting Nanocoder
597
+ - Example: `/checkpoint load` (interactive) or `/checkpoint load feature-auth-v1`
598
+
599
+ - `/checkpoint delete <name>` - Delete a checkpoint permanently
600
+ - Removes checkpoint and all associated data
601
+ - Example: `/checkpoint delete old-checkpoint`
602
+
603
+ **What gets saved:**
604
+
605
+ - Complete conversation history
606
+ - Modified files with their content (detected via git)
607
+ - Active provider and model configuration
608
+ - Timestamp and metadata
609
+
610
+ **Storage location:**
611
+
612
+ - Checkpoints are stored in `.nanocoder/checkpoints/` in your project directory
613
+ - Each project has its own checkpoints
614
+ - Consider adding `.nanocoder/checkpoints` to your `.gitignore`
615
+
616
+ **Example workflow:**
617
+
618
+ ```bash
619
+ # Create a checkpoint before trying a new approach
620
+ /checkpoint create before-refactor
621
+
622
+ # Make some experimental changes...
623
+ # If things go wrong, restore the checkpoint
624
+ /checkpoint load before-refactor
625
+
626
+ # Or if things went well, create a new checkpoint
627
+ /checkpoint create after-refactor
628
+
629
+ # List all checkpoints to see your progress
630
+ /checkpoint list
631
+ ```
632
+
467
633
  #### Custom Commands
468
634
 
469
635
  Nanocoder supports custom commands defined as markdown files in the `.nanocoder/commands` directory. Like `agents.config.json`, this directory is created per codebase, allowing you to create reusable prompts with parameters and organize them by category specific to each project.
@@ -536,12 +702,12 @@ Generate comprehensive unit tests for {{component}}. Include:
536
702
  - **Smart autocomplete**: Tab completion for commands with real-time suggestions
537
703
  - **Colorized output**: Syntax highlighting and structured display
538
704
  - **Session persistence**: Maintains context and preferences across sessions
539
- - **Real-time streaming**: Live token-by-token streaming of AI responses (toggle with `/streaming`)
705
+ - **Real-time streaming**: Live token-by-token streaming of AI responses
540
706
  - **Real-time indicators**: Shows token usage, timing, and processing status
541
707
  - **First-time directory security disclaimer**: Prompts on first run and stores a per-project trust decision to prevent accidental exposure of local code or secrets.
542
708
  - **Development modes**: Three modes to control tool execution behavior (toggle with Shift+Tab)
543
- - **Normal mode**: Standard tool confirmation flow - review each tool call before execution
544
- - **Auto-accept mode**: Automatically accepts all tool calls without confirmation for faster workflows
709
+ - **Normal mode**: Standard tool confirmation flow - review potentially dangerous tool calls before execution
710
+ - **Auto-accept mode**: Automatically accepts more tool calls without confirmation for faster workflows
545
711
  - **Plan mode**: AI suggests actions but doesn't execute tools - useful for planning and exploration
546
712
 
547
713
  ### Developer Features
@@ -588,6 +754,5 @@ Nanocoder could benefit from help all across the board. Such as:
588
754
  - Reporting bugs or suggesting features
589
755
  - Marketing and getting the word out
590
756
  - Design and building more great software
591
- - Model cards for our recommendations database
592
757
 
593
758
  All contributions and community participation are welcome!
Binary file
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ai-sdk-client-empty-message.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client-empty-message.spec.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client-empty-message.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,124 @@
1
+ import test from 'ava';
2
+ import { isEmptyAssistantMessage } from './ai-sdk-client.js';
3
+ // Tests for isEmptyAssistantMessage function
4
+ // This function is used to filter out empty assistant messages that would cause API errors:
5
+ // "400 Bad Request: Assistant message must have either content or tool_calls, but not none."
6
+ // ============================================================================
7
+ // Non-assistant messages should never be considered empty
8
+ // ============================================================================
9
+ test('isEmptyAssistantMessage - user message is not empty', t => {
10
+ const message = {
11
+ role: 'user',
12
+ content: '',
13
+ };
14
+ t.false(isEmptyAssistantMessage(message));
15
+ });
16
+ test('isEmptyAssistantMessage - system message is not empty', t => {
17
+ const message = {
18
+ role: 'system',
19
+ content: '',
20
+ };
21
+ t.false(isEmptyAssistantMessage(message));
22
+ });
23
+ test('isEmptyAssistantMessage - tool message is not empty', t => {
24
+ const message = {
25
+ role: 'tool',
26
+ content: '',
27
+ };
28
+ t.false(isEmptyAssistantMessage(message));
29
+ });
30
+ // ============================================================================
31
+ // Empty assistant messages (should be filtered out)
32
+ // ============================================================================
33
+ test('isEmptyAssistantMessage - assistant with empty string content is empty', t => {
34
+ const message = {
35
+ role: 'assistant',
36
+ content: '',
37
+ };
38
+ t.true(isEmptyAssistantMessage(message));
39
+ });
40
+ test('isEmptyAssistantMessage - assistant with whitespace-only content is empty', t => {
41
+ const message = {
42
+ role: 'assistant',
43
+ content: ' \n\t ',
44
+ };
45
+ t.true(isEmptyAssistantMessage(message));
46
+ });
47
+ test('isEmptyAssistantMessage - assistant with empty array content is empty', t => {
48
+ const message = {
49
+ role: 'assistant',
50
+ content: [],
51
+ };
52
+ t.true(isEmptyAssistantMessage(message));
53
+ });
54
+ test('isEmptyAssistantMessage - assistant with empty content and empty toolCalls is empty', t => {
55
+ const message = {
56
+ role: 'assistant',
57
+ content: '',
58
+ toolCalls: [],
59
+ };
60
+ t.true(isEmptyAssistantMessage(message));
61
+ });
62
+ test('isEmptyAssistantMessage - assistant with undefined toolCalls is empty', t => {
63
+ const message = {
64
+ role: 'assistant',
65
+ content: '',
66
+ toolCalls: undefined,
67
+ };
68
+ t.true(isEmptyAssistantMessage(message));
69
+ });
70
+ // ============================================================================
71
+ // Valid assistant messages (should NOT be filtered out)
72
+ // ============================================================================
73
+ test('isEmptyAssistantMessage - assistant with text content is not empty', t => {
74
+ const message = {
75
+ role: 'assistant',
76
+ content: 'Hello, how can I help you?',
77
+ };
78
+ t.false(isEmptyAssistantMessage(message));
79
+ });
80
+ test('isEmptyAssistantMessage - assistant with single character content is not empty', t => {
81
+ const message = {
82
+ role: 'assistant',
83
+ content: 'a',
84
+ };
85
+ t.false(isEmptyAssistantMessage(message));
86
+ });
87
+ test('isEmptyAssistantMessage - assistant with array content is not empty', t => {
88
+ const message = {
89
+ role: 'assistant',
90
+ content: [{ type: 'text', text: 'Hello' }],
91
+ };
92
+ t.false(isEmptyAssistantMessage(message));
93
+ });
94
+ test('isEmptyAssistantMessage - assistant with toolCalls is not empty', t => {
95
+ const message = {
96
+ role: 'assistant',
97
+ content: '',
98
+ toolCalls: [
99
+ { toolName: 'read_file', toolCallId: '123', input: { path: 'test.txt' } },
100
+ ],
101
+ };
102
+ t.false(isEmptyAssistantMessage(message));
103
+ });
104
+ test('isEmptyAssistantMessage - assistant with content and toolCalls is not empty', t => {
105
+ const message = {
106
+ role: 'assistant',
107
+ content: 'Let me read that file for you.',
108
+ toolCalls: [
109
+ { toolName: 'read_file', toolCallId: '123', input: { path: 'test.txt' } },
110
+ ],
111
+ };
112
+ t.false(isEmptyAssistantMessage(message));
113
+ });
114
+ test('isEmptyAssistantMessage - assistant with whitespace content but toolCalls is not empty', t => {
115
+ const message = {
116
+ role: 'assistant',
117
+ content: ' ',
118
+ toolCalls: [
119
+ { toolName: 'read_file', toolCallId: '123', input: { path: 'test.txt' } },
120
+ ],
121
+ };
122
+ t.false(isEmptyAssistantMessage(message));
123
+ });
124
+ //# sourceMappingURL=ai-sdk-client-empty-message.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-client-empty-message.spec.js","sourceRoot":"","sources":["../source/ai-sdk-client-empty-message.spec.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,21 @@
1
- import type { AIProviderConfig, LLMChatResponse, LLMClient, Message, AISDKCoreTool, StreamCallbacks } from './types/index.js';
1
+ import type { AIProviderConfig, AISDKCoreTool, LLMChatResponse, LLMClient, Message, StreamCallbacks } from './types/index.js';
2
+ /**
3
+ * Message type used for testing the empty assistant message filter.
4
+ * This is a simplified version of the AI SDK's internal message format.
5
+ */
6
+ export interface TestableMessage {
7
+ role: 'system' | 'user' | 'assistant' | 'tool';
8
+ content: string | unknown[];
9
+ toolCalls?: unknown[];
10
+ }
11
+ /**
12
+ * Checks if an assistant message is empty (no content and no tool calls).
13
+ * Empty assistant messages cause API errors:
14
+ * "400 Bad Request: Assistant message must have either content or tool_calls, but not none."
15
+ *
16
+ * Exported for testing purposes.
17
+ */
18
+ export declare function isEmptyAssistantMessage(message: TestableMessage): boolean;
2
19
  /**
3
20
  * Parses API errors into user-friendly messages.
4
21
  * Exported for testing purposes.
@@ -24,11 +41,10 @@ export declare class AISDKClient implements LLMClient {
24
41
  getContextSize(): number;
25
42
  getMaxRetries(): number;
26
43
  getAvailableModels(): Promise<string[]>;
27
- chat(messages: Message[], tools: Record<string, AISDKCoreTool>, signal?: AbortSignal): Promise<LLMChatResponse>;
28
44
  /**
29
45
  * Stream chat with real-time token updates
30
46
  */
31
- chatStream(messages: Message[], tools: Record<string, AISDKCoreTool>, callbacks: StreamCallbacks, signal?: AbortSignal): Promise<LLMChatResponse>;
47
+ chat(messages: Message[], tools: Record<string, AISDKCoreTool>, callbacks: StreamCallbacks, signal?: AbortSignal): Promise<LLMChatResponse>;
32
48
  clearContext(): Promise<void>;
33
49
  }
34
50
  //# sourceMappingURL=ai-sdk-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-client.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACX,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,OAAO,EAEP,aAAa,EACb,eAAe,EACf,MAAM,eAAe,CAAC;AAIvB;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAqFpD;AAmDD,qBAAa,WAAY,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,cAAc,EAAE,gBAAgB;IAgC5C;;OAEG;YACW,iBAAiB;IAU/B,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrE,OAAO,CAAC,cAAc;IAgCtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIjC,IAAI,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IAkH3B;;OAEG;IACG,UAAU,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IAqIrB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
1
+ {"version":3,"file":"ai-sdk-client.d.ts","sourceRoot":"","sources":["../source/ai-sdk-client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,OAAO,EACP,eAAe,EAEf,MAAM,eAAe,CAAC;AAevB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAczE;AAgBD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAyJpD;AAmDD,qBAAa,WAAY,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,cAAc,EAAE,gBAAgB;IAwC5C;;OAEG;YACW,iBAAiB;IAU/B,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrE,OAAO,CAAC,cAAc;IAgCtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7B,eAAe,IAAI,MAAM;IAIzB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIvC;;OAEG;IACG,IAAI,CACT,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACpC,SAAS,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC;IA8S3B,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B"}