@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,84 @@
1
+ /**
2
+ * Input Router - 输入路由系统
3
+ *
4
+ * 负责将用户输入路由到不同的处理器
5
+ * 参考 Gemini CLI 的处理器架构设计
6
+ */
7
+ /**
8
+ * 处理器上下文
9
+ * 包含处理器执行所需的所有依赖
10
+ */
11
+ export interface ProcessorContext {
12
+ /** 清空消息历史 */
13
+ clearMessages?: () => void;
14
+ /** 日志记录器 */
15
+ logger: {
16
+ info: (message: string) => void;
17
+ warn: (message: string) => void;
18
+ error: (message: string, error?: any) => void;
19
+ };
20
+ /** 读取文件内容(通过 Kotlin) */
21
+ readFile?: (path: string) => Promise<string>;
22
+ /** 添加消息到历史 */
23
+ addMessage?: (role: string, content: string) => void;
24
+ /** 设置加载状态 */
25
+ setLoading?: (loading: boolean) => void;
26
+ }
27
+ /**
28
+ * 处理器结果类型
29
+ */
30
+ export type ProcessorResult = {
31
+ type: 'handled';
32
+ output?: string;
33
+ } | {
34
+ type: 'compile';
35
+ devins: string;
36
+ } | {
37
+ type: 'llm-query';
38
+ query: string;
39
+ } | {
40
+ type: 'error';
41
+ message: string;
42
+ } | {
43
+ type: 'skip';
44
+ };
45
+ /**
46
+ * 输入处理器接口
47
+ */
48
+ export interface InputProcessor {
49
+ /** 处理器名称 */
50
+ name: string;
51
+ /** 判断是否可以处理该输入 */
52
+ canHandle(input: string): boolean;
53
+ /** 处理输入 */
54
+ process(input: string, context: ProcessorContext): Promise<ProcessorResult>;
55
+ }
56
+ /**
57
+ * 输入路由器
58
+ * 管理和调度所有输入处理器
59
+ */
60
+ export declare class InputRouter {
61
+ private processors;
62
+ /**
63
+ * 注册处理器
64
+ * @param processor 处理器实例
65
+ * @param priority 优先级(数字越大优先级越高,默认 0)
66
+ */
67
+ register(processor: InputProcessor, priority?: number): void;
68
+ /**
69
+ * 路由输入到合适的处理器
70
+ * @param input 用户输入
71
+ * @param context 处理器上下文
72
+ * @returns 处理结果
73
+ */
74
+ route(input: string, context: ProcessorContext): Promise<ProcessorResult>;
75
+ /**
76
+ * 获取所有已注册的处理器
77
+ */
78
+ getProcessors(): InputProcessor[];
79
+ /**
80
+ * 清除所有处理器
81
+ */
82
+ clear(): void;
83
+ }
84
+ //# sourceMappingURL=InputRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputRouter.d.ts","sourceRoot":"","sources":["../../../../src/jsMain/typescript/processors/InputRouter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,YAAY;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAChC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAChC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KAC/C,CAAC;IAEF,wBAAwB;IACxB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7C,cAAc;IACd,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAErD,aAAa;IACb,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IAEb,kBAAkB;IAClB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC,WAAW;IACX,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC7E;AAUD;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAwB;IAE1C;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,GAAE,MAAU,GAAG,IAAI;IAM/D;;;;;OAKG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2C/E;;OAEG;IACH,aAAa,IAAI,cAAc,EAAE;IAIjC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Input Router - 输入路由系统
3
+ *
4
+ * 负责将用户输入路由到不同的处理器
5
+ * 参考 Gemini CLI 的处理器架构设计
6
+ */
7
+ /**
8
+ * 输入路由器
9
+ * 管理和调度所有输入处理器
10
+ */
11
+ export class InputRouter {
12
+ processors = [];
13
+ /**
14
+ * 注册处理器
15
+ * @param processor 处理器实例
16
+ * @param priority 优先级(数字越大优先级越高,默认 0)
17
+ */
18
+ register(processor, priority = 0) {
19
+ this.processors.push({ processor, priority });
20
+ // 按优先级排序(高 → 低)
21
+ this.processors.sort((a, b) => b.priority - a.priority);
22
+ }
23
+ /**
24
+ * 路由输入到合适的处理器
25
+ * @param input 用户输入
26
+ * @param context 处理器上下文
27
+ * @returns 处理结果
28
+ */
29
+ async route(input, context) {
30
+ // 去除首尾空白
31
+ const trimmedInput = input.trim();
32
+ if (!trimmedInput) {
33
+ return { type: 'error', message: 'Input cannot be empty' };
34
+ }
35
+ // 遍历所有处理器
36
+ for (const entry of this.processors) {
37
+ const { processor } = entry;
38
+ try {
39
+ // 检查处理器是否可以处理该输入
40
+ if (processor.canHandle(trimmedInput)) {
41
+ context.logger.info(`[InputRouter] Routing to ${processor.name}`);
42
+ // 处理输入
43
+ const result = await processor.process(trimmedInput, context);
44
+ // 如果不是 skip,直接返回结果
45
+ if (result.type !== 'skip') {
46
+ context.logger.info(`[InputRouter] ${processor.name} handled: ${result.type}`);
47
+ return result;
48
+ }
49
+ // skip 则继续尝试下一个处理器
50
+ context.logger.info(`[InputRouter] ${processor.name} skipped, trying next`);
51
+ }
52
+ }
53
+ catch (error) {
54
+ context.logger.error(`[InputRouter] Error in ${processor.name}:`, error);
55
+ return {
56
+ type: 'error',
57
+ message: `Processor error: ${error instanceof Error ? error.message : String(error)}`
58
+ };
59
+ }
60
+ }
61
+ // 没有处理器处理,默认发送给 LLM
62
+ context.logger.info('[InputRouter] No processor handled, routing to LLM');
63
+ return { type: 'llm-query', query: trimmedInput };
64
+ }
65
+ /**
66
+ * 获取所有已注册的处理器
67
+ */
68
+ getProcessors() {
69
+ return this.processors.map(e => e.processor);
70
+ }
71
+ /**
72
+ * 清除所有处理器
73
+ */
74
+ clear() {
75
+ this.processors = [];
76
+ }
77
+ }
78
+ //# sourceMappingURL=InputRouter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputRouter.js","sourceRoot":"","sources":["../../../../src/jsMain/typescript/processors/InputRouter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA2DH;;;GAGG;AACH,MAAM,OAAO,WAAW;IACd,UAAU,GAAqB,EAAE,CAAC;IAE1C;;;;OAIG;IACH,QAAQ,CAAC,SAAyB,EAAE,WAAmB,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9C,gBAAgB;QAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,OAAyB;QAClD,SAAS;QACT,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAElC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;QAC7D,CAAC;QAED,UAAU;QACV,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;YAE5B,IAAI,CAAC;gBACH,iBAAiB;gBACjB,IAAI,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;oBACtC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;oBAElE,OAAO;oBACP,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBAE9D,mBAAmB;oBACnB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAC3B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,SAAS,CAAC,IAAI,aAAa,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC/E,OAAO,MAAM,CAAC;oBAChB,CAAC;oBAED,mBAAmB;oBACnB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,SAAS,CAAC,IAAI,uBAAuB,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,SAAS,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;gBACzE,OAAO;oBACL,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,oBAAoB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;iBACtF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAC1E,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Mode Command Processor
3
+ *
4
+ * 处理模式切换命令,如 /chat, /agent 等
5
+ */
6
+ import type { InputProcessor, ProcessorContext, ProcessorResult } from './InputRouter.js';
7
+ import type { ModeManager } from '../modes/ModeManager.js';
8
+ /**
9
+ * 模式切换命令处理器
10
+ */
11
+ export declare class ModeCommandProcessor implements InputProcessor {
12
+ name: string;
13
+ private modeManager;
14
+ private modeContext;
15
+ constructor(modeManager: ModeManager, modeContext: any);
16
+ /**
17
+ * 判断是否可以处理
18
+ */
19
+ canHandle(input: string): boolean;
20
+ /**
21
+ * 处理模式切换命令
22
+ */
23
+ process(input: string, context: ProcessorContext): Promise<ProcessorResult>;
24
+ }
25
+ //# sourceMappingURL=ModeCommandProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModeCommandProcessor.d.ts","sourceRoot":"","sources":["../../../../src/jsMain/typescript/processors/ModeCommandProcessor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D;;GAEG;AACH,qBAAa,oBAAqB,YAAW,cAAc;IACzD,IAAI,SAA0B;IAE9B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAM;gBAEb,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG;IAKtD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAQjC;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;CAwGlF"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Mode Command Processor
3
+ *
4
+ * 处理模式切换命令,如 /chat, /agent 等
5
+ */
6
+ /**
7
+ * 模式切换命令处理器
8
+ */
9
+ export class ModeCommandProcessor {
10
+ name = 'ModeCommandProcessor';
11
+ modeManager;
12
+ modeContext; // ModeContext 类型
13
+ constructor(modeManager, modeContext) {
14
+ this.modeManager = modeManager;
15
+ this.modeContext = modeContext;
16
+ }
17
+ /**
18
+ * 判断是否可以处理
19
+ */
20
+ canHandle(input) {
21
+ const trimmed = input.trim().toLowerCase();
22
+ return trimmed === '/chat' ||
23
+ trimmed === '/agent' ||
24
+ trimmed.startsWith('/mode ') ||
25
+ trimmed === '/mode';
26
+ }
27
+ /**
28
+ * 处理模式切换命令
29
+ */
30
+ async process(input, context) {
31
+ const trimmed = input.trim().toLowerCase();
32
+ try {
33
+ if (trimmed === '/chat') {
34
+ // 切换到聊天模式
35
+ const success = await this.modeManager.switchToMode('chat', this.modeContext);
36
+ if (success) {
37
+ return {
38
+ type: 'handled',
39
+ output: '💬 Switched to **Chat Mode**\n\nYou can now have conversations with the AI assistant.'
40
+ };
41
+ }
42
+ else {
43
+ return {
44
+ type: 'error',
45
+ message: 'Failed to switch to chat mode'
46
+ };
47
+ }
48
+ }
49
+ if (trimmed === '/agent') {
50
+ // 切换到代理模式
51
+ const success = await this.modeManager.switchToMode('agent', this.modeContext);
52
+ if (success) {
53
+ return {
54
+ type: 'handled',
55
+ output: '🤖 Switched to **Agent Mode**\n\nDescribe development tasks and I\'ll complete them autonomously.'
56
+ };
57
+ }
58
+ else {
59
+ return {
60
+ type: 'error',
61
+ message: 'Failed to switch to agent mode'
62
+ };
63
+ }
64
+ }
65
+ if (trimmed === '/mode') {
66
+ // 显示当前模式和可用模式
67
+ const currentMode = this.modeManager.getCurrentMode();
68
+ const availableModes = this.modeManager.getAvailableModes();
69
+ let output = '🔄 **Mode Information**\n\n';
70
+ if (currentMode) {
71
+ const modeInfo = this.modeManager.getModeInfo(currentMode.type);
72
+ output += `**Current Mode**: ${modeInfo?.icon} ${modeInfo?.displayName} (\`${currentMode.type}\`)\n`;
73
+ output += `**Status**: ${currentMode.mode.getStatus()}\n\n`;
74
+ }
75
+ else {
76
+ output += '**Current Mode**: None\n\n';
77
+ }
78
+ output += '**Available Modes**:\n';
79
+ for (const modeType of availableModes) {
80
+ const modeInfo = this.modeManager.getModeInfo(modeType);
81
+ if (modeInfo) {
82
+ output += `- ${modeInfo.icon} **${modeInfo.displayName}** (\`/${modeType}\`) - ${modeInfo.description}\n`;
83
+ }
84
+ }
85
+ output += '\n**Usage**: Type `/chat` or `/agent` to switch modes.';
86
+ return {
87
+ type: 'handled',
88
+ output
89
+ };
90
+ }
91
+ if (trimmed.startsWith('/mode ')) {
92
+ // 切换到指定模式
93
+ const modeType = trimmed.substring(6).trim();
94
+ const availableModes = this.modeManager.getAvailableModes();
95
+ if (!availableModes.includes(modeType)) {
96
+ return {
97
+ type: 'error',
98
+ message: `Unknown mode: ${modeType}. Available modes: ${availableModes.join(', ')}`
99
+ };
100
+ }
101
+ const success = await this.modeManager.switchToMode(modeType, this.modeContext);
102
+ if (success) {
103
+ const modeInfo = this.modeManager.getModeInfo(modeType);
104
+ return {
105
+ type: 'handled',
106
+ output: `${modeInfo?.icon} Switched to **${modeInfo?.displayName}**\n\n${modeInfo?.description}`
107
+ };
108
+ }
109
+ else {
110
+ return {
111
+ type: 'error',
112
+ message: `Failed to switch to ${modeType} mode`
113
+ };
114
+ }
115
+ }
116
+ return { type: 'skip' };
117
+ }
118
+ catch (error) {
119
+ context.logger.error('[ModeCommandProcessor] Error processing mode command:', error);
120
+ return {
121
+ type: 'error',
122
+ message: `Mode switch error: ${error instanceof Error ? error.message : String(error)}`
123
+ };
124
+ }
125
+ }
126
+ }
127
+ //# sourceMappingURL=ModeCommandProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModeCommandProcessor.js","sourceRoot":"","sources":["../../../../src/jsMain/typescript/processors/ModeCommandProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Slash Command Processor
3
+ *
4
+ * 处理以 / 开头的命令,如 /help, /clear, /exit 等
5
+ * 参考 Gemini CLI 的 slashCommandProcessor.ts
6
+ */
7
+ import type { InputProcessor, ProcessorContext, ProcessorResult } from './InputRouter.js';
8
+ /**
9
+ * 命令定义
10
+ */
11
+ export interface SlashCommand {
12
+ /** 命令描述 */
13
+ description: string;
14
+ /** 命令别名 */
15
+ aliases?: string[];
16
+ /** 命令执行函数 */
17
+ action: (context: ProcessorContext, args: string) => Promise<ProcessorResult>;
18
+ }
19
+ /**
20
+ * Slash 命令处理器
21
+ */
22
+ export declare class SlashCommandProcessor implements InputProcessor {
23
+ name: string;
24
+ private commands;
25
+ constructor();
26
+ /**
27
+ * 初始化内置命令
28
+ */
29
+ private initializeBuiltinCommands;
30
+ /**
31
+ * 注册命令
32
+ */
33
+ registerCommand(name: string, command: SlashCommand): void;
34
+ /**
35
+ * 获取所有命令
36
+ */
37
+ getCommands(): Map<string, SlashCommand>;
38
+ /**
39
+ * 判断是否可以处理
40
+ */
41
+ canHandle(input: string): boolean;
42
+ /**
43
+ * 处理命令
44
+ */
45
+ process(input: string, context: ProcessorContext): Promise<ProcessorResult>;
46
+ /**
47
+ * Handle /init command for domain dictionary generation
48
+ */
49
+ private handleInitCommand;
50
+ /**
51
+ * Handle /enhance command for prompt enhancement
52
+ */
53
+ private handleEnhanceCommand;
54
+ /**
55
+ * Handle /deep-research command for domain dictionary optimization
56
+ *
57
+ * Implements a 7-step Deep Research methodology:
58
+ * 1. Clarify - Problem Definition
59
+ * 2. Decompose - Research Dimensions
60
+ * 3. Information Map - Planning
61
+ * 4. Iterative Deep Research Loop
62
+ * 5. Second-Order Insights
63
+ * 6. Synthesis - Research Narrative
64
+ * 7. Actionization - Final Deliverables
65
+ */
66
+ private handleDeepResearchCommand;
67
+ }
68
+ //# sourceMappingURL=SlashCommandProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlashCommandProcessor.d.ts","sourceRoot":"","sources":["../../../../src/jsMain/typescript/processors/SlashCommandProcessor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAO1F;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,aAAa;IACb,MAAM,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;CAC/E;AAED;;GAEG;AACH,qBAAa,qBAAsB,YAAW,cAAc;IAC1D,IAAI,SAA2B;IAE/B,OAAO,CAAC,QAAQ,CAAmC;;IAMnD;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAwEjC;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAW1D;;OAEG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC;IAIxC;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA4CjF;;OAEG;YACW,iBAAiB;IAmE/B;;OAEG;YACW,oBAAoB;IA2FlC;;;;;;;;;;;OAWG;YACW,yBAAyB;CAwHxC"}