agenticreplay 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1565) hide show
  1. package/README.md +14 -13
  2. package/bin/agenticreplay.js +2 -0
  3. package/node_modules/@agenticreplay/adapters/dist/claude-code.d.ts +37 -0
  4. package/node_modules/@agenticreplay/adapters/dist/claude-code.d.ts.map +1 -0
  5. package/node_modules/@agenticreplay/adapters/dist/claude-code.js +103 -0
  6. package/node_modules/@agenticreplay/adapters/dist/claude-code.js.map +1 -0
  7. package/node_modules/@agenticreplay/adapters/dist/codex.d.ts +36 -0
  8. package/node_modules/@agenticreplay/adapters/dist/codex.d.ts.map +1 -0
  9. package/node_modules/@agenticreplay/adapters/dist/codex.js +130 -0
  10. package/node_modules/@agenticreplay/adapters/dist/codex.js.map +1 -0
  11. package/node_modules/@agenticreplay/adapters/dist/contract.d.ts +65 -0
  12. package/node_modules/@agenticreplay/adapters/dist/contract.d.ts.map +1 -0
  13. package/node_modules/@agenticreplay/adapters/dist/contract.js +460 -0
  14. package/node_modules/@agenticreplay/adapters/dist/contract.js.map +1 -0
  15. package/node_modules/@agenticreplay/adapters/dist/cursor.d.ts +40 -0
  16. package/node_modules/@agenticreplay/adapters/dist/cursor.d.ts.map +1 -0
  17. package/node_modules/@agenticreplay/adapters/dist/cursor.js +71 -0
  18. package/node_modules/@agenticreplay/adapters/dist/cursor.js.map +1 -0
  19. package/node_modules/@agenticreplay/adapters/dist/detect.d.ts +47 -0
  20. package/node_modules/@agenticreplay/adapters/dist/detect.d.ts.map +1 -0
  21. package/node_modules/@agenticreplay/adapters/dist/detect.js +123 -0
  22. package/node_modules/@agenticreplay/adapters/dist/detect.js.map +1 -0
  23. package/node_modules/@agenticreplay/adapters/dist/env.d.ts +60 -0
  24. package/node_modules/@agenticreplay/adapters/dist/env.d.ts.map +1 -0
  25. package/node_modules/@agenticreplay/adapters/dist/env.js +99 -0
  26. package/node_modules/@agenticreplay/adapters/dist/env.js.map +1 -0
  27. package/node_modules/@agenticreplay/adapters/dist/exec.d.ts +25 -0
  28. package/node_modules/@agenticreplay/adapters/dist/exec.d.ts.map +1 -0
  29. package/node_modules/@agenticreplay/adapters/dist/exec.js +51 -0
  30. package/node_modules/@agenticreplay/adapters/dist/exec.js.map +1 -0
  31. package/node_modules/@agenticreplay/adapters/dist/generic-openai.d.ts +8 -0
  32. package/node_modules/@agenticreplay/adapters/dist/generic-openai.d.ts.map +1 -0
  33. package/node_modules/@agenticreplay/adapters/dist/generic-openai.js +31 -0
  34. package/node_modules/@agenticreplay/adapters/dist/generic-openai.js.map +1 -0
  35. package/node_modules/@agenticreplay/adapters/dist/goose.d.ts +39 -0
  36. package/node_modules/@agenticreplay/adapters/dist/goose.d.ts.map +1 -0
  37. package/node_modules/@agenticreplay/adapters/dist/goose.js +81 -0
  38. package/node_modules/@agenticreplay/adapters/dist/goose.js.map +1 -0
  39. package/node_modules/@agenticreplay/adapters/dist/grok.d.ts +23 -0
  40. package/node_modules/@agenticreplay/adapters/dist/grok.d.ts.map +1 -0
  41. package/node_modules/@agenticreplay/adapters/dist/grok.js +50 -0
  42. package/node_modules/@agenticreplay/adapters/dist/grok.js.map +1 -0
  43. package/node_modules/@agenticreplay/adapters/dist/hermes.d.ts +70 -0
  44. package/node_modules/@agenticreplay/adapters/dist/hermes.d.ts.map +1 -0
  45. package/node_modules/@agenticreplay/adapters/dist/hermes.js +88 -0
  46. package/node_modules/@agenticreplay/adapters/dist/hermes.js.map +1 -0
  47. package/node_modules/@agenticreplay/adapters/dist/index.d.ts +25 -0
  48. package/node_modules/@agenticreplay/adapters/dist/index.d.ts.map +1 -0
  49. package/node_modules/@agenticreplay/adapters/dist/index.js +25 -0
  50. package/node_modules/@agenticreplay/adapters/dist/index.js.map +1 -0
  51. package/node_modules/@agenticreplay/adapters/dist/indexrag.d.ts +27 -0
  52. package/node_modules/@agenticreplay/adapters/dist/indexrag.d.ts.map +1 -0
  53. package/node_modules/@agenticreplay/adapters/dist/indexrag.js +236 -0
  54. package/node_modules/@agenticreplay/adapters/dist/indexrag.js.map +1 -0
  55. package/node_modules/@agenticreplay/adapters/dist/kilo.d.ts +21 -0
  56. package/node_modules/@agenticreplay/adapters/dist/kilo.d.ts.map +1 -0
  57. package/node_modules/@agenticreplay/adapters/dist/kilo.js +35 -0
  58. package/node_modules/@agenticreplay/adapters/dist/kilo.js.map +1 -0
  59. package/node_modules/@agenticreplay/adapters/dist/mcode.d.ts +81 -0
  60. package/node_modules/@agenticreplay/adapters/dist/mcode.d.ts.map +1 -0
  61. package/node_modules/@agenticreplay/adapters/dist/mcode.js +368 -0
  62. package/node_modules/@agenticreplay/adapters/dist/mcode.js.map +1 -0
  63. package/node_modules/@agenticreplay/adapters/dist/mcp-config.d.ts +17 -0
  64. package/node_modules/@agenticreplay/adapters/dist/mcp-config.d.ts.map +1 -0
  65. package/node_modules/@agenticreplay/adapters/dist/mcp-config.js +62 -0
  66. package/node_modules/@agenticreplay/adapters/dist/mcp-config.js.map +1 -0
  67. package/node_modules/@agenticreplay/adapters/dist/mimo.d.ts +26 -0
  68. package/node_modules/@agenticreplay/adapters/dist/mimo.d.ts.map +1 -0
  69. package/node_modules/@agenticreplay/adapters/dist/mimo.js +40 -0
  70. package/node_modules/@agenticreplay/adapters/dist/mimo.js.map +1 -0
  71. package/node_modules/@agenticreplay/adapters/dist/node.d.ts +19 -0
  72. package/node_modules/@agenticreplay/adapters/dist/node.d.ts.map +1 -0
  73. package/node_modules/@agenticreplay/adapters/dist/node.js +59 -0
  74. package/node_modules/@agenticreplay/adapters/dist/node.js.map +1 -0
  75. package/node_modules/@agenticreplay/adapters/dist/openclaw.d.ts +19 -0
  76. package/node_modules/@agenticreplay/adapters/dist/openclaw.d.ts.map +1 -0
  77. package/node_modules/@agenticreplay/adapters/dist/openclaw.js +43 -0
  78. package/node_modules/@agenticreplay/adapters/dist/openclaw.js.map +1 -0
  79. package/node_modules/@agenticreplay/adapters/dist/opencode-api-bases.d.ts +2 -0
  80. package/node_modules/@agenticreplay/adapters/dist/opencode-api-bases.d.ts.map +1 -0
  81. package/node_modules/@agenticreplay/adapters/dist/opencode-api-bases.js +201 -0
  82. package/node_modules/@agenticreplay/adapters/dist/opencode-api-bases.js.map +1 -0
  83. package/node_modules/@agenticreplay/adapters/dist/opencode-capture.d.ts +26 -0
  84. package/node_modules/@agenticreplay/adapters/dist/opencode-capture.d.ts.map +1 -0
  85. package/node_modules/@agenticreplay/adapters/dist/opencode-capture.js +132 -0
  86. package/node_modules/@agenticreplay/adapters/dist/opencode-capture.js.map +1 -0
  87. package/node_modules/@agenticreplay/adapters/dist/opencode-catalog.d.ts +5 -0
  88. package/node_modules/@agenticreplay/adapters/dist/opencode-catalog.d.ts.map +1 -0
  89. package/node_modules/@agenticreplay/adapters/dist/opencode-catalog.js +43 -0
  90. package/node_modules/@agenticreplay/adapters/dist/opencode-catalog.js.map +1 -0
  91. package/node_modules/@agenticreplay/adapters/dist/opencode-config.d.ts +40 -0
  92. package/node_modules/@agenticreplay/adapters/dist/opencode-config.d.ts.map +1 -0
  93. package/node_modules/@agenticreplay/adapters/dist/opencode-config.js +185 -0
  94. package/node_modules/@agenticreplay/adapters/dist/opencode-config.js.map +1 -0
  95. package/node_modules/@agenticreplay/adapters/dist/opencode.d.ts +10 -0
  96. package/node_modules/@agenticreplay/adapters/dist/opencode.d.ts.map +1 -0
  97. package/node_modules/@agenticreplay/adapters/dist/opencode.js +243 -0
  98. package/node_modules/@agenticreplay/adapters/dist/opencode.js.map +1 -0
  99. package/node_modules/@agenticreplay/adapters/dist/qwen.d.ts +51 -0
  100. package/node_modules/@agenticreplay/adapters/dist/qwen.d.ts.map +1 -0
  101. package/node_modules/@agenticreplay/adapters/dist/qwen.js +105 -0
  102. package/node_modules/@agenticreplay/adapters/dist/qwen.js.map +1 -0
  103. package/node_modules/@agenticreplay/adapters/dist/registry.d.ts +19 -0
  104. package/node_modules/@agenticreplay/adapters/dist/registry.d.ts.map +1 -0
  105. package/node_modules/@agenticreplay/adapters/dist/registry.js +110 -0
  106. package/node_modules/@agenticreplay/adapters/dist/registry.js.map +1 -0
  107. package/node_modules/@agenticreplay/adapters/dist/scaffold.d.ts +26 -0
  108. package/node_modules/@agenticreplay/adapters/dist/scaffold.d.ts.map +1 -0
  109. package/node_modules/@agenticreplay/adapters/dist/scaffold.js +125 -0
  110. package/node_modules/@agenticreplay/adapters/dist/scaffold.js.map +1 -0
  111. package/node_modules/@agenticreplay/adapters/dist/session.d.ts +47 -0
  112. package/node_modules/@agenticreplay/adapters/dist/session.d.ts.map +1 -0
  113. package/node_modules/@agenticreplay/adapters/dist/session.js +112 -0
  114. package/node_modules/@agenticreplay/adapters/dist/session.js.map +1 -0
  115. package/node_modules/@agenticreplay/adapters/dist/zcode.d.ts +60 -0
  116. package/node_modules/@agenticreplay/adapters/dist/zcode.d.ts.map +1 -0
  117. package/node_modules/@agenticreplay/adapters/dist/zcode.js +424 -0
  118. package/node_modules/@agenticreplay/adapters/dist/zcode.js.map +1 -0
  119. package/node_modules/@agenticreplay/adapters/package.json +29 -0
  120. package/node_modules/@agenticreplay/core/dist/blobs.d.ts +21 -0
  121. package/node_modules/@agenticreplay/core/dist/blobs.d.ts.map +1 -0
  122. package/node_modules/@agenticreplay/core/dist/blobs.js +102 -0
  123. package/node_modules/@agenticreplay/core/dist/blobs.js.map +1 -0
  124. package/node_modules/@agenticreplay/core/dist/fetch.d.ts +38 -0
  125. package/node_modules/@agenticreplay/core/dist/fetch.d.ts.map +1 -0
  126. package/node_modules/@agenticreplay/core/dist/fetch.js +47 -0
  127. package/node_modules/@agenticreplay/core/dist/fetch.js.map +1 -0
  128. package/node_modules/@agenticreplay/core/dist/graph.d.ts +106 -0
  129. package/node_modules/@agenticreplay/core/dist/graph.d.ts.map +1 -0
  130. package/node_modules/@agenticreplay/core/dist/graph.js +394 -0
  131. package/node_modules/@agenticreplay/core/dist/graph.js.map +1 -0
  132. package/node_modules/@agenticreplay/core/dist/index.d.ts +9 -0
  133. package/node_modules/@agenticreplay/core/dist/index.d.ts.map +1 -0
  134. package/node_modules/@agenticreplay/core/dist/index.js +9 -0
  135. package/node_modules/@agenticreplay/core/dist/index.js.map +1 -0
  136. package/node_modules/@agenticreplay/core/dist/paths.d.ts +45 -0
  137. package/node_modules/@agenticreplay/core/dist/paths.d.ts.map +1 -0
  138. package/node_modules/@agenticreplay/core/dist/paths.js +149 -0
  139. package/node_modules/@agenticreplay/core/dist/paths.js.map +1 -0
  140. package/node_modules/@agenticreplay/core/dist/private-files.d.ts +37 -0
  141. package/node_modules/@agenticreplay/core/dist/private-files.d.ts.map +1 -0
  142. package/node_modules/@agenticreplay/core/dist/private-files.js +353 -0
  143. package/node_modules/@agenticreplay/core/dist/private-files.js.map +1 -0
  144. package/node_modules/@agenticreplay/core/dist/reader.d.ts +45 -0
  145. package/node_modules/@agenticreplay/core/dist/reader.d.ts.map +1 -0
  146. package/node_modules/@agenticreplay/core/dist/reader.js +152 -0
  147. package/node_modules/@agenticreplay/core/dist/reader.js.map +1 -0
  148. package/node_modules/@agenticreplay/core/dist/redaction.d.ts +69 -0
  149. package/node_modules/@agenticreplay/core/dist/redaction.d.ts.map +1 -0
  150. package/node_modules/@agenticreplay/core/dist/redaction.js +768 -0
  151. package/node_modules/@agenticreplay/core/dist/redaction.js.map +1 -0
  152. package/node_modules/@agenticreplay/core/dist/writer.d.ts +75 -0
  153. package/node_modules/@agenticreplay/core/dist/writer.d.ts.map +1 -0
  154. package/node_modules/@agenticreplay/core/dist/writer.js +368 -0
  155. package/node_modules/@agenticreplay/core/dist/writer.js.map +1 -0
  156. package/node_modules/@agenticreplay/core/package.json +26 -0
  157. package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts +84 -0
  158. package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts.map +1 -0
  159. package/node_modules/@agenticreplay/fs-capture/dist/capture.js +147 -0
  160. package/node_modules/@agenticreplay/fs-capture/dist/capture.js.map +1 -0
  161. package/node_modules/@agenticreplay/fs-capture/dist/git.d.ts +25 -0
  162. package/node_modules/@agenticreplay/fs-capture/dist/git.d.ts.map +1 -0
  163. package/node_modules/@agenticreplay/fs-capture/dist/git.js +108 -0
  164. package/node_modules/@agenticreplay/fs-capture/dist/git.js.map +1 -0
  165. package/node_modules/@agenticreplay/fs-capture/dist/index.d.ts +4 -0
  166. package/node_modules/@agenticreplay/fs-capture/dist/index.d.ts.map +1 -0
  167. package/node_modules/@agenticreplay/fs-capture/dist/index.js +4 -0
  168. package/node_modules/@agenticreplay/fs-capture/dist/index.js.map +1 -0
  169. package/node_modules/@agenticreplay/fs-capture/dist/shadow.d.ts +271 -0
  170. package/node_modules/@agenticreplay/fs-capture/dist/shadow.d.ts.map +1 -0
  171. package/node_modules/@agenticreplay/fs-capture/dist/shadow.js +668 -0
  172. package/node_modules/@agenticreplay/fs-capture/dist/shadow.js.map +1 -0
  173. package/node_modules/@agenticreplay/fs-capture/package.json +25 -0
  174. package/node_modules/@agenticreplay/mcp-shim/dist/cli.d.ts +100 -0
  175. package/node_modules/@agenticreplay/mcp-shim/dist/cli.d.ts.map +1 -0
  176. package/node_modules/@agenticreplay/mcp-shim/dist/cli.js +334 -0
  177. package/node_modules/@agenticreplay/mcp-shim/dist/cli.js.map +1 -0
  178. package/node_modules/@agenticreplay/mcp-shim/dist/framing.d.ts +41 -0
  179. package/node_modules/@agenticreplay/mcp-shim/dist/framing.d.ts.map +1 -0
  180. package/node_modules/@agenticreplay/mcp-shim/dist/framing.js +94 -0
  181. package/node_modules/@agenticreplay/mcp-shim/dist/framing.js.map +1 -0
  182. package/node_modules/@agenticreplay/mcp-shim/dist/index.d.ts +5 -0
  183. package/node_modules/@agenticreplay/mcp-shim/dist/index.d.ts.map +1 -0
  184. package/node_modules/@agenticreplay/mcp-shim/dist/index.js +5 -0
  185. package/node_modules/@agenticreplay/mcp-shim/dist/index.js.map +1 -0
  186. package/node_modules/@agenticreplay/mcp-shim/dist/mock.d.ts +70 -0
  187. package/node_modules/@agenticreplay/mcp-shim/dist/mock.d.ts.map +1 -0
  188. package/node_modules/@agenticreplay/mcp-shim/dist/mock.js +138 -0
  189. package/node_modules/@agenticreplay/mcp-shim/dist/mock.js.map +1 -0
  190. package/node_modules/@agenticreplay/mcp-shim/dist/shim.d.ts +24 -0
  191. package/node_modules/@agenticreplay/mcp-shim/dist/shim.d.ts.map +1 -0
  192. package/node_modules/@agenticreplay/mcp-shim/dist/shim.js +105 -0
  193. package/node_modules/@agenticreplay/mcp-shim/dist/shim.js.map +1 -0
  194. package/node_modules/@agenticreplay/mcp-shim/package.json +26 -0
  195. package/node_modules/@agenticreplay/node-instrument/dist/capture.d.ts +58 -0
  196. package/node_modules/@agenticreplay/node-instrument/dist/capture.d.ts.map +1 -0
  197. package/node_modules/@agenticreplay/node-instrument/dist/capture.js +404 -0
  198. package/node_modules/@agenticreplay/node-instrument/dist/capture.js.map +1 -0
  199. package/node_modules/@agenticreplay/node-instrument/dist/index.d.ts +4 -0
  200. package/node_modules/@agenticreplay/node-instrument/dist/index.d.ts.map +1 -0
  201. package/node_modules/@agenticreplay/node-instrument/dist/index.js +4 -0
  202. package/node_modules/@agenticreplay/node-instrument/dist/index.js.map +1 -0
  203. package/node_modules/@agenticreplay/node-instrument/dist/install.d.ts +47 -0
  204. package/node_modules/@agenticreplay/node-instrument/dist/install.d.ts.map +1 -0
  205. package/node_modules/@agenticreplay/node-instrument/dist/install.js +174 -0
  206. package/node_modules/@agenticreplay/node-instrument/dist/install.js.map +1 -0
  207. package/node_modules/@agenticreplay/node-instrument/dist/rewrite.d.ts +33 -0
  208. package/node_modules/@agenticreplay/node-instrument/dist/rewrite.d.ts.map +1 -0
  209. package/node_modules/@agenticreplay/node-instrument/dist/rewrite.js +61 -0
  210. package/node_modules/@agenticreplay/node-instrument/dist/rewrite.js.map +1 -0
  211. package/node_modules/@agenticreplay/node-instrument/package.json +23 -0
  212. package/node_modules/@agenticreplay/plugin-api/dist/canonical.d.ts +87 -0
  213. package/node_modules/@agenticreplay/plugin-api/dist/canonical.d.ts.map +1 -0
  214. package/node_modules/@agenticreplay/plugin-api/dist/canonical.js +10 -0
  215. package/node_modules/@agenticreplay/plugin-api/dist/canonical.js.map +1 -0
  216. package/node_modules/@agenticreplay/plugin-api/dist/index.d.ts +3 -0
  217. package/node_modules/@agenticreplay/plugin-api/dist/index.d.ts.map +1 -0
  218. package/node_modules/@agenticreplay/plugin-api/dist/index.js +3 -0
  219. package/node_modules/@agenticreplay/plugin-api/dist/index.js.map +1 -0
  220. package/node_modules/@agenticreplay/plugin-api/dist/plugins.d.ts +258 -0
  221. package/node_modules/@agenticreplay/plugin-api/dist/plugins.d.ts.map +1 -0
  222. package/node_modules/@agenticreplay/plugin-api/dist/plugins.js +2 -0
  223. package/node_modules/@agenticreplay/plugin-api/dist/plugins.js.map +1 -0
  224. package/node_modules/@agenticreplay/plugin-api/package.json +22 -0
  225. package/node_modules/@agenticreplay/providers/dist/index.d.ts +34 -0
  226. package/node_modules/@agenticreplay/providers/dist/index.d.ts.map +1 -0
  227. package/node_modules/@agenticreplay/providers/dist/index.js +34 -0
  228. package/node_modules/@agenticreplay/providers/dist/index.js.map +1 -0
  229. package/node_modules/@agenticreplay/providers/dist/pricing.d.ts +44 -0
  230. package/node_modules/@agenticreplay/providers/dist/pricing.d.ts.map +1 -0
  231. package/node_modules/@agenticreplay/providers/dist/pricing.js +126 -0
  232. package/node_modules/@agenticreplay/providers/dist/pricing.js.map +1 -0
  233. package/node_modules/@agenticreplay/providers/dist/translate/anthropic.d.ts +66 -0
  234. package/node_modules/@agenticreplay/providers/dist/translate/anthropic.d.ts.map +1 -0
  235. package/node_modules/@agenticreplay/providers/dist/translate/anthropic.js +569 -0
  236. package/node_modules/@agenticreplay/providers/dist/translate/anthropic.js.map +1 -0
  237. package/node_modules/@agenticreplay/providers/dist/translate/openai-responses.d.ts +51 -0
  238. package/node_modules/@agenticreplay/providers/dist/translate/openai-responses.d.ts.map +1 -0
  239. package/node_modules/@agenticreplay/providers/dist/translate/openai-responses.js +574 -0
  240. package/node_modules/@agenticreplay/providers/dist/translate/openai-responses.js.map +1 -0
  241. package/node_modules/@agenticreplay/providers/dist/translate/openai.d.ts +60 -0
  242. package/node_modules/@agenticreplay/providers/dist/translate/openai.d.ts.map +1 -0
  243. package/node_modules/@agenticreplay/providers/dist/translate/openai.js +577 -0
  244. package/node_modules/@agenticreplay/providers/dist/translate/openai.js.map +1 -0
  245. package/node_modules/@agenticreplay/providers/dist/translate/sse.d.ts +29 -0
  246. package/node_modules/@agenticreplay/providers/dist/translate/sse.d.ts.map +1 -0
  247. package/node_modules/@agenticreplay/providers/dist/translate/sse.js +97 -0
  248. package/node_modules/@agenticreplay/providers/dist/translate/sse.js.map +1 -0
  249. package/node_modules/@agenticreplay/providers/dist/translate/util.d.ts +34 -0
  250. package/node_modules/@agenticreplay/providers/dist/translate/util.d.ts.map +1 -0
  251. package/node_modules/@agenticreplay/providers/dist/translate/util.js +106 -0
  252. package/node_modules/@agenticreplay/providers/dist/translate/util.js.map +1 -0
  253. package/node_modules/@agenticreplay/providers/package.json +26 -0
  254. package/node_modules/@agenticreplay/proxy/dist/ca.d.ts +45 -0
  255. package/node_modules/@agenticreplay/proxy/dist/ca.d.ts.map +1 -0
  256. package/node_modules/@agenticreplay/proxy/dist/ca.js +264 -0
  257. package/node_modules/@agenticreplay/proxy/dist/ca.js.map +1 -0
  258. package/node_modules/@agenticreplay/proxy/dist/der.d.ts +51 -0
  259. package/node_modules/@agenticreplay/proxy/dist/der.d.ts.map +1 -0
  260. package/node_modules/@agenticreplay/proxy/dist/der.js +144 -0
  261. package/node_modules/@agenticreplay/proxy/dist/der.js.map +1 -0
  262. package/node_modules/@agenticreplay/proxy/dist/dialects.d.ts +81 -0
  263. package/node_modules/@agenticreplay/proxy/dist/dialects.d.ts.map +1 -0
  264. package/node_modules/@agenticreplay/proxy/dist/dialects.js +329 -0
  265. package/node_modules/@agenticreplay/proxy/dist/dialects.js.map +1 -0
  266. package/node_modules/@agenticreplay/proxy/dist/forward.d.ts +34 -0
  267. package/node_modules/@agenticreplay/proxy/dist/forward.d.ts.map +1 -0
  268. package/node_modules/@agenticreplay/proxy/dist/forward.js +44 -0
  269. package/node_modules/@agenticreplay/proxy/dist/forward.js.map +1 -0
  270. package/node_modules/@agenticreplay/proxy/dist/index.d.ts +9 -0
  271. package/node_modules/@agenticreplay/proxy/dist/index.d.ts.map +1 -0
  272. package/node_modules/@agenticreplay/proxy/dist/index.js +9 -0
  273. package/node_modules/@agenticreplay/proxy/dist/index.js.map +1 -0
  274. package/node_modules/@agenticreplay/proxy/dist/intercept.d.ts +234 -0
  275. package/node_modules/@agenticreplay/proxy/dist/intercept.d.ts.map +1 -0
  276. package/node_modules/@agenticreplay/proxy/dist/intercept.js +1258 -0
  277. package/node_modules/@agenticreplay/proxy/dist/intercept.js.map +1 -0
  278. package/node_modules/@agenticreplay/proxy/dist/matching.d.ts +109 -0
  279. package/node_modules/@agenticreplay/proxy/dist/matching.d.ts.map +1 -0
  280. package/node_modules/@agenticreplay/proxy/dist/matching.js +928 -0
  281. package/node_modules/@agenticreplay/proxy/dist/matching.js.map +1 -0
  282. package/node_modules/@agenticreplay/proxy/dist/retrieval.d.ts +93 -0
  283. package/node_modules/@agenticreplay/proxy/dist/retrieval.d.ts.map +1 -0
  284. package/node_modules/@agenticreplay/proxy/dist/retrieval.js +233 -0
  285. package/node_modules/@agenticreplay/proxy/dist/retrieval.js.map +1 -0
  286. package/node_modules/@agenticreplay/proxy/dist/server.d.ts +327 -0
  287. package/node_modules/@agenticreplay/proxy/dist/server.d.ts.map +1 -0
  288. package/node_modules/@agenticreplay/proxy/dist/server.js +2291 -0
  289. package/node_modules/@agenticreplay/proxy/dist/server.js.map +1 -0
  290. package/node_modules/@agenticreplay/proxy/dist/tls-hosts.d.ts +54 -0
  291. package/node_modules/@agenticreplay/proxy/dist/tls-hosts.d.ts.map +1 -0
  292. package/node_modules/@agenticreplay/proxy/dist/tls-hosts.js +178 -0
  293. package/node_modules/@agenticreplay/proxy/dist/tls-hosts.js.map +1 -0
  294. package/node_modules/@agenticreplay/proxy/package.json +28 -0
  295. package/node_modules/@agenticreplay/schema/dist/constants.d.ts +30 -0
  296. package/node_modules/@agenticreplay/schema/dist/constants.d.ts.map +1 -0
  297. package/node_modules/@agenticreplay/schema/dist/constants.js +66 -0
  298. package/node_modules/@agenticreplay/schema/dist/constants.js.map +1 -0
  299. package/node_modules/@agenticreplay/schema/dist/index.d.ts +4 -0
  300. package/node_modules/@agenticreplay/schema/dist/index.d.ts.map +1 -0
  301. package/node_modules/@agenticreplay/schema/dist/index.js +4 -0
  302. package/node_modules/@agenticreplay/schema/dist/index.js.map +1 -0
  303. package/node_modules/@agenticreplay/schema/dist/types.d.ts +97 -0
  304. package/node_modules/@agenticreplay/schema/dist/types.d.ts.map +1 -0
  305. package/node_modules/@agenticreplay/schema/dist/types.js +7 -0
  306. package/node_modules/@agenticreplay/schema/dist/types.js.map +1 -0
  307. package/node_modules/@agenticreplay/schema/dist/validate.d.ts +13 -0
  308. package/node_modules/@agenticreplay/schema/dist/validate.d.ts.map +1 -0
  309. package/node_modules/@agenticreplay/schema/dist/validate.js +44 -0
  310. package/node_modules/@agenticreplay/schema/dist/validate.js.map +1 -0
  311. package/node_modules/@agenticreplay/schema/package.json +28 -0
  312. package/node_modules/@agenticreplay/shell-shim/dist/index.d.ts +4 -0
  313. package/node_modules/@agenticreplay/shell-shim/dist/index.d.ts.map +1 -0
  314. package/node_modules/@agenticreplay/shell-shim/dist/index.js +4 -0
  315. package/node_modules/@agenticreplay/shell-shim/dist/index.js.map +1 -0
  316. package/node_modules/@agenticreplay/shell-shim/dist/install.d.ts +75 -0
  317. package/node_modules/@agenticreplay/shell-shim/dist/install.d.ts.map +1 -0
  318. package/node_modules/@agenticreplay/shell-shim/dist/install.js +353 -0
  319. package/node_modules/@agenticreplay/shell-shim/dist/install.js.map +1 -0
  320. package/node_modules/@agenticreplay/shell-shim/dist/resolve.d.ts +2 -0
  321. package/node_modules/@agenticreplay/shell-shim/dist/resolve.d.ts.map +1 -0
  322. package/node_modules/@agenticreplay/shell-shim/dist/resolve.js +97 -0
  323. package/node_modules/@agenticreplay/shell-shim/dist/resolve.js.map +1 -0
  324. package/node_modules/@agenticreplay/shell-shim/dist/runner-bin.d.ts +3 -0
  325. package/node_modules/@agenticreplay/shell-shim/dist/runner-bin.d.ts.map +1 -0
  326. package/node_modules/@agenticreplay/shell-shim/dist/runner-bin.js +4 -0
  327. package/node_modules/@agenticreplay/shell-shim/dist/runner-bin.js.map +1 -0
  328. package/node_modules/@agenticreplay/shell-shim/dist/runner.d.ts +45 -0
  329. package/node_modules/@agenticreplay/shell-shim/dist/runner.d.ts.map +1 -0
  330. package/node_modules/@agenticreplay/shell-shim/dist/runner.js +105 -0
  331. package/node_modules/@agenticreplay/shell-shim/dist/runner.js.map +1 -0
  332. package/node_modules/@agenticreplay/shell-shim/package.json +26 -0
  333. package/node_modules/@agenticreplay/viewer/dist/bundle.d.ts +11 -0
  334. package/node_modules/@agenticreplay/viewer/dist/bundle.d.ts.map +1 -0
  335. package/node_modules/@agenticreplay/viewer/dist/bundle.js +36 -0
  336. package/node_modules/@agenticreplay/viewer/dist/bundle.js.map +1 -0
  337. package/node_modules/@agenticreplay/viewer/dist/client/main.d.ts +12 -0
  338. package/node_modules/@agenticreplay/viewer/dist/client/main.d.ts.map +1 -0
  339. package/node_modules/@agenticreplay/viewer/dist/client/main.js +249 -0
  340. package/node_modules/@agenticreplay/viewer/dist/client/main.js.map +1 -0
  341. package/node_modules/@agenticreplay/viewer/dist/credit.d.ts +22 -0
  342. package/node_modules/@agenticreplay/viewer/dist/credit.d.ts.map +1 -0
  343. package/node_modules/@agenticreplay/viewer/dist/credit.js +22 -0
  344. package/node_modules/@agenticreplay/viewer/dist/credit.js.map +1 -0
  345. package/node_modules/@agenticreplay/viewer/dist/css.d.ts +11 -0
  346. package/node_modules/@agenticreplay/viewer/dist/css.d.ts.map +1 -0
  347. package/node_modules/@agenticreplay/viewer/dist/css.js +410 -0
  348. package/node_modules/@agenticreplay/viewer/dist/css.js.map +1 -0
  349. package/node_modules/@agenticreplay/viewer/dist/export.d.ts +21 -0
  350. package/node_modules/@agenticreplay/viewer/dist/export.d.ts.map +1 -0
  351. package/node_modules/@agenticreplay/viewer/dist/export.js +22 -0
  352. package/node_modules/@agenticreplay/viewer/dist/export.js.map +1 -0
  353. package/node_modules/@agenticreplay/viewer/dist/html.d.ts +32 -0
  354. package/node_modules/@agenticreplay/viewer/dist/html.d.ts.map +1 -0
  355. package/node_modules/@agenticreplay/viewer/dist/html.js +252 -0
  356. package/node_modules/@agenticreplay/viewer/dist/html.js.map +1 -0
  357. package/node_modules/@agenticreplay/viewer/dist/index.d.ts +16 -0
  358. package/node_modules/@agenticreplay/viewer/dist/index.d.ts.map +1 -0
  359. package/node_modules/@agenticreplay/viewer/dist/index.js +16 -0
  360. package/node_modules/@agenticreplay/viewer/dist/index.js.map +1 -0
  361. package/node_modules/@agenticreplay/viewer/dist/render.d.ts +126 -0
  362. package/node_modules/@agenticreplay/viewer/dist/render.d.ts.map +1 -0
  363. package/node_modules/@agenticreplay/viewer/dist/render.js +699 -0
  364. package/node_modules/@agenticreplay/viewer/dist/render.js.map +1 -0
  365. package/node_modules/@agenticreplay/viewer/dist/serve.d.ts +21 -0
  366. package/node_modules/@agenticreplay/viewer/dist/serve.d.ts.map +1 -0
  367. package/node_modules/@agenticreplay/viewer/dist/serve.js +122 -0
  368. package/node_modules/@agenticreplay/viewer/dist/serve.js.map +1 -0
  369. package/node_modules/@agenticreplay/viewer/dist/trace-dir.d.ts +28 -0
  370. package/node_modules/@agenticreplay/viewer/dist/trace-dir.d.ts.map +1 -0
  371. package/node_modules/@agenticreplay/viewer/dist/trace-dir.js +120 -0
  372. package/node_modules/@agenticreplay/viewer/dist/trace-dir.js.map +1 -0
  373. package/node_modules/@agenticreplay/viewer/package.json +25 -0
  374. package/node_modules/ajv/.runkit_example.js +23 -0
  375. package/node_modules/ajv/LICENSE +22 -0
  376. package/node_modules/ajv/README.md +207 -0
  377. package/node_modules/ajv/dist/2019.d.ts +19 -0
  378. package/node_modules/ajv/dist/2019.js +61 -0
  379. package/node_modules/ajv/dist/2019.js.map +1 -0
  380. package/node_modules/ajv/dist/2020.d.ts +19 -0
  381. package/node_modules/ajv/dist/2020.js +55 -0
  382. package/node_modules/ajv/dist/2020.js.map +1 -0
  383. package/node_modules/ajv/dist/ajv.d.ts +18 -0
  384. package/node_modules/ajv/dist/ajv.js +50 -0
  385. package/node_modules/ajv/dist/ajv.js.map +1 -0
  386. package/node_modules/ajv/dist/compile/codegen/code.d.ts +40 -0
  387. package/node_modules/ajv/dist/compile/codegen/code.js +156 -0
  388. package/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  389. package/node_modules/ajv/dist/compile/codegen/index.d.ts +79 -0
  390. package/node_modules/ajv/dist/compile/codegen/index.js +697 -0
  391. package/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  392. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +79 -0
  393. package/node_modules/ajv/dist/compile/codegen/scope.js +143 -0
  394. package/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  395. package/node_modules/ajv/dist/compile/errors.d.ts +13 -0
  396. package/node_modules/ajv/dist/compile/errors.js +123 -0
  397. package/node_modules/ajv/dist/compile/errors.js.map +1 -0
  398. package/node_modules/ajv/dist/compile/index.d.ts +80 -0
  399. package/node_modules/ajv/dist/compile/index.js +242 -0
  400. package/node_modules/ajv/dist/compile/index.js.map +1 -0
  401. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +4 -0
  402. package/node_modules/ajv/dist/compile/jtd/parse.js +350 -0
  403. package/node_modules/ajv/dist/compile/jtd/parse.js.map +1 -0
  404. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +4 -0
  405. package/node_modules/ajv/dist/compile/jtd/serialize.js +236 -0
  406. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +1 -0
  407. package/node_modules/ajv/dist/compile/jtd/types.d.ts +6 -0
  408. package/node_modules/ajv/dist/compile/jtd/types.js +14 -0
  409. package/node_modules/ajv/dist/compile/jtd/types.js.map +1 -0
  410. package/node_modules/ajv/dist/compile/names.d.ts +20 -0
  411. package/node_modules/ajv/dist/compile/names.js +28 -0
  412. package/node_modules/ajv/dist/compile/names.js.map +1 -0
  413. package/node_modules/ajv/dist/compile/ref_error.d.ts +6 -0
  414. package/node_modules/ajv/dist/compile/ref_error.js +12 -0
  415. package/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  416. package/node_modules/ajv/dist/compile/resolve.d.ts +12 -0
  417. package/node_modules/ajv/dist/compile/resolve.js +155 -0
  418. package/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  419. package/node_modules/ajv/dist/compile/rules.d.ts +28 -0
  420. package/node_modules/ajv/dist/compile/rules.js +26 -0
  421. package/node_modules/ajv/dist/compile/rules.js.map +1 -0
  422. package/node_modules/ajv/dist/compile/util.d.ts +40 -0
  423. package/node_modules/ajv/dist/compile/util.js +178 -0
  424. package/node_modules/ajv/dist/compile/util.js.map +1 -0
  425. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +6 -0
  426. package/node_modules/ajv/dist/compile/validate/applicability.js +19 -0
  427. package/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  428. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +4 -0
  429. package/node_modules/ajv/dist/compile/validate/boolSchema.js +50 -0
  430. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  431. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +17 -0
  432. package/node_modules/ajv/dist/compile/validate/dataType.js +203 -0
  433. package/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  434. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +2 -0
  435. package/node_modules/ajv/dist/compile/validate/defaults.js +35 -0
  436. package/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  437. package/node_modules/ajv/dist/compile/validate/index.d.ts +42 -0
  438. package/node_modules/ajv/dist/compile/validate/index.js +520 -0
  439. package/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  440. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +8 -0
  441. package/node_modules/ajv/dist/compile/validate/keyword.js +124 -0
  442. package/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  443. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +47 -0
  444. package/node_modules/ajv/dist/compile/validate/subschema.js +81 -0
  445. package/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  446. package/node_modules/ajv/dist/core.d.ts +174 -0
  447. package/node_modules/ajv/dist/core.js +618 -0
  448. package/node_modules/ajv/dist/core.js.map +1 -0
  449. package/node_modules/ajv/dist/jtd.d.ts +47 -0
  450. package/node_modules/ajv/dist/jtd.js +72 -0
  451. package/node_modules/ajv/dist/jtd.js.map +1 -0
  452. package/node_modules/ajv/dist/refs/data.json +13 -0
  453. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +2 -0
  454. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +28 -0
  455. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +1 -0
  456. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +53 -0
  457. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +17 -0
  458. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +57 -0
  459. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +14 -0
  460. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +37 -0
  461. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +90 -0
  462. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +39 -0
  463. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +2 -0
  464. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +30 -0
  465. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +1 -0
  466. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +48 -0
  467. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +17 -0
  468. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +51 -0
  469. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
  470. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +37 -0
  471. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
  472. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +90 -0
  473. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +55 -0
  474. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +137 -0
  475. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +151 -0
  476. package/node_modules/ajv/dist/refs/json-schema-secure.json +88 -0
  477. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +3 -0
  478. package/node_modules/ajv/dist/refs/jtd-schema.js +118 -0
  479. package/node_modules/ajv/dist/refs/jtd-schema.js.map +1 -0
  480. package/node_modules/ajv/dist/runtime/equal.d.ts +6 -0
  481. package/node_modules/ajv/dist/runtime/equal.js +7 -0
  482. package/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  483. package/node_modules/ajv/dist/runtime/parseJson.d.ts +18 -0
  484. package/node_modules/ajv/dist/runtime/parseJson.js +185 -0
  485. package/node_modules/ajv/dist/runtime/parseJson.js.map +1 -0
  486. package/node_modules/ajv/dist/runtime/quote.d.ts +5 -0
  487. package/node_modules/ajv/dist/runtime/quote.js +30 -0
  488. package/node_modules/ajv/dist/runtime/quote.js.map +1 -0
  489. package/node_modules/ajv/dist/runtime/re2.d.ts +6 -0
  490. package/node_modules/ajv/dist/runtime/re2.js +6 -0
  491. package/node_modules/ajv/dist/runtime/re2.js.map +1 -0
  492. package/node_modules/ajv/dist/runtime/timestamp.d.ts +5 -0
  493. package/node_modules/ajv/dist/runtime/timestamp.js +42 -0
  494. package/node_modules/ajv/dist/runtime/timestamp.js.map +1 -0
  495. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +5 -0
  496. package/node_modules/ajv/dist/runtime/ucs2length.js +24 -0
  497. package/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  498. package/node_modules/ajv/dist/runtime/uri.d.ts +6 -0
  499. package/node_modules/ajv/dist/runtime/uri.js +6 -0
  500. package/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  501. package/node_modules/ajv/dist/runtime/validation_error.d.ts +7 -0
  502. package/node_modules/ajv/dist/runtime/validation_error.js +11 -0
  503. package/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  504. package/node_modules/ajv/dist/standalone/index.d.ts +6 -0
  505. package/node_modules/ajv/dist/standalone/index.js +90 -0
  506. package/node_modules/ajv/dist/standalone/index.js.map +1 -0
  507. package/node_modules/ajv/dist/standalone/instance.d.ts +12 -0
  508. package/node_modules/ajv/dist/standalone/instance.js +35 -0
  509. package/node_modules/ajv/dist/standalone/instance.js.map +1 -0
  510. package/node_modules/ajv/dist/types/index.d.ts +183 -0
  511. package/node_modules/ajv/dist/types/index.js +3 -0
  512. package/node_modules/ajv/dist/types/index.js.map +1 -0
  513. package/node_modules/ajv/dist/types/json-schema.d.ts +125 -0
  514. package/node_modules/ajv/dist/types/json-schema.js +3 -0
  515. package/node_modules/ajv/dist/types/json-schema.js.map +1 -0
  516. package/node_modules/ajv/dist/types/jtd-schema.d.ts +174 -0
  517. package/node_modules/ajv/dist/types/jtd-schema.js +3 -0
  518. package/node_modules/ajv/dist/types/jtd-schema.js.map +1 -0
  519. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +8 -0
  520. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +49 -0
  521. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  522. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +6 -0
  523. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +106 -0
  524. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  525. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +3 -0
  526. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +23 -0
  527. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  528. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +4 -0
  529. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +12 -0
  530. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  531. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +7 -0
  532. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +95 -0
  533. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  534. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +21 -0
  535. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +85 -0
  536. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  537. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +3 -0
  538. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +11 -0
  539. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +1 -0
  540. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +6 -0
  541. package/node_modules/ajv/dist/vocabularies/applicator/if.js +66 -0
  542. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  543. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +13 -0
  544. package/node_modules/ajv/dist/vocabularies/applicator/index.js +44 -0
  545. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  546. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +5 -0
  547. package/node_modules/ajv/dist/vocabularies/applicator/items.js +52 -0
  548. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  549. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +6 -0
  550. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +30 -0
  551. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  552. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +4 -0
  553. package/node_modules/ajv/dist/vocabularies/applicator/not.js +26 -0
  554. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  555. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +6 -0
  556. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +60 -0
  557. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  558. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +3 -0
  559. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +75 -0
  560. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  561. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +3 -0
  562. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +12 -0
  563. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  564. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +3 -0
  565. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +54 -0
  566. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  567. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +6 -0
  568. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +38 -0
  569. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  570. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +3 -0
  571. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +13 -0
  572. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  573. package/node_modules/ajv/dist/vocabularies/code.d.ts +17 -0
  574. package/node_modules/ajv/dist/vocabularies/code.js +131 -0
  575. package/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  576. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +3 -0
  577. package/node_modules/ajv/dist/vocabularies/core/id.js +10 -0
  578. package/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  579. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +3 -0
  580. package/node_modules/ajv/dist/vocabularies/core/index.js +16 -0
  581. package/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  582. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +8 -0
  583. package/node_modules/ajv/dist/vocabularies/core/ref.js +122 -0
  584. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  585. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +5 -0
  586. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +104 -0
  587. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  588. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +10 -0
  589. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +9 -0
  590. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  591. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +3 -0
  592. package/node_modules/ajv/dist/vocabularies/draft2020.js +23 -0
  593. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +1 -0
  594. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +3 -0
  595. package/node_modules/ajv/dist/vocabularies/draft7.js +17 -0
  596. package/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  597. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +5 -0
  598. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +30 -0
  599. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +1 -0
  600. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +5 -0
  601. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +51 -0
  602. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +1 -0
  603. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +3 -0
  604. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +9 -0
  605. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +1 -0
  606. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +3 -0
  607. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +16 -0
  608. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +1 -0
  609. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +3 -0
  610. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +10 -0
  611. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +1 -0
  612. package/node_modules/ajv/dist/vocabularies/errors.d.ts +9 -0
  613. package/node_modules/ajv/dist/vocabularies/errors.js +3 -0
  614. package/node_modules/ajv/dist/vocabularies/errors.js.map +1 -0
  615. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +8 -0
  616. package/node_modules/ajv/dist/vocabularies/format/format.js +92 -0
  617. package/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  618. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +3 -0
  619. package/node_modules/ajv/dist/vocabularies/format/index.js +6 -0
  620. package/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  621. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +6 -0
  622. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +71 -0
  623. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +1 -0
  624. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +5 -0
  625. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +24 -0
  626. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +1 -0
  627. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +6 -0
  628. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +43 -0
  629. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +1 -0
  630. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +9 -0
  631. package/node_modules/ajv/dist/vocabularies/jtd/error.js +20 -0
  632. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +1 -0
  633. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +10 -0
  634. package/node_modules/ajv/dist/vocabularies/jtd/index.js +29 -0
  635. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +1 -0
  636. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +5 -0
  637. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +25 -0
  638. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +1 -0
  639. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +4 -0
  640. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +22 -0
  641. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +1 -0
  642. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +3 -0
  643. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +15 -0
  644. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +1 -0
  645. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +22 -0
  646. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +149 -0
  647. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +1 -0
  648. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +4 -0
  649. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +67 -0
  650. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +1 -0
  651. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +10 -0
  652. package/node_modules/ajv/dist/vocabularies/jtd/type.js +69 -0
  653. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +1 -0
  654. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +3 -0
  655. package/node_modules/ajv/dist/vocabularies/jtd/union.js +12 -0
  656. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +1 -0
  657. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +5 -0
  658. package/node_modules/ajv/dist/vocabularies/jtd/values.js +51 -0
  659. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +1 -0
  660. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +3 -0
  661. package/node_modules/ajv/dist/vocabularies/metadata.js +18 -0
  662. package/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  663. package/node_modules/ajv/dist/vocabularies/next.d.ts +3 -0
  664. package/node_modules/ajv/dist/vocabularies/next.js +8 -0
  665. package/node_modules/ajv/dist/vocabularies/next.js.map +1 -0
  666. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +3 -0
  667. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +7 -0
  668. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +1 -0
  669. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +6 -0
  670. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +40 -0
  671. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +1 -0
  672. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +6 -0
  673. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +65 -0
  674. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +1 -0
  675. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +6 -0
  676. package/node_modules/ajv/dist/vocabularies/validation/const.js +25 -0
  677. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  678. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +5 -0
  679. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +12 -0
  680. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +1 -0
  681. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +8 -0
  682. package/node_modules/ajv/dist/vocabularies/validation/enum.js +48 -0
  683. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  684. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +16 -0
  685. package/node_modules/ajv/dist/vocabularies/validation/index.js +33 -0
  686. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  687. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +3 -0
  688. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +15 -0
  689. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +1 -0
  690. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +3 -0
  691. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +24 -0
  692. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  693. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +3 -0
  694. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +27 -0
  695. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  696. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +11 -0
  697. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +27 -0
  698. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  699. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +3 -0
  700. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +24 -0
  701. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  702. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +8 -0
  703. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +26 -0
  704. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  705. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +8 -0
  706. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +33 -0
  707. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  708. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +8 -0
  709. package/node_modules/ajv/dist/vocabularies/validation/required.js +79 -0
  710. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  711. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +9 -0
  712. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +64 -0
  713. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  714. package/node_modules/ajv/lib/2019.ts +81 -0
  715. package/node_modules/ajv/lib/2020.ts +75 -0
  716. package/node_modules/ajv/lib/ajv.ts +70 -0
  717. package/node_modules/ajv/lib/compile/codegen/code.ts +169 -0
  718. package/node_modules/ajv/lib/compile/codegen/index.ts +852 -0
  719. package/node_modules/ajv/lib/compile/codegen/scope.ts +215 -0
  720. package/node_modules/ajv/lib/compile/errors.ts +184 -0
  721. package/node_modules/ajv/lib/compile/index.ts +324 -0
  722. package/node_modules/ajv/lib/compile/jtd/parse.ts +411 -0
  723. package/node_modules/ajv/lib/compile/jtd/serialize.ts +277 -0
  724. package/node_modules/ajv/lib/compile/jtd/types.ts +16 -0
  725. package/node_modules/ajv/lib/compile/names.ts +27 -0
  726. package/node_modules/ajv/lib/compile/ref_error.ts +13 -0
  727. package/node_modules/ajv/lib/compile/resolve.ts +149 -0
  728. package/node_modules/ajv/lib/compile/rules.ts +50 -0
  729. package/node_modules/ajv/lib/compile/util.ts +213 -0
  730. package/node_modules/ajv/lib/compile/validate/applicability.ts +22 -0
  731. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +47 -0
  732. package/node_modules/ajv/lib/compile/validate/dataType.ts +230 -0
  733. package/node_modules/ajv/lib/compile/validate/defaults.ts +32 -0
  734. package/node_modules/ajv/lib/compile/validate/index.ts +582 -0
  735. package/node_modules/ajv/lib/compile/validate/keyword.ts +171 -0
  736. package/node_modules/ajv/lib/compile/validate/subschema.ts +135 -0
  737. package/node_modules/ajv/lib/core.ts +892 -0
  738. package/node_modules/ajv/lib/jtd.ts +132 -0
  739. package/node_modules/ajv/lib/refs/data.json +13 -0
  740. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +28 -0
  741. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +53 -0
  742. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +17 -0
  743. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +57 -0
  744. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +14 -0
  745. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +37 -0
  746. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +90 -0
  747. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +39 -0
  748. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +30 -0
  749. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +48 -0
  750. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +17 -0
  751. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +51 -0
  752. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
  753. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +37 -0
  754. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
  755. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +90 -0
  756. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +55 -0
  757. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +137 -0
  758. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +151 -0
  759. package/node_modules/ajv/lib/refs/json-schema-secure.json +88 -0
  760. package/node_modules/ajv/lib/refs/jtd-schema.ts +130 -0
  761. package/node_modules/ajv/lib/runtime/equal.ts +7 -0
  762. package/node_modules/ajv/lib/runtime/parseJson.ts +177 -0
  763. package/node_modules/ajv/lib/runtime/quote.ts +31 -0
  764. package/node_modules/ajv/lib/runtime/re2.ts +6 -0
  765. package/node_modules/ajv/lib/runtime/timestamp.ts +46 -0
  766. package/node_modules/ajv/lib/runtime/ucs2length.ts +20 -0
  767. package/node_modules/ajv/lib/runtime/uri.ts +6 -0
  768. package/node_modules/ajv/lib/runtime/validation_error.ts +13 -0
  769. package/node_modules/ajv/lib/standalone/index.ts +100 -0
  770. package/node_modules/ajv/lib/standalone/instance.ts +36 -0
  771. package/node_modules/ajv/lib/types/index.ts +244 -0
  772. package/node_modules/ajv/lib/types/json-schema.ts +187 -0
  773. package/node_modules/ajv/lib/types/jtd-schema.ts +273 -0
  774. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +56 -0
  775. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +118 -0
  776. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +22 -0
  777. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +14 -0
  778. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +109 -0
  779. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +112 -0
  780. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +11 -0
  781. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +80 -0
  782. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +53 -0
  783. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +59 -0
  784. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +36 -0
  785. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +38 -0
  786. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +82 -0
  787. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +91 -0
  788. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +12 -0
  789. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +57 -0
  790. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +50 -0
  791. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +13 -0
  792. package/node_modules/ajv/lib/vocabularies/code.ts +168 -0
  793. package/node_modules/ajv/lib/vocabularies/core/id.ts +10 -0
  794. package/node_modules/ajv/lib/vocabularies/core/index.ts +16 -0
  795. package/node_modules/ajv/lib/vocabularies/core/ref.ts +129 -0
  796. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +113 -0
  797. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +12 -0
  798. package/node_modules/ajv/lib/vocabularies/draft2020.ts +23 -0
  799. package/node_modules/ajv/lib/vocabularies/draft7.ts +17 -0
  800. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +31 -0
  801. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +51 -0
  802. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +9 -0
  803. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +14 -0
  804. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +10 -0
  805. package/node_modules/ajv/lib/vocabularies/errors.ts +18 -0
  806. package/node_modules/ajv/lib/vocabularies/format/format.ts +120 -0
  807. package/node_modules/ajv/lib/vocabularies/format/index.ts +6 -0
  808. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +89 -0
  809. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +32 -0
  810. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +45 -0
  811. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +23 -0
  812. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +37 -0
  813. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +24 -0
  814. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +21 -0
  815. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +15 -0
  816. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +184 -0
  817. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +76 -0
  818. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +75 -0
  819. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +12 -0
  820. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +58 -0
  821. package/node_modules/ajv/lib/vocabularies/metadata.ts +17 -0
  822. package/node_modules/ajv/lib/vocabularies/next.ts +8 -0
  823. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +7 -0
  824. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +47 -0
  825. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +85 -0
  826. package/node_modules/ajv/lib/vocabularies/validation/const.ts +28 -0
  827. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +23 -0
  828. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +54 -0
  829. package/node_modules/ajv/lib/vocabularies/validation/index.ts +49 -0
  830. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +16 -0
  831. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +26 -0
  832. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +30 -0
  833. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +42 -0
  834. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +26 -0
  835. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +34 -0
  836. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +39 -0
  837. package/node_modules/ajv/lib/vocabularies/validation/required.ts +98 -0
  838. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +79 -0
  839. package/node_modules/ajv/package.json +126 -0
  840. package/node_modules/ajv-formats/LICENSE +21 -0
  841. package/node_modules/ajv-formats/README.md +125 -0
  842. package/node_modules/ajv-formats/dist/formats.d.ts +9 -0
  843. package/node_modules/ajv-formats/dist/formats.js +208 -0
  844. package/node_modules/ajv-formats/dist/formats.js.map +1 -0
  845. package/node_modules/ajv-formats/dist/index.d.ts +15 -0
  846. package/node_modules/ajv-formats/dist/index.js +37 -0
  847. package/node_modules/ajv-formats/dist/index.js.map +1 -0
  848. package/node_modules/ajv-formats/dist/limit.d.ts +10 -0
  849. package/node_modules/ajv-formats/dist/limit.js +69 -0
  850. package/node_modules/ajv-formats/dist/limit.js.map +1 -0
  851. package/node_modules/ajv-formats/package.json +74 -0
  852. package/node_modules/ajv-formats/src/formats.ts +269 -0
  853. package/node_modules/ajv-formats/src/index.ts +62 -0
  854. package/node_modules/ajv-formats/src/limit.ts +99 -0
  855. package/node_modules/fast-deep-equal/LICENSE +21 -0
  856. package/node_modules/fast-deep-equal/README.md +96 -0
  857. package/node_modules/fast-deep-equal/es6/index.d.ts +2 -0
  858. package/node_modules/fast-deep-equal/es6/index.js +72 -0
  859. package/node_modules/fast-deep-equal/es6/react.d.ts +2 -0
  860. package/node_modules/fast-deep-equal/es6/react.js +79 -0
  861. package/node_modules/fast-deep-equal/index.d.ts +4 -0
  862. package/node_modules/fast-deep-equal/index.js +46 -0
  863. package/node_modules/fast-deep-equal/package.json +61 -0
  864. package/node_modules/fast-deep-equal/react.d.ts +2 -0
  865. package/node_modules/fast-deep-equal/react.js +53 -0
  866. package/node_modules/fast-uri/.gitattributes +2 -0
  867. package/node_modules/fast-uri/.github/dependabot.yml +13 -0
  868. package/node_modules/fast-uri/.github/workflows/ci.yml +106 -0
  869. package/node_modules/fast-uri/.github/workflows/lock-threads.yml +19 -0
  870. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +24 -0
  871. package/node_modules/fast-uri/LICENSE +30 -0
  872. package/node_modules/fast-uri/README.md +152 -0
  873. package/node_modules/fast-uri/benchmark/benchmark.mjs +159 -0
  874. package/node_modules/fast-uri/benchmark/equal.mjs +51 -0
  875. package/node_modules/fast-uri/benchmark/non-simple-domain.mjs +22 -0
  876. package/node_modules/fast-uri/benchmark/package.json +17 -0
  877. package/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +24 -0
  878. package/node_modules/fast-uri/benchmark/ws-is-secure.mjs +65 -0
  879. package/node_modules/fast-uri/eslint.config.js +6 -0
  880. package/node_modules/fast-uri/index.js +631 -0
  881. package/node_modules/fast-uri/lib/schemes.js +272 -0
  882. package/node_modules/fast-uri/lib/utils.js +747 -0
  883. package/node_modules/fast-uri/package.json +68 -0
  884. package/node_modules/fast-uri/test/ajv.test.js +43 -0
  885. package/node_modules/fast-uri/test/component-safe-serialization.test.js +163 -0
  886. package/node_modules/fast-uri/test/equal.test.js +145 -0
  887. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +503 -0
  888. package/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +120 -0
  889. package/node_modules/fast-uri/test/ipv6-canonical.test.js +34 -0
  890. package/node_modules/fast-uri/test/ipv6-validation.test.js +124 -0
  891. package/node_modules/fast-uri/test/malformed-percent.test.js +77 -0
  892. package/node_modules/fast-uri/test/malformed-urn.test.js +61 -0
  893. package/node_modules/fast-uri/test/parse.test.js +327 -0
  894. package/node_modules/fast-uri/test/query-fragment-normalization.test.js +33 -0
  895. package/node_modules/fast-uri/test/reserved-path-normalization.test.js +109 -0
  896. package/node_modules/fast-uri/test/resolve.test.js +87 -0
  897. package/node_modules/fast-uri/test/rfc-3986.test.js +90 -0
  898. package/node_modules/fast-uri/test/scheme-validation.test.js +124 -0
  899. package/node_modules/fast-uri/test/security-normalization.test.js +178 -0
  900. package/node_modules/fast-uri/test/security.test.js +431 -0
  901. package/node_modules/fast-uri/test/serialize.test.js +151 -0
  902. package/node_modules/fast-uri/test/uri-js-compatibility.test.js +33 -0
  903. package/node_modules/fast-uri/test/uri-js.test.js +912 -0
  904. package/node_modules/fast-uri/test/urn-full-input.test.js +29 -0
  905. package/node_modules/fast-uri/test/util.test.js +38 -0
  906. package/node_modules/fast-uri/test/websocket-query-preservation.test.js +24 -0
  907. package/node_modules/fast-uri/tsconfig.json +9 -0
  908. package/node_modules/fast-uri/types/index.d.ts +60 -0
  909. package/node_modules/fast-uri/types/index.test-d.ts +17 -0
  910. package/node_modules/json-schema-traverse/.eslintrc.yml +27 -0
  911. package/node_modules/json-schema-traverse/.github/FUNDING.yml +2 -0
  912. package/node_modules/json-schema-traverse/.github/workflows/build.yml +28 -0
  913. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +27 -0
  914. package/node_modules/json-schema-traverse/LICENSE +21 -0
  915. package/node_modules/json-schema-traverse/README.md +95 -0
  916. package/node_modules/json-schema-traverse/index.d.ts +40 -0
  917. package/node_modules/json-schema-traverse/index.js +93 -0
  918. package/node_modules/json-schema-traverse/package.json +43 -0
  919. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +6 -0
  920. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +125 -0
  921. package/node_modules/json-schema-traverse/spec/index.spec.js +171 -0
  922. package/node_modules/require-from-string/index.js +34 -0
  923. package/node_modules/require-from-string/license +21 -0
  924. package/node_modules/require-from-string/package.json +28 -0
  925. package/node_modules/require-from-string/readme.md +56 -0
  926. package/package.json +49 -2
  927. package/packages/cli/dist/agent-spans.d.ts +238 -0
  928. package/packages/cli/dist/agent-spans.d.ts.map +1 -0
  929. package/packages/cli/dist/agent-spans.js +677 -0
  930. package/packages/cli/dist/agent-spans.js.map +1 -0
  931. package/packages/cli/dist/api.d.ts +127 -0
  932. package/packages/cli/dist/api.d.ts.map +1 -0
  933. package/packages/cli/dist/api.js +159 -0
  934. package/packages/cli/dist/api.js.map +1 -0
  935. package/packages/cli/dist/archive.d.ts +24 -0
  936. package/packages/cli/dist/archive.d.ts.map +1 -0
  937. package/packages/cli/dist/archive.js +230 -0
  938. package/packages/cli/dist/archive.js.map +1 -0
  939. package/packages/cli/dist/args.d.ts +57 -0
  940. package/packages/cli/dist/args.d.ts.map +1 -0
  941. package/packages/cli/dist/args.js +180 -0
  942. package/packages/cli/dist/args.js.map +1 -0
  943. package/packages/cli/dist/attach.d.ts +48 -0
  944. package/packages/cli/dist/attach.d.ts.map +1 -0
  945. package/packages/cli/dist/attach.js +153 -0
  946. package/packages/cli/dist/attach.js.map +1 -0
  947. package/packages/cli/dist/capture-limits.d.ts +7 -0
  948. package/packages/cli/dist/capture-limits.d.ts.map +1 -0
  949. package/packages/cli/dist/capture-limits.js +13 -0
  950. package/packages/cli/dist/capture-limits.js.map +1 -0
  951. package/packages/cli/dist/cli.d.ts +3 -0
  952. package/packages/cli/dist/cli.d.ts.map +1 -0
  953. package/packages/cli/dist/cli.js +4 -0
  954. package/packages/cli/dist/cli.js.map +1 -0
  955. package/packages/cli/dist/commands/attach.d.ts +49 -0
  956. package/packages/cli/dist/commands/attach.d.ts.map +1 -0
  957. package/packages/cli/dist/commands/attach.js +350 -0
  958. package/packages/cli/dist/commands/attach.js.map +1 -0
  959. package/packages/cli/dist/commands/compare.d.ts +27 -0
  960. package/packages/cli/dist/commands/compare.d.ts.map +1 -0
  961. package/packages/cli/dist/commands/compare.js +187 -0
  962. package/packages/cli/dist/commands/compare.js.map +1 -0
  963. package/packages/cli/dist/commands/doctor.d.ts +24 -0
  964. package/packages/cli/dist/commands/doctor.d.ts.map +1 -0
  965. package/packages/cli/dist/commands/doctor.js +402 -0
  966. package/packages/cli/dist/commands/doctor.js.map +1 -0
  967. package/packages/cli/dist/commands/gc.d.ts +24 -0
  968. package/packages/cli/dist/commands/gc.d.ts.map +1 -0
  969. package/packages/cli/dist/commands/gc.js +326 -0
  970. package/packages/cli/dist/commands/gc.js.map +1 -0
  971. package/packages/cli/dist/commands/inspect.d.ts +45 -0
  972. package/packages/cli/dist/commands/inspect.d.ts.map +1 -0
  973. package/packages/cli/dist/commands/inspect.js +375 -0
  974. package/packages/cli/dist/commands/inspect.js.map +1 -0
  975. package/packages/cli/dist/commands/quickstart.d.ts +48 -0
  976. package/packages/cli/dist/commands/quickstart.d.ts.map +1 -0
  977. package/packages/cli/dist/commands/quickstart.js +413 -0
  978. package/packages/cli/dist/commands/quickstart.js.map +1 -0
  979. package/packages/cli/dist/commands/record.d.ts +31 -0
  980. package/packages/cli/dist/commands/record.d.ts.map +1 -0
  981. package/packages/cli/dist/commands/record.js +958 -0
  982. package/packages/cli/dist/commands/record.js.map +1 -0
  983. package/packages/cli/dist/commands/replay.d.ts +184 -0
  984. package/packages/cli/dist/commands/replay.d.ts.map +1 -0
  985. package/packages/cli/dist/commands/replay.js +2014 -0
  986. package/packages/cli/dist/commands/replay.js.map +1 -0
  987. package/packages/cli/dist/commands/scrub.d.ts +34 -0
  988. package/packages/cli/dist/commands/scrub.d.ts.map +1 -0
  989. package/packages/cli/dist/commands/scrub.js +765 -0
  990. package/packages/cli/dist/commands/scrub.js.map +1 -0
  991. package/packages/cli/dist/commands/setup.d.ts +23 -0
  992. package/packages/cli/dist/commands/setup.d.ts.map +1 -0
  993. package/packages/cli/dist/commands/setup.js +239 -0
  994. package/packages/cli/dist/commands/setup.js.map +1 -0
  995. package/packages/cli/dist/commands/sync.d.ts +236 -0
  996. package/packages/cli/dist/commands/sync.d.ts.map +1 -0
  997. package/packages/cli/dist/commands/sync.js +1270 -0
  998. package/packages/cli/dist/commands/sync.js.map +1 -0
  999. package/packages/cli/dist/config.d.ts +69 -0
  1000. package/packages/cli/dist/config.d.ts.map +1 -0
  1001. package/packages/cli/dist/config.js +144 -0
  1002. package/packages/cli/dist/config.js.map +1 -0
  1003. package/packages/cli/dist/exchange-events.d.ts +80 -0
  1004. package/packages/cli/dist/exchange-events.d.ts.map +1 -0
  1005. package/packages/cli/dist/exchange-events.js +296 -0
  1006. package/packages/cli/dist/exchange-events.js.map +1 -0
  1007. package/packages/cli/dist/flags.d.ts +41 -0
  1008. package/packages/cli/dist/flags.d.ts.map +1 -0
  1009. package/packages/cli/dist/flags.js +292 -0
  1010. package/packages/cli/dist/flags.js.map +1 -0
  1011. package/packages/cli/dist/fs-events.d.ts +19 -0
  1012. package/packages/cli/dist/fs-events.d.ts.map +1 -0
  1013. package/packages/cli/dist/fs-events.js +89 -0
  1014. package/packages/cli/dist/fs-events.js.map +1 -0
  1015. package/packages/cli/dist/index.d.ts +18 -0
  1016. package/packages/cli/dist/index.d.ts.map +1 -0
  1017. package/packages/cli/dist/index.js +18 -0
  1018. package/packages/cli/dist/index.js.map +1 -0
  1019. package/packages/cli/dist/main.d.ts +2 -0
  1020. package/packages/cli/dist/main.d.ts.map +1 -0
  1021. package/packages/cli/dist/main.js +404 -0
  1022. package/packages/cli/dist/main.js.map +1 -0
  1023. package/packages/cli/dist/mcp-server.d.ts +44 -0
  1024. package/packages/cli/dist/mcp-server.d.ts.map +1 -0
  1025. package/packages/cli/dist/mcp-server.js +250 -0
  1026. package/packages/cli/dist/mcp-server.js.map +1 -0
  1027. package/packages/cli/dist/mcp.d.ts +126 -0
  1028. package/packages/cli/dist/mcp.d.ts.map +1 -0
  1029. package/packages/cli/dist/mcp.js +290 -0
  1030. package/packages/cli/dist/mcp.js.map +1 -0
  1031. package/packages/cli/dist/out.d.ts +107 -0
  1032. package/packages/cli/dist/out.d.ts.map +1 -0
  1033. package/packages/cli/dist/out.js +280 -0
  1034. package/packages/cli/dist/out.js.map +1 -0
  1035. package/packages/cli/dist/rasterize.d.ts +62 -0
  1036. package/packages/cli/dist/rasterize.d.ts.map +1 -0
  1037. package/packages/cli/dist/rasterize.js +154 -0
  1038. package/packages/cli/dist/rasterize.js.map +1 -0
  1039. package/packages/cli/dist/serial.d.ts +19 -0
  1040. package/packages/cli/dist/serial.d.ts.map +1 -0
  1041. package/packages/cli/dist/serial.js +34 -0
  1042. package/packages/cli/dist/serial.js.map +1 -0
  1043. package/packages/cli/dist/share-card.d.ts +73 -0
  1044. package/packages/cli/dist/share-card.d.ts.map +1 -0
  1045. package/packages/cli/dist/share-card.js +413 -0
  1046. package/packages/cli/dist/share-card.js.map +1 -0
  1047. package/packages/cli/dist/snapshot.d.ts +39 -0
  1048. package/packages/cli/dist/snapshot.d.ts.map +1 -0
  1049. package/packages/cli/dist/snapshot.js +43 -0
  1050. package/packages/cli/dist/snapshot.js.map +1 -0
  1051. package/packages/cli/dist/tls-capture.d.ts +135 -0
  1052. package/packages/cli/dist/tls-capture.d.ts.map +1 -0
  1053. package/packages/cli/dist/tls-capture.js +586 -0
  1054. package/packages/cli/dist/tls-capture.js.map +1 -0
  1055. package/packages/cli/dist/upstream.d.ts +29 -0
  1056. package/packages/cli/dist/upstream.d.ts.map +1 -0
  1057. package/packages/cli/dist/upstream.js +41 -0
  1058. package/packages/cli/dist/upstream.js.map +1 -0
  1059. package/packages/cli/dist/version.d.ts +2 -0
  1060. package/packages/cli/dist/version.d.ts.map +1 -0
  1061. package/packages/cli/dist/version.js +18 -0
  1062. package/packages/cli/dist/version.js.map +1 -0
  1063. package/packages/cli/package.json +11 -11
  1064. package/.dockerignore +0 -11
  1065. package/.gitattributes +0 -19
  1066. package/.github/workflows/ci.yml +0 -146
  1067. package/.grok-plugin/plugin.json +0 -12
  1068. package/.mcp.json +0 -8
  1069. package/.prettierignore +0 -4
  1070. package/.prettierrc.json +0 -1
  1071. package/CONTRIBUTING.md +0 -106
  1072. package/Dockerfile +0 -30
  1073. package/MAINTAINERS.md +0 -24
  1074. package/RELEASING.md +0 -183
  1075. package/SECURITY.md +0 -149
  1076. package/capture/CAPTURE-RUNBOOK.md +0 -271
  1077. package/capture/CURSOR-HTTP2.md +0 -226
  1078. package/capture/README.md +0 -349
  1079. package/capture/capture-run.gif +0 -0
  1080. package/capture/capture.mjs +0 -1883
  1081. package/capture/fable-capture.gif +0 -0
  1082. package/capture/fable-capture.mp4 +0 -0
  1083. package/capture/muse-shim.mjs +0 -114
  1084. package/capture/render-run.mjs +0 -125
  1085. package/capture/render.mjs +0 -228
  1086. package/companion-kiokuko-dsh.patch +0 -7806
  1087. package/docs/agenticreplay-acceptance.md +0 -135
  1088. package/docs/architecture.md +0 -160
  1089. package/docs/chain-card.png +0 -0
  1090. package/docs/compare-card.png +0 -0
  1091. package/docs/demo-cli.gif +0 -0
  1092. package/docs/demo-viewer.gif +0 -0
  1093. package/docs/fidelity.md +0 -16
  1094. package/docs/good-first-issues.md +0 -78
  1095. package/docs/graph-card.png +0 -0
  1096. package/docs/how-to/compare-models-on-the-same-failure.md +0 -58
  1097. package/docs/how-to/debug-a-failing-agent-run.md +0 -127
  1098. package/docs/how-to/why-did-my-agent-delete-my-file.md +0 -92
  1099. package/docs/i18n/README.ar.md +0 -597
  1100. package/docs/i18n/README.de.md +0 -648
  1101. package/docs/i18n/README.es.md +0 -642
  1102. package/docs/i18n/README.fr.md +0 -649
  1103. package/docs/i18n/README.ja.md +0 -608
  1104. package/docs/i18n/README.ko.md +0 -598
  1105. package/docs/i18n/README.zh-CN.md +0 -574
  1106. package/docs/integrations.md +0 -628
  1107. package/docs/launch-path.md +0 -215
  1108. package/docs/media/README.md +0 -101
  1109. package/docs/media/sync-transcript.txt +0 -18
  1110. package/docs/media/transcript.txt +0 -29
  1111. package/docs/opencode-capture.md +0 -137
  1112. package/docs/plugins.md +0 -250
  1113. package/docs/proposals/action-graph-and-reasoning.md +0 -354
  1114. package/docs/sync-card.png +0 -0
  1115. package/docs/validation.md +0 -52
  1116. package/docs/viewer-timeline.png +0 -0
  1117. package/examples/traces/README.md +0 -50
  1118. package/examples/traces/run_9f2c14a03b71/blobs/1b/1b694f32b8c582ace6b35ad64050e532fb3ee3ecc1a2763a82cf42ad0f2a3dd0 +0 -10
  1119. package/examples/traces/run_9f2c14a03b71/blobs/51/517b5b8ec6c3b13121dbaec61784e2a024247c7c4efd9ba068b582ee57bd2764 +0 -4
  1120. package/examples/traces/run_9f2c14a03b71/blobs/5b/5bba1bd069013d86363f69c00c1ae77c84c4e113aeeb7431c8141af4fed76860 +0 -7
  1121. package/examples/traces/run_9f2c14a03b71/blobs/84/84247e7b385fd5f99a6728a509838e52ef963af92f44ef6eccbed6910de1438d +0 -10
  1122. package/examples/traces/run_9f2c14a03b71/blobs/ac/ac9b4be9bdf7fe63c7b5135e2d14c4c0745a48771e733804869790590455f8e8 +0 -7
  1123. package/examples/traces/run_9f2c14a03b71/events.jsonl +0 -31
  1124. package/examples/traces/run_9f2c14a03b71/manifest.json +0 -46
  1125. package/examples/traces/run_9f2c14a03b71/redactions.json +0 -17
  1126. package/llms.txt +0 -26
  1127. package/packages/adapters/fixtures/harness/claude-code.json +0 -12
  1128. package/packages/adapters/fixtures/harness/codex.json +0 -10
  1129. package/packages/adapters/fixtures/harness/cursor.json +0 -10
  1130. package/packages/adapters/fixtures/harness/exec.json +0 -10
  1131. package/packages/adapters/fixtures/harness/generic-openai.json +0 -14
  1132. package/packages/adapters/fixtures/harness/goose.json +0 -14
  1133. package/packages/adapters/fixtures/harness/grok.json +0 -18
  1134. package/packages/adapters/fixtures/harness/hermes.json +0 -10
  1135. package/packages/adapters/fixtures/harness/indexrag.json +0 -21
  1136. package/packages/adapters/fixtures/harness/kilo.json +0 -10
  1137. package/packages/adapters/fixtures/harness/mcode.json +0 -10
  1138. package/packages/adapters/fixtures/harness/mimo.json +0 -10
  1139. package/packages/adapters/fixtures/harness/node.json +0 -22
  1140. package/packages/adapters/fixtures/harness/openclaw.json +0 -21
  1141. package/packages/adapters/fixtures/harness/opencode.json +0 -20
  1142. package/packages/adapters/fixtures/harness/qwen.json +0 -20
  1143. package/packages/adapters/fixtures/harness/zcode.json +0 -10
  1144. package/packages/adapters/package.json +0 -29
  1145. package/packages/adapters/src/claude-code.ts +0 -109
  1146. package/packages/adapters/src/codex.ts +0 -135
  1147. package/packages/adapters/src/contract.ts +0 -531
  1148. package/packages/adapters/src/cursor.ts +0 -76
  1149. package/packages/adapters/src/detect.ts +0 -132
  1150. package/packages/adapters/src/env.ts +0 -118
  1151. package/packages/adapters/src/exec.ts +0 -59
  1152. package/packages/adapters/src/generic-openai.ts +0 -36
  1153. package/packages/adapters/src/goose.ts +0 -87
  1154. package/packages/adapters/src/grok.ts +0 -60
  1155. package/packages/adapters/src/hermes.ts +0 -92
  1156. package/packages/adapters/src/index.ts +0 -24
  1157. package/packages/adapters/src/indexrag.ts +0 -254
  1158. package/packages/adapters/src/kilo.ts +0 -39
  1159. package/packages/adapters/src/mcode.ts +0 -392
  1160. package/packages/adapters/src/mcp-config.ts +0 -84
  1161. package/packages/adapters/src/mimo.ts +0 -44
  1162. package/packages/adapters/src/node.ts +0 -71
  1163. package/packages/adapters/src/openclaw.ts +0 -50
  1164. package/packages/adapters/src/opencode-api-bases.ts +0 -200
  1165. package/packages/adapters/src/opencode-capture.ts +0 -164
  1166. package/packages/adapters/src/opencode-catalog.ts +0 -44
  1167. package/packages/adapters/src/opencode-config.ts +0 -209
  1168. package/packages/adapters/src/opencode.ts +0 -257
  1169. package/packages/adapters/src/qwen.ts +0 -113
  1170. package/packages/adapters/src/registry.ts +0 -121
  1171. package/packages/adapters/src/scaffold.ts +0 -173
  1172. package/packages/adapters/src/session.ts +0 -138
  1173. package/packages/adapters/src/zcode.ts +0 -440
  1174. package/packages/adapters/test/adapters.test.ts +0 -666
  1175. package/packages/adapters/test/contract.test.ts +0 -601
  1176. package/packages/adapters/test/exec-adapter.test.ts +0 -114
  1177. package/packages/adapters/test/harness-versions.test.ts +0 -220
  1178. package/packages/adapters/test/indexrag.test.ts +0 -192
  1179. package/packages/adapters/test/mcode.test.ts +0 -678
  1180. package/packages/adapters/test/mcp-config.test.ts +0 -118
  1181. package/packages/adapters/test/named-agents.test.ts +0 -262
  1182. package/packages/adapters/test/node-adapter.test.ts +0 -98
  1183. package/packages/adapters/test/opencode-capture.test.ts +0 -137
  1184. package/packages/adapters/test/opencode-catalog.test.ts +0 -178
  1185. package/packages/adapters/test/opencode-config.test.ts +0 -63
  1186. package/packages/adapters/test/scaffold.test.ts +0 -156
  1187. package/packages/adapters/test/session.test.ts +0 -368
  1188. package/packages/adapters/test/zcode.test.ts +0 -497
  1189. package/packages/adapters/tsconfig.json +0 -16
  1190. package/packages/cli/README.md +0 -92
  1191. package/packages/cli/src/agent-spans.ts +0 -752
  1192. package/packages/cli/src/api.ts +0 -275
  1193. package/packages/cli/src/archive.ts +0 -264
  1194. package/packages/cli/src/args.ts +0 -207
  1195. package/packages/cli/src/attach.ts +0 -178
  1196. package/packages/cli/src/capture-limits.ts +0 -21
  1197. package/packages/cli/src/cli.ts +0 -4
  1198. package/packages/cli/src/commands/attach.ts +0 -441
  1199. package/packages/cli/src/commands/compare.ts +0 -218
  1200. package/packages/cli/src/commands/doctor.ts +0 -447
  1201. package/packages/cli/src/commands/gc.ts +0 -372
  1202. package/packages/cli/src/commands/inspect.ts +0 -482
  1203. package/packages/cli/src/commands/quickstart.ts +0 -479
  1204. package/packages/cli/src/commands/record.ts +0 -1069
  1205. package/packages/cli/src/commands/replay.ts +0 -2289
  1206. package/packages/cli/src/commands/scrub.ts +0 -865
  1207. package/packages/cli/src/commands/setup.ts +0 -294
  1208. package/packages/cli/src/commands/sync.ts +0 -1429
  1209. package/packages/cli/src/config.ts +0 -182
  1210. package/packages/cli/src/exchange-events.ts +0 -369
  1211. package/packages/cli/src/flags.ts +0 -316
  1212. package/packages/cli/src/fs-events.ts +0 -103
  1213. package/packages/cli/src/index.ts +0 -17
  1214. package/packages/cli/src/main.ts +0 -419
  1215. package/packages/cli/src/mcp-server.ts +0 -314
  1216. package/packages/cli/src/mcp.ts +0 -350
  1217. package/packages/cli/src/out.ts +0 -350
  1218. package/packages/cli/src/rasterize.ts +0 -205
  1219. package/packages/cli/src/serial.ts +0 -38
  1220. package/packages/cli/src/share-card.ts +0 -514
  1221. package/packages/cli/src/snapshot.ts +0 -80
  1222. package/packages/cli/src/tls-capture.ts +0 -688
  1223. package/packages/cli/src/upstream.ts +0 -75
  1224. package/packages/cli/src/version.ts +0 -21
  1225. package/packages/cli/test/agent-spans-drain.test.ts +0 -157
  1226. package/packages/cli/test/agent-spans-race.test.ts +0 -97
  1227. package/packages/cli/test/agent-spans.test.ts +0 -1032
  1228. package/packages/cli/test/api.test.ts +0 -178
  1229. package/packages/cli/test/archive.test.ts +0 -143
  1230. package/packages/cli/test/args.test.ts +0 -164
  1231. package/packages/cli/test/attach-command.test.ts +0 -356
  1232. package/packages/cli/test/attach.test.ts +0 -198
  1233. package/packages/cli/test/capture-oracle.test.ts +0 -160
  1234. package/packages/cli/test/capture-warning.test.ts +0 -215
  1235. package/packages/cli/test/chain-card.test.ts +0 -190
  1236. package/packages/cli/test/claude-capture.test.ts +0 -242
  1237. package/packages/cli/test/compare.test.ts +0 -329
  1238. package/packages/cli/test/config-permission-failure.test.ts +0 -41
  1239. package/packages/cli/test/config.test.ts +0 -239
  1240. package/packages/cli/test/declared-inside-replay.test.ts +0 -170
  1241. package/packages/cli/test/doctor.test.ts +0 -276
  1242. package/packages/cli/test/e2e.test.ts +0 -1230
  1243. package/packages/cli/test/exchange-events.test.ts +0 -345
  1244. package/packages/cli/test/failure-lines.test.ts +0 -47
  1245. package/packages/cli/test/fixtures/deaf-agent.mjs +0 -11
  1246. package/packages/cli/test/fixtures/embedding-agent.mjs +0 -32
  1247. package/packages/cli/test/fixtures/fake-agent.mjs +0 -114
  1248. package/packages/cli/test/fixtures/fake-model.mjs +0 -105
  1249. package/packages/cli/test/fixtures/gateway-agent.mjs +0 -20
  1250. package/packages/cli/test/fixtures/ide-parent.mjs +0 -34
  1251. package/packages/cli/test/fixtures/mcp-agent.mjs +0 -64
  1252. package/packages/cli/test/fixtures/proxy-call.mjs +0 -105
  1253. package/packages/cli/test/fixtures/responses-agent.mjs +0 -82
  1254. package/packages/cli/test/fixtures/responses-model.mjs +0 -94
  1255. package/packages/cli/test/fixtures/tls-agent.mjs +0 -35
  1256. package/packages/cli/test/fixtures/vercel-agent.mjs +0 -81
  1257. package/packages/cli/test/flag-values.test.ts +0 -162
  1258. package/packages/cli/test/flags.test.ts +0 -313
  1259. package/packages/cli/test/fork-provenance.test.ts +0 -224
  1260. package/packages/cli/test/fork-tls.test.ts +0 -190
  1261. package/packages/cli/test/gateway-e2e.test.ts +0 -110
  1262. package/packages/cli/test/gc.test.ts +0 -531
  1263. package/packages/cli/test/generated-esm.test.ts +0 -87
  1264. package/packages/cli/test/graph-card.test.ts +0 -249
  1265. package/packages/cli/test/graph-command.test.ts +0 -258
  1266. package/packages/cli/test/grok-bot-e2e.test.ts +0 -349
  1267. package/packages/cli/test/inspect.test.ts +0 -412
  1268. package/packages/cli/test/intercept-failures.test.ts +0 -74
  1269. package/packages/cli/test/json-only.test.ts +0 -88
  1270. package/packages/cli/test/json-output.test.ts +0 -221
  1271. package/packages/cli/test/list-gateway.test.ts +0 -770
  1272. package/packages/cli/test/mcp-capture.test.ts +0 -498
  1273. package/packages/cli/test/mcp-server.test.ts +0 -315
  1274. package/packages/cli/test/nested-repo-replay.test.ts +0 -972
  1275. package/packages/cli/test/no-credential-in-attrs.test.ts +0 -255
  1276. package/packages/cli/test/opencode-capture.test.ts +0 -422
  1277. package/packages/cli/test/opencode-catalog-capture.test.ts +0 -175
  1278. package/packages/cli/test/out.test.ts +0 -491
  1279. package/packages/cli/test/pinned-fetch.test.ts +0 -154
  1280. package/packages/cli/test/prompt-scrub.test.ts +0 -132
  1281. package/packages/cli/test/publish-order.test.ts +0 -87
  1282. package/packages/cli/test/quickstart.test.ts +0 -579
  1283. package/packages/cli/test/rasterize.test.ts +0 -86
  1284. package/packages/cli/test/record-detection.test.ts +0 -156
  1285. package/packages/cli/test/record-teardown.test.ts +0 -203
  1286. package/packages/cli/test/replay-putback.test.ts +0 -242
  1287. package/packages/cli/test/replay-spill.test.ts +0 -116
  1288. package/packages/cli/test/replay-teardown.test.ts +0 -143
  1289. package/packages/cli/test/replay-trace.test.ts +0 -199
  1290. package/packages/cli/test/replay-transport.test.ts +0 -113
  1291. package/packages/cli/test/reset-roots.test.ts +0 -67
  1292. package/packages/cli/test/responses-e2e.test.ts +0 -119
  1293. package/packages/cli/test/retrieval-context.test.ts +0 -168
  1294. package/packages/cli/test/review-regressions.test.ts +0 -168
  1295. package/packages/cli/test/route-decision.test.ts +0 -134
  1296. package/packages/cli/test/run-dir-sidecars.test.ts +0 -779
  1297. package/packages/cli/test/scrub.test.ts +0 -936
  1298. package/packages/cli/test/serial.test.ts +0 -65
  1299. package/packages/cli/test/setup.test.ts +0 -535
  1300. package/packages/cli/test/share-card.test.ts +0 -135
  1301. package/packages/cli/test/shell-capture.test.ts +0 -184
  1302. package/packages/cli/test/shell-frames-drain.test.ts +0 -91
  1303. package/packages/cli/test/snapshot-retry.test.ts +0 -54
  1304. package/packages/cli/test/support-claims.test.ts +0 -127
  1305. package/packages/cli/test/sync-credentials.test.ts +0 -177
  1306. package/packages/cli/test/sync.test.ts +0 -1709
  1307. package/packages/cli/test/tls-intercept.test.ts +0 -548
  1308. package/packages/cli/test/upstream-visible.test.ts +0 -314
  1309. package/packages/cli/test/vercel-sdk-e2e.test.ts +0 -105
  1310. package/packages/cli/test/version.test.ts +0 -20
  1311. package/packages/cli/tsconfig.json +0 -40
  1312. package/packages/core/package.json +0 -26
  1313. package/packages/core/src/blobs.ts +0 -109
  1314. package/packages/core/src/fetch.ts +0 -48
  1315. package/packages/core/src/graph.ts +0 -450
  1316. package/packages/core/src/index.ts +0 -8
  1317. package/packages/core/src/paths.ts +0 -180
  1318. package/packages/core/src/private-files.ts +0 -394
  1319. package/packages/core/src/reader.ts +0 -175
  1320. package/packages/core/src/redaction.ts +0 -826
  1321. package/packages/core/src/writer.ts +0 -467
  1322. package/packages/core/test/blobs.test.ts +0 -170
  1323. package/packages/core/test/capture-contract.test.ts +0 -179
  1324. package/packages/core/test/data-uri-redaction.test.ts +0 -758
  1325. package/packages/core/test/graph.test.ts +0 -520
  1326. package/packages/core/test/integration.test.ts +0 -148
  1327. package/packages/core/test/paths-permission-failure.test.ts +0 -53
  1328. package/packages/core/test/paths.test.ts +0 -339
  1329. package/packages/core/test/private-files-owner.test.ts +0 -77
  1330. package/packages/core/test/private-files-scratch-race.test.ts +0 -62
  1331. package/packages/core/test/private-files.test.ts +0 -251
  1332. package/packages/core/test/reader.test.ts +0 -271
  1333. package/packages/core/test/redaction.test.ts +0 -525
  1334. package/packages/core/test/writer.test.ts +0 -531
  1335. package/packages/core/tsconfig.json +0 -6
  1336. package/packages/fs-capture/package.json +0 -25
  1337. package/packages/fs-capture/src/capture.ts +0 -193
  1338. package/packages/fs-capture/src/git.ts +0 -131
  1339. package/packages/fs-capture/src/index.ts +0 -3
  1340. package/packages/fs-capture/src/shadow.ts +0 -751
  1341. package/packages/fs-capture/test/capture.test.ts +0 -241
  1342. package/packages/fs-capture/test/git.test.ts +0 -118
  1343. package/packages/fs-capture/test/helpers.ts +0 -28
  1344. package/packages/fs-capture/test/shadow.test.ts +0 -1058
  1345. package/packages/fs-capture/tsconfig.json +0 -6
  1346. package/packages/mcp-shim/package.json +0 -26
  1347. package/packages/mcp-shim/src/cli.ts +0 -372
  1348. package/packages/mcp-shim/src/framing.ts +0 -106
  1349. package/packages/mcp-shim/src/index.ts +0 -4
  1350. package/packages/mcp-shim/src/mock.ts +0 -194
  1351. package/packages/mcp-shim/src/shim.ts +0 -126
  1352. package/packages/mcp-shim/test/cli.test.ts +0 -489
  1353. package/packages/mcp-shim/test/framing.test.ts +0 -143
  1354. package/packages/mcp-shim/test/mock.test.ts +0 -200
  1355. package/packages/mcp-shim/test/shim.test.ts +0 -287
  1356. package/packages/mcp-shim/tsconfig.json +0 -5
  1357. package/packages/node-instrument/package.json +0 -23
  1358. package/packages/node-instrument/src/capture.ts +0 -505
  1359. package/packages/node-instrument/src/index.ts +0 -3
  1360. package/packages/node-instrument/src/install.ts +0 -186
  1361. package/packages/node-instrument/src/rewrite.ts +0 -66
  1362. package/packages/node-instrument/test/capture.test.ts +0 -423
  1363. package/packages/node-instrument/test/install.test.ts +0 -427
  1364. package/packages/node-instrument/test/rewrite.test.ts +0 -85
  1365. package/packages/node-instrument/tsconfig.json +0 -9
  1366. package/packages/plugin-api/package.json +0 -22
  1367. package/packages/plugin-api/src/canonical.ts +0 -73
  1368. package/packages/plugin-api/src/index.ts +0 -2
  1369. package/packages/plugin-api/src/plugins.ts +0 -265
  1370. package/packages/plugin-api/test/canonical.test.ts +0 -58
  1371. package/packages/plugin-api/tsconfig.json +0 -5
  1372. package/packages/providers/package.json +0 -26
  1373. package/packages/providers/src/index.ts +0 -34
  1374. package/packages/providers/src/pricing.ts +0 -140
  1375. package/packages/providers/src/translate/anthropic.ts +0 -620
  1376. package/packages/providers/src/translate/openai-responses.ts +0 -638
  1377. package/packages/providers/src/translate/openai.ts +0 -630
  1378. package/packages/providers/src/translate/sse.ts +0 -99
  1379. package/packages/providers/src/translate/util.ts +0 -111
  1380. package/packages/providers/test/anthropic-translate.test.ts +0 -687
  1381. package/packages/providers/test/openai-responses-translate.test.ts +0 -377
  1382. package/packages/providers/test/openai-translate.test.ts +0 -884
  1383. package/packages/providers/test/pricing.test.ts +0 -171
  1384. package/packages/providers/tsconfig.json +0 -6
  1385. package/packages/proxy/package.json +0 -28
  1386. package/packages/proxy/src/ca.ts +0 -376
  1387. package/packages/proxy/src/der.ts +0 -152
  1388. package/packages/proxy/src/dialects.ts +0 -413
  1389. package/packages/proxy/src/forward.ts +0 -64
  1390. package/packages/proxy/src/index.ts +0 -8
  1391. package/packages/proxy/src/intercept.ts +0 -1554
  1392. package/packages/proxy/src/matching.ts +0 -1056
  1393. package/packages/proxy/src/retrieval.ts +0 -290
  1394. package/packages/proxy/src/server.ts +0 -2875
  1395. package/packages/proxy/src/tls-hosts.ts +0 -205
  1396. package/packages/proxy/test/beta-headers.test.ts +0 -39
  1397. package/packages/proxy/test/ca.test.ts +0 -146
  1398. package/packages/proxy/test/forward.test.ts +0 -306
  1399. package/packages/proxy/test/hop-by-hop.test.ts +0 -118
  1400. package/packages/proxy/test/image-matching.test.ts +0 -129
  1401. package/packages/proxy/test/indexing-concurrency.test.ts +0 -224
  1402. package/packages/proxy/test/lookahead.test.ts +0 -160
  1403. package/packages/proxy/test/malformed-body.test.ts +0 -73
  1404. package/packages/proxy/test/matching.test.ts +0 -822
  1405. package/packages/proxy/test/passthrough.test.ts +0 -599
  1406. package/packages/proxy/test/recorded-upstream.test.ts +0 -253
  1407. package/packages/proxy/test/responses-dialect.test.ts +0 -239
  1408. package/packages/proxy/test/retrieval.test.ts +0 -589
  1409. package/packages/proxy/test/server.test.ts +0 -1281
  1410. package/packages/proxy/test/tls-hosts.test.ts +0 -190
  1411. package/packages/proxy/test/tls-intercept.test.ts +0 -1769
  1412. package/packages/proxy/tsconfig.json +0 -22
  1413. package/packages/schema/package.json +0 -28
  1414. package/packages/schema/src/constants.ts +0 -73
  1415. package/packages/schema/src/index.ts +0 -3
  1416. package/packages/schema/src/types.ts +0 -103
  1417. package/packages/schema/src/validate.ts +0 -60
  1418. package/packages/schema/test/schema-parity.test.ts +0 -116
  1419. package/packages/schema/tsconfig.json +0 -5
  1420. package/packages/shell-shim/package.json +0 -26
  1421. package/packages/shell-shim/src/index.ts +0 -3
  1422. package/packages/shell-shim/src/install.ts +0 -406
  1423. package/packages/shell-shim/src/resolve.ts +0 -98
  1424. package/packages/shell-shim/src/runner-bin.ts +0 -4
  1425. package/packages/shell-shim/src/runner.ts +0 -149
  1426. package/packages/shell-shim/test/resolve.test.ts +0 -125
  1427. package/packages/shell-shim/test/shim.test.ts +0 -548
  1428. package/packages/shell-shim/test/transport-race.test.ts +0 -109
  1429. package/packages/shell-shim/tsconfig.json +0 -13
  1430. package/packages/viewer/package.json +0 -25
  1431. package/packages/viewer/src/bundle.ts +0 -36
  1432. package/packages/viewer/src/client/main.ts +0 -248
  1433. package/packages/viewer/src/credit.ts +0 -24
  1434. package/packages/viewer/src/css.ts +0 -409
  1435. package/packages/viewer/src/export.ts +0 -38
  1436. package/packages/viewer/src/html.ts +0 -356
  1437. package/packages/viewer/src/index.ts +0 -16
  1438. package/packages/viewer/src/render.ts +0 -791
  1439. package/packages/viewer/src/serve.ts +0 -150
  1440. package/packages/viewer/src/trace-dir.ts +0 -140
  1441. package/packages/viewer/test/bundle.test.ts +0 -47
  1442. package/packages/viewer/test/client.test.ts +0 -378
  1443. package/packages/viewer/test/export.test.ts +0 -131
  1444. package/packages/viewer/test/fixtures.ts +0 -69
  1445. package/packages/viewer/test/html.test.ts +0 -453
  1446. package/packages/viewer/test/playback.test.ts +0 -54
  1447. package/packages/viewer/test/render.test.ts +0 -714
  1448. package/packages/viewer/test/serve.test.ts +0 -125
  1449. package/packages/viewer/tsconfig.json +0 -6
  1450. package/prompt/AIDER/deepseek-v4-1-flash-system-prompt.md +0 -29
  1451. package/prompt/CLAUDECODE/claude-fable-5-1-print-system-prompt.md +0 -127
  1452. package/prompt/CLAUDECODE/claude-fable-5-1-system-prompt.md +0 -169
  1453. package/prompt/CLAUDECODE/claude-opus-4-8-system-prompt.md +0 -131
  1454. package/prompt/CLAUDECODE/claude-opus-5-system-prompt.md +0 -149
  1455. package/prompt/CLINE/openai-gpt-4o-mini-system-prompt.md +0 -37
  1456. package/prompt/CODEX/gpt-5-6-luna-system-prompt.md +0 -183
  1457. package/prompt/CODEX/gpt-5-6-sol-system-prompt.md +0 -218
  1458. package/prompt/CODEX/gpt-6-1-sol-system-prompt.md +0 -242
  1459. package/prompt/CODEX/gpt-6-astra-system-prompt.md +0 -170
  1460. package/prompt/CODEX/gpt-6-luna-system-prompt.md +0 -223
  1461. package/prompt/CODEX/gpt-6-sol-system-prompt.md +0 -226
  1462. package/prompt/CRUSH/deepseek-v4-1-flash-system-prompt.md +0 -472
  1463. package/prompt/CURSOR/grok-4-5-high-system-prompt.md +0 -40
  1464. package/prompt/DSH/deepseek-flash-system-prompt.md +0 -31
  1465. package/prompt/GEMINICLI/gemini-3-5-flash-system-prompt.md +0 -168
  1466. package/prompt/GOOSE/deepseek-v4-1-flash-system-prompt.md +0 -180
  1467. package/prompt/HACKERAI/openai-gpt-4o-mini-system-prompt.md +0 -70
  1468. package/prompt/HERMES/nemotron-3-5-lightning-free-system-prompt.md +0 -111
  1469. package/prompt/KILOCODE/kilo-auto-free-system-prompt.md +0 -129
  1470. package/prompt/MCODE/deepseek-deepseek-v4-flash-free-coding-system-prompt.md +0 -128
  1471. package/prompt/MCODE/deepseek-deepseek-v4-flash-free-tui-system-prompt.md +0 -119
  1472. package/prompt/MCODE/deepseek-deepseek-v4-flash-free-work-system-prompt.md +0 -140
  1473. package/prompt/MIMOCODE/mimo-v2-5-pro-system-prompt.md +0 -411
  1474. package/prompt/MIMOCODE/mimo-v2-5-system-prompt.md +0 -411
  1475. package/prompt/MUSECODE/muse-spark-1-3-system-prompt.md +0 -78
  1476. package/prompt/OPENCLAW/gpt-5-6-sol-system-prompt.md +0 -333
  1477. package/prompt/OPENCODE/big-pickle-system-prompt.md +0 -114
  1478. package/prompt/OPENCODE/gpt-5-6-sol-system-prompt.md +0 -126
  1479. package/prompt/OPENCODE/ling-3-0-flash-fin-free-system-prompt.md +0 -114
  1480. package/prompt/OPENCODE/mimo-v2-5-free-system-prompt.md +0 -114
  1481. package/prompt/OPENCODE/muse-spark-1-2-contributor-free-system-prompt.md +0 -84
  1482. package/prompt/OPENCODE/nemotron-3-5-lightning-free-system-prompt.md +0 -114
  1483. package/prompt/OPENCODE/nemotron-3-ultra-free-system-prompt.md +0 -114
  1484. package/prompt/PI/openai-gpt-4o-mini-system-prompt.md +0 -31
  1485. package/prompt/QWENCODE/gpt-5-6-sol-system-prompt.md +0 -290
  1486. package/prompt/ZCODE/glm-4-6-system-prompt.md +0 -91
  1487. package/python/README.md +0 -132
  1488. package/python/agenticreplay_trace/__init__.py +0 -58
  1489. package/python/agenticreplay_trace/graph.py +0 -137
  1490. package/python/agenticreplay_trace/models.py +0 -491
  1491. package/python/agenticreplay_trace/py.typed +0 -0
  1492. package/python/agenticreplay_trace/reader.py +0 -295
  1493. package/python/conftest.py +0 -12
  1494. package/python/examples/analyze.py +0 -114
  1495. package/python/pyproject.toml +0 -45
  1496. package/python/tests/conftest.py +0 -102
  1497. package/python/tests/test_capture_contract.py +0 -24
  1498. package/python/tests/test_conformance.py +0 -235
  1499. package/python/tests/test_examples.py +0 -60
  1500. package/python/tests/test_graph.py +0 -247
  1501. package/python/tests/test_models.py +0 -342
  1502. package/python/tests/test_reader.py +0 -423
  1503. package/python-langgraph/README.md +0 -159
  1504. package/python-langgraph/agenticreplay_langgraph/__init__.py +0 -21
  1505. package/python-langgraph/agenticreplay_langgraph/handler.py +0 -317
  1506. package/python-langgraph/agenticreplay_langgraph/hook.py +0 -168
  1507. package/python-langgraph/pyproject.toml +0 -35
  1508. package/python-langgraph/tests/test_handler.py +0 -370
  1509. package/python-langgraph/tests/test_integration.py +0 -484
  1510. package/python-openai-agents/README.md +0 -145
  1511. package/python-openai-agents/agenticreplay_openai_agents/__init__.py +0 -11
  1512. package/python-openai-agents/agenticreplay_openai_agents/processor.py +0 -331
  1513. package/python-openai-agents/pyproject.toml +0 -34
  1514. package/python-openai-agents/tests/test_processor.py +0 -457
  1515. package/scripts/check-neutrality.mjs +0 -62
  1516. package/scripts/codex-client-acceptance.mjs +0 -133
  1517. package/scripts/conformance.mjs +0 -245
  1518. package/scripts/fidelity.mjs +0 -170
  1519. package/scripts/hermes-client-acceptance.mjs +0 -158
  1520. package/scripts/host-client-acceptance.mjs +0 -732
  1521. package/scripts/installed-smoke.mjs +0 -316
  1522. package/scripts/publish-order.mjs +0 -96
  1523. package/scripts/regenerate-quickstart.mjs +0 -79
  1524. package/scripts/render-cards.mjs +0 -178
  1525. package/scripts/render-demo.mjs +0 -139
  1526. package/scripts/render-sync-card.mjs +0 -96
  1527. package/scripts/set-version.mjs +0 -152
  1528. package/scripts/set-version.test.ts +0 -220
  1529. package/scripts/sync-server-json.mjs +0 -13
  1530. package/scripts/update-opencode-api-bases.mjs +0 -29
  1531. package/server.json +0 -28
  1532. package/skills/agenticreplay-replay/SKILL.md +0 -211
  1533. package/spec/agenticreplay-trace-v0.md +0 -223
  1534. package/test/integrations/README.md +0 -133
  1535. package/test/integrations/agents/ai_sdk_openai.mjs +0 -24
  1536. package/test/integrations/agents/anthropic_sdk.py +0 -10
  1537. package/test/integrations/agents/browser_use_agent.py +0 -24
  1538. package/test/integrations/agents/crewai_agent.py +0 -44
  1539. package/test/integrations/agents/crewai_model_names.py +0 -72
  1540. package/test/integrations/agents/hardcoded_origin.mjs +0 -13
  1541. package/test/integrations/agents/haystack_pipeline.py +0 -28
  1542. package/test/integrations/agents/haystack_rag.py +0 -35
  1543. package/test/integrations/agents/langgraph_agent.py +0 -54
  1544. package/test/integrations/agents/langgraph_nodes.py +0 -62
  1545. package/test/integrations/agents/litellm_agent.py +0 -11
  1546. package/test/integrations/agents/llama_index_agent.py +0 -27
  1547. package/test/integrations/agents/llama_index_model_names.py +0 -67
  1548. package/test/integrations/agents/mastra_agent.mjs +0 -20
  1549. package/test/integrations/agents/mcp_agent.py +0 -44
  1550. package/test/integrations/agents/mcp_server.py +0 -20
  1551. package/test/integrations/agents/openai_agents_handoff.py +0 -52
  1552. package/test/integrations/agents/openai_agents_sdk.py +0 -29
  1553. package/test/integrations/agents/openai_async.py +0 -17
  1554. package/test/integrations/agents/openai_sdk.py +0 -10
  1555. package/test/integrations/agents/openhands_agent.py +0 -34
  1556. package/test/integrations/agents/rag_pipeline.py +0 -79
  1557. package/test/integrations/agents/vision_agent.py +0 -63
  1558. package/test/integrations/run.mjs +0 -719
  1559. package/test/integrations/stub-origin.mjs +0 -229
  1560. package/tsconfig.base.json +0 -20
  1561. package/tsconfig.json +0 -41
  1562. package/vitest.config.ts +0 -39
  1563. package/vitest.setup.ts +0 -25
  1564. /package/{packages → node_modules/@agenticreplay}/schema/schema/event.schema.json +0 -0
  1565. /package/{packages → node_modules/@agenticreplay}/schema/schema/manifest.schema.json +0 -0
@@ -1,1069 +0,0 @@
1
- import { spawn } from 'node:child_process';
2
- import { readFile } from 'node:fs/promises';
3
- import { delimiter, resolve } from 'node:path';
4
- import { TraceWriter, ensureRunsDir } from '@agenticreplay/core';
5
- import { FsCapture } from '@agenticreplay/fs-capture';
6
- import {
7
- createProxy,
8
- unusableOrigin,
9
- recordableOrigin,
10
- RunCa,
11
- type NetExchange,
12
- type NetRequest,
13
- type RecordedExchange,
14
- } from '@agenticreplay/proxy';
15
- import {
16
- captureSession,
17
- defaultAdapters,
18
- resolveLaunch,
19
- snapshotDir,
20
- } from '@agenticreplay/adapters';
21
- import type { Adapter, RecordContext } from '@agenticreplay/plugin-api';
22
- import { ExchangeEventDeriver, appendDerivedEvents } from '../exchange-events.js';
23
- import { discardShellFrames, installShellShim, readShellFrames } from '@agenticreplay/shell-shim';
24
- import {
25
- eventForSpan,
26
- discardAgentSpanTransport,
27
- installAgentSpans,
28
- sweepStaleTransports,
29
- touchTransports,
30
- pythonPathWith,
31
- agentSpanLosses,
32
- readAgentSpans,
33
- PYTHON_ADAPTERS,
34
- SPANS_ENV,
35
- type AgentSpanCapture,
36
- } from '../agent-spans.js';
37
- import { drainMcpFrames, pointAtMcpConfig, setupMcpCapture, type McpCapture } from '../mcp.js';
38
- import { SerialQueue } from '../serial.js';
39
- import { appendSnapshot } from '../fs-events.js';
40
- import type { Output } from '../out.js';
41
- import type { ParsedArgs } from '../args.js';
42
- import {
43
- persistNetExchange,
44
- planTlsCapture,
45
- setupTlsCapture,
46
- trustRunCa,
47
- UnclaimedPaths,
48
- persistNetRequestStart,
49
- } from '../tls-capture.js';
50
- import { upstreamPlan } from '../upstream.js';
51
- import { AGENTICREPLAY_VERSION } from '../version.js';
52
- import { captureLimits } from '../capture-limits.js';
53
-
54
- export interface RecordResult {
55
- /**
56
- * Model exchanges the proxy captured.
57
- *
58
- * Zero is the failure this whole field exists for, and it has to be readable by a caller that
59
- * has no terminal to watch: the agent answers, the exit code is zero, and the trace is empty.
60
- */
61
- modelExchanges: number;
62
- runId: string;
63
- runDir: string;
64
- events: number;
65
- exitCode: number;
66
- childExitCode: number;
67
- }
68
-
69
- /**
70
- * `agenticreplay record <agent>` — stand up the capture layers, launch the agent pointed at them, and get
71
- * out of the way. The agent is not patched, wrapped or modified; it is simply started with a
72
- * couple of environment variables that point its model traffic at a local proxy.
73
- *
74
- * The wrapper exists for one reason: a TLS-intercepting run mints a private key, and a key that
75
- * outlives a failed run is the outcome this feature must not have. The recording's own teardown
76
- * deletes it on the way out, but the likeliest failure of all — the agent is not installed —
77
- * happens before any teardown runs. Owning the key's lifetime out here means no failure path
78
- * inside can skip it.
79
- */
80
- /**
81
- * Whether a tool call ran a command.
82
- *
83
- * By the shape of the arguments rather than by the tool's name: every harness names it something
84
- * different — `Bash`, `shell`, `run_command`, `exec` — and a list of names would be wrong for the
85
- * next one. A `command` string is what they all have in common.
86
- */
87
- function isCommandTool(input: unknown): boolean {
88
- if (input === null || typeof input !== 'object') return false;
89
- const command = (input as { command?: unknown }).command;
90
- return typeof command === 'string' && command.trim() !== '';
91
- }
92
-
93
- export async function recordCommand(
94
- args: ParsedArgs,
95
- out: Output,
96
- cwd = process.cwd(),
97
- ): Promise<RecordResult> {
98
- // Before anything else, and never fatal: an orphan left by a killed run holds the same
99
- // un-redacted material a live one does, and the next recording is the only thing that will ever
100
- // come across it.
101
- const sweptStale = await sweepStaleTransports().catch(() => 0);
102
- if (sweptStale > 0) out.info('transports.swept', { stale: sweptStale });
103
-
104
- const minted: RunCa[] = [];
105
- // Transport directories, disposed here if the run throws before their drain reaches them. Both
106
- // hold material written by a process agenticreplay does not own — the agent's shells, the agent's own
107
- // interpreter — and a run that dies partway must not leave either behind.
108
- const transports: string[] = [];
109
- // While this run holds them, they are not orphans, and a sweep that cannot resolve this pid —
110
- // another container sharing `/tmp` — has no other way to know that. Started here so it covers
111
- // both transports from the moment each is pushed, and stopped on every exit path below.
112
- const stopHeartbeat = touchTransports(transports);
113
- try {
114
- return await runRecording(args, out, cwd, minted, transports);
115
- } catch (err) {
116
- for (const ca of minted) {
117
- await ca.dispose().catch(() => undefined);
118
- }
119
- for (const dir of transports) {
120
- await discardShellFrames(dir).catch(() => undefined);
121
- }
122
- throw err;
123
- } finally {
124
- stopHeartbeat();
125
- }
126
- }
127
-
128
- async function runRecording(
129
- args: ParsedArgs,
130
- out: Output,
131
- cwd: string,
132
- minted: RunCa[],
133
- transports: string[],
134
- ): Promise<RecordResult> {
135
- const registry = defaultAdapters();
136
- const agentName = args.positionals[0];
137
-
138
- let adapter: Adapter | undefined;
139
- if (agentName) {
140
- adapter = registry.get(agentName);
141
- } else if (args.passthrough.length > 0) {
142
- // A command after `--` is not a hint about the environment; it is the answer. Detection is
143
- // machine-wide by construction — every adapter's is `detectAgent(binaries, homePaths)`, which
144
- // asks whether a binary is on PATH or a directory exists under `$HOME`, and neither is a fact
145
- // about this directory. So on a machine with Claude Code installed,
146
- // `agenticreplay record -- python my_graph.py` detected `claude-code` and launched *that*, handing it
147
- // `python my_graph.py` as arguments. The run recorded, so the failure looked like a bad key
148
- // rather than like agenticreplay having started the wrong program.
149
- //
150
- // `generic-openai` rather than `exec`: both decline to guess what the command is, but only one
151
- // of them redirects anything. `exec` points the agent nowhere and warns that interception is
152
- // required — correct for a Go binary with its origin compiled in, and wrong as a default,
153
- // because most things run this way read a base-URL variable and would have been captured by
154
- // setting the three that `generic-openai` sets. Sending everyone to `--tls-intercept` to record
155
- // a Python script is a worse answer than the bug this replaces.
156
- adapter = registry.get('generic-openai');
157
- } else {
158
- adapter = await registry.detect(cwd);
159
- if (!adapter) {
160
- throw new Error(
161
- `could not detect an agent in ${cwd}\n` +
162
- ` name one explicitly: agenticreplay record <${registry.ids().join('|')}>\n` +
163
- ` known agents: ${registry.names().join('; ')}`,
164
- );
165
- }
166
- out.info('adapter.detected', { id: adapter.id });
167
- }
168
-
169
- // Before the run directory exists, because both of these refuse: `upstreamPlan` an upstream that
170
- // is not an origin, `planTlsCapture` a `--tls-hosts` list that names `*` or contradicts itself
171
- // and an `AGENTICREPLAY_TLS_UPSTREAM_CA` that cannot be read. Resolved after it, a typo in any of them
172
- // left an empty run behind for `agenticreplay list` to show. Neither depends on more than the arguments,
173
- // the environment and a file the run was going to read anyway, so there is no reason for either
174
- // to run later — and `planTlsCapture` is the refusing half of `setupTlsCapture` alone, so the
175
- // certificate authority is still minted below, once the run has a directory to mint it into.
176
- const plan = await upstreamPlan(args);
177
- await planTlsCapture(args);
178
-
179
- const dir = await ensureRunsDir(cwd);
180
-
181
- const writer = await TraceWriter.create(dir, {
182
- adapter: {
183
- id: adapter.id,
184
- version: AGENTICREPLAY_VERSION,
185
- harness_version: adapter.harnessVersions,
186
- },
187
- argv: [agentName ?? adapter.id, ...args.passthrough],
188
- cwd,
189
- agenticreplayVersion: AGENTICREPLAY_VERSION,
190
- });
191
-
192
- const captureFs = args.bool('fs', true);
193
- let fs: FsCapture | undefined;
194
- if (captureFs) {
195
- try {
196
- // The adapter's declared artifacts widen what a snapshot covers. A pipeline writes its
197
- // product to a path its own `.gitignore` excludes, so without this the trace holds the
198
- // calls that built an index and no trace of the index; see `HarnessArtifacts.capture`.
199
- fs = await FsCapture.start({
200
- runDir: writer.runDir,
201
- cwd,
202
- ...(adapter.artifacts?.capture === undefined ? {} : { forced: adapter.artifacts.capture }),
203
- });
204
- // Read once, before the agent touches anything: `git` describes the state the run started
205
- // from, which is what makes it a reproduction instruction rather than a postscript.
206
- writer.setGit(await fs.gitInfo());
207
- } catch (err) {
208
- // Filesystem capture is valuable but not essential; losing it should degrade the trace,
209
- // not abort the run the user actually wanted to record.
210
- out.warn('fs.unavailable', { reason: String(err) });
211
- }
212
- }
213
-
214
- // MCP capture is opt-in by pointing at a config: the file lives in a different place for every
215
- // harness, and guessing wrong would rewrite something the user did not mean us to touch.
216
- let mcp: McpCapture | undefined;
217
- const mcpConfigPath = args.str('mcp-config');
218
- if (mcpConfigPath) {
219
- mcp = await setupMcpCapture({ sourceConfigPath: mcpConfigPath, runDir: writer.runDir, out });
220
- // THE NOTE IS WRITTEN AFTER `run.start`, NOT HERE — see the append below it.
221
- //
222
- // Instrumenting MCP has to happen before the agent launches, because it rewrites the config the
223
- // agent is about to read. Recording that it happened does not: agenticreplay-trace requires `run.start`
224
- // at seq 0, and appending here put a `note` there instead, which the gateway's validator
225
- // refuses on push ("run.start at seq 1, must be seq 0"). Nothing local checks the ordering, so
226
- // every MCP-instrumented recording looked fine and was unpushable. `tls_intercept` already
227
- // separates the two — it sets up here and queues its note for after the start event.
228
- }
229
-
230
- // Shell capture: a PATH shim in front of sh/bash. The protocol layer already reports the command
231
- // and its merged output one turn late; what only the shim can see is the exit code, the real
232
- // duration, and which stream each byte came out of.
233
- let shell: Awaited<ReturnType<typeof installShellShim>> | undefined;
234
- if (args.bool('shell', true)) {
235
- try {
236
- shell = await installShellShim({ runDir: writer.runDir });
237
- // Only when agenticreplay minted it. A caller-supplied `framesPath` leaves the directory theirs,
238
- // and this list is deleted wholesale on a failure.
239
- if (shell.transportDir !== undefined) transports.push(shell.transportDir);
240
- } catch (err) {
241
- // Same posture as filesystem capture: degrade the trace, never abort the run.
242
- out.warn('shell.unavailable', { reason: String(err) });
243
- }
244
- }
245
-
246
- // Agent-level structure, for a harness that reports it. The proxy sees `POST /v1/responses` and
247
- // cannot say which agent sent it, that a handoff happened, or that a guardrail ran — the last of
248
- // which need make no request at all. A `sitecustomize.py` on PYTHONPATH attaches the OpenAI Agents
249
- // SDK's tracing to a run without editing the agent, the same trick as the fetch hook's
250
- // NODE_OPTIONS. Silent and free where the SDK is absent, which is most runs.
251
- let agentSpans: AgentSpanCapture | undefined;
252
- if (args.bool('agent-spans', true) || args.bool('tls-intercept', false)) {
253
- try {
254
- agentSpans = await installAgentSpans(writer.runDir);
255
- transports.push(agentSpans.transportDir);
256
- } catch (err) {
257
- // Same posture as the other optional layers: degrade the trace, never abort the run.
258
- out.warn('agent_spans.unavailable', { reason: String(err) });
259
- }
260
- }
261
-
262
- const deriver = new ExchangeEventDeriver();
263
- let turn = 0;
264
- // When each turn began, so an out-of-band frame can be attributed to the turn it happened during
265
- // rather than to whichever turn happened to be last when we drained the file.
266
- const turnStartedAt: { turn: number; at: number }[] = [];
267
- // Serial, not parallel: each persist snapshots the workspace, and two overlapping `git add`
268
- // calls collide on index.lock. It also keeps seq in the order exchanges actually happened.
269
- const writes = new SerialQueue();
270
-
271
- /**
272
- * TLS interception, off unless the flag is present.
273
- *
274
- * Base-URL injection captures every harness that reads a base-URL variable, which is most of
275
- * them. A Codex CLI signed in with a ChatGPT subscription reads none, and talks to its own
276
- * backend over TLS — invisible to the ordinary mechanism. This is the answer to that, and it is
277
- * deliberately a separate decision the operator has to make: it mints a certificate authority.
278
- */
279
- /**
280
- * Paths this run forwarded but could not read, however they arrived.
281
- *
282
- * Shared between the interception hook and the plaintext passthrough below, so a run that
283
- * captured only unreadable traffic can say which paths those were instead of blaming a
284
- * base-URL variable that was set correctly.
285
- */
286
- const unclaimed = new UnclaimedPaths(captureLimits(args).maxCapturedBytes);
287
-
288
- let networkExchanges = 0;
289
- const requestTurns = new Map<string, number>();
290
- const bufferLimit = captureLimits(args).maxBufferedBytes;
291
- let queuedBodyBytes = 0;
292
- function enqueueBodyWrite(bytes: number, task: () => Promise<void>): boolean {
293
- if (queuedBodyBytes + bytes > bufferLimit) {
294
- writer.markCaptureIncomplete('persistence_buffer_limit');
295
- return false;
296
- }
297
- queuedBodyBytes += bytes;
298
- writes.push(async () => {
299
- try {
300
- await task();
301
- } finally {
302
- queuedBodyBytes -= bytes;
303
- }
304
- });
305
- return true;
306
- }
307
- async function startRequest(request: NetRequest): Promise<void> {
308
- const requestTurn = ++turn;
309
- requestTurns.set(request.requestId, requestTurn);
310
- turnStartedAt.push({ turn: requestTurn, at: request.requestStartedAt });
311
- await persistNetRequestStart(writer, requestTurn, request);
312
- }
313
- function finishRequest(exchange: NetExchange): void {
314
- networkExchanges += 1;
315
- unclaimed.note(out, exchange);
316
- const requestTurn = requestTurns.get(exchange.requestId);
317
- if (requestTurn === undefined) writer.markCaptureIncomplete('missing_request_correlation');
318
- const bytes =
319
- Buffer.byteLength(exchange.requestBody) + Buffer.byteLength(exchange.responseBody);
320
- if (!enqueueBodyWrite(bytes, () => persistNetExchange(writer, requestTurn ?? 0, exchange))) {
321
- const omitted: NetExchange = {
322
- ...exchange,
323
- requestBody: '',
324
- responseBody: '',
325
- requestTruncated: true,
326
- responseTruncated: true,
327
- transformations: [
328
- ...(exchange.transformations ?? []),
329
- {
330
- kind: 'omission',
331
- location: 'request.body',
332
- rule: 'persistence_buffer_limit',
333
- count: 1,
334
- reason: 'concurrent persistence budget exhausted',
335
- },
336
- {
337
- kind: 'omission',
338
- location: 'response.body',
339
- rule: 'persistence_buffer_limit',
340
- count: 1,
341
- reason: 'concurrent persistence budget exhausted',
342
- },
343
- ],
344
- };
345
- writes.push(() => persistNetExchange(writer, requestTurn ?? 0, omitted));
346
- }
347
- }
348
- const tls = await setupTlsCapture({
349
- args,
350
- out,
351
- writer,
352
- writes,
353
- turn: () => turn,
354
- unclaimed,
355
- onRequestStart: startRequest,
356
- onNetExchange: finishRequest,
357
- });
358
- if (tls.ca) minted.push(tls.ca);
359
- const ca = tls.ca;
360
-
361
- // The mirror of the warning inside `setupTlsCapture`, which fires when hosts are named without
362
- // interception. This one fires when interception is the adapter's *only* route to the traffic
363
- // and it was not asked for: a `transport` adapter redirects nothing on purpose, so without
364
- // `--tls-intercept` the run completes, exits zero and records no model traffic at all. That is
365
- // the precise shape of failure the adapter contract exists to catch, and it deserves to be said
366
- // out loud rather than inferred from an empty trace. `tls.ca` is minted only when interception
367
- // is on, which makes it the signal.
368
- if (adapter.capture === 'transport' && !tls.ca) {
369
- out.warn('tls.intercept_required', {
370
- adapter: adapter.id,
371
- reason: 'this adapter points the agent nowhere and relies on interception',
372
- next: "add --tls-intercept, and --tls-hosts '+host' for a host outside the defaults",
373
- });
374
- }
375
- // A `config` adapter points the agent somewhere too — through a file rather than a variable —
376
- // so it needs no interception and must not be told to turn it on. It is named here only so
377
- // that the branch above is read as the narrow thing it is.
378
-
379
- /** Model exchanges the proxy actually captured — the number the warning below turns on. */
380
- let modelExchanges = 0;
381
- /**
382
- * Tool calls that ran a command, counted from the model exchanges rather than from the shim.
383
- *
384
- * This is the evidence half of the shell-shim check. The shim reports success when it installs,
385
- * which says nothing about whether the harness ever went through it: Claude Code on Windows
386
- * resolves its shell without consulting PATH, so `shell=on` printed happily while the frames
387
- * file stayed empty for a run full of Bash calls. Comparing what the model asked for against
388
- * what the shim saw is what turns that silence into something agenticreplay can say out loud.
389
- */
390
- let commandToolCalls = 0;
391
- /** Commands the shim actually saw. Zero against a non-zero `commandToolCalls` is the warning. */
392
- let shellFrames = 0;
393
- // (the count this used to keep was read by nothing; the layer reports through its events)
394
- /**
395
- * Exchanges the upstream answered with an error status.
396
- *
397
- * Counted because a run in which every model call failed is indistinguishable, from the summary
398
- * line alone, from one that worked: the harness retries, gives up, exits 0, and agenticreplay prints
399
- * `recorded … exit=0` over a trace whose every answer is a 503. That happened against a gateway
400
- * whose credentials had lapsed, and nothing in the output said so.
401
- */
402
- let erroredExchanges = 0;
403
- /** The status those errors carried, so the warning can name it rather than describe it. */
404
- const errorStatuses = new Map<number, number>();
405
-
406
- /**
407
- * How much of a retrieval answer to keep.
408
- *
409
- * `full` by default, because it is the only setting that can be replayed. `digest` exists
410
- * because these bodies are large in a way a chat response is not — six paragraphs at 768
411
- * dimensions is 98 KB of JSON floats, and an index build makes thousands of such calls — so a
412
- * recording made to check that a later run agrees, rather than to reproduce one, can keep the
413
- * hash and none of the vectors.
414
- */
415
- const retrievalStore = args.str('retrieval-store') ?? 'full';
416
- if (retrievalStore !== 'full' && retrievalStore !== 'digest') {
417
- throw new Error(
418
- `--retrieval-store must be 'full' or 'digest', not '${retrievalStore}'\n` +
419
- ' full keep the response, so the run can be replayed offline\n' +
420
- ' digest keep only its sha256, which proves a later run agreed but cannot serve it',
421
- );
422
- }
423
-
424
- const proxy = await createProxy({
425
- mode: 'record',
426
- upstream: plan.upstream,
427
- upstreamHeaders: plan.headers,
428
- upstreamHeadersOrigin: plan.headersOrigin,
429
- retrievalStore,
430
- onRequestStart: startRequest,
431
- onExchange: (exchange: RecordedExchange) => {
432
- modelExchanges += 1;
433
- if (exchange.status >= 400) {
434
- erroredExchanges += 1;
435
- errorStatuses.set(exchange.status, (errorStatuses.get(exchange.status) ?? 0) + 1);
436
- }
437
- enqueueBodyWrite(
438
- Buffer.byteLength(exchange.rawRequest) + Buffer.byteLength(exchange.rawResponse),
439
- () => persist(exchange),
440
- );
441
- },
442
- // A POST on a path no dialect claims is forwarded rather than refused, and lands in the trace
443
- // as the same `net.*` pair unrecognised TLS traffic does. AgenticReplay holds the bytes but not the
444
- // meaning, so it is evidence, not a replayable turn.
445
- onNetExchange: finishRequest,
446
- ...tls.proxyOptions,
447
- });
448
-
449
- async function persist(exchange: RecordedExchange): Promise<void> {
450
- const requestTurn = exchange.requestId ? requestTurns.get(exchange.requestId) : undefined;
451
- if (requestTurn === undefined) writer.markCaptureIncomplete('missing_model_correlation');
452
- await appendDerivedEvents(writer, deriver, exchange, requestTurn ?? 0, (derived) => {
453
- if (derived.type === 'tool.call' && isCommandTool(derived.attrs['input'])) {
454
- commandToolCalls += 1;
455
- }
456
- });
457
-
458
- if (fs) await appendSnapshot(fs, writer, out, requestTurn ?? 0);
459
- }
460
-
461
- await writer.append({
462
- type: 'run.start',
463
- actor: 'agenticreplay',
464
- turn: 0,
465
- attrs: { adapter: adapter.id, cwd, proxy: proxy.url },
466
- });
467
-
468
- // The source path, written down because a replay needs it and can get it nowhere else:
469
- // `manifest.argv` holds the agent's own arguments, and `--mcp-config` is agenticreplay's. Without this a
470
- // replay of an MCP-using run either loses the layer or cannot start the harness at all. Deferred
471
- // to here so `run.start` keeps seq 0 — see the note at the setup site.
472
- if (mcp && mcpConfigPath) {
473
- await writer.append({
474
- type: 'note',
475
- actor: 'agenticreplay',
476
- turn: 0,
477
- attrs: {
478
- rule: 'mcp_instrumented',
479
- source: resolve(cwd, mcpConfigPath),
480
- servers: mcp.rewritten.join(',') || undefined,
481
- skipped: mcp.skipped.join(',') || undefined,
482
- },
483
- operationalPathAttrs: ['source'],
484
- });
485
- }
486
-
487
- if (fs) await appendSnapshot(fs, writer, out, 0, { initial: true });
488
-
489
- /**
490
- * Give up on a run that has already started, then re-throw.
491
- *
492
- * Two failures share this path, and both were silent in their own way.
493
- *
494
- * A listening proxy keeps Node's event loop alive, so a throw printed the error and then hung
495
- * — `agenticreplay record generic-openai -- /nonexistent` never exited, and mistyping an agent name is
496
- * the first thing a new user does. And an unsealed trace has no `ended_at`, `counts` or
497
- * `integrity`, so everything the agent did is on disk while `verifyIntegrity` reports the run as
498
- * *tampered* rather than as unfinished.
499
- *
500
- * Sealing rather than discarding: a run that died is often the run you most want to read, and
501
- * the exit code is unknown rather than zero, so it is left absent.
502
- */
503
- async function abandon(err: unknown): Promise<never> {
504
- await proxy.close().catch(() => undefined);
505
- await writes.drain().catch(() => undefined);
506
- if (ca) await ca.dispose().catch(() => undefined);
507
- await writer
508
- .append({ type: 'run.end', actor: 'agenticreplay', turn, attrs: { error: String(err) } })
509
- .catch(() => undefined);
510
- await writer.close().catch(() => undefined);
511
- throw err;
512
- }
513
-
514
- /*
515
- * Everything from here to the child's exit runs with the proxy already listening, so everything
516
- * from here to the child's exit has to come back through `abandon`.
517
- *
518
- * The guard used to start at the spawn, which covered the failure it was written for — an agent
519
- * that is not on PATH — and missed the one that happens first. An adapter validates the
520
- * invocation in `prepare`, before anything is spawned: `agenticreplay record node agent.mjs`, with the
521
- * `--` left out, printed exactly the right message about the `--` and then hung forever. So did
522
- * a failure to snapshot the session directory, or to trust the run CA.
523
- */
524
- const { launch, sessionBefore } = await (async () => {
525
- try {
526
- const ctx: RecordContext = {
527
- runId: writer.runId,
528
- cwd,
529
- proxyUrl: proxy.url,
530
- runDir: writer.runDir,
531
- userArgs: args.passthrough,
532
- env: process.env,
533
- };
534
- const prepared = await adapter.prepare(ctx);
535
-
536
- // Listed before the agent starts, so the file it writes can be told from the ones already
537
- // there. The harness's transcript is the only record of what the person typed; without it an
538
- // interactive run is captured but not replayable.
539
- const before = await snapshotDir(adapter.session?.dir(cwd, process.env));
540
-
541
- if (shell) {
542
- prepared.env.PATH = `${shell.dir}${delimiter}${process.env.PATH ?? ''}`;
543
- }
544
- if (agentSpans) {
545
- // Both, or neither works: PYTHONPATH is how Python finds the bootstrap, and the variable is
546
- // what tells the bootstrap this is a recording rather than an ordinary Python process.
547
- prepared.env.PYTHONPATH = pythonPathWith(
548
- agentSpans.pythonPath,
549
- process.env.PYTHONPATH,
550
- delimiter,
551
- );
552
- if (args.bool('agent-spans', true)) prepared.env[SPANS_ENV] = agentSpans.spansPath;
553
- }
554
- if (mcp) {
555
- pointAtMcpConfig(prepared.env, mcp.configPath);
556
- // The variables above are belt and braces for a harness agenticreplay has not met. What actually
557
- // reaches Claude Code is this: it takes the path on the command line and reads no
558
- // environment variable for it, so without this the instrumented config was written and
559
- // never opened.
560
- const mcpArgs = adapter.mcpConfigArgs?.(mcp.configPath);
561
- if (mcpArgs !== undefined) prepared.args = [...mcpArgs, ...prepared.args];
562
- else
563
- out.warn('mcp.not_wired', {
564
- adapter: adapter.id,
565
- cause: `${adapter.id} has no command-line form for an MCP config, and reads none of the variables agenticreplay sets`,
566
- effect:
567
- 'the instrumented config exists but the agent will not load it, so no MCP frames will be captured',
568
- });
569
- }
570
-
571
- if (proxy.tls) {
572
- await trustRunCa(writer, proxy.tls, proxy.url, prepared.env, out);
573
- }
574
-
575
- return { launch: prepared, sessionBefore: before };
576
- } catch (err) {
577
- return abandon(err);
578
- }
579
- })();
580
-
581
- out.phase('recording', {
582
- run: writer.runId,
583
- adapter: adapter.id,
584
- proxy: proxy.url,
585
- // `proxy` is agenticreplay's own address, so the line said where the agent would call and never where
586
- // the call would go on to. A gateway left behind in `~/.agenticreplay/config.json` redirects every run
587
- // on the machine, and the first sign of it used to be an answer from a model nobody asked for.
588
- //
589
- // Only when something was configured. Left alone, each dialect has its own vendor default and
590
- // there is no single value to print — and `upstream=default` on every ordinary run is noise
591
- // that would teach people to stop reading the line. The trace records the origin either way,
592
- // per exchange, because that is where it is actually decided.
593
- ...(distinctOrigins(plan.upstream).length > 0
594
- ? { upstream: distinctOrigins(plan.upstream).join(',') }
595
- : {}),
596
- fs: fs ? 'on' : 'off',
597
- shell: shell ? 'on' : 'off',
598
- });
599
-
600
- let exitCode: number;
601
- try {
602
- exitCode = await runChild(
603
- launch.command,
604
- launch.args,
605
- { ...process.env, ...launch.env },
606
- launch.cwd ?? cwd,
607
- // Under --json, stdout is the result document. The agent's own output must not land in it.
608
- args.bool('json'),
609
- );
610
- } catch (err) {
611
- return abandon(err);
612
- }
613
-
614
- await writes.drain().catch((err: unknown) => {
615
- writer.markCaptureIncomplete('storage_failure');
616
- out.warn('capture.storage_failure', { detail: String(err) });
617
- });
618
-
619
- /** The turn an out-of-band frame belongs to: the last one that had begun when it happened. */
620
- function turnAt(at: number): number {
621
- let found = 0;
622
- for (const mark of turnStartedAt) {
623
- if (mark.at > at) break;
624
- found = mark.turn;
625
- }
626
- return found;
627
- }
628
-
629
- if (shell) {
630
- // Timestamped from the frame, not from now. These are read off disk after the agent has
631
- // exited, so stamping them at write time put every shell command at the end of the run with
632
- // the final turn number — which makes `mono_us` describe the drain rather than the command,
633
- // and leaves the commands unable to interleave with the model turns they happened between.
634
- const frames = await readShellFrames(shell.framesPath);
635
- // Read, then gone, for the same reason the spans transport is: every frame is about to be
636
- // appended through `writer.append`, which redacts, and what is left on disk afterwards is a
637
- // verbatim copy of every command line the agent ran that nothing reads and `agenticreplay scrub` never
638
- // rewrites. Before the appends rather than after, so an append that throws still takes it.
639
- const framesLeft =
640
- shell.transportDir === undefined ? undefined : await discardShellFrames(shell.transportDir);
641
- if (framesLeft !== undefined) out.warn('shell_frames.not_removed', { reason: framesLeft });
642
- shellFrames = frames.length;
643
- for (const frame of frames) {
644
- const startedAt = Date.parse(frame.startedAt);
645
- const at = Number.isNaN(startedAt) ? undefined : new Date(startedAt);
646
- const frameTurn = at === undefined ? turn : turnAt(startedAt);
647
- const exec = await writer.append({
648
- type: 'shell.exec',
649
- actor: 'harness',
650
- turn: frameTurn,
651
- ...(at === undefined ? {} : { occurredAt: at }),
652
- attrs: { argv: [frame.name, ...frame.argv], cwd: frame.cwd },
653
- });
654
- await writer.append({
655
- type: 'shell.result',
656
- actor: 'harness',
657
- turn: frameTurn,
658
- causes: [exec.seq],
659
- // The result happened when the command finished, which is what its duration measures.
660
- ...(at === undefined ? {} : { occurredAt: new Date(startedAt + frame.durationMs) }),
661
- attrs: {
662
- exit_code: frame.exitCode,
663
- signal: frame.signal,
664
- duration_ms: frame.durationMs,
665
- stdout_bytes: frame.stdoutBytes,
666
- stderr_bytes: frame.stderrBytes,
667
- },
668
- });
669
- }
670
- }
671
-
672
- if (agentSpans) {
673
- // Timestamped from the span, like the shell frames above and for the same reason: these are
674
- // read off disk after the agent exited, so stamping them now would file every handoff at the
675
- // end of the run rather than between the turns it happened between.
676
- const spans = await readAgentSpans(agentSpans.spansPath);
677
- // Read, then gone. Everything the trace keeps from this file is about to be appended through
678
- // `writer.append`, which redacts; what is left on disk afterwards is a copy nothing reads and
679
- // nothing scrubs. Before the appends rather than after, so an append that throws still takes
680
- // the transport with it.
681
- const spansLeft = await discardAgentSpanTransport(agentSpans.transportDir);
682
- if (spansLeft !== undefined) out.warn('agent_spans.not_removed', { reason: spansLeft });
683
- // Before the events, because both say the trace is about to be less complete than it looks,
684
- // and the operator reads the top of the drain rather than the bottom.
685
- const losses = agentSpanLosses(spans);
686
- // The second gate. The bootstrap now applies the first one itself — it reports a package only
687
- // once the agent actually imports the framework — so what is left here is the case where a run
688
- // captured no model traffic at all. `capture.empty` below already says that larger thing, and
689
- // naming a missing package on top of it would send someone to `pip install` over a problem
690
- // that is not about a package.
691
- for (const pkg of modelExchanges > 0 ? losses.unavailable : []) {
692
- // The prose comes from the adapter table, so a package cannot be reported with another
693
- // package's explanation — which is exactly what happened when this text was a constant and a
694
- // second adapter arrived.
695
- const adapter = PYTHON_ADAPTERS.find((entry) => entry.package === pkg);
696
- out.warn('agent_spans.unavailable', {
697
- package: pkg,
698
- // What was actually observed, rather than what it suggests. The bootstrap saw the
699
- // framework's own module being imported and confirmed with `importlib.metadata` that a
700
- // distribution provides that name; it does not know what the agent then did with it.
701
- cause: `${adapter?.distribution ?? 'the framework'} was imported and this package is not installed`,
702
- effect: `the run is recorded, without ${adapter?.lost ?? 'the structure only it can see'}`,
703
- next: `pip install ${pkg}`,
704
- });
705
- }
706
- if (losses.dropped > 0) {
707
- out.warn('agent_spans.dropped', {
708
- count: losses.dropped,
709
- // Which adapter, where it said. Several write to one transport, so the total on its own
710
- // says how much was lost and nothing about where to look.
711
- ...(losses.droppedBy.length > 0 ? { package: losses.droppedBy.join(', ') } : {}),
712
- cause: 'the adapter could not serialise or could not write these records',
713
- });
714
- }
715
- for (const span of spans) {
716
- const derived = eventForSpan(span);
717
- if (derived === undefined) continue;
718
- // When the span happened, from whichever end it carries. A record that closes something has
719
- // only `ended_at`, and reading `started_at` alone stamped every one of them from the drain's
720
- // own clock — which runs after the agent has exited. Measured on a three-node graph: all
721
- // three `graph.node.end` events landed at the same instant, 600ms after the run, so the
722
- // first node appeared to finish after the second had started and the timeline said the
723
- // opposite of what happened. `occurredAt` is also what `turnAt` reads, so the same mistake
724
- // filed them under the wrong turn.
725
- const startedAt = Date.parse(String(span.started_at ?? span.ended_at ?? ''));
726
- const at = Number.isNaN(startedAt) ? undefined : new Date(startedAt);
727
- await writer.append({
728
- type: derived.type as 'agent.start',
729
- // `harness`, not `agenticreplay`: we did not observe this, we were told it.
730
- actor: 'harness',
731
- turn: at === undefined ? turn : turnAt(startedAt),
732
- ...(at === undefined ? {} : { occurredAt: at }),
733
- attrs: derived.attrs,
734
- });
735
- }
736
- }
737
-
738
- if (mcp) await drainMcpFrames(mcp, writer, turnAt, turn);
739
-
740
- const orphans = deriver.unresolved();
741
- if (orphans.length > 0) {
742
- await writer.append({
743
- type: 'note',
744
- actor: 'agenticreplay',
745
- turn,
746
- attrs: { rule: 'unresolved_tool_calls', ids: orphans.map((o) => o.id) },
747
- });
748
- }
749
-
750
- // Before the trace is sealed, not after. A tunnel's record is only complete when its socket
751
- // closes, and closing the proxy is what closes the ones an exiting agent left open — so a
752
- // `proxy.close()` after `writer.close()` produced tunnel records with nowhere to go.
753
- await proxy.close();
754
- await writes.drain().catch((err: unknown) => {
755
- writer.markCaptureIncomplete('storage_failure');
756
- out.warn('capture.storage_failure', { detail: String(err) });
757
- });
758
- // The CA dies with the run. `dispose` is idempotent and best-effort: failing to delete a key is
759
- // worth a warning, never worth losing the trace the user was recording.
760
- if (ca) {
761
- try {
762
- await ca.dispose();
763
- } catch (err) {
764
- out.warn('tls.ca_not_removed', { path: ca.dir, reason: String(err) });
765
- }
766
- }
767
-
768
- /**
769
- * The harness's own transcript, and with it the prompts nothing on the wire carries.
770
- *
771
- * Written before `run.end` so it is part of the run rather than an appendix, and stored as the
772
- * harness's own bytes so a fork can put the file back and resume into it natively.
773
- */
774
- let session: Awaited<ReturnType<typeof captureSession>>;
775
- if (adapter.session) {
776
- try {
777
- session = await captureSession(adapter.session, cwd, process.env, sessionBefore);
778
- } catch (err) {
779
- out.warn('session.unavailable', { reason: String(err) });
780
- }
781
- }
782
- if (session) {
783
- await writer.append({
784
- type: 'session.snapshot',
785
- actor: 'harness',
786
- turn,
787
- attrs: {
788
- harness: adapter.id,
789
- session_id: session.id,
790
- rel_path: session.relPath,
791
- prompts: session.prompts.length,
792
- bytes: session.bytes.byteLength,
793
- },
794
- // The writer spills anything over the inline limit to a content-addressed blob, so the
795
- // transcript rides the same path every other large payload does — redaction included.
796
- payload: {
797
- prompts: session.prompts,
798
- transcript: new TextDecoder().decode(session.bytes),
799
- },
800
- });
801
- }
802
-
803
- const observed = networkExchanges;
804
- if (requestTurns.size !== networkExchanges) writer.markCaptureIncomplete('unfinalized_request');
805
- if (retrievalStore === 'digest') writer.markCaptureIncomplete('body_storage_disabled');
806
- writer.setCaptureSummary({
807
- status: observed > 0 ? 'complete' : 'incomplete',
808
- issues: observed > 0 ? [] : ['no_requests_observed'],
809
- body_limit_bytes: captureLimits(args).maxCapturedBytes,
810
- requests: requestTurns.size,
811
- responses: networkExchanges,
812
- });
813
- await writer.append({
814
- type: 'run.end',
815
- actor: 'agenticreplay',
816
- turn,
817
- attrs: { exit_code: exitCode },
818
- });
819
- const manifest = await writer.close(exitCode);
820
-
821
- out.phase('recorded', {
822
- run: writer.runId,
823
- events: manifest.counts?.events ?? writer.seq,
824
- blobs: manifest.counts?.blobs ?? 0,
825
- exit: exitCode,
826
- capture: manifest.capture?.status ?? 'unverified',
827
- dir: writer.runDir,
828
- });
829
-
830
- /**
831
- * The quietest way agenticreplay can fail, and the most damaging.
832
- *
833
- * Capture works by pointing a base-URL variable at the proxy, so a harness that reads none of
834
- * them is never redirected — and there is nothing to notice. The agent answers, the exit code is
835
- * zero, and the trace is empty. An agent with its origin compiled into source is the live
836
- * example: it never consults a base-URL variable, so `agenticreplay record` produces exactly this.
837
- *
838
- * `contract.ts` already names this shape as what the adapter checks exist to prevent. They guard
839
- * the adapters; this guards the run, which is where a user actually meets it.
840
- */
841
- if (modelExchanges === 0) {
842
- const baseUrls = Object.keys(launch.env)
843
- .filter((name) => /(?:_BASE_URL|_API_BASE)$/.test(name))
844
- .sort();
845
- // Which cause is worth naming depends on how this adapter captures at all, and the line
846
- // already carries the evidence: `set=none` means there was never a variable to be ignored.
847
- // Printing "it may not read a base-URL variable" next to `set=none` contradicts the run's own
848
- // output and sends the reader after a route that was never the route -- which is how the
849
- // capture bug fixed earlier in this branch stayed hidden through a dozen rounds of debugging.
850
- //
851
- // The proxy's own counters come first, because they settle the question the other branches
852
- // are guessing at. A call agenticreplay forwarded is a call the agent made *to agenticreplay*: the variables
853
- // were read and the redirection worked, so "the agent never called the proxy" is false on its
854
- // face and costs the reader a search through a configuration that was right all along.
855
- const captured = proxy.stats().retrievalTotal;
856
- const opaque = proxy.stats().passedThrough - captured;
857
- const paths = unclaimed.list();
858
-
859
- // An index build is the case: every call it makes is an embedding, and every one of them is
860
- // recorded *and* replayable. There is nothing wrong with that run, and warning about it would
861
- // teach someone to ignore the line that matters. Said as a fact rather than as a problem.
862
- const retrievalOnly = captured > 0 && opaque === 0;
863
- const cause =
864
- opaque > 0
865
- ? `the agent called the proxy ${opaque} time(s), on ` +
866
- `${paths.length > 0 ? paths.join(', ') : 'paths no wire dialect claims'} — recorded as ` +
867
- 'network traffic rather than as replayable model exchanges'
868
- : baseUrls.length > 0
869
- ? 'the agent never called the proxy — it may not read a base-URL variable'
870
- : adapter.capture === 'config'
871
- ? // Not a missing flag. This adapter redirects by writing the harness's own config,
872
- // so an empty capture means there was nothing in that config to redirect — the
873
- // harness has no provider configured, or it is on a built-in login whose origin a
874
- // file cannot move. Telling this operator to add `--tls-intercept` would send them
875
- // after a route that cannot work: MiniMax Code's client is Node's `fetch`, which
876
- // reads no proxy variable, so interception sees nothing either.
877
- `${adapter.id} is redirected through its own config, and this run had no ` +
878
- 'configured provider to redirect'
879
- : tls.ca
880
- ? 'this adapter captures at the transport, and nothing agenticreplay decrypted looked like a model call'
881
- : 'this adapter captures at the transport, and interception was not on';
882
- if (retrievalOnly) {
883
- out.info('capture.retrieval_only', {
884
- exchanges: 0,
885
- retrieval: captured,
886
- // Under `digest` the trace holds a hash of each answer and not the answer, so promising
887
- // an offline replay would be a claim this run cannot meet — which is the shape of
888
- // dishonesty every other line here exists to avoid.
889
- note:
890
- retrievalStore === 'digest'
891
- ? 'this run made no model calls, and --retrieval-store=digest kept only a hash of ' +
892
- 'each answer: enough to check a later run agreed, not enough to replay'
893
- : 'this run made no model calls; its retrieval calls are recorded and replay offline',
894
- });
895
- } else {
896
- out.warn('capture.empty', {
897
- exchanges: 0,
898
- cause,
899
- ...(opaque > 0 ? { passed_through: opaque } : {}),
900
- ...(captured > 0 ? { retrieval: captured } : {}),
901
- set: baseUrls.join(',') || 'none',
902
- next: opaque > 0 ? 'agenticreplay show to read what was forwarded' : 'agenticreplay doctor',
903
- });
904
- }
905
- }
906
-
907
- /**
908
- * Every model call came back an error.
909
- *
910
- * `capture.empty` covers the run the proxy never saw. This covers the run it saw all of, where
911
- * every answer was a refusal: an expired gateway credential, a model the account cannot reach, a
912
- * provider outage. The harness retries, exhausts its attempts, prints its own error and exits 0,
913
- * so the summary reads exactly like a successful recording — `recorded events=27 exit=0` — over
914
- * a trace that contains no model output at all. Replaying it faithfully reproduces the failures.
915
- *
916
- * Only when *all* of them failed. A run that retried once and then worked is a run that worked,
917
- * and warning about it would train people to ignore the line that matters.
918
- */
919
- if (modelExchanges > 0 && erroredExchanges === modelExchanges) {
920
- const commonest = [...errorStatuses.entries()].sort((a, b) => b[1] - a[1])[0];
921
- out.warn('capture.errors', {
922
- exchanges: modelExchanges,
923
- errors: erroredExchanges,
924
- status: commonest ? commonest[0] : 'unknown',
925
- cause: 'every model call the proxy forwarded came back an error',
926
- effect: 'the trace holds the failures, not any model output — a replay reproduces those',
927
- next: 'agenticreplay show to read the errors, then check the upstream credential or model id',
928
- });
929
- }
930
-
931
- /**
932
- * Shell capture that was on and recorded nothing.
933
- *
934
- * `installShellShim` succeeding means a `sh`, a `bash` and a `zsh` were written into the run
935
- * directory and put at the front of PATH. It does not mean the harness went through them, and
936
- * on Windows Claude Code does not: it finds its shell without consulting PATH, so the shim sits
937
- * unused while `shell=on` is printed and the frames file stays empty. What is lost is precisely
938
- * what only the shim can see — the real exit code, the real duration, and which stream each byte
939
- * came from — while the commands still appear as tool calls, so nothing looks wrong.
940
- *
941
- * The condition is evidence, not a platform check: commands demonstrably ran and the layer that
942
- * was supposed to see them saw none of them, whatever the reason.
943
- */
944
- if (shell && shellFrames === 0 && commandToolCalls > 0) {
945
- out.warn('shell.ineffective', {
946
- commands: commandToolCalls,
947
- captured: 0,
948
- cause: 'the harness ran its shell without going through the PATH shim',
949
- effect: 'exit codes, durations and the stdout/stderr split are not in this trace',
950
- next: 'record with --no-shell, which claims nothing rather than claiming this',
951
- });
952
- }
953
-
954
- /**
955
- * A recording that captured turns but cannot be replayed.
956
- *
957
- * `capture.empty` covers the run that recorded nothing. This is the other half: an interactive
958
- * run records its model calls perfectly, but the prompts that caused them were typed into a
959
- * terminal and exist nowhere agenticreplay can see. Replaying it launches an agent with nothing to make
960
- * it ask anything, and it comes back blank — which the user discovers only after paying for the
961
- * recording. Saying so here, while they are still looking at it, is the whole point.
962
- */
963
- const drivable = args.passthrough.length > 0 || (session?.prompts.length ?? 0) > 0;
964
- if (modelExchanges > 0 && !drivable) {
965
- out.warn('replay.undrivable', {
966
- exchanges: modelExchanges,
967
- cause: adapter.session
968
- ? 'no prompt in argv, and none found in the harness transcript'
969
- : `no prompt in argv, and ${adapter.id} exposes no transcript agenticreplay can read`,
970
- effect: 'this run can be inspected, but replay and fork have nothing to drive the agent with',
971
- next: `agenticreplay show ${writer.runId}`,
972
- });
973
- }
974
-
975
- out.plain('');
976
- out.plain(` agenticreplay replay ${writer.runId} # reproduce it exactly`);
977
- out.plain(` agenticreplay replay ${writer.runId} --ui # open the timeline`);
978
-
979
- return {
980
- runId: writer.runId,
981
- runDir: writer.runDir,
982
- events: manifest.counts?.events ?? writer.seq,
983
- modelExchanges,
984
- childExitCode: exitCode,
985
- exitCode: exitCode !== 0 ? exitCode : manifest.capture?.status === 'incomplete' ? 2 : 0,
986
- };
987
- }
988
-
989
- /**
990
- * Launch the agent.
991
- *
992
- * `stdio: 'inherit'` by default, and that matters: an interactive harness needs the real terminal,
993
- * and anything less turns a TUI into a stream of escape codes.
994
- *
995
- * `quietStdout` is for `--json`, where agenticreplay's stdout is a document rather than a terminal. The
996
- * agent's own chatter is still shown — it moves to stderr, where a human reads it and a parser
997
- * does not. stdin and stderr stay inherited so the agent can still prompt and still colour.
998
- */
999
- async function runChild(
1000
- command: string,
1001
- argv: string[],
1002
- env: NodeJS.ProcessEnv,
1003
- cwd: string,
1004
- quietStdout = false,
1005
- ): Promise<number> {
1006
- // Resolved the way detection resolves, so a launcher never reports ENOENT for an agent that
1007
- // `agenticreplay doctor` just called present.
1008
- const target = await resolveLaunch(command, argv);
1009
- return new Promise((resolve, reject) => {
1010
- const child = spawn(target.file, target.args, {
1011
- env,
1012
- cwd,
1013
- shell: target.shell,
1014
- stdio: quietStdout ? ['inherit', 'pipe', 'inherit'] : 'inherit',
1015
- });
1016
- child.stdout?.pipe(process.stderr);
1017
- // Forward interrupts so Ctrl-C reaches the agent rather than orphaning it behind the proxy.
1018
- const forward = (signal: NodeJS.Signals) => () => child.kill(signal);
1019
- const onInt = forward('SIGINT');
1020
- const onTerm = forward('SIGTERM');
1021
- process.on('SIGINT', onInt);
1022
- process.on('SIGTERM', onTerm);
1023
-
1024
- child.on('error', (err) => {
1025
- process.off('SIGINT', onInt);
1026
- process.off('SIGTERM', onTerm);
1027
- reject(
1028
- new Error(
1029
- `could not launch "${command}"\n` +
1030
- ` ${String(err)}\n` +
1031
- ` is it installed and on your PATH?`,
1032
- ),
1033
- );
1034
- });
1035
- child.on('close', (code) => {
1036
- process.off('SIGINT', onInt);
1037
- process.off('SIGTERM', onTerm);
1038
- resolve(code ?? 0);
1039
- });
1040
- });
1041
- }
1042
-
1043
- /**
1044
- * The origins a configured upstream map actually names, deduplicated and safe to print.
1045
- *
1046
- * `resolveUpstream` writes one entry per dialect and `openai` and `openai-responses` always share
1047
- * a value — so the raw map renders a single gateway three times. What a reader wants is the set of
1048
- * places traffic can go, which is usually one.
1049
- *
1050
- * Through `recordableOrigin` for the same reason the trace goes through it, and against the same
1051
- * sentence: `agenticreplay setup --gateway` accepts a URL carrying the key — `https://user:pw@gw.example`,
1052
- * `https://gw.example?key=…` — and `config.ts` says of that file that "nothing ever prints it
1053
- * back". A line on the terminal is printing it back, and it is a line that ends up in CI logs.
1054
- */
1055
- export function distinctOrigins(upstream: Record<string, string> | undefined): string[] {
1056
- const safe = Object.values(upstream ?? {})
1057
- // Dropped only where sanitising cannot work, so a gateway configured with its key in the URL
1058
- // still says *where* the traffic went. `recordableOrigin` removes userinfo and query, which is
1059
- // enough for every `http(s)://` value — but a scheme-less URL parses with its username as the
1060
- // protocol, so it comes back as `myuser://PASSWORD@gw.example/v1`, credential intact, and a
1061
- // filter keeping everything that is not `undefined` kept it. There is no sanitising that: with
1062
- // no scheme there is no telling which half of `a:b` was meant as the host. `upstreamPlan`
1063
- // refuses these before a run starts; this is here because the function is exported and one
1064
- // line from a terminal.
1065
- .filter((origin) => unusableOrigin(origin) === undefined)
1066
- .map(recordableOrigin)
1067
- .filter((origin): origin is string => origin !== undefined);
1068
- return [...new Set(safe)];
1069
- }