@rarebit-one/harness-kernel 0.9.0 → 0.11.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/README.md +174 -6
  2. package/dist/agent.d.ts +80 -8
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +225 -25
  5. package/dist/agent.js.map +1 -1
  6. package/dist/engines/acp.d.ts +10 -0
  7. package/dist/engines/acp.d.ts.map +1 -1
  8. package/dist/engines/acp.js +8 -1
  9. package/dist/engines/acp.js.map +1 -1
  10. package/dist/engines/acpDriver.d.ts +2 -0
  11. package/dist/engines/acpDriver.d.ts.map +1 -1
  12. package/dist/engines/acpDriver.js +6 -1
  13. package/dist/engines/acpDriver.js.map +1 -1
  14. package/dist/engines/claudeCode.d.ts +6 -4
  15. package/dist/engines/claudeCode.d.ts.map +1 -1
  16. package/dist/engines/claudeCode.js +8 -5
  17. package/dist/engines/claudeCode.js.map +1 -1
  18. package/dist/engines/claudeCodeDriver.d.ts +8 -0
  19. package/dist/engines/claudeCodeDriver.d.ts.map +1 -1
  20. package/dist/engines/claudeCodeDriver.js +14 -1
  21. package/dist/engines/claudeCodeDriver.js.map +1 -1
  22. package/dist/engines/codex.d.ts.map +1 -1
  23. package/dist/engines/codex.js +2 -1
  24. package/dist/engines/codex.js.map +1 -1
  25. package/dist/engines/codexDriver.d.ts +2 -0
  26. package/dist/engines/codexDriver.d.ts.map +1 -1
  27. package/dist/engines/codexDriver.js +15 -9
  28. package/dist/engines/codexDriver.js.map +1 -1
  29. package/dist/engines/isolation.d.ts +45 -0
  30. package/dist/engines/isolation.d.ts.map +1 -0
  31. package/dist/engines/isolation.js +119 -0
  32. package/dist/engines/isolation.js.map +1 -0
  33. package/dist/engines/native.d.ts +5 -0
  34. package/dist/engines/native.d.ts.map +1 -1
  35. package/dist/engines/native.js +28 -10
  36. package/dist/engines/native.js.map +1 -1
  37. package/dist/engines/types.d.ts +28 -0
  38. package/dist/engines/types.d.ts.map +1 -1
  39. package/dist/events.d.ts +20 -0
  40. package/dist/events.d.ts.map +1 -1
  41. package/dist/events.js.map +1 -1
  42. package/dist/index.d.ts +17 -11
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +7 -4
  45. package/dist/index.js.map +1 -1
  46. package/dist/loop.d.ts +58 -11
  47. package/dist/loop.d.ts.map +1 -1
  48. package/dist/loop.js +7 -5
  49. package/dist/loop.js.map +1 -1
  50. package/dist/models/chat.d.ts +2 -1
  51. package/dist/models/chat.d.ts.map +1 -1
  52. package/dist/models/chat.js +20 -4
  53. package/dist/models/chat.js.map +1 -1
  54. package/dist/models/types.d.ts +16 -0
  55. package/dist/models/types.d.ts.map +1 -1
  56. package/dist/models/types.js.map +1 -1
  57. package/dist/private.d.ts.map +1 -1
  58. package/dist/private.js +21 -0
  59. package/dist/private.js.map +1 -1
  60. package/dist/providers/anthropic.d.ts +27 -3
  61. package/dist/providers/anthropic.d.ts.map +1 -1
  62. package/dist/providers/anthropic.js +95 -29
  63. package/dist/providers/anthropic.js.map +1 -1
  64. package/dist/providers/index.d.ts +42 -6
  65. package/dist/providers/index.d.ts.map +1 -1
  66. package/dist/providers/index.js +132 -48
  67. package/dist/providers/index.js.map +1 -1
  68. package/dist/providers/mock.d.ts +6 -3
  69. package/dist/providers/mock.d.ts.map +1 -1
  70. package/dist/providers/mock.js +8 -3
  71. package/dist/providers/mock.js.map +1 -1
  72. package/dist/providers/openai.d.ts +51 -7
  73. package/dist/providers/openai.d.ts.map +1 -1
  74. package/dist/providers/openai.js +128 -30
  75. package/dist/providers/openai.js.map +1 -1
  76. package/dist/providers/options.d.ts +162 -0
  77. package/dist/providers/options.d.ts.map +1 -0
  78. package/dist/providers/options.js +67 -0
  79. package/dist/providers/options.js.map +1 -0
  80. package/dist/providers/scripted.d.ts +49 -0
  81. package/dist/providers/scripted.d.ts.map +1 -0
  82. package/dist/providers/scripted.js +90 -0
  83. package/dist/providers/scripted.js.map +1 -0
  84. package/dist/providers/types.d.ts +34 -0
  85. package/dist/providers/types.d.ts.map +1 -1
  86. package/dist/tools/metadata.d.ts +24 -0
  87. package/dist/tools/metadata.d.ts.map +1 -1
  88. package/dist/tools/metadata.js +8 -0
  89. package/dist/tools/metadata.js.map +1 -1
  90. package/dist/tools/registry.d.ts +10 -3
  91. package/dist/tools/registry.d.ts.map +1 -1
  92. package/dist/tools/registry.js +9 -4
  93. package/dist/tools/registry.js.map +1 -1
  94. package/dist/tools/terminal.d.ts +33 -0
  95. package/dist/tools/terminal.d.ts.map +1 -0
  96. package/dist/tools/terminal.js +32 -0
  97. package/dist/tools/terminal.js.map +1 -0
  98. package/package.json +5 -4
@@ -1 +1 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/engines/native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/engines/native.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { RunEventSink, RunOutcome } from "../events.js";
2
2
  import type { ProviderSelection } from "../providers/index.js";
3
+ import type { ProviderOptions } from "../providers/options.js";
3
4
  import type { ConnectorConfig, Permissions, WorkflowDefinition } from "../types.js";
5
+ import type { Isolation } from "./isolation.js";
4
6
  /**
5
7
  * The provider-neutral, harness-neutral description of one workflow run, handed
6
8
  * to an {@link AgentEngine}. It carries the *materials* (a prepared on-disk
@@ -40,6 +42,21 @@ export interface RunSpec {
40
42
  maxSteps?: number;
41
43
  maxDurationMs?: number;
42
44
  };
45
+ /**
46
+ * Per-call provider options for the run's model calls (prompt caching,
47
+ * token cap, OpenRouter routing). The native engine sends them on every
48
+ * call; an out-of-process engine, which brings its own model client,
49
+ * ignores them like it ignores `limits`.
50
+ */
51
+ providerOptions?: ProviderOptions;
52
+ /**
53
+ * How strongly the caller isolated this run from every other run on the host:
54
+ * `none` (a shared process), `container` (one per run) or `vm` (a microVM per
55
+ * run). Out-of-process engines refuse anything below `container`, and only
56
+ * trust it when the host's own `RUNNER_ISOLATION` agrees (see
57
+ * `effectiveIsolation`). Absent means `none`. The native engine ignores it.
58
+ */
59
+ isolation?: Isolation;
43
60
  /**
44
61
  * The run handles material that must not leave the host. The native engine
45
62
  * runs it only on the `local` provider (`provider.preferred: "local"` with
@@ -110,6 +127,17 @@ export interface EngineResult {
110
127
  * `failed`). Optional so an engine that cannot tell stays honest by omitting it.
111
128
  */
112
129
  outcome?: RunOutcome;
130
+ /**
131
+ * The adapter that served the run (`"anthropic"`, `"openrouter"`, `"mock"`,
132
+ * …), observed from inside the run rather than predicted from its inputs.
133
+ * The native engine always reports it; an out-of-process engine brings its
134
+ * own model and credential, so it omits it rather than guess.
135
+ */
136
+ provider?: string;
137
+ /** The model id the run's last response named, else the adapter's configured model. */
138
+ model?: string;
139
+ /** Behind an aggregator, the upstream that served the run's last response. */
140
+ upstream?: string;
113
141
  }
114
142
  /** The outcome of an engine's capability check for a given run. */
115
143
  export type EngineSupport = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/engines/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEnF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,0EAA0E;IAC1E,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B;sFACkF;IAClF,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,WAAW,CAAA;IACxB,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,+DAA+D;IAC/D,UAAU,EAAE,eAAe,EAAE,CAAA;IAC7B,6DAA6D;IAC7D,QAAQ,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,iBAAiB,CAAA;IAC3D,8EAA8E;IAC9E,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACtD;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,UAAU,CAAA;CACrB;AAED,mEAAmE;AACnE,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAExE;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;mFAC+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,aAAa,CAAA;IACtC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CAC9D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/engines/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,0EAA0E;IAC1E,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B;sFACkF;IAClF,OAAO,EAAE,MAAM,CAAA;IACf,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,WAAW,CAAA;IACxB,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,+DAA+D;IAC/D,UAAU,EAAE,eAAe,EAAE,CAAA;IAC7B,6DAA6D;IAC7D,QAAQ,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,iBAAiB,CAAA;IAC3D,8EAA8E;IAC9E,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACtD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,mEAAmE;AACnE,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAExE;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;mFAC+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,aAAa,CAAA;IACtC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CAC9D"}
package/dist/events.d.ts CHANGED
@@ -60,6 +60,18 @@ export interface RunEventBase {
60
60
  * a throw.
61
61
  */
62
62
  export type RunOutcome = "completed" | "steps_exhausted" | "timed_out" | "canceled" | "failed";
63
+ /**
64
+ * Why the loop stopped, one level finer than {@link RunOutcome}. `end_turn` and
65
+ * `terminal_tool` both map to `outcome: "completed"`: the model finished of its
66
+ * own accord either by answering in prose or by calling a terminal tool, and a
67
+ * consumer that only cares whether the run finished reads `outcome`. The rest
68
+ * mirror their outcome. `RunOutcome` stays the coarse, wire-stable vocabulary;
69
+ * this is where a finer reason is added (a suspended run awaiting external
70
+ * tool results, say) without touching every consumer's outcome switch.
71
+ * `failed` is here for the same reason it is on `RunOutcome`: the native loop
72
+ * throws instead, but a custom loop may report it.
73
+ */
74
+ export type StopReason = "end_turn" | "terminal_tool" | "steps_exhausted" | "timed_out" | "canceled" | "failed";
63
75
  /**
64
76
  * Whether a tool's effect is safe to execute again after an interruption,
65
77
  * copied from `ToolMetadata.replay`. Absent means the tool made no claim, which
@@ -89,6 +101,12 @@ export interface ModelTurnEvent extends RunEventBase {
89
101
  /** What the turn cost, when the model reported it (`ModelResult.usage`).
90
102
  * Absent means "not reported", never "free". */
91
103
  usage?: Usage;
104
+ /** The model id the response was served by, when the provider reported it. */
105
+ model?: string;
106
+ /** The provider's id for the response (message / completion / generation id), when reported. */
107
+ responseId?: string;
108
+ /** Behind an aggregator, the upstream that served the request (OpenRouter's response-level `provider`). */
109
+ upstream?: string;
92
110
  }
93
111
  /**
94
112
  * A model invocation failed and the loop **absorbed** it: the run carries on
@@ -200,6 +218,8 @@ export interface RunBudgetExhaustedEvent extends RunEventBase {
200
218
  export interface RunFinishedEvent extends RunEventBase {
201
219
  type: "run.finished";
202
220
  outcome: RunOutcome;
221
+ /** The loop's finer stop reason, when it reported one (the native loop always does). */
222
+ stopReason?: StopReason;
203
223
  steps?: number;
204
224
  text?: string;
205
225
  /** Present when `outcome` is `failed`, and when a loop THREW on a caller
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AA8PH;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAmB,EACnB,MAA8B,GAAG,EAAE,GAAE,CAAC;IAEtC,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,OAAO;QACL,IAAI,CAAC,KAAoB;YACvB,MAAM,OAAO,GAAa,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;YAClE,IAAI,CAAC,IAAI;gBAAE,OAAM;YACjB,IAAI,CAAC;gBACH,IAAI,CAAC,OAAO,CAAC,CAAA;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qDAAqD;gBACrD,GAAG,CACD,uBAAuB,OAAO,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC3F,CAAA;YACH,CAAC;QACH,CAAC;QACD,IAAI,KAAK;YACP,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAe,EAAE,CAAA;IAC7B,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;AAC7D,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAoRH;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAmB,EACnB,MAA8B,GAAG,EAAE,GAAE,CAAC;IAEtC,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,OAAO;QACL,IAAI,CAAC,KAAoB;YACvB,MAAM,OAAO,GAAa,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;YAClE,IAAI,CAAC,IAAI;gBAAE,OAAM;YACjB,IAAI,CAAC;gBACH,IAAI,CAAC,OAAO,CAAC,CAAA;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qDAAqD;gBACrD,GAAG,CACD,uBAAuB,OAAO,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC3F,CAAA;YACH,CAAC;QACH,CAAC;QACD,IAAI,KAAK;YACP,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAe,EAAE,CAAA;IAC7B,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;AAC7D,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  export type { ConnectorConfig, Permissions, WorkflowDefinition } from "./types.js";
2
- export { selectProvider } from "./providers/index.js";
3
- export type { ProviderSelection } from "./providers/index.js";
2
+ export { selectProvider, providerAvailability, ProviderCredentialsError, } from "./providers/index.js";
3
+ export type { ProviderSelection, ProviderAvailability } from "./providers/index.js";
4
+ export { ProviderOptionsError, MAX_TRAILING_CACHE_MESSAGES } from "./providers/options.js";
5
+ export type { ProviderOptions, PromptCacheOptions, CacheTtl, ResponseFormat, OpenRouterOptions, OpenRouterProviderPreferences, } from "./providers/options.js";
4
6
  export type { Provider, CompletionRequest, ConverseRequest, ConverseResult, ConverseOptions, AgentMessage, ToolSpec, ToolCall, ToolResult, } from "./providers/types.js";
5
7
  export { AnthropicProvider } from "./providers/anthropic.js";
6
8
  export { OpenAIProvider, OpenAICompatibleProvider } from "./providers/openai.js";
@@ -9,8 +11,10 @@ export { OpenRouterProvider } from "./providers/openrouter.js";
9
11
  export type { OpenRouterAttribution } from "./providers/openrouter.js";
10
12
  export { LocalProvider, LOCAL_DEFAULT_MODEL } from "./providers/local.js";
11
13
  export { MockProvider } from "./providers/mock.js";
14
+ export { ScriptedProvider, ScriptExhaustedError } from "./providers/scripted.js";
15
+ export type { ScriptedTurn, ScriptedProviderOptions } from "./providers/scripted.js";
12
16
  export { emitCompleteToolCall, invokeStreaming, modelIdentity, requireCapability, CapabilityError, } from "./models/types.js";
13
- export type { ModelInvocation, ModelKind, ModelCaps, ModelIdentity, ModelResult, InvokeContext, StreamSink, Usage, TokenUsage, UnitUsage, Health, HealthStatus, } from "./models/types.js";
17
+ export type { ModelInvocation, ModelKind, ModelCaps, ModelIdentity, ModelResult, InvokeContext, StreamSink, Usage, TokenUsage, ReportedCost, UnitUsage, Health, HealthStatus, } from "./models/types.js";
14
18
  export { chatModel, asChatModel, isChatModel, chatRequest, CHAT_KIND } from "./models/chat.js";
15
19
  export type { ChatModel, ChatRequest, ChatResponse, ChatPart, BinaryRef } from "./models/chat.js";
16
20
  export { ModelRegistry, UnknownModelError } from "./models/registry.js";
@@ -22,18 +26,20 @@ export { UnknownCapabilityError } from "./routing/types.js";
22
26
  export type { RouteResolver, RouteContext, RouteLimits, CapabilityDefinition, ResolvedRoute, } from "./routing/types.js";
23
27
  export { assembleContext, renderContext } from "./context/types.js";
24
28
  export type { ContextProvider, ContextFragment, ContextSpec } from "./context/types.js";
25
- export { runAgent, maxToolResultBytes, resolveLoopLimits } from "./agent.js";
26
- export type { RunAgentOptions } from "./agent.js";
29
+ export { runAgent, runConversation, maxToolResultBytes, resolveLoopLimits } from "./agent.js";
30
+ export type { RunAgentOptions, RunConversationOptions, ConversationResult, LoopRunOptions, } from "./agent.js";
27
31
  export { nativeLoop, runWithEvents } from "./loop.js";
28
- export type { Loop, LoopRequest, LoopContext, RunContext, LoopResult } from "./loop.js";
32
+ export type { Loop, LoopRequest, LoopContext, RunContext, LoopResult, TerminalCall, } from "./loop.js";
29
33
  export { runEventEmitter, recordRunEvents } from "./events.js";
30
- export type { RunEvent, RunEventType, RunEventBase, RunEventInput, RunEventSink, RunEventEmitter, LoopEventInput, LoopEventEmitter, RunOutcome, ToolReplay, BudgetKind, RunStartedEvent, ModelTurnEvent, ModelTurnFailedEvent, ToolCalledEvent, ToolSucceededEvent, ToolFailedEvent, RunBudgetExhaustedEvent, RunFinishedEvent, } from "./events.js";
34
+ export type { RunEvent, RunEventType, RunEventBase, RunEventInput, RunEventSink, RunEventEmitter, LoopEventInput, LoopEventEmitter, RunOutcome, StopReason, ToolReplay, BudgetKind, RunStartedEvent, ModelTurnEvent, ModelTurnFailedEvent, ToolCalledEvent, ToolSucceededEvent, ToolFailedEvent, RunBudgetExhaustedEvent, RunFinishedEvent, } from "./events.js";
31
35
  export { privateRunChannels, PrivateRunError, PRIVATE_REDACTION } from "./private.js";
32
36
  export type { PrivateRunChannels } from "./private.js";
33
- export { primitiveTools, connectorTools, executeTool } from "./tools/registry.js";
34
- export type { Tool, ToolOutput, ToolContext } from "./tools/registry.js";
35
- export { selectTools, isToolVisible, toToolSpecs, toolsRequiringConfirmation, replaySafeTools, undoToolFor, } from "./tools/metadata.js";
36
- export type { ToolMetadata, ToolSelection, InvocationMode, ResultRetention, ClientResultVisibility, } from "./tools/metadata.js";
37
+ export { primitiveTools, connectorTools, executeTool, namespacedToolName, } from "./tools/registry.js";
38
+ export type { Tool, ToolOutput, ToolContext, ConnectorToolName } from "./tools/registry.js";
39
+ export { selectTools, isToolVisible, toToolSpecs, toolsRequiringConfirmation, replaySafeTools, undoToolFor, toolDispatch, terminalTools, } from "./tools/metadata.js";
40
+ export type { ToolMetadata, ToolSelection, InvocationMode, ResultRetention, ClientResultVisibility, ToolDispatch, } from "./tools/metadata.js";
41
+ export { terminalTool } from "./tools/terminal.js";
42
+ export type { TerminalToolOptions } from "./tools/terminal.js";
37
43
  export { modelAsTool } from "./tools/modelTool.js";
38
44
  export type { ModelToolOptions } from "./tools/modelTool.js";
39
45
  export { runCode } from "./primitives/codeExec.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4,12 +4,14 @@
4
4
  // ---------------------------------------------------------------------------
5
5
  // Providers — the model adapters and their selection
6
6
  // ---------------------------------------------------------------------------
7
- export { selectProvider } from "./providers/index.js";
7
+ export { selectProvider, providerAvailability, ProviderCredentialsError, } from "./providers/index.js";
8
+ export { ProviderOptionsError, MAX_TRAILING_CACHE_MESSAGES } from "./providers/options.js";
8
9
  export { AnthropicProvider } from "./providers/anthropic.js";
9
10
  export { OpenAIProvider, OpenAICompatibleProvider } from "./providers/openai.js";
10
11
  export { OpenRouterProvider } from "./providers/openrouter.js";
11
12
  export { LocalProvider, LOCAL_DEFAULT_MODEL } from "./providers/local.js";
12
13
  export { MockProvider } from "./providers/mock.js";
14
+ export { ScriptedProvider, ScriptExhaustedError } from "./providers/scripted.js";
13
15
  // ---------------------------------------------------------------------------
14
16
  // The model seam — the neutral arrow every model kind is invoked through
15
17
  // ---------------------------------------------------------------------------
@@ -32,7 +34,7 @@ export { assembleContext, renderContext } from "./context/types.js";
32
34
  // ---------------------------------------------------------------------------
33
35
  // The tool-use loop
34
36
  // ---------------------------------------------------------------------------
35
- export { runAgent, maxToolResultBytes, resolveLoopLimits } from "./agent.js";
37
+ export { runAgent, runConversation, maxToolResultBytes, resolveLoopLimits } from "./agent.js";
36
38
  // Extension point 7 — the control loop itself. The kernel ships exactly one
37
39
  // (`nativeLoop`, the loop `runAgent` has always run); this is the interface
38
40
  // around it, so an application can change control flow without forking.
@@ -47,8 +49,9 @@ export { privateRunChannels, PrivateRunError, PRIVATE_REDACTION } from "./privat
47
49
  // Extension point 6 — tools: generic primitives, injectable domain emissions,
48
50
  // MCP connectors, rich metadata + projections, and models-as-tools
49
51
  // ---------------------------------------------------------------------------
50
- export { primitiveTools, connectorTools, executeTool } from "./tools/registry.js";
51
- export { selectTools, isToolVisible, toToolSpecs, toolsRequiringConfirmation, replaySafeTools, undoToolFor, } from "./tools/metadata.js";
52
+ export { primitiveTools, connectorTools, executeTool, namespacedToolName, } from "./tools/registry.js";
53
+ export { selectTools, isToolVisible, toToolSpecs, toolsRequiringConfirmation, replaySafeTools, undoToolFor, toolDispatch, terminalTools, } from "./tools/metadata.js";
54
+ export { terminalTool } from "./tools/terminal.js";
52
55
  export { modelAsTool } from "./tools/modelTool.js";
53
56
  // ---------------------------------------------------------------------------
54
57
  // Sandbox primitives (the executors the tools are built on)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/loop.d.ts CHANGED
@@ -19,27 +19,39 @@
19
19
  * code that has always run. This adds the interface around it, not an
20
20
  * alternative to it.
21
21
  */
22
- import type { LoopEventEmitter, RunEventEmitter, RunOutcome } from "./events.js";
22
+ import type { LoopEventEmitter, RunEventEmitter, RunOutcome, StopReason } from "./events.js";
23
23
  import type { ChatModel } from "./models/chat.js";
24
- import type { Tool } from "./tools/registry.js";
24
+ import type { TokenUsage } from "./models/types.js";
25
+ import type { ProviderOptions } from "./providers/options.js";
26
+ import type { AgentMessage } from "./providers/types.js";
27
+ import type { Tool, ToolOutput } from "./tools/registry.js";
25
28
  /**
26
29
  * One run's materials, resolved.
27
30
  *
28
31
  * Everything here is already decided: the model is bound (registry-resolved and
29
- * middleware-wrapped if it was going to be), the prompts are built, the tool
30
- * surface is projected, the budgets are numbers rather than optionals. A loop
31
- * decides *control flow* and nothing else — which is what keeps a second
32
+ * middleware-wrapped if it was going to be), the conversation is seeded, the
33
+ * tool surface is projected, the budgets are numbers rather than optionals. A
34
+ * loop decides *control flow* and nothing else — which is what keeps a second
32
35
  * implementation small enough to be worth writing.
33
36
  */
34
37
  export interface LoopRequest {
35
38
  model: ChatModel;
36
39
  system: string;
37
- userPrompt: string;
40
+ /**
41
+ * The conversation so far, oldest first. A fresh run seeds one user message;
42
+ * a conversational application seeds its stored history plus the new user
43
+ * turn. It must end with a user message or the tool results the model is
44
+ * waiting for, since the loop's first act is to ask the model to continue it.
45
+ * The loop never mutates this array: it copies, then appends to the copy.
46
+ */
47
+ messages: AgentMessage[];
38
48
  tools: Tool[];
39
49
  limits: {
40
50
  maxSteps: number;
41
51
  maxDurationMs: number;
42
52
  };
53
+ /** Sent on every model call this loop makes, the budget summary included. */
54
+ providerOptions?: ProviderOptions;
43
55
  }
44
56
  /**
45
57
  * What a loop is given to talk to the outside world. Both are the same channels
@@ -83,6 +95,17 @@ export interface RunContext {
83
95
  /** Passed through to the loop; see {@link LoopContext.runId}. */
84
96
  runId?: string;
85
97
  }
98
+ /**
99
+ * The terminal-tool call that ended a run: the structured answer. `input` is
100
+ * the model's arguments (a detached copy), `output` is what the tool's
101
+ * executor returned when the loop ran it.
102
+ */
103
+ export interface TerminalCall {
104
+ callId: string;
105
+ name: string;
106
+ input: Record<string, unknown>;
107
+ output: ToolOutput;
108
+ }
86
109
  /**
87
110
  * What a loop returns.
88
111
  *
@@ -92,6 +115,13 @@ export interface RunContext {
92
115
  * same two values appear on the `run.finished` event, and they must agree —
93
116
  * the event stream and the return value are two views of one run, never two
94
117
  * sources of truth.
118
+ *
119
+ * The fields after `outcome` are what a conversational caller needs and the
120
+ * native loop always fills: the finer `stopReason`, the full `messages` (seed
121
+ * plus everything appended), summed `usage`, the `terminal` call when one
122
+ * ended the run, and the `provider`/`model` that served it. They are optional
123
+ * on this seam so a custom loop that has nothing to say about them stays as
124
+ * small as it was; `runConversation` derives what it can when they are absent.
95
125
  */
96
126
  export interface LoopResult {
97
127
  text: string;
@@ -105,6 +135,22 @@ export interface LoopResult {
105
135
  * `"timed_out"` with the prose it had accumulated.
106
136
  */
107
137
  outcome: RunOutcome;
138
+ /** One level finer than `outcome`; see {@link StopReason}. */
139
+ stopReason?: StopReason;
140
+ /** The whole conversation: the seed followed by every message appended. */
141
+ messages?: AgentMessage[];
142
+ /** Token usage summed over every model call that reported it. */
143
+ usage?: TokenUsage;
144
+ /** Present when a terminal tool ended the run. */
145
+ terminal?: TerminalCall;
146
+ /** The `ChatModel.id` that served the run: the adapter name for a wrapped `Provider`. */
147
+ provider?: string;
148
+ /** The model id the last response named, else the adapter's configured model. */
149
+ model?: string;
150
+ /** Every response id the provider reported, in call order; what a billing or audit query keys on. */
151
+ responseIds?: string[];
152
+ /** The upstream that served the last response behind an aggregator, when reported. */
153
+ upstream?: string;
108
154
  }
109
155
  /**
110
156
  * A pluggable control loop. Implementations: the native tool-use loop, or an
@@ -123,9 +169,9 @@ export interface Loop {
123
169
  * The kernel's one loop: the provider-neutral tool-use loop that `runAgent` has
124
170
  * always run, behind the interface.
125
171
  *
126
- * This is the same code path, not a reimplementation — `runAgent` and
127
- * `nativeLoop` both delegate to it, so there is no second behaviour to keep in
128
- * sync and no way for the two to drift.
172
+ * This is the same code path, not a reimplementation — `runAgent`,
173
+ * `runConversation` and `nativeLoop` all delegate to it, so there is no second
174
+ * behaviour to keep in sync and no way for them to drift.
129
175
  */
130
176
  export declare const nativeLoop: Loop;
131
177
  /**
@@ -135,8 +181,9 @@ export declare const nativeLoop: Loop;
135
181
  * forgets them produces a run that appears never to have started — and after
136
182
  * the loop became a seam, "any loop" includes ones this kernel has never seen.
137
183
  * A guarantee that depends on every future implementor remembering it is not a
138
- * guarantee. Both entry points — `runAgent` and `NativeEngine` — come through
139
- * here, so the property holds no matter whose loop runs.
184
+ * guarantee. Every entry point — `runAgent`, `runConversation` and
185
+ * `NativeEngine` — comes through here, so the property holds no matter whose
186
+ * loop runs.
140
187
  *
141
188
  * On a throw it closes the stream with `outcome: "failed"` and then **rethrows
142
189
  * the original error, untouched**. This changes what is observed, never what is
@@ -1 +1 @@
1
- {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE/C;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,SAAS,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;CACpD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,MAAM,EAAE,gBAAgB,CAAA;IACxB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,MAAM,EAAE,eAAe,CAAA;IACvB,kEAAkE;IAClE,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;;OAOG;IACH,OAAO,EAAE,UAAU,CAAA;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC7D;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,EAAE,IAGxB,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,UAAU,GACd,OAAO,CAAC,UAAU,CAAC,CA2BrB"}
1
+ {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"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"}
package/dist/loop.js CHANGED
@@ -25,9 +25,9 @@ import { isAbortError } from "./signals.js";
25
25
  * The kernel's one loop: the provider-neutral tool-use loop that `runAgent` has
26
26
  * always run, behind the interface.
27
27
  *
28
- * This is the same code path, not a reimplementation — `runAgent` and
29
- * `nativeLoop` both delegate to it, so there is no second behaviour to keep in
30
- * sync and no way for the two to drift.
28
+ * This is the same code path, not a reimplementation — `runAgent`,
29
+ * `runConversation` and `nativeLoop` all delegate to it, so there is no second
30
+ * behaviour to keep in sync and no way for them to drift.
31
31
  */
32
32
  export const nativeLoop = {
33
33
  name: "native",
@@ -40,8 +40,9 @@ export const nativeLoop = {
40
40
  * forgets them produces a run that appears never to have started — and after
41
41
  * the loop became a seam, "any loop" includes ones this kernel has never seen.
42
42
  * A guarantee that depends on every future implementor remembering it is not a
43
- * guarantee. Both entry points — `runAgent` and `NativeEngine` — come through
44
- * here, so the property holds no matter whose loop runs.
43
+ * guarantee. Every entry point — `runAgent`, `runConversation` and
44
+ * `NativeEngine` — comes through here, so the property holds no matter whose
45
+ * loop runs.
45
46
  *
46
47
  * On a throw it closes the stream with `outcome: "failed"` and then **rethrows
47
48
  * the original error, untouched**. This changes what is observed, never what is
@@ -74,6 +75,7 @@ export async function runWithEvents(loop, req, ctx) {
74
75
  ctx.events.emit({
75
76
  type: "run.finished",
76
77
  outcome: result.outcome,
78
+ ...(result.stopReason !== undefined ? { stopReason: result.stopReason } : {}),
77
79
  steps: result.steps,
78
80
  text: result.text,
79
81
  });
package/dist/loop.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAwG3C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAS;IAC9B,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC;CAC3C,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAU,EACV,GAAgB,EAChB,GAAe;IAEf,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACd,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;QAC7B,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa;QACvC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACzC,CAAC,CAAA;IAEF,IAAI,MAAkB,CAAA;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;YAC9D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACxD,CAAC,CAAA;QACF,MAAM,GAAG,CAAA;IACX,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACd,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAuJ3C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAS;IAC9B,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC;CAC3C,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAU,EACV,GAAgB,EAChB,GAAe;IAEf,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACd,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;QAC7B,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa;QACvC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACzC,CAAC,CAAA;IAEF,IAAI,MAAkB,CAAA;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACnC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;YAC9D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACxD,CAAC,CAAA;QACF,MAAM,GAAG,CAAA;IACX,CAAC;IAED,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACd,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { ProviderOptions } from "../providers/options.js";
1
2
  import type { AgentMessage, ConverseRequest, ConverseResult, Provider, ToolSpec } from "../providers/types.js";
2
3
  import { type ModelCaps, type ModelInvocation } from "./types.js";
3
4
  /**
@@ -65,5 +66,5 @@ export declare function isChatModel(value: Provider | ChatModel): value is ChatM
65
66
  /** Accept either a `Provider` or a `ChatModel` and always yield a `ChatModel`. */
66
67
  export declare function asChatModel(value: Provider | ChatModel): ChatModel;
67
68
  /** Build a `chat` request from the loop's working state. */
68
- export declare function chatRequest(system: string, messages: AgentMessage[], tools: ToolSpec[], parts?: ChatPart[]): ChatRequest;
69
+ export declare function chatRequest(system: string, messages: AgentMessage[], tools: ToolSpec[], parts?: ChatPart[], providerOptions?: ProviderOptions): ChatRequest;
69
70
  //# sourceMappingURL=chat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/models/chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,QAAQ,EACT,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,eAAe,EAErB,MAAM,YAAY,CAAA;AAEnB;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAEzC;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,6EAA6E;IAC7E,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;CACnB;AAED,+EAA+E;AAC/E,MAAM,MAAM,YAAY,GAAG,cAAc,CAAA;AAEzC,yCAAyC;AACzC,MAAM,MAAM,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;AAElE,wDAAwD;AACxD,eAAO,MAAM,SAAS,SAAS,CAAA;AAE/B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,GAAE,OAAO,CAAC,SAAS,CAAM,GAAG,SAAS,CAmDtF;AAED,qFAAqF;AACrF,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,IAAI,SAAS,CAE3E;AAED,kFAAkF;AAClF,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAElE;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,CAAC,EAAE,QAAQ,EAAE,GACjB,WAAW,CAEb"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/models/chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,QAAQ,EACT,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,eAAe,EAErB,MAAM,YAAY,CAAA;AAEnB;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAEzC;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,6EAA6E;IAC7E,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;CACnB;AAED,+EAA+E;AAC/E,MAAM,MAAM,YAAY,GAAG,cAAc,CAAA;AAEzC,yCAAyC;AACzC,MAAM,MAAM,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;AAElE,wDAAwD;AACxD,eAAO,MAAM,SAAS,SAAS,CAAA;AAE/B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,GAAE,OAAO,CAAC,SAAS,CAAM,GAAG,SAAS,CA6DtF;AAED,qFAAqF;AACrF,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,IAAI,SAAS,CAE3E;AAED,kFAAkF;AAClF,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAElE;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,YAAY,EAAE,EACxB,KAAK,EAAE,QAAQ,EAAE,EACjB,KAAK,CAAC,EAAE,QAAQ,EAAE,EAClB,eAAe,CAAC,EAAE,eAAe,GAChC,WAAW,CAQb"}
@@ -37,13 +37,23 @@ export function chatModel(provider, caps = {}) {
37
37
  requireCapability({ id: provider.name, kind: CHAT_KIND, caps: resolved }, "tools", "request carries tool definitions");
38
38
  }
39
39
  ctx.signal?.throwIfAborted();
40
- const converseReq = { system: req.system, messages: req.messages, tools: req.tools };
40
+ const converseReq = {
41
+ system: req.system,
42
+ messages: req.messages,
43
+ tools: req.tools,
44
+ ...(req.providerOptions ? { providerOptions: req.providerOptions } : {}),
45
+ };
41
46
  // The signal rides through to the provider's HTTP call, so an abort stops
42
47
  // the request in flight rather than after it returns. Passed only when
43
48
  // present so a provider with a one-argument `converse` sees no change.
44
- const value = ctx.signal
49
+ const answered = ctx.signal
45
50
  ? await provider.converse(converseReq, { signal: ctx.signal })
46
51
  : await provider.converse(converseReq);
52
+ // The effective model: what the response named, else what the adapter
53
+ // was configured with. A custom provider that declares neither reports
54
+ // none, which is honest rather than invented.
55
+ const model = answered.model ?? provider.model;
56
+ const value = model !== undefined ? { ...answered, model } : answered;
47
57
  return { value, ...(value.usage ? { usage: value.usage } : {}) };
48
58
  },
49
59
  // The `Provider` interface exposes no health endpoint, so report the honest
@@ -66,7 +76,13 @@ export function asChatModel(value) {
66
76
  return isChatModel(value) ? value : chatModel(value);
67
77
  }
68
78
  /** Build a `chat` request from the loop's working state. */
69
- export function chatRequest(system, messages, tools, parts) {
70
- return { system, messages, tools, ...(parts?.length ? { parts } : {}) };
79
+ export function chatRequest(system, messages, tools, parts, providerOptions) {
80
+ return {
81
+ system,
82
+ messages,
83
+ tools,
84
+ ...(parts?.length ? { parts } : {}),
85
+ ...(providerOptions ? { providerOptions } : {}),
86
+ };
71
87
  }
72
88
  //# sourceMappingURL=chat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/models/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/models/chat.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,22 @@ export interface TokenUsage {
53
53
  cacheReadTokens?: number;
54
54
  /** Input tokens written to a prompt cache — a subset of `inputTokens`. */
55
55
  cacheWriteTokens?: number;
56
+ /** Output tokens spent on reasoning — a subset of `outputTokens`, when the provider breaks it out. */
57
+ reasoningTokens?: number;
58
+ /**
59
+ * What the provider or gateway itself billed for the call, when it reports
60
+ * one (OpenRouter `usage.cost`, in US dollars). Absent when the provider does
61
+ * not price the call in its response; a consumer enforcing a cost cap treats
62
+ * absent as "unknown", never as free. Summed across a run by amount; every
63
+ * reporter today bills in USD, and a second currency would be a new value
64
+ * here rather than a silent mix.
65
+ */
66
+ reportedCost?: ReportedCost;
67
+ }
68
+ /** A cost the provider reported, with its currency named so it is never a bare number. */
69
+ export interface ReportedCost {
70
+ amount: number;
71
+ currency: "USD";
56
72
  }
57
73
  /**
58
74
  * Accounting for kinds that aren't billed per token — frames processed, seconds
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,MAAM,SAAS,GACnB,MAAM,GAAG,eAAe,GAAG,WAAW,GAAG,qBAAqB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEhF;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,uDAAuD;IACvD,SAAS,EAAE,OAAO,CAAA;IAClB,kFAAkF;IAClF,KAAK,EAAE,OAAO,CAAA;IACd,sDAAsD;IACtD,eAAe,EAAE,OAAO,CAAA;IACxB,yCAAyC;IACzC,KAAK,EAAE,OAAO,CAAA;CACf;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,SAAS,CAAA;AAE1C,wEAAwE;AACxE,MAAM,WAAW,WAAW,CAAC,GAAG;IAC9B,0DAA0D;IAC1D,KAAK,EAAE,GAAG,CAAA;IACV,2EAA2E;IAC3E,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,iFAAiF;IACjF,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,8CAA8C;IAC9C,MAAM,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACpC;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;AAEjE,sDAAsD;AACtD,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,YAAY,CAAA;IACpB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAA;IACtE,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAClF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,GACX,IAAI,CAIN;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe,CAAC,GAAG,EAAE,GAAG;IACvC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/D,yFAAyF;IACzF,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IACxF,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;CACzB;AAED,uFAAuF;AACvF,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;CAChB;AAED,wDAAwD;AACxD,wBAAgB,aAAa,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,aAAa,CAEnF;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,SAAS,CAAA;gBAExB,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM;CAQ/E;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,SAAS,EAC3B,MAAM,CAAC,EAAE,MAAM,GACd,IAAI,CAEN;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,GAAG,EAC5C,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAChC,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,aAAa,GACjB,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAO3B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"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"}