siclaw 0.1.2 → 0.1.4

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 (215) hide show
  1. package/dist/agentbox/gateway-client.d.ts +4 -0
  2. package/dist/agentbox/gateway-client.js +9 -1
  3. package/dist/agentbox/gateway-client.js.map +1 -1
  4. package/dist/agentbox/http-server.js +25 -1
  5. package/dist/agentbox/http-server.js.map +1 -1
  6. package/dist/agentbox/session.d.ts +2 -0
  7. package/dist/agentbox/session.js +11 -7
  8. package/dist/agentbox/session.js.map +1 -1
  9. package/dist/agentbox-main.js +10 -0
  10. package/dist/agentbox-main.js.map +1 -1
  11. package/dist/cli-main.js +19 -3
  12. package/dist/cli-main.js.map +1 -1
  13. package/dist/core/agent-factory.d.ts +2 -0
  14. package/dist/core/agent-factory.js +87 -21
  15. package/dist/core/agent-factory.js.map +1 -1
  16. package/dist/core/compaction.d.ts +80 -0
  17. package/dist/core/compaction.js +442 -0
  18. package/dist/core/compaction.js.map +1 -0
  19. package/dist/core/config.d.ts +7 -0
  20. package/dist/core/config.js +27 -1
  21. package/dist/core/config.js.map +1 -1
  22. package/dist/core/extensions/compaction-safeguard.d.ts +2 -0
  23. package/dist/core/extensions/compaction-safeguard.js +681 -0
  24. package/dist/core/extensions/compaction-safeguard.js.map +1 -0
  25. package/dist/core/extensions/deep-investigation.js +47 -73
  26. package/dist/core/extensions/deep-investigation.js.map +1 -1
  27. package/dist/core/extensions/memory-flush.d.ts +2 -10
  28. package/dist/core/extensions/memory-flush.js +4 -86
  29. package/dist/core/extensions/memory-flush.js.map +1 -1
  30. package/dist/core/llm-proxy.js +25 -6
  31. package/dist/core/llm-proxy.js.map +1 -1
  32. package/dist/core/message-utils.d.ts +18 -0
  33. package/dist/core/message-utils.js +28 -0
  34. package/dist/core/message-utils.js.map +1 -0
  35. package/dist/core/prompt.js +4 -5
  36. package/dist/core/prompt.js.map +1 -1
  37. package/dist/core/session-tool-result-guard.d.ts +2 -0
  38. package/dist/core/session-tool-result-guard.js +159 -0
  39. package/dist/core/session-tool-result-guard.js.map +1 -0
  40. package/dist/core/stream-wrappers.d.ts +41 -0
  41. package/dist/core/stream-wrappers.js +369 -0
  42. package/dist/core/stream-wrappers.js.map +1 -0
  43. package/dist/core/thinking-blocks.d.ts +20 -0
  44. package/dist/core/thinking-blocks.js +45 -0
  45. package/dist/core/thinking-blocks.js.map +1 -0
  46. package/dist/core/tool-call-id.d.ts +22 -0
  47. package/dist/core/tool-call-id.js +226 -0
  48. package/dist/core/tool-call-id.js.map +1 -0
  49. package/dist/core/tool-call-repair.d.ts +18 -0
  50. package/dist/core/tool-call-repair.js +73 -0
  51. package/dist/core/tool-call-repair.js.map +1 -0
  52. package/dist/core/tool-result-context-guard.d.ts +36 -0
  53. package/dist/core/tool-result-context-guard.js +272 -0
  54. package/dist/core/tool-result-context-guard.js.map +1 -0
  55. package/dist/cron/cron-limits.d.ts +16 -0
  56. package/dist/cron/cron-limits.js +17 -0
  57. package/dist/cron/cron-limits.js.map +1 -0
  58. package/dist/cron/cron-matcher.d.ts +14 -0
  59. package/dist/cron/cron-matcher.js +29 -0
  60. package/dist/cron/cron-matcher.js.map +1 -1
  61. package/dist/gateway/agentbox/client.d.ts +0 -2
  62. package/dist/gateway/agentbox/client.js.map +1 -1
  63. package/dist/gateway/agentbox/k8s-spawner.d.ts +10 -10
  64. package/dist/gateway/agentbox/k8s-spawner.js +27 -55
  65. package/dist/gateway/agentbox/k8s-spawner.js.map +1 -1
  66. package/dist/gateway/agentbox/local-spawner.d.ts +5 -0
  67. package/dist/gateway/agentbox/local-spawner.js +10 -0
  68. package/dist/gateway/agentbox/local-spawner.js.map +1 -1
  69. package/dist/gateway/cron/cron-service.js +7 -0
  70. package/dist/gateway/cron/cron-service.js.map +1 -1
  71. package/dist/gateway/db/index.js +9 -1
  72. package/dist/gateway/db/index.js.map +1 -1
  73. package/dist/gateway/db/init-schema.js +65 -16
  74. package/dist/gateway/db/init-schema.js.map +1 -1
  75. package/dist/gateway/db/migrate-sqlite.js +73 -20
  76. package/dist/gateway/db/migrate-sqlite.js.map +1 -1
  77. package/dist/gateway/db/repositories/cluster-repo.d.ts +59 -0
  78. package/dist/gateway/db/repositories/cluster-repo.js +107 -0
  79. package/dist/gateway/db/repositories/cluster-repo.js.map +1 -0
  80. package/dist/gateway/db/repositories/config-repo.d.ts +4 -5
  81. package/dist/gateway/db/repositories/config-repo.js +17 -0
  82. package/dist/gateway/db/repositories/config-repo.js.map +1 -1
  83. package/dist/gateway/db/repositories/feedback-repo.d.ts +71 -0
  84. package/dist/gateway/db/repositories/feedback-repo.js +52 -0
  85. package/dist/gateway/db/repositories/feedback-repo.js.map +1 -0
  86. package/dist/gateway/db/repositories/knowledge-doc-repo.d.ts +37 -0
  87. package/dist/gateway/db/repositories/knowledge-doc-repo.js +48 -0
  88. package/dist/gateway/db/repositories/knowledge-doc-repo.js.map +1 -0
  89. package/dist/gateway/db/repositories/user-cluster-config-repo.d.ts +45 -0
  90. package/dist/gateway/db/repositories/user-cluster-config-repo.js +90 -0
  91. package/dist/gateway/db/repositories/user-cluster-config-repo.js.map +1 -0
  92. package/dist/gateway/db/repositories/workspace-repo.d.ts +2 -2
  93. package/dist/gateway/db/repositories/workspace-repo.js +12 -12
  94. package/dist/gateway/db/repositories/workspace-repo.js.map +1 -1
  95. package/dist/gateway/db/schema-mysql.d.ts +437 -44
  96. package/dist/gateway/db/schema-mysql.js +36 -9
  97. package/dist/gateway/db/schema-mysql.js.map +1 -1
  98. package/dist/gateway/db/schema-sqlite.d.ts +459 -46
  99. package/dist/gateway/db/schema-sqlite.js +36 -9
  100. package/dist/gateway/db/schema-sqlite.js.map +1 -1
  101. package/dist/gateway/db/schema.d.ts +435 -44
  102. package/dist/gateway/db/schema.js +1 -1
  103. package/dist/gateway/db/schema.js.map +1 -1
  104. package/dist/gateway/plugins/channel-bridge.js +1 -1
  105. package/dist/gateway/plugins/channel-bridge.js.map +1 -1
  106. package/dist/gateway/rpc-methods.d.ts +2 -1
  107. package/dist/gateway/rpc-methods.js +507 -172
  108. package/dist/gateway/rpc-methods.js.map +1 -1
  109. package/dist/gateway/server.js +191 -51
  110. package/dist/gateway/server.js.map +1 -1
  111. package/dist/gateway/web/dist/assets/index-DTD0P9j8.css +1 -0
  112. package/dist/gateway/web/dist/assets/index-DhqsS2E0.js +756 -0
  113. package/dist/gateway/web/dist/assets/index-DhqsS2E0.js.map +1 -0
  114. package/dist/gateway/web/dist/index.html +2 -2
  115. package/dist/gateway-main.js +1 -3
  116. package/dist/gateway-main.js.map +1 -1
  117. package/dist/memory/indexer.d.ts +13 -0
  118. package/dist/memory/indexer.js +91 -1
  119. package/dist/memory/indexer.js.map +1 -1
  120. package/dist/memory/knowledge-extractor.d.ts +47 -0
  121. package/dist/memory/knowledge-extractor.js +165 -0
  122. package/dist/memory/knowledge-extractor.js.map +1 -0
  123. package/dist/memory/overview-generator.d.ts +16 -0
  124. package/dist/memory/overview-generator.js +233 -0
  125. package/dist/memory/overview-generator.js.map +1 -0
  126. package/dist/memory/session-summarizer.d.ts +28 -0
  127. package/dist/memory/session-summarizer.js +20 -2
  128. package/dist/memory/session-summarizer.js.map +1 -1
  129. package/dist/memory/temporal-decay.js +2 -2
  130. package/dist/memory/temporal-decay.js.map +1 -1
  131. package/dist/memory/topic-consolidator.d.ts +52 -0
  132. package/dist/memory/topic-consolidator.js +197 -0
  133. package/dist/memory/topic-consolidator.js.map +1 -0
  134. package/dist/tools/cluster-info.d.ts +9 -0
  135. package/dist/tools/cluster-info.js +74 -0
  136. package/dist/tools/cluster-info.js.map +1 -0
  137. package/dist/tools/command-sets.js +15 -5
  138. package/dist/tools/command-sets.js.map +1 -1
  139. package/dist/tools/create-skill.js +1 -1
  140. package/dist/tools/create-skill.js.map +1 -1
  141. package/dist/tools/debug-pod.d.ts +217 -0
  142. package/dist/tools/debug-pod.js +603 -0
  143. package/dist/tools/debug-pod.js.map +1 -0
  144. package/dist/tools/deep-search/engine.d.ts +0 -5
  145. package/dist/tools/deep-search/engine.js +68 -28
  146. package/dist/tools/deep-search/engine.js.map +1 -1
  147. package/dist/tools/deep-search/format.d.ts +1 -1
  148. package/dist/tools/deep-search/format.js +1 -2
  149. package/dist/tools/deep-search/format.js.map +1 -1
  150. package/dist/tools/deep-search/prompts.d.ts +4 -1
  151. package/dist/tools/deep-search/prompts.js +47 -29
  152. package/dist/tools/deep-search/prompts.js.map +1 -1
  153. package/dist/tools/deep-search/quality-gate.d.ts +25 -0
  154. package/dist/tools/deep-search/quality-gate.js +81 -0
  155. package/dist/tools/deep-search/quality-gate.js.map +1 -0
  156. package/dist/tools/deep-search/schemas.d.ts +25 -0
  157. package/dist/tools/deep-search/schemas.js +26 -1
  158. package/dist/tools/deep-search/schemas.js.map +1 -1
  159. package/dist/tools/deep-search/sre-knowledge.d.ts +6 -10
  160. package/dist/tools/deep-search/sre-knowledge.js +21 -52
  161. package/dist/tools/deep-search/sre-knowledge.js.map +1 -1
  162. package/dist/tools/deep-search/sub-agent.js +24 -8
  163. package/dist/tools/deep-search/sub-agent.js.map +1 -1
  164. package/dist/tools/deep-search/tool.js +3 -6
  165. package/dist/tools/deep-search/tool.js.map +1 -1
  166. package/dist/tools/deep-search/types.d.ts +13 -0
  167. package/dist/tools/deep-search/types.js +4 -4
  168. package/dist/tools/deep-search/types.js.map +1 -1
  169. package/dist/tools/dp-tools.d.ts +9 -6
  170. package/dist/tools/dp-tools.js +26 -55
  171. package/dist/tools/dp-tools.js.map +1 -1
  172. package/dist/tools/exec-utils.d.ts +8 -21
  173. package/dist/tools/exec-utils.js +11 -95
  174. package/dist/tools/exec-utils.js.map +1 -1
  175. package/dist/tools/fork-skill.js +1 -1
  176. package/dist/tools/fork-skill.js.map +1 -1
  177. package/dist/tools/k8s-checks.d.ts +11 -5
  178. package/dist/tools/k8s-checks.js +28 -9
  179. package/dist/tools/k8s-checks.js.map +1 -1
  180. package/dist/tools/knowledge-search.d.ts +3 -0
  181. package/dist/tools/knowledge-search.js +115 -0
  182. package/dist/tools/knowledge-search.js.map +1 -0
  183. package/dist/tools/kubeconfig-resolver.d.ts +22 -0
  184. package/dist/tools/kubeconfig-resolver.js +98 -18
  185. package/dist/tools/kubeconfig-resolver.js.map +1 -1
  186. package/dist/tools/manage-schedule.js +23 -1
  187. package/dist/tools/manage-schedule.js.map +1 -1
  188. package/dist/tools/netns-script.d.ts +1 -1
  189. package/dist/tools/netns-script.js +19 -7
  190. package/dist/tools/netns-script.js.map +1 -1
  191. package/dist/tools/node-exec.d.ts +1 -1
  192. package/dist/tools/node-exec.js +19 -7
  193. package/dist/tools/node-exec.js.map +1 -1
  194. package/dist/tools/node-script.d.ts +1 -1
  195. package/dist/tools/node-script.js +19 -7
  196. package/dist/tools/node-script.js.map +1 -1
  197. package/dist/tools/pod-exec.js +12 -1
  198. package/dist/tools/pod-exec.js.map +1 -1
  199. package/dist/tools/pod-nsenter-exec.d.ts +1 -1
  200. package/dist/tools/pod-nsenter-exec.js +19 -7
  201. package/dist/tools/pod-nsenter-exec.js.map +1 -1
  202. package/dist/tools/pod-script.js +12 -1
  203. package/dist/tools/pod-script.js.map +1 -1
  204. package/dist/tools/restricted-bash.js +10 -3
  205. package/dist/tools/restricted-bash.js.map +1 -1
  206. package/dist/tools/run-skill.js +14 -2
  207. package/dist/tools/run-skill.js.map +1 -1
  208. package/dist/tools/save-feedback.d.ts +7 -0
  209. package/dist/tools/save-feedback.js +125 -0
  210. package/dist/tools/save-feedback.js.map +1 -0
  211. package/dist/tools/update-skill.js +1 -1
  212. package/dist/tools/update-skill.js.map +1 -1
  213. package/package.json +1 -1
  214. package/skills/core/deep-investigation/SKILL.md +11 -14
  215. package/skills/core/session-feedback/SKILL.md +146 -0
@@ -1 +1 @@
1
- {"version":3,"file":"llm-proxy.js","sourceRoot":"","sources":["../../src/core/llm-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-proxy.js","sourceRoot":"","sources":["../../src/core/llm-proxy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Shared message inspection utilities.
3
+ *
4
+ * Extracted from compaction.ts to serve multiple consumers
5
+ * (compaction, compaction-safeguard, session-tool-result-guard)
6
+ * without coupling unrelated concerns.
7
+ */
8
+ import type { AgentMessage } from "@mariozechner/pi-agent-core";
9
+ export type ToolCallLike = {
10
+ id: string;
11
+ name?: string;
12
+ };
13
+ export declare function extractToolCallsFromAssistant(msg: Extract<AgentMessage, {
14
+ role: "assistant";
15
+ }>): ToolCallLike[];
16
+ export declare function extractToolResultId(msg: Extract<AgentMessage, {
17
+ role: "toolResult";
18
+ }>): string | null;
@@ -0,0 +1,28 @@
1
+ const TOOL_CALL_TYPES = new Set(["toolCall", "toolUse", "functionCall"]);
2
+ export function extractToolCallsFromAssistant(msg) {
3
+ const content = msg.content;
4
+ if (!Array.isArray(content))
5
+ return [];
6
+ const toolCalls = [];
7
+ for (const block of content) {
8
+ if (!block || typeof block !== "object")
9
+ continue;
10
+ const rec = block;
11
+ if (typeof rec.id !== "string" || !rec.id)
12
+ continue;
13
+ if (typeof rec.type === "string" && TOOL_CALL_TYPES.has(rec.type)) {
14
+ toolCalls.push({ id: rec.id, name: typeof rec.name === "string" ? rec.name : undefined });
15
+ }
16
+ }
17
+ return toolCalls;
18
+ }
19
+ export function extractToolResultId(msg) {
20
+ const toolCallId = msg.toolCallId;
21
+ if (typeof toolCallId === "string" && toolCallId)
22
+ return toolCallId;
23
+ const toolUseId = msg.toolUseId;
24
+ if (typeof toolUseId === "string" && toolUseId)
25
+ return toolUseId;
26
+ return null;
27
+ }
28
+ //# sourceMappingURL=message-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-utils.js","sourceRoot":"","sources":["../../src/core/message-utils.ts"],"names":[],"mappings":"AAWA,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;AAEzE,MAAM,UAAU,6BAA6B,CAC3C,GAAiD;IAEjD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,SAAS,GAAmB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAClD,MAAM,GAAG,GAAG,KAAyD,CAAC;QACtE,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,SAAS;QACpD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClE,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAkD;IACpF,MAAM,UAAU,GAAI,GAAgC,CAAC,UAAU,CAAC;IAChE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IACpE,MAAM,SAAS,GAAI,GAA+B,CAAC,SAAS,CAAC;IAC7D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IACjE,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -64,16 +64,15 @@ When users ask about "configuring environment", "setting up", or "how to get sta
64
64
  ## Long-term Memory
65
65
 
66
66
  You have a persistent memory directory at \`${memoryDir}/\` with markdown files that persist across sessions.
67
- The main file \`MEMORY.md\` is automatically loaded into every new session context.
67
+ Memory is NOT pre-loaded into context use the tools below to retrieve it on demand.
68
68
 
69
69
  ### Memory Tools
70
70
  - **\`memory_search\`**: Semantically search all memory files (memory/*.md) using hybrid vector + keyword search. **Use this BEFORE answering questions about prior work, decisions, dates, preferences, or historical context.**
71
- - **\`memory_get\`**: Read a specific memory file by relative path (e.g. "MEMORY.md", "2025-01-15.md"). Use after memory_search to read full content.
71
+ - **\`memory_get\`**: Read a specific memory file by relative path (e.g. "PROFILE.md", "2025-01-15.md"). Use after memory_search to read full content.
72
72
 
73
73
  ### Writing Memory
74
- - After completing a significant investigation or troubleshooting task, **proactively save** key findings, root causes, outcomes, and important context to \`${memoryDir}/YYYY-MM-DD.md\` (use today's date). Append if the file already exists. Keep entries concise — bullet points with essential facts, not verbose narratives.
75
- - When the user explicitly asks to remember/save something: write to \`${memoryDir}/MEMORY.md\` (read first, merge, keep concise).
76
- - Before context compaction: save any important discoveries that haven't been written yet.`;
74
+ - Key findings are automatically saved at session end. Only write to \`${memoryDir}/\` mid-session when the user explicitly asks you to remember something.
75
+ - When writing, use \`${memoryDir}/YYYY-MM-DD.md\` (today's date). Append if the file already exists. Keep entries concise — bullet points with essential facts, not verbose narratives.`;
77
76
  }
78
77
  // P1-2: Credential guidance — always include usage instructions regardless of
79
78
  // whether credentials are detected at prompt-build time (gateway updates
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,SAAkB,EAAE,IAAgC;IACvF,IAAI,MAAM,GAAG;;;;;;;;;;;;;;;;;0BAiBW,CAAC,GAAG,EAAE;QAC9B,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,OAAO,4jBAA4jB,CAAC;QACtkB,CAAC;QACD,OAAO,krBAAkrB,CAAC;IAC5rB,CAAC,CAAC,EAAE;;;;;;;;kCAQ8B,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,YAAY,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;;;;;;;;;;uIAUU,CAAC,CAAC,CAAC;;;;;;;;;;;uIAWH;;;;;;;;CAQtI,CAAC;IAEA,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI;;;8CAGgC,SAAS;;;;;;;;+JAQwG,SAAS;yEAC/F,SAAS;2FACS,CAAC;IAC1F,CAAC;IAED,8EAA8E;IAC9E,yEAAyE;IACzE,oFAAoF;IACpF,MAAM,IAAI;;;;;sDAK0C,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;;;gGAGyB,CAAC,CAAC,CAAC;;;gGAGH;;;;;kJAKkD,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,6CAA6C,sEAAsE,CAAC;IAElT,MAAM,IAAI,+TAA+T,CAAC;IAE1U,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,SAAkB,EAAE,IAAgC;IACvF,IAAI,MAAM,GAAG;;;;;;;;;;;;;;;;;0BAiBW,CAAC,GAAG,EAAE;QAC9B,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,OAAO,4jBAA4jB,CAAC;QACtkB,CAAC;QACD,OAAO,krBAAkrB,CAAC;IAC5rB,CAAC,CAAC,EAAE;;;;;;;;kCAQ8B,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,YAAY,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;;;;;;;;;;uIAUU,CAAC,CAAC,CAAC;;;;;;;;;;;uIAWH;;;;;;;;CAQtI,CAAC;IAEA,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI;;;8CAGgC,SAAS;;;;;;;;yEAQkB,SAAS;wBAC1D,SAAS,wJAAwJ,CAAC;IACxL,CAAC;IAED,8EAA8E;IAC9E,yEAAyE;IACzE,oFAAoF;IACpF,MAAM,IAAI;;;;;sDAK0C,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;;;gGAGyB,CAAC,CAAC,CAAC;;;gGAGH;;;;;kJAKkD,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,6CAA6C,sEAAsE,CAAC;IAElT,MAAM,IAAI,+TAA+T,CAAC;IAE1U,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { SessionManager } from "@mariozechner/pi-coding-agent";
2
+ export declare function installSessionToolResultGuard(sessionManager: SessionManager): void;
@@ -0,0 +1,159 @@
1
+ import { extractToolCallsFromAssistant, extractToolResultId } from "./message-utils.js";
2
+ import { sanitizeToolCallInputs } from "./tool-call-repair.js";
3
+ // ── Tool result truncation ──────────────────────────────────────────────
4
+ const HARD_MAX_TOOL_RESULT_CHARS = 400_000;
5
+ const MIN_KEEP_CHARS = 2_000;
6
+ const TRUNCATION_SUFFIX = "\n\n[Content truncated during persistence — original exceeded size limit. " +
7
+ "Use offset/limit parameters or request specific sections for large content.]";
8
+ const MIDDLE_OMISSION_MARKER = "\n\n[... middle content omitted — showing head and tail ...]\n\n";
9
+ function hasImportantTail(text) {
10
+ const tail = text.slice(-2000).toLowerCase();
11
+ return (/\b(error|exception|failed|fatal|traceback|panic|stack trace|errno|exit code)\b/.test(tail) ||
12
+ /\}\s*$/.test(tail.trim()) ||
13
+ /\b(total|summary|result|complete|finished|done)\b/.test(tail));
14
+ }
15
+ function truncateToolResultText(text, maxChars) {
16
+ if (text.length <= maxChars)
17
+ return text;
18
+ const budget = Math.max(MIN_KEEP_CHARS, maxChars - TRUNCATION_SUFFIX.length);
19
+ if (hasImportantTail(text) && budget > MIN_KEEP_CHARS * 2) {
20
+ const tailBudget = Math.min(Math.floor(budget * 0.3), 4_000);
21
+ const headBudget = budget - tailBudget - MIDDLE_OMISSION_MARKER.length;
22
+ if (headBudget > MIN_KEEP_CHARS) {
23
+ let headCut = headBudget;
24
+ const headNewline = text.lastIndexOf("\n", headBudget);
25
+ if (headNewline > headBudget * 0.8)
26
+ headCut = headNewline;
27
+ let tailStart = text.length - tailBudget;
28
+ const tailNewline = text.indexOf("\n", tailStart);
29
+ if (tailNewline !== -1 && tailNewline < tailStart + tailBudget * 0.2)
30
+ tailStart = tailNewline + 1;
31
+ return text.slice(0, headCut) + MIDDLE_OMISSION_MARKER + text.slice(tailStart) + TRUNCATION_SUFFIX;
32
+ }
33
+ }
34
+ let cutPoint = budget;
35
+ const lastNewline = text.lastIndexOf("\n", budget);
36
+ if (lastNewline > budget * 0.8)
37
+ cutPoint = lastNewline;
38
+ return text.slice(0, cutPoint) + TRUNCATION_SUFFIX;
39
+ }
40
+ function capToolResultSize(msg) {
41
+ if (msg.role !== "toolResult")
42
+ return msg;
43
+ const content = msg.content;
44
+ if (!Array.isArray(content))
45
+ return msg;
46
+ let totalChars = 0;
47
+ for (const block of content) {
48
+ if (block && typeof block === "object" && block.type === "text" && typeof block.text === "string") {
49
+ totalChars += block.text.length;
50
+ }
51
+ }
52
+ if (totalChars <= HARD_MAX_TOOL_RESULT_CHARS)
53
+ return msg;
54
+ const newContent = content.map((block) => {
55
+ if (!block || typeof block !== "object" || block.type !== "text" || typeof block.text !== "string")
56
+ return block;
57
+ const blockShare = block.text.length / totalChars;
58
+ const blockBudget = Math.max(MIN_KEEP_CHARS + TRUNCATION_SUFFIX.length, Math.floor(HARD_MAX_TOOL_RESULT_CHARS * blockShare));
59
+ return { ...block, text: truncateToolResultText(block.text, blockBudget) };
60
+ });
61
+ return { ...msg, content: newContent };
62
+ }
63
+ function makeSyntheticToolResult(toolCallId, toolName) {
64
+ return {
65
+ role: "toolResult",
66
+ toolCallId,
67
+ toolName: toolName ?? "unknown",
68
+ content: [
69
+ {
70
+ type: "text",
71
+ text: "[siclaw] missing tool result in session history; inserted synthetic error result for transcript repair.",
72
+ },
73
+ ],
74
+ isError: true,
75
+ timestamp: Date.now(),
76
+ };
77
+ }
78
+ export function installSessionToolResultGuard(sessionManager) {
79
+ const originalAppend = sessionManager.appendMessage.bind(sessionManager);
80
+ const pending = new Map(); // tool call id → tool name
81
+ // IDs of tool calls dropped by sanitization — toolResults referencing these are also dropped
82
+ const droppedToolCallIds = new Set();
83
+ const flushPending = () => {
84
+ if (pending.size === 0)
85
+ return;
86
+ for (const [id, name] of pending) {
87
+ originalAppend(makeSyntheticToolResult(id, name));
88
+ }
89
+ pending.clear();
90
+ };
91
+ sessionManager.appendMessage = ((message) => {
92
+ const role = message.role;
93
+ if (role === "assistant") {
94
+ // Track IDs of tool calls that will be dropped by sanitization
95
+ const contentBefore = Array.isArray(message.content) ? message.content : [];
96
+ const idsBefore = new Set();
97
+ for (const block of contentBefore) {
98
+ if (block && typeof block === "object" && typeof block.id === "string" && block.id) {
99
+ const type = block.type;
100
+ if (type === "toolCall" || type === "toolUse" || type === "functionCall") {
101
+ idsBefore.add(block.id);
102
+ }
103
+ }
104
+ }
105
+ const sanitized = sanitizeToolCallInputs([message]);
106
+ if (sanitized.length === 0) {
107
+ console.warn(`[session-guard] Dropped entire assistant message (all tool call blocks were malformed)`);
108
+ for (const id of idsBefore)
109
+ droppedToolCallIds.add(id);
110
+ flushPending();
111
+ return undefined;
112
+ }
113
+ const nextMessage = sanitized[0];
114
+ // Find which IDs were dropped by sanitization
115
+ const idsAfter = new Set();
116
+ for (const block of nextMessage.content ?? []) {
117
+ if (block && typeof block === "object" && typeof block.id === "string" && block.id) {
118
+ idsAfter.add(block.id);
119
+ }
120
+ }
121
+ for (const id of idsBefore) {
122
+ if (!idsAfter.has(id))
123
+ droppedToolCallIds.add(id);
124
+ }
125
+ // Skip tool call extraction for errored/aborted messages — their blocks may be incomplete
126
+ const stopReason = nextMessage.stopReason;
127
+ const toolCalls = stopReason !== "error" && stopReason !== "aborted"
128
+ ? extractToolCallsFromAssistant(nextMessage)
129
+ : [];
130
+ // Flush pending orphans before a new assistant turn (with or without tool calls)
131
+ if (pending.size > 0) {
132
+ flushPending();
133
+ }
134
+ const result = originalAppend(nextMessage);
135
+ for (const tc of toolCalls) {
136
+ pending.set(tc.id, tc.name);
137
+ }
138
+ return result;
139
+ }
140
+ if (role === "toolResult") {
141
+ const id = extractToolResultId(message);
142
+ if (id && droppedToolCallIds.has(id)) {
143
+ // Drop orphaned toolResult whose tool call was removed by sanitization
144
+ console.warn(`[session-guard] Dropped orphaned toolResult for sanitized tool call id=${id}`);
145
+ droppedToolCallIds.delete(id);
146
+ return undefined;
147
+ }
148
+ if (id)
149
+ pending.delete(id);
150
+ // Truncate oversized tool results before persistence to prevent context bloat
151
+ const capped = capToolResultSize(message);
152
+ return originalAppend(capped);
153
+ }
154
+ // User or other messages: flush pending orphans first
155
+ flushPending();
156
+ return originalAppend(message);
157
+ });
158
+ }
159
+ //# sourceMappingURL=session-tool-result-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-tool-result-guard.js","sourceRoot":"","sources":["../../src/core/session-tool-result-guard.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,2EAA2E;AAE3E,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAC3C,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,iBAAiB,GACrB,4EAA4E;IAC5E,8EAA8E,CAAC;AACjF,MAAM,sBAAsB,GAC1B,kEAAkE,CAAC;AAErE,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7C,OAAO,CACL,gFAAgF,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3F,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,mDAAmD,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/D,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,QAAgB;IAC5D,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE7E,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,sBAAsB,CAAC,MAAM,CAAC;QACvE,IAAI,UAAU,GAAG,cAAc,EAAE,CAAC;YAChC,IAAI,OAAO,GAAG,UAAU,CAAC;YACzB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACvD,IAAI,WAAW,GAAG,UAAU,GAAG,GAAG;gBAAE,OAAO,GAAG,WAAW,CAAC;YAE1D,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;YACzC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAClD,IAAI,WAAW,KAAK,CAAC,CAAC,IAAI,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,GAAG;gBAAE,SAAS,GAAG,WAAW,GAAG,CAAC,CAAC;YAElG,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,sBAAsB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,iBAAiB,CAAC;QACrG,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,GAAG,MAAM,CAAC;IACtB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnD,IAAI,WAAW,GAAG,MAAM,GAAG,GAAG;QAAE,QAAQ,GAAG,WAAW,CAAC;IACvD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,iBAAiB,CAAC;AACrD,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAiB;IAC1C,IAAK,GAAyB,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,GAAG,CAAC;IACjE,MAAM,OAAO,GAAI,GAA6B,CAAC,OAAO,CAAC;IACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC;IAExC,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAAa,CAAC,IAAI,KAAK,MAAM,IAAI,OAAQ,KAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpH,UAAU,IAAK,KAAa,CAAC,IAAI,CAAC,MAAM,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,IAAI,UAAU,IAAI,0BAA0B;QAAE,OAAO,GAAG,CAAC;IAEzD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;QAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjH,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,UAAU,CAAC,CAAC,CAAC;QAC7H,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,UAAU,EAA6B,CAAC;AACpE,CAAC;AAED,SAAS,uBAAuB,CAAC,UAAkB,EAAE,QAAiB;IACpE,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,UAAU;QACV,QAAQ,EAAE,QAAQ,IAAI,SAAS;QAC/B,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,yGAAyG;aAChH;SACF;QACD,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACK,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,cAA8B;IAC1E,MAAM,cAAc,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8B,CAAC,CAAC,2BAA2B;IAClF,6FAA6F;IAC7F,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE7C,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAC/B,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;YACjC,cAAc,CAAC,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAU,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,cAAc,CAAC,aAAa,GAAG,CAAC,CAAC,OAAqB,EAAE,EAAE;QACxD,MAAM,IAAI,GAAI,OAA8B,CAAC,IAAI,CAAC;QAElD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,+DAA+D;YAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAE,OAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,OAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;YACpC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACnF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;oBACxB,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;wBACzE,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,wFAAwF,CAAC,CAAC;gBACvG,KAAK,MAAM,EAAE,IAAI,SAAS;oBAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvD,YAAY,EAAE,CAAC;gBACf,OAAO,SAAkB,CAAC;YAC5B,CAAC;YACD,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAiD,CAAC;YAEjF,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YACnC,KAAK,MAAM,KAAK,IAAK,WAAmB,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACvD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACnF,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;gBAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpD,CAAC;YAED,0FAA0F;YAC1F,MAAM,UAAU,GAAI,WAAuC,CAAC,UAAU,CAAC;YACvE,MAAM,SAAS,GACb,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS;gBAChD,CAAC,CAAC,6BAA6B,CAAC,WAAW,CAAC;gBAC5C,CAAC,CAAC,EAAE,CAAC;YAET,iFAAiF;YACjF,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACrB,YAAY,EAAE,CAAC;YACjB,CAAC;YAED,MAAM,MAAM,GAAG,cAAc,CAAC,WAAoB,CAAC,CAAC;YAEpD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,mBAAmB,CAAC,OAAwD,CAAC,CAAC;YACzF,IAAI,EAAE,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrC,uEAAuE;gBACvE,OAAO,CAAC,IAAI,CAAC,0EAA0E,EAAE,EAAE,CAAC,CAAC;gBAC7F,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC9B,OAAO,SAAkB,CAAC;YAC5B,CAAC;YACD,IAAI,EAAE;gBAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3B,8EAA8E;YAC9E,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,cAAc,CAAC,MAAe,CAAC,CAAC;QACzC,CAAC;QAED,sDAAsD;QACtD,YAAY,EAAE,CAAC;QACf,OAAO,cAAc,CAAC,OAAgB,CAAC,CAAC;IAC1C,CAAC,CAAoC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Stream response wrappers for pi-agent streamFn.
3
+ *
4
+ * These wrap the RETURN VALUE of streamFn (the stream object) to intercept
5
+ * and repair stream events in-flight. Unlike input wrappers that modify
6
+ * context.messages before the API call, these modify the response.
7
+ *
8
+ * Ported from OpenClaw's src/agents/pi-embedded-runner/run/attempt.ts.
9
+ */
10
+ /**
11
+ * Wrap streamFn to trim whitespace from tool call names in stream events.
12
+ * Also assigns fallback IDs to tool calls with missing/duplicate IDs.
13
+ */
14
+ export declare function wrapStreamFnTrimToolCallNames(baseFn: any): any;
15
+ /**
16
+ * Extract the first balanced JSON object/array from a raw string.
17
+ * Returns null if no balanced structure is found.
18
+ */
19
+ export declare function extractBalancedJsonPrefix(raw: string): string | null;
20
+ /**
21
+ * Check if we should attempt to repair malformed tool call arguments.
22
+ * Triggers on closing braces/brackets or short trailing content.
23
+ */
24
+ export declare function shouldAttemptMalformedToolCallRepair(partialJson: string, delta: string): boolean;
25
+ type ToolCallArgumentRepair = {
26
+ args: Record<string, unknown>;
27
+ trailingSuffix: string;
28
+ };
29
+ /**
30
+ * Try to parse and repair malformed tool call arguments.
31
+ * Returns undefined if the JSON is already valid or cannot be repaired.
32
+ */
33
+ export declare function tryParseMalformedToolCallArguments(raw: string): ToolCallArgumentRepair | undefined;
34
+ /**
35
+ * Wrap streamFn to repair malformed JSON in tool call arguments.
36
+ *
37
+ * Intercepts `toolcall_delta` events, accumulates partial JSON, and attempts
38
+ * to extract a balanced JSON prefix when trailing non-JSON characters appear.
39
+ */
40
+ export declare function wrapStreamFnRepairMalformedToolCallArguments(baseFn: any): any;
41
+ export {};