@nanocollective/nanocoder 1.17.3 → 1.18.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 (224) hide show
  1. package/README.md +2 -5
  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 +18 -2
  8. package/dist/ai-sdk-client.d.ts.map +1 -1
  9. package/dist/ai-sdk-client.js +159 -122
  10. package/dist/ai-sdk-client.js.map +1 -1
  11. package/dist/app/utils/appUtils.js +3 -3
  12. package/dist/app/utils/appUtils.js.map +1 -1
  13. package/dist/app.d.ts.map +1 -1
  14. package/dist/app.js +22 -11
  15. package/dist/app.js.map +1 -1
  16. package/dist/commands/debugging.d.ts +3 -0
  17. package/dist/commands/debugging.d.ts.map +1 -0
  18. package/dist/commands/debugging.js +23 -0
  19. package/dist/commands/debugging.js.map +1 -0
  20. package/dist/commands/index.d.ts +2 -2
  21. package/dist/commands/index.d.ts.map +1 -1
  22. package/dist/commands/index.js +2 -2
  23. package/dist/commands/index.js.map +1 -1
  24. package/dist/commands/model-database.d.ts +8 -0
  25. package/dist/commands/model-database.d.ts.map +1 -0
  26. package/dist/commands/model-database.js +193 -0
  27. package/dist/commands/model-database.js.map +1 -0
  28. package/dist/commands/usage.d.ts.map +1 -1
  29. package/dist/commands/usage.js +1 -1
  30. package/dist/commands/usage.js.map +1 -1
  31. package/dist/components/assistant-message.d.ts.map +1 -1
  32. package/dist/components/assistant-message.js +3 -2
  33. package/dist/components/assistant-message.js.map +1 -1
  34. package/dist/components/status.d.ts +3 -0
  35. package/dist/components/status.d.ts.map +1 -1
  36. package/dist/components/status.js +24 -3
  37. package/dist/components/status.js.map +1 -1
  38. package/dist/components/user-input.d.ts.map +1 -1
  39. package/dist/components/user-input.js +2 -1
  40. package/dist/components/user-input.js.map +1 -1
  41. package/dist/config/preferences.d.ts +2 -2
  42. package/dist/config/preferences.js +5 -5
  43. package/dist/config/preferences.js.map +1 -1
  44. package/dist/context/mode-context.d.ts +12 -0
  45. package/dist/context/mode-context.d.ts.map +1 -0
  46. package/dist/context/mode-context.js +21 -0
  47. package/dist/context/mode-context.js.map +1 -0
  48. package/dist/context/mode-context.spec.d.ts +2 -0
  49. package/dist/context/mode-context.spec.d.ts.map +1 -0
  50. package/dist/context/mode-context.spec.js +61 -0
  51. package/dist/context/mode-context.spec.js.map +1 -0
  52. package/dist/hooks/useAppInitialization.d.ts +4 -2
  53. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  54. package/dist/hooks/useAppInitialization.js +101 -26
  55. package/dist/hooks/useAppInitialization.js.map +1 -1
  56. package/dist/hooks/useAppState.d.ts +7 -5
  57. package/dist/hooks/useAppState.d.ts.map +1 -1
  58. package/dist/hooks/useAppState.js +11 -7
  59. package/dist/hooks/useAppState.js.map +1 -1
  60. package/dist/hooks/useChatHandler.d.ts +2 -2
  61. package/dist/hooks/useChatHandler.d.ts.map +1 -1
  62. package/dist/hooks/useChatHandler.js +186 -111
  63. package/dist/hooks/useChatHandler.js.map +1 -1
  64. package/dist/hooks/useModeHandlers.d.ts +4 -4
  65. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  66. package/dist/hooks/useModeHandlers.js +9 -9
  67. package/dist/hooks/useModeHandlers.js.map +1 -1
  68. package/dist/mcp/mcp-client.d.ts.map +1 -1
  69. package/dist/mcp/mcp-client.js +16 -6
  70. package/dist/mcp/mcp-client.js.map +1 -1
  71. package/dist/message-handler.js +1 -1
  72. package/dist/message-handler.js.map +1 -1
  73. package/dist/model-database/database-engine.d.ts +25 -0
  74. package/dist/model-database/database-engine.d.ts.map +1 -0
  75. package/dist/model-database/database-engine.js +37 -0
  76. package/dist/model-database/database-engine.js.map +1 -0
  77. package/dist/model-database/database-engine.spec.d.ts +2 -0
  78. package/dist/model-database/database-engine.spec.d.ts.map +1 -0
  79. package/dist/model-database/database-engine.spec.js +413 -0
  80. package/dist/model-database/database-engine.spec.js.map +1 -0
  81. package/dist/model-database/model-database.d.ts +30 -0
  82. package/dist/model-database/model-database.d.ts.map +1 -0
  83. package/dist/model-database/model-database.js +82 -0
  84. package/dist/model-database/model-database.js.map +1 -0
  85. package/dist/model-database/model-database.spec.d.ts +2 -0
  86. package/dist/model-database/model-database.spec.d.ts.map +1 -0
  87. package/dist/model-database/model-database.spec.js +322 -0
  88. package/dist/model-database/model-database.spec.js.map +1 -0
  89. package/dist/model-database/model-engine.d.ts +25 -0
  90. package/dist/model-database/model-engine.d.ts.map +1 -0
  91. package/dist/model-database/model-engine.js +49 -0
  92. package/dist/model-database/model-engine.js.map +1 -0
  93. package/dist/model-database/model-engine.spec.d.ts +2 -0
  94. package/dist/model-database/model-engine.spec.d.ts.map +1 -0
  95. package/dist/model-database/model-engine.spec.js +381 -0
  96. package/dist/model-database/model-engine.spec.js.map +1 -0
  97. package/dist/model-database/model-fetcher.d.ts +14 -0
  98. package/dist/model-database/model-fetcher.d.ts.map +1 -0
  99. package/dist/model-database/model-fetcher.js +248 -0
  100. package/dist/model-database/model-fetcher.js.map +1 -0
  101. package/dist/model-database/model-fetcher.spec.d.ts +2 -0
  102. package/dist/model-database/model-fetcher.spec.d.ts.map +1 -0
  103. package/dist/model-database/model-fetcher.spec.js +498 -0
  104. package/dist/model-database/model-fetcher.spec.js.map +1 -0
  105. package/dist/models/models-dev-client.d.ts.map +1 -1
  106. package/dist/models/models-dev-client.js +8 -0
  107. package/dist/models/models-dev-client.js.map +1 -1
  108. package/dist/tool-calling/json-parser.d.ts.map +1 -1
  109. package/dist/tool-calling/json-parser.js +10 -4
  110. package/dist/tool-calling/json-parser.js.map +1 -1
  111. package/dist/tool-calling/tool-parser.d.ts.map +1 -1
  112. package/dist/tool-calling/tool-parser.js +37 -9
  113. package/dist/tool-calling/tool-parser.js.map +1 -1
  114. package/dist/tool-calling/tool-parser.spec.js +79 -1
  115. package/dist/tool-calling/tool-parser.spec.js.map +1 -1
  116. package/dist/tool-calling/xml-parser.d.ts.map +1 -1
  117. package/dist/tool-calling/xml-parser.js +21 -23
  118. package/dist/tool-calling/xml-parser.js.map +1 -1
  119. package/dist/tool-calling/xml-parser.spec.js +23 -3
  120. package/dist/tool-calling/xml-parser.spec.js.map +1 -1
  121. package/dist/tools/create-file.d.ts +24 -2
  122. package/dist/tools/create-file.d.ts.map +1 -1
  123. package/dist/tools/create-file.js +14 -10
  124. package/dist/tools/create-file.js.map +1 -1
  125. package/dist/tools/delete-lines.d.ts +18 -2
  126. package/dist/tools/delete-lines.d.ts.map +1 -1
  127. package/dist/tools/delete-lines.js +14 -9
  128. package/dist/tools/delete-lines.js.map +1 -1
  129. package/dist/tools/execute-bash.d.ts +2 -2
  130. package/dist/tools/execute-bash.d.ts.map +1 -1
  131. package/dist/tools/execute-bash.js +10 -9
  132. package/dist/tools/execute-bash.js.map +1 -1
  133. package/dist/tools/execute-function.spec.d.ts +2 -0
  134. package/dist/tools/execute-function.spec.d.ts.map +1 -0
  135. package/dist/tools/execute-function.spec.js +141 -0
  136. package/dist/tools/execute-function.spec.js.map +1 -0
  137. package/dist/tools/fetch-url.d.ts +16 -2
  138. package/dist/tools/fetch-url.d.ts.map +1 -1
  139. package/dist/tools/fetch-url.js +10 -10
  140. package/dist/tools/fetch-url.js.map +1 -1
  141. package/dist/tools/find-files.d.ts +18 -2
  142. package/dist/tools/find-files.d.ts.map +1 -1
  143. package/dist/tools/find-files.js +7 -5
  144. package/dist/tools/find-files.js.map +1 -1
  145. package/dist/tools/index.d.ts +2 -3
  146. package/dist/tools/index.d.ts.map +1 -1
  147. package/dist/tools/index.js +30 -20
  148. package/dist/tools/index.js.map +1 -1
  149. package/dist/tools/insert-lines.d.ts +18 -2
  150. package/dist/tools/insert-lines.d.ts.map +1 -1
  151. package/dist/tools/insert-lines.js +14 -9
  152. package/dist/tools/insert-lines.js.map +1 -1
  153. package/dist/tools/lsp-get-diagnostics.d.ts +10 -2
  154. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  155. package/dist/tools/lsp-get-diagnostics.js +8 -6
  156. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  157. package/dist/tools/needs-approval.spec.d.ts +2 -0
  158. package/dist/tools/needs-approval.spec.d.ts.map +1 -0
  159. package/dist/tools/needs-approval.spec.js +308 -0
  160. package/dist/tools/needs-approval.spec.js.map +1 -0
  161. package/dist/tools/read-file.d.ts +2 -2
  162. package/dist/tools/read-file.d.ts.map +1 -1
  163. package/dist/tools/read-file.js +10 -12
  164. package/dist/tools/read-file.js.map +1 -1
  165. package/dist/tools/replace-lines.d.ts +19 -2
  166. package/dist/tools/replace-lines.d.ts.map +1 -1
  167. package/dist/tools/replace-lines.js +14 -9
  168. package/dist/tools/replace-lines.js.map +1 -1
  169. package/dist/tools/search-file-contents.d.ts +20 -2
  170. package/dist/tools/search-file-contents.d.ts.map +1 -1
  171. package/dist/tools/search-file-contents.js +11 -8
  172. package/dist/tools/search-file-contents.js.map +1 -1
  173. package/dist/tools/web-search.d.ts +2 -2
  174. package/dist/tools/web-search.d.ts.map +1 -1
  175. package/dist/tools/web-search.js +10 -10
  176. package/dist/tools/web-search.js.map +1 -1
  177. package/dist/types/app.d.ts +1 -1
  178. package/dist/types/app.d.ts.map +1 -1
  179. package/dist/types/config.d.ts +1 -1
  180. package/dist/types/core-connection-status.spec.d.ts +2 -0
  181. package/dist/types/core-connection-status.spec.d.ts.map +1 -0
  182. package/dist/types/core-connection-status.spec.js +52 -0
  183. package/dist/types/core-connection-status.spec.js.map +1 -0
  184. package/dist/types/core.d.ts +33 -28
  185. package/dist/types/core.d.ts.map +1 -1
  186. package/dist/types/core.js.map +1 -1
  187. package/dist/types/system.d.ts +5 -30
  188. package/dist/types/system.d.ts.map +1 -1
  189. package/dist/utils/prompt-processor.d.ts +2 -3
  190. package/dist/utils/prompt-processor.d.ts.map +1 -1
  191. package/dist/utils/prompt-processor.js +2 -50
  192. package/dist/utils/prompt-processor.js.map +1 -1
  193. package/dist/wizard/templates/provider-templates.js +2 -2
  194. package/dist/wizard/templates/provider-templates.js.map +1 -1
  195. package/package.json +6 -5
  196. package/source/app/prompts/main-prompt.md +29 -96
  197. package/dist/commands/recommendations.d.ts +0 -8
  198. package/dist/commands/recommendations.d.ts.map +0 -1
  199. package/dist/commands/recommendations.js +0 -311
  200. package/dist/commands/recommendations.js.map +0 -1
  201. package/dist/commands/streaming.d.ts +0 -3
  202. package/dist/commands/streaming.d.ts.map +0 -1
  203. package/dist/commands/streaming.js +0 -23
  204. package/dist/commands/streaming.js.map +0 -1
  205. package/dist/components/thinking-indicator.d.ts +0 -3
  206. package/dist/components/thinking-indicator.d.ts.map +0 -1
  207. package/dist/components/thinking-indicator.js +0 -69
  208. package/dist/components/thinking-indicator.js.map +0 -1
  209. package/dist/recommendations/model-database.d.ts +0 -8
  210. package/dist/recommendations/model-database.d.ts.map +0 -1
  211. package/dist/recommendations/model-database.js +0 -514
  212. package/dist/recommendations/model-database.js.map +0 -1
  213. package/dist/recommendations/model-engine.d.ts +0 -16
  214. package/dist/recommendations/model-engine.d.ts.map +0 -1
  215. package/dist/recommendations/model-engine.js +0 -185
  216. package/dist/recommendations/model-engine.js.map +0 -1
  217. package/dist/recommendations/recommendation-engine.d.ts +0 -39
  218. package/dist/recommendations/recommendation-engine.d.ts.map +0 -1
  219. package/dist/recommendations/recommendation-engine.js +0 -144
  220. package/dist/recommendations/recommendation-engine.js.map +0 -1
  221. package/dist/system/detector.d.ts +0 -18
  222. package/dist/system/detector.d.ts.map +0 -1
  223. package/dist/system/detector.js +0 -140
  224. package/dist/system/detector.js.map +0 -1
@@ -50,8 +50,9 @@ async function searchFileContents(query, cwd, maxResults, caseSensitive) {
50
50
  // Escape query for shell safety
51
51
  const escapedQuery = query.replace(/"/g, '\\"');
52
52
  // Use grep with basic exclusions for performance
53
+ // -E enables extended regex for patterns like "foo|bar", "func(tion)?", etc.
53
54
  const caseFlag = caseSensitive ? '' : '-i';
54
- const { stdout } = await execAsync(`grep -rn ${caseFlag} --include="*" --exclude-dir={node_modules,.git,dist,build,coverage,.next,.nuxt,out,.cache} "${escapedQuery}" . | head -n ${maxResults * 3}`, { cwd, maxBuffer: 1024 * 1024 });
55
+ const { stdout } = await execAsync(`grep -rn -E ${caseFlag} --include="*" --exclude-dir={node_modules,.git,dist,build,coverage,.next,.nuxt,out,.cache} "${escapedQuery}" . | head -n ${maxResults * 3}`, { cwd, maxBuffer: 1024 * 1024 });
55
56
  const matches = [];
56
57
  const lines = stdout.trim().split('\n').filter(Boolean);
57
58
  for (const line of lines) {
@@ -108,15 +109,14 @@ const executeSearchFileContents = async (args) => {
108
109
  throw new Error(`Content search failed: ${errorMessage}`);
109
110
  }
110
111
  };
111
- // AI SDK tool definition
112
112
  const searchFileContentsCoreTool = tool({
113
- description: 'Search for text or code INSIDE file contents. Returns file paths with line numbers and matching content. Use this to find where specific code, functions, variables, or text appears in the codebase.',
113
+ description: 'Search for text or code INSIDE file contents. Returns file paths with line numbers and matching content. Use this to find where specific code, functions, variables, or text appears in the codebase. Supports extended regex patterns.',
114
114
  inputSchema: jsonSchema({
115
115
  type: 'object',
116
116
  properties: {
117
117
  query: {
118
118
  type: 'string',
119
- description: 'Text or code to search for inside files. Examples: "handleSubmit", "import React", "TODO", "function calculateTotal". Search is case-insensitive by default.',
119
+ description: 'Text or code to search for inside files. Supports extended regex (e.g., "foo|bar" for alternation, "func(tion)?" for optional groups). Examples: "handleSubmit", "import React", "TODO|FIXME", "class\\s+\\w+". Search is case-insensitive by default.',
120
120
  },
121
121
  maxResults: {
122
122
  type: 'number',
@@ -129,6 +129,11 @@ const searchFileContentsCoreTool = tool({
129
129
  },
130
130
  required: ['query'],
131
131
  }),
132
+ // Low risk: read-only operation, never requires approval
133
+ needsApproval: false,
134
+ execute: async (args, _options) => {
135
+ return await executeSearchFileContents(args);
136
+ },
132
137
  });
133
138
  const SearchFileContentsFormatter = React.memo(({ args, result }) => {
134
139
  const themeContext = React.useContext(ThemeContext);
@@ -148,7 +153,7 @@ const SearchFileContentsFormatter = React.memo(({ args, result }) => {
148
153
  const messageContent = (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: colors.tool, children: "\u2692 search_file_contents" }), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Query: " }), _jsx(Text, { color: colors.white, children: args.query })] }), args.caseSensitive && (_jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Case sensitive: " }), _jsx(Text, { color: colors.white, children: "yes" })] })), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Matches: " }), _jsx(Text, { color: colors.white, children: matchCount })] })] }));
149
154
  return _jsx(ToolMessage, { message: messageContent, hideBox: true });
150
155
  });
151
- const formatter = (args, result) => {
156
+ const searchFileContentsFormatter = (args, result) => {
152
157
  if (result && result.startsWith('Error:')) {
153
158
  return _jsx(_Fragment, {});
154
159
  }
@@ -157,8 +162,6 @@ const formatter = (args, result) => {
157
162
  export const searchFileContentsTool = {
158
163
  name: 'search_file_contents',
159
164
  tool: searchFileContentsCoreTool,
160
- handler: executeSearchFileContents,
161
- formatter,
162
- requiresConfirmation: false,
165
+ formatter: searchFileContentsFormatter,
163
166
  };
164
167
  //# sourceMappingURL=search-file-contents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-file-contents.js","sourceRoot":"","sources":["../../source/tools/search-file-contents.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-file-contents.js","sourceRoot":"","sources":["../../source/tools/search-file-contents.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { ToolDefinition } from '../types/index.js';
2
- export declare const webSearchTool: ToolDefinition;
1
+ import type { NanocoderToolExport } from '../types/core.js';
2
+ export declare const webSearchTool: NanocoderToolExport;
3
3
  //# sourceMappingURL=web-search.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../source/tools/web-search.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAyMlD,eAAO,MAAM,aAAa,EAAE,cAO3B,CAAC"}
1
+ {"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../source/tools/web-search.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AA6MtD,eAAO,MAAM,aAAa,EAAE,mBAK3B,CAAC"}
@@ -68,7 +68,6 @@ const executeWebSearch = async (args) => {
68
68
  throw new Error(`Web search failed: ${errorMessage}`);
69
69
  }
70
70
  };
71
- // AI SDK tool definition
72
71
  const webSearchCoreTool = tool({
73
72
  description: 'Search the web for information (scrapes Brave Search, returns markdown)',
74
73
  inputSchema: jsonSchema({
@@ -85,7 +84,11 @@ const webSearchCoreTool = tool({
85
84
  },
86
85
  required: ['query'],
87
86
  }),
88
- // NO execute function - prevents AI SDK auto-execution
87
+ // Low risk: read-only operation, never requires approval
88
+ needsApproval: false,
89
+ execute: async (args, _options) => {
90
+ return await executeWebSearch(args);
91
+ },
89
92
  });
90
93
  // Create a component that will re-render when theme changes
91
94
  const WebSearchFormatter = React.memo(({ args, result }) => {
@@ -107,10 +110,10 @@ const WebSearchFormatter = React.memo(({ args, result }) => {
107
110
  const messageContent = (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: colors.tool, children: "\u2692 web_search" }), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Query: " }), _jsx(Text, { color: colors.white, children: query })] }), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Engine: " }), _jsx(Text, { color: colors.white, children: "Brave Search" })] }), result && (_jsxs(_Fragment, { children: [_jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Results: " }), _jsxs(Text, { color: colors.white, children: [resultCount, " / ", maxResults, " results"] })] }), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Output: " }), _jsxs(Text, { color: colors.white, children: ["~", estimatedTokens, " tokens"] })] })] }))] }));
108
111
  return _jsx(ToolMessage, { message: messageContent, hideBox: true });
109
112
  });
110
- const formatter = (args, result) => {
113
+ const webSearchFormatter = (args, result) => {
111
114
  return _jsx(WebSearchFormatter, { args: args, result: result });
112
115
  };
113
- const validator = (args) => {
116
+ const webSearchValidator = (args) => {
114
117
  const query = args.query?.trim();
115
118
  // Check if query is empty
116
119
  if (!query) {
@@ -128,13 +131,10 @@ const validator = (args) => {
128
131
  }
129
132
  return Promise.resolve({ valid: true });
130
133
  };
131
- // Nanocoder tool definition with AI SDK core tool + custom extensions
132
134
  export const webSearchTool = {
133
135
  name: 'web_search',
134
- tool: webSearchCoreTool, // Native AI SDK tool (no execute)
135
- handler: executeWebSearch,
136
- formatter,
137
- validator,
138
- requiresConfirmation: false,
136
+ tool: webSearchCoreTool,
137
+ formatter: webSearchFormatter,
138
+ validator: webSearchValidator,
139
139
  };
140
140
  //# sourceMappingURL=web-search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../source/tools/web-search.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../source/tools/web-search.tsx"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export interface MessageSubmissionOptions {
12
12
  onEnterModelSelectionMode: () => void;
13
13
  onEnterProviderSelectionMode: () => void;
14
14
  onEnterThemeSelectionMode: () => void;
15
- onEnterRecommendationsMode: () => void;
15
+ onEnterModelDatabaseMode: () => void;
16
16
  onEnterConfigWizardMode: () => void;
17
17
  onShowStatus: () => void;
18
18
  onHandleChatMessage: (message: string) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../source/types/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,wBAAwB;IACxC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,4BAA4B,EAAE,MAAM,IAAI,CAAC;IACzC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,0BAA0B,EAAE,MAAM,IAAI,CAAC;IACvC,uBAAuB,EAAE,MAAM,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,gBAAgB,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAC3C,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,kBAAkB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;CAC/C"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../source/types/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,wBAAwB;IACxC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,4BAA4B,EAAE,MAAM,IAAI,CAAC;IACzC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,wBAAwB,EAAE,MAAM,IAAI,CAAC;IACrC,uBAAuB,EAAE,MAAM,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,gBAAgB,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAC3C,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,kBAAkB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;CAC/C"}
@@ -90,6 +90,6 @@ export interface UserPreferences {
90
90
  lastUpdateCheck?: number;
91
91
  selectedTheme?: ThemePreset;
92
92
  trustedDirectories?: string[];
93
- streamingEnabled?: boolean;
93
+ debuggingEnabled?: boolean;
94
94
  }
95
95
  //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-connection-status.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-connection-status.spec.d.ts","sourceRoot":"","sources":["../../source/types/core-connection-status.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,52 @@
1
+ import test from 'ava';
2
+ test('MCPConnectionStatus type structure', t => {
3
+ const status = {
4
+ name: 'test-server',
5
+ status: 'connected',
6
+ };
7
+ t.is(status.name, 'test-server');
8
+ t.is(status.status, 'connected');
9
+ t.is(status.errorMessage, undefined);
10
+ });
11
+ test('MCPConnectionStatus with error', t => {
12
+ const status = {
13
+ name: 'failed-server',
14
+ status: 'failed',
15
+ errorMessage: 'Connection timeout',
16
+ };
17
+ t.is(status.name, 'failed-server');
18
+ t.is(status.status, 'failed');
19
+ t.is(status.errorMessage, 'Connection timeout');
20
+ });
21
+ test('LSPConnectionStatus type structure', t => {
22
+ const status = {
23
+ name: 'ts-language-server',
24
+ status: 'connected',
25
+ };
26
+ t.is(status.name, 'ts-language-server');
27
+ t.is(status.status, 'connected');
28
+ t.is(status.errorMessage, undefined);
29
+ });
30
+ test('ConnectionStatus union type', t => {
31
+ const validStatuses = ['connected', 'failed', 'pending'];
32
+ validStatuses.forEach(status => {
33
+ t.true(['connected', 'failed', 'pending'].includes(status));
34
+ });
35
+ });
36
+ test('Connection status filtering', t => {
37
+ const mcpStatuses = [
38
+ { name: 'server1', status: 'connected' },
39
+ { name: 'server2', status: 'failed', errorMessage: 'Timeout' },
40
+ { name: 'server3', status: 'pending' },
41
+ ];
42
+ const connected = mcpStatuses.filter(s => s.status === 'connected');
43
+ const failed = mcpStatuses.filter(s => s.status === 'failed');
44
+ const pending = mcpStatuses.filter(s => s.status === 'pending');
45
+ t.is(connected.length, 1);
46
+ t.is(failed.length, 1);
47
+ t.is(pending.length, 1);
48
+ t.is(connected[0].name, 'server1');
49
+ t.is(failed[0].errorMessage, 'Timeout');
50
+ t.is(pending[0].name, 'server3');
51
+ });
52
+ //# sourceMappingURL=core-connection-status.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-connection-status.spec.js","sourceRoot":"","sources":["../../source/types/core-connection-status.spec.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AAOvB,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,EAAE;IAC9C,MAAM,MAAM,GAAwB;QACnC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,WAAW;KACnB,CAAC;IAEF,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,CAAC,CAAC,EAAE;IAC1C,MAAM,MAAM,GAAwB;QACnC,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,QAAQ;QAChB,YAAY,EAAE,oBAAoB;KAClC,CAAC;IAEF,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACnC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,EAAE;IAC9C,MAAM,MAAM,GAAwB;QACnC,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,WAAW;KACnB,CAAC;IAEF,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IACxC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE;IACvC,MAAM,aAAa,GAAuB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE7E,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC9B,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,CAAC,CAAC,EAAE;IACvC,MAAM,WAAW,GAA0B;QAC1C,EAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAC;QACtC,EAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC;QAC5D,EAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAC;KACpC,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAEhE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
@@ -56,48 +56,42 @@ export type ToolValidator = (args: any) => Promise<{
56
56
  error: string;
57
57
  }>;
58
58
  /**
59
- * Unified tool entry interface
59
+ * Nanocoder tool export structure
60
60
  *
61
- * Provides a structured way to manage all tool metadata in one place:
62
- * - name: Tool name for registry and lookup
63
- * - tool: Native AI SDK CoreTool (without execute for human-in-the-loop)
64
- * - handler: Manual execution handler called after user confirmation
61
+ * This is what individual tool files export (e.g., read-file.tsx, execute-bash.tsx).
62
+ * The handler is extracted from tool.execute() in tools/index.ts to avoid duplication.
63
+ *
64
+ * Structure:
65
+ * - name: Tool name as const for type safety
66
+ * - tool: Native AI SDK v6 CoreTool with execute() function
65
67
  * - formatter: Optional React component for rich CLI UI display
66
68
  * - validator: Optional pre-execution validation function
67
69
  */
68
- export interface ToolEntry {
70
+ export interface NanocoderToolExport {
69
71
  name: string;
70
72
  tool: AISDKCoreTool;
71
- handler: ToolHandler;
72
73
  formatter?: ToolFormatter;
73
74
  validator?: ToolValidator;
74
75
  }
75
76
  /**
76
- * Nanocoder's extended tool definition
77
+ * Internal tool entry used by ToolRegistry
77
78
  *
78
- * Uses AI SDK's native CoreTool with Nanocoder-specific metadata:
79
- * - name: Tool name (metadata for registry and lookup)
80
- * - tool: Native AI SDK CoreTool (using tool() and jsonSchema()) WITHOUT execute function
81
- * - handler: Manual execution function called after user confirmation (human-in-the-loop)
82
- * - formatter: React component for rich UI display in terminal
83
- * - validator: Optional pre-execution validation
84
- * - requiresConfirmation: Whether to show confirmation UI (default: true)
79
+ * This is the complete tool entry including the handler extracted from tool.execute().
80
+ * Used internally by ToolRegistry and ToolManager for unified tool management.
85
81
  *
86
- * Note: We keep 'name' as metadata since AI SDK's Tool type doesn't expose it.
82
+ * Structure:
83
+ * - name: Tool name for registry lookup
84
+ * - tool: Native AI SDK CoreTool (for passing to AI SDK)
85
+ * - handler: Extracted execute function (for human-in-the-loop execution)
86
+ * - formatter: Optional React component for rich CLI UI display
87
+ * - validator: Optional pre-execution validation function
87
88
  */
88
- export interface ToolDefinition {
89
+ export interface ToolEntry {
89
90
  name: string;
90
91
  tool: AISDKCoreTool;
91
92
  handler: ToolHandler;
92
- formatter?: (args: any, result?: string) => string | Promise<string> | React.ReactElement | Promise<React.ReactElement>;
93
- requiresConfirmation?: boolean;
94
- validator?: (args: any) => Promise<{
95
- valid: true;
96
- } | {
97
- valid: false;
98
- error: string;
99
- }>;
100
- config?: Tool;
93
+ formatter?: ToolFormatter;
94
+ validator?: ToolValidator;
101
95
  }
102
96
  interface LLMMessage {
103
97
  role: 'assistant';
@@ -112,6 +106,7 @@ export interface LLMChatResponse {
112
106
  export interface StreamCallbacks {
113
107
  onToken?: (token: string) => void;
114
108
  onToolCall?: (toolCall: ToolCall) => void;
109
+ onToolExecuted?: (toolCall: ToolCall, result: string) => void;
115
110
  onFinish?: () => void;
116
111
  }
117
112
  export interface LLMClient {
@@ -119,10 +114,20 @@ export interface LLMClient {
119
114
  setModel(model: string): void;
120
115
  getContextSize(): number;
121
116
  getAvailableModels(): Promise<string[]>;
122
- chat(messages: Message[], tools: Record<string, AISDKCoreTool>, signal?: AbortSignal): Promise<LLMChatResponse>;
123
- chatStream?(messages: Message[], tools: Record<string, AISDKCoreTool>, callbacks: StreamCallbacks, signal?: AbortSignal): Promise<LLMChatResponse>;
117
+ chat(messages: Message[], tools: Record<string, AISDKCoreTool>, callbacks: StreamCallbacks, signal?: AbortSignal): Promise<LLMChatResponse>;
124
118
  clearContext(): Promise<void>;
125
119
  }
126
120
  export type DevelopmentMode = 'normal' | 'auto-accept' | 'plan';
127
121
  export declare const DEVELOPMENT_MODE_LABELS: Record<DevelopmentMode, string>;
122
+ export type ConnectionStatus = 'connected' | 'failed' | 'pending';
123
+ export interface MCPConnectionStatus {
124
+ name: string;
125
+ status: ConnectionStatus;
126
+ errorMessage?: string;
127
+ }
128
+ export interface LSPConnectionStatus {
129
+ name: string;
130
+ status: ConnectionStatus;
131
+ errorMessage?: string;
132
+ }
128
133
  //# sourceMappingURL=core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../source/types/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../source/types/core.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../source/types/core.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,IAAI,EAAE,UAAU,EAAyB,MAAM,IAAI,CAAC;AAE5D,OAAO,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC;AA8K1B,MAAM,CAAC,MAAM,uBAAuB,GAAoC;IACvE,MAAM,EAAE,kBAAkB;IAC1B,aAAa,EAAE,wBAAwB;IACvC,IAAI,EAAE,gBAAgB;CACtB,CAAC"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../source/types/core.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,IAAI,EAAE,UAAU,EAAyB,MAAM,IAAI,CAAC;AAE5D,OAAO,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC;AA0J1B,MAAM,CAAC,MAAM,uBAAuB,GAAoC;IACvE,MAAM,EAAE,kBAAkB;IAC1B,aAAa,EAAE,wBAAwB;IACvC,IAAI,EAAE,gBAAgB;CACtB,CAAC"}
@@ -1,42 +1,17 @@
1
- export interface SystemCapabilities {
2
- cpu: {
3
- cores: number;
4
- architecture: string;
5
- };
6
- memory: {
7
- total: number;
8
- available: number;
9
- };
10
- gpu: {
11
- available: boolean;
12
- type: 'nvidia' | 'amd' | 'apple' | 'intel' | 'none';
13
- memory?: number;
14
- };
15
- platform: NodeJS.Platform;
16
- network: {
17
- connected: boolean;
18
- speed?: 'slow' | 'medium' | 'fast';
19
- };
20
- }
21
1
  export interface ModelEntry {
2
+ id: string;
22
3
  name: string;
23
4
  author: string;
24
5
  size: string;
25
6
  local: boolean;
26
7
  api: boolean;
27
- minMemoryGB?: number;
8
+ contextLength: number;
9
+ created: number;
28
10
  quality: {
29
- agentic: number;
30
- local: number;
31
11
  cost: number;
32
12
  };
33
13
  costType: 'free' | 'paid';
34
- costDetails?: string;
35
- }
36
- export interface ModelRecommendation {
37
- model: ModelEntry;
38
- compatibility: 'perfect' | 'good' | 'marginal' | 'incompatible';
39
- warnings: string[];
40
- recommendation: string;
14
+ costDetails: string;
15
+ hasToolSupport: boolean;
41
16
  }
42
17
  //# sourceMappingURL=system.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../source/types/system.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IAClC,GAAG,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,MAAM,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,GAAG,EAAE;QACJ,SAAS,EAAE,OAAO,CAAC;QACnB,IAAI,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;QACpD,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE;QACR,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;KACnC,CAAC;CACF;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACb,CAAC;IAEF,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,EAAE,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,cAAc,CAAC;IAChE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../source/types/system.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;KACb,CAAC;IACF,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;CACxB"}
@@ -1,9 +1,8 @@
1
- import type { AISDKCoreTool } from '../types/index.js';
2
1
  import type { InputState } from '../types/hooks.js';
3
2
  /**
4
- * Process the main prompt template by injecting dynamic tool documentation and system info
3
+ * Process the main prompt template by injecting system info
5
4
  */
6
- export declare function processPromptTemplate(tools: Record<string, AISDKCoreTool>): string;
5
+ export declare function processPromptTemplate(): string;
7
6
  /**
8
7
  * Assemble the final prompt by replacing all placeholders with their full content
9
8
  * This function is called before sending the prompt to the AI
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-processor.d.ts","sourceRoot":"","sources":["../../source/utils/prompt-processor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAoE/C;;GAEG;AACH,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAClC,MAAM,CAsCR;AAsED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAqD7D"}
1
+ {"version":3,"file":"prompt-processor.d.ts","sourceRoot":"","sources":["../../source/utils/prompt-processor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAoE/C;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAmC9C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAqD7D"}
@@ -60,9 +60,9 @@ function injectSystemInfo(prompt) {
60
60
  return prompt.replace(/<!-- DYNAMIC_SYSTEM_INFO_START -->[\s\S]*?<!-- DYNAMIC_SYSTEM_INFO_END -->/, systemInfo);
61
61
  }
62
62
  /**
63
- * Process the main prompt template by injecting dynamic tool documentation and system info
63
+ * Process the main prompt template by injecting system info
64
64
  */
65
- export function processPromptTemplate(tools) {
65
+ export function processPromptTemplate() {
66
66
  let systemPrompt = 'You are a helpful AI assistant.'; // fallback
67
67
  // Load base prompt
68
68
  if (existsSync(promptPath)) {
@@ -76,8 +76,6 @@ export function processPromptTemplate(tools) {
76
76
  }
77
77
  // Inject system information
78
78
  systemPrompt = injectSystemInfo(systemPrompt);
79
- // Inject dynamic tool documentation
80
- systemPrompt = injectToolDocumentation(systemPrompt, tools);
81
79
  // Check for AGENTS.md in current working directory and append it
82
80
  const agentsPath = join(process.cwd(), 'AGENTS.md');
83
81
  if (existsSync(agentsPath)) {
@@ -92,52 +90,6 @@ export function processPromptTemplate(tools) {
92
90
  }
93
91
  return systemPrompt;
94
92
  }
95
- /**
96
- * Inject dynamic tool documentation into the prompt template
97
- */
98
- function injectToolDocumentation(prompt, tools) {
99
- if (Object.keys(tools).length === 0) {
100
- return prompt.replace(/<!-- DYNAMIC_TOOLS_SECTION_START -->[\s\S]*?<!-- DYNAMIC_TOOLS_SECTION_END -->/, 'No additional tools are currently available.');
101
- }
102
- // Generate tool documentation
103
- const toolDocs = generateToolDocumentation(tools);
104
- // Replace the dynamic section
105
- return prompt.replace(/<!-- DYNAMIC_TOOLS_SECTION_START -->[\s\S]*?<!-- DYNAMIC_TOOLS_SECTION_END -->/, toolDocs);
106
- }
107
- /**
108
- * Generate formatted documentation for all available tools
109
- */
110
- function generateToolDocumentation(tools) {
111
- const sections = ['Available Tools\n'];
112
- // Convert tools record to array of [name, tool] entries
113
- const toolEntries = Object.entries(tools);
114
- // Group tools by category (built-in vs MCP)
115
- const builtInTools = toolEntries.filter(([name]) => !name.includes('__'));
116
- const mcpTools = toolEntries.filter(([name]) => name.includes('__'));
117
- if (builtInTools.length > 0) {
118
- sections.push('Built-in Tools:\n');
119
- builtInTools.forEach(([name, tool]) => {
120
- sections.push(formatToolDocumentation(name, tool));
121
- });
122
- }
123
- if (mcpTools.length > 0) {
124
- sections.push('\nMCP Tools:\n');
125
- mcpTools.forEach(([name, tool]) => {
126
- sections.push(formatToolDocumentation(name, tool));
127
- });
128
- }
129
- // Note: XML format examples omitted since AI SDK tools don't expose parameter schemas
130
- // The model will learn tool usage from function calling or from the system prompt
131
- return sections.join('\n');
132
- }
133
- /**
134
- * Format documentation for a single tool
135
- */
136
- function formatToolDocumentation(name, _tool) {
137
- // AI SDK's Tool type doesn't expose description or parameters directly
138
- // We just list the tool name - the model will learn from usage
139
- return `${name}\n`;
140
- }
141
93
  /**
142
94
  * Assemble the final prompt by replacing all placeholders with their full content
143
95
  * This function is called before sending the prompt to the AI
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-processor.js","sourceRoot":"","sources":["../../source/utils/prompt-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-processor.js","sourceRoot":"","sources":["../../source/utils/prompt-processor.ts"],"names":[],"mappings":"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"}
@@ -232,7 +232,7 @@ export const PROVIDER_TEMPLATES = [
232
232
  {
233
233
  name: 'model',
234
234
  prompt: 'Model name(s) (comma-separated)',
235
- default: 'glm-4.6',
235
+ default: 'glm-4.6, glm-4.5-air',
236
236
  required: true,
237
237
  },
238
238
  ],
@@ -265,7 +265,7 @@ export const PROVIDER_TEMPLATES = [
265
265
  {
266
266
  name: 'model',
267
267
  prompt: 'Model name(s) (comma-separated)',
268
- default: 'glm-4.6',
268
+ default: 'glm-4.6, glm-4.5-air',
269
269
  required: true,
270
270
  },
271
271
  ],