@yach.zhiyinlou.com/yach 2.16.0-beta.1 → 2.16.0-beta.2
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.
|
@@ -105,10 +105,83 @@ async function downloadToTempFile(url) {
|
|
|
105
105
|
fileStream.on("error", reject);
|
|
106
106
|
});
|
|
107
107
|
}
|
|
108
|
+
/** 正文单次返回长度(JavaScript 字符串长度,汉字计 1) */
|
|
109
|
+
const DOC_PAGE_LENGTH = 5000;
|
|
110
|
+
/** 全文缓存时长。带 offset 的续读不再重复导出或 get_text */
|
|
111
|
+
const DOC_CACHE_TTL_MS = 10 * 60 * 1000;
|
|
112
|
+
const DOC_CACHE_MAX = 20;
|
|
113
|
+
const docContentCache = new Map();
|
|
114
|
+
/** 用来源和文档定位拼缓存键。导出与兜底正文分开存放 */
|
|
115
|
+
function docContentCacheKey(source, loc, sheetName) {
|
|
116
|
+
return `${source}|${loc.fileUrl ?? ""}|${loc.guid ?? ""}|${loc.knNodeId ?? ""}|${sheetName ?? ""}`;
|
|
117
|
+
}
|
|
118
|
+
/** 读取未过期的全文;过期则删除 */
|
|
119
|
+
function readDocContentCache(key) {
|
|
120
|
+
const entry = docContentCache.get(key);
|
|
121
|
+
if (!entry)
|
|
122
|
+
return undefined;
|
|
123
|
+
if (Date.now() - entry.storedAt > DOC_CACHE_TTL_MS) {
|
|
124
|
+
docContentCache.delete(key);
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
return entry.content;
|
|
128
|
+
}
|
|
129
|
+
/** 写入全文。超出条数时丢掉最早的一条 */
|
|
130
|
+
function writeDocContentCache(key, content) {
|
|
131
|
+
if (docContentCache.has(key))
|
|
132
|
+
docContentCache.delete(key);
|
|
133
|
+
if (docContentCache.size >= DOC_CACHE_MAX) {
|
|
134
|
+
const oldest = docContentCache.keys().next().value;
|
|
135
|
+
if (oldest)
|
|
136
|
+
docContentCache.delete(oldest);
|
|
137
|
+
}
|
|
138
|
+
docContentCache.set(key, { content, storedAt: Date.now() });
|
|
139
|
+
}
|
|
140
|
+
/** 超长正文的分片说明。不足 3 片时要求不要向用户提及分片 */
|
|
141
|
+
function pagedDocMessage(sliced) {
|
|
142
|
+
const pageCount = Math.ceil(sliced.contentLength / DOC_PAGE_LENGTH);
|
|
143
|
+
const contextNote = "上下文即将占满时,把之前已经总结的内容整理后返回给用户。";
|
|
144
|
+
const quietNote = pageCount < 3 ? "全文不足 3 片,不要向用户提及分片。" : "";
|
|
145
|
+
if (sliced.hasMore) {
|
|
146
|
+
return `文档超过 ${DOC_PAGE_LENGTH} 字,当前只返回第 ${sliced.offset + 1}-${sliced.nextOffset} 字(全文 ${sliced.contentLength} 字)。请用相同定位参数、offset=${sliced.nextOffset} 继续读取。读完所有分片后再总结,不要只根据本片回答。${contextNote}${quietNote}`;
|
|
147
|
+
}
|
|
148
|
+
return `已返回最后一片(第 ${sliced.offset + 1}-${sliced.nextOffset} 字,全文 ${sliced.contentLength} 字)。请结合前面各片再总结。${contextNote}${quietNote}`;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* 全文超长时按固定长度切片。
|
|
152
|
+
* 未超出单页且从开头读时原样返回;offset 超出全文时返回空片。
|
|
153
|
+
*/
|
|
154
|
+
function sliceDocContent(content, offset) {
|
|
155
|
+
const contentLength = content.length;
|
|
156
|
+
const start = typeof offset === "number" && Number.isFinite(offset) && offset > 0
|
|
157
|
+
? Math.floor(offset)
|
|
158
|
+
: 0;
|
|
159
|
+
const safeStart = Math.min(start, contentLength);
|
|
160
|
+
if (contentLength <= DOC_PAGE_LENGTH && safeStart === 0) {
|
|
161
|
+
return {
|
|
162
|
+
content,
|
|
163
|
+
contentLength,
|
|
164
|
+
offset: 0,
|
|
165
|
+
nextOffset: contentLength,
|
|
166
|
+
hasMore: false,
|
|
167
|
+
chunked: false,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
const end = Math.min(safeStart + DOC_PAGE_LENGTH, contentLength);
|
|
171
|
+
return {
|
|
172
|
+
content: content.slice(safeStart, end),
|
|
173
|
+
contentLength,
|
|
174
|
+
offset: safeStart,
|
|
175
|
+
nextOffset: end,
|
|
176
|
+
hasMore: end < contentLength,
|
|
177
|
+
chunked: true,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
108
180
|
/**
|
|
109
181
|
* 生成内容预览
|
|
110
182
|
*/
|
|
111
183
|
function generateContentPreview(content) {
|
|
184
|
+
log.info(`[yach-doc] generateContentPreview: ${content.length}`);
|
|
112
185
|
const previewLength = 100000;
|
|
113
186
|
if (!content)
|
|
114
187
|
return "";
|
|
@@ -228,6 +301,9 @@ const DocSummarizeSchema = Type.Object({
|
|
|
228
301
|
sheet_name: Type.Optional(Type.String({
|
|
229
302
|
description: "表格精读模式:指定要读取的 sheet 名称。不传则自动判断:内容 ≤10 万字符时全量返回,超出时返回所有 sheet 的概览(前 10 行样本)",
|
|
230
303
|
})),
|
|
304
|
+
offset: Type.Optional(Type.Number({
|
|
305
|
+
description: "分片起点(JavaScript 字符串长度,汉字计 1)。正文超过 5000 字时每次返回 5000 字;第一页不要传。hasMore 为 true 时用返回的 nextOffset 继续读取,直到读完再总结",
|
|
306
|
+
})),
|
|
231
307
|
});
|
|
232
308
|
// ── 工具函数 ─────────────────────────────────────────────────────────────
|
|
233
309
|
export function createDocSummarizeTool() {
|
|
@@ -249,7 +325,31 @@ export function createDocSummarizeTool() {
|
|
|
249
325
|
let tempFilepath = ""; // 回调内外共用,异常时 finally 可清理
|
|
250
326
|
try {
|
|
251
327
|
return await client.invoke("yach_doc_summarize", async (c) => {
|
|
328
|
+
const docLoc = {
|
|
329
|
+
fileUrl: params.file_url,
|
|
330
|
+
guid: params.guid,
|
|
331
|
+
knNodeId: params.kn_node_id,
|
|
332
|
+
};
|
|
252
333
|
try {
|
|
334
|
+
const exportCacheKey = docContentCacheKey("export", docLoc, params.sheet_name);
|
|
335
|
+
const pageOffset = params.offset ?? 0;
|
|
336
|
+
if (pageOffset > 0) {
|
|
337
|
+
const cached = readDocContentCache(exportCacheKey);
|
|
338
|
+
if (cached !== undefined) {
|
|
339
|
+
log.info(`[yach-doc] 导出全文命中缓存 ${cached.length} 字,offset=${pageOffset}`);
|
|
340
|
+
const sliced = sliceDocContent(cached, params.offset);
|
|
341
|
+
return jsonResult({
|
|
342
|
+
ok: true,
|
|
343
|
+
content: sliced.content,
|
|
344
|
+
contentLength: sliced.contentLength,
|
|
345
|
+
offset: sliced.offset,
|
|
346
|
+
nextOffset: sliced.nextOffset,
|
|
347
|
+
hasMore: sliced.hasMore,
|
|
348
|
+
chunkLength: DOC_PAGE_LENGTH,
|
|
349
|
+
message: pagedDocMessage(sliced),
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
}
|
|
253
353
|
let downloadUrl = "";
|
|
254
354
|
let actualExportFormat;
|
|
255
355
|
let actualDocUrl = loc;
|
|
@@ -299,14 +399,33 @@ export function createDocSummarizeTool() {
|
|
|
299
399
|
error: "文档内容为空或太短,无法总结",
|
|
300
400
|
});
|
|
301
401
|
}
|
|
402
|
+
const sliced = sliceDocContent(textContent, params.offset);
|
|
403
|
+
if (textContent.length > DOC_PAGE_LENGTH) {
|
|
404
|
+
writeDocContentCache(exportCacheKey, textContent);
|
|
405
|
+
}
|
|
406
|
+
if (!sliced.chunked) {
|
|
407
|
+
return jsonResult({
|
|
408
|
+
ok: true,
|
|
409
|
+
downloadUrl,
|
|
410
|
+
exportFormat: actualExportFormat,
|
|
411
|
+
actualDocUrl,
|
|
412
|
+
contentLength: textContent.length,
|
|
413
|
+
contentPreview: generateContentPreview(textContent),
|
|
414
|
+
message: "文档内容已提取。请将 content 或 contentPreview 发送给 AI 助手进行总结。",
|
|
415
|
+
});
|
|
416
|
+
}
|
|
302
417
|
return jsonResult({
|
|
303
418
|
ok: true,
|
|
304
419
|
downloadUrl,
|
|
305
420
|
exportFormat: actualExportFormat,
|
|
306
421
|
actualDocUrl,
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
422
|
+
content: sliced.content,
|
|
423
|
+
contentLength: sliced.contentLength,
|
|
424
|
+
offset: sliced.offset,
|
|
425
|
+
nextOffset: sliced.nextOffset,
|
|
426
|
+
hasMore: sliced.hasMore,
|
|
427
|
+
chunkLength: DOC_PAGE_LENGTH,
|
|
428
|
+
message: pagedDocMessage(sliced),
|
|
310
429
|
});
|
|
311
430
|
}
|
|
312
431
|
catch (err) {
|
|
@@ -321,19 +440,40 @@ export function createDocSummarizeTool() {
|
|
|
321
440
|
catch (cleanupError) { }
|
|
322
441
|
}
|
|
323
442
|
try {
|
|
324
|
-
const
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
443
|
+
const cacheKey = docContentCacheKey("text", docLoc);
|
|
444
|
+
const offset = params.offset ?? 0;
|
|
445
|
+
let content = offset > 0 ? readDocContentCache(cacheKey) : undefined;
|
|
446
|
+
if (content === undefined) {
|
|
447
|
+
const fallbackResult = await c.doc.readText(docLoc);
|
|
448
|
+
content = fallbackResult.content || "";
|
|
449
|
+
if (content.length > DOC_PAGE_LENGTH) {
|
|
450
|
+
writeDocContentCache(cacheKey, content);
|
|
451
|
+
}
|
|
452
|
+
log.info(`[yach-doc] get_text 已获取全文 ${content.length} 字`);
|
|
453
|
+
}
|
|
454
|
+
else {
|
|
455
|
+
log.info(`[yach-doc] 兜底全文命中缓存 ${content.length} 字,offset=${offset}`);
|
|
456
|
+
}
|
|
457
|
+
const sliced = sliceDocContent(content, params.offset);
|
|
458
|
+
if (!sliced.chunked) {
|
|
459
|
+
return jsonResult({
|
|
460
|
+
ok: true,
|
|
461
|
+
content: sliced.content,
|
|
462
|
+
contentLength: sliced.contentLength,
|
|
463
|
+
contentPreview: generateContentPreview(sliced.content),
|
|
464
|
+
message: "文档总结流程异常,已通过 get_text 获取文档内容。",
|
|
465
|
+
fallback: true,
|
|
466
|
+
});
|
|
467
|
+
}
|
|
329
468
|
return jsonResult({
|
|
330
469
|
ok: true,
|
|
331
|
-
content:
|
|
332
|
-
contentLength:
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
470
|
+
content: sliced.content,
|
|
471
|
+
contentLength: sliced.contentLength,
|
|
472
|
+
offset: sliced.offset,
|
|
473
|
+
nextOffset: sliced.nextOffset,
|
|
474
|
+
hasMore: sliced.hasMore,
|
|
475
|
+
chunkLength: DOC_PAGE_LENGTH,
|
|
476
|
+
message: pagedDocMessage(sliced),
|
|
337
477
|
fallback: true,
|
|
338
478
|
});
|
|
339
479
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summarize.js","sourceRoot":"","sources":["../../../../src/tools/doc/summarize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"summarize.js","sourceRoot":"","sources":["../../../../src/tools/doc/summarize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* yach_tools_upload_file — 本地文件上传 COS(app token)
|
|
3
|
+
*
|
|
4
|
+
* 将本地文件上传到知音楼 COS 存储并返回可访问的 URL。
|
|
5
|
+
* 纯上传能力,不导入文档、不建知识库节点、不发消息。
|
|
6
|
+
*/
|
|
7
|
+
import { readFile } from "node:fs/promises";
|
|
8
|
+
import { basename, extname } from "node:path";
|
|
9
|
+
import { Type } from "@sinclair/typebox";
|
|
10
|
+
import { jsonResult } from "openclaw/plugin-sdk/agent-runtime";
|
|
11
|
+
import { createYachToolClient } from "../../core/tool-client.js";
|
|
12
|
+
import { handleInvokeErrorWithAutoAuth } from "../auto-auth.js";
|
|
13
|
+
import { StringEnum } from "../helpers.js";
|
|
14
|
+
const EXT_TO_MIME = {
|
|
15
|
+
".jpg": "image/jpeg", ".jpeg": "image/jpeg", ".png": "image/png", ".gif": "image/gif",
|
|
16
|
+
".webp": "image/webp", ".bmp": "image/bmp", ".svg": "image/svg+xml",
|
|
17
|
+
".mp4": "video/mp4", ".mov": "video/quicktime", ".avi": "video/x-msvideo",
|
|
18
|
+
".mkv": "video/x-matroska", ".webm": "video/webm", ".m4v": "video/x-m4v",
|
|
19
|
+
".mp3": "audio/mpeg", ".m4a": "audio/mp4", ".amr": "audio/amr", ".aac": "audio/aac",
|
|
20
|
+
".pdf": "application/pdf", ".zip": "application/zip",
|
|
21
|
+
".txt": "text/plain", ".md": "text/markdown", ".html": "text/html", ".csv": "text/csv",
|
|
22
|
+
".doc": "application/msword",
|
|
23
|
+
".docx": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
|
24
|
+
".xls": "application/vnd.ms-excel",
|
|
25
|
+
".xlsx": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
26
|
+
".ppt": "application/vnd.ms-powerpoint",
|
|
27
|
+
".pptx": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
|
|
28
|
+
};
|
|
29
|
+
function guessContentType(filename) {
|
|
30
|
+
return EXT_TO_MIME[extname(filename).toLowerCase()] ?? "application/octet-stream";
|
|
31
|
+
}
|
|
32
|
+
const UploadFileSchema = Type.Object({
|
|
33
|
+
file_path: Type.String({ description: "本地文件绝对路径(必填)" }),
|
|
34
|
+
filename: Type.Optional(Type.String({ description: "上传后在 COS 上的文件名(含扩展名)。缺省时取 file_path 的文件名" })),
|
|
35
|
+
cos_type: Type.Optional(StringEnum(["image", "security", "file"], {
|
|
36
|
+
description: "COS 存储类型:image=图片;security=安全相关;file=普通文件(默认)",
|
|
37
|
+
})),
|
|
38
|
+
content_type: Type.Optional(Type.String({ description: "文件 MIME 类型。缺省时按文件名扩展名推断,无法识别时为 application/octet-stream" })),
|
|
39
|
+
});
|
|
40
|
+
export function createUploadFileTool() {
|
|
41
|
+
return {
|
|
42
|
+
name: "yach_tools_upload_file",
|
|
43
|
+
label: "本地文件转 COS 地址",
|
|
44
|
+
description: "当有本地文件、需要拿到该文件的 COS 地址时使用:将本地文件上传至知音楼 COS 并返回可访问的 URL(app token,无需用户 OAuth 授权)。" +
|
|
45
|
+
"仅做上传拿地址,不导入文档、不建知识库节点、不发消息;把本地文件上传/导入到知音楼(文档、知识库)请改用对应工具。",
|
|
46
|
+
parameters: UploadFileSchema,
|
|
47
|
+
execute: async (_toolCallId, rawParams) => {
|
|
48
|
+
const params = rawParams;
|
|
49
|
+
if (!params.file_path) {
|
|
50
|
+
return jsonResult({ ok: false, error: "file_path 为必填" });
|
|
51
|
+
}
|
|
52
|
+
const client = createYachToolClient();
|
|
53
|
+
try {
|
|
54
|
+
const data = await readFile(params.file_path);
|
|
55
|
+
const filename = params.filename || basename(params.file_path);
|
|
56
|
+
const contentType = params.content_type || guessContentType(filename);
|
|
57
|
+
const cosType = params.cos_type || "file";
|
|
58
|
+
const url = await client.invoke("yach_tools_upload_file", (c) => c.cos.upload({ filename, data, contentType, cosType }), { as: "app" });
|
|
59
|
+
return jsonResult({ url, filename, content_type: contentType, cos_type: cosType });
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
return handleInvokeErrorWithAutoAuth(err, undefined, { toolName: "yach_tools_upload_file" });
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
export function registerYachToolTools(api) {
|
|
68
|
+
api.registerTool(createUploadFileTool());
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tools/yach-tool/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yach.zhiyinlou.com/yach",
|
|
3
|
-
"version": "2.16.0-beta.
|
|
3
|
+
"version": "2.16.0-beta.2",
|
|
4
4
|
"description": "OpenClaw Yach (知音楼) channel plugin",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"order": 80
|
|
67
67
|
},
|
|
68
68
|
"install": {
|
|
69
|
-
"npmSpec": "@yach.zhiyinlou.com/yach@2.16.0-beta.
|
|
69
|
+
"npmSpec": "@yach.zhiyinlou.com/yach@2.16.0-beta.2",
|
|
70
70
|
"defaultChoice": "npm",
|
|
71
71
|
"minHostVersion": ">=2026.3.22"
|
|
72
72
|
}
|
|
@@ -46,6 +46,7 @@ IM 等来源的文档链接是富文本,不是纯 URL:
|
|
|
46
46
|
| `format` | 可选 | 指定导出格式(默认自动判断):`pdf`/`docx`/`md`;表格 `xlsx` |
|
|
47
47
|
| `summary_prompt` | 可选 | 总结提示词,如"请提炼三个核心结论" |
|
|
48
48
|
| `sheet_name` | 可选 | 表格精读:指定要读取的 sheet 名称(见下方表格读取说明) |
|
|
49
|
+
| `offset` | 可选 | 分片起点。`hasMore` 为 true 时传返回里的 `nextOffset`;第一页不要传 |
|
|
49
50
|
|
|
50
51
|
## 表格(xlsx)读取策略
|
|
51
52
|
|
|
@@ -71,7 +72,9 @@ IM 等来源的文档链接是富文本,不是纯 URL:
|
|
|
71
72
|
| `/form/` | 表单 | `pdf` |
|
|
72
73
|
| 其他(`/doc/` 等) | 普通文档 | `docx` |
|
|
73
74
|
|
|
74
|
-
|
|
75
|
+
**分页**:导出解析和兜底读取都适用。正文超过 5000 字时按 5000 字分片,只返回当前片,并带 `hasMore`、`nextOffset`。`hasMore` 为 true 时,必须用相同定位参数、`offset=nextOffset` 继续读,直到 `hasMore` 为 false,再总结。禁止只根据第一片回答。第一页不要传 `offset`。上下文即将占满时,把之前已经总结的内容整理后返回给用户。全文不足 3 片时,不要向用户提及分片。
|
|
76
|
+
|
|
77
|
+
**兜底机制**:若导出/解析失败,自动回退到直接读取(`readText`),分页规则与上面相同。
|
|
75
78
|
|
|
76
79
|
## yach_doc_file export 参数
|
|
77
80
|
|