agent-world 0.12.3 → 0.15.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 (263) hide show
  1. package/README.md +105 -17
  2. package/dist/cli/commands.d.ts +7 -1
  3. package/dist/cli/commands.js +27 -10
  4. package/dist/cli/hitl.d.ts +9 -2
  5. package/dist/cli/hitl.js +61 -20
  6. package/dist/cli/index.js +250 -96
  7. package/dist/cli/system-events.d.ts +27 -0
  8. package/dist/cli/system-events.js +63 -0
  9. package/dist/core/activity-tracker.d.ts +38 -2
  10. package/dist/core/activity-tracker.d.ts.map +1 -1
  11. package/dist/core/activity-tracker.js +62 -9
  12. package/dist/core/activity-tracker.js.map +1 -1
  13. package/dist/core/anthropic-direct.d.ts +2 -0
  14. package/dist/core/anthropic-direct.d.ts.map +1 -1
  15. package/dist/core/anthropic-direct.js +43 -1
  16. package/dist/core/anthropic-direct.js.map +1 -1
  17. package/dist/core/chat-constants.d.ts +12 -0
  18. package/dist/core/chat-constants.d.ts.map +1 -1
  19. package/dist/core/chat-constants.js +5 -0
  20. package/dist/core/chat-constants.js.map +1 -1
  21. package/dist/core/create-agent-tool.d.ts +28 -25
  22. package/dist/core/create-agent-tool.d.ts.map +1 -1
  23. package/dist/core/create-agent-tool.js +264 -141
  24. package/dist/core/create-agent-tool.js.map +1 -1
  25. package/dist/core/events/index.d.ts +5 -2
  26. package/dist/core/events/index.d.ts.map +1 -1
  27. package/dist/core/events/index.js +5 -2
  28. package/dist/core/events/index.js.map +1 -1
  29. package/dist/core/events/memory-manager.d.ts +26 -1
  30. package/dist/core/events/memory-manager.d.ts.map +1 -1
  31. package/dist/core/events/memory-manager.js +877 -72
  32. package/dist/core/events/memory-manager.js.map +1 -1
  33. package/dist/core/events/orchestrator.d.ts +8 -0
  34. package/dist/core/events/orchestrator.d.ts.map +1 -1
  35. package/dist/core/events/orchestrator.js +214 -38
  36. package/dist/core/events/orchestrator.js.map +1 -1
  37. package/dist/core/events/persistence.d.ts +21 -14
  38. package/dist/core/events/persistence.d.ts.map +1 -1
  39. package/dist/core/events/persistence.js +100 -61
  40. package/dist/core/events/persistence.js.map +1 -1
  41. package/dist/core/events/publishers.d.ts +13 -16
  42. package/dist/core/events/publishers.d.ts.map +1 -1
  43. package/dist/core/events/publishers.js +54 -55
  44. package/dist/core/events/publishers.js.map +1 -1
  45. package/dist/core/events/subscribers.d.ts +17 -14
  46. package/dist/core/events/subscribers.d.ts.map +1 -1
  47. package/dist/core/events/subscribers.js +68 -147
  48. package/dist/core/events/subscribers.js.map +1 -1
  49. package/dist/core/events/title-scheduler.d.ts +27 -0
  50. package/dist/core/events/title-scheduler.d.ts.map +1 -0
  51. package/dist/core/events/title-scheduler.js +135 -0
  52. package/dist/core/events/title-scheduler.js.map +1 -0
  53. package/dist/core/events/tool-bridge-logging.d.ts +4 -1
  54. package/dist/core/events/tool-bridge-logging.d.ts.map +1 -1
  55. package/dist/core/events/tool-bridge-logging.js +112 -13
  56. package/dist/core/events/tool-bridge-logging.js.map +1 -1
  57. package/dist/core/events-metadata.d.ts.map +1 -1
  58. package/dist/core/events-metadata.js +8 -4
  59. package/dist/core/events-metadata.js.map +1 -1
  60. package/dist/core/export.d.ts +1 -1
  61. package/dist/core/export.d.ts.map +1 -1
  62. package/dist/core/export.js +2 -15
  63. package/dist/core/export.js.map +1 -1
  64. package/dist/core/feature-path-logging.d.ts +50 -0
  65. package/dist/core/feature-path-logging.d.ts.map +1 -0
  66. package/dist/core/feature-path-logging.js +130 -0
  67. package/dist/core/feature-path-logging.js.map +1 -0
  68. package/dist/core/file-tools.d.ts +57 -1
  69. package/dist/core/file-tools.d.ts.map +1 -1
  70. package/dist/core/file-tools.js +329 -29
  71. package/dist/core/file-tools.js.map +1 -1
  72. package/dist/core/google-direct.d.ts +6 -1
  73. package/dist/core/google-direct.d.ts.map +1 -1
  74. package/dist/core/google-direct.js +76 -7
  75. package/dist/core/google-direct.js.map +1 -1
  76. package/dist/core/heartbeat.d.ts +34 -0
  77. package/dist/core/heartbeat.d.ts.map +1 -0
  78. package/dist/core/heartbeat.js +153 -0
  79. package/dist/core/heartbeat.js.map +1 -0
  80. package/dist/core/hitl-tool.d.ts +73 -0
  81. package/dist/core/hitl-tool.d.ts.map +1 -0
  82. package/dist/core/hitl-tool.js +284 -0
  83. package/dist/core/hitl-tool.js.map +1 -0
  84. package/dist/core/hitl.d.ts +85 -8
  85. package/dist/core/hitl.d.ts.map +1 -1
  86. package/dist/core/hitl.js +375 -61
  87. package/dist/core/hitl.js.map +1 -1
  88. package/dist/core/index.d.ts +12 -7
  89. package/dist/core/index.d.ts.map +1 -1
  90. package/dist/core/index.js +11 -6
  91. package/dist/core/index.js.map +1 -1
  92. package/dist/core/llm-manager.d.ts +17 -0
  93. package/dist/core/llm-manager.d.ts.map +1 -1
  94. package/dist/core/llm-manager.js +335 -43
  95. package/dist/core/llm-manager.js.map +1 -1
  96. package/dist/core/load-skill-tool.d.ts +36 -3
  97. package/dist/core/load-skill-tool.d.ts.map +1 -1
  98. package/dist/core/load-skill-tool.js +807 -93
  99. package/dist/core/load-skill-tool.js.map +1 -1
  100. package/dist/core/logger.d.ts +14 -0
  101. package/dist/core/logger.d.ts.map +1 -1
  102. package/dist/core/logger.js +15 -0
  103. package/dist/core/logger.js.map +1 -1
  104. package/dist/core/managers.d.ts +41 -52
  105. package/dist/core/managers.d.ts.map +1 -1
  106. package/dist/core/managers.js +422 -533
  107. package/dist/core/managers.js.map +1 -1
  108. package/dist/core/mcp-server-registry.d.ts +19 -2
  109. package/dist/core/mcp-server-registry.d.ts.map +1 -1
  110. package/dist/core/mcp-server-registry.js +168 -12
  111. package/dist/core/mcp-server-registry.js.map +1 -1
  112. package/dist/core/message-cutoff.d.ts +29 -0
  113. package/dist/core/message-cutoff.d.ts.map +1 -0
  114. package/dist/core/message-cutoff.js +63 -0
  115. package/dist/core/message-cutoff.js.map +1 -0
  116. package/dist/core/message-edit-manager.d.ts +54 -0
  117. package/dist/core/message-edit-manager.d.ts.map +1 -0
  118. package/dist/core/message-edit-manager.js +602 -0
  119. package/dist/core/message-edit-manager.js.map +1 -0
  120. package/dist/core/message-prep.d.ts +2 -0
  121. package/dist/core/message-prep.d.ts.map +1 -1
  122. package/dist/core/message-prep.js +39 -12
  123. package/dist/core/message-prep.js.map +1 -1
  124. package/dist/core/message-processing-control.d.ts +1 -0
  125. package/dist/core/message-processing-control.d.ts.map +1 -1
  126. package/dist/core/message-processing-control.js +23 -6
  127. package/dist/core/message-processing-control.js.map +1 -1
  128. package/dist/core/openai-direct.d.ts +9 -3
  129. package/dist/core/openai-direct.d.ts.map +1 -1
  130. package/dist/core/openai-direct.js +267 -33
  131. package/dist/core/openai-direct.js.map +1 -1
  132. package/dist/core/optional-tracers/opik-runtime.d.ts +32 -0
  133. package/dist/core/optional-tracers/opik-runtime.d.ts.map +1 -0
  134. package/dist/core/optional-tracers/opik-runtime.js +141 -0
  135. package/dist/core/optional-tracers/opik-runtime.js.map +1 -0
  136. package/dist/core/queue-manager.d.ts +84 -0
  137. package/dist/core/queue-manager.d.ts.map +1 -0
  138. package/dist/core/queue-manager.js +814 -0
  139. package/dist/core/queue-manager.js.map +1 -0
  140. package/dist/core/reasoning-controls.d.ts +30 -0
  141. package/dist/core/reasoning-controls.d.ts.map +1 -0
  142. package/dist/core/reasoning-controls.js +118 -0
  143. package/dist/core/reasoning-controls.js.map +1 -0
  144. package/dist/core/reliability-config.d.ts +82 -0
  145. package/dist/core/reliability-config.d.ts.map +1 -0
  146. package/dist/core/reliability-config.js +106 -0
  147. package/dist/core/reliability-config.js.map +1 -0
  148. package/dist/core/reliability-runtime.d.ts +53 -0
  149. package/dist/core/reliability-runtime.d.ts.map +1 -0
  150. package/dist/core/reliability-runtime.js +92 -0
  151. package/dist/core/reliability-runtime.js.map +1 -0
  152. package/dist/core/security/guardrails.d.ts +21 -0
  153. package/dist/core/security/guardrails.d.ts.map +1 -0
  154. package/dist/core/security/guardrails.js +111 -0
  155. package/dist/core/security/guardrails.js.map +1 -0
  156. package/dist/core/send-message-tool.d.ts +79 -0
  157. package/dist/core/send-message-tool.d.ts.map +1 -0
  158. package/dist/core/send-message-tool.js +222 -0
  159. package/dist/core/send-message-tool.js.map +1 -0
  160. package/dist/core/shell-cmd-tool.d.ts +82 -1
  161. package/dist/core/shell-cmd-tool.d.ts.map +1 -1
  162. package/dist/core/shell-cmd-tool.js +854 -42
  163. package/dist/core/shell-cmd-tool.js.map +1 -1
  164. package/dist/core/skill-registry.d.ts +2 -0
  165. package/dist/core/skill-registry.d.ts.map +1 -1
  166. package/dist/core/skill-registry.js +52 -2
  167. package/dist/core/skill-registry.js.map +1 -1
  168. package/dist/core/storage/eventStorage/fileEventStorage.d.ts +5 -0
  169. package/dist/core/storage/eventStorage/fileEventStorage.d.ts.map +1 -1
  170. package/dist/core/storage/eventStorage/fileEventStorage.js +61 -0
  171. package/dist/core/storage/eventStorage/fileEventStorage.js.map +1 -1
  172. package/dist/core/storage/eventStorage/memoryEventStorage.d.ts +5 -0
  173. package/dist/core/storage/eventStorage/memoryEventStorage.d.ts.map +1 -1
  174. package/dist/core/storage/eventStorage/memoryEventStorage.js +34 -0
  175. package/dist/core/storage/eventStorage/memoryEventStorage.js.map +1 -1
  176. package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts +1 -0
  177. package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts.map +1 -1
  178. package/dist/core/storage/eventStorage/sqliteEventStorage.js +19 -2
  179. package/dist/core/storage/eventStorage/sqliteEventStorage.js.map +1 -1
  180. package/dist/core/storage/eventStorage/types.d.ts +6 -0
  181. package/dist/core/storage/eventStorage/types.d.ts.map +1 -1
  182. package/dist/core/storage/eventStorage/types.js +1 -0
  183. package/dist/core/storage/eventStorage/types.js.map +1 -1
  184. package/dist/core/storage/eventStorage/validation.d.ts.map +1 -1
  185. package/dist/core/storage/eventStorage/validation.js +2 -1
  186. package/dist/core/storage/eventStorage/validation.js.map +1 -1
  187. package/dist/core/storage/github-world-import.d.ts +84 -0
  188. package/dist/core/storage/github-world-import.d.ts.map +1 -0
  189. package/dist/core/storage/github-world-import.js +365 -0
  190. package/dist/core/storage/github-world-import.js.map +1 -0
  191. package/dist/core/storage/memory-storage.d.ts +19 -8
  192. package/dist/core/storage/memory-storage.d.ts.map +1 -1
  193. package/dist/core/storage/memory-storage.js +147 -49
  194. package/dist/core/storage/memory-storage.js.map +1 -1
  195. package/dist/core/storage/queue-storage.d.ts +1 -0
  196. package/dist/core/storage/queue-storage.d.ts.map +1 -1
  197. package/dist/core/storage/queue-storage.js +3 -2
  198. package/dist/core/storage/queue-storage.js.map +1 -1
  199. package/dist/core/storage/sqlite-storage.d.ts +14 -9
  200. package/dist/core/storage/sqlite-storage.d.ts.map +1 -1
  201. package/dist/core/storage/sqlite-storage.js +131 -154
  202. package/dist/core/storage/sqlite-storage.js.map +1 -1
  203. package/dist/core/storage/storage-factory.d.ts +3 -0
  204. package/dist/core/storage/storage-factory.d.ts.map +1 -1
  205. package/dist/core/storage/storage-factory.js +175 -89
  206. package/dist/core/storage/storage-factory.js.map +1 -1
  207. package/dist/core/storage/world-storage.d.ts +1 -1
  208. package/dist/core/storage/world-storage.d.ts.map +1 -1
  209. package/dist/core/storage/world-storage.js +5 -1
  210. package/dist/core/storage/world-storage.js.map +1 -1
  211. package/dist/core/storage-init.d.ts +11 -0
  212. package/dist/core/storage-init.d.ts.map +1 -0
  213. package/dist/core/storage-init.js +122 -0
  214. package/dist/core/storage-init.js.map +1 -0
  215. package/dist/core/subscription.d.ts +8 -1
  216. package/dist/core/subscription.d.ts.map +1 -1
  217. package/dist/core/subscription.js +130 -23
  218. package/dist/core/subscription.js.map +1 -1
  219. package/dist/core/tool-approval.d.ts +45 -0
  220. package/dist/core/tool-approval.d.ts.map +1 -0
  221. package/dist/core/tool-approval.js +223 -0
  222. package/dist/core/tool-approval.js.map +1 -0
  223. package/dist/core/tool-execution-envelope.d.ts +87 -0
  224. package/dist/core/tool-execution-envelope.d.ts.map +1 -0
  225. package/dist/core/tool-execution-envelope.js +168 -0
  226. package/dist/core/tool-execution-envelope.js.map +1 -0
  227. package/dist/core/tool-utils.d.ts +9 -2
  228. package/dist/core/tool-utils.d.ts.map +1 -1
  229. package/dist/core/tool-utils.js +122 -28
  230. package/dist/core/tool-utils.js.map +1 -1
  231. package/dist/core/types.d.ts +69 -36
  232. package/dist/core/types.d.ts.map +1 -1
  233. package/dist/core/types.js +3 -2
  234. package/dist/core/types.js.map +1 -1
  235. package/dist/core/utils.d.ts +16 -0
  236. package/dist/core/utils.d.ts.map +1 -1
  237. package/dist/core/utils.js +99 -24
  238. package/dist/core/utils.js.map +1 -1
  239. package/dist/core/web-fetch-tool.d.ts +72 -0
  240. package/dist/core/web-fetch-tool.d.ts.map +1 -0
  241. package/dist/core/web-fetch-tool.js +491 -0
  242. package/dist/core/web-fetch-tool.js.map +1 -0
  243. package/dist/core/world-registry.d.ts +84 -0
  244. package/dist/core/world-registry.d.ts.map +1 -0
  245. package/dist/core/world-registry.js +247 -0
  246. package/dist/core/world-registry.js.map +1 -0
  247. package/dist/public/assets/index-Be-1xtV-.js +104 -0
  248. package/dist/public/assets/index-tsDdiXDU.css +1 -0
  249. package/dist/public/index.html +2 -2
  250. package/dist/public/mcp-sandbox-proxy.html +148 -0
  251. package/dist/server/api.js +288 -58
  252. package/dist/server/error-response.d.ts +27 -0
  253. package/dist/server/error-response.js +77 -0
  254. package/dist/server/index.d.ts +2 -1
  255. package/dist/server/index.js +6 -2
  256. package/dist/server/sse-handler.d.ts +13 -2
  257. package/dist/server/sse-handler.js +194 -26
  258. package/migrations/0015_add_message_queue.sql +36 -0
  259. package/migrations/0016_add_world_heartbeat.sql +13 -0
  260. package/migrations/0017_add_title_provenance.sql +7 -0
  261. package/package.json +31 -10
  262. package/dist/public/assets/index-BO20H4xt.js +0 -96
  263. package/dist/public/assets/index-ETY7W5_S.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../core/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../core/export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Feature-Path Logging Utilities
3
+ *
4
+ * Purpose:
5
+ * - Provide shared helpers for feature-path diagnostics across message prep,
6
+ * LLM request/response logging, and tool lifecycle tracing.
7
+ *
8
+ * Key Features:
9
+ * - Canonical category helper for dual-category migration logging.
10
+ * - Raw-payload log gating using existing per-category logger controls.
11
+ * - Recursive sensitive-field redaction for structured payloads.
12
+ * - Safe truncation of oversized string values to limit log bloat.
13
+ *
14
+ * Implementation Notes:
15
+ * - Uses core logger category filtering (`shouldLogForCategory`) for gating.
16
+ * - Redaction is key-name based and preserves object structure where possible.
17
+ * - Circular object references are replaced with a stable marker.
18
+ *
19
+ * Recent Changes:
20
+ * - 2026-02-28: Added shared feature-path logging helpers and redaction utilities.
21
+ */
22
+ import { type LogLevel } from './logger.js';
23
+ /**
24
+ * Redact sensitive values and truncate overlong strings in structured log payloads.
25
+ */
26
+ export declare function sanitizeRawPayloadForLog(payload: unknown, options?: {
27
+ maxStringLength?: number;
28
+ }): unknown;
29
+ /**
30
+ * Returns true when a raw logging category is enabled for the given level.
31
+ */
32
+ export declare function shouldEmitRawLog(category: 'llm.request.raw' | 'llm.response.raw', level?: LogLevel): boolean;
33
+ /**
34
+ * Emit to a canonical category and optional migration aliases.
35
+ */
36
+ export declare function emitAliasedCategoryLog(level: LogLevel, canonicalCategory: string, message: string, data?: Record<string, unknown>, aliases?: string[]): void;
37
+ /**
38
+ * Build a standard correlation envelope for feature-path logs.
39
+ */
40
+ export declare function buildFeaturePathCorrelation(values: {
41
+ worldId?: string;
42
+ chatId?: string | null;
43
+ agentId?: string;
44
+ messageId?: string;
45
+ turnId?: string;
46
+ runId?: string;
47
+ toolCallId?: string;
48
+ toolName?: string;
49
+ }): Record<string, unknown>;
50
+ export declare function mergeFeaturePathData(correlation: Record<string, unknown>, data?: Record<string, unknown>): Record<string, unknown>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature-path-logging.d.ts","sourceRoot":"","sources":["../../core/feature-path-logging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAA8C,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AA0DxF;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC,OAAO,CAGT;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,iBAAiB,GAAG,kBAAkB,EAChD,KAAK,GAAE,QAAkB,GACxB,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,QAAQ,EACf,iBAAiB,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,GAAE,MAAM,EAAO,GACrB,IAAI,CAgBN;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE;IACN,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACA,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWzB;AAED,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQzB"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Feature-Path Logging Utilities
3
+ *
4
+ * Purpose:
5
+ * - Provide shared helpers for feature-path diagnostics across message prep,
6
+ * LLM request/response logging, and tool lifecycle tracing.
7
+ *
8
+ * Key Features:
9
+ * - Canonical category helper for dual-category migration logging.
10
+ * - Raw-payload log gating using existing per-category logger controls.
11
+ * - Recursive sensitive-field redaction for structured payloads.
12
+ * - Safe truncation of oversized string values to limit log bloat.
13
+ *
14
+ * Implementation Notes:
15
+ * - Uses core logger category filtering (`shouldLogForCategory`) for gating.
16
+ * - Redaction is key-name based and preserves object structure where possible.
17
+ * - Circular object references are replaced with a stable marker.
18
+ *
19
+ * Recent Changes:
20
+ * - 2026-02-28: Added shared feature-path logging helpers and redaction utilities.
21
+ */
22
+ import { createCategoryLogger, shouldLogForCategory } from './logger.js';
23
+ const SENSITIVE_KEY_PATTERN = /(key|token|secret|password|authorization|cookie|credential|session)/i;
24
+ const MAX_REDACTION_DEPTH = 8;
25
+ const DEFAULT_STRING_LIMIT = 4000;
26
+ function isPlainRecord(value) {
27
+ return !!value && typeof value === 'object' && !Array.isArray(value);
28
+ }
29
+ function redactRecursively(value, depth, seen, maxStringLength) {
30
+ if (value == null) {
31
+ return value;
32
+ }
33
+ if (typeof value === 'string') {
34
+ if (value.length <= maxStringLength) {
35
+ return value;
36
+ }
37
+ return `${value.slice(0, maxStringLength)}...[${value.length - maxStringLength} more]`;
38
+ }
39
+ if (typeof value !== 'object') {
40
+ return value;
41
+ }
42
+ if (seen.has(value)) {
43
+ return '[Circular]';
44
+ }
45
+ if (depth >= MAX_REDACTION_DEPTH) {
46
+ return '[MaxDepth]';
47
+ }
48
+ seen.add(value);
49
+ if (Array.isArray(value)) {
50
+ return value.map((entry) => redactRecursively(entry, depth + 1, seen, maxStringLength));
51
+ }
52
+ const result = {};
53
+ for (const [key, entry] of Object.entries(value)) {
54
+ if (SENSITIVE_KEY_PATTERN.test(key)) {
55
+ result[key] = '[REDACTED]';
56
+ continue;
57
+ }
58
+ result[key] = redactRecursively(entry, depth + 1, seen, maxStringLength);
59
+ }
60
+ return result;
61
+ }
62
+ /**
63
+ * Redact sensitive values and truncate overlong strings in structured log payloads.
64
+ */
65
+ export function sanitizeRawPayloadForLog(payload, options) {
66
+ const maxStringLength = options?.maxStringLength ?? DEFAULT_STRING_LIMIT;
67
+ return redactRecursively(payload, 0, new WeakSet(), maxStringLength);
68
+ }
69
+ /**
70
+ * Returns true when a raw logging category is enabled for the given level.
71
+ */
72
+ export function shouldEmitRawLog(category, level = 'debug') {
73
+ return shouldLogForCategory(level, category);
74
+ }
75
+ /**
76
+ * Emit to a canonical category and optional migration aliases.
77
+ */
78
+ export function emitAliasedCategoryLog(level, canonicalCategory, message, data, aliases = []) {
79
+ const categories = [canonicalCategory, ...aliases];
80
+ for (const category of categories) {
81
+ const logger = createCategoryLogger(category);
82
+ if (level === 'trace') {
83
+ logger.trace(message, data);
84
+ }
85
+ else if (level === 'debug') {
86
+ logger.debug(message, data);
87
+ }
88
+ else if (level === 'info') {
89
+ logger.info(message, data);
90
+ }
91
+ else if (level === 'warn') {
92
+ logger.warn(message, data);
93
+ }
94
+ else {
95
+ logger.error(message, data);
96
+ }
97
+ }
98
+ }
99
+ /**
100
+ * Build a standard correlation envelope for feature-path logs.
101
+ */
102
+ export function buildFeaturePathCorrelation(values) {
103
+ const correlation = {};
104
+ if (values.worldId)
105
+ correlation.worldId = values.worldId;
106
+ if (values.chatId != null)
107
+ correlation.chatId = values.chatId;
108
+ if (values.agentId)
109
+ correlation.agentId = values.agentId;
110
+ if (values.messageId)
111
+ correlation.messageId = values.messageId;
112
+ if (values.turnId)
113
+ correlation.turnId = values.turnId;
114
+ if (values.runId)
115
+ correlation.runId = values.runId;
116
+ if (values.toolCallId)
117
+ correlation.toolCallId = values.toolCallId;
118
+ if (values.toolName)
119
+ correlation.toolName = values.toolName;
120
+ return correlation;
121
+ }
122
+ export function mergeFeaturePathData(correlation, data) {
123
+ if (!data) {
124
+ return correlation;
125
+ }
126
+ if (!isPlainRecord(data)) {
127
+ return correlation;
128
+ }
129
+ return { ...correlation, ...data };
130
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature-path-logging.js","sourceRoot":"","sources":["../../core/feature-path-logging.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * File Tools Module - Built-in workspace inspection tools for LLM workflows.
3
3
  *
4
4
  * Features:
5
- * - Exposes built-in `read_file`, `list_files`, and `grep` tool definitions
5
+ * - Exposes built-in `read_file`, `write_file`, `list_files`, and `grep` tool definitions
6
6
  * - Supports bounded line-based file reads with offset and limit
7
7
  * - Provides deterministic directory listing with optional hidden-file support
8
8
  * - Performs recursive text search with plain-text or regex matching
@@ -15,6 +15,13 @@
15
15
  * - Errors are returned as tool-friendly `Error:` strings
16
16
  *
17
17
  * Recent Changes:
18
+ * - 2026-03-12: Added `read` permission level guard to `write_file` — returns a blocked-tool error when world toolPermission is 'read'.
19
+ * - 2026-03-03: Tightened tool output limits: read_file hard-capped at 200 lines, list_files capped at depth 2 and 200 entries, grep capped at 50 hits with configurable context_lines (2–5).
20
+ * - 2026-03-01: Hardened `read_file` against undefined read payloads from mocked fs implementations by coercing to empty content instead of hard-failing.
21
+ * - 2026-03-01: Added read_file fallback that resolves missing relative paths against loaded skill roots (for skill script paths like `scripts/convert.py`).
22
+ * - 2026-03-01: Allowed read-only file tools to traverse lexically in-scope `.agents/skills/*` paths even when symlinks resolve outside the world directory (skill workspace compatibility).
23
+ * - 2026-02-28: Added built-in `write_file` tool with explicit `create`/`overwrite` modes and trusted-scope path enforcement.
24
+ * - 2026-02-21: Added `list_files` output bounding (`maxEntries`) and optional `includePattern` filtering with truncation metadata to reduce continuation token spikes and tool-hop churn on large workspaces.
18
25
  * - 2026-02-19: Aligned file-tool path behavior with `shell_cmd`: `list_files` now defaults to trusted working directory when `path` is omitted, and `read_file` accepts `path` alias.
19
26
  * - 2026-02-16: Switched `list_files` scanning to `fast-glob` with depth control and default ignore rules.
20
27
  * - 2026-02-16: Added optional `recursive` mode to `list_files` for nested directory traversal in a single call.
@@ -27,7 +34,12 @@ type ToolContext = {
27
34
  workingDirectory?: string;
28
35
  world?: {
29
36
  variables?: string;
37
+ [key: string]: unknown;
30
38
  };
39
+ chatId?: string | null;
40
+ toolCallId?: string;
41
+ agentName?: string;
42
+ messages?: Array<Record<string, any>>;
31
43
  };
32
44
  export declare function createReadFileToolDefinition(): {
33
45
  description: string;
@@ -56,6 +68,34 @@ export declare function createReadFileToolDefinition(): {
56
68
  };
57
69
  execute: (args: any, _sequenceId?: string, _parentToolCall?: string, context?: ToolContext) => Promise<string>;
58
70
  };
71
+ export declare function createWriteFileToolDefinition(): {
72
+ description: string;
73
+ parameters: {
74
+ type: string;
75
+ properties: {
76
+ filePath: {
77
+ type: string;
78
+ description: string;
79
+ };
80
+ path: {
81
+ type: string;
82
+ description: string;
83
+ };
84
+ content: {
85
+ type: string;
86
+ description: string;
87
+ };
88
+ mode: {
89
+ type: string;
90
+ enum: string[];
91
+ description: string;
92
+ };
93
+ };
94
+ required: string[];
95
+ additionalProperties: boolean;
96
+ };
97
+ execute: (args: any, _sequenceId?: string, _parentToolCall?: string, context?: ToolContext) => Promise<string>;
98
+ };
59
99
  export declare function createListFilesToolDefinition(): {
60
100
  description: string;
61
101
  parameters: {
@@ -73,6 +113,18 @@ export declare function createListFilesToolDefinition(): {
73
113
  type: string;
74
114
  description: string;
75
115
  };
116
+ maxDepth: {
117
+ type: string;
118
+ description: string;
119
+ };
120
+ includePattern: {
121
+ type: string;
122
+ description: string;
123
+ };
124
+ maxEntries: {
125
+ type: string;
126
+ description: string;
127
+ };
76
128
  };
77
129
  required: never[];
78
130
  additionalProperties: boolean;
@@ -104,6 +156,10 @@ export declare function createGrepToolDefinition(): {
104
156
  type: string;
105
157
  description: string;
106
158
  };
159
+ contextLines: {
160
+ type: string;
161
+ description: string;
162
+ };
107
163
  };
108
164
  required: string[];
109
165
  additionalProperties: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"file-tools.d.ts","sourceRoot":"","sources":["../../core/file-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAUH,KAAK,WAAW,GAAG;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAoLF,wBAAgB,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;oBA2BlB,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EAmCnG;AAED,wBAAgB,6BAA6B;;;;;;;;;;;;;;;;;;;;;oBAuBnB,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EA4CnG;AAED,wBAAgB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA+Bd,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EA0DnG"}
1
+ {"version":3,"file":"file-tools.d.ts","sourceRoot":"","sources":["../../core/file-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAaH,KAAK,WAAW,GAAG;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;CACvC,CAAC;AAmSF,wBAAgB,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;oBA2BlB,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EA+EnG;AAeD,wBAAgB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;oBA4BnB,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EAuGnG;AAED,wBAAgB,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmCnB,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EAsEnG;AAED,wBAAgB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmCd,GAAG,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,WAAW;EA4DnG"}