@zooique/memora 5.0.0 → 5.2.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.
Files changed (102) hide show
  1. package/CHANGELOG.md +142 -7
  2. package/README.en.md +7 -3
  3. package/README.md +7 -3
  4. package/dist/agent/agent.d.ts +5 -2
  5. package/dist/agent/agent.d.ts.map +1 -1
  6. package/dist/agent/agent.js +8 -3
  7. package/dist/agent/agent.js.map +1 -1
  8. package/dist/agent/assembler.d.ts.map +1 -1
  9. package/dist/agent/assembler.js +37 -19
  10. package/dist/agent/assembler.js.map +1 -1
  11. package/dist/agent/builtinToolHandlers.d.ts +23 -2
  12. package/dist/agent/builtinToolHandlers.d.ts.map +1 -1
  13. package/dist/agent/builtinToolHandlers.js +22 -11
  14. package/dist/agent/builtinToolHandlers.js.map +1 -1
  15. package/dist/agent/builtinTools.d.ts +16 -0
  16. package/dist/agent/builtinTools.d.ts.map +1 -1
  17. package/dist/agent/builtinTools.js +11 -1
  18. package/dist/agent/builtinTools.js.map +1 -1
  19. package/dist/agent/constants.d.ts +27 -0
  20. package/dist/agent/constants.d.ts.map +1 -1
  21. package/dist/agent/constants.js +27 -0
  22. package/dist/agent/constants.js.map +1 -1
  23. package/dist/agent/contextManager.d.ts +31 -3
  24. package/dist/agent/contextManager.d.ts.map +1 -1
  25. package/dist/agent/contextManager.js +39 -2
  26. package/dist/agent/contextManager.js.map +1 -1
  27. package/dist/agent/guardRail.d.ts +24 -9
  28. package/dist/agent/guardRail.d.ts.map +1 -1
  29. package/dist/agent/guardRail.js +153 -45
  30. package/dist/agent/guardRail.js.map +1 -1
  31. package/dist/agent/loop.d.ts +3 -3
  32. package/dist/agent/loop.d.ts.map +1 -1
  33. package/dist/agent/loop.js +23 -12
  34. package/dist/agent/loop.js.map +1 -1
  35. package/dist/agent/managers/llmCaller.d.ts.map +1 -1
  36. package/dist/agent/managers/llmCaller.js +14 -1
  37. package/dist/agent/managers/llmCaller.js.map +1 -1
  38. package/dist/agent/managers/sessionManager.d.ts.map +1 -1
  39. package/dist/agent/managers/sessionManager.js +1 -0
  40. package/dist/agent/managers/sessionManager.js.map +1 -1
  41. package/dist/agent/messageHistory.d.ts +3 -0
  42. package/dist/agent/messageHistory.d.ts.map +1 -1
  43. package/dist/agent/messageHistory.js +14 -0
  44. package/dist/agent/messageHistory.js.map +1 -1
  45. package/dist/agent/seed/orchestrator.d.ts +2 -1
  46. package/dist/agent/seed/orchestrator.d.ts.map +1 -1
  47. package/dist/agent/seed/orchestrator.js +3 -3
  48. package/dist/agent/seed/orchestrator.js.map +1 -1
  49. package/dist/agent/seed/prepare.d.ts +3 -1
  50. package/dist/agent/seed/prepare.d.ts.map +1 -1
  51. package/dist/agent/seed/prepare.js +10 -2
  52. package/dist/agent/seed/prepare.js.map +1 -1
  53. package/dist/agent/sessionStateMachine.d.ts +3 -0
  54. package/dist/agent/sessionStateMachine.d.ts.map +1 -1
  55. package/dist/agent/sessionStateMachine.js.map +1 -1
  56. package/dist/agent/textSanitize.d.ts +1 -1
  57. package/dist/agent/textSanitize.js +1 -1
  58. package/dist/agent/toolExecutor.d.ts +18 -12
  59. package/dist/agent/toolExecutor.d.ts.map +1 -1
  60. package/dist/agent/toolExecutor.js +114 -19
  61. package/dist/agent/toolExecutor.js.map +1 -1
  62. package/dist/index.d.ts +2 -0
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +5 -0
  65. package/dist/index.js.map +1 -1
  66. package/dist/llm/factory.d.ts +21 -0
  67. package/dist/llm/factory.d.ts.map +1 -1
  68. package/dist/llm/factory.js +4 -1
  69. package/dist/llm/factory.js.map +1 -1
  70. package/dist/llm/openaiCompatible.d.ts +8 -1
  71. package/dist/llm/openaiCompatible.d.ts.map +1 -1
  72. package/dist/llm/openaiCompatible.js +26 -0
  73. package/dist/llm/openaiCompatible.js.map +1 -1
  74. package/dist/llm/provider.d.ts +65 -0
  75. package/dist/llm/provider.d.ts.map +1 -1
  76. package/dist/llm/provider.js +10 -0
  77. package/dist/llm/provider.js.map +1 -1
  78. package/dist/memory/inMemorySessionStore.d.ts.map +1 -1
  79. package/dist/memory/inMemorySessionStore.js +11 -0
  80. package/dist/memory/inMemorySessionStore.js.map +1 -1
  81. package/dist/memory/roundStore.d.ts +7 -0
  82. package/dist/memory/roundStore.d.ts.map +1 -1
  83. package/dist/memory/roundStore.js.map +1 -1
  84. package/dist/memory/sessionStore.d.ts +8 -0
  85. package/dist/memory/sessionStore.d.ts.map +1 -1
  86. package/dist/memory/sessionStore.js.map +1 -1
  87. package/dist/security/confirmEntries.d.ts +21 -6
  88. package/dist/security/confirmEntries.d.ts.map +1 -1
  89. package/dist/security/confirmEntries.js +21 -6
  90. package/dist/security/confirmEntries.js.map +1 -1
  91. package/dist/security/pathGuard.d.ts +43 -9
  92. package/dist/security/pathGuard.d.ts.map +1 -1
  93. package/dist/security/pathGuard.js +69 -9
  94. package/dist/security/pathGuard.js.map +1 -1
  95. package/docs/architecture/role-pack-authoring-guide.md +4 -0
  96. package/docs/architecture/role-pack-spec.md +9 -5
  97. package/docs/memora-api-reference.md +21 -7
  98. package/docs/memora-/346/216/245/345/205/245/346/214/207/345/215/227.md +47 -17
  99. package/package.json +7 -1
  100. package/role-packs/memora/345/212/251/346/211/213/rules.md +1 -0
  101. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/rules.md +1 -0
  102. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/rules.md +2 -1
@@ -1,12 +1,22 @@
1
+ /**
2
+ * 工具执行器
3
+ *
4
+ * 4 个内置工具:read_file / write_file / list_dir / search_memories
5
+ * 安全采用两级权限 + 工具白名单 + 路径白名单
6
+ *
7
+ * 内置工具实现 + 路径安全已提取到 BuiltinToolHandlers,
8
+ * ToolExecutor 聚焦工具注册 / 分发 / 参数校验。
9
+ */
10
+ import { readFile } from 'node:fs/promises';
1
11
  import { requireConfirmingEntry } from '../security/confirmEntries.js';
2
12
  import { toolError, configError, MemoraError, ToolErrorCode } from '../utils/errors.js';
3
13
  import { toError } from '../utils/toError.js';
4
14
  import { logger } from '../logging/logger.js';
5
15
  import { truncate } from '../utils/strings.js';
6
- import { ALL_BUILTIN_TOOL_DEFS, BUILTIN_TOOLS, WEB_SEARCH_TOOL, WEB_FETCH_TOOL, WEB_FETCH_CONTENT_MAX_LEN, WEB_FETCH_CONTENT_DEFAULT_LEN, RUN_CODE_TOOL, buildRunCodeTool, SEARCH_PROJECT_TOOL, } from '../agent/builtinTools.js';
16
+ import { ALL_BUILTIN_TOOL_DEFS, BUILTIN_TOOLS, WEB_SEARCH_TOOL, WEB_FETCH_TOOL, WEB_FETCH_CONTENT_MAX_LEN, WEB_FETCH_CONTENT_DEFAULT_LEN, RUN_CODE_TOOL, buildRunCodeTool, SEARCH_PROJECT_TOOL, DEFAULT_WRITE_FILE_MODE, } from '../agent/builtinTools.js';
7
17
  import { sanitizeExternalText, stripControlChars } from '../agent/textSanitize.js';
8
18
  import { okOutcome, failedOutcome, failedOutcomeWithCode, blockedOutcome, } from '../agent/managers/toolCallHelpers.js';
9
- import { BuiltinToolHandlers } from '../agent/builtinToolHandlers.js';
19
+ import { BuiltinToolHandlers, SCRIPT_READ_MAX_LEN } from '../agent/builtinToolHandlers.js';
10
20
  import { safeSearch } from '../web-search/webSearchProvider.js';
11
21
  import { safeFetch } from '../web-fetch/webFetchProvider.js';
12
22
  import { isLoginWallPage } from '../web-fetch/loginWall.js';
@@ -454,6 +464,17 @@ export class ToolExecutor {
454
464
  * 消除「exitCode/timedOut 在装配边界被压成文本」的事实丢失。
455
465
  */
456
466
  runSkillScript;
467
+ /**
468
+ * run_skill_script 脚本路径解析回调(由 agent 装配时注入,CMD-1-CONTENT)
469
+ *
470
+ * 与 `runSkillScript`(执行回调)是**同一个解析函数的两面**(assembler 内共用
471
+ * `resolveSkillScriptTarget`):本回调只返技能脚本的绝对路径、不执行。确认点用它
472
+ * 定位脚本文件读正文,经 `confirmByEntry` 的 `content` 参喂同一个 `classifyCommand`
473
+ * ——技能脚本执行面此前面向「来源可信」免检(CMD-1-BYPASS 最后一面),现与
474
+ * run_code / run_project_script 对齐黑名单底线(deny 恒拦 / always-ask 恒弹)。
475
+ * 未注入时 run_skill_script 不传正文(维持档位判据),执行面行为不变。
476
+ */
477
+ resolveSkillScript;
457
478
  /**
458
479
  * list_resources 资源清单回调(由 agent 装配时注入)
459
480
  *
@@ -603,10 +624,13 @@ export class ToolExecutor {
603
624
  this.onToolsChanged?.();
604
625
  }
605
626
  /**
606
- * 移除自定义工具
627
+ * 移除自定义工具(运行时可注销)
607
628
  *
608
- * 供测试场景使用,可在测试后清理已注册的自定义工具。
609
- * 仅能移除通过 registerTool 注册的自定义工具,无法移除内置工具。
629
+ * 供测试清理使用,也是宿主动态工具的生命周期出口:MCP server 停用 / 连接断开时
630
+ * 由宿主调用注销对应工具(方案-MCP工具接入 §6)。仅能移除通过 registerTool 注册的
631
+ * 自定义工具,无法移除内置工具。
632
+ * 注销后触发 onToolsChanged:AgentLoop 的 toolDefinitions 快照与 system prompt 自动刷新,
633
+ * 工具从模型可见列表消失(进行中 step 仍持旧快照的竞态已登记方案 §10)。
610
634
  *
611
635
  * @param name 工具名称
612
636
  */
@@ -711,13 +735,14 @@ export class ToolExecutor {
711
735
  * @param target 确认对象(命令原文 / 脚本路径 / 内联代码标识)
712
736
  * @param tool 工具名
713
737
  * @param description 面向用户的描述
738
+ * @param content 脚本面**将被执行的正文**(命令面不传;补齐 CMD-1-BYPASS 用)
714
739
  * @returns 是否获确认放行
715
740
  */
716
- async confirmByEntry(entry, target, tool, description) {
741
+ async confirmByEntry(entry, target, tool, description, content) {
717
742
  if (entry === 'command') {
718
743
  return this.security.confirmCommandRun(target, tool, description);
719
744
  }
720
- return this.security.confirmScriptRun(target, tool, description);
745
+ return this.security.confirmScriptRun(target, tool, description, content);
721
746
  }
722
747
  /**
723
748
  * 执行工具调用
@@ -768,7 +793,10 @@ export class ToolExecutor {
768
793
  case 'read_file':
769
794
  return this.builtinHandlers.readFile(strArg('path'), strArg('offset') || undefined, strArg('limit') || undefined);
770
795
  case 'write_file':
771
- return this.builtinHandlers.writeFile(strArg('path'), strArg('content'), extensions, strArg('mode', 'overwrite'), strArg('insert_line') || undefined, strArg('old_string') || undefined);
796
+ return this.builtinHandlers.writeFile(strArg('path'), strArg('content'), extensions,
797
+ // 缺省模式取单一真源(不写 'overwrite' 字面量):此处是最上游的默认值,
798
+ // 漏接常量会让「改默认模式」只改到 handler / 护栏,派发层仍显式传旧值 ⇒ 静默漂移
799
+ strArg('mode', DEFAULT_WRITE_FILE_MODE), strArg('insert_line') || undefined, strArg('old_string') || undefined);
772
800
  case 'list_dir':
773
801
  return this.builtinHandlers.listDir(strArg('path', '.'), strArg('recursive', 'false'), strArg('maxDepth', '2'));
774
802
  case 'search_memories':
@@ -935,12 +963,16 @@ export class ToolExecutor {
935
963
  }
936
964
  // 执行确认:guest 模式或 confirmScripts 时询问(run_code 由宿主沙箱执行,此处为权限层确认;
937
965
  // owner+confirmScripts=false 自动批准,走审计。code 无落盘路径,target 用描述型标识)
966
+ // ⚠️ 第五参 = **将被执行的正文**(CMD-1-BYPASS 补齐):脚本面以前不看内容,
967
+ // 「git push」写进代码就绕过命令面的裁决链;此处把正文喂进同一个 classifyCommand。
938
968
  const execConfirmed = await this.confirmByEntry(requireConfirmingEntry('run_code'), scriptPath ? `run_code:script:${scriptPath}` : 'run_code:inline', 'run_code', scriptPath
939
969
  ? `运行脚本 ${scriptPath}(宿主沙箱)`
940
- : `执行内联代码(${execLanguage},${execCode.length} 字符,宿主沙箱)`);
970
+ : `执行内联代码(${execLanguage},${execCode.length} 字符,宿主沙箱)`, execCode);
941
971
  if (!execConfirmed) {
942
- // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败
943
- const declineText = '[ERR:SCRIPT_DECLINE] 代码执行未获确认(用户拒绝或未注入确认回调,fail-closed)';
972
+ // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败。
973
+ // 措辞与 run_command 的 declineText 同款(命中恒拦 / 用户拒绝 / fail-closed 三因共用):
974
+ // 裁决返回 false 时不区分成因,写"未获确认"会把命中黑名单说成用户拒绝(说谎)。
975
+ const declineText = '[ERR:SCRIPT_DECLINE] 代码执行未获执行许可(命中恒拦黑名单 / 用户拒绝 / 未注入确认回调,fail-closed)';
944
976
  emitOutcome?.(blockedOutcome('permission_denied', declineText));
945
977
  return declineText;
946
978
  }
@@ -1141,16 +1173,54 @@ export class ToolExecutor {
1141
1173
  const skillName = strArg('skill_name');
1142
1174
  const scriptPath = strArg('script_path');
1143
1175
  const scriptArgs = Array.isArray(args['args']) ? args['args'] : [];
1176
+ // CMD-1-CONTENT:技能脚本正文裁决(与 run_code / run_project_script 同判据)
1177
+ //
1178
+ // 确认点经 resolveSkillScript(与执行回调同一个解析函数,见 assembler)定位脚本
1179
+ // 文件读正文,喂下方 confirmByEntry 的 content 参 → 同一个 classifyCommand。
1180
+ // 技能目录 = 可信根(ADR-040 决策 1「技能目录脚本经作者审阅」),不走项目根白名单;
1181
+ // 防逃逸由解析侧保证(角色包 layer3 白名单 + resolveSafePath 边界 / 全局
1182
+ // resolveLayer3ScriptPath + existsSyncSafe)。⚠️ TOCTOU 边界与 run_project_script
1183
+ // 同款登记:裁决与执行之间文件若被改写,裁决看到旧内容——改写只能来自本 agent 或
1184
+ // 用户本人,且「不裁决」的风险(脚本里藏 git push / rm -rf 恒不设防)远大于该窗口。
1185
+ //
1186
+ // fail-closed 分级(无「读不动就放行」的口子):
1187
+ // 解析不到(resolver 返 null)= 不传正文——执行点同一解析必返 null,
1188
+ // 走既有 [ERR:SCRIPT_NOT_FOUND],不造第二语义;
1189
+ // 读失败 / 超 SCRIPT_READ_MAX_LEN = decline(blocked,不执行)。
1190
+ let skillScriptContent;
1191
+ if (this.resolveSkillScript) {
1192
+ const scriptAbsolutePath = this.resolveSkillScript(skillName, scriptPath);
1193
+ if (scriptAbsolutePath) {
1194
+ let rawContent;
1195
+ try {
1196
+ rawContent = await readFile(scriptAbsolutePath, 'utf-8');
1197
+ }
1198
+ catch {
1199
+ const readFailText = `[ERR:SCRIPT_DECLINE] 技能脚本 "${scriptPath}" 正文读取失败,拒绝执行(fail-closed:无法完成内容裁决)`;
1200
+ emitOutcome?.(blockedOutcome('permission_denied', readFailText));
1201
+ return readFailText;
1202
+ }
1203
+ if (rawContent.length > SCRIPT_READ_MAX_LEN) {
1204
+ const tooLongText = `[ERR:SCRIPT_DECLINE] 技能脚本 "${scriptPath}" 超过 ${SCRIPT_READ_MAX_LEN} 字符上限,拒绝执行(fail-closed:超出正文裁决预算)`;
1205
+ emitOutcome?.(blockedOutcome('permission_denied', tooLongText));
1206
+ return tooLongText;
1207
+ }
1208
+ skillScriptContent = rawContent;
1209
+ }
1210
+ }
1144
1211
  // 脚本执行确认(与 run_code/run_project_script 同判据):
1145
1212
  // owner + confirmScripts=false 默认放行(技能脚本来源可信,判据 B,无人值守可跑);
1146
1213
  // guest 恒确认(受限权限下禁止"来源可信豁免"自主执行,缝合三脚本工具语义裂缝);
1147
1214
  // confirmScripts=true 时 owner 亦确认(开关语义 = "脚本执行二次确认",对全部脚本生效)。
1148
1215
  // 无 OS 级沙箱(子进程直跑 + env 继承用户环境),故不能以 Codex workspace-write 的
1149
1216
  // "边界内自动"前提豁免 guest。target 用技能名:脚本路径标识(无落盘绝对路径)。
1150
- const execConfirmed = await this.confirmByEntry(requireConfirmingEntry('run_skill_script'), `skill:${skillName}:${scriptPath ?? ''}`, 'run_skill_script', `执行技能 ${skillName} 的脚本 ${scriptPath ?? ''}`);
1217
+ // 正文经 skillScriptContent 进同一个 classifyCommand:deny 恒拦 / always-ask 恒弹 /
1218
+ // normal 回落档位;拿不到正文(未注入 resolver 或解析不到)时只判档位。
1219
+ const execConfirmed = await this.confirmByEntry(requireConfirmingEntry('run_skill_script'), `skill:${skillName}:${scriptPath ?? ''}`, 'run_skill_script', `执行技能 ${skillName} 的脚本 ${scriptPath ?? ''}`, skillScriptContent);
1151
1220
  if (!execConfirmed) {
1152
- // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败
1153
- const declineText = '[ERR:SCRIPT_DECLINE] 技能脚本执行未获确认(用户拒绝或未注入确认回调,fail-closed)';
1221
+ // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败。
1222
+ // 措辞与 run_command 同款:裁决返回 false 时不区分成因(恒拦 / 拒答 / fail-closed)。
1223
+ const declineText = '[ERR:SCRIPT_DECLINE] 技能脚本执行未获执行许可(命中恒拦黑名单 / 用户拒绝 / 未注入确认回调,fail-closed)';
1154
1224
  emitOutcome?.(blockedOutcome('permission_denied', declineText));
1155
1225
  return declineText;
1156
1226
  }
@@ -1184,15 +1254,22 @@ export class ToolExecutor {
1184
1254
  emitOutcome?.(blockedOutcome('permission_denied', pathDeniedText));
1185
1255
  return pathDeniedText;
1186
1256
  }
1187
- // ② 执行确认:guest 模式或 confirmScripts 时询问(owner 默认自动批准,走审计)
1188
- const confirmed = await this.confirmByEntry(requireConfirmingEntry('run_project_script'), fullPath, 'run_project_script', `运行项目脚本 ${scriptPath}`);
1257
+ // ② 读正文(供内容裁决;CMD-1-BYPASS 补齐)
1258
+ // 与执行阶段读的是同一份文件。⚠️ TOCTOU 边界诚实登记:裁决与执行之间文件若被
1259
+ // 改写,裁决看到的是旧内容——改写只能来自本 agent 或用户本人,且「不裁决」的
1260
+ // 风险(脚本里藏 git push / rm -rf 恒不设防)远大于这个窗口。
1261
+ const scriptContent = await this.builtinHandlers.readScriptFile(scriptPath, 'run_project_script script_path');
1262
+ // ③ 执行确认:guest 模式或 confirmScripts 时询问;内容命中 deny 恒拦、
1263
+ // always-ask 恒弹(与 run_command 面同一套 classifyCommand 判据)
1264
+ const confirmed = await this.confirmByEntry(requireConfirmingEntry('run_project_script'), fullPath, 'run_project_script', `运行项目脚本 ${scriptPath}`, scriptContent);
1189
1265
  if (!confirmed) {
1190
- // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败
1191
- const declineText = '[ERR:SCRIPT_DECLINE] 脚本运行未获确认(用户拒绝或未注入确认回调,fail-closed)';
1266
+ // 用户/系统拒绝执行 = 主动挡下(permission_denied),非执行失败。
1267
+ // 措辞与 run_command 同款:裁决返回 false 时不区分成因(恒拦 / 拒答 / fail-closed)。
1268
+ const declineText = '[ERR:SCRIPT_DECLINE] 脚本运行未获执行许可(命中恒拦黑名单 / 用户拒绝 / 未注入确认回调,fail-closed)';
1192
1269
  emitOutcome?.(blockedOutcome('permission_denied', declineText));
1193
1270
  return declineText;
1194
1271
  }
1195
- // ③ 运行时白名单:扩展名推断并收敛到 node/python/shell 三档(推断即可信,不规则兜底 node)
1272
+ // ④ 运行时白名单:扩展名推断并收敛到 node/python/shell 三档(推断即可信,不规则兜底 node)
1196
1273
  const ext = scriptPath.slice(scriptPath.lastIndexOf('.')).toLowerCase();
1197
1274
  const runtime = normalizeScriptRuntime(inferRuntimeFromExt(ext) ?? 'node');
1198
1275
  // timeout_ms(秒,可选)→ 毫秒透传内核执行器(默认 60s,上限 600s,见 skillScriptRunner 常量);
@@ -1416,6 +1493,24 @@ export class ToolExecutor {
1416
1493
  // 自定义工具 fallback:查找 customTools Map
1417
1494
  const custom = this.customTools.get(name);
1418
1495
  if (custom) {
1496
+ // 审批闸(K1 · 自定义工具统一走 confirmGate 单点):confirmPolicy 是工具自身声明的
1497
+ // 「要不要问」——'always' 每次弹确认;'audit' 过闸自动放行(仍落 write-auto 审计);
1498
+ // 缺省 = 字段不存在 = 不过闸不审计(历史行为零变化)。
1499
+ // 判据不参与命令/脚本裁决,与 CONFIRM_ENTRY_BY_TOOL 静态表两回事,勿折叠。
1500
+ const policy = custom.definition.confirmPolicy;
1501
+ if (policy !== undefined) {
1502
+ // 调用摘要 = 被裁决对象标识(与 run_command 把命令字面量塞审计 path 同构),截断防撑爆
1503
+ // args 来自 JSON.parse(无循环引用)⇒ JSON.stringify 恒返回 string
1504
+ const summary = truncate(JSON.stringify(args), 200);
1505
+ const confirmed = await this.security.requestToolCallConfirmation(name, summary, policy === 'always');
1506
+ if (!confirmed) {
1507
+ // 被拒 → 不再调 handler;语义是「主动挡下」⇒ blocked(与 run_command 拒绝先例同构)
1508
+ const declineText = `[ERR:TOOL_DECLINE] 自定义工具 ${name} 未获执行许可(用户拒绝 / 未注入确认回调 fail-closed)。` +
1509
+ '未执行该工具;如确需执行,请用户调整审批设置。';
1510
+ emitOutcome?.(blockedOutcome('permission_denied', declineText));
1511
+ return declineText;
1512
+ }
1513
+ }
1419
1514
  // 传入 ToolContext,提供 guardPath 安全校验方法
1420
1515
  // 路径安全委托给 BuiltinToolHandlers
1421
1516
  const ctx = {
@@ -1 +1 @@
1
- {"version":3,"file":"toolExecutor.js","sourceRoot":"","sources":["../../src/agent/toolExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolExecutor.js","sourceRoot":"","sources":["../../src/agent/toolExecutor.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -32,6 +32,8 @@ export { loadConfig } from './config/loader.js';
32
32
  export { createProviderFromConfig } from './llm/factory.js';
33
33
  export type { ProviderConfig } from './llm/factory.js';
34
34
  export type { LlmProvider, ChatOptions } from './llm/provider.js';
35
+ export type { ImageRef, ImageResolver } from './llm/provider.js';
36
+ export { imageTokens } from './agent/contextManager.js';
35
37
  export type { LlmChunk, ProviderRouter } from './llm/types.js';
36
38
  export type { Config } from './config/loader.js';
37
39
  export { TypedEventEmitter } from './utils/eventEmitter.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,YAAY,EACV,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAI1E,OAAO,EAAE,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC9E,YAAY,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,YAAY,EACV,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAKnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EACV,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,qCAAqC,CAAC;AAG7C,YAAY,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAE9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,YAAY,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAClE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG/D,YAAY,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEhG,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEjE,YAAY,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,YAAY,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAG7E,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAK1F,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInE,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAGhF,OAAO,EACL,oBAAoB,EACpB,KAAK,gBAAgB,GACtB,MAAM,wCAAwC,CAAC;AAIhD,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAI7E,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAM9B,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIlF,YAAY,EACV,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAMnE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAIjE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE5F,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,cAAc,GACf,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAMlF,OAAO,EAAE,YAAY,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvF,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAI3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEnE,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAK5D,YAAY,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAMxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,YAAY,EACV,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAErF,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAM5D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -49,6 +49,11 @@ export { loadConfig } from './config/loader.js';
49
49
  // createProviderFromConfig —— 【规范入口】宿主传入 baseUrl+model+apiKey,校验后创建。
50
50
  // createLlmProvider(从整份 Config 解析激活 provider)为内核内部便利实现,不挂公共面。
51
51
  export { createProviderFromConfig } from './llm/factory.js';
52
+ // 单图 token 折算(方案 §5.9):宿主入口限额要用「图片 token ≤ contextWindow 25%」(§6.7 / G3)
53
+ // 做准入判断。若宿主另写一份 ceil(w/28)×ceil(h/28) 与上界 clamp,就是同一公式的第二份实现——
54
+ // 将来调上界时必漂移(现行 1568 已登记为 OpenAI high 低估的已知缺口)。故在此**单点导出**,
55
+ // 宿主 import 复用,不在任何侧重算。函数公开不触成员面守卫,登记见 publicApiSurfaceGuard。
56
+ export { imageTokens } from './agent/contextManager.js';
52
57
  // 事件系统(事件名常量表 AGENT_EVENTS 为内核内部实现,订阅用字符串字面量或 AgentEventName 类型)
53
58
  export { TypedEventEmitter } from './utils/eventEmitter.js';
54
59
  // 会话标识格式契约(SSOT 单点):date/session 双向转换唯一真理源,宿主导入后不再手写 slice/split
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@
11
11
  * 避免把"哪个 provider 激活"这一宿主策略委托给内核。
12
12
  */
13
13
  import type { Config } from '../config/loader.js';
14
+ import type { ImageResolver } from '../llm/provider.js';
14
15
  import { LlmProvider } from '../llm/provider.js';
15
16
  /** 单个 Provider 配置(createProviderFromConfig 入参):baseUrl 可选,缺失时内部抛 configError */
16
17
  export interface ProviderConfig {
@@ -32,6 +33,26 @@ export interface ProviderConfig {
32
33
  supportsToolCalling?: boolean;
33
34
  /** 是否支持结构化输出(response_format / JSON mode);未填 → 回落 false */
34
35
  supportsStructuredOutput?: boolean;
36
+ /**
37
+ * 是否支持图片输入(多模态 vision / content parts);未填 → 回落 **false**(失败必闭)
38
+ *
39
+ * 【持久化数据】与上面两个能力位同性质:宿主须经「DTO → 表单 → 存储 → 建房」全链路透传。
40
+ * 缺省方向选 false 而非 true,是因为「声称看得见图却看不懂」比「坦承不支持」危害更大——
41
+ * 前者让图片静默丢失且用户无法归因,后者由 llmCaller 一级门禁明确拒收并给出可执行建议。
42
+ */
43
+ supportsVision?: boolean;
44
+ /**
45
+ * 图片解析器(运行时回调,**不可持久化**)
46
+ *
47
+ * 【运行时注入】与上面三个能力位**性质不同**:这是宿主持有的函数句柄,不能进任何 JSON 配置。
48
+ * 内核只调用它把 ImageRef 换成「URL 或 占位文本」,自身不读文件、不发网络请求
49
+ * (零外部读写是内核边界,见 provider.ts 的 ImageResolver 定义)。
50
+ *
51
+ * 因此本字段只属于**建房入参**(ProviderConfig),**不属于宿主的持久化 DTO**——
52
+ * 宿主 DTO 里只有 supportsVision 这一「用户声明」,resolver 由宿主在调用本函数时直接传入。
53
+ * 未注入 → formatMessages 走降级:推可见占位文本块,**绝不静默丢该图**(见 openaiCompatible)。
54
+ */
55
+ imageResolver?: ImageResolver;
35
56
  }
36
57
  /** 从单个 Provider 配置创建 LlmProvider 实例(多 Provider 管理场景:为 providers 映射表中每个条目调用) */
37
58
  export declare function createProviderFromConfig(name: string, providerConfig: ProviderConfig): LlmProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/llm/factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,2DAA2D;IAC3D,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,+EAA+E;AAC/E,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,cAAc,GAC7B,WAAW,CAmCb;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAsB7D"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/llm/factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,2DAA2D;IAC3D,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,+EAA+E;AAC/E,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,cAAc,GAC7B,WAAW,CAsCb;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAsB7D"}
@@ -28,9 +28,12 @@ export function createProviderFromConfig(name, providerConfig) {
28
28
  apiKey: apiKey ?? '',
29
29
  defaultModel: model,
30
30
  // 能力位透传:未填(undefined)由 OpenAICompatibleProvider 内按**各自方向**回落——
31
- // supportsToolCalling → true,supportsStructuredOutput → false(见上方字段文档;勿读成「默认都开」)。
31
+ // supportsToolCalling → true,supportsStructuredOutput / supportsVision → false
32
+ // (见上方字段文档;勿读成「默认都开」)。
32
33
  supportsToolCalling: providerConfig.supportsToolCalling,
33
34
  supportsStructuredOutput: providerConfig.supportsStructuredOutput,
35
+ supportsVision: providerConfig.supportsVision,
36
+ imageResolver: providerConfig.imageResolver,
34
37
  });
35
38
  }
36
39
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/llm/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/llm/factory.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * 适用于:DeepSeek / 豆包 / 通义 / Ollama / 任何兼容 OpenAI 协议的 API
5
5
  */
6
6
  import { LlmProvider } from '../llm/provider.js';
7
- import type { Message, ChatOptions } from '../llm/provider.js';
7
+ import type { ImageResolver, Message, ChatOptions } from '../llm/provider.js';
8
8
  import type { LlmChunk } from '../llm/types.js';
9
9
  export interface OpenAICompatibleConfig {
10
10
  baseUrl: string;
@@ -15,6 +15,13 @@ export interface OpenAICompatibleConfig {
15
15
  supportsToolCalling?: boolean;
16
16
  /** 是否支持结构化输出(response_format / JSON mode),默认 false */
17
17
  supportsStructuredOutput?: boolean;
18
+ /** 是否支持视觉 / 多模态图片输入(默认 false,fail-closed;显式 true 才走图片通道) */
19
+ supportsVision?: boolean;
20
+ /**
21
+ * 图片解析器(宿主注入):把 `ImageRef` 物化为可发送形式(URL 或 base64 文本)。
22
+ * 不注入 ⇒ 含附件的消息在 `formatMessages` 序列化期降级(推可见占位文本块,**绝不静默丢该图**,方案 §5.5 二级)。
23
+ */
24
+ imageResolver?: ImageResolver;
18
25
  }
19
26
  /** 通用 OpenAI 兼容 Provider:通过 baseUrl 适配不同厂商 */
20
27
  export declare class OpenAICompatibleProvider extends LlmProvider {
@@ -1 +1 @@
1
- {"version":3,"file":"openaiCompatible.d.ts","sourceRoot":"","sources":["../../src/llm/openaiCompatible.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,gBAAgB,CAAC;AAYzD,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB;4EACwE;IACxE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sDAAsD;IACtD,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AA2CD,8CAA8C;AAC9C,qBAAa,wBAAyB,SAAQ,WAAW;IAKrD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAGpB,IAAI,EAAE,MAAM,EACK,MAAM,EAAE,sBAAsB;IAOjD;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAOxB,mBAAmB;IACnB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAW;IAErD;;wDAEoD;IACpD,OAAO,CAAC,aAAa,CAAK;IAEnB,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,GAAE,WAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IA4GjF,0CAA0C;YAC5B,mBAAmB;IA2CjC,uDAAuD;YACzC,cAAc;IAQ5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAiBtB;;;OAGG;YACY,cAAc;IAkN7B;yEACqE;IACrE,OAAO,CAAC,8BAA8B;IActC,iCAAiC;IACjC,OAAO,CAAC,mBAAmB;CAQ5B"}
1
+ {"version":3,"file":"openaiCompatible.d.ts","sourceRoot":"","sources":["../../src/llm/openaiCompatible.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,gBAAgB,CAAC;AAYzD,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB;4EACwE;IACxE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sDAAsD;IACtD,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AA2CD,8CAA8C;AAC9C,qBAAa,wBAAyB,SAAQ,WAAW;IAKrD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAGpB,IAAI,EAAE,MAAM,EACK,MAAM,EAAE,sBAAsB;IAOjD;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAQxB,mBAAmB;IACnB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAW;IAErD;;wDAEoD;IACpD,OAAO,CAAC,aAAa,CAAK;IAEnB,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,GAAE,WAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IA4GjF,0CAA0C;YAC5B,mBAAmB;IA2CjC,uDAAuD;YACzC,cAAc;IAQ5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IA6CtB;;;OAGG;YACY,cAAc;IAkN7B;yEACqE;IACrE,OAAO,CAAC,8BAA8B;IActC,iCAAiC;IACjC,OAAO,CAAC,mBAAmB;CAQ5B"}