@yach.zhiyinlou.com/yach 2.12.5 → 2.12.6

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.
@@ -0,0 +1,229 @@
1
+ /**
2
+ * Cron ticket 持久化存储。
3
+ *
4
+ * `scheduleSessionTurn` wrap 在父 chat 的 async context 里同步触发,
5
+ * 调用 `getYachTicket()` 拿到父 ticket,按 cron 的 sessionKey 存入此 store。
6
+ * Cron 触发时包过的 Yach tool 通过 `withPropagatedTicket` 反查并 `withYachTicket`。
7
+ *
8
+ * 跨平台实现同 `user-token-store.ts`:
9
+ * macOS – Keychain(service = "openclaw-yach-cron-tickets",account = "all")
10
+ * Linux – AES-256-GCM 加密文件(XDG_DATA_HOME)
11
+ * Windows – AES-256-GCM 加密文件(%LOCALAPPDATA%)
12
+ *
13
+ * 存储布局:单个 JSON blob `{ [cronSessionKey]: YachTicket }`,
14
+ * 写串行化以避免 read-modify-write 竞争。
15
+ */
16
+ import { execFile as execFileCb } from "node:child_process";
17
+ import { promisify } from "node:util";
18
+ import { mkdir, unlink, readFile, writeFile, chmod } from "node:fs/promises";
19
+ import { join } from "node:path";
20
+ import { homedir } from "node:os";
21
+ import { randomBytes, createCipheriv, createDecipheriv } from "node:crypto";
22
+ import { yachLogger } from "./yach-logger.js";
23
+ const log = yachLogger("cron-ticket-store");
24
+ const execFile = promisify(execFileCb);
25
+ // ── 常量 ──────────────────────────────────────────────────────────────────
26
+ const KEYCHAIN_SERVICE = "openclaw-yach-cron-tickets";
27
+ const KEYCHAIN_ACCOUNT = "all";
28
+ // ── macOS 后端 ────────────────────────────────────────────────────────────
29
+ const darwinBackend = {
30
+ async get(service, account) {
31
+ try {
32
+ const { stdout } = await execFile("security", [
33
+ "find-generic-password", "-s", service, "-a", account, "-w",
34
+ ]);
35
+ return stdout.trim() || null;
36
+ }
37
+ catch {
38
+ return null;
39
+ }
40
+ },
41
+ async set(service, account, data) {
42
+ try {
43
+ await execFile("security", ["delete-generic-password", "-s", service, "-a", account]);
44
+ }
45
+ catch { /* 不存在,忽略 */ }
46
+ await execFile("security", ["add-generic-password", "-s", service, "-a", account, "-w", data]);
47
+ },
48
+ async remove(service, account) {
49
+ try {
50
+ await execFile("security", ["delete-generic-password", "-s", service, "-a", account]);
51
+ }
52
+ catch { /* 已不存在 */ }
53
+ },
54
+ };
55
+ // ── Linux 后端(AES-256-GCM 加密文件)────────────────────────────────────
56
+ const LINUX_UAT_DIR = join(process.env.XDG_DATA_HOME || join(homedir(), ".local", "share"), "openclaw-yach-cron-tickets");
57
+ const LINUX_MASTER_KEY_PATH = join(LINUX_UAT_DIR, "master.key");
58
+ const MASTER_KEY_BYTES = 32;
59
+ const IV_BYTES = 12;
60
+ const TAG_BYTES = 16;
61
+ function linuxSafeFileName(account) {
62
+ return account.replace(/[^a-zA-Z0-9._-]/g, "_") + ".enc";
63
+ }
64
+ async function ensureLinuxCredDir() {
65
+ await mkdir(LINUX_UAT_DIR, { recursive: true, mode: 0o700 });
66
+ }
67
+ async function getMasterKey() {
68
+ try {
69
+ const key = await readFile(LINUX_MASTER_KEY_PATH);
70
+ if (key.length === MASTER_KEY_BYTES)
71
+ return key;
72
+ }
73
+ catch (err) {
74
+ if (!(err instanceof Error) || err.code !== "ENOENT") {
75
+ log.warn(`failed to read master key: ${err}`);
76
+ }
77
+ }
78
+ await ensureLinuxCredDir();
79
+ const key = randomBytes(MASTER_KEY_BYTES);
80
+ await writeFile(LINUX_MASTER_KEY_PATH, key, { mode: 0o600 });
81
+ await chmod(LINUX_MASTER_KEY_PATH, 0o600);
82
+ return key;
83
+ }
84
+ function encryptData(plaintext, key) {
85
+ const iv = randomBytes(IV_BYTES);
86
+ const cipher = createCipheriv("aes-256-gcm", key, iv);
87
+ const enc = Buffer.concat([cipher.update(plaintext, "utf8"), cipher.final()]);
88
+ return Buffer.concat([iv, cipher.getAuthTag(), enc]);
89
+ }
90
+ function decryptData(data, key) {
91
+ if (data.length < IV_BYTES + TAG_BYTES)
92
+ return null;
93
+ try {
94
+ const iv = data.subarray(0, IV_BYTES);
95
+ const tag = data.subarray(IV_BYTES, IV_BYTES + TAG_BYTES);
96
+ const enc = data.subarray(IV_BYTES + TAG_BYTES);
97
+ const decipher = createDecipheriv("aes-256-gcm", key, iv);
98
+ decipher.setAuthTag(tag);
99
+ return Buffer.concat([decipher.update(enc), decipher.final()]).toString("utf8");
100
+ }
101
+ catch {
102
+ return null;
103
+ }
104
+ }
105
+ const linuxBackend = {
106
+ async get(_service, account) {
107
+ try {
108
+ const key = await getMasterKey();
109
+ const data = await readFile(join(LINUX_UAT_DIR, linuxSafeFileName(account)));
110
+ return decryptData(data, key);
111
+ }
112
+ catch {
113
+ return null;
114
+ }
115
+ },
116
+ async set(_service, account, data) {
117
+ const key = await getMasterKey();
118
+ await ensureLinuxCredDir();
119
+ const filePath = join(LINUX_UAT_DIR, linuxSafeFileName(account));
120
+ await writeFile(filePath, encryptData(data, key), { mode: 0o600 });
121
+ await chmod(filePath, 0o600);
122
+ },
123
+ async remove(_service, account) {
124
+ try {
125
+ await unlink(join(LINUX_UAT_DIR, linuxSafeFileName(account)));
126
+ }
127
+ catch { /* 已不存在 */ }
128
+ },
129
+ };
130
+ // ── Windows 后端(AES-256-GCM 加密文件)──────────────────────────────────
131
+ const WIN32_UAT_DIR = join(process.env.LOCALAPPDATA ?? join(process.env.USERPROFILE ?? homedir(), "AppData", "Local"), "openclaw-yach-cron-tickets");
132
+ const WIN32_MASTER_KEY_PATH = join(WIN32_UAT_DIR, "master.key");
133
+ function win32SafeFileName(account) {
134
+ return account.replace(/[^a-zA-Z0-9._-]/g, "_") + ".enc";
135
+ }
136
+ async function ensureWin32CredDir() {
137
+ await mkdir(WIN32_UAT_DIR, { recursive: true });
138
+ }
139
+ async function getWin32MasterKey() {
140
+ try {
141
+ const key = await readFile(WIN32_MASTER_KEY_PATH);
142
+ if (key.length === MASTER_KEY_BYTES)
143
+ return key;
144
+ }
145
+ catch { /* 生成新 key */ }
146
+ await ensureWin32CredDir();
147
+ const key = randomBytes(MASTER_KEY_BYTES);
148
+ await writeFile(WIN32_MASTER_KEY_PATH, key);
149
+ return key;
150
+ }
151
+ const win32Backend = {
152
+ async get(_service, account) {
153
+ try {
154
+ const key = await getWin32MasterKey();
155
+ const data = await readFile(join(WIN32_UAT_DIR, win32SafeFileName(account)));
156
+ return decryptData(data, key);
157
+ }
158
+ catch {
159
+ return null;
160
+ }
161
+ },
162
+ async set(_service, account, data) {
163
+ const key = await getWin32MasterKey();
164
+ await ensureWin32CredDir();
165
+ const filePath = join(WIN32_UAT_DIR, win32SafeFileName(account));
166
+ await writeFile(filePath, encryptData(data, key));
167
+ },
168
+ async remove(_service, account) {
169
+ try {
170
+ await unlink(join(WIN32_UAT_DIR, win32SafeFileName(account)));
171
+ }
172
+ catch { /* 已不存在 */ }
173
+ },
174
+ };
175
+ // ── 平台选择 ──────────────────────────────────────────────────────────────
176
+ function createBackend() {
177
+ switch (process.platform) {
178
+ case "darwin": return darwinBackend;
179
+ case "linux": return linuxBackend;
180
+ case "win32": return win32Backend;
181
+ default: return linuxBackend;
182
+ }
183
+ }
184
+ const backend = createBackend();
185
+ let writeChain = Promise.resolve();
186
+ async function readAll() {
187
+ try {
188
+ const json = await backend.get(KEYCHAIN_SERVICE, KEYCHAIN_ACCOUNT);
189
+ if (!json)
190
+ return {};
191
+ const parsed = JSON.parse(json);
192
+ return parsed && typeof parsed === "object" ? parsed : {};
193
+ }
194
+ catch {
195
+ return {};
196
+ }
197
+ }
198
+ async function writeAll(record) {
199
+ await backend.set(KEYCHAIN_SERVICE, KEYCHAIN_ACCOUNT, JSON.stringify(record));
200
+ }
201
+ // ── 公开 API ──────────────────────────────────────────────────────────────
202
+ export async function getCronTicket(cronSessionKey) {
203
+ const record = await readAll();
204
+ return record[cronSessionKey];
205
+ }
206
+ export async function setCronTicket(cronSessionKey, t) {
207
+ writeChain = writeChain.then(async () => {
208
+ const record = await readAll();
209
+ record[cronSessionKey] = t;
210
+ await writeAll(record);
211
+ }).catch((err) => {
212
+ log.warn(`setCronTicket failed for ${cronSessionKey}: ${err}`);
213
+ });
214
+ await writeChain;
215
+ }
216
+ export async function deleteCronTicket(cronSessionKey) {
217
+ writeChain = writeChain.then(async () => {
218
+ const record = await readAll();
219
+ delete record[cronSessionKey];
220
+ await writeAll(record);
221
+ }).catch((err) => {
222
+ log.warn(`deleteCronTicket failed for ${cronSessionKey}: ${err}`);
223
+ });
224
+ await writeChain;
225
+ }
226
+ export async function listCronTickets() {
227
+ return await readAll();
228
+ }
229
+ //# sourceMappingURL=cron-ticket-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron-ticket-store.js","sourceRoot":"","sources":["../../../src/core/cron-ticket-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * toolCallId -> sessionKey 临时桥接 Map。
3
+ *
4
+ * `AnyAgentTool.execute` 的签名是 `(toolCallId, params, signal?, onUpdate?)`,
5
+ * 拿不到 `sessionKey`。但 `before_tool_call` hook 拿得到 `event.toolCallId` 和
6
+ * `ctx.sessionKey`。在 hook 里把映射写入此 Map,包过的 execute 用 toolCallId
7
+ * 反查 sessionKey,查完即删。
8
+ */
9
+ const toolCallIdToSessionKey = new Map();
10
+ export function bridgeSet(toolCallId, sessionKey) {
11
+ if (sessionKey)
12
+ toolCallIdToSessionKey.set(toolCallId, sessionKey);
13
+ }
14
+ export function bridgeGet(toolCallId) {
15
+ return toolCallIdToSessionKey.get(toolCallId);
16
+ }
17
+ export function bridgeDelete(toolCallId) {
18
+ toolCallIdToSessionKey.delete(toolCallId);
19
+ }
20
+ //# sourceMappingURL=session-key-bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-key-bridge.js","sourceRoot":"","sources":["../../../src/core/session-key-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEzD,MAAM,UAAU,SAAS,CAAC,UAAkB,EAAE,UAA8B;IAC1E,IAAI,UAAU;QAAE,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,UAAkB;IAC1C,OAAO,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Subagent ticket 传递 - 进程内 sidecar Map。
3
+ *
4
+ * `subagent_spawning` hook 在父 agent 的 async context 里同步触发,
5
+ * 调用 `getYachTicket()` 拿到父 ticket,按 `childSessionKey` 存入此 Map。
6
+ * 包过的 Yach tool 执行时通过 `withPropagatedTicket` 反查并 `withYachTicket`。
7
+ *
8
+ * 不持久化:subagent 不跨进程重启存活,进程重启后 sidecar 自然清空。
9
+ */
10
+ const store = new Map();
11
+ export function setSubagentTicket(childSessionKey, t) {
12
+ store.set(childSessionKey, t);
13
+ }
14
+ export function getSubagentTicket(childSessionKey) {
15
+ return store.get(childSessionKey);
16
+ }
17
+ export function deleteSubagentTicket(childSessionKey) {
18
+ store.delete(childSessionKey);
19
+ }
20
+ export function hasSubagentTicket(childSessionKey) {
21
+ return store.has(childSessionKey);
22
+ }
23
+ //# sourceMappingURL=subagent-ticket-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subagent-ticket-store.js","sourceRoot":"","sources":["../../../src/core/subagent-ticket-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE5C,MAAM,UAAU,iBAAiB,CAAC,eAAuB,EAAE,CAAa;IACtE,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,eAAuB;IACvD,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,eAAuB;IAC1D,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,eAAuB;IACvD,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Ticket 传递 helper:根据 sessionKey 反查 subagent sidecar 或 cron store,
3
+ * 找到就 `withYachTicket` 包一层执行 fn。
4
+ *
5
+ * 优先级:
6
+ * 1. subagent sidecar Map(同步、内存命中)
7
+ * 2. cron ticket store(异步、文件/Keychain 命中)
8
+ * 3. 都没有 -> 不包,直接执行(让现有 `if (!ticket)` fallback 处理)
9
+ */
10
+ import { withYachTicket } from "./yach-ticket.js";
11
+ import { getSubagentTicket } from "./subagent-ticket-store.js";
12
+ import { getCronTicket } from "./cron-ticket-store.js";
13
+ export async function withPropagatedTicket(sessionKey, fn) {
14
+ if (!sessionKey)
15
+ return fn();
16
+ const sub = getSubagentTicket(sessionKey);
17
+ if (sub) {
18
+ return withYachTicket(sub, fn);
19
+ }
20
+ const cron = await getCronTicket(sessionKey);
21
+ if (cron) {
22
+ return withYachTicket(cron, fn);
23
+ }
24
+ return fn();
25
+ }
26
+ /** 同步版本:只在 subagent sidecar 命中时包一层;cron store 异步不查。 */
27
+ export function withPropagatedTicketSync(sessionKey, fn) {
28
+ if (!sessionKey)
29
+ return fn();
30
+ const sub = getSubagentTicket(sessionKey);
31
+ if (sub)
32
+ return withYachTicket(sub, fn);
33
+ return fn();
34
+ }
35
+ //# sourceMappingURL=ticket-propagation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-propagation.js","sourceRoot":"","sources":["../../../src/core/ticket-propagation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,cAAc,EAAmB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAA8B,EAC9B,EAAoB;IAEpB,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,EAAE,CAAC;IAE7B,MAAM,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,EAAE,EAAE,CAAC;AACd,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,wBAAwB,CACtC,UAA8B,EAC9B,EAAwB;IAExB,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,GAAG;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,OAAO,EAAE,EAAE,CAAC;AACd,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * YachChatApi — 知音楼 OAPI 中 "/openapi/v2/chat/..." 命名空间封装。
3
+ *
4
+ * 当前包含:按 access_token 解析的 app_id 反查应用创建人/管理者。
5
+ */
6
+ import { oapiFetch } from "../core/fetch.js";
7
+ import { yachLogger } from "../core/yach-logger.js";
8
+ import { YachApiError } from "./errors.js";
9
+ const log = yachLogger("oapi/chat");
10
+ // ── YachChatApi ──────────────────────────────────────────────────────────────
11
+ export class YachChatApi {
12
+ baseUrl;
13
+ getToken;
14
+ constructor(baseUrl, getToken) {
15
+ this.baseUrl = baseUrl;
16
+ this.getToken = getToken;
17
+ }
18
+ /**
19
+ * 通过 access_token 解析出 app_id,反查 t_app_info.user_id,
20
+ * 再调 userservice RPC 取得该应用的创建人/管理者信息。
21
+ *
22
+ * 接口路径:POST /openapi/v2/chat/user/query/by_app_info
23
+ * - 入参:仅 access_token(无需其他请求体)
24
+ * - 出参:成功 { code:200, obj:{ uuid, name, work_code } }
25
+ * - 查不到:{ code:200, obj:"" }(空串)
26
+ *
27
+ * @returns 找到时返回 AppManagerInfo;查不到时返回 `null`。
28
+ */
29
+ async getAppManagerByAppInfo() {
30
+ const token = await this.getToken();
31
+ log.debug("getAppManagerByAppInfo");
32
+ const res = await oapiFetch(`${this.baseUrl}/openapi/v2/chat/user/query/by_app_info`, {
33
+ method: "POST",
34
+ headers: { "Content-Type": "application/json" },
35
+ body: JSON.stringify({ access_token: token }),
36
+ });
37
+ const text = await res.text();
38
+ let data;
39
+ try {
40
+ data = JSON.parse(text);
41
+ }
42
+ catch {
43
+ throw new Error(`[yach-oapi] getAppManagerByAppInfo parse error: HTTP ${res.status} – ${text.slice(0, 200)}`);
44
+ }
45
+ if (data.code !== 200 && data.code !== 0) {
46
+ throw new YachApiError(`[yach-oapi] getAppManagerByAppInfo error: ${text}`, data.code);
47
+ }
48
+ // obj 为空串 / 缺失 / 非对象 → 视为查不到,返回 null
49
+ if (!data.obj || typeof data.obj !== "object") {
50
+ log.debug("getAppManagerByAppInfo not found");
51
+ return null;
52
+ }
53
+ const info = data.obj;
54
+ if (!info.uuid && !info.work_code && !info.name) {
55
+ log.debug("getAppManagerByAppInfo empty obj");
56
+ return null;
57
+ }
58
+ log.debug("getAppManagerByAppInfo ok", {
59
+ uuid: info.uuid,
60
+ work_code: info.work_code,
61
+ });
62
+ return info;
63
+ }
64
+ }
65
+ //# sourceMappingURL=chat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/oapi/chat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;AAgBpC,gFAAgF;AAEhF,MAAM,OAAO,WAAW;IAEH;IACA;IAFnB,YACmB,OAAe,EACf,QAA+B;QAD/B,YAAO,GAAP,OAAO,CAAQ;QACf,aAAQ,GAAR,QAAQ,CAAuB;IAC/C,CAAC;IAEJ;;;;;;;;;;OAUG;IACH,KAAK,CAAC,sBAAsB;QAC1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEpC,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAEpC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,OAAO,yCAAyC,EAAE;YACpF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;SAC9C,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,IAIH,CAAC;QACF,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,wDAAwD,GAAG,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC7F,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,YAAY,CACpB,6CAA6C,IAAI,EAAE,EACnD,IAAI,CAAC,IAAI,CACV,CAAC;QACJ,CAAC;QAED,qCAAqC;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAqB,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAChD,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,2BAA2B,EAAE;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -181,8 +181,8 @@ async function parseFileContent(filepath, ext) {
181
181
  text += cells.map((c) => String(c ?? "")).join(",") + "\n";
182
182
  }
183
183
  text += "\n";
184
- return text;
185
184
  }
185
+ return text;
186
186
  }
187
187
  catch (err) {
188
188
  log.error("parseFileContent error", { err, filepath, ext });
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yach.zhiyinlou.com/yach",
3
- "version": "2.12.5",
3
+ "version": "2.12.6",
4
4
  "description": "OpenClaw Yach (知音楼) channel plugin",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -64,7 +64,7 @@
64
64
  "order": 80
65
65
  },
66
66
  "install": {
67
- "npmSpec": "@yach.zhiyinlou.com/yach@2.12.5",
67
+ "npmSpec": "@yach.zhiyinlou.com/yach@2.12.6",
68
68
  "defaultChoice": "npm",
69
69
  "minHostVersion": ">=2026.3.22"
70
70
  }