@my-life-buddies/buddy-runtime 0.23.0 → 0.24.0-dev.0
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/CHANGELOG.md +9 -0
- package/README.md +4 -2
- package/dist/conversation/agent.d.ts +3 -2
- package/dist/conversation/agent.d.ts.map +1 -1
- package/dist/conversation/agent.js +5 -6
- package/dist/conversation/agent.js.map +1 -1
- package/dist/conversation/index.js +2 -3
- package/dist/conversation/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/mlbClient.d.ts +12 -1
- package/dist/mlbClient.d.ts.map +1 -1
- package/dist/mlbClient.js +27 -4
- package/dist/mlbClient.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +84 -39
- package/dist/server.js.map +1 -1
- package/dist/tools/dataAccess.d.ts +9 -4
- package/dist/tools/dataAccess.d.ts.map +1 -1
- package/dist/tools/dataAccess.js +29 -18
- package/dist/tools/dataAccess.js.map +1 -1
- package/dist/tools/dataAccessRequest.d.ts +10 -3
- package/dist/tools/dataAccessRequest.d.ts.map +1 -1
- package/dist/tools/dataAccessRequest.js +36 -8
- package/dist/tools/dataAccessRequest.js.map +1 -1
- package/dist/tools/proactive.d.ts.map +1 -1
- package/dist/tools/proactive.js +2 -4
- package/dist/tools/proactive.js.map +1 -1
- package/dist/types.d.ts +8 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -3
package/dist/server.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// 进程级入口:一只搭子起来后长什么样。
|
|
2
2
|
// 管:读搭子 id(工程 package.json 的 buddyId 字段)与令牌(环境变量 BUDDY_TOKEN),缺一个就启动失败、定网关地址(缺省连 ecs-test,开发者不用填,设了环境变量 MLB_GATEWAY_URL 才覆盖)、
|
|
3
|
-
// 建日志 / MLBClient
|
|
4
|
-
//
|
|
3
|
+
// 建日志 / MLBClient、先连上事件流再做启动准备(注册 data-access.json 声明、读一次 resources/ 目录里的资料、把 widgets/ 目录里的小挂件逐个上传平台,任一上传失败都启动失败;
|
|
4
|
+
// 准备做完之前收到的事件先攒着)、按会话键管一张 ConversationHandle 表、
|
|
5
|
+
// 把事件流的 message / welcome / delete 分发给对应会话、收到 replaced(同一身份有新的进程连上了平台)或 rejected(平台以 4xx 拒了这条事件流)就收尾并退出进程、
|
|
5
6
|
// 每 60 秒淘汰不忙且 30 分钟没消息的会话(淘汰前历史超过触发线的拍快照、回收后在后台压缩写回,见 conversation/compaction.ts)、stop 时把一切收掉。
|
|
6
7
|
// 不管:会话里的纪律(conversation/ 目录)、协议细节(mlbClient.ts)。没有 HTTP 面、没有主动触达、没有会话列表。
|
|
7
8
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -59,6 +60,50 @@ function readBuddyId(dir) {
|
|
|
59
60
|
throw new Error(`${file} 缺 buddyId 字段:搭子 id,创建搭子时平台发的,写成 "buddyId": "b_…"`);
|
|
60
61
|
return pkg.buddyId;
|
|
61
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* 启动准备:读 data-access.json 并整份上传、读一次 resources/ 目录、把 widgets/ 下每个目录的 schema.json 与
|
|
65
|
+
* index.html 逐个上传。三样都是每场会话共用的料,拿不到就启动失败(带着缺了类型的目录跑起来,模型建不出该有的小挂件)。
|
|
66
|
+
* 在事件流连上之后做:这期间来的事件由调用方攒着,见 BuddyServer.start。
|
|
67
|
+
*/
|
|
68
|
+
async function prepare(dir, client, log) {
|
|
69
|
+
const dataRequirements = loadDataAccessRequirements(dir);
|
|
70
|
+
try {
|
|
71
|
+
await client.dataAccessRequirementsUpload(dataRequirements);
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
throw new Error(`${join(dir, DATA_ACCESS_CONFIG_FILE)} 没传上平台:${errorText(e)}`);
|
|
75
|
+
}
|
|
76
|
+
if (dataRequirements.length > 0)
|
|
77
|
+
log.info("DataAccess 声明已传上平台", { file: join(dir, DATA_ACCESS_CONFIG_FILE), datasets: dataRequirements.map((item) => item.id) });
|
|
78
|
+
else
|
|
79
|
+
log.info("DataAccess 空声明已传上平台", { file: join(dir, DATA_ACCESS_CONFIG_FILE), exists: existsSync(join(dir, DATA_ACCESS_CONFIG_FILE)) });
|
|
80
|
+
// 资料:启动时读一次,之后每场会话共用;没有这个目录或里面没有 .md,resource_list 回「没有资料」
|
|
81
|
+
const resourcesDir = join(dir, RESOURCES_DIR);
|
|
82
|
+
const resources = existsSync(resourcesDir) ? loadResources(resourcesDir) : [];
|
|
83
|
+
if (resources.length > 0)
|
|
84
|
+
log.info("资料已读入", { dir: resourcesDir, files: resources.map((r) => r.file) });
|
|
85
|
+
else
|
|
86
|
+
log.info("没有资料", { dir: resourcesDir, exists: existsSync(resourcesDir) });
|
|
87
|
+
// 小挂件:启动时把 widgets/ 下每个目录的 schema.json 与 index.html 传给平台,之后每场会话共用这份类型目录。
|
|
88
|
+
// 有一个读不出或传不上(缺文件、schema 不合法、网络不通)就启动失败:带着缺了类型的目录跑起来,模型建不出该有的小挂件
|
|
89
|
+
const widgetsDir = join(dir, WIDGETS_DIR);
|
|
90
|
+
const widgetTypes = [];
|
|
91
|
+
for (const widget of existsSync(widgetsDir) ? loadWidgets(widgetsDir) : []) {
|
|
92
|
+
try {
|
|
93
|
+
await client.widgetTypeUpload(widget.id, { schema: widget.schema, html: widget.html });
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
throw new Error(`小挂件 ${join(widgetsDir, widget.id)} 没传上平台:${errorText(e)}`);
|
|
97
|
+
}
|
|
98
|
+
const schema = widget.schema;
|
|
99
|
+
widgetTypes.push({ id: widget.id, description: schema.description, modules: schema.modules, openTargets: schema.openTargets });
|
|
100
|
+
}
|
|
101
|
+
if (widgetTypes.length > 0)
|
|
102
|
+
log.info("小挂件已传上平台", { dir: widgetsDir, types: widgetTypes.map((t) => t.id) });
|
|
103
|
+
else
|
|
104
|
+
log.info("没有小挂件", { dir: widgetsDir, exists: existsSync(widgetsDir) });
|
|
105
|
+
return { dataRequirements, resources, widgetTypes };
|
|
106
|
+
}
|
|
62
107
|
export class BuddyServer {
|
|
63
108
|
/** 起一只搭子:连上事件流,之后消息来一条处理一条。返回的 handle 只有 stop */
|
|
64
109
|
static async start(buddy) {
|
|
@@ -73,42 +118,33 @@ export class BuddyServer {
|
|
|
73
118
|
const gatewayUrl = process.env.MLB_GATEWAY_URL || DEFAULT_GATEWAY_URL;
|
|
74
119
|
const log = createLogger(buddyId);
|
|
75
120
|
const client = new MLBClient({ gatewayUrl, token, log });
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
catch (e) {
|
|
103
|
-
throw new Error(`小挂件 ${join(widgetsDir, widget.id)} 没传上平台:${errorText(e)}`);
|
|
104
|
-
}
|
|
105
|
-
const schema = widget.schema;
|
|
106
|
-
widgetTypes.push({ id: widget.id, description: schema.description, modules: schema.modules, openTargets: schema.openTargets });
|
|
121
|
+
// 事件流先连上、再做准备:平台立刻知道这只搭子活着,也立刻拿到连接时报的运行时版本号——版本不合就在这一步被
|
|
122
|
+
// 4xx 拒掉,一份声明都不会传上去。准备做完之前来的事件先攒着:那时 widgetTypes / resources 还没备齐,
|
|
123
|
+
// 拿这份空料建起来的会话会一直用它(要等空闲回收才有机会重建),模型看不到这只搭子的小挂件和资料。
|
|
124
|
+
const pending = [];
|
|
125
|
+
/** 准备期间收到的致命事件:被顶号、被平台拒绝。记下来,准备一做完就退出 */
|
|
126
|
+
let fatal;
|
|
127
|
+
let dispatch = (event) => {
|
|
128
|
+
if (event.type === "replaced")
|
|
129
|
+
fatal = "这个搭子身份有新的进程连上了平台,本进程被顶掉";
|
|
130
|
+
else if (event.type === "rejected")
|
|
131
|
+
fatal = `事件流被平台拒绝:${event.reason}`;
|
|
132
|
+
else
|
|
133
|
+
pending.push(event);
|
|
134
|
+
};
|
|
135
|
+
const stream = new EventStream({ gatewayUrl, token, log, onEvent: (event) => dispatch(event) });
|
|
136
|
+
stream.start();
|
|
137
|
+
const { dataRequirements, resources, widgetTypes } = await prepare(dir, client, log).catch((e) => {
|
|
138
|
+
// 准备失败要连流一起停:留下一条活着的连接,进程就退不掉——start 抛出后搭子工程的 start.mjs 拿不到
|
|
139
|
+
// handle,它 finally 里的 stop 是空操作,事件流的重连定时器和连接会一直把事件循环撑着
|
|
140
|
+
stream.stop();
|
|
141
|
+
throw e;
|
|
142
|
+
});
|
|
143
|
+
if (fatal !== undefined) {
|
|
144
|
+
// 准备期间就被顶号或被拒:流已经停了,会话表和巡检还没开张,直接退出
|
|
145
|
+
log.error(`${fatal},退出`);
|
|
146
|
+
process.exit(1);
|
|
107
147
|
}
|
|
108
|
-
if (widgetTypes.length > 0)
|
|
109
|
-
log.info("小挂件已传上平台", { dir: widgetsDir, types: widgetTypes.map((t) => t.id) });
|
|
110
|
-
else
|
|
111
|
-
log.info("没有小挂件", { dir: widgetsDir, exists: existsSync(widgetsDir) });
|
|
112
148
|
const conversations = new Map();
|
|
113
149
|
const deleted = new Set();
|
|
114
150
|
const proactiveTasks = new Map();
|
|
@@ -157,6 +193,13 @@ export class BuddyServer {
|
|
|
157
193
|
void stop().finally(() => process.exit(1));
|
|
158
194
|
return;
|
|
159
195
|
}
|
|
196
|
+
if (event.type === "rejected") {
|
|
197
|
+
// 平台以 4xx 拒了这条事件流(令牌无效、运行时版本太低):重连多少次结果都一样,收尾退出。
|
|
198
|
+
// 托管的那只由网关按崩溃重拉、五次之后不再拉起,拒绝的原因留在搭子日志里
|
|
199
|
+
log.error(`事件流被平台拒绝,收尾后退出:${event.reason}`);
|
|
200
|
+
void stop().finally(() => process.exit(1));
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
160
203
|
if (event.type === "proactive") {
|
|
161
204
|
if (proactiveTasks.has(event.runId))
|
|
162
205
|
return;
|
|
@@ -187,7 +230,6 @@ export class BuddyServer {
|
|
|
187
230
|
else if (!deleted.has(event.convoKey))
|
|
188
231
|
conversationOf(event.convoKey).notify(event.type === "welcome");
|
|
189
232
|
};
|
|
190
|
-
const stream = new EventStream({ gatewayUrl, token, log, onEvent });
|
|
191
233
|
// 回收后在后台压缩:同一场会话同时只跑一次;stop 时打断
|
|
192
234
|
const compactions = new Map();
|
|
193
235
|
const startCompaction = (key, snapshot) => {
|
|
@@ -227,7 +269,10 @@ export class BuddyServer {
|
|
|
227
269
|
await Promise.all(proactiveTasks.values());
|
|
228
270
|
log.info("搭子已停止", { buddyId });
|
|
229
271
|
};
|
|
230
|
-
|
|
272
|
+
// 机器搭好了:事件改为直接处理,准备期间攒下的按到达顺序补上
|
|
273
|
+
dispatch = onEvent;
|
|
274
|
+
for (const event of pending.splice(0))
|
|
275
|
+
onEvent(event);
|
|
231
276
|
log.info("搭子已启动", { buddyId, gatewayUrl });
|
|
232
277
|
return { stop };
|
|
233
278
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,8 @@ declare const queryParams: Type.TObject<{
|
|
|
8
8
|
datasets: Type.TArray<Type.TString>;
|
|
9
9
|
memberId: Type.TOptional<Type.TString>;
|
|
10
10
|
}>;
|
|
11
|
+
/** 模型可能把成员号的展示标记 # 一并传入;平台协议中的真实 memberId 始终是不带 # 的 m_…。 */
|
|
12
|
+
export declare function normalizeDataAccessMemberId(memberId: string | undefined): string | undefined;
|
|
11
13
|
export interface DataAccessToolDetails {
|
|
12
14
|
kind: "data-access";
|
|
13
15
|
datasets: {
|
|
@@ -31,15 +33,18 @@ export declare class DataAccessUsageTracker {
|
|
|
31
33
|
private readonly queryOverride;
|
|
32
34
|
private readonly proactiveTurn;
|
|
33
35
|
private readonly usage;
|
|
34
|
-
/**
|
|
36
|
+
/** 当前回合最近一次查询到的 Dataset 状态;群聊按成员隔离,避免拿甲的状态给乙发卡。 */
|
|
37
|
+
private readonly latestStatuses;
|
|
38
|
+
/** 真正拿到过授权数据(结果里带 data)的调用 */
|
|
35
39
|
private readonly sensitiveCalls;
|
|
36
40
|
/** 这批工具开始执行前,模型是否已经见过授权数据。并行调用共用同一个快照,避免完成顺序影响脱敏。 */
|
|
37
41
|
private readonly taintedBeforeCall;
|
|
38
42
|
private sensitive;
|
|
39
43
|
track(tool: AgentTool): AgentTool;
|
|
40
|
-
|
|
44
|
+
/** policy 是 dataAccessPolicyOf 补全了缺省值的那份 */
|
|
45
|
+
runForTool<T>(toolCallId: string, toolName: string, policy: Required<DataAccessToolPolicy>, action: () => Promise<T>): Promise<T>;
|
|
41
46
|
/** 已经读取过授权数据后,禁止执行会长期留存或外发内容的工具。 */
|
|
42
|
-
guardTool(name: string,
|
|
47
|
+
guardTool(name: string, { retention }: Required<DataAccessToolPolicy>): void;
|
|
43
48
|
/** message_end 时调用:同一条 assistant 消息里的并行工具,共用执行前的污染状态。 */
|
|
44
49
|
beginToolStep(toolCallIds: readonly string[]): boolean;
|
|
45
50
|
query(client: MLBClient, convoKey: string, datasets: string[], memberId?: string, signal?: AbortSignal): Promise<DatasetAccessResult[]>;
|
|
@@ -49,6 +54,7 @@ export declare class DataAccessUsageTracker {
|
|
|
49
54
|
runProactive<T>(action: () => Promise<T>): Promise<T>;
|
|
50
55
|
isProactive(): boolean;
|
|
51
56
|
details(toolCallId: string): DataAccessToolDetails | undefined;
|
|
57
|
+
latestStatus(datasetId: string, memberId?: string): DatasetAccessResult["status"] | undefined;
|
|
52
58
|
isSensitive(toolCallId: string): boolean;
|
|
53
59
|
/** 只有模型在生成当前工具参数前已经见过数据,或当前工具自己读取过数据,才禁止继续持久化。 */
|
|
54
60
|
isPersistenceTainted(): boolean;
|
|
@@ -59,7 +65,6 @@ export declare class DataAccessUsageTracker {
|
|
|
59
65
|
*/
|
|
60
66
|
guardPersistence(target: string): void;
|
|
61
67
|
hasUsage(): boolean;
|
|
62
|
-
markSensitive(containsData?: boolean): void;
|
|
63
68
|
clear(): void;
|
|
64
69
|
private record;
|
|
65
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAccess.d.ts","sourceRoot":"","sources":["../../src/tools/dataAccess.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAmB,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAExE,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;EAQf,CAAC;AAEH,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAA;KAAE,EAAE,CAAC;CAClE;AAED,8CAA8C;AAC9C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,qBAAqB,CAEvF;AAED,sCAAsC;AACtC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAG1D;AAED,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,qJAA6B,CAAC;AAEtE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CASlF;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiG;IAC5H,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4H;IAI1J,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA4C;IAClE,
|
|
1
|
+
{"version":3,"file":"dataAccess.d.ts","sourceRoot":"","sources":["../../src/tools/dataAccess.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/dataAccess.js
CHANGED
|
@@ -13,8 +13,15 @@ const queryParams = Type.Object({
|
|
|
13
13
|
maxItems: MAX_DATASETS_PER_QUERY,
|
|
14
14
|
uniqueItems: true,
|
|
15
15
|
}),
|
|
16
|
-
memberId: Type.Optional(Type.String({ description: "
|
|
16
|
+
memberId: Type.Optional(Type.String({ description: "群聊数据主体。消息前缀显示为 #m_…,参数只传不带 # 的 m_…;私聊不要传" })),
|
|
17
17
|
});
|
|
18
|
+
/** 模型可能把成员号的展示标记 # 一并传入;平台协议中的真实 memberId 始终是不带 # 的 m_…。 */
|
|
19
|
+
export function normalizeDataAccessMemberId(memberId) {
|
|
20
|
+
const value = memberId?.trim();
|
|
21
|
+
if (!value)
|
|
22
|
+
return undefined;
|
|
23
|
+
return value.startsWith("#m_") ? value.slice(1) : value;
|
|
24
|
+
}
|
|
18
25
|
/** 只保留 Dataset ID 与状态,绝不把 data 放进 details。 */
|
|
19
26
|
export function dataAccessDetails(results) {
|
|
20
27
|
return { kind: "data-access", datasets: results.map(({ id, status }) => ({ id, status })) };
|
|
@@ -52,7 +59,9 @@ export class DataAccessUsageTracker {
|
|
|
52
59
|
// 用 AsyncLocalStorage 而不用布尔字段:作用域内的工具、嵌套异步调用都能自动看到,不用逐层透传,也不会有两个真值来源互相不同步。
|
|
53
60
|
proactiveTurn = new AsyncLocalStorage();
|
|
54
61
|
usage = new Map();
|
|
55
|
-
/**
|
|
62
|
+
/** 当前回合最近一次查询到的 Dataset 状态;群聊按成员隔离,避免拿甲的状态给乙发卡。 */
|
|
63
|
+
latestStatuses = new Map();
|
|
64
|
+
/** 真正拿到过授权数据(结果里带 data)的调用 */
|
|
56
65
|
sensitiveCalls = new Set();
|
|
57
66
|
/** 这批工具开始执行前,模型是否已经见过授权数据。并行调用共用同一个快照,避免完成顺序影响脱敏。 */
|
|
58
67
|
taintedBeforeCall = new Map();
|
|
@@ -69,12 +78,12 @@ export class DataAccessUsageTracker {
|
|
|
69
78
|
}),
|
|
70
79
|
};
|
|
71
80
|
}
|
|
81
|
+
/** policy 是 dataAccessPolicyOf 补全了缺省值的那份 */
|
|
72
82
|
runForTool(toolCallId, toolName, policy, action) {
|
|
73
|
-
return this.activeCall.run({ id: toolCallId, name: toolName, policy
|
|
83
|
+
return this.activeCall.run({ id: toolCallId, name: toolName, policy }, action);
|
|
74
84
|
}
|
|
75
85
|
/** 已经读取过授权数据后,禁止执行会长期留存或外发内容的工具。 */
|
|
76
|
-
guardTool(name,
|
|
77
|
-
const retention = dataAccessPolicyOf({ dataAccessPolicy: policy }).retention;
|
|
86
|
+
guardTool(name, { retention }) {
|
|
78
87
|
if (!this.isPersistenceTainted() || (retention !== "durable" && retention !== "external"))
|
|
79
88
|
return;
|
|
80
89
|
throw new Error(`本回合已经读取用户授权数据,不能执行工具 ${name}(${retention === "external" ? "可能外发内容" : "会长期留存内容"});请只在当前回复中使用,并避免复述敏感数值。`);
|
|
@@ -91,7 +100,8 @@ export class DataAccessUsageTracker {
|
|
|
91
100
|
if (active?.policy.retention === "durable" || active?.policy.retention === "external") {
|
|
92
101
|
throw new Error(`工具 ${active.name} 的 DataAccess 策略允许长期留存或外发内容,不能在同一次执行中读取用户授权数据。`);
|
|
93
102
|
}
|
|
94
|
-
const
|
|
103
|
+
const normalizedMemberId = normalizeDataAccessMemberId(memberId);
|
|
104
|
+
const results = await (this.queryOverride.getStore()?.(datasets, normalizedMemberId, signal) ?? client.queryDataAccess(convoKey, datasets, normalizedMemberId, signal));
|
|
95
105
|
const containsData = results.some((item) => "data" in item);
|
|
96
106
|
if (containsData)
|
|
97
107
|
this.sensitive = true;
|
|
@@ -99,7 +109,7 @@ export class DataAccessUsageTracker {
|
|
|
99
109
|
if (toolCallId !== undefined) {
|
|
100
110
|
if (containsData)
|
|
101
111
|
this.sensitiveCalls.add(toolCallId);
|
|
102
|
-
this.record(toolCallId, results);
|
|
112
|
+
this.record(toolCallId, results, normalizedMemberId);
|
|
103
113
|
}
|
|
104
114
|
return results;
|
|
105
115
|
}
|
|
@@ -115,6 +125,9 @@ export class DataAccessUsageTracker {
|
|
|
115
125
|
details(toolCallId) {
|
|
116
126
|
return this.usage.get(toolCallId);
|
|
117
127
|
}
|
|
128
|
+
latestStatus(datasetId, memberId) {
|
|
129
|
+
return this.latestStatuses.get(dataAccessSubjectKey(datasetId, memberId));
|
|
130
|
+
}
|
|
118
131
|
isSensitive(toolCallId) {
|
|
119
132
|
return this.sensitiveCalls.has(toolCallId);
|
|
120
133
|
}
|
|
@@ -138,28 +151,26 @@ export class DataAccessUsageTracker {
|
|
|
138
151
|
hasUsage() {
|
|
139
152
|
return this.sensitive;
|
|
140
153
|
}
|
|
141
|
-
markSensitive(containsData = true) {
|
|
142
|
-
if (!containsData)
|
|
143
|
-
return;
|
|
144
|
-
this.sensitive = true;
|
|
145
|
-
const toolCallId = this.activeCall.getStore()?.id;
|
|
146
|
-
if (toolCallId !== undefined)
|
|
147
|
-
this.sensitiveCalls.add(toolCallId);
|
|
148
|
-
}
|
|
149
154
|
clear() {
|
|
150
155
|
this.usage.clear();
|
|
156
|
+
this.latestStatuses.clear();
|
|
151
157
|
this.sensitiveCalls.clear();
|
|
152
158
|
this.taintedBeforeCall.clear();
|
|
153
159
|
this.sensitive = false;
|
|
154
160
|
}
|
|
155
|
-
record(toolCallId, results) {
|
|
161
|
+
record(toolCallId, results, memberId) {
|
|
156
162
|
const previous = this.usage.get(toolCallId)?.datasets ?? [];
|
|
157
163
|
const byId = new Map(previous.map((item) => [item.id, item]));
|
|
158
|
-
for (const item of dataAccessDetails(results).datasets)
|
|
164
|
+
for (const item of dataAccessDetails(results).datasets) {
|
|
159
165
|
byId.set(item.id, item);
|
|
166
|
+
this.latestStatuses.set(dataAccessSubjectKey(item.id, memberId), item.status);
|
|
167
|
+
}
|
|
160
168
|
this.usage.set(toolCallId, { kind: "data-access", datasets: [...byId.values()] });
|
|
161
169
|
}
|
|
162
170
|
}
|
|
171
|
+
function dataAccessSubjectKey(datasetId, memberId) {
|
|
172
|
+
return `${memberId ?? ""}\u0000${datasetId}`;
|
|
173
|
+
}
|
|
163
174
|
function resultForModel(results) {
|
|
164
175
|
return {
|
|
165
176
|
content: [{ type: "text", text: JSON.stringify({ datasets: results }) }],
|
|
@@ -173,7 +184,7 @@ export function dataAccessTool(client, convoKey, tracker, requirements) {
|
|
|
173
184
|
name: DATA_ACCESS_TOOL_NAME,
|
|
174
185
|
label: "正在读取授权数据",
|
|
175
186
|
dataAccessPolicy: { retention: "none", result: "derived", arguments: "private" },
|
|
176
|
-
description: "按需读取当前会话中用户授权给你的 Dataset。私聊只传 datasets
|
|
187
|
+
description: "按需读取当前会话中用户授权给你的 Dataset。私聊只传 datasets;群聊必须同时传目标成员的 memberId。消息前缀显示为 #m_…,参数只传不带 # 的 m_…,不能按姓名猜测。逐项状态含 available、notDeclared、notGranted、disabledInGroup、unavailable、systemPermissionDenied;只有 available 才带 data。只有 notGranted 才能继续调用 data_access_request。systemPermissionDenied 表示业务授权仍有效、但用户关闭了系统权限:不要发授权卡,直接请用户到系统设置中重新开启对应权限。unavailable 也不要重复发卡。不要声称自己读到了不可用的数据。" +
|
|
177
188
|
`\n你声明过的 Dataset:\n${catalog}`,
|
|
178
189
|
parameters: queryParams,
|
|
179
190
|
replay: "safe",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAccess.js","sourceRoot":"","sources":["../../src/tools/dataAccess.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dataAccess.js","sourceRoot":"","sources":["../../src/tools/dataAccess.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import type { AgentTool } from "@earendil-works/pi-agent-core";
|
|
2
|
-
import
|
|
2
|
+
import { Type } from "typebox";
|
|
3
3
|
import type { DataAccessRequestInput, DataRequirement, MLBMessageToWrite } from "../types.ts";
|
|
4
|
-
import type
|
|
4
|
+
import { type DataAccessUsageTracker } from "./dataAccess.ts";
|
|
5
|
+
declare const requestParams: Type.TObject<{
|
|
6
|
+
reason: Type.TString;
|
|
7
|
+
datasets: Type.TArray<Type.TString>;
|
|
8
|
+
memberId: Type.TOptional<Type.TString>;
|
|
9
|
+
}>;
|
|
5
10
|
export declare function validateDataAccessRequest(input: DataAccessRequestInput, convoKey: string, requirements: readonly DataRequirement[]): DataAccessRequestInput;
|
|
6
|
-
|
|
11
|
+
/** 给一场会话造 data_access_request。enqueue 是这场会话的发送队列;onRequested 告诉运行时这一轮发了等用户操作的卡 */
|
|
12
|
+
export declare function dataAccessRequestTool(convoKey: string, enqueue: (message: MLBMessageToWrite) => void, tracker: DataAccessUsageTracker, requirements: readonly DataRequirement[], onRequested: () => void): AgentTool<typeof requestParams, undefined>;
|
|
13
|
+
export {};
|
|
7
14
|
//# sourceMappingURL=dataAccessRequest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAccessRequest.d.ts","sourceRoot":"","sources":["../../src/tools/dataAccessRequest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataAccessRequest.d.ts","sourceRoot":"","sources":["../../src/tools/dataAccessRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAA+B,KAAK,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAI3F,QAAA,MAAM,aAAa;;;;EAIjB,CAAC;AAEH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,eAAe,EAAE,GAAG,sBAAsB,CAmB3J;AAED,kFAAkF;AAClF,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,EAC7C,OAAO,EAAE,sBAAsB,EAC/B,YAAY,EAAE,SAAS,eAAe,EAAE,EACxC,WAAW,EAAE,MAAM,IAAI,GACrB,SAAS,CAAC,OAAO,aAAa,EAAE,SAAS,CAAC,CA2B5C"}
|
|
@@ -1,36 +1,64 @@
|
|
|
1
|
+
// DataAccess 权限请求卡工具:校验私聊/群聊目标、Dataset 声明和本轮查询状态;不管平台授权交互。对应 REDoc《【技术设计】DataAccess》
|
|
1
2
|
import { Type } from "typebox";
|
|
3
|
+
import { normalizeDataAccessMemberId } from "./dataAccess.js";
|
|
4
|
+
const SINGLE_DATASET_REQUESTS = new Set(["device.location", "device.calendar"]);
|
|
2
5
|
const requestParams = Type.Object({
|
|
3
6
|
reason: Type.String({ minLength: 1, maxLength: 300, description: "为什么当前任务需要这项权限" }),
|
|
4
7
|
datasets: Type.Array(Type.String(), { minItems: 1, maxItems: 8, uniqueItems: true }),
|
|
8
|
+
memberId: Type.Optional(Type.String({ description: "群聊必填。消息前缀显示为 #m_…,参数只传不带 # 的 m_…;私聊不要传" })),
|
|
5
9
|
});
|
|
6
10
|
export function validateDataAccessRequest(input, convoKey, requirements) {
|
|
7
|
-
|
|
8
|
-
|
|
11
|
+
const privateConversation = convoKey.startsWith("p_");
|
|
12
|
+
const groupConversation = convoKey.startsWith("g_");
|
|
13
|
+
if (!privateConversation && !groupConversation)
|
|
14
|
+
throw new Error("权限请求卡只支持私聊或群聊");
|
|
15
|
+
const memberId = normalizeDataAccessMemberId(input.memberId);
|
|
16
|
+
if (privateConversation && memberId !== undefined && memberId.length > 0)
|
|
17
|
+
throw new Error("私聊权限请求不能传 memberId");
|
|
18
|
+
if (groupConversation && (memberId === undefined || !memberId.startsWith("m_") || memberId.length <= 2)) {
|
|
19
|
+
throw new Error("群聊权限请求必须传目标成员的 memberId(消息里显示为 #m_…,参数为不带 # 的 m_…),不能按姓名猜测");
|
|
20
|
+
}
|
|
9
21
|
const reason = input.reason.trim();
|
|
10
22
|
if (!reason || reason.length > 300)
|
|
11
23
|
throw new Error("权限用途需要 1~300 字");
|
|
12
24
|
const datasets = [...new Set(input.datasets)];
|
|
13
25
|
if (datasets.length === 0 || datasets.length > 8)
|
|
14
26
|
throw new Error("授权请求需要 1~8 个 Dataset");
|
|
27
|
+
if (datasets.length > 1 && datasets.some((id) => SINGLE_DATASET_REQUESTS.has(id))) {
|
|
28
|
+
throw new Error("位置和日历授权卡每次只能单独申请一个 Dataset;请选择回答当前问题必需的一项,等用户处理后再按需继续");
|
|
29
|
+
}
|
|
15
30
|
const declared = new Map(requirements.map((item) => [item.id, item]));
|
|
16
31
|
if (datasets.some((id) => !declared.has(id)))
|
|
17
32
|
throw new Error("授权请求只能包含已声明的 Dataset");
|
|
18
|
-
return { reason, datasets };
|
|
33
|
+
return groupConversation ? { reason, datasets, memberId } : { reason, datasets };
|
|
19
34
|
}
|
|
20
|
-
|
|
21
|
-
|
|
35
|
+
/** 给一场会话造 data_access_request。enqueue 是这场会话的发送队列;onRequested 告诉运行时这一轮发了等用户操作的卡 */
|
|
36
|
+
export function dataAccessRequestTool(convoKey, enqueue, tracker, requirements, onRequested) {
|
|
37
|
+
return {
|
|
22
38
|
name: "data_access_request",
|
|
23
39
|
label: "正在请求授权",
|
|
24
40
|
dataAccessPolicy: { retention: "conversation", result: "independent", arguments: "user-visible" },
|
|
25
|
-
description: "
|
|
41
|
+
description: "向用户展示统一权限卡。私聊不要传 memberId;群聊必须传目标成员的 memberId。消息前缀显示为 #m_…,参数只传不带 # 的 m_…;卡片全群可见但仅该成员可操作,不能按姓名猜测。调用前必须先用相同 memberId 的 data_access_query 查询;只允许为状态为 notGranted 的已声明 Dataset 发卡。位置或日历每次只能单独申请一个 Dataset;存在多个未授权项时,先申请回答当前问题必需的一项。systemPermissionDenied 表示业务授权仍有效、但用户关闭了系统权限,应直接引导用户到系统设置中开启,不能发卡。发卡后结束本轮并等待目标成员操作。",
|
|
26
42
|
parameters: requestParams,
|
|
27
43
|
execute: async (callId, params) => {
|
|
28
44
|
const input = validateDataAccessRequest(params, convoKey, requirements);
|
|
45
|
+
const statuses = input.datasets.map((id) => ({ id, status: tracker.latestStatus(id, input.memberId) }));
|
|
46
|
+
const notQueried = statuses.filter(({ status }) => status === undefined).map(({ id }) => id);
|
|
47
|
+
if (notQueried.length > 0) {
|
|
48
|
+
throw new Error(`发授权卡前必须先用 data_access_query 查询:${notQueried.join("、")}。只有查询结果为 notGranted 的 Dataset 才能申请授权。`);
|
|
49
|
+
}
|
|
50
|
+
const systemDenied = statuses.filter(({ status }) => status === "systemPermissionDenied").map(({ id }) => id);
|
|
51
|
+
if (systemDenied.length > 0) {
|
|
52
|
+
throw new Error(`${systemDenied.join("、")} 的业务授权仍有效,但用户关闭了系统权限;不要重复发送授权卡,请直接引导用户到系统设置中重新开启对应权限。`);
|
|
53
|
+
}
|
|
54
|
+
const notRequestable = statuses.filter(({ status }) => status !== "notGranted");
|
|
55
|
+
if (notRequestable.length > 0) {
|
|
56
|
+
throw new Error(`只有 notGranted 才能发送授权卡;当前状态:${notRequestable.map(({ id, status }) => `${id}=${status}`).join("、")}。请根据状态直接回复用户。`);
|
|
57
|
+
}
|
|
29
58
|
enqueue({ type: "permissionRequest", text: input.reason, permissionRequest: input, idempotencyKey: `permission:${callId}` });
|
|
30
|
-
onRequested
|
|
59
|
+
onRequested();
|
|
31
60
|
return { content: [{ type: "text", text: "权限请求卡已发送,请等待用户处理。" }], details: undefined, terminate: true };
|
|
32
61
|
},
|
|
33
62
|
};
|
|
34
|
-
return [request];
|
|
35
63
|
}
|
|
36
64
|
//# sourceMappingURL=dataAccessRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAccessRequest.js","sourceRoot":"","sources":["../../src/tools/dataAccessRequest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataAccessRequest.js","sourceRoot":"","sources":["../../src/tools/dataAccessRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proactive.d.ts","sourceRoot":"","sources":["../../src/tools/proactive.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,+BAA+B,CAAC;AAEhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAkC9D,0DAA0D;AAC1D,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,4BAA4B,EAAE,YAAY,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,4BAA4B,CAAA;CAAE,CAoBrM;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,eAAe,EAAE,EAAE,eAAe,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"proactive.d.ts","sourceRoot":"","sources":["../../src/tools/proactive.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,+BAA+B,CAAC;AAEhF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAkC9D,0DAA0D;AAC1D,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,4BAA4B,EAAE,YAAY,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,4BAA4B,CAAA;CAAE,CAoBrM;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,eAAe,EAAE,EAAE,eAAe,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAmD7M"}
|
package/dist/tools/proactive.js
CHANGED
|
@@ -93,10 +93,8 @@ export function proactiveTools(client, convoKey, requirements, dataAccessUsage)
|
|
|
93
93
|
description: "按稳定 key 关闭当前私聊的一条主动服务订阅。",
|
|
94
94
|
parameters: keyParams,
|
|
95
95
|
execute: async (_callId, params, signal) => {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
throw new Error("key 需要是 1~64 位小写字母、数字、点、下划线或横线,且首位是字母或数字");
|
|
99
|
-
const unsubscribed = await client.unsubscribeProactive(convoKey, normalizedKey, signal);
|
|
96
|
+
// key 合不合规 pi 调工具前已按参数 schema 的 pattern 验过
|
|
97
|
+
const unsubscribed = await client.unsubscribeProactive(convoKey, params.key, signal);
|
|
100
98
|
return text(unsubscribed ? "主动服务已关闭。" : "没有找到对应的主动服务。");
|
|
101
99
|
},
|
|
102
100
|
};
|