agenticreplay 0.1.3 → 0.1.5

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 (167) hide show
  1. package/README.md +36 -912
  2. package/node_modules/@agenticreplay/adapters/dist/claude-code.d.ts.map +1 -1
  3. package/node_modules/@agenticreplay/adapters/dist/claude-code.js +7 -9
  4. package/node_modules/@agenticreplay/adapters/dist/claude-code.js.map +1 -1
  5. package/node_modules/@agenticreplay/adapters/dist/codex.d.ts.map +1 -1
  6. package/node_modules/@agenticreplay/adapters/dist/codex.js +0 -18
  7. package/node_modules/@agenticreplay/adapters/dist/codex.js.map +1 -1
  8. package/node_modules/@agenticreplay/adapters/dist/contract.d.ts +1 -1
  9. package/node_modules/@agenticreplay/adapters/dist/contract.d.ts.map +1 -1
  10. package/node_modules/@agenticreplay/adapters/dist/contract.js +0 -46
  11. package/node_modules/@agenticreplay/adapters/dist/contract.js.map +1 -1
  12. package/node_modules/@agenticreplay/adapters/dist/indexrag.d.ts.map +1 -1
  13. package/node_modules/@agenticreplay/adapters/dist/indexrag.js +0 -6
  14. package/node_modules/@agenticreplay/adapters/dist/indexrag.js.map +1 -1
  15. package/node_modules/@agenticreplay/adapters/dist/session.d.ts +2 -0
  16. package/node_modules/@agenticreplay/adapters/dist/session.d.ts.map +1 -1
  17. package/node_modules/@agenticreplay/adapters/dist/session.js +7 -1
  18. package/node_modules/@agenticreplay/adapters/dist/session.js.map +1 -1
  19. package/node_modules/@agenticreplay/adapters/package.json +6 -6
  20. package/node_modules/@agenticreplay/core/dist/graph.d.ts +0 -24
  21. package/node_modules/@agenticreplay/core/dist/graph.d.ts.map +1 -1
  22. package/node_modules/@agenticreplay/core/dist/graph.js +0 -68
  23. package/node_modules/@agenticreplay/core/dist/graph.js.map +1 -1
  24. package/node_modules/@agenticreplay/core/dist/index.d.ts +1 -0
  25. package/node_modules/@agenticreplay/core/dist/index.d.ts.map +1 -1
  26. package/node_modules/@agenticreplay/core/dist/index.js +1 -0
  27. package/node_modules/@agenticreplay/core/dist/index.js.map +1 -1
  28. package/node_modules/@agenticreplay/core/dist/paths.d.ts +1 -12
  29. package/node_modules/@agenticreplay/core/dist/paths.d.ts.map +1 -1
  30. package/node_modules/@agenticreplay/core/dist/paths.js +9 -26
  31. package/node_modules/@agenticreplay/core/dist/paths.js.map +1 -1
  32. package/node_modules/@agenticreplay/core/dist/run-names.d.ts +7 -0
  33. package/node_modules/@agenticreplay/core/dist/run-names.d.ts.map +1 -0
  34. package/node_modules/@agenticreplay/core/dist/run-names.js +79 -0
  35. package/node_modules/@agenticreplay/core/dist/run-names.js.map +1 -0
  36. package/node_modules/@agenticreplay/core/dist/writer.d.ts +5 -9
  37. package/node_modules/@agenticreplay/core/dist/writer.d.ts.map +1 -1
  38. package/node_modules/@agenticreplay/core/dist/writer.js +38 -11
  39. package/node_modules/@agenticreplay/core/dist/writer.js.map +1 -1
  40. package/node_modules/@agenticreplay/core/package.json +4 -3
  41. package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts +4 -15
  42. package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts.map +1 -1
  43. package/node_modules/@agenticreplay/fs-capture/dist/capture.js +22 -33
  44. package/node_modules/@agenticreplay/fs-capture/dist/capture.js.map +1 -1
  45. package/node_modules/@agenticreplay/fs-capture/dist/shadow.d.ts +0 -39
  46. package/node_modules/@agenticreplay/fs-capture/dist/shadow.d.ts.map +1 -1
  47. package/node_modules/@agenticreplay/fs-capture/dist/shadow.js +0 -63
  48. package/node_modules/@agenticreplay/fs-capture/dist/shadow.js.map +1 -1
  49. package/node_modules/@agenticreplay/fs-capture/package.json +2 -2
  50. package/node_modules/@agenticreplay/mcp-shim/dist/cli.d.ts +0 -2
  51. package/node_modules/@agenticreplay/mcp-shim/dist/cli.d.ts.map +1 -1
  52. package/node_modules/@agenticreplay/mcp-shim/dist/cli.js +2 -92
  53. package/node_modules/@agenticreplay/mcp-shim/dist/cli.js.map +1 -1
  54. package/node_modules/@agenticreplay/mcp-shim/dist/index.d.ts +0 -1
  55. package/node_modules/@agenticreplay/mcp-shim/dist/index.d.ts.map +1 -1
  56. package/node_modules/@agenticreplay/mcp-shim/dist/index.js +0 -1
  57. package/node_modules/@agenticreplay/mcp-shim/dist/index.js.map +1 -1
  58. package/node_modules/@agenticreplay/mcp-shim/package.json +1 -1
  59. package/node_modules/@agenticreplay/node-instrument/package.json +1 -1
  60. package/node_modules/@agenticreplay/plugin-api/dist/plugins.d.ts +10 -212
  61. package/node_modules/@agenticreplay/plugin-api/dist/plugins.d.ts.map +1 -1
  62. package/node_modules/@agenticreplay/plugin-api/package.json +1 -1
  63. package/node_modules/@agenticreplay/providers/package.json +3 -3
  64. package/node_modules/@agenticreplay/proxy/dist/dialects.d.ts +3 -29
  65. package/node_modules/@agenticreplay/proxy/dist/dialects.d.ts.map +1 -1
  66. package/node_modules/@agenticreplay/proxy/dist/dialects.js +3 -69
  67. package/node_modules/@agenticreplay/proxy/dist/dialects.js.map +1 -1
  68. package/node_modules/@agenticreplay/proxy/dist/index.d.ts +0 -2
  69. package/node_modules/@agenticreplay/proxy/dist/index.d.ts.map +1 -1
  70. package/node_modules/@agenticreplay/proxy/dist/index.js +0 -2
  71. package/node_modules/@agenticreplay/proxy/dist/index.js.map +1 -1
  72. package/node_modules/@agenticreplay/proxy/dist/intercept.d.ts +0 -48
  73. package/node_modules/@agenticreplay/proxy/dist/intercept.d.ts.map +1 -1
  74. package/node_modules/@agenticreplay/proxy/dist/intercept.js +32 -157
  75. package/node_modules/@agenticreplay/proxy/dist/intercept.js.map +1 -1
  76. package/node_modules/@agenticreplay/proxy/dist/server.d.ts +2 -148
  77. package/node_modules/@agenticreplay/proxy/dist/server.d.ts.map +1 -1
  78. package/node_modules/@agenticreplay/proxy/dist/server.js +25 -874
  79. package/node_modules/@agenticreplay/proxy/dist/server.js.map +1 -1
  80. package/node_modules/@agenticreplay/proxy/package.json +5 -5
  81. package/node_modules/@agenticreplay/schema/package.json +1 -1
  82. package/node_modules/@agenticreplay/shell-shim/dist/install.d.ts.map +1 -1
  83. package/node_modules/@agenticreplay/shell-shim/dist/install.js +5 -2
  84. package/node_modules/@agenticreplay/shell-shim/dist/install.js.map +1 -1
  85. package/node_modules/@agenticreplay/shell-shim/package.json +3 -3
  86. package/node_modules/@agenticreplay/viewer/package.json +2 -2
  87. package/node_modules/any-ascii/LICENSE +15 -0
  88. package/node_modules/any-ascii/README.md +20 -0
  89. package/node_modules/any-ascii/any-ascii.d.ts +4 -0
  90. package/node_modules/any-ascii/any-ascii.js +30 -0
  91. package/node_modules/any-ascii/block.js +645 -0
  92. package/node_modules/any-ascii/package.json +32 -0
  93. package/node_modules/any-ascii/test.js +83 -0
  94. package/package.json +13 -14
  95. package/packages/cli/dist/api.d.ts +1 -27
  96. package/packages/cli/dist/api.d.ts.map +1 -1
  97. package/packages/cli/dist/api.js +2 -31
  98. package/packages/cli/dist/api.js.map +1 -1
  99. package/packages/cli/dist/args.d.ts.map +1 -1
  100. package/packages/cli/dist/args.js +0 -7
  101. package/packages/cli/dist/args.js.map +1 -1
  102. package/packages/cli/dist/commands/attach.d.ts +1 -4
  103. package/packages/cli/dist/commands/attach.d.ts.map +1 -1
  104. package/packages/cli/dist/commands/attach.js +24 -109
  105. package/packages/cli/dist/commands/attach.js.map +1 -1
  106. package/packages/cli/dist/commands/cost.d.ts +3 -0
  107. package/packages/cli/dist/commands/cost.d.ts.map +1 -0
  108. package/packages/cli/dist/commands/cost.js +13 -0
  109. package/packages/cli/dist/commands/cost.js.map +1 -0
  110. package/packages/cli/dist/commands/gc.d.ts +0 -2
  111. package/packages/cli/dist/commands/gc.d.ts.map +1 -1
  112. package/packages/cli/dist/commands/gc.js +3 -47
  113. package/packages/cli/dist/commands/gc.js.map +1 -1
  114. package/packages/cli/dist/commands/inspect.d.ts +0 -2
  115. package/packages/cli/dist/commands/inspect.d.ts.map +1 -1
  116. package/packages/cli/dist/commands/inspect.js +4 -30
  117. package/packages/cli/dist/commands/inspect.js.map +1 -1
  118. package/packages/cli/dist/commands/quickstart.d.ts +2 -34
  119. package/packages/cli/dist/commands/quickstart.d.ts.map +1 -1
  120. package/packages/cli/dist/commands/quickstart.js +32 -340
  121. package/packages/cli/dist/commands/quickstart.js.map +1 -1
  122. package/packages/cli/dist/commands/record.d.ts.map +1 -1
  123. package/packages/cli/dist/commands/record.js +27 -101
  124. package/packages/cli/dist/commands/record.js.map +1 -1
  125. package/packages/cli/dist/commands/setup.d.ts.map +1 -1
  126. package/packages/cli/dist/commands/setup.js +1 -30
  127. package/packages/cli/dist/commands/setup.js.map +1 -1
  128. package/packages/cli/dist/commands/sync.d.ts.map +1 -1
  129. package/packages/cli/dist/commands/sync.js +18 -4
  130. package/packages/cli/dist/commands/sync.js.map +1 -1
  131. package/packages/cli/dist/config.d.ts +1 -4
  132. package/packages/cli/dist/config.d.ts.map +1 -1
  133. package/packages/cli/dist/config.js.map +1 -1
  134. package/packages/cli/dist/flags.d.ts.map +1 -1
  135. package/packages/cli/dist/flags.js +4 -45
  136. package/packages/cli/dist/flags.js.map +1 -1
  137. package/packages/cli/dist/fs-events.d.ts +2 -13
  138. package/packages/cli/dist/fs-events.d.ts.map +1 -1
  139. package/packages/cli/dist/fs-events.js +5 -64
  140. package/packages/cli/dist/fs-events.js.map +1 -1
  141. package/packages/cli/dist/index.d.ts +0 -2
  142. package/packages/cli/dist/index.d.ts.map +1 -1
  143. package/packages/cli/dist/index.js +0 -2
  144. package/packages/cli/dist/index.js.map +1 -1
  145. package/packages/cli/dist/main.d.ts.map +1 -1
  146. package/packages/cli/dist/main.js +12 -67
  147. package/packages/cli/dist/main.js.map +1 -1
  148. package/packages/cli/dist/mcp-server.d.ts.map +1 -1
  149. package/packages/cli/dist/mcp-server.js +3 -86
  150. package/packages/cli/dist/mcp-server.js.map +1 -1
  151. package/packages/cli/dist/mcp.d.ts +1 -73
  152. package/packages/cli/dist/mcp.d.ts.map +1 -1
  153. package/packages/cli/dist/mcp.js +3 -113
  154. package/packages/cli/dist/mcp.js.map +1 -1
  155. package/packages/cli/dist/share-card.d.ts +0 -20
  156. package/packages/cli/dist/share-card.d.ts.map +1 -1
  157. package/packages/cli/dist/share-card.js +0 -63
  158. package/packages/cli/dist/share-card.js.map +1 -1
  159. package/packages/cli/dist/snapshot.d.ts +2 -5
  160. package/packages/cli/dist/snapshot.d.ts.map +1 -1
  161. package/packages/cli/dist/snapshot.js +2 -3
  162. package/packages/cli/dist/snapshot.js.map +1 -1
  163. package/packages/cli/dist/tls-capture.d.ts +1 -17
  164. package/packages/cli/dist/tls-capture.d.ts.map +1 -1
  165. package/packages/cli/dist/tls-capture.js +7 -77
  166. package/packages/cli/dist/tls-capture.js.map +1 -1
  167. package/packages/cli/package.json +11 -11
@@ -1,11 +1,10 @@
1
- import type { CanonicalChunk, CanonicalRequest, ModelInfo, Money, Usage } from './canonical.js';
2
1
  /** Everything an adapter needs to know about the run it is preparing. */
3
2
  export interface RecordContext {
4
3
  runId: string;
5
4
  cwd: string;
6
5
  /** Base URL of the local recording proxy, e.g. http://127.0.0.1:51733 */
7
6
  proxyUrl: string;
8
- /** Directory the run may write scratch config into. */
7
+ /** Directory the adapter may write temporary capture configuration into. */
9
8
  runDir: string;
10
9
  /** Argv the user passed after the agent name. */
11
10
  userArgs: string[];
@@ -18,241 +17,40 @@ export interface Launch {
18
17
  /** Environment overlay merged onto the parent environment. */
19
18
  env: Record<string, string>;
20
19
  cwd?: string;
21
- /** Files the adapter wrote (rewritten MCP configs, shims) for cleanup and provenance. */
20
+ /** Files the adapter wrote for cleanup and capture provenance. */
22
21
  tempFiles?: string[];
23
22
  }
24
23
  /** How to launch and instrument one agent harness. */
25
24
  export interface Adapter {
26
25
  id: string;
27
- /**
28
- * Other names this adapter answers to on the command line.
29
- *
30
- * The id is a stable internal handle written into every manifest; an alias is what a human
31
- * types, which is almost always the name of the binary they run. `claude-code` and `claude` are
32
- * the canonical example — keeping them separate means the manifest stays unambiguous while
33
- * `agenticreplay record claude` does what anyone would expect it to.
34
- */
26
+ /** Other names this adapter answers to on the command line. */
35
27
  aliases?: readonly string[];
36
28
  /** Semver range of harness versions this adapter is tested against. */
37
29
  harnessVersions?: string;
38
- /**
39
- * How this adapter gets the agent's traffic to agenticreplay.
40
- *
41
- * `env` — the default, and what every harness-specific adapter does: point a base-URL variable
42
- * at the proxy, or install the fetch hook, so the agent connects to a local origin in plaintext.
43
- *
44
- * `transport` — the adapter redirects nothing and relies on `--tls-intercept`, which is applied
45
- * to the launched child by the run rather than by the adapter. Declared rather than inferred,
46
- * because "sets no base-URL variable" is otherwise indistinguishable from the broken adapter the
47
- * contract's `redirects-model-traffic` check exists to catch. An adapter that says `transport`
48
- * is asserting that pointing nowhere is the intent, and takes the check's exemption in exchange.
49
- *
50
- * `config` — the adapter redirects through a configuration file rather than the environment,
51
- * for a harness that keeps its origin in one and reads no variable for it. MiniMax Code is the
52
- * first: `MINIMAX_DATA_DIR` moves the whole data directory, and the config agenticreplay writes there
53
- * carries the redirect. It takes the same exemption as `transport` and for the same reason —
54
- * the redirect is real but is not an environment variable, so a check that only reads the
55
- * launch environment is scoring it against a mechanism it does not use. What it redirects is
56
- * checked where the file can actually be read: the adapter's own tests.
57
- */
30
+ /** How this adapter gets the agent's traffic to AgenticReplay. */
58
31
  capture?: 'env' | 'transport' | 'config';
59
32
  detect(cwd: string): Promise<boolean>;
60
33
  prepare(ctx: RecordContext): Promise<Launch>;
61
- /**
62
- * The harness's own session records, where it keeps any.
63
- *
64
- * AgenticReplay's capture layers see what a run *did*; only the harness knows what it was *asked*. A run
65
- * driven by hand has its prompts nowhere on the wire, so without this a replay launches an agent
66
- * with nothing to make it ask anything. Supplying it is what makes an interactive recording
67
- * replayable and forkable at all.
68
- */
34
+ /** The harness transcript reader used to record prompts that do not appear on the wire. */
69
35
  session?: SessionSupport;
70
- /**
71
- * Arguments that load an MCP config from a path, for a harness that takes one.
72
- *
73
- * The environment variables agenticreplay sets alongside this are read by none of the harnesses it
74
- * targets: Claude Code loads MCP servers from `.mcp.json`, from the user config, or from
75
- * `--mcp-config`, and ignores `CLAUDE_MCP_CONFIG` entirely — so `agenticreplay record --mcp-config`
76
- * instrumented a copy of the file and then launched an agent that never opened it. The capture
77
- * reported success and recorded no frames, which is the same silent shape the base-URL variables
78
- * had before an adapter passed those on the command line too.
79
- */
36
+ /** Arguments that load an MCP config from a path, for a harness that takes one. */
80
37
  mcpConfigArgs?(path: string): string[] | undefined;
81
- /**
82
- * Arguments that drive this harness through a recorded prompt with no terminal attached.
83
- *
84
- * `recorded` is the argv the run was made with, so an adapter can extend it rather than replace
85
- * it — the flags that shaped the recording still have to shape the replay.
86
- */
87
- driveArgs?(prompts: string[], recorded: string[]): string[] | undefined;
88
- /**
89
- * What this harness leaves on disk that the run cannot be understood or reproduced without.
90
- *
91
- * Optional, and most harnesses need none of it: a coding agent's output *is* the working tree,
92
- * which the ordinary snapshot already captures. A pipeline is the case this exists for — its
93
- * whole product is an index or a cache, written to a path its own `.gitignore` excludes,
94
- * because nobody wants a hundred megabytes of vectors in their repository.
95
- */
38
+ /** Additional ignored paths that are meaningful agent outputs and should be recorded. */
96
39
  artifacts?: HarnessArtifacts;
97
- /**
98
- * Argv for a replay, for a harness that carries no prompt at all.
99
- *
100
- * {@link driveArgs} answers "what makes the agent ask the recorded question again", and it only
101
- * applies to a harness with a transcript agenticreplay can read. A pipeline has neither: its argv *is*
102
- * the whole instruction and there is nothing to recover. This hook is reached before the
103
- * transcript is consulted, so such an adapter can still adjust what the replay runs — clamping
104
- * a concurrency flag, say — instead of having no say at all.
105
- *
106
- * Return undefined to leave the recorded argv exactly as it was, which is what every adapter
107
- * that does not implement this gets.
108
- */
109
- replayArgs?(recorded: string[]): string[] | undefined;
110
40
  }
111
- /** Paths a harness writes that the ordinary snapshot would miss, and what to do about them. */
41
+ /** Additional output paths a harness writes that ordinary ignore rules would omit. */
112
42
  export interface HarnessArtifacts {
113
- /**
114
- * Paths to snapshot even when the workspace's own `.gitignore` excludes them.
115
- *
116
- * The snapshot is a `git add` against a shadow index, so it honours the workspace's ignore
117
- * rules — correct for a coding agent, where `node_modules/` and `dist/` are noise, and wrong
118
- * for a pipeline, where the ignored directory is the entire product. `vector_store/` and
119
- * `cache/` are the first two lines of IndexRAG's `.gitignore`, and without them a recording of
120
- * an indexing run holds the model calls that built an index and no trace of the index.
121
- *
122
- * It cannot be used to smuggle a secret into a trace: the sensitive pathspecs are applied to
123
- * this add as well, so an adapter declaring `.` still cannot capture `.env`.
124
- */
125
43
  capture?: readonly string[];
126
- /**
127
- * Paths to put back to the state the recording *started* in, before a replay launches.
128
- *
129
- * A pipeline resumes: it reads its own cache, sees which items are already done, and does the
130
- * rest. Replayed on top of the recording's finished cache it does nothing at all — every model
131
- * call is skipped, nothing is asked, and the replay reports a run it never reproduced. That is
132
- * `reused=0/6 exit=0` over a recording that was perfectly good.
133
- *
134
- * Not "delete these". AgenticReplay clears them and then restores the recording's initial snapshot over
135
- * the top, so they end up holding exactly what they held when recording began — which for a
136
- * recording of one mid-pipeline stage is a *populated* cache, and deleting that would take away
137
- * the stage's own input. The clearing is what the plain restore cannot do: it writes the files
138
- * the tree names and leaves everything else alone, so a cache the recording never had survives
139
- * it.
140
- *
141
- * Whole directories rather than "the invalid parts": IndexRAG's resume skips by `chunk_id`
142
- * including entries it recorded as failures, so keeping what looks valid silently promotes the
143
- * previous run's failures to completed work. Nothing is lost either way — an exact replay
144
- * restores the working tree when it ends, and where it will not (`--in-place`), agenticreplay says so
145
- * and leaves these alone.
146
- */
147
- resetBeforeReplay?: readonly string[];
148
- /**
149
- * The flag that makes this harness run one request at a time, and the value that does it.
150
- *
151
- * Declared, never applied on its own: clamping concurrency changes the run being replayed, and
152
- * a replay that quietly runs the pipeline differently from the recording is not a replay. It is
153
- * what `agenticreplay replay --serialize` reaches for when the operator asks for determinism explicitly.
154
- */
155
- concurrencyFlag?: {
156
- flag: string;
157
- serialValue: string;
158
- };
159
- }
160
- /**
161
- * A non-model HTTP call whose answer is a pure function of its request.
162
- *
163
- * The proxy's own comment on passthrough says agenticreplay "holds the bytes but not the meaning, so it
164
- * cannot match this request on replay" — and for an embedding that is the one thing it does not
165
- * need. `embed(model, input)` is deterministic in a way a chat completion is not: the same text
166
- * to the same model is the same vector, every time, from any provider. So this class of call is
167
- * *replayable* without any translator, matched on the request itself rather than on a ladder.
168
- *
169
- * It is deliberately not forkable, and `forkable` is `false` rather than absent so that saying so
170
- * is part of the type. Substituting the embedding model would change the vector space the index
171
- * was built in — every stored vector would have to be recomputed, and the comparison a fork
172
- * exists to make ("same run, different model") would be against a different index. That is a
173
- * rebuild, not a fork. Changing the *chat* model over a fixed index is the useful question, and
174
- * it is exactly what keeping retrieval on the recording makes possible.
175
- */
176
- export interface RetrievalRule {
177
- /** Stable id, written into the trace so a reader can tell which rule claimed a call. */
178
- id: string;
179
- /**
180
- * Whether this rule claims the endpoint. The path is the one the client actually appended, so
181
- * a base URL rewritten through `/forward/` presents as `/embeddings` rather than
182
- * `/v1/embeddings` — match on the suffix, not on a version segment that lives in the base.
183
- */
184
- matches(path: string, host?: string): boolean;
185
- /**
186
- * The value a replay looks this call up by. Defaults to a digest of the whole request body with
187
- * its keys sorted, which is the strictest honest answer: anything a caller varies is part of
188
- * what it asked for until a rule says otherwise.
189
- */
190
- key(raw: unknown): string;
191
- /** One line for the timeline — "12 texts, text-embedding-3-small". Optional. */
192
- describe?(raw: unknown): string;
193
- /**
194
- * How to match a batch whose items arrived in a different order, where the endpoint's own
195
- * contract makes that safe.
196
- *
197
- * A retrieval call is usually a *batch* — one request carrying many texts — and the order of
198
- * that batch is routinely accidental. IndexRAG assembles it from a thread pool that appends
199
- * results as they complete; LlamaIndex, GraphRAG and LightRAG all have the same shape. So two
200
- * runs of the same pipeline over the same documents send the same set of texts in a different
201
- * sequence, and a key over the request body says they asked different questions. Measured: two
202
- * replays of one recording produced two different keys, and neither matched what was recorded.
203
- *
204
- * This is safe here and would not be for a model call, because the API says so: OpenAI's
205
- * embeddings response carries `data[i].index` and defines `data[i]` as the embedding of
206
- * `input[i]`. An embedding does not depend on what sat next to it in the batch. So the recorded
207
- * answer for each text can be found and handed back against that text's new position — which is
208
- * not an approximation, it is the same answer to the same question.
209
- *
210
- * Optional, and absent by default on any endpoint whose contract does not guarantee that.
211
- */
212
- batch?: BatchRetrieval;
213
- /** Always false. See the note above: changing an embedding model is a rebuild, not a fork. */
214
- readonly forkable: false;
215
44
  }
216
- /** Matching a retrieval batch whose order differs, for an endpoint where order carries nothing. */
217
- export interface BatchRetrieval {
218
- /**
219
- * A key over the request with its batch reduced to a multiset, or undefined when this request
220
- * is not a batch this rule can reorder — a single input, or a shape it does not recognise.
221
- */
222
- key(raw: unknown): string | undefined;
223
- /**
224
- * The recorded response rebuilt so that item *i* answers the live request's item *i*, or
225
- * undefined when it cannot be done exactly. Undefined halts the replay, which is the right
226
- * answer: a partial reorder would hand some documents another document's vector.
227
- */
228
- reorder(recordedRequest: unknown, recordedResponse: string, liveRequest: unknown): string | undefined;
229
- }
230
- /** How to find, read and resume a harness's own session transcripts. */
45
+ /** How to find and read a harness's own session transcript for action logging. */
231
46
  export interface SessionSupport {
232
47
  /** Directory the harness writes session transcripts into, or undefined if it keeps none. */
233
48
  dir(cwd: string, env: Record<string, string | undefined>): string | undefined;
234
49
  /** Pull the session id and the user's turns out of one transcript. */
235
50
  parse(bytes: Uint8Array): {
236
51
  id?: string;
52
+ title?: string;
237
53
  prompts: string[];
238
54
  };
239
- /** Arguments that resume that session, for a fork continuing where the run stopped. */
240
- resumeArgs(id: string): string[];
241
- }
242
- /** How to reach a model when the replay cursor goes live. */
243
- export interface Provider {
244
- id: string;
245
- models(): Promise<ModelInfo[]>;
246
- invoke(req: CanonicalRequest, signal?: AbortSignal): AsyncIterable<CanonicalChunk>;
247
- price(usage: Usage, model: string): Money | null;
248
- }
249
- export interface ProviderFactory {
250
- id: string;
251
- create(options: ProviderOptions): Provider;
252
- }
253
- export interface ProviderOptions {
254
- apiKey?: string;
255
- baseUrl?: string;
256
- headers?: Record<string, string>;
257
55
  }
258
56
  //# sourceMappingURL=plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CACzC;AAED,4CAA4C;AAC5C,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,sDAAsD;AACtD,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,+DAA+D;IAC/D,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kEAAkE;IAClE,OAAO,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAC;IACzC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,2FAA2F;IAC3F,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,mFAAmF;IACnF,aAAa,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IACnD,yFAAyF;IACzF,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,sFAAsF;AACtF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC7B,4FAA4F;IAC5F,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;IAC9E,sEAAsE;IACtE,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9E"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agenticreplay/plugin-api",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "type": "module",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agenticreplay/providers",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "type": "module",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -17,8 +17,8 @@
17
17
  "dist"
18
18
  ],
19
19
  "dependencies": {
20
- "@agenticreplay/plugin-api": "0.1.3",
21
- "@agenticreplay/schema": "0.1.3"
20
+ "@agenticreplay/plugin-api": "0.1.5",
21
+ "@agenticreplay/schema": "0.1.5"
22
22
  },
23
23
  "engines": {
24
24
  "node": ">=24.0.0"
@@ -16,44 +16,24 @@ export interface Dialect {
16
16
  toCanonicalResponse(raw: unknown): CanonicalResponse;
17
17
  /** Parse a recorded SSE body into a response, for streamed exchanges. */
18
18
  parseStream(body: string): CanonicalResponse;
19
- /** Rewrite the model on a raw request body, for fork replay onto a different model. */
20
- withModel(raw: unknown, model: string): unknown;
21
19
  /** Request path this dialect posts to, for a request translated *into* it. */
22
20
  requestPath: string;
23
- /**
24
- * Does this dialect serve the given model?
25
- *
26
- * Kept on the dialect rather than in a table in the proxy, for the same reason everything else
27
- * here is: the proxy is handed a list of dialects and knows nothing about which exist, so a
28
- * third party can add one without the routing needing to learn about it.
29
- */
30
- ownsModel(model: string): boolean;
31
- /** Build a wire request from the canonical form — the inbound half of a cross-provider fork. */
32
- fromCanonicalRequest(req: CanonicalRequest): unknown;
33
- /** Build a wire response the agent will accept — the outbound half. */
34
- fromCanonicalResponse(res: CanonicalResponse, streamed: boolean): string;
35
21
  }
36
22
  export declare function anthropicDialect(translators: {
37
23
  toCanonicalRequest: (raw: unknown) => CanonicalRequest;
38
24
  toCanonicalResponse: (raw: unknown) => CanonicalResponse;
39
25
  parseSse: (body: string) => CanonicalResponse;
40
- fromCanonicalRequest: (req: CanonicalRequest) => Record<string, unknown>;
41
- fromCanonicalResponse: (res: CanonicalResponse) => Record<string, unknown>;
42
- toSse: (res: CanonicalResponse) => string;
43
26
  }): Dialect;
44
27
  export declare function openaiDialect(translators: {
45
28
  toCanonicalRequest: (raw: unknown) => CanonicalRequest;
46
29
  toCanonicalResponse: (raw: unknown) => CanonicalResponse;
47
30
  parseSse: (body: string) => CanonicalResponse;
48
- fromCanonicalRequest: (req: CanonicalRequest) => Record<string, unknown>;
49
- fromCanonicalResponse: (res: CanonicalResponse) => Record<string, unknown>;
50
- toSse: (res: CanonicalResponse) => string;
51
31
  }): Dialect;
52
32
  /**
53
33
  * The Codex CLI's subscription transport is an OpenAI Responses-shaped endpoint, but it is not
54
34
  * the public `/v1/responses` API: it lives at `/backend-api/codex/responses`, sends zstd-compressed
55
- * JSON and returns a Responses SSE stream. Keeping this dialect here lets the proxy replay the
56
- * bytes exactly while still using the normal canonical matcher and trace timeline.
35
+ * JSON and returns a Responses SSE stream. The recording proxy parses these calls into the
36
+ * common trace format while preserving the received wire evidence.
57
37
  */
58
38
  export declare function codexDialect(): Dialect;
59
39
  /**
@@ -64,18 +44,12 @@ export declare function codexDialect(): Dialect;
64
44
  * top-level items, and the stream is typed events rather than choice deltas. One dialect trying to
65
45
  * be both would have to sniff the body shape on every request, and guess wrong on the empty ones.
66
46
  *
67
- * It is registered *after* `openaiDialect` for a reason that only shows up on forks: `ownsModel`
68
- * cannot distinguish them — both serve everything that is not Claude — so the later position means
69
- * an ordinary chat-completions run forking to another OpenAI model still goes to chat completions.
70
- * A Responses run stays on Responses through the recorded-dialect preference in `goLive`.
47
+ * It is registered after `openaiDialect`; the request path selects the wire protocol.
71
48
  */
72
49
  export declare function responsesDialect(translators: {
73
50
  toCanonicalRequest: (raw: unknown) => CanonicalRequest;
74
51
  toCanonicalResponse: (raw: unknown) => CanonicalResponse;
75
52
  parseSse: (body: string) => CanonicalResponse;
76
- fromCanonicalRequest: (req: CanonicalRequest) => Record<string, unknown>;
77
- fromCanonicalResponse: (res: CanonicalResponse) => Record<string, unknown>;
78
- toSse: (res: CanonicalResponse) => string;
79
53
  }): Dialect;
80
54
  export declare function selectDialect(dialects: Dialect[], path: string): Dialect | undefined;
81
55
  //# sourceMappingURL=dialects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialects.d.ts","sourceRoot":"","sources":["../src/dialects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialects.d.ts","sourceRoot":"","sources":["../src/dialects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,gBAAgB,EAChB,iBAAiB,EAGlB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACnD,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAAC;IACrD,yEAAyE;IACzE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAC;IAC7C,8EAA8E;IAC9E,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE;IAC5C,kBAAkB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,gBAAgB,CAAC;IACvD,mBAAmB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,iBAAiB,CAAC;IACzD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,CAAC;CAC/C,GAAG,OAAO,CAYV;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE;IACzC,kBAAkB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,gBAAgB,CAAC;IACvD,mBAAmB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,iBAAiB,CAAC;IACzD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,CAAC;CAC/C,GAAG,OAAO,CAaV;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAUtC;AA2MD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE;IAC5C,kBAAkB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,gBAAgB,CAAC;IACvD,mBAAmB,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,iBAAiB,CAAC;IACzD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,CAAC;CAC/C,GAAG,OAAO,CAYV;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAEpF"}
@@ -6,15 +6,9 @@ export function anthropicDialect(translators) {
6
6
  // OpenCode catalog providers mount Anthropic under /anthropic/v1, /coding/v1, etc.
7
7
  // Keep the version segment: an arbitrary /messages route may belong to another API.
8
8
  matches: (p) => p.startsWith('/v1/messages') || p.endsWith('/v1/messages'),
9
- // Claude is the only family Anthropic serves, so the test is the name rather than a list that
10
- // would need editing every time a model ships.
11
- ownsModel: (m) => /^(?:.*\/)?claude[-.]/i.test(m.trim()),
12
9
  toCanonicalRequest: translators.toCanonicalRequest,
13
10
  toCanonicalResponse: translators.toCanonicalResponse,
14
11
  parseStream: translators.parseSse,
15
- withModel: (raw, model) => ({ ...raw, model }),
16
- fromCanonicalRequest: translators.fromCanonicalRequest,
17
- fromCanonicalResponse: (res, streamed) => streamed ? translators.toSse(res) : JSON.stringify(translators.fromCanonicalResponse(res)),
18
12
  };
19
13
  }
20
14
  export function openaiDialect(translators) {
@@ -26,23 +20,16 @@ export function openaiDialect(translators) {
26
20
  // depending on how their SDK joins the base URL. Accept either rather than making the user
27
21
  // discover which one their harness picked.
28
22
  matches: (p) => p.endsWith('/chat/completions') || p.endsWith('/completions'),
29
- // Everything that is not Claude. The chat-completions shape is what GLM, Qwen, DeepSeek and
30
- // every gateway speak, so it is the right default rather than a list of known vendors — an
31
- // unknown model reaches an OpenAI-compatible endpoint, which is where an unknown model lives.
32
- ownsModel: (m) => !/^(?:.*\/)?claude[-.]/i.test(m.trim()),
33
23
  toCanonicalRequest: translators.toCanonicalRequest,
34
24
  toCanonicalResponse: translators.toCanonicalResponse,
35
25
  parseStream: translators.parseSse,
36
- withModel: (raw, model) => ({ ...raw, model }),
37
- fromCanonicalRequest: translators.fromCanonicalRequest,
38
- fromCanonicalResponse: (res, streamed) => streamed ? translators.toSse(res) : JSON.stringify(translators.fromCanonicalResponse(res)),
39
26
  };
40
27
  }
41
28
  /**
42
29
  * The Codex CLI's subscription transport is an OpenAI Responses-shaped endpoint, but it is not
43
30
  * the public `/v1/responses` API: it lives at `/backend-api/codex/responses`, sends zstd-compressed
44
- * JSON and returns a Responses SSE stream. Keeping this dialect here lets the proxy replay the
45
- * bytes exactly while still using the normal canonical matcher and trace timeline.
31
+ * JSON and returns a Responses SSE stream. The recording proxy parses these calls into the
32
+ * common trace format while preserving the received wire evidence.
46
33
  */
47
34
  export function codexDialect() {
48
35
  return {
@@ -50,15 +37,9 @@ export function codexDialect() {
50
37
  defaultUpstream: 'https://chatgpt.com',
51
38
  requestPath: '/backend-api/codex/responses',
52
39
  matches: (p) => p === '/backend-api/codex/responses',
53
- // Only Codex subscription model ids belong here. Generic GPT names must continue to route to
54
- // the public OpenAI dialect when a fork changes an ordinary provider request.
55
- ownsModel: (model) => /^gpt-5\.6-(?:sol|terra|luna)$/i.test(model.trim()),
56
40
  toCanonicalRequest: codexToCanonicalRequest,
57
41
  toCanonicalResponse: codexToCanonicalResponse,
58
42
  parseStream: parseCodexSse,
59
- withModel: (raw, model) => ({ ...raw, model }),
60
- fromCanonicalRequest: canonicalToCodexRequest,
61
- fromCanonicalResponse: (res, streamed) => streamed ? canonicalToCodexSse(res) : JSON.stringify(canonicalToCodexResponse(res)),
62
43
  };
63
44
  }
64
45
  function codexToCanonicalRequest(raw) {
@@ -225,46 +206,6 @@ function codexTools(raw) {
225
206
  }
226
207
  return out;
227
208
  }
228
- function canonicalToCodexRequest(req) {
229
- const input = [];
230
- for (const message of req.messages) {
231
- const blocks = message.content.filter((block) => block.type === 'text');
232
- if (blocks.length) {
233
- input.push({
234
- type: 'message',
235
- role: message.role,
236
- content: blocks.map((block) => ({
237
- type: 'input_text',
238
- text: block.type === 'text' ? block.text : '',
239
- })),
240
- });
241
- }
242
- }
243
- return {
244
- model: req.model,
245
- ...(req.system === undefined ? {} : { instructions: req.system }),
246
- input,
247
- ...(req.tools === undefined
248
- ? {}
249
- : { tools: req.tools.map((tool) => ({ type: 'function', ...tool })) }),
250
- ...(req.max_tokens === undefined ? {} : { max_output_tokens: req.max_tokens }),
251
- ...(req.temperature === undefined ? {} : { temperature: req.temperature }),
252
- ...(req.top_p === undefined ? {} : { top_p: req.top_p }),
253
- ...(req.stream === undefined ? {} : { stream: req.stream }),
254
- };
255
- }
256
- function canonicalToCodexResponse(res) {
257
- return {
258
- id: res.id,
259
- object: 'response',
260
- model: res.model,
261
- status: 'completed',
262
- output: res.content,
263
- };
264
- }
265
- function canonicalToCodexSse(res) {
266
- return `event: response.completed\ndata: ${JSON.stringify({ type: 'response.completed', response: canonicalToCodexResponse(res) })}\n\n`;
267
- }
268
209
  function asRecord(raw) {
269
210
  return raw !== null && typeof raw === 'object' && !Array.isArray(raw)
270
211
  ? raw
@@ -301,10 +242,7 @@ function omitUndefined(value) {
301
242
  * top-level items, and the stream is typed events rather than choice deltas. One dialect trying to
302
243
  * be both would have to sniff the body shape on every request, and guess wrong on the empty ones.
303
244
  *
304
- * It is registered *after* `openaiDialect` for a reason that only shows up on forks: `ownsModel`
305
- * cannot distinguish them — both serve everything that is not Claude — so the later position means
306
- * an ordinary chat-completions run forking to another OpenAI model still goes to chat completions.
307
- * A Responses run stays on Responses through the recorded-dialect preference in `goLive`.
245
+ * It is registered after `openaiDialect`; the request path selects the wire protocol.
308
246
  */
309
247
  export function responsesDialect(translators) {
310
248
  return {
@@ -314,13 +252,9 @@ export function responsesDialect(translators) {
314
252
  // Agents reach it as `/v1/responses` or `/responses` depending on whether their SDK considers
315
253
  // the version segment part of the base url, and a gateway may mount it under a prefix.
316
254
  matches: (p) => p.endsWith('/responses'),
317
- ownsModel: (m) => !/^(?:.*\/)?claude[-.]/i.test(m.trim()),
318
255
  toCanonicalRequest: translators.toCanonicalRequest,
319
256
  toCanonicalResponse: translators.toCanonicalResponse,
320
257
  parseStream: translators.parseSse,
321
- withModel: (raw, model) => ({ ...raw, model }),
322
- fromCanonicalRequest: translators.fromCanonicalRequest,
323
- fromCanonicalResponse: (res, streamed) => streamed ? translators.toSse(res) : JSON.stringify(translators.fromCanonicalResponse(res)),
324
258
  };
325
259
  }
326
260
  export function selectDialect(dialects, path) {
@@ -1 +1 @@
1
- {"version":3,"file":"dialects.js","sourceRoot":"","sources":["../src/dialects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialects.js","sourceRoot":"","sources":["../src/dialects.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,4 @@
1
- export * from './matching.js';
2
1
  export * from './forward.js';
3
- export * from './retrieval.js';
4
2
  export * from './dialects.js';
5
3
  export * from './ca.js';
6
4
  export * from './intercept.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
@@ -1,6 +1,4 @@
1
- export * from './matching.js';
2
1
  export * from './forward.js';
3
- export * from './retrieval.js';
4
2
  export * from './dialects.js';
5
3
  export * from './ca.js';
6
4
  export * from './intercept.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}