@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.
- package/bin/BuiltinPlugins.d.ts.map +1 -1
- package/bin/BuiltinPlugins.js +0 -4
- package/bin/BuiltinPlugins.js.map +1 -1
- package/bin/asr/Plugin.d.ts +67 -7
- package/bin/asr/Plugin.d.ts.map +1 -1
- package/bin/asr/Plugin.js +229 -461
- package/bin/asr/Plugin.js.map +1 -1
- package/bin/asr/types/AsrPlugin.d.ts +114 -0
- package/bin/asr/types/AsrPlugin.d.ts.map +1 -0
- package/bin/asr/types/AsrPlugin.js +10 -0
- package/bin/asr/types/AsrPlugin.js.map +1 -0
- package/bin/image/ImagePlugin.d.ts +1 -1
- package/bin/image/ImagePlugin.d.ts.map +1 -1
- package/bin/image/ImagePlugin.js +23 -5
- package/bin/image/ImagePlugin.js.map +1 -1
- package/bin/index.d.ts +2 -0
- package/bin/index.d.ts.map +1 -1
- package/bin/tts/Plugin.d.ts +53 -6
- package/bin/tts/Plugin.d.ts.map +1 -1
- package/bin/tts/Plugin.js +197 -474
- package/bin/tts/Plugin.js.map +1 -1
- package/bin/tts/types/TtsPlugin.d.ts +63 -102
- package/bin/tts/types/TtsPlugin.d.ts.map +1 -1
- package/bin/tts/types/TtsPlugin.js +4 -3
- package/bin/tts/types/TtsPlugin.js.map +1 -1
- package/bin/web/PROMPT.d.ts +1 -1
- package/bin/web/PROMPT.d.ts.map +1 -1
- package/bin/web/PROMPT.js +1 -1
- package/bin/web/PROMPT.js.map +1 -1
- package/bin/web/Plugin.d.ts +66 -5
- package/bin/web/Plugin.d.ts.map +1 -1
- package/bin/web/Plugin.js +126 -450
- package/bin/web/Plugin.js.map +1 -1
- package/bin/web/WebPromptAssets.d.ts +1 -9
- package/bin/web/WebPromptAssets.d.ts.map +1 -1
- package/bin/web/WebPromptAssets.js +1 -11
- package/bin/web/WebPromptAssets.js.map +1 -1
- package/bin/web/runtime/Install.d.ts +19 -0
- package/bin/web/runtime/Install.d.ts.map +1 -0
- package/bin/web/runtime/Install.js +178 -0
- package/bin/web/runtime/Install.js.map +1 -0
- package/bin/web/types/WebPlugin.d.ts +37 -109
- package/bin/web/types/WebPlugin.d.ts.map +1 -1
- package/bin/web/types/WebPlugin.js +5 -7
- package/bin/web/types/WebPlugin.js.map +1 -1
- package/package.json +2 -2
- package/src/BuiltinPlugins.ts +0 -4
- package/src/asr/Plugin.ts +264 -483
- package/src/asr/types/AsrPlugin.ts +118 -0
- package/src/image/ImagePlugin.ts +23 -5
- package/src/index.ts +12 -0
- package/src/tts/Plugin.ts +225 -492
- package/src/tts/types/TtsPlugin.ts +67 -102
- package/src/web/PROMPT.ts +1 -1
- package/src/web/PROMPT.ts.txt +32 -6
- package/src/web/Plugin.ts +119 -453
- package/src/web/WebPromptAssets.ts +1 -13
- package/src/web/runtime/Install.ts +241 -0
- package/src/web/types/WebPlugin.ts +37 -113
- package/bin/asr/Config.d.ts +0 -43
- package/bin/asr/Config.d.ts.map +0 -1
- package/bin/asr/Config.js +0 -107
- package/bin/asr/Config.js.map +0 -1
- package/bin/asr/Dependency.d.ts +0 -77
- package/bin/asr/Dependency.d.ts.map +0 -1
- package/bin/asr/Dependency.js +0 -238
- package/bin/asr/Dependency.js.map +0 -1
- package/bin/asr/InboundAugment.d.ts +0 -17
- package/bin/asr/InboundAugment.d.ts.map +0 -1
- package/bin/asr/InboundAugment.js +0 -47
- package/bin/asr/InboundAugment.js.map +0 -1
- package/bin/asr/ModelCatalog.d.ts +0 -29
- package/bin/asr/ModelCatalog.d.ts.map +0 -1
- package/bin/asr/ModelCatalog.js +0 -25
- package/bin/asr/ModelCatalog.js.map +0 -1
- package/bin/tts/Dependency.d.ts +0 -90
- package/bin/tts/Dependency.d.ts.map +0 -1
- package/bin/tts/Dependency.js +0 -344
- package/bin/tts/Dependency.js.map +0 -1
- package/bin/tts/PluginSupport.d.ts +0 -25
- package/bin/tts/PluginSupport.d.ts.map +0 -1
- package/bin/tts/PluginSupport.js +0 -72
- package/bin/tts/PluginSupport.js.map +0 -1
- package/bin/tts/runtime/Catalog.d.ts +0 -21
- package/bin/tts/runtime/Catalog.d.ts.map +0 -1
- package/bin/tts/runtime/Catalog.js +0 -90
- package/bin/tts/runtime/Catalog.js.map +0 -1
- package/bin/tts/runtime/DependencyInstaller.d.ts +0 -143
- package/bin/tts/runtime/DependencyInstaller.d.ts.map +0 -1
- package/bin/tts/runtime/DependencyInstaller.js +0 -261
- package/bin/tts/runtime/DependencyInstaller.js.map +0 -1
- package/bin/tts/runtime/Installer.d.ts +0 -89
- package/bin/tts/runtime/Installer.d.ts.map +0 -1
- package/bin/tts/runtime/Installer.js +0 -188
- package/bin/tts/runtime/Installer.js.map +0 -1
- package/bin/tts/runtime/Paths.d.ts +0 -20
- package/bin/tts/runtime/Paths.d.ts.map +0 -1
- package/bin/tts/runtime/Paths.js +0 -32
- package/bin/tts/runtime/Paths.js.map +0 -1
- package/bin/tts/runtime/Synthesizer.d.ts +0 -44
- package/bin/tts/runtime/Synthesizer.d.ts.map +0 -1
- package/bin/tts/runtime/Synthesizer.js +0 -363
- package/bin/tts/runtime/Synthesizer.js.map +0 -1
- package/bin/tts/types/Tts.d.ts +0 -91
- package/bin/tts/types/Tts.d.ts.map +0 -1
- package/bin/tts/types/Tts.js +0 -9
- package/bin/tts/types/Tts.js.map +0 -1
- package/bin/voice/Config.d.ts +0 -43
- package/bin/voice/Config.d.ts.map +0 -1
- package/bin/voice/Config.js +0 -104
- package/bin/voice/Config.js.map +0 -1
- package/bin/voice/Dependency.d.ts +0 -77
- package/bin/voice/Dependency.d.ts.map +0 -1
- package/bin/voice/Dependency.js +0 -237
- package/bin/voice/Dependency.js.map +0 -1
- package/bin/voice/InboundAugment.d.ts +0 -17
- package/bin/voice/InboundAugment.d.ts.map +0 -1
- package/bin/voice/InboundAugment.js +0 -47
- package/bin/voice/InboundAugment.js.map +0 -1
- package/bin/voice/ModelCatalog.d.ts +0 -29
- package/bin/voice/ModelCatalog.d.ts.map +0 -1
- package/bin/voice/ModelCatalog.js +0 -25
- package/bin/voice/ModelCatalog.js.map +0 -1
- package/bin/voice/runtime/Catalog.d.ts +0 -18
- package/bin/voice/runtime/Catalog.d.ts.map +0 -1
- package/bin/voice/runtime/Catalog.js +0 -61
- package/bin/voice/runtime/Catalog.js.map +0 -1
- package/bin/voice/runtime/DependencyInstaller.d.ts +0 -145
- package/bin/voice/runtime/DependencyInstaller.d.ts.map +0 -1
- package/bin/voice/runtime/DependencyInstaller.js +0 -309
- package/bin/voice/runtime/DependencyInstaller.js.map +0 -1
- package/bin/voice/runtime/Installer.d.ts +0 -94
- package/bin/voice/runtime/Installer.d.ts.map +0 -1
- package/bin/voice/runtime/Installer.js +0 -200
- package/bin/voice/runtime/Installer.js.map +0 -1
- package/bin/voice/runtime/Paths.d.ts +0 -8
- package/bin/voice/runtime/Paths.d.ts.map +0 -1
- package/bin/voice/runtime/Paths.js +0 -26
- package/bin/voice/runtime/Paths.js.map +0 -1
- package/bin/voice/runtime/Transcriber.d.ts +0 -57
- package/bin/voice/runtime/Transcriber.d.ts.map +0 -1
- package/bin/voice/runtime/Transcriber.js +0 -329
- package/bin/voice/runtime/Transcriber.js.map +0 -1
- package/bin/voice/types/Voice.d.ts +0 -58
- package/bin/voice/types/Voice.d.ts.map +0 -1
- package/bin/voice/types/Voice.js +0 -9
- package/bin/voice/types/Voice.js.map +0 -1
- package/bin/voice/types/VoicePlugin.d.ts +0 -190
- package/bin/voice/types/VoicePlugin.d.ts.map +0 -1
- package/bin/voice/types/VoicePlugin.js +0 -9
- package/bin/voice/types/VoicePlugin.js.map +0 -1
- package/bin/web/Dependency.d.ts +0 -10
- package/bin/web/Dependency.d.ts.map +0 -1
- package/bin/web/Dependency.js +0 -10
- package/bin/web/Dependency.js.map +0 -1
- package/bin/web/PROMPT.agent-browser.d.ts +0 -7
- package/bin/web/PROMPT.agent-browser.d.ts.map +0 -1
- package/bin/web/PROMPT.agent-browser.js +0 -8
- package/bin/web/PROMPT.agent-browser.js.map +0 -1
- package/bin/web/PROMPT.web-access.d.ts +0 -7
- package/bin/web/PROMPT.web-access.d.ts.map +0 -1
- package/bin/web/PROMPT.web-access.js +0 -8
- package/bin/web/PROMPT.web-access.js.map +0 -1
- package/bin/web/runtime/Config.d.ts +0 -21
- package/bin/web/runtime/Config.d.ts.map +0 -1
- package/bin/web/runtime/Config.js +0 -79
- package/bin/web/runtime/Config.js.map +0 -1
- package/bin/web/runtime/Source.d.ts +0 -29
- package/bin/web/runtime/Source.d.ts.map +0 -1
- package/bin/web/runtime/Source.js +0 -209
- package/bin/web/runtime/Source.js.map +0 -1
- package/src/asr/Config.ts +0 -138
- package/src/asr/Dependency.ts +0 -336
- package/src/asr/InboundAugment.ts +0 -59
- package/src/asr/ModelCatalog.ts +0 -43
- package/src/tts/Dependency.ts +0 -473
- package/src/tts/PluginSupport.ts +0 -85
- package/src/tts/runtime/Catalog.ts +0 -97
- package/src/tts/runtime/DependencyInstaller.ts +0 -436
- package/src/tts/runtime/Installer.ts +0 -297
- package/src/tts/runtime/Paths.ts +0 -39
- package/src/tts/runtime/Synthesizer.ts +0 -480
- package/src/tts/types/Tts.ts +0 -99
- package/src/voice/Config.ts +0 -135
- package/src/voice/Dependency.ts +0 -329
- package/src/voice/InboundAugment.ts +0 -59
- package/src/voice/ModelCatalog.ts +0 -43
- package/src/voice/runtime/Catalog.ts +0 -68
- package/src/voice/runtime/DependencyInstaller.ts +0 -505
- package/src/voice/runtime/Installer.ts +0 -324
- package/src/voice/runtime/Paths.ts +0 -26
- package/src/voice/runtime/Transcriber.ts +0 -467
- package/src/voice/types/Voice.ts +0 -68
- package/src/voice/types/VoicePlugin.ts +0 -194
- package/src/web/Dependency.ts +0 -17
- package/src/web/PROMPT.agent-browser.ts +0 -9
- package/src/web/PROMPT.agent-browser.ts.txt +0 -17
- package/src/web/PROMPT.web-access.ts +0 -9
- package/src/web/PROMPT.web-access.ts.txt +0 -13
- package/src/web/runtime/Config.ts +0 -105
- package/src/web/runtime/Source.ts +0 -257
|
@@ -1,164 +1,129 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* TtsPlugin 类型定义。
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
|
-
* - TTS
|
|
6
|
-
* -
|
|
5
|
+
* - TTS plugin 只定义 agent 侧协议,不绑定本地模型、Python 或 City 具体实现。
|
|
6
|
+
* - 真实语音合成能力通过 constructor 的 `tts` 函数注入,推荐传入 `city.ai.tts`。
|
|
7
|
+
* - action 最终统一返回 AI SDK UIMessage,便于 agent 统一处理音频 file part。
|
|
7
8
|
*/
|
|
8
9
|
|
|
9
|
-
import type {
|
|
10
|
-
import type {
|
|
10
|
+
import type { UIMessage } from "ai";
|
|
11
|
+
import type { JsonObject, JsonValue } from "@downcity/agent/internal/types/common/Json.js";
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
|
-
* TTS
|
|
14
|
+
* TTS 输入。
|
|
14
15
|
*/
|
|
15
|
-
export interface
|
|
16
|
+
export interface TtsPluginInput {
|
|
16
17
|
/**
|
|
17
|
-
*
|
|
18
|
+
* 需要合成为语音的文本。
|
|
18
19
|
*/
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* 语音合成 provider 类型。
|
|
22
|
-
*
|
|
23
|
-
* 说明(中文)
|
|
24
|
-
* - 当前固定为 `local`。
|
|
25
|
-
*/
|
|
26
|
-
provider?: TtsProvider;
|
|
27
|
-
/**
|
|
28
|
-
* 当前激活的本地模型 ID。
|
|
29
|
-
*/
|
|
30
|
-
modelId?: string;
|
|
31
|
-
/**
|
|
32
|
-
* 本地模型根目录(可选)。
|
|
33
|
-
*/
|
|
34
|
-
modelsDir?: string;
|
|
20
|
+
text: string;
|
|
35
21
|
/**
|
|
36
|
-
*
|
|
37
|
-
*/
|
|
38
|
-
pythonBin?: string;
|
|
39
|
-
/**
|
|
40
|
-
* 默认语言提示(可选)。
|
|
41
|
-
*
|
|
42
|
-
* 说明(中文)
|
|
43
|
-
* - `auto` / `zh` / `en` 等简短值即可。
|
|
22
|
+
* 语言提示,例如 `auto`、`zh`、`en`。
|
|
44
23
|
*/
|
|
45
24
|
language?: string;
|
|
46
25
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* 说明(中文)
|
|
50
|
-
* - 主要给运行时做覆盖;Console 默认不要求手动填写。
|
|
26
|
+
* 音色提示或上游 provider 的 voice id。
|
|
51
27
|
*/
|
|
52
28
|
voice?: string;
|
|
53
29
|
/**
|
|
54
|
-
*
|
|
30
|
+
* 输出格式提示,例如 `wav`、`mp3`、`ogg`。
|
|
55
31
|
*/
|
|
56
|
-
format?:
|
|
32
|
+
format?: string;
|
|
57
33
|
/**
|
|
58
|
-
*
|
|
34
|
+
* 语速倍率。
|
|
59
35
|
*/
|
|
60
36
|
speed?: number;
|
|
61
37
|
/**
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* 说明(中文)
|
|
65
|
-
* - 可为相对项目根目录或绝对路径。
|
|
66
|
-
* - 为空时默认写到 `.downcity/.cache/tts/`。
|
|
67
|
-
*/
|
|
68
|
-
outputDir?: string;
|
|
69
|
-
/**
|
|
70
|
-
* 单次合成超时时间(毫秒,可选)。
|
|
38
|
+
* Provider 私有参数。
|
|
71
39
|
*/
|
|
72
|
-
|
|
40
|
+
provider_options?: JsonObject;
|
|
73
41
|
/**
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
* 说明(中文)
|
|
77
|
-
* - 仅作为状态快照使用,不应作为真实安装判断唯一依据。
|
|
42
|
+
* 允许外部 tts 函数接收其他 JSON 可序列化参数。
|
|
78
43
|
*/
|
|
79
|
-
|
|
44
|
+
[key: string]: JsonValue | undefined;
|
|
80
45
|
}
|
|
81
46
|
|
|
82
47
|
/**
|
|
83
|
-
* TTS
|
|
48
|
+
* TTS 返回的标准 UIMessage。
|
|
84
49
|
*/
|
|
85
|
-
export
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
* 需要安装的模型 ID 列表(可选)。
|
|
92
|
-
*/
|
|
93
|
-
modelIds?: string[];
|
|
50
|
+
export type TtsPluginUiMessageResult = UIMessage;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* TTS 返回的简单音频结果。
|
|
54
|
+
*/
|
|
55
|
+
export interface TtsPluginSimpleAudioResult {
|
|
94
56
|
/**
|
|
95
|
-
*
|
|
57
|
+
* 音频 URL,可为远程 URL、本地路径或 data URL。
|
|
96
58
|
*/
|
|
97
|
-
|
|
59
|
+
url?: string;
|
|
98
60
|
/**
|
|
99
|
-
*
|
|
61
|
+
* data URL 音频内容。
|
|
100
62
|
*/
|
|
101
|
-
|
|
63
|
+
data_url?: string;
|
|
102
64
|
/**
|
|
103
|
-
*
|
|
65
|
+
* 本地音频文件路径。
|
|
104
66
|
*/
|
|
105
|
-
|
|
67
|
+
audio_path?: string;
|
|
106
68
|
/**
|
|
107
|
-
*
|
|
69
|
+
* 音频 MIME 类型,例如 `audio/wav`。
|
|
108
70
|
*/
|
|
109
|
-
|
|
71
|
+
media_type?: string;
|
|
110
72
|
/**
|
|
111
|
-
*
|
|
73
|
+
* 建议文件名。
|
|
112
74
|
*/
|
|
113
|
-
|
|
75
|
+
filename?: string;
|
|
114
76
|
/**
|
|
115
|
-
*
|
|
77
|
+
* 可选说明文本。
|
|
116
78
|
*/
|
|
117
|
-
|
|
79
|
+
text?: string;
|
|
118
80
|
/**
|
|
119
|
-
*
|
|
81
|
+
* 允许外部 tts 函数返回其他 JSON 可序列化字段。
|
|
120
82
|
*/
|
|
121
|
-
|
|
83
|
+
[key: string]: JsonValue | undefined;
|
|
122
84
|
}
|
|
123
85
|
|
|
124
86
|
/**
|
|
125
|
-
* TTS
|
|
87
|
+
* TTS 输出。
|
|
126
88
|
*/
|
|
127
|
-
export
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
89
|
+
export type TtsPluginResult =
|
|
90
|
+
| TtsPluginUiMessageResult
|
|
91
|
+
| TtsPluginSimpleAudioResult;
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* TtsPlugin 构造参数。
|
|
95
|
+
*/
|
|
96
|
+
export interface TtsPluginOptions {
|
|
132
97
|
/**
|
|
133
|
-
*
|
|
98
|
+
* Plugin 稳定名称,默认 `tts`。
|
|
134
99
|
*/
|
|
135
|
-
|
|
100
|
+
name?: string;
|
|
136
101
|
/**
|
|
137
|
-
*
|
|
102
|
+
* Plugin 展示标题,默认 `TTS`。
|
|
138
103
|
*/
|
|
139
|
-
|
|
104
|
+
title?: string;
|
|
140
105
|
/**
|
|
141
|
-
*
|
|
106
|
+
* Plugin 用途说明。
|
|
142
107
|
*/
|
|
143
|
-
|
|
108
|
+
description?: string;
|
|
144
109
|
/**
|
|
145
|
-
*
|
|
110
|
+
* 真实 TTS 能力函数。
|
|
111
|
+
*
|
|
112
|
+
* 说明(中文)
|
|
113
|
+
* - 推荐传入 `(input) => city.ai.tts(input)`。
|
|
114
|
+
* - plugin 只负责调用该函数,不关心模型、provider、鉴权或运行依赖。
|
|
146
115
|
*/
|
|
147
|
-
|
|
116
|
+
tts: (input: TtsPluginInput) => Promise<TtsPluginResult> | TtsPluginResult;
|
|
148
117
|
/**
|
|
149
|
-
*
|
|
118
|
+
* 默认语言提示。
|
|
150
119
|
*/
|
|
151
|
-
|
|
120
|
+
language?: string;
|
|
152
121
|
/**
|
|
153
|
-
*
|
|
122
|
+
* 默认音色提示。
|
|
154
123
|
*/
|
|
155
|
-
|
|
124
|
+
voice?: string;
|
|
156
125
|
/**
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
* 说明(中文)
|
|
160
|
-
* - 若传入带扩展名的路径,则直接写该文件。
|
|
161
|
-
* - 若传入目录,则按默认命名生成文件。
|
|
126
|
+
* 默认输出格式提示。
|
|
162
127
|
*/
|
|
163
|
-
|
|
128
|
+
format?: string;
|
|
164
129
|
}
|
package/src/web/PROMPT.ts
CHANGED
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
// Source: src/web/PROMPT.ts.txt
|
|
7
|
-
const TEXT_MODULE_CONTENT = "# Web Plugin\n\n此 plugin
|
|
7
|
+
const TEXT_MODULE_CONTENT = "# Web Plugin\n\n此 plugin 主要注入通用联网方法论。它不选择 provider,也不保证某个具体联网工具一定存在。\n\n如果需要准备联网相关依赖,可以通过 `web` plugin 的 `install` action 安装 `web-access`、`agent-browser` 等 skill / CLI 依赖。安装只负责准备能力,不表示运行时必须使用某个 provider。\n\n当任务需要联网、查证、阅读网页、操作网页或使用浏览器时,先根据当前可用 tools、skills 与用户目标选择合适路径。\n\n## 总原则\n\n- 目标驱动:像人一样思考,先定义成功标准,再选择最可能直达的起点。\n- 过程校验:每一步结果都是证据。路径不推进时,及时切换方法,不在错误方式上反复重试。\n- 一手来源优先:搜索引擎用于发现线索,结论尽量回到官网、官方平台、原始页面、官方文档或源码。\n- 完成即停止:达到目标后不要为了“看起来更完整”继续消耗额外步骤。\n- 能力自检:不要假设某个联网 skill/tool 一定存在;优先使用当前 system、tool 列表和已 lookup 的 skill 中明确可用的能力。\n\n## 工具选择\n\n- 需要发现信息来源、查关键词脉络:优先使用当前可用的搜索类工具或 web-access 类 skill。\n- 已知 URL,需要定向提取页面正文或答案:优先使用当前可用的 fetch/read 类工具。\n- 已知 URL,需要原始 HTML、meta、JSON-LD 等结构化内容:优先使用当前可用的 HTTP/curl/shell 能力。\n- 需要登录态、动态渲染、站内导航、复杂交互或反爬站点:优先使用当前可用的浏览器、Chrome、agent-browser 或 computer-use 类能力。\n- 页面正文导向内容可优先考虑 Jina 类 markdown 预处理,以节省 token;但数据面板、商品页、复杂布局页面不要盲信预处理结果\n\n## 浏览器策略\n\n- 进入浏览器层后,先理解页面结构,再决定下一步动作\n- 程序化手段快但更容易触发反爬;GUI 交互更慢但确定性更高。程序化受阻时,回退到 GUI\n- 优先使用页面自身生成的链接,不要手工猜测或裁剪站内 URL 参数\n- 只操作自己创建的标签页,不打扰用户已有标签页;任务结束后关闭自己创建的标签页\n- 遇到登录墙时,先判断它是否真的阻挡目标;只有目标确实拿不到时再要求用户登录\n\n## 并行与核实\n\n- 多个独立调研目标可并行拆分;有依赖关系的目标不要盲目并行\n- 核实类任务要回到一手来源,不要用多个二手报道互相循环印证\n\n## 与 skills/tools 的关系\n\n- 如果当前环境有 `web-access` skill,联网搜索、网页抓取与资料核实任务可以优先参考它的说明。\n- 如果当前环境有 `agent-browser`、browser 或 Chrome 能力,动态页面与登录态任务可以优先使用它们。\n- 如果缺少必要联网能力,直接说明缺失能力,不要假装已经联网。\n\n## 可用 action\n\n- `install`:准备联网相关 skill / CLI 依赖。\n\n调用示例:\n\n```ts\nplugin_call({\n plugin: \"web\",\n action: \"install\",\n payload: {\n target: \"agent-browser\",\n scope: \"user\",\n },\n});\n```\n";
|
|
8
8
|
|
|
9
9
|
export default TEXT_MODULE_CONTENT;
|
package/src/web/PROMPT.ts.txt
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
# Web Plugin
|
|
2
2
|
|
|
3
|
-
此 plugin
|
|
3
|
+
此 plugin 主要注入通用联网方法论。它不选择 provider,也不保证某个具体联网工具一定存在。
|
|
4
|
+
|
|
5
|
+
如果需要准备联网相关依赖,可以通过 `web` plugin 的 `install` action 安装 `web-access`、`agent-browser` 等 skill / CLI 依赖。安装只负责准备能力,不表示运行时必须使用某个 provider。
|
|
6
|
+
|
|
7
|
+
当任务需要联网、查证、阅读网页、操作网页或使用浏览器时,先根据当前可用 tools、skills 与用户目标选择合适路径。
|
|
4
8
|
|
|
5
9
|
## 总原则
|
|
6
10
|
|
|
@@ -8,13 +12,14 @@
|
|
|
8
12
|
- 过程校验:每一步结果都是证据。路径不推进时,及时切换方法,不在错误方式上反复重试。
|
|
9
13
|
- 一手来源优先:搜索引擎用于发现线索,结论尽量回到官网、官方平台、原始页面、官方文档或源码。
|
|
10
14
|
- 完成即停止:达到目标后不要为了“看起来更完整”继续消耗额外步骤。
|
|
15
|
+
- 能力自检:不要假设某个联网 skill/tool 一定存在;优先使用当前 system、tool 列表和已 lookup 的 skill 中明确可用的能力。
|
|
11
16
|
|
|
12
17
|
## 工具选择
|
|
13
18
|
|
|
14
|
-
-
|
|
15
|
-
- 已知 URL
|
|
16
|
-
- 已知 URL,需要原始 HTML、meta、JSON-LD
|
|
17
|
-
-
|
|
19
|
+
- 需要发现信息来源、查关键词脉络:优先使用当前可用的搜索类工具或 web-access 类 skill。
|
|
20
|
+
- 已知 URL,需要定向提取页面正文或答案:优先使用当前可用的 fetch/read 类工具。
|
|
21
|
+
- 已知 URL,需要原始 HTML、meta、JSON-LD 等结构化内容:优先使用当前可用的 HTTP/curl/shell 能力。
|
|
22
|
+
- 需要登录态、动态渲染、站内导航、复杂交互或反爬站点:优先使用当前可用的浏览器、Chrome、agent-browser 或 computer-use 类能力。
|
|
18
23
|
- 页面正文导向内容可优先考虑 Jina 类 markdown 预处理,以节省 token;但数据面板、商品页、复杂布局页面不要盲信预处理结果
|
|
19
24
|
|
|
20
25
|
## 浏览器策略
|
|
@@ -30,4 +35,25 @@
|
|
|
30
35
|
- 多个独立调研目标可并行拆分;有依赖关系的目标不要盲目并行
|
|
31
36
|
- 核实类任务要回到一手来源,不要用多个二手报道互相循环印证
|
|
32
37
|
|
|
33
|
-
|
|
38
|
+
## 与 skills/tools 的关系
|
|
39
|
+
|
|
40
|
+
- 如果当前环境有 `web-access` skill,联网搜索、网页抓取与资料核实任务可以优先参考它的说明。
|
|
41
|
+
- 如果当前环境有 `agent-browser`、browser 或 Chrome 能力,动态页面与登录态任务可以优先使用它们。
|
|
42
|
+
- 如果缺少必要联网能力,直接说明缺失能力,不要假装已经联网。
|
|
43
|
+
|
|
44
|
+
## 可用 action
|
|
45
|
+
|
|
46
|
+
- `install`:准备联网相关 skill / CLI 依赖。
|
|
47
|
+
|
|
48
|
+
调用示例:
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
plugin_call({
|
|
52
|
+
plugin: "web",
|
|
53
|
+
action: "install",
|
|
54
|
+
payload: {
|
|
55
|
+
target: "agent-browser",
|
|
56
|
+
scope: "user",
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
```
|