@downcity/plugins 1.0.173 → 1.0.193
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 +4 -9
- package/bin/BuiltinPlugins.d.ts.map +1 -1
- package/bin/BuiltinPlugins.js +4 -8
- package/bin/BuiltinPlugins.js.map +1 -1
- package/bin/chat/Action.d.ts +8 -2
- package/bin/chat/Action.d.ts.map +1 -1
- package/bin/chat/Action.js +9 -5
- package/bin/chat/Action.js.map +1 -1
- package/bin/chat/ChatPlugin.d.ts +2 -22
- package/bin/chat/ChatPlugin.d.ts.map +1 -1
- package/bin/chat/ChatPlugin.js +2 -21
- package/bin/chat/ChatPlugin.js.map +1 -1
- package/bin/chat/Index.d.ts +1 -1
- package/bin/chat/Index.d.ts.map +1 -1
- package/bin/chat/channels/BaseChatChannel.js +1 -1
- package/bin/chat/channels/BaseChatChannel.js.map +1 -1
- package/bin/chat/channels/Configuration.d.ts +1 -1
- package/bin/chat/channels/Configuration.js +1 -1
- package/bin/chat/channels/RuntimeChannel.d.ts +2 -3
- package/bin/chat/channels/RuntimeChannel.d.ts.map +1 -1
- package/bin/chat/channels/RuntimeChannel.js +0 -8
- package/bin/chat/channels/RuntimeChannel.js.map +1 -1
- package/bin/chat/channels/feishu/Feishu.d.ts.map +1 -1
- package/bin/chat/channels/feishu/Feishu.js +2 -1
- package/bin/chat/channels/feishu/Feishu.js.map +1 -1
- package/bin/chat/runtime/ChannelContextStore.d.ts.map +1 -1
- package/bin/chat/runtime/ChannelContextStore.js +13 -12
- package/bin/chat/runtime/ChannelContextStore.js.map +1 -1
- package/bin/chat/runtime/ChatActionExecution.d.ts +26 -1
- package/bin/chat/runtime/ChatActionExecution.d.ts.map +1 -1
- package/bin/chat/runtime/ChatActionExecution.js +31 -3
- package/bin/chat/runtime/ChatActionExecution.js.map +1 -1
- package/bin/chat/runtime/ChatActionInput.d.ts +1 -2
- package/bin/chat/runtime/ChatActionInput.d.ts.map +1 -1
- package/bin/chat/runtime/ChatActionInput.js +1 -27
- package/bin/chat/runtime/ChatActionInput.js.map +1 -1
- package/bin/chat/runtime/ChatChannelActions.d.ts +2 -66
- package/bin/chat/runtime/ChatChannelActions.d.ts.map +1 -1
- package/bin/chat/runtime/ChatChannelActions.js +3 -195
- package/bin/chat/runtime/ChatChannelActions.js.map +1 -1
- package/bin/chat/runtime/ChatChannelConfig.d.ts +2 -23
- package/bin/chat/runtime/ChatChannelConfig.d.ts.map +1 -1
- package/bin/chat/runtime/ChatChannelConfig.js +3 -116
- package/bin/chat/runtime/ChatChannelConfig.js.map +1 -1
- package/bin/chat/runtime/ChatChannelCore.d.ts +0 -14
- package/bin/chat/runtime/ChatChannelCore.d.ts.map +1 -1
- package/bin/chat/runtime/ChatChannelCore.js +1 -1
- package/bin/chat/runtime/ChatChannelCore.js.map +1 -1
- package/bin/chat/runtime/ChatChannelFacade.d.ts +1 -1
- package/bin/chat/runtime/ChatChannelFacade.d.ts.map +1 -1
- package/bin/chat/runtime/ChatChannelFacade.js +1 -1
- package/bin/chat/runtime/ChatChannelFacade.js.map +1 -1
- package/bin/chat/runtime/ChatHistoryStore.d.ts.map +1 -1
- package/bin/chat/runtime/ChatHistoryStore.js +4 -3
- package/bin/chat/runtime/ChatHistoryStore.js.map +1 -1
- package/bin/chat/runtime/ChatPluginActionRegistry.d.ts.map +1 -1
- package/bin/chat/runtime/ChatPluginActionRegistry.js +27 -89
- package/bin/chat/runtime/ChatPluginActionRegistry.js.map +1 -1
- package/bin/chat/runtime/ChatPluginSystem.d.ts +3 -2
- package/bin/chat/runtime/ChatPluginSystem.d.ts.map +1 -1
- package/bin/chat/runtime/ChatPluginSystem.js +5 -5
- package/bin/chat/runtime/ChatPluginSystem.js.map +1 -1
- package/bin/chat/runtime/ChatQueueStore.d.ts +1 -1
- package/bin/chat/runtime/ChatQueueStore.js +2 -2
- package/bin/chat/runtime/ChatQueueStore.js.map +1 -1
- package/bin/chat/runtime/ChatQueueWorker.js +1 -1
- package/bin/chat/runtime/ChatQueueWorker.js.map +1 -1
- package/bin/chat/runtime/ChatSessionDelete.d.ts.map +1 -1
- package/bin/chat/runtime/ChatSessionDelete.js +11 -20
- package/bin/chat/runtime/ChatSessionDelete.js.map +1 -1
- package/bin/chat/runtime/ChatStorage.d.ts +32 -0
- package/bin/chat/runtime/ChatStorage.d.ts.map +1 -0
- package/bin/chat/runtime/ChatStorage.js +158 -0
- package/bin/chat/runtime/ChatStorage.js.map +1 -0
- package/bin/chat/runtime/SystemPrompt.d.ts +3 -2
- package/bin/chat/runtime/SystemPrompt.d.ts.map +1 -1
- package/bin/chat/runtime/SystemPrompt.js +4 -5
- package/bin/chat/runtime/SystemPrompt.js.map +1 -1
- package/bin/chat/types/ChannelConfiguration.d.ts +2 -2
- package/bin/chat/types/ChatPluginActionPayload.d.ts +7 -45
- package/bin/chat/types/ChatPluginActionPayload.d.ts.map +1 -1
- package/bin/chat/types/ChatPluginOptions.d.ts +0 -21
- package/bin/chat/types/ChatPluginOptions.d.ts.map +1 -1
- package/bin/chat/types/ChatStorage.d.ts +36 -0
- package/bin/chat/types/ChatStorage.d.ts.map +1 -0
- package/bin/chat/types/ChatStorage.js +9 -0
- package/bin/chat/types/ChatStorage.js.map +1 -0
- package/bin/contact/Action.d.ts +3 -2
- package/bin/contact/Action.d.ts.map +1 -1
- package/bin/contact/Action.js +2 -2
- package/bin/contact/Action.js.map +1 -1
- package/bin/contact/ContactPlugin.d.ts.map +1 -1
- package/bin/contact/ContactPlugin.js +17 -14
- package/bin/contact/ContactPlugin.js.map +1 -1
- package/bin/contact/runtime/ChatRuntime.js +1 -1
- package/bin/contact/runtime/ChatRuntime.js.map +1 -1
- package/bin/contact/types/ContactPluginOptions.d.ts +4 -0
- package/bin/contact/types/ContactPluginOptions.d.ts.map +1 -1
- package/bin/index.d.ts +5 -5
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +2 -2
- package/bin/index.js.map +1 -1
- package/bin/memory/Action.d.ts.map +1 -1
- package/bin/memory/Action.js +16 -4
- package/bin/memory/Action.js.map +1 -1
- package/bin/memory/runtime/Store.d.ts.map +1 -1
- package/bin/memory/runtime/Store.js +0 -22
- package/bin/memory/runtime/Store.js.map +1 -1
- package/bin/memory/runtime/Writer.d.ts +1 -1
- package/bin/memory/runtime/Writer.d.ts.map +1 -1
- package/bin/memory/runtime/Writer.js +2 -4
- package/bin/memory/runtime/Writer.js.map +1 -1
- package/bin/skill/Command.d.ts +3 -11
- package/bin/skill/Command.d.ts.map +1 -1
- package/bin/skill/Command.js +3 -31
- package/bin/skill/Command.js.map +1 -1
- package/bin/skill/PROMPT.d.ts +1 -1
- package/bin/skill/PROMPT.d.ts.map +1 -1
- package/bin/skill/PROMPT.js +1 -1
- package/bin/skill/PROMPT.js.map +1 -1
- package/bin/skill/Plugin.d.ts +3 -2
- package/bin/skill/Plugin.d.ts.map +1 -1
- package/bin/skill/Plugin.js +37 -129
- package/bin/skill/Plugin.js.map +1 -1
- package/bin/skill/runtime/Prompt.d.ts +11 -2
- package/bin/skill/runtime/Prompt.d.ts.map +1 -1
- package/bin/skill/runtime/Prompt.js +93 -8
- package/bin/skill/runtime/Prompt.js.map +1 -1
- package/bin/skill/runtime/SystemProvider.d.ts +2 -1
- package/bin/skill/runtime/SystemProvider.d.ts.map +1 -1
- package/bin/skill/runtime/SystemProvider.js +4 -9
- package/bin/skill/runtime/SystemProvider.js.map +1 -1
- package/bin/skill/types/SkillPlugin.d.ts +6 -18
- package/bin/skill/types/SkillPlugin.d.ts.map +1 -1
- package/bin/skill/types/SkillPlugin.js +2 -2
- package/bin/sound/Plugin.d.ts +69 -0
- package/bin/sound/Plugin.d.ts.map +1 -0
- package/bin/sound/Plugin.js +623 -0
- package/bin/sound/Plugin.js.map +1 -0
- package/bin/sound/types/SoundPlugin.d.ts +150 -0
- package/bin/sound/types/SoundPlugin.d.ts.map +1 -0
- package/bin/sound/types/SoundPlugin.js +10 -0
- package/bin/sound/types/SoundPlugin.js.map +1 -0
- package/bin/task/Action.d.ts +2 -0
- package/bin/task/Action.d.ts.map +1 -1
- package/bin/task/Action.js +6 -0
- package/bin/task/Action.js.map +1 -1
- package/bin/task/runtime/Runner.d.ts +4 -0
- package/bin/task/runtime/Runner.d.ts.map +1 -1
- package/bin/task/runtime/Runner.js +15 -11
- package/bin/task/runtime/Runner.js.map +1 -1
- package/bin/task/runtime/TaskActionExecution.d.ts +2 -0
- package/bin/task/runtime/TaskActionExecution.d.ts.map +1 -1
- package/bin/task/runtime/TaskActionExecution.js +1 -0
- package/bin/task/runtime/TaskActionExecution.js.map +1 -1
- package/bin/task/runtime/TaskPluginActionRegistry.d.ts.map +1 -1
- package/bin/task/runtime/TaskPluginActionRegistry.js +1 -0
- package/bin/task/runtime/TaskPluginActionRegistry.js.map +1 -1
- package/bin/task/runtime/TaskRunChatDispatch.js +1 -1
- package/bin/task/runtime/TaskRunChatDispatch.js.map +1 -1
- package/bin/task/runtime/TaskRunnerRound.d.ts.map +1 -1
- package/bin/task/runtime/TaskRunnerRound.js +19 -26
- package/bin/task/runtime/TaskRunnerRound.js.map +1 -1
- package/bin/task/runtime/TaskRunnerSession.d.ts +6 -2
- package/bin/task/runtime/TaskRunnerSession.d.ts.map +1 -1
- package/bin/task/runtime/TaskRunnerSession.js +93 -72
- package/bin/task/runtime/TaskRunnerSession.js.map +1 -1
- package/bin/task/runtime/TaskRunnerTypes.d.ts +4 -4
- package/bin/task/runtime/TaskRunnerTypes.d.ts.map +1 -1
- package/bin/task/types/TaskPluginOptions.d.ts.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 +2 -2
- package/bin/web/PROMPT.js.map +1 -1
- package/bin/web/Plugin.d.ts +1 -21
- package/bin/web/Plugin.d.ts.map +1 -1
- package/bin/web/Plugin.js +14 -79
- package/bin/web/Plugin.js.map +1 -1
- package/bin/web/runtime/Prompt.d.ts +14 -0
- package/bin/web/runtime/Prompt.d.ts.map +1 -0
- package/bin/web/runtime/Prompt.js +77 -0
- package/bin/web/runtime/Prompt.js.map +1 -0
- package/bin/web/types/WebPlugin.d.ts +40 -29
- package/bin/web/types/WebPlugin.d.ts.map +1 -1
- package/bin/web/types/WebPlugin.js +11 -3
- package/bin/web/types/WebPlugin.js.map +1 -1
- package/bin/workboard/runtime/Collector.js +1 -1
- package/bin/workboard/runtime/Collector.js.map +1 -1
- package/bin/workboard/runtime/Normalizer.js +1 -1
- package/bin/workboard/runtime/Normalizer.js.map +1 -1
- package/bin/workboard/runtime/SessionSummary.d.ts.map +1 -1
- package/bin/workboard/runtime/SessionSummary.js +11 -38
- package/bin/workboard/runtime/SessionSummary.js.map +1 -1
- package/package.json +8 -4
- package/scripts/chat-access.test.mjs +1 -1
- package/scripts/chat-channel-config.test.mjs +15 -64
- package/scripts/chat-storage.test.mjs +92 -0
- package/scripts/skill-plugin.test.mjs +93 -0
- package/scripts/sound-plugin.test.mjs +250 -0
- package/scripts/web-plugin.test.mjs +85 -0
- package/src/BuiltinPlugins.ts +7 -17
- package/src/chat/Action.ts +16 -5
- package/src/chat/ChatPlugin.ts +6 -35
- package/src/chat/Index.ts +0 -1
- package/src/chat/channels/BaseChatChannel.ts +1 -1
- package/src/chat/channels/Configuration.ts +1 -1
- package/src/chat/channels/RuntimeChannel.ts +2 -14
- package/src/chat/channels/feishu/Feishu.ts +2 -1
- package/src/chat/runtime/ChannelContextStore.ts +16 -12
- package/src/chat/runtime/ChatActionExecution.ts +48 -3
- package/src/chat/runtime/ChatActionInput.ts +0 -31
- package/src/chat/runtime/ChatChannelActions.ts +3 -254
- package/src/chat/runtime/ChatChannelConfig.ts +4 -133
- package/src/chat/runtime/ChatChannelCore.ts +1 -15
- package/src/chat/runtime/ChatChannelFacade.ts +0 -4
- package/src/chat/runtime/ChatHistoryStore.ts +4 -3
- package/src/chat/runtime/ChatPluginActionRegistry.ts +26 -98
- package/src/chat/runtime/ChatPluginSystem.ts +9 -3
- package/src/chat/runtime/ChatQueueStore.ts +2 -2
- package/src/chat/runtime/ChatQueueWorker.ts +1 -1
- package/src/chat/runtime/ChatSessionDelete.ts +11 -21
- package/src/chat/runtime/ChatStorage.ts +203 -0
- package/src/chat/runtime/SystemPrompt.ts +8 -3
- package/src/chat/types/ChannelConfiguration.ts +2 -2
- package/src/chat/types/ChatPluginActionPayload.ts +8 -49
- package/src/chat/types/ChatPluginOptions.ts +0 -22
- package/src/chat/types/ChatStorage.ts +37 -0
- package/src/contact/Action.ts +9 -1
- package/src/contact/ContactPlugin.ts +38 -14
- package/src/contact/runtime/ChatRuntime.ts +1 -1
- package/src/contact/types/ContactPluginOptions.ts +6 -0
- package/src/index.ts +16 -14
- package/src/memory/Action.ts +19 -4
- package/src/memory/runtime/Store.ts +0 -27
- package/src/memory/runtime/Writer.ts +2 -5
- package/src/skill/Command.ts +3 -33
- package/src/skill/PROMPT.ts +1 -1
- package/src/skill/PROMPT.ts.txt +5 -1
- package/src/skill/Plugin.ts +49 -156
- package/src/skill/runtime/Prompt.ts +109 -9
- package/src/skill/runtime/SystemProvider.ts +5 -9
- package/src/skill/types/SkillPlugin.ts +6 -18
- package/src/sound/Plugin.ts +699 -0
- package/src/sound/types/SoundPlugin.ts +163 -0
- package/src/task/Action.ts +8 -0
- package/src/task/runtime/Runner.ts +19 -13
- package/src/task/runtime/TaskActionExecution.ts +3 -0
- package/src/task/runtime/TaskPluginActionRegistry.ts +1 -0
- package/src/task/runtime/TaskRunChatDispatch.ts +1 -1
- package/src/task/runtime/TaskRunnerRound.ts +20 -38
- package/src/task/runtime/TaskRunnerSession.ts +108 -72
- package/src/task/runtime/TaskRunnerTypes.ts +4 -4
- package/src/task/types/TaskPluginOptions.ts +1 -0
- package/src/web/PROMPT.ts +2 -2
- package/src/web/PROMPT.ts.txt +4 -2
- package/src/web/Plugin.ts +20 -90
- package/src/web/runtime/Prompt.ts +99 -0
- package/src/web/types/WebPlugin.ts +42 -29
- package/src/workboard/runtime/Collector.ts +1 -1
- package/src/workboard/runtime/Normalizer.ts +1 -1
- package/src/workboard/runtime/SessionSummary.ts +11 -42
- package/bin/asr/Plugin.d.ts +0 -63
- package/bin/asr/Plugin.d.ts.map +0 -1
- package/bin/asr/Plugin.js +0 -280
- package/bin/asr/Plugin.js.map +0 -1
- package/bin/asr/types/AsrPlugin.d.ts +0 -114
- package/bin/asr/types/AsrPlugin.d.ts.map +0 -1
- package/bin/asr/types/AsrPlugin.js +0 -10
- package/bin/asr/types/AsrPlugin.js.map +0 -1
- package/bin/chat/runtime/ChatSession.d.ts +0 -97
- package/bin/chat/runtime/ChatSession.d.ts.map +0 -1
- package/bin/chat/runtime/ChatSession.js +0 -91
- package/bin/chat/runtime/ChatSession.js.map +0 -1
- package/bin/chat/runtime/ChatSessionContextComposer.d.ts +0 -45
- package/bin/chat/runtime/ChatSessionContextComposer.d.ts.map +0 -1
- package/bin/chat/runtime/ChatSessionContextComposer.js +0 -60
- package/bin/chat/runtime/ChatSessionContextComposer.js.map +0 -1
- package/bin/chat/runtime/ChatSessionTypes.d.ts +0 -30
- package/bin/chat/runtime/ChatSessionTypes.d.ts.map +0 -1
- package/bin/chat/runtime/ChatSessionTypes.js +0 -9
- package/bin/chat/runtime/ChatSessionTypes.js.map +0 -1
- package/bin/tts/Plugin.d.ts +0 -49
- package/bin/tts/Plugin.d.ts.map +0 -1
- package/bin/tts/Plugin.js +0 -247
- package/bin/tts/Plugin.js.map +0 -1
- package/bin/tts/types/TtsPlugin.d.ts +0 -122
- package/bin/tts/types/TtsPlugin.d.ts.map +0 -1
- package/bin/tts/types/TtsPlugin.js +0 -10
- package/bin/tts/types/TtsPlugin.js.map +0 -1
- package/bin/web/runtime/Install.d.ts +0 -19
- package/bin/web/runtime/Install.d.ts.map +0 -1
- package/bin/web/runtime/Install.js +0 -178
- package/bin/web/runtime/Install.js.map +0 -1
- package/src/asr/Plugin.ts +0 -322
- package/src/asr/types/AsrPlugin.ts +0 -118
- package/src/chat/runtime/ChatSession.ts +0 -168
- package/src/chat/runtime/ChatSessionContextComposer.ts +0 -106
- package/src/chat/runtime/ChatSessionTypes.ts +0 -32
- package/src/tts/Plugin.ts +0 -284
- package/src/tts/types/TtsPlugin.ts +0 -129
- package/src/web/runtime/Install.ts +0 -241
package/bin/web/Plugin.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
5
|
* - web plugin 不选择 provider,也不持久化 provider 运行态。
|
|
6
|
-
* - install action
|
|
6
|
+
* - install action 只返回联网能力安装提示,不执行命令或修改文件。
|
|
7
7
|
* - 它只通过 `system()` 注入联网研究与浏览器使用方法论。
|
|
8
8
|
* - 具体执行能力由当前 agent 已注册的 tools、skills 或外部 plugin 决定。
|
|
9
9
|
*/
|
|
@@ -11,7 +11,8 @@ import { BasePlugin } from "@downcity/agent";
|
|
|
11
11
|
import { createAction } from "@downcity/agent";
|
|
12
12
|
import { z } from "zod";
|
|
13
13
|
import { WEB_PLUGIN_PROMPT } from "../web/WebPromptAssets.js";
|
|
14
|
-
import {
|
|
14
|
+
import { render_web_install_prompt } from "../web/runtime/Prompt.js";
|
|
15
|
+
import { WEB_PLUGIN_ACTIONS } from "../web/types/WebPlugin.js";
|
|
15
16
|
/**
|
|
16
17
|
* 读取字符串选项。
|
|
17
18
|
*/
|
|
@@ -22,13 +23,6 @@ function get_string_opt(opts, key) {
|
|
|
22
23
|
const trimmed = value.trim();
|
|
23
24
|
return trimmed || undefined;
|
|
24
25
|
}
|
|
25
|
-
/**
|
|
26
|
-
* 读取布尔选项。
|
|
27
|
-
*/
|
|
28
|
-
function get_boolean_opt(opts, key) {
|
|
29
|
-
const value = opts[key];
|
|
30
|
-
return typeof value === "boolean" ? value : undefined;
|
|
31
|
-
}
|
|
32
26
|
/**
|
|
33
27
|
* 读取安装目标。
|
|
34
28
|
*/
|
|
@@ -64,62 +58,16 @@ export class WebPlugin extends BasePlugin {
|
|
|
64
58
|
* 插件说明。
|
|
65
59
|
*/
|
|
66
60
|
description = "Injects web research and browser-use methodology for agents.";
|
|
67
|
-
/**
|
|
68
|
-
* setup 面板:只准备联网相关依赖,不做 provider 配置。
|
|
69
|
-
*/
|
|
70
|
-
setup = {
|
|
71
|
-
mode: "install",
|
|
72
|
-
title: "Install web capabilities",
|
|
73
|
-
description: "安装 web-access、agent-browser 等联网相关 skill / CLI 依赖;不改变 agent 的运行时默认选择。",
|
|
74
|
-
fields: [
|
|
75
|
-
{
|
|
76
|
-
key: "target",
|
|
77
|
-
label: "联网能力",
|
|
78
|
-
type: "select",
|
|
79
|
-
required: true,
|
|
80
|
-
options: [
|
|
81
|
-
{
|
|
82
|
-
label: "web-access",
|
|
83
|
-
value: "web-access",
|
|
84
|
-
hint: "通用搜索、抓取与资料核实 skill",
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
label: "agent-browser",
|
|
88
|
-
value: "agent-browser",
|
|
89
|
-
hint: "浏览器自动化 skill,并准备 agent-browser CLI",
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
label: "全部",
|
|
93
|
-
value: "all",
|
|
94
|
-
hint: "同时准备 web-access 和 agent-browser",
|
|
95
|
-
},
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
key: "scope",
|
|
100
|
-
label: "安装位置",
|
|
101
|
-
type: "select",
|
|
102
|
-
required: true,
|
|
103
|
-
options: [
|
|
104
|
-
{ label: "用户目录", value: "user", hint: "用户级 skill / 全局 CLI" },
|
|
105
|
-
{ label: "项目目录", value: "project", hint: "项目级 skill / devDependency" },
|
|
106
|
-
],
|
|
107
|
-
},
|
|
108
|
-
],
|
|
109
|
-
primaryAction: "install",
|
|
110
|
-
};
|
|
111
61
|
/**
|
|
112
62
|
* WebPlugin 对外 action。
|
|
113
63
|
*/
|
|
114
64
|
actions = {
|
|
115
|
-
install: createAction({
|
|
116
|
-
description: "
|
|
65
|
+
[WEB_PLUGIN_ACTIONS.install]: createAction({
|
|
66
|
+
description: "Return instructions for installing web-related Skills and CLIs. This action does not install anything.",
|
|
117
67
|
input_schema: {
|
|
118
68
|
zod: z.object({
|
|
119
69
|
target: z.enum(["web-access", "agent-browser", "all"]).optional(),
|
|
120
70
|
scope: z.enum(["user", "project"]).optional(),
|
|
121
|
-
yes: z.boolean().optional(),
|
|
122
|
-
agent: z.string().optional(),
|
|
123
71
|
}),
|
|
124
72
|
json_schema: {
|
|
125
73
|
type: "object",
|
|
@@ -127,32 +75,28 @@ export class WebPlugin extends BasePlugin {
|
|
|
127
75
|
target: {
|
|
128
76
|
type: "string",
|
|
129
77
|
enum: ["web-access", "agent-browser", "all"],
|
|
130
|
-
description: "Web capability to
|
|
78
|
+
description: "Web capability to receive installation instructions for.",
|
|
131
79
|
},
|
|
132
80
|
scope: {
|
|
133
81
|
type: "string",
|
|
134
82
|
enum: ["user", "project"],
|
|
135
|
-
description: "Installation scope.",
|
|
83
|
+
description: "Installation scope for the agent-browser CLI.",
|
|
136
84
|
},
|
|
137
|
-
yes: { type: "boolean", description: "Skip confirmation." },
|
|
138
|
-
agent: { type: "string", description: "Target agent for skill installer." },
|
|
139
85
|
},
|
|
140
86
|
},
|
|
141
87
|
},
|
|
142
88
|
examples: [
|
|
143
89
|
{
|
|
144
|
-
title: "
|
|
90
|
+
title: "Get user-level installation instructions for all web capabilities",
|
|
145
91
|
payload: { target: "all", scope: "user" },
|
|
146
92
|
},
|
|
147
93
|
],
|
|
148
94
|
command: {
|
|
149
|
-
description: "
|
|
95
|
+
description: "Return web capability installation instructions without executing them.",
|
|
150
96
|
configure(command) {
|
|
151
97
|
command
|
|
152
98
|
.option("--target <target>", "web-access、agent-browser 或 all")
|
|
153
|
-
.option("--scope <scope>", "安装位置:user 或 project")
|
|
154
|
-
.option("-y, --yes", "跳过确认(默认 true)", true)
|
|
155
|
-
.option("--agent <agent>", "skill installer 目标 agent");
|
|
99
|
+
.option("--scope <scope>", "agent-browser CLI 安装位置:user 或 project");
|
|
156
100
|
},
|
|
157
101
|
mapInput({ opts }) {
|
|
158
102
|
return {
|
|
@@ -162,24 +106,15 @@ export class WebPlugin extends BasePlugin {
|
|
|
162
106
|
...(get_install_scope_opt(opts)
|
|
163
107
|
? { scope: get_install_scope_opt(opts) }
|
|
164
108
|
: {}),
|
|
165
|
-
...(typeof get_boolean_opt(opts, "yes") === "boolean"
|
|
166
|
-
? { yes: get_boolean_opt(opts, "yes") }
|
|
167
|
-
: {}),
|
|
168
|
-
...(get_string_opt(opts, "agent") ? { agent: get_string_opt(opts, "agent") } : {}),
|
|
169
109
|
};
|
|
170
110
|
},
|
|
171
111
|
},
|
|
172
|
-
execute
|
|
173
|
-
const
|
|
174
|
-
context,
|
|
175
|
-
payload: input && typeof input === "object" && !Array.isArray(input)
|
|
176
|
-
? input
|
|
177
|
-
: undefined,
|
|
178
|
-
});
|
|
112
|
+
execute({ input }) {
|
|
113
|
+
const result = render_web_install_prompt(input);
|
|
179
114
|
return {
|
|
180
115
|
success: true,
|
|
181
|
-
data,
|
|
182
|
-
message: "
|
|
116
|
+
data: result,
|
|
117
|
+
message: "Web capability installation instructions ready; no commands were executed and no files were changed.",
|
|
183
118
|
};
|
|
184
119
|
},
|
|
185
120
|
}),
|
package/bin/web/Plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WebPlugin 安装提示词渲染器。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 只生成 Agent 可执行的操作说明,不执行命令、访问网络或修改文件。
|
|
6
|
+
* - Skill 安装委托给 SkillPlugin,避免重复维护扫描根与安装位置规则。
|
|
7
|
+
* - agent-browser CLI 仅根据请求的作用域提供 Shell 命令候选。
|
|
8
|
+
*/
|
|
9
|
+
import type { WebPluginInstallInstructions, WebPluginInstallPayload } from "../../web/types/WebPlugin.js";
|
|
10
|
+
/**
|
|
11
|
+
* 生成 web install action 返回的纯提示词。
|
|
12
|
+
*/
|
|
13
|
+
export declare function render_web_install_prompt(payload: WebPluginInstallPayload | null | undefined): WebPluginInstallInstructions;
|
|
14
|
+
//# sourceMappingURL=Prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Prompt.d.ts","sourceRoot":"","sources":["../../../src/web/runtime/Prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,4BAA4B,EAC5B,uBAAuB,EAGxB,MAAM,0BAA0B,CAAC;AAoDlC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,uBAAuB,GAAG,IAAI,GAAG,SAAS,GAClD,4BAA4B,CA2B9B"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WebPlugin 安装提示词渲染器。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 只生成 Agent 可执行的操作说明,不执行命令、访问网络或修改文件。
|
|
6
|
+
* - Skill 安装委托给 SkillPlugin,避免重复维护扫描根与安装位置规则。
|
|
7
|
+
* - agent-browser CLI 仅根据请求的作用域提供 Shell 命令候选。
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* 归一化联网能力目标。
|
|
11
|
+
*/
|
|
12
|
+
function resolve_install_target(target) {
|
|
13
|
+
return target === "agent-browser" || target === "all"
|
|
14
|
+
? target
|
|
15
|
+
: "web-access";
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* 归一化 CLI 安装作用域。
|
|
19
|
+
*/
|
|
20
|
+
function resolve_install_scope(scope) {
|
|
21
|
+
return scope === "project" ? "project" : "user";
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 渲染单个 Skill 的安装工作流。
|
|
25
|
+
*/
|
|
26
|
+
function render_skill_install_step(skill_name) {
|
|
27
|
+
return [
|
|
28
|
+
`- Call \`plugin_call({ plugin: "skill", action: "install", payload: { spec: "${skill_name}" } })\`.`,
|
|
29
|
+
" Follow the returned scan-aware Shell instructions. The WebPlugin has not installed this Skill.",
|
|
30
|
+
].join("\n");
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* 渲染 agent-browser CLI 的安装提示。
|
|
34
|
+
*/
|
|
35
|
+
function render_agent_browser_cli_step(scope) {
|
|
36
|
+
if (scope === "project") {
|
|
37
|
+
return [
|
|
38
|
+
"- Inspect the project lockfile and use its existing package manager to install `agent-browser` as a devDependency:",
|
|
39
|
+
" - pnpm: `pnpm add -D agent-browser`",
|
|
40
|
+
" - npm: `npm install -D agent-browser`",
|
|
41
|
+
" - yarn: `yarn add -D agent-browser`",
|
|
42
|
+
"- Verify the project-local CLI with the matching package-manager command, for example `pnpm exec agent-browser --help`.",
|
|
43
|
+
].join("\n");
|
|
44
|
+
}
|
|
45
|
+
return [
|
|
46
|
+
"- Install the CLI globally with `npm install -g agent-browser`.",
|
|
47
|
+
"- Verify it with `agent-browser --help`.",
|
|
48
|
+
].join("\n");
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* 生成 web install action 返回的纯提示词。
|
|
52
|
+
*/
|
|
53
|
+
export function render_web_install_prompt(payload) {
|
|
54
|
+
const target = resolve_install_target(payload?.target);
|
|
55
|
+
const scope = resolve_install_scope(payload?.scope);
|
|
56
|
+
const skill_names = target === "all" ? ["web-access", "agent-browser"] : [target];
|
|
57
|
+
const skill_steps = skill_names.map(render_skill_install_step).join("\n");
|
|
58
|
+
const cli_steps = target === "agent-browser" || target === "all"
|
|
59
|
+
? ["", "## agent-browser CLI", render_agent_browser_cli_step(scope)]
|
|
60
|
+
: [];
|
|
61
|
+
const prompt = [
|
|
62
|
+
"# Install Web Capabilities Instructions",
|
|
63
|
+
"",
|
|
64
|
+
"This action only returns instructions. It has not executed commands, accessed the network, installed dependencies, or changed files.",
|
|
65
|
+
"",
|
|
66
|
+
"## Skills",
|
|
67
|
+
skill_steps,
|
|
68
|
+
...cli_steps,
|
|
69
|
+
"",
|
|
70
|
+
"## Verification",
|
|
71
|
+
"After completing the Shell steps, call `plugin_call({ plugin: \"skill\", action: \"list\", payload: {} })` and confirm every requested Skill is discoverable.",
|
|
72
|
+
"Call `skill.lookup` for each installed Skill before using it.",
|
|
73
|
+
"If the `skill` plugin is unavailable, configure it before installing a Skill; do not guess an unscanned destination.",
|
|
74
|
+
].join("\n");
|
|
75
|
+
return { kind: "instructions", target, scope, prompt };
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=Prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Prompt.js","sourceRoot":"","sources":["../../../src/web/runtime/Prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH;;GAEG;AACH,SAAS,sBAAsB,CAC7B,MAAyC;IAEzC,OAAO,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,KAAK;QACnD,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,YAAY,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC5B,KAAuC;IAEvC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,UAAkB;IACnD,OAAO;QACL,gFAAgF,UAAU,WAAW;QACrG,kGAAkG;KACnG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,6BAA6B,CAAC,KAA4B;IACjE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO;YACL,oHAAoH;YACpH,uCAAuC;YACvC,yCAAyC;YACzC,uCAAuC;YACvC,yHAAyH;SAC1H,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAED,OAAO;QACL,iEAAiE;QACjE,0CAA0C;KAC3C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,OAAmD;IAEnD,MAAM,MAAM,GAAG,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,WAAW,GACf,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,SAAS,GACb,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,KAAK;QAC5C,CAAC,CAAC,CAAC,EAAE,EAAE,sBAAsB,EAAE,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACpE,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,MAAM,GAAG;QACb,yCAAyC;QACzC,EAAE;QACF,sIAAsI;QACtI,EAAE;QACF,WAAW;QACX,WAAW;QACX,GAAG,SAAS;QACZ,EAAE;QACF,iBAAiB;QACjB,+JAA+J;QAC/J,+DAA+D;QAC/D,sHAAsH;KACvH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACzD,CAAC"}
|
|
@@ -3,60 +3,71 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
5
|
* - web plugin 只注入联网方法论,不维护 provider 运行态。
|
|
6
|
-
* - install action
|
|
7
|
-
* - target
|
|
6
|
+
* - install action 只返回安装提示,不执行命令或修改文件。
|
|
7
|
+
* - target 表示需要安装说明的联网能力,不表示 agent 运行时默认选择。
|
|
8
8
|
*/
|
|
9
|
-
import type {
|
|
9
|
+
import type { JsonObject } from "@downcity/agent";
|
|
10
10
|
/**
|
|
11
|
-
* WebPlugin
|
|
11
|
+
* WebPlugin action 名称常量。
|
|
12
|
+
*/
|
|
13
|
+
export declare const WEB_PLUGIN_ACTIONS: {
|
|
14
|
+
/**
|
|
15
|
+
* 返回联网能力的安装操作提示。
|
|
16
|
+
*/
|
|
17
|
+
readonly install: "install";
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* WebPlugin 安装提示目标。
|
|
12
21
|
*/
|
|
13
22
|
export type WebPluginInstallTarget = "web-access" | "agent-browser" | "all";
|
|
14
23
|
/**
|
|
15
|
-
*
|
|
24
|
+
* agent-browser CLI 安装作用域。
|
|
16
25
|
*/
|
|
17
26
|
export type WebPluginInstallScope = "user" | "project";
|
|
18
27
|
/**
|
|
19
|
-
* WebPlugin install action 输入。
|
|
28
|
+
* WebPlugin install 提示 action 输入。
|
|
20
29
|
*/
|
|
21
30
|
export interface WebPluginInstallPayload {
|
|
22
31
|
/**
|
|
23
|
-
*
|
|
32
|
+
* 需要获取安装说明的联网能力。
|
|
24
33
|
*
|
|
25
34
|
* 说明(中文)
|
|
26
|
-
* - `web-access
|
|
27
|
-
* - `agent-browser
|
|
28
|
-
* - `all
|
|
29
|
-
* - 默认值为 `web-access
|
|
35
|
+
* - `web-access`:返回 web-access Skill 的安装工作流。
|
|
36
|
+
* - `agent-browser`:返回 agent-browser Skill 与 CLI 的安装工作流。
|
|
37
|
+
* - `all`:返回以上全部能力的安装工作流。
|
|
38
|
+
* - 默认值为 `web-access`。
|
|
30
39
|
*/
|
|
31
40
|
target?: WebPluginInstallTarget;
|
|
32
41
|
/**
|
|
33
|
-
*
|
|
42
|
+
* agent-browser CLI 的安装作用域。
|
|
34
43
|
*
|
|
35
44
|
* 说明(中文)
|
|
36
|
-
* - `user
|
|
37
|
-
* - `project
|
|
38
|
-
* -
|
|
45
|
+
* - `user`:提示 Agent 将 CLI 安装到 npm 全局环境。
|
|
46
|
+
* - `project`:提示 Agent 使用项目已有的包管理器安装 devDependency。
|
|
47
|
+
* - Skill 安装位置由 SkillPlugin 的扫描配置决定,不受此字段控制。
|
|
48
|
+
* - 默认值为 `user`。
|
|
39
49
|
*/
|
|
40
50
|
scope?: WebPluginInstallScope;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* WebPlugin install action 返回的安装提示数据。
|
|
54
|
+
*/
|
|
55
|
+
export interface WebPluginInstallInstructions extends JsonObject {
|
|
41
56
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* 说明(中文)
|
|
45
|
-
* - 会透传给底层 skill installer。
|
|
46
|
-
* - 默认值为 `true`,适合 agent 自动执行。
|
|
57
|
+
* 标识当前结果只包含操作说明。
|
|
47
58
|
*/
|
|
48
|
-
|
|
59
|
+
kind: "instructions";
|
|
49
60
|
/**
|
|
50
|
-
*
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
* -
|
|
61
|
+
* 已归一化的联网能力目标。
|
|
62
|
+
*/
|
|
63
|
+
target: WebPluginInstallTarget;
|
|
64
|
+
/**
|
|
65
|
+
* 已归一化的 agent-browser CLI 安装作用域。
|
|
55
66
|
*/
|
|
56
|
-
|
|
67
|
+
scope: WebPluginInstallScope;
|
|
57
68
|
/**
|
|
58
|
-
*
|
|
69
|
+
* 提供给 Agent 执行的完整安装说明。
|
|
59
70
|
*/
|
|
60
|
-
|
|
71
|
+
prompt: string;
|
|
61
72
|
}
|
|
62
73
|
//# sourceMappingURL=WebPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebPlugin.d.ts","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"WebPlugin.d.ts","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,kBAAkB;IAC7B;;OAEG;;CAEK,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,eAAe,GAAG,KAAK,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,UAAU;IAC9D;;OAEG;IACH,IAAI,EAAE,cAAc,CAAC;IACrB;;OAEG;IACH,MAAM,EAAE,sBAAsB,CAAC;IAC/B;;OAEG;IACH,KAAK,EAAE,qBAAqB,CAAC;IAC7B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -3,8 +3,16 @@
|
|
|
3
3
|
*
|
|
4
4
|
* 关键点(中文)
|
|
5
5
|
* - web plugin 只注入联网方法论,不维护 provider 运行态。
|
|
6
|
-
* - install action
|
|
7
|
-
* - target
|
|
6
|
+
* - install action 只返回安装提示,不执行命令或修改文件。
|
|
7
|
+
* - target 表示需要安装说明的联网能力,不表示 agent 运行时默认选择。
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* WebPlugin action 名称常量。
|
|
11
|
+
*/
|
|
12
|
+
export const WEB_PLUGIN_ACTIONS = {
|
|
13
|
+
/**
|
|
14
|
+
* 返回联网能力的安装操作提示。
|
|
15
|
+
*/
|
|
16
|
+
install: "install",
|
|
17
|
+
};
|
|
10
18
|
//# sourceMappingURL=WebPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebPlugin.js","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
1
|
+
{"version":3,"file":"WebPlugin.js","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC;;OAEG;IACH,OAAO,EAAE,SAAS;CACV,CAAC"}
|
|
@@ -15,7 +15,7 @@ const WORKBOARD_RECENT_LIMIT = 8;
|
|
|
15
15
|
*/
|
|
16
16
|
export async function collectWorkboardSnapshot(context) {
|
|
17
17
|
const collectedAt = new Date().toISOString();
|
|
18
|
-
const executingSessionIds = new Set(context.
|
|
18
|
+
const executingSessionIds = new Set(context.sessions.list_executing_session_ids());
|
|
19
19
|
const sessions = await listWorkboardSessionSummaries({
|
|
20
20
|
context,
|
|
21
21
|
limit: WORKBOARD_RECENT_LIMIT + Math.max(executingSessionIds.size, 1),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collector.js","sourceRoot":"","sources":["../../../src/workboard/runtime/Collector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAqB;IAErB,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"Collector.js","sourceRoot":"","sources":["../../../src/workboard/runtime/Collector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAqB;IAErB,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,EAAE,CAAC,CAAC;IACnF,MAAM,QAAQ,GAAG,MAAM,6BAA6B,CAAC;QACnD,OAAO;QACP,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,mBAAmB;KACpB,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CACzC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,CAClC,CAAC,MAAM,CAAC;IAET,MAAM,OAAO,GAAG,QAAQ;SACrB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;SACzC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,QAAQ;SACpB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;SACzC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC;SAChC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAE3D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;QACpC,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEhF,OAAO;QACL,KAAK,EAAE,uBAAuB,CAAC;YAC7B,OAAO;YACP,WAAW;YACX,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,aAAa;SACd,CAAC;QACF,OAAO,EAAE,kBAAkB,CAAC;YAC1B,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,aAAa;SACd,CAAC;QACF,OAAO,EAAE,WAAW;QACpB,MAAM;QACN,OAAO,EAAE,kBAAkB,CAAC;YAC1B,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,OAAO,EAAE,cAAc;YACvB,UAAU;SACX,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -76,7 +76,7 @@ export function toWorkboardAgentSummary(params) {
|
|
|
76
76
|
degradedCount: params.degradedCount,
|
|
77
77
|
});
|
|
78
78
|
return {
|
|
79
|
-
name: String(params.context.
|
|
79
|
+
name: String(params.context.agent_id || "").trim() || "agent",
|
|
80
80
|
running: true,
|
|
81
81
|
statusText,
|
|
82
82
|
collectedAt: params.collectedAt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Normalizer.js","sourceRoot":"","sources":["../../../src/workboard/runtime/Normalizer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Normalizer.js","sourceRoot":"","sources":["../../../src/workboard/runtime/Normalizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionSummary.d.ts","sourceRoot":"","sources":["../../../src/workboard/runtime/SessionSummary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"SessionSummary.d.ts","sourceRoot":"","sources":["../../../src/workboard/runtime/SessionSummary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CAAC,MAAM,EAAE;IAC1D;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACnC,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAYrC"}
|
|
@@ -5,47 +5,20 @@
|
|
|
5
5
|
* - workboard 只需要模糊运行态,不复用 downcity control 视图模型。
|
|
6
6
|
* - 这里只读取消息数量、更新时间与执行中状态,不暴露消息内容。
|
|
7
7
|
*/
|
|
8
|
-
import fs from "fs-extra";
|
|
9
|
-
import path from "node:path";
|
|
10
8
|
/**
|
|
11
9
|
* 采集 workboard 需要的 session 摘要。
|
|
12
10
|
*/
|
|
13
11
|
export async function listWorkboardSessionSummaries(params) {
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const messages_path = path.join(params.context.paths.getDowncitySessionDirPath(session_id), "messages", "messages.jsonl");
|
|
26
|
-
const stat = await fs.stat(messages_path).catch(() => null);
|
|
27
|
-
items.push({
|
|
28
|
-
sessionId: session_id,
|
|
29
|
-
messageCount: await countJsonlLines(messages_path),
|
|
30
|
-
...(stat ? { updatedAt: stat.mtimeMs } : {}),
|
|
31
|
-
...(params.executingSessionIds?.has(session_id) ? { executing: true } : {}),
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
items.sort((a, b) => (b.updatedAt || 0) - (a.updatedAt || 0));
|
|
35
|
-
return items.slice(0, Math.max(1, params.limit));
|
|
36
|
-
}
|
|
37
|
-
async function countJsonlLines(file_path) {
|
|
38
|
-
const raw = await fs.readFile(file_path, "utf-8").catch(() => "");
|
|
39
|
-
if (!raw)
|
|
40
|
-
return 0;
|
|
41
|
-
return raw.split("\n").filter((line) => line.trim()).length;
|
|
42
|
-
}
|
|
43
|
-
function decodeMaybe(value) {
|
|
44
|
-
try {
|
|
45
|
-
return decodeURIComponent(String(value || "")).trim();
|
|
46
|
-
}
|
|
47
|
-
catch {
|
|
48
|
-
return String(value || "").trim();
|
|
49
|
-
}
|
|
12
|
+
const page = await params.context.sessions.list({
|
|
13
|
+
limit: Math.max(1, params.limit),
|
|
14
|
+
});
|
|
15
|
+
return page.items.map((item) => ({
|
|
16
|
+
sessionId: item.sessionId,
|
|
17
|
+
messageCount: item.messageCount,
|
|
18
|
+
...(typeof item.updatedAt === "number" ? { updatedAt: item.updatedAt } : {}),
|
|
19
|
+
...(item.executing || params.executingSessionIds?.has(item.sessionId)
|
|
20
|
+
? { executing: true }
|
|
21
|
+
: {}),
|
|
22
|
+
}));
|
|
50
23
|
}
|
|
51
24
|
//# sourceMappingURL=SessionSummary.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionSummary.js","sourceRoot":"","sources":["../../../src/workboard/runtime/SessionSummary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"SessionSummary.js","sourceRoot":"","sources":["../../../src/workboard/runtime/SessionSummary.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA0BH;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,MAanD;IACC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC9C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;KACjC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,GAAG,CAAC,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACnE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE;YACrB,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC,CAAC;AACN,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@downcity/plugins",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.193",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Downcity 内建 plugin 集合包",
|
|
6
6
|
"main": "./bin/index.js",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@downcity/agent": "^1.1.
|
|
16
|
-
"@downcity/shell": "^0.1.
|
|
15
|
+
"@downcity/agent": "^1.1.258",
|
|
16
|
+
"@downcity/shell": "^0.1.112",
|
|
17
17
|
"ai": "^6.0.193",
|
|
18
18
|
"better-sqlite3": "^12.10.0",
|
|
19
19
|
"commander": "^15.0.0",
|
|
@@ -39,6 +39,10 @@
|
|
|
39
39
|
"dev": "tsc --watch",
|
|
40
40
|
"typecheck": "tsc --noEmit",
|
|
41
41
|
"test:chat-access": "pnpm build && node --test scripts/chat-access.test.mjs",
|
|
42
|
-
"test:chat-config": "pnpm build && node --test scripts/chat-channel-config.test.mjs"
|
|
42
|
+
"test:chat-config": "pnpm build && node --test scripts/chat-channel-config.test.mjs",
|
|
43
|
+
"test:chat-storage": "pnpm build && node --test scripts/chat-storage.test.mjs",
|
|
44
|
+
"test:skill": "pnpm build && node --test scripts/skill-plugin.test.mjs",
|
|
45
|
+
"test:sound": "pnpm build && node --test scripts/sound-plugin.test.mjs",
|
|
46
|
+
"test:web": "pnpm build && node --test scripts/web-plugin.test.mjs"
|
|
43
47
|
}
|
|
44
48
|
}
|