@xiuper/cli 0.0.1

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 (218) hide show
  1. package/README.md +180 -0
  2. package/dist/jsMain/typescript/agents/LLMService.d.ts +40 -0
  3. package/dist/jsMain/typescript/agents/LLMService.d.ts.map +1 -0
  4. package/dist/jsMain/typescript/agents/LLMService.js +156 -0
  5. package/dist/jsMain/typescript/agents/LLMService.js.map +1 -0
  6. package/dist/jsMain/typescript/agents/ServerAgentClient.d.ts +103 -0
  7. package/dist/jsMain/typescript/agents/ServerAgentClient.d.ts.map +1 -0
  8. package/dist/jsMain/typescript/agents/ServerAgentClient.js +142 -0
  9. package/dist/jsMain/typescript/agents/ServerAgentClient.js.map +1 -0
  10. package/dist/jsMain/typescript/agents/render/BaseRenderer.d.ts +87 -0
  11. package/dist/jsMain/typescript/agents/render/BaseRenderer.d.ts.map +1 -0
  12. package/dist/jsMain/typescript/agents/render/BaseRenderer.js +128 -0
  13. package/dist/jsMain/typescript/agents/render/BaseRenderer.js.map +1 -0
  14. package/dist/jsMain/typescript/agents/render/CliRenderer.d.ts +51 -0
  15. package/dist/jsMain/typescript/agents/render/CliRenderer.d.ts.map +1 -0
  16. package/dist/jsMain/typescript/agents/render/CliRenderer.js +564 -0
  17. package/dist/jsMain/typescript/agents/render/CliRenderer.js.map +1 -0
  18. package/dist/jsMain/typescript/agents/render/ServerRenderer.d.ts +55 -0
  19. package/dist/jsMain/typescript/agents/render/ServerRenderer.d.ts.map +1 -0
  20. package/dist/jsMain/typescript/agents/render/ServerRenderer.js +503 -0
  21. package/dist/jsMain/typescript/agents/render/ServerRenderer.js.map +1 -0
  22. package/dist/jsMain/typescript/agents/render/TuiRenderer.d.ts +104 -0
  23. package/dist/jsMain/typescript/agents/render/TuiRenderer.d.ts.map +1 -0
  24. package/dist/jsMain/typescript/agents/render/TuiRenderer.js +279 -0
  25. package/dist/jsMain/typescript/agents/render/TuiRenderer.js.map +1 -0
  26. package/dist/jsMain/typescript/config/ConfigManager.d.ts +146 -0
  27. package/dist/jsMain/typescript/config/ConfigManager.d.ts.map +1 -0
  28. package/dist/jsMain/typescript/config/ConfigManager.js +257 -0
  29. package/dist/jsMain/typescript/config/ConfigManager.js.map +1 -0
  30. package/dist/jsMain/typescript/constants/asciiArt.d.ts +9 -0
  31. package/dist/jsMain/typescript/constants/asciiArt.d.ts.map +1 -0
  32. package/dist/jsMain/typescript/constants/asciiArt.js +47 -0
  33. package/dist/jsMain/typescript/constants/asciiArt.js.map +1 -0
  34. package/dist/jsMain/typescript/design-system/colors.d.ts +492 -0
  35. package/dist/jsMain/typescript/design-system/colors.d.ts.map +1 -0
  36. package/dist/jsMain/typescript/design-system/colors.js +333 -0
  37. package/dist/jsMain/typescript/design-system/colors.js.map +1 -0
  38. package/dist/jsMain/typescript/design-system/index.d.ts +31 -0
  39. package/dist/jsMain/typescript/design-system/index.d.ts.map +1 -0
  40. package/dist/jsMain/typescript/design-system/index.js +195 -0
  41. package/dist/jsMain/typescript/design-system/index.js.map +1 -0
  42. package/dist/jsMain/typescript/design-system/theme-helpers.d.ts +161 -0
  43. package/dist/jsMain/typescript/design-system/theme-helpers.d.ts.map +1 -0
  44. package/dist/jsMain/typescript/design-system/theme-helpers.js +153 -0
  45. package/dist/jsMain/typescript/design-system/theme-helpers.js.map +1 -0
  46. package/dist/jsMain/typescript/i18n/index.d.ts +37 -0
  47. package/dist/jsMain/typescript/i18n/index.d.ts.map +1 -0
  48. package/dist/jsMain/typescript/i18n/index.js +139 -0
  49. package/dist/jsMain/typescript/i18n/index.js.map +1 -0
  50. package/dist/jsMain/typescript/i18n/locales/en.d.ts +6 -0
  51. package/dist/jsMain/typescript/i18n/locales/en.d.ts.map +1 -0
  52. package/dist/jsMain/typescript/i18n/locales/en.js +120 -0
  53. package/dist/jsMain/typescript/i18n/locales/en.js.map +1 -0
  54. package/dist/jsMain/typescript/i18n/locales/zh.d.ts +6 -0
  55. package/dist/jsMain/typescript/i18n/locales/zh.d.ts.map +1 -0
  56. package/dist/jsMain/typescript/i18n/locales/zh.js +120 -0
  57. package/dist/jsMain/typescript/i18n/locales/zh.js.map +1 -0
  58. package/dist/jsMain/typescript/i18n/types.d.ts +124 -0
  59. package/dist/jsMain/typescript/i18n/types.d.ts.map +1 -0
  60. package/dist/jsMain/typescript/i18n/types.js +7 -0
  61. package/dist/jsMain/typescript/i18n/types.js.map +1 -0
  62. package/dist/jsMain/typescript/index.d.ts +9 -0
  63. package/dist/jsMain/typescript/index.d.ts.map +1 -0
  64. package/dist/jsMain/typescript/index.js +380 -0
  65. package/dist/jsMain/typescript/index.js.map +1 -0
  66. package/dist/jsMain/typescript/modes/AgentMode.d.ts +33 -0
  67. package/dist/jsMain/typescript/modes/AgentMode.d.ts.map +1 -0
  68. package/dist/jsMain/typescript/modes/AgentMode.js +243 -0
  69. package/dist/jsMain/typescript/modes/AgentMode.js.map +1 -0
  70. package/dist/jsMain/typescript/modes/ChatMode.d.ts +30 -0
  71. package/dist/jsMain/typescript/modes/ChatMode.d.ts.map +1 -0
  72. package/dist/jsMain/typescript/modes/ChatMode.js +260 -0
  73. package/dist/jsMain/typescript/modes/ChatMode.js.map +1 -0
  74. package/dist/jsMain/typescript/modes/DocumentMode.d.ts +26 -0
  75. package/dist/jsMain/typescript/modes/DocumentMode.d.ts.map +1 -0
  76. package/dist/jsMain/typescript/modes/DocumentMode.js +217 -0
  77. package/dist/jsMain/typescript/modes/DocumentMode.js.map +1 -0
  78. package/dist/jsMain/typescript/modes/Mode.d.ts +72 -0
  79. package/dist/jsMain/typescript/modes/Mode.d.ts.map +1 -0
  80. package/dist/jsMain/typescript/modes/Mode.js +7 -0
  81. package/dist/jsMain/typescript/modes/Mode.js.map +1 -0
  82. package/dist/jsMain/typescript/modes/ModeManager.d.ts +76 -0
  83. package/dist/jsMain/typescript/modes/ModeManager.d.ts.map +1 -0
  84. package/dist/jsMain/typescript/modes/ModeManager.js +156 -0
  85. package/dist/jsMain/typescript/modes/ModeManager.js.map +1 -0
  86. package/dist/jsMain/typescript/modes/ReviewMode.d.ts +52 -0
  87. package/dist/jsMain/typescript/modes/ReviewMode.d.ts.map +1 -0
  88. package/dist/jsMain/typescript/modes/ReviewMode.js +435 -0
  89. package/dist/jsMain/typescript/modes/ReviewMode.js.map +1 -0
  90. package/dist/jsMain/typescript/modes/index.d.ts +9 -0
  91. package/dist/jsMain/typescript/modes/index.d.ts.map +1 -0
  92. package/dist/jsMain/typescript/modes/index.js +7 -0
  93. package/dist/jsMain/typescript/modes/index.js.map +1 -0
  94. package/dist/jsMain/typescript/processors/AtCommandProcessor.d.ts +34 -0
  95. package/dist/jsMain/typescript/processors/AtCommandProcessor.d.ts.map +1 -0
  96. package/dist/jsMain/typescript/processors/AtCommandProcessor.js +118 -0
  97. package/dist/jsMain/typescript/processors/AtCommandProcessor.js.map +1 -0
  98. package/dist/jsMain/typescript/processors/InputRouter.d.ts +84 -0
  99. package/dist/jsMain/typescript/processors/InputRouter.d.ts.map +1 -0
  100. package/dist/jsMain/typescript/processors/InputRouter.js +78 -0
  101. package/dist/jsMain/typescript/processors/InputRouter.js.map +1 -0
  102. package/dist/jsMain/typescript/processors/ModeCommandProcessor.d.ts +25 -0
  103. package/dist/jsMain/typescript/processors/ModeCommandProcessor.d.ts.map +1 -0
  104. package/dist/jsMain/typescript/processors/ModeCommandProcessor.js +127 -0
  105. package/dist/jsMain/typescript/processors/ModeCommandProcessor.js.map +1 -0
  106. package/dist/jsMain/typescript/processors/SlashCommandProcessor.d.ts +68 -0
  107. package/dist/jsMain/typescript/processors/SlashCommandProcessor.d.ts.map +1 -0
  108. package/dist/jsMain/typescript/processors/SlashCommandProcessor.js +391 -0
  109. package/dist/jsMain/typescript/processors/SlashCommandProcessor.js.map +1 -0
  110. package/dist/jsMain/typescript/processors/VariableProcessor.d.ts +44 -0
  111. package/dist/jsMain/typescript/processors/VariableProcessor.d.ts.map +1 -0
  112. package/dist/jsMain/typescript/processors/VariableProcessor.js +105 -0
  113. package/dist/jsMain/typescript/processors/VariableProcessor.js.map +1 -0
  114. package/dist/jsMain/typescript/ui/App.d.ts +16 -0
  115. package/dist/jsMain/typescript/ui/App.d.ts.map +1 -0
  116. package/dist/jsMain/typescript/ui/App.js +208 -0
  117. package/dist/jsMain/typescript/ui/App.js.map +1 -0
  118. package/dist/jsMain/typescript/ui/Banner.d.ts +6 -0
  119. package/dist/jsMain/typescript/ui/Banner.d.ts.map +1 -0
  120. package/dist/jsMain/typescript/ui/Banner.js +13 -0
  121. package/dist/jsMain/typescript/ui/Banner.js.map +1 -0
  122. package/dist/jsMain/typescript/ui/ChatInterface.d.ts +19 -0
  123. package/dist/jsMain/typescript/ui/ChatInterface.d.ts.map +1 -0
  124. package/dist/jsMain/typescript/ui/ChatInterface.js +223 -0
  125. package/dist/jsMain/typescript/ui/ChatInterface.js.map +1 -0
  126. package/dist/jsMain/typescript/ui/CommandSuggestions.d.ts +21 -0
  127. package/dist/jsMain/typescript/ui/CommandSuggestions.d.ts.map +1 -0
  128. package/dist/jsMain/typescript/ui/CommandSuggestions.js +43 -0
  129. package/dist/jsMain/typescript/ui/CommandSuggestions.js.map +1 -0
  130. package/dist/jsMain/typescript/ui/LanguageSwitcher.d.ts +11 -0
  131. package/dist/jsMain/typescript/ui/LanguageSwitcher.d.ts.map +1 -0
  132. package/dist/jsMain/typescript/ui/LanguageSwitcher.js +37 -0
  133. package/dist/jsMain/typescript/ui/LanguageSwitcher.js.map +1 -0
  134. package/dist/jsMain/typescript/ui/MessageRenderer.d.ts +70 -0
  135. package/dist/jsMain/typescript/ui/MessageRenderer.d.ts.map +1 -0
  136. package/dist/jsMain/typescript/ui/MessageRenderer.js +255 -0
  137. package/dist/jsMain/typescript/ui/MessageRenderer.js.map +1 -0
  138. package/dist/jsMain/typescript/ui/ModelConfigForm.d.ts +19 -0
  139. package/dist/jsMain/typescript/ui/ModelConfigForm.d.ts.map +1 -0
  140. package/dist/jsMain/typescript/ui/ModelConfigForm.js +257 -0
  141. package/dist/jsMain/typescript/ui/ModelConfigForm.js.map +1 -0
  142. package/dist/jsMain/typescript/ui/WelcomeScreen.d.ts +12 -0
  143. package/dist/jsMain/typescript/ui/WelcomeScreen.d.ts.map +1 -0
  144. package/dist/jsMain/typescript/ui/WelcomeScreen.js +93 -0
  145. package/dist/jsMain/typescript/ui/WelcomeScreen.js.map +1 -0
  146. package/dist/jsMain/typescript/utils/commandUtils.d.ts +64 -0
  147. package/dist/jsMain/typescript/utils/commandUtils.d.ts.map +1 -0
  148. package/dist/jsMain/typescript/utils/commandUtils.js +195 -0
  149. package/dist/jsMain/typescript/utils/commandUtils.js.map +1 -0
  150. package/dist/jsMain/typescript/utils/domainDictUtils.d.ts +53 -0
  151. package/dist/jsMain/typescript/utils/domainDictUtils.d.ts.map +1 -0
  152. package/dist/jsMain/typescript/utils/domainDictUtils.js +130 -0
  153. package/dist/jsMain/typescript/utils/domainDictUtils.js.map +1 -0
  154. package/dist/jsMain/typescript/utils/markdownSplitter.d.ts +23 -0
  155. package/dist/jsMain/typescript/utils/markdownSplitter.d.ts.map +1 -0
  156. package/dist/jsMain/typescript/utils/markdownSplitter.js +90 -0
  157. package/dist/jsMain/typescript/utils/markdownSplitter.js.map +1 -0
  158. package/dist/jsMain/typescript/utils/outputFormatter.d.ts +70 -0
  159. package/dist/jsMain/typescript/utils/outputFormatter.d.ts.map +1 -0
  160. package/dist/jsMain/typescript/utils/outputFormatter.js +140 -0
  161. package/dist/jsMain/typescript/utils/outputFormatter.js.map +1 -0
  162. package/dist/jsMain/typescript/utils/renderUtils.d.ts +17 -0
  163. package/dist/jsMain/typescript/utils/renderUtils.d.ts.map +1 -0
  164. package/dist/jsMain/typescript/utils/renderUtils.js +128 -0
  165. package/dist/jsMain/typescript/utils/renderUtils.js.map +1 -0
  166. package/dist/test/framework/analyzers/CodeChangeAnalyzer.d.ts +87 -0
  167. package/dist/test/framework/analyzers/CodeChangeAnalyzer.d.ts.map +1 -0
  168. package/dist/test/framework/analyzers/CodeChangeAnalyzer.js +412 -0
  169. package/dist/test/framework/analyzers/CodeChangeAnalyzer.js.map +1 -0
  170. package/dist/test/framework/analyzers/PromptAnalyzer.d.ts +46 -0
  171. package/dist/test/framework/analyzers/PromptAnalyzer.d.ts.map +1 -0
  172. package/dist/test/framework/analyzers/PromptAnalyzer.js +185 -0
  173. package/dist/test/framework/analyzers/PromptAnalyzer.js.map +1 -0
  174. package/dist/test/framework/analyzers/ToolCallAnalyzer.d.ts +45 -0
  175. package/dist/test/framework/analyzers/ToolCallAnalyzer.d.ts.map +1 -0
  176. package/dist/test/framework/analyzers/ToolCallAnalyzer.js +215 -0
  177. package/dist/test/framework/analyzers/ToolCallAnalyzer.js.map +1 -0
  178. package/dist/test/framework/cli.d.ts +8 -0
  179. package/dist/test/framework/cli.d.ts.map +1 -0
  180. package/dist/test/framework/cli.js +175 -0
  181. package/dist/test/framework/cli.js.map +1 -0
  182. package/dist/test/framework/core/TestCase.d.ts +100 -0
  183. package/dist/test/framework/core/TestCase.d.ts.map +1 -0
  184. package/dist/test/framework/core/TestCase.js +101 -0
  185. package/dist/test/framework/core/TestCase.js.map +1 -0
  186. package/dist/test/framework/core/TestEngine.d.ts +89 -0
  187. package/dist/test/framework/core/TestEngine.d.ts.map +1 -0
  188. package/dist/test/framework/core/TestEngine.js +552 -0
  189. package/dist/test/framework/core/TestEngine.js.map +1 -0
  190. package/dist/test/framework/core/TestResult.d.ts +143 -0
  191. package/dist/test/framework/core/TestResult.d.ts.map +1 -0
  192. package/dist/test/framework/core/TestResult.js +76 -0
  193. package/dist/test/framework/core/TestResult.js.map +1 -0
  194. package/dist/test/framework/examples/BasicRobustnessTest.d.ts +19 -0
  195. package/dist/test/framework/examples/BasicRobustnessTest.d.ts.map +1 -0
  196. package/dist/test/framework/examples/BasicRobustnessTest.js +116 -0
  197. package/dist/test/framework/examples/BasicRobustnessTest.js.map +1 -0
  198. package/dist/test/framework/index.d.ts +30 -0
  199. package/dist/test/framework/index.d.ts.map +1 -0
  200. package/dist/test/framework/index.js +38 -0
  201. package/dist/test/framework/index.js.map +1 -0
  202. package/dist/test/framework/loaders/JsonScenarioLoader.d.ts +99 -0
  203. package/dist/test/framework/loaders/JsonScenarioLoader.d.ts.map +1 -0
  204. package/dist/test/framework/loaders/JsonScenarioLoader.js +197 -0
  205. package/dist/test/framework/loaders/JsonScenarioLoader.js.map +1 -0
  206. package/dist/test/framework/reporters/ConsoleReporter.d.ts +25 -0
  207. package/dist/test/framework/reporters/ConsoleReporter.d.ts.map +1 -0
  208. package/dist/test/framework/reporters/ConsoleReporter.js +196 -0
  209. package/dist/test/framework/reporters/ConsoleReporter.js.map +1 -0
  210. package/dist/test/framework/scenarios/ScenarioBuilder.d.ts +62 -0
  211. package/dist/test/framework/scenarios/ScenarioBuilder.d.ts.map +1 -0
  212. package/dist/test/framework/scenarios/ScenarioBuilder.js +285 -0
  213. package/dist/test/framework/scenarios/ScenarioBuilder.js.map +1 -0
  214. package/dist/test/framework/validate-framework.d.ts +9 -0
  215. package/dist/test/framework/validate-framework.d.ts.map +1 -0
  216. package/dist/test/framework/validate-framework.js +187 -0
  217. package/dist/test/framework/validate-framework.js.map +1 -0
  218. package/package.json +84 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jsMain/typescript/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Agent Mode - AI 代理模式
3
+ *
4
+ * 集成 CodingAgent 逻辑,类似于 CLI 中的 runCodingAgent
5
+ * 用户输入被视为开发任务,由 AI 代理自主完成
6
+ */
7
+ import type { Mode, ModeContext, ModeResult, ModeFactory } from './Mode.js';
8
+ /**
9
+ * Agent 模式实现
10
+ */
11
+ export declare class AgentMode implements Mode {
12
+ readonly name = "agent";
13
+ readonly displayName = "AI Agent";
14
+ readonly description = "Autonomous coding agent that completes development tasks";
15
+ readonly icon = "\uD83E\uDD16";
16
+ private agent;
17
+ private renderer;
18
+ private router;
19
+ private isExecuting;
20
+ private projectPath;
21
+ initialize(context: ModeContext): Promise<void>;
22
+ handleInput(input: string, context: ModeContext): Promise<ModeResult>;
23
+ cleanup(): Promise<void>;
24
+ getStatus(): string;
25
+ }
26
+ /**
27
+ * Agent 模式工厂
28
+ */
29
+ export declare class AgentModeFactory implements ModeFactory {
30
+ readonly type = "agent";
31
+ createMode(): Mode;
32
+ }
33
+ //# sourceMappingURL=AgentMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentMode.d.ts","sourceRoot":"","sources":["../../../../src/jsMain/typescript/modes/AgentMode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAa5E;;GAEG;AACH,qBAAa,SAAU,YAAW,IAAI;IACpC,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,WAAW,cAAc;IAClC,QAAQ,CAAC,WAAW,8DAA8D;IAClF,QAAQ,CAAC,IAAI,kBAAQ;IAErB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAiB;IAE9B,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyF/C,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA6JrE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B,SAAS,IAAI,MAAM;CAMpB;AAED;;GAEG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,QAAQ,CAAC,IAAI,WAAW;IAExB,UAAU,IAAI,IAAI;CAGnB"}
@@ -0,0 +1,243 @@
1
+ /**
2
+ * Agent Mode - AI 代理模式
3
+ *
4
+ * 集成 CodingAgent 逻辑,类似于 CLI 中的 runCodingAgent
5
+ * 用户输入被视为开发任务,由 AI 代理自主完成
6
+ */
7
+ import { ConfigManager } from '../config/ConfigManager.js';
8
+ import { TuiRenderer } from '../agents/render/TuiRenderer.js';
9
+ import { InputRouter } from '../processors/InputRouter.js';
10
+ import { SlashCommandProcessor } from '../processors/SlashCommandProcessor.js';
11
+ import { compileDevIns } from '../utils/commandUtils.js';
12
+ import mppCore from '@xiuper/mpp-core';
13
+ import * as path from 'path';
14
+ import * as fs from 'fs';
15
+ const { cc: KotlinCC } = mppCore;
16
+ /**
17
+ * Agent 模式实现
18
+ */
19
+ export class AgentMode {
20
+ name = 'agent';
21
+ displayName = 'AI Agent';
22
+ description = 'Autonomous coding agent that completes development tasks';
23
+ icon = '🤖';
24
+ agent = null;
25
+ renderer = null;
26
+ router = null;
27
+ isExecuting = false;
28
+ projectPath = process.cwd();
29
+ async initialize(context) {
30
+ context.logger.info('[AgentMode] Initializing agent mode...');
31
+ try {
32
+ // 设置项目路径
33
+ if (context.projectPath) {
34
+ this.projectPath = path.resolve(context.projectPath);
35
+ }
36
+ // 检查项目路径是否存在
37
+ if (!fs.existsSync(this.projectPath)) {
38
+ throw new Error(`Project path does not exist: ${this.projectPath}`);
39
+ }
40
+ // 加载配置
41
+ const config = await ConfigManager.load();
42
+ const activeConfig = config.getActiveConfig();
43
+ if (!activeConfig) {
44
+ throw new Error('No active LLM configuration found. Please configure your LLM provider first.');
45
+ }
46
+ // 创建 TUI 渲染器
47
+ this.renderer = new TuiRenderer(context);
48
+ // 初始化输入路由器
49
+ this.router = new InputRouter();
50
+ // 注册斜杠命令处理器(高优先级)
51
+ const slashProcessor = new SlashCommandProcessor();
52
+ this.router.register(slashProcessor, 100);
53
+ // 创建 LLM 服务
54
+ const llmService = new KotlinCC.unitmesh.llm.JsKoogLLMService(new KotlinCC.unitmesh.llm.JsModelConfig(activeConfig.provider, activeConfig.model, activeConfig.apiKey || '', activeConfig.temperature || 0.7, activeConfig.maxTokens || 8192, activeConfig.baseUrl || ''));
55
+ // 加载 MCP 服务器配置
56
+ const mcpServers = config.getMcpServers();
57
+ const enabledMcpServers = {};
58
+ for (const [name, serverConfig] of Object.entries(mcpServers)) {
59
+ if (serverConfig.enabled) {
60
+ enabledMcpServers[name] = {
61
+ command: serverConfig.command,
62
+ args: serverConfig.args || [],
63
+ env: serverConfig.env || {}
64
+ };
65
+ }
66
+ }
67
+ // 加载工具配置 - 使用默认配置
68
+ const toolConfig = null; // ConfigManager 可能没有 getToolConfig 方法
69
+ // 创建 CodingAgent
70
+ this.agent = new KotlinCC.unitmesh.agent.JsCodingAgent(this.projectPath, llmService, 10, // maxIterations
71
+ this.renderer, Object.keys(enabledMcpServers).length > 0 ? enabledMcpServers : null, toolConfig);
72
+ context.logger.info('[AgentMode] Agent mode initialized successfully');
73
+ // 显示欢迎消息
74
+ const welcomeMessage = {
75
+ role: 'system',
76
+ content: `🤖 **AI Agent Mode Activated**\n\nProject: \`${this.projectPath}\`\n\nI'm ready to help you with development tasks. Just describe what you want me to do, and I'll work autonomously to complete it.\n\nType \`/chat\` to switch to chat mode, or \`/help\` for more commands.`,
77
+ timestamp: Date.now(),
78
+ showPrefix: true
79
+ };
80
+ context.addMessage(welcomeMessage);
81
+ }
82
+ catch (error) {
83
+ context.logger.error('[AgentMode] Failed to initialize agent mode:', error);
84
+ throw error;
85
+ }
86
+ }
87
+ async handleInput(input, context) {
88
+ if (!this.agent || !this.renderer || !this.router) {
89
+ return {
90
+ success: false,
91
+ error: 'Agent not initialized'
92
+ };
93
+ }
94
+ const trimmedInput = input.trim();
95
+ if (!trimmedInput) {
96
+ return {
97
+ success: false,
98
+ error: 'Please provide a task description'
99
+ };
100
+ }
101
+ try {
102
+ // 首先尝试通过路由器处理输入(处理斜杠命令等)
103
+ const routerContext = {
104
+ clearMessages: context.clearMessages,
105
+ logger: context.logger,
106
+ addMessage: (role, content) => {
107
+ const message = {
108
+ role: role,
109
+ content,
110
+ timestamp: Date.now(),
111
+ showPrefix: true
112
+ };
113
+ context.addMessage(message);
114
+ },
115
+ setLoading: (loading) => {
116
+ // TUI 模式下可以忽略加载状态
117
+ },
118
+ readFile: async (path) => {
119
+ const compileResult = await compileDevIns(`/file:${path}`);
120
+ if (compileResult?.success) {
121
+ return compileResult.output;
122
+ }
123
+ throw new Error(compileResult?.errorMessage || 'Failed to read file');
124
+ }
125
+ };
126
+ const routeResult = await this.router.route(trimmedInput, routerContext);
127
+ // 处理路由结果
128
+ switch (routeResult.type) {
129
+ case 'handled':
130
+ // 斜杠命令已处理
131
+ if (routeResult.output) {
132
+ const outputMessage = {
133
+ role: 'system',
134
+ content: routeResult.output,
135
+ timestamp: Date.now(),
136
+ showPrefix: true
137
+ };
138
+ context.addMessage(outputMessage);
139
+ }
140
+ return { success: true };
141
+ case 'error':
142
+ const errorMessage = {
143
+ role: 'system',
144
+ content: `❌ ${routeResult.message}`,
145
+ timestamp: Date.now(),
146
+ showPrefix: true
147
+ };
148
+ context.addMessage(errorMessage);
149
+ return { success: false, error: routeResult.message };
150
+ case 'compile':
151
+ // DevIns 编译命令,委托给 Agent 处理
152
+ break;
153
+ case 'llm-query':
154
+ // LLM 查询,委托给 Agent 处理
155
+ break;
156
+ case 'skip':
157
+ // 继续处理
158
+ break;
159
+ }
160
+ // 如果路由器没有处理,或者返回了需要 Agent 处理的结果,则使用 Agent
161
+ if (this.isExecuting) {
162
+ return {
163
+ success: false,
164
+ error: 'Agent is already executing a task. Please wait for completion.'
165
+ };
166
+ }
167
+ this.isExecuting = true;
168
+ context.logger.info(`[AgentMode] Executing task: ${trimmedInput}`);
169
+ // 添加用户消息
170
+ const userMessage = {
171
+ role: 'user',
172
+ content: trimmedInput,
173
+ timestamp: Date.now(),
174
+ showPrefix: true
175
+ };
176
+ context.addMessage(userMessage);
177
+ // 创建任务对象
178
+ const taskObj = new KotlinCC.unitmesh.agent.JsAgentTask(trimmedInput, this.projectPath);
179
+ // 执行任务
180
+ const result = await this.agent.executeTask(taskObj);
181
+ // 添加完成消息
182
+ const completionMessage = {
183
+ role: 'system',
184
+ content: result.success
185
+ ? '✅ **Task completed successfully**'
186
+ : '❌ **Task failed**',
187
+ timestamp: Date.now(),
188
+ showPrefix: true
189
+ };
190
+ context.addMessage(completionMessage);
191
+ if (result.message) {
192
+ const resultMessage = {
193
+ role: 'assistant',
194
+ content: result.message,
195
+ timestamp: Date.now(),
196
+ showPrefix: true
197
+ };
198
+ context.addMessage(resultMessage);
199
+ }
200
+ this.isExecuting = false;
201
+ return {
202
+ success: result.success,
203
+ message: result.message
204
+ };
205
+ }
206
+ catch (error) {
207
+ this.isExecuting = false;
208
+ context.logger.error('[AgentMode] Task execution failed:', error);
209
+ const errorMessage = {
210
+ role: 'system',
211
+ content: `❌ **Task execution failed**: ${error instanceof Error ? error.message : String(error)}`,
212
+ timestamp: Date.now(),
213
+ showPrefix: true
214
+ };
215
+ context.addMessage(errorMessage);
216
+ return {
217
+ success: false,
218
+ error: error instanceof Error ? error.message : String(error)
219
+ };
220
+ }
221
+ }
222
+ async cleanup() {
223
+ this.isExecuting = false;
224
+ this.agent = null;
225
+ this.renderer = null;
226
+ }
227
+ getStatus() {
228
+ if (this.isExecuting) {
229
+ return 'Executing task...';
230
+ }
231
+ return `Ready (Project: ${path.basename(this.projectPath)})`;
232
+ }
233
+ }
234
+ /**
235
+ * Agent 模式工厂
236
+ */
237
+ export class AgentModeFactory {
238
+ type = 'agent';
239
+ createMode() {
240
+ return new AgentMode();
241
+ }
242
+ }
243
+ //# sourceMappingURL=AgentMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentMode.js","sourceRoot":"","sources":["../../../../src/jsMain/typescript/modes/AgentMode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Chat Mode - 聊天模式
3
+ *
4
+ * 封装现有的聊天逻辑,支持与 LLM 的对话交互
5
+ */
6
+ import type { Mode, ModeContext, ModeResult, ModeFactory } from './Mode.js';
7
+ /**
8
+ * Chat 模式实现
9
+ */
10
+ export declare class ChatMode implements Mode {
11
+ readonly name = "chat";
12
+ readonly displayName = "Chat";
13
+ readonly description = "Interactive chat with AI assistant";
14
+ readonly icon = "\uD83D\uDCAC";
15
+ private llmService;
16
+ private router;
17
+ initialize(context: ModeContext): Promise<void>;
18
+ handleInput(input: string, context: ModeContext): Promise<ModeResult>;
19
+ private handleLLMQuery;
20
+ cleanup(): Promise<void>;
21
+ getStatus(): string;
22
+ }
23
+ /**
24
+ * Chat 模式工厂
25
+ */
26
+ export declare class ChatModeFactory implements ModeFactory {
27
+ readonly type = "chat";
28
+ createMode(): Mode;
29
+ }
30
+ //# sourceMappingURL=ChatMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatMode.d.ts","sourceRoot":"","sources":["../../../../src/jsMain/typescript/modes/ChatMode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAU5E;;GAEG;AACH,qBAAa,QAAS,YAAW,IAAI;IACnC,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,WAAW,UAAU;IAC9B,QAAQ,CAAC,WAAW,wCAAwC;IAC5D,QAAQ,CAAC,IAAI,kBAAQ;IAErB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,MAAM,CAA4B;IAEpC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAsC/C,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;YAwI7D,cAAc;IAkFtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,SAAS,IAAI,MAAM;CAGpB;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,UAAU;IAEvB,UAAU,IAAI,IAAI;CAGnB"}
@@ -0,0 +1,260 @@
1
+ /**
2
+ * Chat Mode - 聊天模式
3
+ *
4
+ * 封装现有的聊天逻辑,支持与 LLM 的对话交互
5
+ */
6
+ import { LLMService } from '../agents/LLMService.js';
7
+ import { InputRouter } from '../processors/InputRouter.js';
8
+ import { SlashCommandProcessor } from '../processors/SlashCommandProcessor.js';
9
+ import { AtCommandProcessor } from '../processors/AtCommandProcessor.js';
10
+ import { VariableProcessor } from '../processors/VariableProcessor.js';
11
+ import { compileDevIns, hasDevInsCommands } from '../utils/commandUtils.js';
12
+ import { findLastSafeSplitPoint } from '../utils/markdownSplitter.js';
13
+ /**
14
+ * Chat 模式实现
15
+ */
16
+ export class ChatMode {
17
+ name = 'chat';
18
+ displayName = 'Chat';
19
+ description = 'Interactive chat with AI assistant';
20
+ icon = '💬';
21
+ llmService = null;
22
+ router = null;
23
+ async initialize(context) {
24
+ context.logger.info('[ChatMode] Initializing chat mode...');
25
+ try {
26
+ // 初始化 LLM 服务
27
+ if (!context.llmConfig) {
28
+ throw new Error('LLM configuration is required for chat mode');
29
+ }
30
+ this.llmService = new LLMService(context.llmConfig);
31
+ // 初始化输入路由器
32
+ this.router = new InputRouter();
33
+ // 注册处理器(排除模式切换命令,因为它们由外部处理)
34
+ const slashProcessor = new SlashCommandProcessor();
35
+ this.router.register(slashProcessor, 100);
36
+ this.router.register(new AtCommandProcessor(), 50);
37
+ this.router.register(new VariableProcessor(), 30);
38
+ context.logger.info('[ChatMode] Chat mode initialized successfully');
39
+ // 显示欢迎消息
40
+ const welcomeMessage = {
41
+ role: 'system',
42
+ content: `💬 **Chat Mode Activated**\n\nI'm ready to chat and help you with questions, code review, explanations, and more.\n\nType \`/agent\` to switch to autonomous agent mode, or \`/help\` for more commands.`,
43
+ timestamp: Date.now(),
44
+ showPrefix: true
45
+ };
46
+ context.addMessage(welcomeMessage);
47
+ }
48
+ catch (error) {
49
+ context.logger.error('[ChatMode] Failed to initialize chat mode:', error);
50
+ throw error;
51
+ }
52
+ }
53
+ async handleInput(input, context) {
54
+ if (!this.llmService || !this.router) {
55
+ return {
56
+ success: false,
57
+ error: 'Chat mode not initialized'
58
+ };
59
+ }
60
+ const trimmedInput = input.trim();
61
+ if (!trimmedInput) {
62
+ return {
63
+ success: false,
64
+ error: 'Please enter a message'
65
+ };
66
+ }
67
+ try {
68
+ const userMessage = {
69
+ role: 'user',
70
+ content: trimmedInput,
71
+ timestamp: Date.now(),
72
+ showPrefix: true
73
+ };
74
+ context.addMessage(userMessage);
75
+ let processedContent = trimmedInput;
76
+ if (hasDevInsCommands(trimmedInput)) {
77
+ context.setIsCompiling(true);
78
+ context.setPendingMessage({
79
+ role: 'compiling',
80
+ content: '🔧 Compiling DevIns commands...',
81
+ timestamp: Date.now(),
82
+ showPrefix: true,
83
+ });
84
+ const compileResult = await compileDevIns(trimmedInput);
85
+ if (compileResult) {
86
+ if (compileResult.success) {
87
+ processedContent = compileResult.output;
88
+ if (compileResult.hasCommand && compileResult.output !== trimmedInput) {
89
+ const compileMessage = {
90
+ role: 'system',
91
+ content: `📝 Compiled output:\n${compileResult.output}`,
92
+ timestamp: Date.now(),
93
+ showPrefix: true,
94
+ };
95
+ context.addMessage(compileMessage);
96
+ }
97
+ }
98
+ else {
99
+ const errorMessage = {
100
+ role: 'system',
101
+ content: `⚠️ DevIns compilation error: ${compileResult.errorMessage}`,
102
+ timestamp: Date.now(),
103
+ showPrefix: true,
104
+ };
105
+ context.addMessage(errorMessage);
106
+ }
107
+ }
108
+ context.setIsCompiling(false);
109
+ context.setPendingMessage(null);
110
+ }
111
+ // 路由输入到处理器
112
+ const routerContext = {
113
+ clearMessages: context.clearMessages,
114
+ logger: context.logger,
115
+ readFile: async (path) => {
116
+ const compileResult = await compileDevIns(`/file:${path}`);
117
+ if (compileResult?.success) {
118
+ return compileResult.output;
119
+ }
120
+ throw new Error(compileResult?.errorMessage || 'Failed to read file');
121
+ }
122
+ };
123
+ const result = await this.router.route(processedContent, routerContext);
124
+ // 处理路由结果
125
+ switch (result.type) {
126
+ case 'handled':
127
+ if (result.output) {
128
+ const outputMessage = {
129
+ role: 'system',
130
+ content: result.output,
131
+ timestamp: Date.now(),
132
+ showPrefix: true
133
+ };
134
+ context.addMessage(outputMessage);
135
+ }
136
+ return { success: true };
137
+ case 'compile':
138
+ // 已经在上面处理了编译
139
+ return { success: true };
140
+ case 'error':
141
+ const errorMessage = {
142
+ role: 'system',
143
+ content: `❌ ${result.message}`,
144
+ timestamp: Date.now(),
145
+ showPrefix: true
146
+ };
147
+ context.addMessage(errorMessage);
148
+ return { success: false, error: result.message };
149
+ case 'llm-query':
150
+ // 发送到 LLM
151
+ return await this.handleLLMQuery(result.query, context);
152
+ default:
153
+ // 默认发送到 LLM
154
+ return await this.handleLLMQuery(processedContent, context);
155
+ }
156
+ }
157
+ catch (error) {
158
+ context.logger.error('[ChatMode] Error handling input:', error);
159
+ const errorMessage = {
160
+ role: 'system',
161
+ content: `❌ Error: ${error instanceof Error ? error.message : String(error)}`,
162
+ timestamp: Date.now(),
163
+ showPrefix: true
164
+ };
165
+ context.addMessage(errorMessage);
166
+ return {
167
+ success: false,
168
+ error: error instanceof Error ? error.message : String(error)
169
+ };
170
+ }
171
+ }
172
+ async handleLLMQuery(query, context) {
173
+ if (!this.llmService) {
174
+ return { success: false, error: 'LLM service not available' };
175
+ }
176
+ try {
177
+ // 创建待处理消息用于流式输出
178
+ context.setPendingMessage({
179
+ role: 'assistant',
180
+ content: '',
181
+ timestamp: Date.now(),
182
+ });
183
+ // 流式响应处理
184
+ let assistantContent = '';
185
+ const startTimestamp = Date.now();
186
+ let isFirstBlock = true;
187
+ await this.llmService.streamMessage(query, (chunk) => {
188
+ assistantContent += chunk;
189
+ // 查找安全分割点
190
+ const splitPoint = findLastSafeSplitPoint(assistantContent);
191
+ if (splitPoint === assistantContent.length) {
192
+ // 没有完整块,只更新待处理消息
193
+ context.setPendingMessage({
194
+ role: 'assistant',
195
+ content: assistantContent,
196
+ timestamp: startTimestamp,
197
+ showPrefix: isFirstBlock,
198
+ });
199
+ }
200
+ else {
201
+ // 找到完整块,分割处理
202
+ const completedContent = assistantContent.substring(0, splitPoint);
203
+ const pendingContent = assistantContent.substring(splitPoint);
204
+ // 移动完成的内容到历史
205
+ context.addMessage({
206
+ role: 'assistant',
207
+ content: completedContent,
208
+ timestamp: startTimestamp,
209
+ showPrefix: isFirstBlock,
210
+ });
211
+ // 保留待处理内容
212
+ context.setPendingMessage({
213
+ role: 'assistant',
214
+ content: pendingContent,
215
+ timestamp: startTimestamp,
216
+ showPrefix: false,
217
+ });
218
+ assistantContent = pendingContent;
219
+ isFirstBlock = false;
220
+ }
221
+ });
222
+ // 清除待处理消息
223
+ context.setPendingMessage(null);
224
+ // 移动剩余内容到历史
225
+ if (assistantContent.trim()) {
226
+ context.addMessage({
227
+ role: 'assistant',
228
+ content: assistantContent,
229
+ timestamp: startTimestamp,
230
+ showPrefix: isFirstBlock,
231
+ });
232
+ }
233
+ return { success: true };
234
+ }
235
+ catch (error) {
236
+ context.setPendingMessage(null);
237
+ return {
238
+ success: false,
239
+ error: error instanceof Error ? error.message : String(error)
240
+ };
241
+ }
242
+ }
243
+ async cleanup() {
244
+ this.llmService = null;
245
+ this.router = null;
246
+ }
247
+ getStatus() {
248
+ return 'Ready for conversation';
249
+ }
250
+ }
251
+ /**
252
+ * Chat 模式工厂
253
+ */
254
+ export class ChatModeFactory {
255
+ type = 'chat';
256
+ createMode() {
257
+ return new ChatMode();
258
+ }
259
+ }
260
+ //# sourceMappingURL=ChatMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatMode.js","sourceRoot":"","sources":["../../../../src/jsMain/typescript/modes/ChatMode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Document Mode - Automated document query with DocQL
3
+ *
4
+ * Similar to ReviewMode, this mode:
5
+ * 1. Scans for documents in the project
6
+ * 2. Registers documents with the DocumentRegistry
7
+ * 3. Uses DocumentAgent with DocQLTool for intelligent querying
8
+ */
9
+ export interface DocumentOptions {
10
+ projectPath: string;
11
+ query: string;
12
+ documentPath?: string;
13
+ }
14
+ export interface DocumentResult {
15
+ success: boolean;
16
+ message: string;
17
+ metadata?: {
18
+ documentsScanned?: number;
19
+ documentsRegistered?: number;
20
+ };
21
+ }
22
+ /**
23
+ * Run document query
24
+ */
25
+ export declare function runDocument(options: DocumentOptions, llmService: any, renderer?: any): Promise<DocumentResult>;
26
+ //# sourceMappingURL=DocumentMode.d.ts.map