@downcity/plugins 1.0.56 → 1.0.57

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 (201) hide show
  1. package/bin/BuiltinPlugins.d.ts.map +1 -1
  2. package/bin/BuiltinPlugins.js +0 -4
  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/image/ImagePlugin.d.ts +1 -1
  13. package/bin/image/ImagePlugin.d.ts.map +1 -1
  14. package/bin/image/ImagePlugin.js +23 -5
  15. package/bin/image/ImagePlugin.js.map +1 -1
  16. package/bin/index.d.ts +2 -0
  17. package/bin/index.d.ts.map +1 -1
  18. package/bin/tts/Plugin.d.ts +53 -6
  19. package/bin/tts/Plugin.d.ts.map +1 -1
  20. package/bin/tts/Plugin.js +197 -474
  21. package/bin/tts/Plugin.js.map +1 -1
  22. package/bin/tts/types/TtsPlugin.d.ts +63 -102
  23. package/bin/tts/types/TtsPlugin.d.ts.map +1 -1
  24. package/bin/tts/types/TtsPlugin.js +4 -3
  25. package/bin/tts/types/TtsPlugin.js.map +1 -1
  26. package/bin/web/PROMPT.d.ts +1 -1
  27. package/bin/web/PROMPT.d.ts.map +1 -1
  28. package/bin/web/PROMPT.js +1 -1
  29. package/bin/web/PROMPT.js.map +1 -1
  30. package/bin/web/Plugin.d.ts +66 -5
  31. package/bin/web/Plugin.d.ts.map +1 -1
  32. package/bin/web/Plugin.js +126 -450
  33. package/bin/web/Plugin.js.map +1 -1
  34. package/bin/web/WebPromptAssets.d.ts +1 -9
  35. package/bin/web/WebPromptAssets.d.ts.map +1 -1
  36. package/bin/web/WebPromptAssets.js +1 -11
  37. package/bin/web/WebPromptAssets.js.map +1 -1
  38. package/bin/web/runtime/Install.d.ts +19 -0
  39. package/bin/web/runtime/Install.d.ts.map +1 -0
  40. package/bin/web/runtime/Install.js +178 -0
  41. package/bin/web/runtime/Install.js.map +1 -0
  42. package/bin/web/types/WebPlugin.d.ts +37 -109
  43. package/bin/web/types/WebPlugin.d.ts.map +1 -1
  44. package/bin/web/types/WebPlugin.js +5 -7
  45. package/bin/web/types/WebPlugin.js.map +1 -1
  46. package/package.json +2 -2
  47. package/src/BuiltinPlugins.ts +0 -4
  48. package/src/asr/Plugin.ts +264 -483
  49. package/src/asr/types/AsrPlugin.ts +118 -0
  50. package/src/image/ImagePlugin.ts +23 -5
  51. package/src/index.ts +12 -0
  52. package/src/tts/Plugin.ts +225 -492
  53. package/src/tts/types/TtsPlugin.ts +67 -102
  54. package/src/web/PROMPT.ts +1 -1
  55. package/src/web/PROMPT.ts.txt +32 -6
  56. package/src/web/Plugin.ts +119 -453
  57. package/src/web/WebPromptAssets.ts +1 -13
  58. package/src/web/runtime/Install.ts +241 -0
  59. package/src/web/types/WebPlugin.ts +37 -113
  60. package/bin/asr/Config.d.ts +0 -43
  61. package/bin/asr/Config.d.ts.map +0 -1
  62. package/bin/asr/Config.js +0 -107
  63. package/bin/asr/Config.js.map +0 -1
  64. package/bin/asr/Dependency.d.ts +0 -77
  65. package/bin/asr/Dependency.d.ts.map +0 -1
  66. package/bin/asr/Dependency.js +0 -238
  67. package/bin/asr/Dependency.js.map +0 -1
  68. package/bin/asr/InboundAugment.d.ts +0 -17
  69. package/bin/asr/InboundAugment.d.ts.map +0 -1
  70. package/bin/asr/InboundAugment.js +0 -47
  71. package/bin/asr/InboundAugment.js.map +0 -1
  72. package/bin/asr/ModelCatalog.d.ts +0 -29
  73. package/bin/asr/ModelCatalog.d.ts.map +0 -1
  74. package/bin/asr/ModelCatalog.js +0 -25
  75. package/bin/asr/ModelCatalog.js.map +0 -1
  76. package/bin/tts/Dependency.d.ts +0 -90
  77. package/bin/tts/Dependency.d.ts.map +0 -1
  78. package/bin/tts/Dependency.js +0 -344
  79. package/bin/tts/Dependency.js.map +0 -1
  80. package/bin/tts/PluginSupport.d.ts +0 -25
  81. package/bin/tts/PluginSupport.d.ts.map +0 -1
  82. package/bin/tts/PluginSupport.js +0 -72
  83. package/bin/tts/PluginSupport.js.map +0 -1
  84. package/bin/tts/runtime/Catalog.d.ts +0 -21
  85. package/bin/tts/runtime/Catalog.d.ts.map +0 -1
  86. package/bin/tts/runtime/Catalog.js +0 -90
  87. package/bin/tts/runtime/Catalog.js.map +0 -1
  88. package/bin/tts/runtime/DependencyInstaller.d.ts +0 -143
  89. package/bin/tts/runtime/DependencyInstaller.d.ts.map +0 -1
  90. package/bin/tts/runtime/DependencyInstaller.js +0 -261
  91. package/bin/tts/runtime/DependencyInstaller.js.map +0 -1
  92. package/bin/tts/runtime/Installer.d.ts +0 -89
  93. package/bin/tts/runtime/Installer.d.ts.map +0 -1
  94. package/bin/tts/runtime/Installer.js +0 -188
  95. package/bin/tts/runtime/Installer.js.map +0 -1
  96. package/bin/tts/runtime/Paths.d.ts +0 -20
  97. package/bin/tts/runtime/Paths.d.ts.map +0 -1
  98. package/bin/tts/runtime/Paths.js +0 -32
  99. package/bin/tts/runtime/Paths.js.map +0 -1
  100. package/bin/tts/runtime/Synthesizer.d.ts +0 -44
  101. package/bin/tts/runtime/Synthesizer.d.ts.map +0 -1
  102. package/bin/tts/runtime/Synthesizer.js +0 -363
  103. package/bin/tts/runtime/Synthesizer.js.map +0 -1
  104. package/bin/tts/types/Tts.d.ts +0 -91
  105. package/bin/tts/types/Tts.d.ts.map +0 -1
  106. package/bin/tts/types/Tts.js +0 -9
  107. package/bin/tts/types/Tts.js.map +0 -1
  108. package/bin/voice/Config.d.ts +0 -43
  109. package/bin/voice/Config.d.ts.map +0 -1
  110. package/bin/voice/Config.js +0 -104
  111. package/bin/voice/Config.js.map +0 -1
  112. package/bin/voice/Dependency.d.ts +0 -77
  113. package/bin/voice/Dependency.d.ts.map +0 -1
  114. package/bin/voice/Dependency.js +0 -237
  115. package/bin/voice/Dependency.js.map +0 -1
  116. package/bin/voice/InboundAugment.d.ts +0 -17
  117. package/bin/voice/InboundAugment.d.ts.map +0 -1
  118. package/bin/voice/InboundAugment.js +0 -47
  119. package/bin/voice/InboundAugment.js.map +0 -1
  120. package/bin/voice/ModelCatalog.d.ts +0 -29
  121. package/bin/voice/ModelCatalog.d.ts.map +0 -1
  122. package/bin/voice/ModelCatalog.js +0 -25
  123. package/bin/voice/ModelCatalog.js.map +0 -1
  124. package/bin/voice/runtime/Catalog.d.ts +0 -18
  125. package/bin/voice/runtime/Catalog.d.ts.map +0 -1
  126. package/bin/voice/runtime/Catalog.js +0 -61
  127. package/bin/voice/runtime/Catalog.js.map +0 -1
  128. package/bin/voice/runtime/DependencyInstaller.d.ts +0 -145
  129. package/bin/voice/runtime/DependencyInstaller.d.ts.map +0 -1
  130. package/bin/voice/runtime/DependencyInstaller.js +0 -309
  131. package/bin/voice/runtime/DependencyInstaller.js.map +0 -1
  132. package/bin/voice/runtime/Installer.d.ts +0 -94
  133. package/bin/voice/runtime/Installer.d.ts.map +0 -1
  134. package/bin/voice/runtime/Installer.js +0 -200
  135. package/bin/voice/runtime/Installer.js.map +0 -1
  136. package/bin/voice/runtime/Paths.d.ts +0 -8
  137. package/bin/voice/runtime/Paths.d.ts.map +0 -1
  138. package/bin/voice/runtime/Paths.js +0 -26
  139. package/bin/voice/runtime/Paths.js.map +0 -1
  140. package/bin/voice/runtime/Transcriber.d.ts +0 -57
  141. package/bin/voice/runtime/Transcriber.d.ts.map +0 -1
  142. package/bin/voice/runtime/Transcriber.js +0 -329
  143. package/bin/voice/runtime/Transcriber.js.map +0 -1
  144. package/bin/voice/types/Voice.d.ts +0 -58
  145. package/bin/voice/types/Voice.d.ts.map +0 -1
  146. package/bin/voice/types/Voice.js +0 -9
  147. package/bin/voice/types/Voice.js.map +0 -1
  148. package/bin/voice/types/VoicePlugin.d.ts +0 -190
  149. package/bin/voice/types/VoicePlugin.d.ts.map +0 -1
  150. package/bin/voice/types/VoicePlugin.js +0 -9
  151. package/bin/voice/types/VoicePlugin.js.map +0 -1
  152. package/bin/web/Dependency.d.ts +0 -10
  153. package/bin/web/Dependency.d.ts.map +0 -1
  154. package/bin/web/Dependency.js +0 -10
  155. package/bin/web/Dependency.js.map +0 -1
  156. package/bin/web/PROMPT.agent-browser.d.ts +0 -7
  157. package/bin/web/PROMPT.agent-browser.d.ts.map +0 -1
  158. package/bin/web/PROMPT.agent-browser.js +0 -8
  159. package/bin/web/PROMPT.agent-browser.js.map +0 -1
  160. package/bin/web/PROMPT.web-access.d.ts +0 -7
  161. package/bin/web/PROMPT.web-access.d.ts.map +0 -1
  162. package/bin/web/PROMPT.web-access.js +0 -8
  163. package/bin/web/PROMPT.web-access.js.map +0 -1
  164. package/bin/web/runtime/Config.d.ts +0 -21
  165. package/bin/web/runtime/Config.d.ts.map +0 -1
  166. package/bin/web/runtime/Config.js +0 -79
  167. package/bin/web/runtime/Config.js.map +0 -1
  168. package/bin/web/runtime/Source.d.ts +0 -29
  169. package/bin/web/runtime/Source.d.ts.map +0 -1
  170. package/bin/web/runtime/Source.js +0 -209
  171. package/bin/web/runtime/Source.js.map +0 -1
  172. package/src/asr/Config.ts +0 -138
  173. package/src/asr/Dependency.ts +0 -336
  174. package/src/asr/InboundAugment.ts +0 -59
  175. package/src/asr/ModelCatalog.ts +0 -43
  176. package/src/tts/Dependency.ts +0 -473
  177. package/src/tts/PluginSupport.ts +0 -85
  178. package/src/tts/runtime/Catalog.ts +0 -97
  179. package/src/tts/runtime/DependencyInstaller.ts +0 -436
  180. package/src/tts/runtime/Installer.ts +0 -297
  181. package/src/tts/runtime/Paths.ts +0 -39
  182. package/src/tts/runtime/Synthesizer.ts +0 -480
  183. package/src/tts/types/Tts.ts +0 -99
  184. package/src/voice/Config.ts +0 -135
  185. package/src/voice/Dependency.ts +0 -329
  186. package/src/voice/InboundAugment.ts +0 -59
  187. package/src/voice/ModelCatalog.ts +0 -43
  188. package/src/voice/runtime/Catalog.ts +0 -68
  189. package/src/voice/runtime/DependencyInstaller.ts +0 -505
  190. package/src/voice/runtime/Installer.ts +0 -324
  191. package/src/voice/runtime/Paths.ts +0 -26
  192. package/src/voice/runtime/Transcriber.ts +0 -467
  193. package/src/voice/types/Voice.ts +0 -68
  194. package/src/voice/types/VoicePlugin.ts +0 -194
  195. package/src/web/Dependency.ts +0 -17
  196. package/src/web/PROMPT.agent-browser.ts +0 -9
  197. package/src/web/PROMPT.agent-browser.ts.txt +0 -17
  198. package/src/web/PROMPT.web-access.ts +0 -9
  199. package/src/web/PROMPT.web-access.ts.txt +0 -13
  200. package/src/web/runtime/Config.ts +0 -105
  201. package/src/web/runtime/Source.ts +0 -257
package/bin/web/Plugin.js CHANGED
@@ -1,485 +1,161 @@
1
1
  /**
2
- * Web Plugin。
2
+ * WebPlugin:联网方法论注入插件。
3
3
  *
4
4
  * 关键点(中文)
5
- * - `web` plugin 不再自实现联网与浏览器能力,只负责 provider 选择、状态检查与提示词注入。
6
- * - 真正的联网逻辑直接交给外部实现:`web-access` `agent-browser`。
5
+ * - web plugin 不选择 provider,也不持久化 provider 运行态。
6
+ * - install action 只负责准备联网相关 skill / CLI 依赖。
7
+ * - 它只通过 `system()` 注入联网研究与浏览器使用方法论。
8
+ * - 具体执行能力由当前 agent 已注册的 tools、skills 或外部 plugin 决定。
7
9
  */
8
10
  import { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
9
- import { WEB_PLUGIN_DEFAULT_REPOSITORY_URL } from "../web/types/WebPlugin.js";
10
- import { isPluginEnabled } from "@downcity/agent/internal/plugin/core/Activation.js";
11
- import { writeProjectPluginEnabled } from "@downcity/agent/internal/plugin/core/ProjectConfigStore.js";
12
- import { doctorWebPluginDependency, inspectWebPluginDependency, installWebPluginDependency, readWebPluginConfig, writeWebPluginConfig, } from "../web/Dependency.js";
13
- import { AGENT_BROWSER_PROMPT, WEB_ACCESS_PROMPT, WEB_PLUGIN_PROMPT, } from "../web/WebPromptAssets.js";
14
- function toJsonObject(input) {
15
- const out = {};
16
- if (!input)
17
- return out;
18
- for (const [key, value] of Object.entries(input)) {
19
- if (value === null ||
20
- typeof value === "string" ||
21
- typeof value === "number" ||
22
- typeof value === "boolean") {
23
- out[key] = value;
24
- }
25
- }
26
- return out;
27
- }
28
- function getStringOpt(opts, key) {
11
+ import { WEB_PLUGIN_PROMPT } from "../web/WebPromptAssets.js";
12
+ import { installWebPluginTargets } from "../web/runtime/Install.js";
13
+ /**
14
+ * 读取字符串选项。
15
+ */
16
+ function get_string_opt(opts, key) {
29
17
  const value = opts[key];
30
18
  if (typeof value !== "string")
31
19
  return undefined;
32
20
  const trimmed = value.trim();
33
21
  return trimmed || undefined;
34
22
  }
35
- function getBooleanOpt(opts, key, defaultValue) {
23
+ /**
24
+ * 读取布尔选项。
25
+ */
26
+ function get_boolean_opt(opts, key) {
36
27
  const value = opts[key];
37
- if (typeof value === "boolean")
38
- return value;
39
- if (typeof value === "string") {
40
- const normalized = value.trim().toLowerCase();
41
- if (["1", "true", "yes", "y", "on"].includes(normalized))
42
- return true;
43
- if (["0", "false", "no", "n", "off"].includes(normalized))
44
- return false;
45
- }
46
- return defaultValue;
28
+ return typeof value === "boolean" ? value : undefined;
47
29
  }
48
- function getWebProviderOpt(opts, key) {
49
- const value = getStringOpt(opts, key);
50
- if (value === "web-access" || value === "agent-browser")
30
+ /**
31
+ * 读取安装目标。
32
+ */
33
+ function get_install_target_opt(opts) {
34
+ const value = get_string_opt(opts, "target");
35
+ if (value === "web-access" || value === "agent-browser" || value === "all") {
51
36
  return value;
37
+ }
52
38
  return undefined;
53
39
  }
54
- function getInstallScopeOpt(opts, key) {
55
- const value = getStringOpt(opts, key);
40
+ /**
41
+ * 读取安装作用域。
42
+ */
43
+ function get_install_scope_opt(opts) {
44
+ const value = get_string_opt(opts, "scope");
56
45
  if (value === "user" || value === "project")
57
46
  return value;
58
47
  return undefined;
59
48
  }
60
- function createWebPluginDefinition(plugin) {
61
- return {
62
- name: "web",
63
- title: "Web Access",
64
- description: "Connects the agent to either web-access or agent-browser, checks provider readiness, and injects the matching guidance into the runtime prompt.",
65
- config: {
66
- plugin: "web",
67
- scope: "project",
68
- defaultValue: {
69
- provider: "web-access",
70
- injectPrompt: true,
71
- repositoryUrl: WEB_PLUGIN_DEFAULT_REPOSITORY_URL,
72
- sourceVersion: "2.4.1",
73
- browserCommand: "agent-browser",
74
- installScope: "user",
75
- },
76
- },
77
- setup: {
78
- mode: "install-configure",
79
- title: "安装联网 Provider",
80
- description: "把 provider 安装到统一 skill 目录,并同步当前配置。",
81
- fields: [
82
- {
83
- key: "provider",
84
- label: "联网方法",
85
- type: "select",
86
- required: true,
87
- sourceAction: "providers",
88
- },
89
- {
90
- key: "installScope",
91
- label: "安装位置",
92
- type: "select",
93
- required: true,
94
- options: [
95
- { label: "用户目录", value: "user", hint: "~/.agents/skills" },
96
- { label: "项目目录", value: "project", hint: "PROJECT/.agents/skills" },
97
- ],
98
- },
99
- {
100
- key: "injectPrompt",
101
- label: "注入 provider 提示词",
102
- type: "checkbox",
103
- },
104
- ],
105
- primaryAction: "install",
106
- statusAction: "status",
107
- },
108
- usage: {
109
- title: "配置联网方式",
110
- description: "选择当前 agent 默认使用的联网 provider 与提示词注入策略。",
111
- fields: [
112
- {
113
- key: "provider",
114
- label: "当前 Provider",
115
- type: "select",
116
- required: true,
117
- sourceAction: "providers",
118
- },
119
- {
120
- key: "injectPrompt",
121
- label: "注入 Provider 提示词",
122
- type: "boolean",
123
- trueLabel: "开启",
124
- falseLabel: "关闭",
125
- description: "开启后,agent system prompt 会自动注入当前 provider 的使用约束。",
126
- },
127
- {
128
- key: "browserCommand",
129
- label: "Browser 命令",
130
- type: "string",
131
- placeholder: "agent-browser",
132
- description: "仅在 provider 为 agent-browser 时生效。",
133
- },
134
- ],
135
- saveAction: "configure",
136
- statusAction: "status",
137
- },
138
- async availability(context) {
139
- if (!isPluginEnabled({ plugin, context })) {
140
- return {
141
- enabled: false,
142
- available: false,
143
- reasons: ["web plugin disabled in project config"],
144
- };
145
- }
146
- const dependency = await inspectWebPluginDependency(context);
147
- return {
148
- enabled: true,
149
- available: dependency.available,
150
- reasons: dependency.reasons,
151
- };
152
- },
153
- actions: {
154
- status: {
155
- allowWhenDisabled: true,
156
- command: {
157
- description: "查看 web plugin 当前状态",
158
- mapInput() {
159
- return {};
160
- },
161
- },
162
- execute: async ({ context }) => {
163
- const config = readWebPluginConfig(context);
164
- const availability = await plugin.availability(context);
165
- const source = await inspectWebPluginDependency(context);
166
- return {
167
- success: true,
168
- data: {
169
- plugin: toJsonObject(config),
170
- availability: {
171
- enabled: availability.enabled,
172
- available: availability.available,
173
- reasons: availability.reasons,
174
- },
175
- provider: source.details || null,
176
- },
177
- };
178
- },
179
- },
180
- providers: {
181
- allowWhenDisabled: true,
182
- command: {
183
- description: "列出 web plugin 支持的 provider",
184
- mapInput() {
185
- return {};
186
- },
187
- },
188
- execute: async () => {
189
- return {
190
- success: true,
191
- data: {
192
- options: [
193
- {
194
- value: "web-access",
195
- title: "web-access",
196
- description: "适合网页搜索、信息查证与策略型联网任务",
197
- },
198
- {
199
- value: "agent-browser",
200
- title: "agent-browser",
201
- description: "适合动态页面、登录态页面与真实浏览器操作",
202
- },
203
- ],
204
- providers: [
205
- {
206
- value: "web-access",
207
- title: "web-access",
208
- description: "适合网页搜索、信息查证与策略型联网任务",
209
- },
210
- {
211
- value: "agent-browser",
212
- title: "agent-browser",
213
- description: "适合动态页面、登录态页面与真实浏览器操作",
214
- },
215
- ],
216
- },
217
- };
218
- },
219
- },
220
- configure: {
221
- allowWhenDisabled: true,
222
- execute: async ({ context, payload }) => {
223
- const payloadObject = payload && typeof payload === "object" && !Array.isArray(payload)
224
- ? payload
225
- : {};
226
- const { enabled: _ignoredEnabled, enable: _ignoredEnable, ...patch } = payloadObject;
227
- const nextConfig = await writeWebPluginConfig({
228
- context,
229
- value: patch,
230
- });
231
- return {
232
- success: true,
233
- data: {
234
- plugin: toJsonObject(nextConfig),
235
- },
236
- };
237
- },
238
- },
239
- install: {
240
- allowWhenDisabled: true,
241
- command: {
242
- description: "安装当前 provider 对应的 skill,并写入配置",
243
- configure(command) {
244
- command
245
- .option("--provider <provider>", "web-access 或 agent-browser")
246
- .option("--repo <url>", "记录来源仓库地址")
247
- .option("--version <version>", "记录来源版本")
248
- .option("--browser-command <command>", "agent-browser 命令名")
249
- .option("--scope <scope>", "安装位置:user 或 project")
250
- .option("--no-inject-prompt", "关闭 provider 提示词注入");
251
- },
252
- mapInput({ opts }) {
253
- return {
254
- ...(getWebProviderOpt(opts, "provider")
255
- ? { provider: getWebProviderOpt(opts, "provider") }
256
- : {}),
257
- ...(getStringOpt(opts, "repo")
258
- ? { repositoryUrl: getStringOpt(opts, "repo") }
259
- : {}),
260
- ...(getStringOpt(opts, "version")
261
- ? { sourceVersion: getStringOpt(opts, "version") }
262
- : {}),
263
- ...(getStringOpt(opts, "browserCommand")
264
- ? { browserCommand: getStringOpt(opts, "browserCommand") }
265
- : {}),
266
- ...(getInstallScopeOpt(opts, "scope")
267
- ? { installScope: getInstallScopeOpt(opts, "scope") }
268
- : {}),
269
- injectPrompt: getBooleanOpt(opts, "injectPrompt", true),
270
- };
49
+ /**
50
+ * WebPlugin:为 agent 注入联网任务的方法论。
51
+ */
52
+ export class WebPlugin extends BasePlugin {
53
+ /**
54
+ * 当前 plugin 稳定名称。
55
+ */
56
+ name = "web";
57
+ /**
58
+ * 插件标题。
59
+ */
60
+ title = "Web Methodology";
61
+ /**
62
+ * 插件说明。
63
+ */
64
+ description = "Injects web research and browser-use methodology for agents.";
65
+ /**
66
+ * setup 面板:只准备联网相关依赖,不做 provider 配置。
67
+ */
68
+ setup = {
69
+ mode: "install",
70
+ title: "安装联网能力",
71
+ description: "安装 web-access、agent-browser 等联网相关 skill / CLI 依赖;不改变 agent 的运行时默认选择。",
72
+ fields: [
73
+ {
74
+ key: "target",
75
+ label: "联网能力",
76
+ type: "select",
77
+ required: true,
78
+ options: [
79
+ {
80
+ label: "web-access",
81
+ value: "web-access",
82
+ hint: "通用搜索、抓取与资料核实 skill",
271
83
  },
272
- },
273
- execute: async ({ context, payload }) => {
274
- const result = await installWebPluginDependency({
275
- context,
276
- input: payload && typeof payload === "object" && !Array.isArray(payload)
277
- ? payload
278
- : undefined,
279
- });
280
- return {
281
- success: result.success,
282
- ...(result.details ? { data: result.details } : {}),
283
- ...(result.message ? { message: result.message } : {}),
284
- };
285
- },
286
- },
287
- on: {
288
- allowWhenDisabled: true,
289
- command: {
290
- description: "启用 web plugin,并可选设置 provider",
291
- configure(command) {
292
- command
293
- .option("--provider <provider>", "web-access 或 agent-browser")
294
- .option("--repo <url>", "记录来源仓库地址")
295
- .option("--version <version>", "记录来源版本")
296
- .option("--browser-command <command>", "agent-browser 命令名")
297
- .option("--no-inject-prompt", "关闭 provider 提示词注入");
84
+ {
85
+ label: "agent-browser",
86
+ value: "agent-browser",
87
+ hint: "浏览器自动化 skill,并准备 agent-browser CLI",
298
88
  },
299
- mapInput({ opts }) {
300
- return {
301
- ...(getWebProviderOpt(opts, "provider")
302
- ? { provider: getWebProviderOpt(opts, "provider") }
303
- : {}),
304
- ...(getStringOpt(opts, "repo")
305
- ? { repositoryUrl: getStringOpt(opts, "repo") }
306
- : {}),
307
- ...(getStringOpt(opts, "version")
308
- ? { sourceVersion: getStringOpt(opts, "version") }
309
- : {}),
310
- ...(getStringOpt(opts, "browserCommand")
311
- ? { browserCommand: getStringOpt(opts, "browserCommand") }
312
- : {}),
313
- injectPrompt: getBooleanOpt(opts, "injectPrompt", true),
314
- };
89
+ {
90
+ label: "全部",
91
+ value: "all",
92
+ hint: "同时准备 web-access agent-browser",
315
93
  },
316
- },
317
- execute: async ({ context, payload }) => {
318
- await writeProjectPluginEnabled({
319
- pluginName: "web",
320
- enabled: true,
321
- context,
322
- });
323
- const providerRaw = String(payload.provider || "").trim();
324
- const provider = providerRaw === "web-access" || providerRaw === "agent-browser"
325
- ? providerRaw
326
- : undefined;
327
- const nextConfig = await writeWebPluginConfig({
328
- context,
329
- value: {
330
- ...readWebPluginConfig(context),
331
- ...(provider ? { provider } : {}),
332
- injectPrompt: typeof payload.injectPrompt === "boolean"
333
- ? Boolean(payload.injectPrompt)
334
- : true,
335
- ...(typeof payload.repositoryUrl === "string"
336
- ? { repositoryUrl: String(payload.repositoryUrl) }
337
- : {}),
338
- ...(typeof payload.sourceVersion === "string"
339
- ? { sourceVersion: String(payload.sourceVersion) }
340
- : {}),
341
- ...(typeof payload.browserCommand === "string"
342
- ? { browserCommand: String(payload.browserCommand) }
343
- : {}),
344
- },
345
- });
346
- return {
347
- success: true,
348
- data: {
349
- plugin: toJsonObject(nextConfig),
350
- },
351
- };
352
- },
94
+ ],
353
95
  },
354
- off: {
355
- command: {
356
- description: "关闭 web plugin",
357
- mapInput() {
358
- return {};
359
- },
360
- },
361
- execute: async ({ context }) => {
362
- await writeProjectPluginEnabled({
363
- pluginName: "web",
364
- enabled: false,
365
- context,
366
- });
367
- return {
368
- success: true,
369
- data: {
370
- plugin: toJsonObject(readWebPluginConfig(context)),
371
- },
372
- };
373
- },
96
+ {
97
+ key: "scope",
98
+ label: "安装位置",
99
+ type: "select",
100
+ required: true,
101
+ options: [
102
+ { label: "用户目录", value: "user", hint: "用户级 skill / 全局 CLI" },
103
+ { label: "项目目录", value: "project", hint: "项目级 skill / devDependency" },
104
+ ],
374
105
  },
375
- use: {
376
- allowWhenDisabled: true,
377
- command: {
378
- description: "切换 web plugin 当前 provider",
379
- configure(command) {
380
- command
381
- .argument("<provider>")
382
- .option("--browser-command <command>", "agent-browser 命令名")
383
- .option("--no-inject-prompt", "关闭 provider 提示词注入");
384
- },
385
- mapInput({ args, opts }) {
386
- const provider = String(args[0] || "").trim();
387
- if (!provider)
388
- throw new Error("provider is required");
389
- return {
390
- provider,
391
- ...(getStringOpt(opts, "browserCommand")
392
- ? { browserCommand: getStringOpt(opts, "browserCommand") }
393
- : {}),
394
- injectPrompt: getBooleanOpt(opts, "injectPrompt", true),
395
- };
396
- },
397
- },
398
- execute: async ({ context, payload }) => {
399
- const provider = String(payload.provider || "").trim();
400
- if (provider !== "web-access" && provider !== "agent-browser") {
401
- return {
402
- success: false,
403
- error: `Unsupported web provider: ${provider}`,
404
- message: `Unsupported web provider: ${provider}`,
405
- };
406
- }
407
- const nextConfig = await writeWebPluginConfig({
408
- context,
409
- value: {
410
- ...readWebPluginConfig(context),
411
- provider,
412
- injectPrompt: typeof payload.injectPrompt === "boolean"
413
- ? Boolean(payload.injectPrompt)
414
- : true,
415
- ...(typeof payload.browserCommand === "string"
416
- ? { browserCommand: String(payload.browserCommand) }
417
- : {}),
418
- },
419
- });
106
+ ],
107
+ primaryAction: "install",
108
+ };
109
+ /**
110
+ * WebPlugin 对外 action。
111
+ */
112
+ actions = {
113
+ install: {
114
+ allowWhenDisabled: true,
115
+ command: {
116
+ description: "安装联网相关 skill / CLI 依赖",
117
+ configure(command) {
118
+ command
119
+ .option("--target <target>", "web-access、agent-browser all")
120
+ .option("--scope <scope>", "安装位置:user 或 project")
121
+ .option("-y, --yes", "跳过确认(默认 true)", true)
122
+ .option("--agent <agent>", "skill installer 目标 agent", "claude-code");
123
+ },
124
+ mapInput({ opts }) {
420
125
  return {
421
- success: true,
422
- data: {
423
- plugin: toJsonObject(nextConfig),
424
- },
126
+ ...(get_install_target_opt(opts)
127
+ ? { target: get_install_target_opt(opts) }
128
+ : {}),
129
+ ...(get_install_scope_opt(opts)
130
+ ? { scope: get_install_scope_opt(opts) }
131
+ : {}),
132
+ ...(typeof get_boolean_opt(opts, "yes") === "boolean"
133
+ ? { yes: get_boolean_opt(opts, "yes") }
134
+ : {}),
135
+ ...(get_string_opt(opts, "agent") ? { agent: get_string_opt(opts, "agent") } : {}),
425
136
  };
426
137
  },
427
138
  },
428
- doctor: {
429
- allowWhenDisabled: true,
430
- command: {
431
- description: "检查当前 provider 是否已就绪",
432
- mapInput() {
433
- return {};
434
- },
435
- },
436
- execute: async ({ context }) => {
437
- const availability = await plugin.availability(context);
438
- const dependency = await doctorWebPluginDependency(context);
439
- return {
440
- success: true,
441
- data: {
442
- availability: {
443
- enabled: availability.enabled,
444
- available: availability.available,
445
- reasons: availability.reasons,
446
- },
447
- provider: dependency.details || null,
448
- },
449
- message: dependency.available
450
- ? "web provider is available"
451
- : dependency.reasons.join("; ") || "web provider is not available",
452
- };
453
- },
139
+ execute: async ({ context, payload }) => {
140
+ const data = await installWebPluginTargets({
141
+ context,
142
+ payload: payload && typeof payload === "object" && !Array.isArray(payload)
143
+ ? payload
144
+ : undefined,
145
+ });
146
+ return {
147
+ success: true,
148
+ data,
149
+ message: "web dependencies installed",
150
+ };
454
151
  },
455
152
  },
456
- system(context) {
457
- const config = readWebPluginConfig(context);
458
- if (!isPluginEnabled({ plugin, context }) || !config.injectPrompt) {
459
- return "";
460
- }
461
- const providerPrompt = config.provider === "agent-browser" ? AGENT_BROWSER_PROMPT : WEB_ACCESS_PROMPT;
462
- return [
463
- `Current web provider: ${config.provider}`,
464
- config.provider === "agent-browser"
465
- ? `Use the configured agent-browser provider: ${config.browserCommand}`
466
- : "Use the installed external web-access skill/project.",
467
- "",
468
- WEB_PLUGIN_PROMPT,
469
- "",
470
- providerPrompt,
471
- ].join("\n");
472
- },
473
153
  };
474
- }
475
- /**
476
- * WebPlugin:provider 选择器与提示词适配层。
477
- */
478
- export class WebPlugin extends BasePlugin {
479
- name = "web";
480
- constructor() {
481
- super();
482
- Object.assign(this, createWebPluginDefinition(this));
154
+ /**
155
+ * 注入联网方法论提示词。
156
+ */
157
+ system(_context) {
158
+ return WEB_PLUGIN_PROMPT;
483
159
  }
484
160
  }
485
161
  //# sourceMappingURL=Plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"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"}