@ai-setting/roy-agent-core 1.7.71 → 1.7.72
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/dist/env/agent/agent-component.js +2 -2
- package/dist/env/agent/index.js +2 -2
- package/dist/env/agent/summary-agent.d.ts +6 -15
- package/dist/env/agent/types.d.ts +0 -17
- package/dist/env/event-source/event-source-handlers.js +3 -3
- package/dist/env/event-source/index.js +4 -4
- package/dist/env/index.js +15 -16
- package/dist/env/llm/index.js +1 -1
- package/dist/env/llm/temperature-policy.d.ts +107 -0
- package/dist/env/llm/types.d.ts +2 -2
- package/dist/env/prompt/index.js +2 -2
- package/dist/env/prompt/prompts-index.d.ts +2 -2
- package/dist/env/session/__bench__/replay-compact.d.ts +137 -0
- package/dist/env/session/__bench__/run-replay.d.ts +15 -0
- package/dist/env/session/compact-checkpoint-content.d.ts +67 -0
- package/dist/env/session/index.d.ts +1 -0
- package/dist/env/session/index.js +2 -3
- package/dist/env/session/session-component.d.ts +47 -30
- package/dist/env/session/storage/index.js +1 -1
- package/dist/env/session/storage/sqlite.d.ts +8 -0
- package/dist/env/session/types.d.ts +45 -30
- package/dist/env/task/delegate/delegate-tool.js +3 -3
- package/dist/env/task/delegate/index.js +3 -3
- package/dist/env/task/index.js +4 -4
- package/dist/env/task/plugins/index.js +2 -2
- package/dist/env/workflow/engine/index.js +2 -3
- package/dist/env/workflow/index.js +6 -7
- package/dist/env/workflow/tools/index.js +3 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.js +17 -18
- package/dist/shared/@ai-setting/{roy-agent-core-1gsbqesr.js → roy-agent-core-1p6syv85.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-mwa6apzx.js → roy-agent-core-2gzt2q8c.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-9geem94g.js → roy-agent-core-34jz9mgh.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-k13pxrpk.js → roy-agent-core-5gw0qa8m.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-101qtkyc.js → roy-agent-core-7qvw65jt.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-002g6nfk.js → roy-agent-core-attpry6g.js} +3 -3
- package/dist/shared/@ai-setting/{roy-agent-core-37tj4y6a.js → roy-agent-core-gr48c89p.js} +3 -3
- package/dist/shared/@ai-setting/{roy-agent-core-0cb6w0k7.js → roy-agent-core-hfyfavp3.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-hfr6bzts.js → roy-agent-core-jgb3bb42.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-9bshyqjn.js → roy-agent-core-pakhchy7.js} +183 -132
- package/dist/shared/@ai-setting/{roy-agent-core-02j24hrg.js → roy-agent-core-rxb00gjm.js} +70 -3
- package/dist/shared/@ai-setting/{roy-agent-core-8cx7cfdg.js → roy-agent-core-skyc30qx.js} +1 -2
- package/dist/shared/@ai-setting/{roy-agent-core-hy3zn2q2.js → roy-agent-core-sm0sf6sb.js} +20 -0
- package/dist/shared/@ai-setting/{roy-agent-core-mw2cen6s.js → roy-agent-core-vah6g5yx.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-07fvy74y.js → roy-agent-core-vm8h5zyj.js} +20 -6
- package/dist/shared/@ai-setting/{roy-agent-core-5repth1n.js → roy-agent-core-wr7mv7k3.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-zsbh9bfv.js → roy-agent-core-y12kyxwa.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-zv8bswpw.js → roy-agent-core-yhwxpj12.js} +33 -19
- package/package.json +1 -1
- package/dist/shared/@ai-setting/roy-agent-core-ze068vc9.js +0 -37
|
@@ -270,34 +270,48 @@ class AgentRegistry {
|
|
|
270
270
|
}
|
|
271
271
|
registerCompactAgent() {
|
|
272
272
|
const name = "compact";
|
|
273
|
-
if (this.agents.has(name))
|
|
274
|
-
return;
|
|
275
273
|
const agent = {
|
|
276
274
|
name,
|
|
277
275
|
type: "sub",
|
|
278
276
|
description: "压缩子智能体 — 从父 session 的历史消息中提取结构化 checkpoint JSON",
|
|
279
277
|
systemPromptRef: "compact",
|
|
280
|
-
allowedTools: [
|
|
278
|
+
allowedTools: [],
|
|
281
279
|
deniedTools: [],
|
|
282
280
|
maxIterations: 3,
|
|
283
281
|
filterHistory: false
|
|
284
282
|
};
|
|
283
|
+
const existing = this.agents.get(name);
|
|
284
|
+
if (existing) {
|
|
285
|
+
this.agents.set(name, {
|
|
286
|
+
...agent,
|
|
287
|
+
description: existing.description ?? agent.description
|
|
288
|
+
});
|
|
289
|
+
logger.info(`[AgentRegistry] Built-in compact agent overrode user-level definition ` + `(tool whitelist enforced: allowedTools=[])`);
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
285
292
|
this.agents.set(name, agent);
|
|
286
293
|
}
|
|
287
294
|
registerCompactHintAgent() {
|
|
288
295
|
const name = "compact-hint";
|
|
289
|
-
if (this.agents.has(name))
|
|
290
|
-
return;
|
|
291
296
|
const agent = {
|
|
292
297
|
name,
|
|
293
298
|
type: "sub",
|
|
294
299
|
description: "压缩提示子智能体 — 分析父 session 历史,生成场景化压缩指导提示",
|
|
295
300
|
systemPromptRef: "compact-hint",
|
|
296
|
-
allowedTools: [
|
|
301
|
+
allowedTools: [],
|
|
297
302
|
deniedTools: [],
|
|
298
303
|
maxIterations: 3,
|
|
299
304
|
filterHistory: false
|
|
300
305
|
};
|
|
306
|
+
const existing = this.agents.get(name);
|
|
307
|
+
if (existing) {
|
|
308
|
+
this.agents.set(name, {
|
|
309
|
+
...agent,
|
|
310
|
+
description: existing.description ?? agent.description
|
|
311
|
+
});
|
|
312
|
+
logger.info(`[AgentRegistry] Built-in compact-hint agent overrode user-level definition ` + `(tool whitelist enforced: allowedTools=[])`);
|
|
313
|
+
return;
|
|
314
|
+
}
|
|
301
315
|
this.agents.set(name, agent);
|
|
302
316
|
}
|
|
303
317
|
registerRoyAgent() {
|
|
@@ -1264,28 +1264,42 @@ outputs: [] # 输出定义(可空)
|
|
|
1264
1264
|
- ❌ 不要使用 bash 或其他工具(严格使用 4 个 workflow 工具)`,
|
|
1265
1265
|
compact: `# Session Checkpoint Generator
|
|
1266
1266
|
|
|
1267
|
-
你是专业的会话 checkpoint
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
-
|
|
1279
|
-
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
-
|
|
1267
|
+
你是专业的会话 checkpoint 生成器。阅读对话历史,输出一份**自然语言**的会话 checkpoint,
|
|
1268
|
+
供后续接手者(可能是新的 AI 会话)快速了解"之前发生了什么、现在到哪一步了、接下来要做什么"。
|
|
1269
|
+
|
|
1270
|
+
## 输出要求
|
|
1271
|
+
|
|
1272
|
+
**直接输出 checkpoint 正文**,用自己的话写,形式自由(连续段落、要点列表、混合都行)。
|
|
1273
|
+
内容上要覆盖这几件事(不要求任何段落标题,也不要求固定顺序):
|
|
1274
|
+
|
|
1275
|
+
- 这次会话做了什么、进展到哪一步
|
|
1276
|
+
- 关键决策 / 关键发现 / 踩过的坑
|
|
1277
|
+
- 当前状态:手上有什么、卡在哪里
|
|
1278
|
+
- 后续要做什么
|
|
1279
|
+
- 用户的核心诉求
|
|
1280
|
+
|
|
1281
|
+
## 硬性要求
|
|
1282
|
+
|
|
1283
|
+
- **不要**输出 JSON、不要代码块围栏、不要"以下是 checkpoint"之类的开场白
|
|
1284
|
+
- **不要**使用固定的小节标题模板(如 Summary / Current State 之类),自然叙述即可
|
|
1285
|
+
- 直接用中文写(除非对话本身是英文)
|
|
1286
|
+
- 信息密度优先:写具体的东西(文件名、命令、报错原文、参数值),不要空泛概括
|
|
1287
|
+
- 篇幅控制在能让人快速读完的长度(约 200-800 字),拖沓冗余不如简洁
|
|
1288
|
+
- 用户输入里若带了场景提示(scenario hint),它指明了重点关注方向,请优先覆盖`,
|
|
1284
1289
|
"compact-hint": `# Compact Hint Generator
|
|
1285
1290
|
|
|
1286
|
-
|
|
1291
|
+
你是会话压缩指导提示生成器。分析对话历史,产出一段"压缩关注点提示",告诉
|
|
1292
|
+
checkpoint 生成器在压缩这次会话时**最该保留什么**。
|
|
1293
|
+
|
|
1294
|
+
## 输出要求
|
|
1295
|
+
|
|
1296
|
+
- **直接回复提示正文**(3-4 句话),不要 JSON、不要代码块、不要工具调用、不要任何额外说明或开场白
|
|
1297
|
+
- 内容要具体:指出本次会话的主题、当前进展、以及压缩时最该保留的信息
|
|
1298
|
+
- 用自然语言描述,可以是一段话或几条要点
|
|
1299
|
+
|
|
1300
|
+
示例:
|
|
1287
1301
|
|
|
1288
|
-
|
|
1302
|
+
会话围绕 lark-cli 多 profile 部署展开:已完成 profile 选型与凭据写入,当前卡在用户身份 reply 的权限确认。压缩时应重点保留各 profile 的 region 与凭据路径,以及权限报错原文。`,
|
|
1289
1303
|
"workflow-creator": `# Workflow Creator (交互式 workflow 构建子代理)
|
|
1290
1304
|
|
|
1291
1305
|
## 你的身份
|
package/package.json
CHANGED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
__esm
|
|
3
|
-
} from "./roy-agent-core-fs0mn2jk.js";
|
|
4
|
-
|
|
5
|
-
// src/utils/loose-json.ts
|
|
6
|
-
function tryParseJsonString(s) {
|
|
7
|
-
try {
|
|
8
|
-
const parsed = JSON.parse(s);
|
|
9
|
-
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
10
|
-
return parsed;
|
|
11
|
-
}
|
|
12
|
-
} catch {}
|
|
13
|
-
return null;
|
|
14
|
-
}
|
|
15
|
-
function tryParseJsonFromText(text) {
|
|
16
|
-
if (!text || typeof text !== "string")
|
|
17
|
-
return null;
|
|
18
|
-
const direct = tryParseJsonString(text.trim());
|
|
19
|
-
if (direct)
|
|
20
|
-
return direct;
|
|
21
|
-
const codeBlock = text.match(/```(?:json|JSON)?\s*\n?([\s\S]*?)\n?\s*```/);
|
|
22
|
-
if (codeBlock) {
|
|
23
|
-
const parsed = tryParseJsonString(codeBlock[1].trim());
|
|
24
|
-
if (parsed)
|
|
25
|
-
return parsed;
|
|
26
|
-
}
|
|
27
|
-
const jsonMatch = text.match(/\{[\s\S]*\}/);
|
|
28
|
-
if (jsonMatch) {
|
|
29
|
-
const parsed = tryParseJsonString(jsonMatch[0]);
|
|
30
|
-
if (parsed)
|
|
31
|
-
return parsed;
|
|
32
|
-
}
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
var init_loose_json = () => {};
|
|
36
|
-
|
|
37
|
-
export { tryParseJsonFromText, init_loose_json };
|