@downcity/plugins 1.0.56 → 1.0.59

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 (318) hide show
  1. package/bin/BuiltinPlugins.d.ts.map +1 -1
  2. package/bin/BuiltinPlugins.js +0 -6
  3. package/bin/BuiltinPlugins.js.map +1 -1
  4. package/bin/asr/Plugin.d.ts +67 -7
  5. package/bin/asr/Plugin.d.ts.map +1 -1
  6. package/bin/asr/Plugin.js +229 -461
  7. package/bin/asr/Plugin.js.map +1 -1
  8. package/bin/asr/types/AsrPlugin.d.ts +114 -0
  9. package/bin/asr/types/AsrPlugin.d.ts.map +1 -0
  10. package/bin/asr/types/AsrPlugin.js +10 -0
  11. package/bin/asr/types/AsrPlugin.js.map +1 -0
  12. package/bin/auth/types/AuthPlugin.d.ts +12 -16
  13. package/bin/auth/types/AuthPlugin.d.ts.map +1 -1
  14. package/bin/auth/types/AuthPlugin.js +9 -13
  15. package/bin/auth/types/AuthPlugin.js.map +1 -1
  16. package/bin/chat/ChatPlugin.d.ts +37 -6
  17. package/bin/chat/ChatPlugin.d.ts.map +1 -1
  18. package/bin/chat/ChatPlugin.js +58 -80
  19. package/bin/chat/ChatPlugin.js.map +1 -1
  20. package/bin/chat/Index.d.ts +4 -1
  21. package/bin/chat/Index.d.ts.map +1 -1
  22. package/bin/chat/Index.js +2 -1
  23. package/bin/chat/Index.js.map +1 -1
  24. package/bin/chat/channels/Configuration.d.ts +1 -1
  25. package/bin/chat/channels/Configuration.js +1 -1
  26. package/bin/chat/channels/RuntimeChannel.d.ts +145 -0
  27. package/bin/chat/channels/RuntimeChannel.d.ts.map +1 -0
  28. package/bin/chat/channels/RuntimeChannel.js +148 -0
  29. package/bin/chat/channels/RuntimeChannel.js.map +1 -0
  30. package/bin/chat/runtime/ChatAuthorizationRuntime.d.ts +22 -0
  31. package/bin/chat/runtime/ChatAuthorizationRuntime.d.ts.map +1 -0
  32. package/bin/chat/runtime/ChatAuthorizationRuntime.js +189 -0
  33. package/bin/chat/runtime/ChatAuthorizationRuntime.js.map +1 -0
  34. package/bin/chat/runtime/ChatChannelActions.d.ts.map +1 -1
  35. package/bin/chat/runtime/ChatChannelActions.js +19 -9
  36. package/bin/chat/runtime/ChatChannelActions.js.map +1 -1
  37. package/bin/chat/runtime/ChatChannelConfig.d.ts +2 -18
  38. package/bin/chat/runtime/ChatChannelConfig.d.ts.map +1 -1
  39. package/bin/chat/runtime/ChatChannelConfig.js +2 -73
  40. package/bin/chat/runtime/ChatChannelConfig.js.map +1 -1
  41. package/bin/chat/runtime/ChatChannelCore.d.ts +22 -1
  42. package/bin/chat/runtime/ChatChannelCore.d.ts.map +1 -1
  43. package/bin/chat/runtime/ChatChannelCore.js +5 -5
  44. package/bin/chat/runtime/ChatChannelCore.js.map +1 -1
  45. package/bin/chat/runtime/ChatPluginActionRegistry.js +1 -1
  46. package/bin/chat/runtime/ChatPluginActionRegistry.js.map +1 -1
  47. package/bin/chat/runtime/PluginPoints.d.ts +3 -3
  48. package/bin/chat/runtime/PluginPoints.js +3 -3
  49. package/bin/chat/types/ChannelStatus.d.ts +1 -1
  50. package/bin/chat/types/ChatPluginOptions.d.ts +76 -0
  51. package/bin/chat/types/ChatPluginOptions.d.ts.map +1 -0
  52. package/bin/chat/types/ChatPluginOptions.js +10 -0
  53. package/bin/chat/types/ChatPluginOptions.js.map +1 -0
  54. package/bin/image/ImagePlugin.d.ts +1 -1
  55. package/bin/image/ImagePlugin.d.ts.map +1 -1
  56. package/bin/image/ImagePlugin.js +23 -5
  57. package/bin/image/ImagePlugin.js.map +1 -1
  58. package/bin/index.d.ts +6 -3
  59. package/bin/index.d.ts.map +1 -1
  60. package/bin/index.js +2 -2
  61. package/bin/index.js.map +1 -1
  62. package/bin/skill/Action.d.ts.map +1 -1
  63. package/bin/skill/Action.js +2 -2
  64. package/bin/skill/Action.js.map +1 -1
  65. package/bin/skill/Command.js +5 -5
  66. package/bin/skill/Command.js.map +1 -1
  67. package/bin/skill/Plugin.js +1 -1
  68. package/bin/skill/Plugin.js.map +1 -1
  69. package/bin/skill/runtime/Discovery.d.ts +4 -4
  70. package/bin/skill/runtime/Discovery.d.ts.map +1 -1
  71. package/bin/skill/runtime/Discovery.js +5 -5
  72. package/bin/skill/runtime/Discovery.js.map +1 -1
  73. package/bin/skill/runtime/Paths.d.ts +1 -5
  74. package/bin/skill/runtime/Paths.d.ts.map +1 -1
  75. package/bin/skill/runtime/Paths.js +1 -9
  76. package/bin/skill/runtime/Paths.js.map +1 -1
  77. package/bin/skill/runtime/Prompt.d.ts +2 -2
  78. package/bin/skill/runtime/Prompt.d.ts.map +1 -1
  79. package/bin/skill/runtime/Prompt.js +3 -3
  80. package/bin/skill/runtime/Prompt.js.map +1 -1
  81. package/bin/skill/runtime/Store.d.ts +2 -2
  82. package/bin/skill/runtime/Store.d.ts.map +1 -1
  83. package/bin/skill/runtime/Store.js.map +1 -1
  84. package/bin/skill/runtime/SystemProvider.js +4 -4
  85. package/bin/skill/runtime/SystemProvider.js.map +1 -1
  86. package/bin/skill/runtime/Types.d.ts +3 -3
  87. package/bin/skill/runtime/Types.d.ts.map +1 -1
  88. package/bin/skill/types/{ClaudeSkill.d.ts → SkillDefinition.d.ts} +4 -4
  89. package/bin/skill/types/SkillDefinition.d.ts.map +1 -0
  90. package/bin/skill/types/{ClaudeSkill.js → SkillDefinition.js} +2 -2
  91. package/bin/skill/types/SkillDefinition.js.map +1 -0
  92. package/bin/skill/types/SkillPlugin.d.ts +2 -2
  93. package/bin/skill/types/SkillPlugin.d.ts.map +1 -1
  94. package/bin/tts/Plugin.d.ts +53 -6
  95. package/bin/tts/Plugin.d.ts.map +1 -1
  96. package/bin/tts/Plugin.js +197 -474
  97. package/bin/tts/Plugin.js.map +1 -1
  98. package/bin/tts/types/TtsPlugin.d.ts +63 -102
  99. package/bin/tts/types/TtsPlugin.d.ts.map +1 -1
  100. package/bin/tts/types/TtsPlugin.js +4 -3
  101. package/bin/tts/types/TtsPlugin.js.map +1 -1
  102. package/bin/web/PROMPT.d.ts +1 -1
  103. package/bin/web/PROMPT.d.ts.map +1 -1
  104. package/bin/web/PROMPT.js +1 -1
  105. package/bin/web/PROMPT.js.map +1 -1
  106. package/bin/web/Plugin.d.ts +66 -5
  107. package/bin/web/Plugin.d.ts.map +1 -1
  108. package/bin/web/Plugin.js +126 -450
  109. package/bin/web/Plugin.js.map +1 -1
  110. package/bin/web/WebPromptAssets.d.ts +1 -9
  111. package/bin/web/WebPromptAssets.d.ts.map +1 -1
  112. package/bin/web/WebPromptAssets.js +1 -11
  113. package/bin/web/WebPromptAssets.js.map +1 -1
  114. package/bin/web/runtime/Install.d.ts +19 -0
  115. package/bin/web/runtime/Install.d.ts.map +1 -0
  116. package/bin/web/runtime/Install.js +178 -0
  117. package/bin/web/runtime/Install.js.map +1 -0
  118. package/bin/web/types/WebPlugin.d.ts +38 -109
  119. package/bin/web/types/WebPlugin.d.ts.map +1 -1
  120. package/bin/web/types/WebPlugin.js +5 -7
  121. package/bin/web/types/WebPlugin.js.map +1 -1
  122. package/bin/workboard/Plugin.d.ts +23 -3
  123. package/bin/workboard/Plugin.d.ts.map +1 -1
  124. package/bin/workboard/Plugin.js +66 -85
  125. package/bin/workboard/Plugin.js.map +1 -1
  126. package/package.json +2 -2
  127. package/src/BuiltinPlugins.ts +0 -6
  128. package/src/asr/Plugin.ts +264 -483
  129. package/src/asr/types/AsrPlugin.ts +118 -0
  130. package/src/auth/types/AuthPlugin.ts +12 -17
  131. package/src/chat/ChatPlugin.ts +92 -89
  132. package/src/chat/Index.ts +18 -1
  133. package/src/chat/channels/Configuration.ts +1 -1
  134. package/src/chat/channels/RuntimeChannel.ts +264 -0
  135. package/src/chat/runtime/ChatAuthorizationRuntime.ts +229 -0
  136. package/src/chat/runtime/ChatChannelActions.ts +24 -9
  137. package/src/chat/runtime/ChatChannelConfig.ts +2 -100
  138. package/src/chat/runtime/ChatChannelCore.ts +20 -8
  139. package/src/chat/runtime/ChatPluginActionRegistry.ts +1 -1
  140. package/src/chat/runtime/PluginPoints.ts +3 -3
  141. package/src/chat/types/ChannelStatus.ts +1 -1
  142. package/src/chat/types/ChatPluginOptions.ts +79 -0
  143. package/src/image/ImagePlugin.ts +23 -5
  144. package/src/index.ts +29 -6
  145. package/src/skill/Action.ts +10 -7
  146. package/src/skill/Command.ts +5 -5
  147. package/src/skill/Plugin.ts +1 -1
  148. package/src/skill/runtime/Discovery.ts +14 -11
  149. package/src/skill/runtime/Paths.ts +1 -13
  150. package/src/skill/runtime/Prompt.ts +5 -5
  151. package/src/skill/runtime/Store.ts +6 -3
  152. package/src/skill/runtime/SystemProvider.ts +4 -4
  153. package/src/skill/runtime/Types.ts +3 -3
  154. package/src/skill/types/{ClaudeSkill.ts → SkillDefinition.ts} +3 -3
  155. package/src/skill/types/SkillPlugin.ts +2 -2
  156. package/src/tts/Plugin.ts +225 -492
  157. package/src/tts/types/TtsPlugin.ts +67 -102
  158. package/src/web/PROMPT.ts +1 -1
  159. package/src/web/PROMPT.ts.txt +32 -6
  160. package/src/web/Plugin.ts +119 -453
  161. package/src/web/WebPromptAssets.ts +1 -13
  162. package/src/web/runtime/Install.ts +241 -0
  163. package/src/web/types/WebPlugin.ts +38 -114
  164. package/src/workboard/Plugin.ts +80 -95
  165. package/bin/asr/Config.d.ts +0 -43
  166. package/bin/asr/Config.d.ts.map +0 -1
  167. package/bin/asr/Config.js +0 -107
  168. package/bin/asr/Config.js.map +0 -1
  169. package/bin/asr/Dependency.d.ts +0 -77
  170. package/bin/asr/Dependency.d.ts.map +0 -1
  171. package/bin/asr/Dependency.js +0 -238
  172. package/bin/asr/Dependency.js.map +0 -1
  173. package/bin/asr/InboundAugment.d.ts +0 -17
  174. package/bin/asr/InboundAugment.d.ts.map +0 -1
  175. package/bin/asr/InboundAugment.js +0 -47
  176. package/bin/asr/InboundAugment.js.map +0 -1
  177. package/bin/asr/ModelCatalog.d.ts +0 -29
  178. package/bin/asr/ModelCatalog.d.ts.map +0 -1
  179. package/bin/asr/ModelCatalog.js +0 -25
  180. package/bin/asr/ModelCatalog.js.map +0 -1
  181. package/bin/auth/Plugin.d.ts +0 -17
  182. package/bin/auth/Plugin.d.ts.map +0 -1
  183. package/bin/auth/Plugin.js +0 -199
  184. package/bin/auth/Plugin.js.map +0 -1
  185. package/bin/chat/ChatPluginTypes.d.ts +0 -122
  186. package/bin/chat/ChatPluginTypes.d.ts.map +0 -1
  187. package/bin/chat/ChatPluginTypes.js +0 -10
  188. package/bin/chat/ChatPluginTypes.js.map +0 -1
  189. package/bin/skill/types/ClaudeSkill.d.ts.map +0 -1
  190. package/bin/skill/types/ClaudeSkill.js.map +0 -1
  191. package/bin/tts/Dependency.d.ts +0 -90
  192. package/bin/tts/Dependency.d.ts.map +0 -1
  193. package/bin/tts/Dependency.js +0 -344
  194. package/bin/tts/Dependency.js.map +0 -1
  195. package/bin/tts/PluginSupport.d.ts +0 -25
  196. package/bin/tts/PluginSupport.d.ts.map +0 -1
  197. package/bin/tts/PluginSupport.js +0 -72
  198. package/bin/tts/PluginSupport.js.map +0 -1
  199. package/bin/tts/runtime/Catalog.d.ts +0 -21
  200. package/bin/tts/runtime/Catalog.d.ts.map +0 -1
  201. package/bin/tts/runtime/Catalog.js +0 -90
  202. package/bin/tts/runtime/Catalog.js.map +0 -1
  203. package/bin/tts/runtime/DependencyInstaller.d.ts +0 -143
  204. package/bin/tts/runtime/DependencyInstaller.d.ts.map +0 -1
  205. package/bin/tts/runtime/DependencyInstaller.js +0 -261
  206. package/bin/tts/runtime/DependencyInstaller.js.map +0 -1
  207. package/bin/tts/runtime/Installer.d.ts +0 -89
  208. package/bin/tts/runtime/Installer.d.ts.map +0 -1
  209. package/bin/tts/runtime/Installer.js +0 -188
  210. package/bin/tts/runtime/Installer.js.map +0 -1
  211. package/bin/tts/runtime/Paths.d.ts +0 -20
  212. package/bin/tts/runtime/Paths.d.ts.map +0 -1
  213. package/bin/tts/runtime/Paths.js +0 -32
  214. package/bin/tts/runtime/Paths.js.map +0 -1
  215. package/bin/tts/runtime/Synthesizer.d.ts +0 -44
  216. package/bin/tts/runtime/Synthesizer.d.ts.map +0 -1
  217. package/bin/tts/runtime/Synthesizer.js +0 -363
  218. package/bin/tts/runtime/Synthesizer.js.map +0 -1
  219. package/bin/tts/types/Tts.d.ts +0 -91
  220. package/bin/tts/types/Tts.d.ts.map +0 -1
  221. package/bin/tts/types/Tts.js +0 -9
  222. package/bin/tts/types/Tts.js.map +0 -1
  223. package/bin/voice/Config.d.ts +0 -43
  224. package/bin/voice/Config.d.ts.map +0 -1
  225. package/bin/voice/Config.js +0 -104
  226. package/bin/voice/Config.js.map +0 -1
  227. package/bin/voice/Dependency.d.ts +0 -77
  228. package/bin/voice/Dependency.d.ts.map +0 -1
  229. package/bin/voice/Dependency.js +0 -237
  230. package/bin/voice/Dependency.js.map +0 -1
  231. package/bin/voice/InboundAugment.d.ts +0 -17
  232. package/bin/voice/InboundAugment.d.ts.map +0 -1
  233. package/bin/voice/InboundAugment.js +0 -47
  234. package/bin/voice/InboundAugment.js.map +0 -1
  235. package/bin/voice/ModelCatalog.d.ts +0 -29
  236. package/bin/voice/ModelCatalog.d.ts.map +0 -1
  237. package/bin/voice/ModelCatalog.js +0 -25
  238. package/bin/voice/ModelCatalog.js.map +0 -1
  239. package/bin/voice/runtime/Catalog.d.ts +0 -18
  240. package/bin/voice/runtime/Catalog.d.ts.map +0 -1
  241. package/bin/voice/runtime/Catalog.js +0 -61
  242. package/bin/voice/runtime/Catalog.js.map +0 -1
  243. package/bin/voice/runtime/DependencyInstaller.d.ts +0 -145
  244. package/bin/voice/runtime/DependencyInstaller.d.ts.map +0 -1
  245. package/bin/voice/runtime/DependencyInstaller.js +0 -309
  246. package/bin/voice/runtime/DependencyInstaller.js.map +0 -1
  247. package/bin/voice/runtime/Installer.d.ts +0 -94
  248. package/bin/voice/runtime/Installer.d.ts.map +0 -1
  249. package/bin/voice/runtime/Installer.js +0 -200
  250. package/bin/voice/runtime/Installer.js.map +0 -1
  251. package/bin/voice/runtime/Paths.d.ts +0 -8
  252. package/bin/voice/runtime/Paths.d.ts.map +0 -1
  253. package/bin/voice/runtime/Paths.js +0 -26
  254. package/bin/voice/runtime/Paths.js.map +0 -1
  255. package/bin/voice/runtime/Transcriber.d.ts +0 -57
  256. package/bin/voice/runtime/Transcriber.d.ts.map +0 -1
  257. package/bin/voice/runtime/Transcriber.js +0 -329
  258. package/bin/voice/runtime/Transcriber.js.map +0 -1
  259. package/bin/voice/types/Voice.d.ts +0 -58
  260. package/bin/voice/types/Voice.d.ts.map +0 -1
  261. package/bin/voice/types/Voice.js +0 -9
  262. package/bin/voice/types/Voice.js.map +0 -1
  263. package/bin/voice/types/VoicePlugin.d.ts +0 -190
  264. package/bin/voice/types/VoicePlugin.d.ts.map +0 -1
  265. package/bin/voice/types/VoicePlugin.js +0 -9
  266. package/bin/voice/types/VoicePlugin.js.map +0 -1
  267. package/bin/web/Dependency.d.ts +0 -10
  268. package/bin/web/Dependency.d.ts.map +0 -1
  269. package/bin/web/Dependency.js +0 -10
  270. package/bin/web/Dependency.js.map +0 -1
  271. package/bin/web/PROMPT.agent-browser.d.ts +0 -7
  272. package/bin/web/PROMPT.agent-browser.d.ts.map +0 -1
  273. package/bin/web/PROMPT.agent-browser.js +0 -8
  274. package/bin/web/PROMPT.agent-browser.js.map +0 -1
  275. package/bin/web/PROMPT.web-access.d.ts +0 -7
  276. package/bin/web/PROMPT.web-access.d.ts.map +0 -1
  277. package/bin/web/PROMPT.web-access.js +0 -8
  278. package/bin/web/PROMPT.web-access.js.map +0 -1
  279. package/bin/web/runtime/Config.d.ts +0 -21
  280. package/bin/web/runtime/Config.d.ts.map +0 -1
  281. package/bin/web/runtime/Config.js +0 -79
  282. package/bin/web/runtime/Config.js.map +0 -1
  283. package/bin/web/runtime/Source.d.ts +0 -29
  284. package/bin/web/runtime/Source.d.ts.map +0 -1
  285. package/bin/web/runtime/Source.js +0 -209
  286. package/bin/web/runtime/Source.js.map +0 -1
  287. package/src/asr/Config.ts +0 -138
  288. package/src/asr/Dependency.ts +0 -336
  289. package/src/asr/InboundAugment.ts +0 -59
  290. package/src/asr/ModelCatalog.ts +0 -43
  291. package/src/auth/Plugin.ts +0 -237
  292. package/src/chat/ChatPluginTypes.ts +0 -126
  293. package/src/tts/Dependency.ts +0 -473
  294. package/src/tts/PluginSupport.ts +0 -85
  295. package/src/tts/runtime/Catalog.ts +0 -97
  296. package/src/tts/runtime/DependencyInstaller.ts +0 -436
  297. package/src/tts/runtime/Installer.ts +0 -297
  298. package/src/tts/runtime/Paths.ts +0 -39
  299. package/src/tts/runtime/Synthesizer.ts +0 -480
  300. package/src/tts/types/Tts.ts +0 -99
  301. package/src/voice/Config.ts +0 -135
  302. package/src/voice/Dependency.ts +0 -329
  303. package/src/voice/InboundAugment.ts +0 -59
  304. package/src/voice/ModelCatalog.ts +0 -43
  305. package/src/voice/runtime/Catalog.ts +0 -68
  306. package/src/voice/runtime/DependencyInstaller.ts +0 -505
  307. package/src/voice/runtime/Installer.ts +0 -324
  308. package/src/voice/runtime/Paths.ts +0 -26
  309. package/src/voice/runtime/Transcriber.ts +0 -467
  310. package/src/voice/types/Voice.ts +0 -68
  311. package/src/voice/types/VoicePlugin.ts +0 -194
  312. package/src/web/Dependency.ts +0 -17
  313. package/src/web/PROMPT.agent-browser.ts +0 -9
  314. package/src/web/PROMPT.agent-browser.ts.txt +0 -17
  315. package/src/web/PROMPT.web-access.ts +0 -9
  316. package/src/web/PROMPT.web-access.ts.txt +0 -13
  317. package/src/web/runtime/Config.ts +0 -105
  318. package/src/web/runtime/Source.ts +0 -257
@@ -1 +0,0 @@
1
- {"version":3,"file":"DependencyInstaller.js","sourceRoot":"","sources":["../../../src/voice/runtime/DependencyInstaller.ts"],"names":[],"mappings":"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"}
@@ -1,94 +0,0 @@
1
- import type { VoiceModelCatalogItem, VoiceModelId } from "../../voice/types/Voice.js";
2
- /**
3
- * Voice 模型安装结果。
4
- */
5
- export interface VoiceModelInstallResult {
6
- /**
7
- * 模型目录(绝对路径)。
8
- */
9
- modelDir: string;
10
- /**
11
- * 本次下载文件数。
12
- */
13
- downloadedFiles: number;
14
- /**
15
- * 本次跳过文件数(已存在且未强制覆盖)。
16
- */
17
- skippedFiles: number;
18
- /**
19
- * 本次实际下载的文件路径(相对模型目录)。
20
- */
21
- downloadedFilePaths: string[];
22
- /**
23
- * 本次跳过的文件路径(相对模型目录)。
24
- */
25
- skippedFilePaths: string[];
26
- /**
27
- * 安装源仓库 ID。
28
- */
29
- repoId: string;
30
- /**
31
- * 安装源 revision。
32
- */
33
- revision: string;
34
- }
35
- /**
36
- * Voice 模型安装进度事件。
37
- */
38
- export interface VoiceModelInstallProgressEvent {
39
- /**
40
- * 当前阶段。
41
- */
42
- stage: "discover" | "skip" | "download_start" | "download_done" | "manifest";
43
- /**
44
- * 文件路径(相对模型目录,可选)。
45
- */
46
- filePath?: string;
47
- /**
48
- * 文件总数(可选)。
49
- */
50
- totalFiles?: number;
51
- /**
52
- * 当前文件序号(从 1 开始,可选)。
53
- */
54
- index?: number;
55
- }
56
- /**
57
- * 判断模型在本地是否已安装。
58
- *
59
- * 关键点(中文)
60
- * - 优先识别安装清单 `downcity.voice.install.json`。
61
- * - 若无清单但目录非空,也视为已存在模型,避免重复下载。
62
- */
63
- export declare function detectLocalVoiceModelInstallState(input: {
64
- modelId: VoiceModelId;
65
- modelsRootDir: string;
66
- }): Promise<{
67
- /**
68
- * 模型目录(绝对路径)。
69
- */
70
- modelDir: string;
71
- /**
72
- * 是否判断为“已安装”。
73
- */
74
- installed: boolean;
75
- /**
76
- * 已安装来源。
77
- */
78
- source?: "manifest" | "directory";
79
- }>;
80
- /**
81
- * 安装指定 voice 模型到本地目录。
82
- *
83
- * 关键点(中文)
84
- * - 使用 HTTP 文件级下载,不依赖 git-lfs。
85
- * - 默认复用已有文件;`force=true` 时覆盖重下。
86
- */
87
- export declare function installVoiceModelFromHuggingFace(input: {
88
- model: VoiceModelCatalogItem;
89
- modelsRootDir: string;
90
- force?: boolean;
91
- hfToken?: string;
92
- onProgress?: (event: VoiceModelInstallProgressEvent) => void;
93
- }): Promise<VoiceModelInstallResult>;
94
- //# sourceMappingURL=Installer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Installer.d.ts","sourceRoot":"","sources":["../../../src/voice/runtime/Installer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAUlF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,KAAK,EACD,UAAU,GACV,MAAM,GACN,gBAAgB,GAChB,eAAe,GACf,UAAU,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,iCAAiC,CAAC,KAAK,EAAE;IAC7D,OAAO,EAAE,YAAY,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC;IACV;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;CACnC,CAAC,CAoCD;AA8FD;;;;;;GAMG;AACH,wBAAsB,gCAAgC,CAAC,KAAK,EAAE;IAC5D,KAAK,EAAE,qBAAqB,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,IAAI,CAAC;CAC9D,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAiFnC"}
@@ -1,200 +0,0 @@
1
- import path from "node:path";
2
- import fs from "node:fs";
3
- import fsExtra from "fs-extra";
4
- import { Readable } from "node:stream";
5
- import { pipeline } from "node:stream/promises";
6
- const HUGGINGFACE_HOST = "https://huggingface.co";
7
- /**
8
- * 判断模型在本地是否已安装。
9
- *
10
- * 关键点(中文)
11
- * - 优先识别安装清单 `downcity.voice.install.json`。
12
- * - 若无清单但目录非空,也视为已存在模型,避免重复下载。
13
- */
14
- export async function detectLocalVoiceModelInstallState(input) {
15
- const modelDir = path.resolve(input.modelsRootDir, input.modelId);
16
- const manifestPath = path.join(modelDir, "downcity.voice.install.json");
17
- const hasManifest = await fsExtra.pathExists(manifestPath);
18
- if (hasManifest) {
19
- return {
20
- modelDir,
21
- installed: true,
22
- source: "manifest",
23
- };
24
- }
25
- const hasModelDir = await fsExtra.pathExists(modelDir);
26
- if (!hasModelDir) {
27
- return {
28
- modelDir,
29
- installed: false,
30
- };
31
- }
32
- const entries = await fsExtra.readdir(modelDir).catch(() => []);
33
- const hasPersistedFiles = entries.some((entry) => !String(entry).endsWith(".downloading"));
34
- if (!hasPersistedFiles) {
35
- return {
36
- modelDir,
37
- installed: false,
38
- };
39
- }
40
- return {
41
- modelDir,
42
- installed: true,
43
- source: "directory",
44
- };
45
- }
46
- function encodePathSegments(input) {
47
- return input
48
- .split("/")
49
- .map((segment) => encodeURIComponent(segment))
50
- .join("/");
51
- }
52
- function buildAuthHeaders(token) {
53
- const t = String(token || "").trim();
54
- if (!t)
55
- return undefined;
56
- return { Authorization: `Bearer ${t}` };
57
- }
58
- function resolveSafeTargetPath(baseDir, relativePath) {
59
- const normalized = relativePath.replace(/\\/g, "/");
60
- const target = path.resolve(baseDir, normalized);
61
- const base = path.resolve(baseDir);
62
- if (target !== base && !target.startsWith(`${base}${path.sep}`)) {
63
- throw new Error(`Unsafe file path from HuggingFace: ${relativePath}`);
64
- }
65
- return target;
66
- }
67
- async function readModelFiles(input) {
68
- const repoUrlPath = encodePathSegments(input.repoId);
69
- const metadataUrl = `${HUGGINGFACE_HOST}/api/models/${repoUrlPath}`;
70
- const response = await fetch(metadataUrl, {
71
- headers: {
72
- Accept: "application/json",
73
- ...(buildAuthHeaders(input.hfToken) || {}),
74
- },
75
- });
76
- if (!response.ok) {
77
- const responseText = await response.text().catch(() => "");
78
- throw new Error(`Failed to fetch model metadata (${input.repoId}): HTTP ${response.status}${responseText ? ` ${responseText.slice(0, 300)}` : ""}`);
79
- }
80
- const payload = (await response.json());
81
- const files = (Array.isArray(payload.siblings) ? payload.siblings : [])
82
- .map((item) => String(item?.rfilename || "").trim())
83
- .filter(Boolean)
84
- .filter((item) => item !== ".gitattributes");
85
- if (files.length === 0) {
86
- throw new Error(`No downloadable files found in repo: ${input.repoId}`);
87
- }
88
- return files;
89
- }
90
- async function downloadModelFile(input) {
91
- const repoPath = encodePathSegments(input.repoId);
92
- const revision = encodeURIComponent(input.revision);
93
- const filePath = encodePathSegments(input.filePath);
94
- const url = `${HUGGINGFACE_HOST}/${repoPath}/resolve/${revision}/${filePath}?download=1`;
95
- const response = await fetch(url, {
96
- headers: {
97
- ...(buildAuthHeaders(input.hfToken) || {}),
98
- },
99
- });
100
- if (!response.ok) {
101
- const responseText = await response.text().catch(() => "");
102
- throw new Error(`Failed to download ${input.filePath}: HTTP ${response.status}${responseText ? ` ${responseText.slice(0, 300)}` : ""}`);
103
- }
104
- if (!response.body) {
105
- throw new Error(`Empty response body for file: ${input.filePath}`);
106
- }
107
- const tempPath = `${input.targetPath}.downloading`;
108
- await fsExtra.ensureDir(path.dirname(input.targetPath));
109
- try {
110
- const body = Readable.fromWeb(response.body);
111
- await pipeline(body, fs.createWriteStream(tempPath));
112
- await fsExtra.move(tempPath, input.targetPath, { overwrite: true });
113
- }
114
- catch (error) {
115
- await fsExtra.remove(tempPath).catch(() => undefined);
116
- throw error;
117
- }
118
- }
119
- /**
120
- * 安装指定 voice 模型到本地目录。
121
- *
122
- * 关键点(中文)
123
- * - 使用 HTTP 文件级下载,不依赖 git-lfs。
124
- * - 默认复用已有文件;`force=true` 时覆盖重下。
125
- */
126
- export async function installVoiceModelFromHuggingFace(input) {
127
- const modelDir = path.resolve(input.modelsRootDir, input.model.id);
128
- await fsExtra.ensureDir(modelDir);
129
- const files = await readModelFiles({
130
- repoId: input.model.huggingfaceRepo,
131
- hfToken: input.hfToken,
132
- });
133
- input.onProgress?.({
134
- stage: "discover",
135
- totalFiles: files.length,
136
- });
137
- let downloadedFiles = 0;
138
- let skippedFiles = 0;
139
- const downloadedFilePaths = [];
140
- const skippedFilePaths = [];
141
- for (let i = 0; i < files.length; i += 1) {
142
- const filePath = files[i];
143
- const targetPath = resolveSafeTargetPath(modelDir, filePath);
144
- const exists = await fsExtra.pathExists(targetPath);
145
- if (exists && input.force !== true) {
146
- skippedFiles += 1;
147
- skippedFilePaths.push(filePath);
148
- input.onProgress?.({
149
- stage: "skip",
150
- filePath,
151
- index: i + 1,
152
- totalFiles: files.length,
153
- });
154
- continue;
155
- }
156
- input.onProgress?.({
157
- stage: "download_start",
158
- filePath,
159
- index: i + 1,
160
- totalFiles: files.length,
161
- });
162
- await downloadModelFile({
163
- repoId: input.model.huggingfaceRepo,
164
- revision: input.model.revision,
165
- filePath,
166
- targetPath,
167
- hfToken: input.hfToken,
168
- });
169
- downloadedFiles += 1;
170
- downloadedFilePaths.push(filePath);
171
- input.onProgress?.({
172
- stage: "download_done",
173
- filePath,
174
- index: i + 1,
175
- totalFiles: files.length,
176
- });
177
- }
178
- await fsExtra.writeJson(path.join(modelDir, "downcity.voice.install.json"), {
179
- modelId: input.model.id,
180
- label: input.model.label,
181
- repoId: input.model.huggingfaceRepo,
182
- revision: input.model.revision,
183
- installedAt: new Date().toISOString(),
184
- downloadedFiles,
185
- skippedFiles,
186
- }, { spaces: 2 });
187
- input.onProgress?.({
188
- stage: "manifest",
189
- });
190
- return {
191
- modelDir,
192
- downloadedFiles,
193
- skippedFiles,
194
- downloadedFilePaths,
195
- skippedFilePaths,
196
- repoId: input.model.huggingfaceRepo,
197
- revision: input.model.revision,
198
- };
199
- }
200
- //# sourceMappingURL=Installer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Installer.js","sourceRoot":"","sources":["../../../src/voice/runtime/Installer.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * 将相对路径解析为绝对路径;空值时回退默认目录。
3
- */
4
- export declare function resolveVoiceModelsRootDir(input: {
5
- projectRoot: string;
6
- modelsDir?: string;
7
- }): string;
8
- //# sourceMappingURL=Paths.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Paths.d.ts","sourceRoot":"","sources":["../../../src/voice/runtime/Paths.ts"],"names":[],"mappings":"AAaA;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAMT"}
@@ -1,26 +0,0 @@
1
- import path from "node:path";
2
- import os from "node:os";
3
- function expandHomePath(inputPath) {
4
- const raw = String(inputPath || "").trim();
5
- if (!raw)
6
- return raw;
7
- if (raw === "~")
8
- return os.homedir();
9
- if (raw.startsWith("~/")) {
10
- return path.join(os.homedir(), raw.slice(2));
11
- }
12
- return raw;
13
- }
14
- /**
15
- * 将相对路径解析为绝对路径;空值时回退默认目录。
16
- */
17
- export function resolveVoiceModelsRootDir(input) {
18
- const fallback = path.join(os.homedir(), ".downcity", "models", "voice");
19
- const raw = expandHomePath(String(input.modelsDir || fallback).trim());
20
- if (!raw)
21
- return path.resolve(fallback);
22
- if (path.isAbsolute(raw))
23
- return path.resolve(raw);
24
- return path.resolve(input.projectRoot, raw);
25
- }
26
- //# sourceMappingURL=Paths.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Paths.js","sourceRoot":"","sources":["../../../src/voice/runtime/Paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,SAAS,cAAc,CAAC,SAAiB;IACvC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,CAAC;IACrB,IAAI,GAAG,KAAK,GAAG;QAAE,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;IACrC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAGzC;IACC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACvE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AAC9C,CAAC"}
@@ -1,57 +0,0 @@
1
- import type { VoiceModelId, VoiceProvider } from "../../voice/types/Voice.js";
2
- import type { PluginCommandContext } from "@downcity/agent/internal/plugin/types/Plugin.js";
3
- /**
4
- * Voice 转写输入参数。
5
- */
6
- export interface VoiceTranscribeInput {
7
- /**
8
- * 运行时上下文(用于读取配置/根目录/日志)。
9
- */
10
- context: PluginCommandContext;
11
- /**
12
- * 待转写音频路径(相对项目根目录或绝对路径)。
13
- */
14
- audioPath: string;
15
- /**
16
- * 语言提示(可选)。
17
- */
18
- language?: string;
19
- }
20
- /**
21
- * Voice 转写输出结果。
22
- */
23
- export interface VoiceTranscribeResult {
24
- /**
25
- * 转写文本。
26
- */
27
- text: string;
28
- /**
29
- * 归一化后的音频绝对路径。
30
- */
31
- audioPath: string;
32
- /**
33
- * 本次使用的模型 ID。
34
- */
35
- modelId: VoiceModelId;
36
- /**
37
- * 本次使用的 provider。
38
- */
39
- provider: VoiceProvider;
40
- /**
41
- * 本次转写耗时(毫秒)。
42
- */
43
- elapsedMs: number;
44
- /**
45
- * 实际执行器标识。
46
- */
47
- runner: "funasr" | "transformers-whisper" | "command";
48
- }
49
- /**
50
- * 执行 ASR 音频转写。
51
- *
52
- * 关键点(中文)
53
- * - 该函数是 ASR plugin 对 chat 等 service 暴露的核心能力。
54
- * - 内置 runner 失败时会返回清晰报错,调用方可降级为附件流程。
55
- */
56
- export declare function transcribeVoiceAudio(input: VoiceTranscribeInput): Promise<VoiceTranscribeResult>;
57
- //# sourceMappingURL=Transcriber.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Transcriber.d.ts","sourceRoot":"","sources":["../../../src/voice/runtime/Transcriber.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EAEd,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AAM5F;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,EAAE,oBAAoB,CAAC;IAC9B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,QAAQ,GAAG,sBAAsB,GAAG,SAAS,CAAC;CACvD;AAuTD;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CAmFhC"}