@theoremjs/agents 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +277 -995
- package/esm/mod.d.ts +34 -20
- package/esm/mod.js +19 -12
- package/esm/src/cli/commands/bench.js +36 -14
- package/esm/src/cli/commands/detect-compile.d.ts +17 -0
- package/esm/src/cli/commands/detect-compile.js +22 -0
- package/esm/src/cli/commands/eval.d.ts +3 -3
- package/esm/src/cli/commands/fuzz-canary.js +55 -16
- package/esm/src/cli/commands/profile.js +4 -4
- package/esm/src/cli/commands/run.d.ts +2 -2
- package/esm/src/cli/commands/run.js +1 -1
- package/esm/src/cli/commands/test.d.ts +4 -3
- package/esm/src/cli/commands/test.js +2 -2
- package/esm/src/cli/index.js +9 -9
- package/esm/src/cli/matrix/fixtures.js +25 -30
- package/esm/src/evals/attachments.d.ts +1 -0
- package/esm/src/evals/attachments.js +4 -2
- package/esm/src/evals/breakdown.d.ts +2 -0
- package/esm/src/evals/breakdown.js +1 -0
- package/esm/src/evals/graders/answer.d.ts +3 -0
- package/esm/src/evals/graders/answer.js +1 -0
- package/esm/src/evals/graders/code.d.ts +7 -31
- package/esm/src/evals/graders/code.js +4 -25
- package/esm/src/evals/graders/judge.d.ts +4 -0
- package/esm/src/evals/graders/judge.js +7 -5
- package/esm/src/evals/graders/latency.d.ts +1 -0
- package/esm/src/evals/graders/latency.js +3 -2
- package/esm/src/evals/graders/live.d.ts +3 -0
- package/esm/src/evals/graders/live.js +2 -0
- package/esm/src/evals/graders/media.js +1 -2
- package/esm/src/evals/graders/shared.js +1 -1
- package/esm/src/evals/graders/transcript.d.ts +2 -0
- package/esm/src/evals/graders/transcript.js +5 -3
- package/esm/src/evals/mod.d.ts +1 -9
- package/esm/src/evals/mod.js +1 -9
- package/esm/src/evals/record.d.ts +6 -0
- package/esm/src/evals/record.js +4 -2
- package/esm/src/evals/rubrics/mod.d.ts +1 -1
- package/esm/src/evals/rubrics/mod.js +1 -1
- package/esm/src/evals/rubrics/mustache.js +1 -1
- package/esm/src/evals/rubrics/types.js +1 -1
- package/esm/src/evals/run.d.ts +9 -52
- package/esm/src/evals/run.js +12 -46
- package/esm/src/evals/suite.d.ts +12 -3
- package/esm/src/evals/suite.js +9 -4
- package/esm/src/evals/summary.d.ts +3 -0
- package/esm/src/evals/summary.js +1 -0
- package/esm/src/evals/trial.d.ts +3 -16
- package/esm/src/evals/trial.js +7 -30
- package/esm/src/evals/types.d.ts +30 -121
- package/esm/src/evals/types.js +3 -16
- package/esm/src/evals/verdict.d.ts +5 -0
- package/esm/src/evals/verdict.js +4 -1
- package/esm/src/guardrails/boundaries.d.ts +41 -0
- package/esm/src/guardrails/boundaries.js +103 -0
- package/esm/src/guardrails/canary-gate.d.ts +1 -0
- package/esm/src/guardrails/canary.d.ts +49 -15
- package/esm/src/guardrails/canary.js +103 -30
- package/esm/src/guardrails/compile-egress.d.ts +6 -5
- package/esm/src/guardrails/compile-egress.js +6 -5
- package/esm/src/guardrails/corpus/canary-egress-attacks.d.ts +3 -1
- package/esm/src/guardrails/corpus/canary-egress-attacks.js +4 -2
- package/esm/src/guardrails/corpus/fuzz-inbound.js +14 -17
- package/esm/src/guardrails/corpus/inbound-payloads.d.ts +2 -0
- package/esm/src/guardrails/corpus/inbound-payloads.js +4 -2
- package/esm/src/guardrails/corpus/live-attacks.d.ts +2 -0
- package/esm/src/guardrails/corpus/live-attacks.js +6 -1
- package/esm/src/guardrails/corpus/mod.d.ts +1 -1
- package/esm/src/guardrails/corpus/secrets.d.ts +3 -3
- package/esm/src/guardrails/corpus/secrets.js +2 -2
- package/esm/src/guardrails/corpus/strings.d.ts +1 -1
- package/esm/src/guardrails/corpus/strings.js +1 -1
- package/esm/src/guardrails/corpus/types.d.ts +5 -1
- package/esm/src/guardrails/credential-rules.d.ts +36 -0
- package/esm/src/guardrails/credential-rules.js +3001 -0
- package/esm/src/guardrails/credential-scan.d.ts +45 -0
- package/esm/src/guardrails/credential-scan.js +172 -0
- package/esm/src/guardrails/destinations.d.ts +45 -0
- package/esm/src/guardrails/destinations.js +234 -0
- package/esm/src/guardrails/detect-at.d.ts +107 -0
- package/esm/src/guardrails/detect-at.js +434 -0
- package/esm/src/guardrails/detect-reply.d.ts +61 -0
- package/esm/src/guardrails/detect-reply.js +95 -0
- package/esm/src/guardrails/detect-stream.d.ts +33 -0
- package/esm/src/guardrails/detect-stream.js +77 -0
- package/esm/src/guardrails/detectors.d.ts +216 -0
- package/esm/src/guardrails/detectors.js +503 -0
- package/esm/src/guardrails/egress-automata.d.ts +4 -6
- package/esm/src/guardrails/egress-automata.js +24095 -4572
- package/esm/src/guardrails/egress-compiler.d.ts +38 -16
- package/esm/src/guardrails/egress-compiler.js +254 -60
- package/esm/src/guardrails/egress-patterns.d.ts +4 -2
- package/esm/src/guardrails/egress-patterns.js +6 -2
- package/esm/src/guardrails/egress-stream.d.ts +54 -36
- package/esm/src/guardrails/egress-stream.js +253 -124
- package/esm/src/guardrails/egress-urls.d.ts +6 -3
- package/esm/src/guardrails/egress-urls.js +14 -22
- package/esm/src/guardrails/egress.d.ts +26 -86
- package/esm/src/guardrails/egress.js +59 -309
- package/esm/src/guardrails/error.d.ts +13 -8
- package/esm/src/guardrails/error.js +25 -18
- package/esm/src/guardrails/event-schemas.d.ts +46 -3
- package/esm/src/guardrails/event-schemas.js +12 -5
- package/esm/src/guardrails/events.d.ts +5 -1
- package/esm/src/guardrails/events.js +4 -1
- package/esm/src/guardrails/hints.d.ts +14 -0
- package/esm/src/guardrails/hints.js +57 -0
- package/esm/src/guardrails/hits.d.ts +7 -1
- package/esm/src/guardrails/hits.js +12 -1
- package/esm/src/guardrails/host-patterns.d.ts +85 -0
- package/esm/src/guardrails/host-patterns.js +173 -0
- package/esm/src/guardrails/injection-patterns.d.ts +6 -1
- package/esm/src/guardrails/injection-patterns.js +33 -1
- package/esm/src/guardrails/injection-reversed.d.ts +9 -0
- package/esm/src/guardrails/injection-reversed.js +49 -0
- package/esm/src/guardrails/injection.d.ts +17 -1
- package/esm/src/guardrails/injection.js +259 -36
- package/esm/src/guardrails/labels.d.ts +40 -0
- package/esm/src/guardrails/labels.js +881 -0
- package/esm/src/guardrails/live-outbound-gate.d.ts +9 -8
- package/esm/src/guardrails/live-outbound-gate.js +100 -107
- package/esm/src/guardrails/mod.d.ts +30 -22
- package/esm/src/guardrails/mod.js +19 -14
- package/esm/src/guardrails/network.d.ts +4 -0
- package/esm/src/guardrails/network.js +21 -19
- package/esm/src/guardrails/normalize.d.ts +15 -1
- package/esm/src/guardrails/normalize.js +34 -1
- package/esm/src/guardrails/policy.d.ts +2 -17
- package/esm/src/guardrails/policy.js +12 -41
- package/esm/src/guardrails/progressive-yield.d.ts +65 -24
- package/esm/src/guardrails/progressive-yield.js +191 -147
- package/esm/src/guardrails/prompt-echo.d.ts +4 -2
- package/esm/src/guardrails/prompt-echo.js +87 -6
- package/esm/src/guardrails/quota.d.ts +4 -1
- package/esm/src/guardrails/quota.js +7 -2
- package/esm/src/guardrails/rules.d.ts +20 -29
- package/esm/src/guardrails/rules.js +23 -30
- package/esm/src/guardrails/sanitize.d.ts +32 -15
- package/esm/src/guardrails/sanitize.js +100 -124
- package/esm/src/guardrails/sensitive-groups.d.ts +21 -0
- package/esm/src/guardrails/sensitive-groups.js +12 -0
- package/esm/src/guardrails/sensitive.d.ts +16 -23
- package/esm/src/guardrails/sensitive.js +168 -47
- package/esm/src/guardrails/serialize.d.ts +1 -0
- package/esm/src/guardrails/testing.d.ts +4 -2
- package/esm/src/guardrails/testing.js +4 -2
- package/esm/src/guardrails/theorem-error.d.ts +5 -2
- package/esm/src/guardrails/theorem-error.js +6 -3
- package/esm/src/guardrails/thought-guard.d.ts +34 -13
- package/esm/src/guardrails/thought-guard.js +264 -64
- package/esm/src/guardrails/tool-directives.d.ts +29 -10
- package/esm/src/guardrails/tool-directives.js +133 -47
- package/esm/src/guardrails/tool-leak.d.ts +26 -0
- package/esm/src/guardrails/tool-leak.js +45 -0
- package/esm/src/guardrails/tool-result.d.ts +45 -14
- package/esm/src/guardrails/tool-result.js +94 -70
- package/esm/src/guardrails/types.d.ts +79 -71
- package/esm/src/guardrails/types.js +11 -7
- package/esm/src/host/client-turn.d.ts +29 -2
- package/esm/src/host/client-turn.js +46 -4
- package/esm/src/host/mint-trace.d.ts +1 -0
- package/esm/src/host/mint-trace.js +3 -2
- package/esm/src/host/mod.d.ts +2 -2
- package/esm/src/host/mod.js +1 -1
- package/esm/src/host/readStreamingJsonStringField.js +2 -43
- package/esm/src/host/reply.d.ts +6 -0
- package/esm/src/host/reply.js +8 -1
- package/esm/src/interface/blocks.d.ts +3 -0
- package/esm/src/interface/blocks.js +84 -14
- package/esm/src/interface/composer-actions.d.ts +4 -0
- package/esm/src/interface/composer-actions.js +5 -3
- package/esm/src/interface/draft.d.ts +6 -0
- package/esm/src/interface/draft.js +22 -11
- package/esm/src/interface/from-profile.d.ts +13 -1
- package/esm/src/interface/from-profile.js +66 -31
- package/esm/src/interface/history.d.ts +9 -3
- package/esm/src/interface/history.js +33 -24
- package/esm/src/interface/inputs.d.ts +1 -0
- package/esm/src/interface/inputs.js +3 -0
- package/esm/src/interface/mod.d.ts +4 -2
- package/esm/src/interface/mod.js +3 -2
- package/esm/src/interface/models.d.ts +7 -0
- package/esm/src/interface/models.js +5 -0
- package/esm/src/interface/pending.d.ts +9 -0
- package/esm/src/interface/pending.js +9 -3
- package/esm/src/interface/profile-interface.js +54 -40
- package/esm/src/interface/session.d.ts +12 -5
- package/esm/src/interface/session.js +17 -10
- package/esm/src/interface/stop.d.ts +13 -0
- package/esm/src/interface/stop.js +28 -0
- package/esm/src/interface/tool-calls.d.ts +14 -2
- package/esm/src/interface/tool-calls.js +64 -10
- package/esm/src/interface/tool-invoke.d.ts +2 -0
- package/esm/src/interface/tool-invoke.js +3 -1
- package/esm/src/interface/tool-media.d.ts +2 -0
- package/esm/src/interface/tool-media.js +2 -1
- package/esm/src/interface/types.d.ts +105 -40
- package/esm/src/interface/types.js +1 -0
- package/esm/src/kernel/api-catalog.d.ts +85 -0
- package/esm/src/kernel/api-catalog.js +229 -0
- package/esm/src/kernel/auth/crypto.d.ts +7 -2
- package/esm/src/kernel/auth/crypto.js +12 -10
- package/esm/src/kernel/auth/oauth.d.ts +2 -1
- package/esm/src/kernel/auth/oauth.js +23 -22
- package/esm/src/kernel/auth/typed-secret.js +2 -2
- package/esm/src/kernel/auth/types.d.ts +13 -0
- package/esm/src/kernel/checkpoint.d.ts +43 -0
- package/esm/src/kernel/checkpoint.js +58 -0
- package/esm/src/kernel/default-scope.d.ts +43 -5
- package/esm/src/kernel/default-scope.js +54 -5
- package/esm/src/kernel/engine/call-trace.d.ts +19 -0
- package/esm/src/kernel/engine/call-trace.js +29 -0
- package/esm/src/kernel/engine/compaction.d.ts +6 -5
- package/esm/src/kernel/engine/compaction.js +12 -11
- package/esm/src/kernel/engine/decision.d.ts +10 -8
- package/esm/src/kernel/engine/decision.js +174 -146
- package/esm/src/kernel/engine/embedding.d.ts +8 -0
- package/esm/src/kernel/engine/embedding.js +118 -0
- package/esm/src/kernel/engine/live-inbound.d.ts +14 -4
- package/esm/src/kernel/engine/live-inbound.js +36 -11
- package/esm/src/kernel/engine/live-ingress.d.ts +6 -0
- package/esm/src/kernel/engine/live-ingress.js +6 -1
- package/esm/src/kernel/engine/repair.js +12 -12
- package/esm/src/kernel/engine/runner/gates.d.ts +2 -2
- package/esm/src/kernel/engine/runner/gates.js +287 -101
- package/esm/src/kernel/engine/runner/mod.d.ts +19 -5
- package/esm/src/kernel/engine/runner/mod.js +107 -56
- package/esm/src/kernel/engine/runner/nested.d.ts +32 -0
- package/esm/src/kernel/engine/runner/nested.js +134 -0
- package/esm/src/kernel/engine/runner/schema-validation.d.ts +24 -3
- package/esm/src/kernel/engine/runner/schema-validation.js +78 -4
- package/esm/src/kernel/engine/runner/stages.d.ts +1 -1
- package/esm/src/kernel/engine/runner/stages.js +1 -8
- package/esm/src/kernel/engine/runner/state.d.ts +33 -12
- package/esm/src/kernel/engine/runner/state.js +11 -1
- package/esm/src/kernel/engine/runner/step-order.d.ts +27 -0
- package/esm/src/kernel/engine/runner/step-order.js +165 -0
- package/esm/src/kernel/engine/runner/steps.d.ts +2 -2
- package/esm/src/kernel/engine/runner/steps.js +329 -169
- package/esm/src/kernel/engine/runner/stream.d.ts +42 -11
- package/esm/src/kernel/engine/runner/stream.js +197 -46
- package/esm/src/kernel/engine/runner/usage.d.ts +5 -5
- package/esm/src/kernel/engine/runner/usage.js +12 -14
- package/esm/src/kernel/engine/session/mod.d.ts +8 -6
- package/esm/src/kernel/engine/session/mod.js +360 -129
- package/esm/src/kernel/engine/session/session-trace.d.ts +10 -10
- package/esm/src/kernel/engine/session/session-trace.js +41 -30
- package/esm/src/kernel/engine/token-estimate.d.ts +10 -64
- package/esm/src/kernel/engine/token-estimate.js +14 -194
- package/esm/src/kernel/engine/tool-trace.d.ts +3 -3
- package/esm/src/kernel/engine/tool-trace.js +2 -1
- package/esm/src/kernel/engine/turn-trace.d.ts +8 -7
- package/esm/src/kernel/engine/turn-trace.js +28 -36
- package/esm/src/kernel/engine/usage.d.ts +6 -0
- package/esm/src/kernel/engine/usage.js +17 -0
- package/esm/src/kernel/interaction-parts.d.ts +3 -0
- package/esm/src/kernel/interaction-parts.js +18 -0
- package/esm/src/kernel/json.d.ts +10 -0
- package/esm/src/kernel/json.js +3 -0
- package/esm/src/kernel/mod.d.ts +38 -11
- package/esm/src/kernel/mod.js +22 -7
- package/esm/src/kernel/profile-graph.d.ts +11 -6
- package/esm/src/kernel/profile-graph.js +14 -7
- package/esm/src/kernel/profile-presence.d.ts +10 -1
- package/esm/src/kernel/profile-presence.js +90 -75
- package/esm/src/kernel/profile-scope.d.ts +7 -3
- package/esm/src/kernel/profile-scope.js +67 -55
- package/esm/src/kernel/protocols/binding.d.ts +65 -0
- package/esm/src/kernel/protocols/binding.js +125 -0
- package/esm/src/kernel/protocols/limits.d.ts +15 -0
- package/esm/src/kernel/protocols/limits.js +28 -0
- package/esm/src/kernel/protocols/mod.d.ts +5 -0
- package/esm/src/kernel/protocols/mod.js +5 -0
- package/esm/src/kernel/protocols/prices.d.ts +36 -0
- package/esm/src/kernel/protocols/prices.js +37 -0
- package/esm/src/kernel/protocols/protocol.d.ts +253 -0
- package/esm/src/kernel/protocols/protocol.js +253 -0
- package/esm/src/kernel/protocols/provider.d.ts +108 -0
- package/esm/src/kernel/protocols/provider.js +143 -0
- package/esm/src/kernel/protocols/runtime.d.ts +55 -0
- package/esm/src/kernel/protocols/runtime.js +534 -0
- package/esm/src/kernel/provider-budget.d.ts +32 -0
- package/esm/src/kernel/provider-budget.js +262 -0
- package/esm/src/kernel/provider-dispatch.d.ts +13 -0
- package/esm/src/kernel/provider-dispatch.js +36 -0
- package/esm/src/kernel/provider-live.d.ts +7 -0
- package/esm/src/kernel/provider-live.js +189 -0
- package/esm/src/kernel/provider-runtime.d.ts +57 -0
- package/esm/src/kernel/provider-runtime.js +524 -0
- package/esm/src/kernel/registry/attachments.d.ts +15 -4
- package/esm/src/kernel/registry/attachments.js +31 -22
- package/esm/src/kernel/registry/catalog.d.ts +6 -0
- package/esm/src/kernel/registry/catalog.js +9 -2
- package/esm/src/kernel/registry/embedding-rules.d.ts +28 -0
- package/esm/src/kernel/registry/embedding-rules.js +66 -0
- package/esm/src/kernel/registry/ingress.d.ts +6 -2
- package/esm/src/kernel/registry/ingress.js +55 -10
- package/esm/src/kernel/registry/kernel-registry.d.ts +3 -0
- package/esm/src/kernel/registry/kernel-registry.js +9 -2
- package/esm/src/kernel/registry/profile-outputs.js +4 -1
- package/esm/src/kernel/registry/profiles.d.ts +38 -14
- package/esm/src/kernel/registry/profiles.js +280 -205
- package/esm/src/kernel/registry/provider-request.d.ts +3 -3
- package/esm/src/kernel/registry/provider-request.js +5 -13
- package/esm/src/kernel/registry/resolve.d.ts +4 -1
- package/esm/src/kernel/registry/resolve.js +59 -58
- package/esm/src/kernel/registry/schemas.d.ts +3 -0
- package/esm/src/kernel/registry/schemas.js +3 -1
- package/esm/src/kernel/registry/slot-fill.d.ts +7 -0
- package/esm/src/kernel/registry/slot-fill.js +22 -0
- package/esm/src/kernel/registry/system-prompt.js +7 -8
- package/esm/src/kernel/registry/vault.d.ts +14 -13
- package/esm/src/kernel/registry/vault.js +1 -14
- package/esm/src/kernel/schema.d.ts +100 -46
- package/esm/src/kernel/schema.js +499 -257
- package/esm/src/kernel/scope.d.ts +12 -5
- package/esm/src/kernel/scope.js +23 -3
- package/esm/src/kernel/stages.d.ts +38 -3
- package/esm/src/kernel/stages.js +82 -39
- package/esm/src/kernel/stop.d.ts +29 -6
- package/esm/src/kernel/stop.js +16 -4
- package/esm/src/kernel/system-parts.js +6 -6
- package/esm/src/kernel/tools/activity-label.d.ts +12 -6
- package/esm/src/kernel/tools/activity-label.js +258 -32
- package/esm/src/kernel/tools/agent.d.ts +66 -0
- package/esm/src/kernel/tools/agent.js +212 -0
- package/esm/src/kernel/tools/coordinate.d.ts +4 -0
- package/esm/src/kernel/tools/coordinate.js +165 -0
- package/esm/src/kernel/tools/events.d.ts +21 -6
- package/esm/src/kernel/tools/events.js +53 -18
- package/esm/src/kernel/tools/execute.d.ts +47 -11
- package/esm/src/kernel/tools/execute.js +508 -136
- package/esm/src/kernel/tools/gate-answer.d.ts +12 -2
- package/esm/src/kernel/tools/gate-answer.js +17 -6
- package/esm/src/kernel/tools/handler-events.d.ts +45 -0
- package/esm/src/kernel/tools/handler-events.js +106 -0
- package/esm/src/kernel/tools/harness.d.ts +1 -0
- package/esm/src/kernel/tools/harness.js +2 -1
- package/esm/src/kernel/tools/http-limit.d.ts +27 -0
- package/esm/src/kernel/tools/http-limit.js +85 -0
- package/esm/src/kernel/tools/invoke.d.ts +27 -5
- package/esm/src/kernel/tools/invoke.js +223 -70
- package/esm/src/kernel/tools/mcp-sessions.d.ts +4 -1
- package/esm/src/kernel/tools/mcp-sessions.js +13 -8
- package/esm/src/kernel/tools/mod.d.ts +4 -3
- package/esm/src/kernel/tools/mod.js +3 -2
- package/esm/src/kernel/tools/model-text.d.ts +10 -5
- package/esm/src/kernel/tools/model-text.js +18 -12
- package/esm/src/kernel/tools/operation.d.ts +76 -0
- package/esm/src/kernel/tools/operation.js +100 -0
- package/esm/src/kernel/tools/page-answer.d.ts +8 -0
- package/esm/src/kernel/tools/page-answer.js +19 -0
- package/esm/src/kernel/tools/permission.d.ts +11 -2
- package/esm/src/kernel/tools/permission.js +12 -12
- package/esm/src/kernel/tools/project.d.ts +4 -1
- package/esm/src/kernel/tools/project.js +32 -2
- package/esm/src/kernel/tools/registry.d.ts +9 -2
- package/esm/src/kernel/tools/registry.js +69 -10
- package/esm/src/kernel/tools/remote.d.ts +40 -6
- package/esm/src/kernel/tools/remote.js +219 -92
- package/esm/src/kernel/tools/resolve.d.ts +3 -0
- package/esm/src/kernel/tools/resolve.js +12 -4
- package/esm/src/kernel/tools/run.d.ts +28 -0
- package/esm/src/kernel/tools/run.js +86 -0
- package/esm/src/kernel/tools/schema.d.ts +3 -3
- package/esm/src/kernel/tools/schema.js +21 -100
- package/esm/src/kernel/tools/signed-in-fetch.d.ts +2 -1
- package/esm/src/kernel/tools/signed-in-fetch.js +3 -3
- package/esm/src/kernel/tools/stage-run.d.ts +27 -4
- package/esm/src/kernel/tools/stage-run.js +75 -17
- package/esm/src/kernel/tools/types.d.ts +235 -25
- package/esm/src/kernel/tools/unchecked-output.d.ts +14 -0
- package/esm/src/kernel/tools/unchecked-output.js +18 -0
- package/esm/src/kernel/turn-events.d.ts +208 -31
- package/esm/src/kernel/turn-events.js +127 -9
- package/esm/src/kernel/types.d.ts +302 -161
- package/esm/src/kernel/util/base64.d.ts +2 -0
- package/esm/src/kernel/util/base64.js +2 -0
- package/esm/src/kernel/util/partial-json.d.ts +23 -0
- package/esm/src/kernel/util/partial-json.js +128 -0
- package/esm/src/kernel/util/record.d.ts +1 -0
- package/esm/src/kernel/util/record.js +1 -0
- package/esm/src/observability/destinations.d.ts +5 -0
- package/esm/src/observability/destinations.js +7 -2
- package/esm/src/observability/jsonl.d.ts +2 -2
- package/esm/src/observability/jsonl.js +15 -22
- package/esm/src/observability/mod.d.ts +3 -3
- package/esm/src/observability/mod.js +2 -2
- package/esm/src/observability/openinference.d.ts +1 -1
- package/esm/src/observability/openinference.js +3 -3
- package/esm/src/observability/otlp.d.ts +3 -0
- package/esm/src/observability/otlp.js +3 -3
- package/esm/src/observability/phoenix.d.ts +1 -0
- package/esm/src/observability/policy.d.ts +3 -0
- package/esm/src/observability/policy.js +5 -1
- package/esm/src/observability/resolve-policy.js +11 -5
- package/esm/src/observability/spans.d.ts +8 -2
- package/esm/src/observability/spans.js +21 -5
- package/esm/src/observability/trace-catalog.d.ts +19 -2
- package/esm/src/observability/trace-catalog.js +130 -88
- package/esm/src/observability/trace-record.js +22 -17
- package/esm/src/observability/trace-schema.d.ts +3 -0
- package/esm/src/observability/trace-schema.js +1 -1
- package/esm/src/observability/trace-sink.d.ts +1 -0
- package/esm/src/observability/trace-sink.js +1 -1
- package/esm/src/observability/trace-span.d.ts +7 -1
- package/esm/src/observability/trace-span.js +3 -1
- package/esm/src/observability/trace.d.ts +2 -0
- package/esm/src/observability/trace.js +4 -2
- package/esm/src/observability/types.d.ts +35 -11
- package/esm/src/observability/types.js +1 -1
- package/esm/src/presets/google/speech-voices.d.ts +1 -0
- package/esm/src/presets/google-limits.d.ts +1 -0
- package/esm/src/presets/google.d.ts +27 -12
- package/esm/src/presets/google.js +34 -25
- package/esm/src/presets/local.d.ts +26 -0
- package/esm/src/presets/local.js +30 -0
- package/esm/src/presets/mod.d.ts +5 -4
- package/esm/src/presets/mod.js +4 -4
- package/esm/src/presets/openrouter.d.ts +14 -1
- package/esm/src/presets/openrouter.js +19 -1
- package/esm/src/providers/embedding-limits.d.ts +7 -0
- package/esm/src/providers/embedding-limits.js +12 -0
- package/esm/src/providers/gemini/embedding-protocol.d.ts +8 -0
- package/esm/src/providers/gemini/embedding-protocol.js +125 -0
- package/esm/src/providers/gemini/interactions-protocol.d.ts +8 -0
- package/esm/src/providers/gemini/interactions-protocol.js +102 -0
- package/esm/src/providers/gemini/live-protocol.d.ts +3 -0
- package/esm/src/providers/gemini/live-protocol.js +191 -0
- package/esm/src/providers/gemini/prices.d.ts +3 -0
- package/esm/src/providers/gemini/prices.js +63 -0
- package/esm/src/providers/gemini/provider.d.ts +7 -0
- package/esm/src/providers/gemini/provider.js +39 -0
- package/esm/src/providers/google/api-error.d.ts +2 -0
- package/esm/src/providers/google/api-error.js +26 -18
- package/esm/src/providers/google/builtins.d.ts +14 -0
- package/esm/src/providers/google/builtins.js +57 -0
- package/esm/src/providers/google/grounding.d.ts +4 -4
- package/esm/src/providers/google/interactions/framing.d.ts +20 -8
- package/esm/src/providers/google/interactions/framing.js +85 -44
- package/esm/src/providers/google/interactions/steps.d.ts +5 -5
- package/esm/src/providers/google/interactions/steps.js +4 -4
- package/esm/src/providers/google/interactions/stream.d.ts +10 -11
- package/esm/src/providers/google/interactions/stream.js +33 -100
- package/esm/src/providers/google/live/framing.d.ts +15 -5
- package/esm/src/providers/google/live/framing.js +25 -25
- package/esm/src/providers/google/live/stream.d.ts +6 -44
- package/esm/src/providers/google/live/stream.js +4 -210
- package/esm/src/providers/google/urls.d.ts +1 -3
- package/esm/src/providers/google/urls.js +1 -3
- package/esm/src/providers/google/usage.js +2 -2
- package/esm/src/providers/live.d.ts +6 -0
- package/esm/src/providers/live.js +6 -0
- package/esm/src/providers/local/embedding-protocol.d.ts +7 -0
- package/esm/src/providers/local/embedding-protocol.js +60 -0
- package/esm/src/providers/local/provider.d.ts +7 -0
- package/esm/src/providers/local/provider.js +28 -0
- package/esm/src/providers/mod.d.ts +28 -7
- package/esm/src/providers/mod.js +19 -3
- package/esm/src/providers/open-ai/protocol.d.ts +3 -0
- package/esm/src/providers/open-ai/protocol.js +189 -0
- package/esm/src/providers/openrouter/embedding-protocol.d.ts +6 -0
- package/esm/src/providers/openrouter/embedding-protocol.js +86 -0
- package/esm/src/providers/openrouter/image.d.ts +0 -9
- package/esm/src/providers/openrouter/image.js +0 -153
- package/esm/src/providers/openrouter/images-protocol.d.ts +3 -0
- package/esm/src/providers/openrouter/images-protocol.js +82 -0
- package/esm/src/providers/openrouter/openai/compat.d.ts +2 -2
- package/esm/src/providers/openrouter/openai/compat.js +6 -6
- package/esm/src/providers/openrouter/openai/image-payload.d.ts +2 -2
- package/esm/src/providers/openrouter/openai/reasoning-state.d.ts +2 -0
- package/esm/src/providers/openrouter/openai/reasoning-state.js +31 -0
- package/esm/src/providers/openrouter/protocol.d.ts +8 -0
- package/esm/src/providers/openrouter/protocol.js +171 -0
- package/esm/src/providers/openrouter/provider.d.ts +10 -0
- package/esm/src/providers/openrouter/provider.js +50 -0
- package/esm/src/providers/shared/carried-tool-files.d.ts +7 -0
- package/esm/src/providers/shared/carried-tool-files.js +43 -0
- package/esm/src/providers/shared/pcm.js +2 -2
- package/esm/src/providers/shared/protocol-events.d.ts +8 -0
- package/esm/src/providers/shared/protocol-events.js +20 -0
- package/esm/src/providers/shared/response-identity.d.ts +2 -2
- package/esm/src/providers/shared/retry.d.ts +18 -0
- package/esm/src/providers/shared/retry.js +89 -0
- package/esm/src/providers/shared/sse.d.ts +0 -4
- package/esm/src/providers/shared/sse.js +50 -36
- package/esm/src/providers/shared/tool-args.d.ts +6 -7
- package/esm/src/providers/shared/tool-args.js +10 -6
- package/esm/src/providers/shared/tool-draft.d.ts +16 -0
- package/esm/src/providers/shared/tool-draft.js +14 -0
- package/esm/src/providers/shared/upstream-tap.d.ts +2 -2
- package/esm/src/providers/shared/upstream-tape.js +1 -1
- package/esm/src/providers/system-one/protocol.d.ts +8 -0
- package/esm/src/providers/system-one/protocol.js +93 -0
- package/esm/src/providers/types.d.ts +48 -16
- package/esm/src/providers/types.js +2 -1
- package/esm/src/providers/typesafe/provider.d.ts +7 -0
- package/esm/src/providers/typesafe/provider.js +24 -0
- package/esm/src/surface/formats.d.ts +19 -1
- package/esm/src/surface/formats.js +68 -29
- package/esm/src/surface/mod.d.ts +4 -2
- package/esm/src/surface/mod.js +4 -2
- package/esm/src/surface/runtime.d.ts +4 -0
- package/esm/src/surface/runtime.js +2 -0
- package/esm/src/surface/tools.d.ts +2 -8
- package/esm/src/surface/tools.js +4 -22
- package/esm/src/surface/types.d.ts +6 -0
- package/package.json +5 -13
- package/esm/src/cli/commands/egress-compile.d.ts +0 -17
- package/esm/src/cli/commands/egress-compile.js +0 -25
- package/esm/src/guardrails/egress-policy.d.ts +0 -27
- package/esm/src/guardrails/egress-policy.js +0 -76
- package/esm/src/guardrails/egress-rules.d.ts +0 -54
- package/esm/src/guardrails/egress-rules.js +0 -49
- package/esm/src/guardrails/lexicon.d.ts +0 -30
- package/esm/src/guardrails/lexicon.js +0 -478
- package/esm/src/kernel/engine/media-probe/audio.d.ts +0 -7
- package/esm/src/kernel/engine/media-probe/audio.js +0 -342
- package/esm/src/kernel/engine/media-probe/bytes.d.ts +0 -6
- package/esm/src/kernel/engine/media-probe/bytes.js +0 -26
- package/esm/src/kernel/engine/media-probe/image.d.ts +0 -5
- package/esm/src/kernel/engine/media-probe/image.js +0 -171
- package/esm/src/kernel/engine/media-probe/iso-bmff.d.ts +0 -19
- package/esm/src/kernel/engine/media-probe/iso-bmff.js +0 -48
- package/esm/src/kernel/engine/media-probe/matroska.d.ts +0 -35
- package/esm/src/kernel/engine/media-probe/matroska.js +0 -226
- package/esm/src/kernel/engine/media-probe/mp4.d.ts +0 -22
- package/esm/src/kernel/engine/media-probe/mp4.js +0 -279
- package/esm/src/kernel/engine/media-probe/opus.d.ts +0 -4
- package/esm/src/kernel/engine/media-probe/opus.js +0 -23
- package/esm/src/kernel/engine/media-probe/pdf.d.ts +0 -5
- package/esm/src/kernel/engine/media-probe/pdf.js +0 -117
- package/esm/src/kernel/engine/media-probe/video.d.ts +0 -15
- package/esm/src/kernel/engine/media-probe/video.js +0 -49
- package/esm/src/presets/typesafe.d.ts +0 -2
- package/esm/src/presets/typesafe.js +0 -2
- package/esm/src/providers/create-provider.d.ts +0 -21
- package/esm/src/providers/create-provider.js +0 -90
- package/esm/src/providers/decision/usage.d.ts +0 -3
- package/esm/src/providers/decision/usage.js +0 -25
- package/esm/src/providers/google/interactions/mod.d.ts +0 -2
- package/esm/src/providers/google/interactions/mod.js +0 -2
- package/esm/src/providers/google/keys.d.ts +0 -20
- package/esm/src/providers/google/keys.js +0 -87
- package/esm/src/providers/google/live/mod.d.ts +0 -7
- package/esm/src/providers/google/live/mod.js +0 -7
- package/esm/src/providers/google/live/openapi-schema.d.ts +0 -1
- package/esm/src/providers/google/live/openapi-schema.js +0 -42
- package/esm/src/providers/google/live/session.d.ts +0 -14
- package/esm/src/providers/google/live/session.js +0 -150
- package/esm/src/providers/local/local.d.ts +0 -12
- package/esm/src/providers/local/local.js +0 -186
- package/esm/src/providers/local/mod.d.ts +0 -8
- package/esm/src/providers/local/mod.js +0 -8
- package/esm/src/providers/openrouter/cache-control.d.ts +0 -5
- package/esm/src/providers/openrouter/cache-control.js +0 -4
- package/esm/src/providers/openrouter/chat.d.ts +0 -64
- package/esm/src/providers/openrouter/chat.js +0 -490
- package/esm/src/providers/openrouter/openai/sdk-messages.d.ts +0 -10
- package/esm/src/providers/openrouter/openai/sdk-messages.js +0 -99
- package/esm/src/providers/openrouter/resolve-api-key.d.ts +0 -3
- package/esm/src/providers/openrouter/resolve-api-key.js +0 -8
- package/esm/src/providers/openrouter/speech.d.ts +0 -18
- package/esm/src/providers/openrouter/speech.js +0 -109
- package/esm/src/providers/probe.d.ts +0 -5
- package/esm/src/providers/probe.js +0 -15
- package/esm/src/providers/shared/builtin-wire.d.ts +0 -4
- package/esm/src/providers/shared/builtin-wire.js +0 -9
- package/esm/src/providers/shared/vault.d.ts +0 -13
- package/esm/src/providers/shared/vault.js +0 -41
|
@@ -1,12 +1,16 @@
|
|
|
1
|
+
import { type ProviderCheckpoint, type ProviderWarning } from './checkpoint.js';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
import { type ErrorCopies, type GuardrailEvent } from '../guardrails/event-schemas.js';
|
|
3
4
|
import type { ErrorKind } from '../guardrails/theorem-error.js';
|
|
4
|
-
import {
|
|
5
|
+
import { type JsonObject, type JsonValue } from './json.js';
|
|
6
|
+
import { AWAITING_USER_INPUT_STATUS, type CompactionMeter, type CompactionOutcome, type MediaInputKind, type StageApplyWarningCode, type ToolAccess, type ToolAuthType, type ToolPermission, type TurnStage, type TurnStopKind } from './schema.js';
|
|
5
7
|
export type { ErrorCopies, ErrorKind, GuardrailEvent };
|
|
8
|
+
/** A text part of a history message. */
|
|
6
9
|
export interface InteractionTextPart {
|
|
7
10
|
type: 'text';
|
|
8
11
|
text: string;
|
|
9
12
|
}
|
|
13
|
+
/** A media part of a history message, carried inline as base64. */
|
|
10
14
|
export interface InteractionMediaPart {
|
|
11
15
|
type: MediaInputKind;
|
|
12
16
|
mimeType: string;
|
|
@@ -18,7 +22,31 @@ export interface InteractionMediaRefPart {
|
|
|
18
22
|
mimeType: string;
|
|
19
23
|
uri: string;
|
|
20
24
|
}
|
|
25
|
+
/** A part of a history message: text or media. */
|
|
21
26
|
export type InteractionPart = InteractionTextPart | InteractionMediaPart | InteractionMediaRefPart;
|
|
27
|
+
export declare const interactionPartSchema: z.ZodType<InteractionPart>;
|
|
28
|
+
/** One message of a conversation history the host replays into a turn. */
|
|
29
|
+
/** Where a piece of signed reasoning came from. `protocol` decides where it may go back to. */
|
|
30
|
+
export interface ReasoningOrigin {
|
|
31
|
+
protocol: string;
|
|
32
|
+
provider?: string;
|
|
33
|
+
apiId?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Signed reasoning a model wrote, kept word for word: Gemini's thought signatures, OpenRouter's
|
|
37
|
+
* `reasoning_details`. It goes back only to the protocol that wrote it, or one extended from it;
|
|
38
|
+
* `data` is that protocol's own shape, checked against its `reasoning` schema.
|
|
39
|
+
*/
|
|
40
|
+
export interface ReasoningPart {
|
|
41
|
+
text?: string;
|
|
42
|
+
data: JsonValue;
|
|
43
|
+
origin: ReasoningOrigin;
|
|
44
|
+
}
|
|
45
|
+
export declare const reasoningPartSchema: z.ZodObject<{
|
|
46
|
+
text: z.ZodOptional<z.ZodString>;
|
|
47
|
+
data: z.ZodType<JsonValue>;
|
|
48
|
+
origin: z.ZodType<ReasoningOrigin>;
|
|
49
|
+
}>;
|
|
22
50
|
export interface TurnHistoryMessage {
|
|
23
51
|
role: 'system' | 'user' | 'assistant' | 'tool';
|
|
24
52
|
content?: string;
|
|
@@ -30,21 +58,40 @@ export interface TurnHistoryMessage {
|
|
|
30
58
|
name: string;
|
|
31
59
|
arguments: string;
|
|
32
60
|
};
|
|
33
|
-
/** The call's `ToolCallRequest.thoughtSignature`, replayed with it. */
|
|
34
|
-
thoughtSignature?: string;
|
|
35
61
|
}[];
|
|
62
|
+
/** On an assistant message: the signed reasoning written with it, to go back with it. */
|
|
63
|
+
reasoning?: ReasoningPart[];
|
|
36
64
|
tool_call_id?: string;
|
|
37
65
|
name?: string;
|
|
38
66
|
metadata?: Record<string, unknown>;
|
|
39
67
|
}
|
|
68
|
+
/** The schema a history message parses against. */
|
|
40
69
|
export declare const turnHistoryMessageSchema: z.ZodType<TurnHistoryMessage>;
|
|
41
70
|
/** Why a turn or live utterance ended. */
|
|
42
71
|
export interface TurnStop {
|
|
43
72
|
kind: TurnStopKind;
|
|
44
73
|
native?: string;
|
|
45
74
|
}
|
|
75
|
+
export declare const turnStopSchema: z.ZodObject<{
|
|
76
|
+
kind: z.ZodEnum<{
|
|
77
|
+
length: "length";
|
|
78
|
+
tool: "tool";
|
|
79
|
+
cancelled: "cancelled";
|
|
80
|
+
interrupted: "interrupted";
|
|
81
|
+
stream_incomplete: "stream_incomplete";
|
|
82
|
+
provider_error: "provider_error";
|
|
83
|
+
completed: "completed";
|
|
84
|
+
gate: "gate";
|
|
85
|
+
filtered: "filtered";
|
|
86
|
+
step_limit: "step_limit";
|
|
87
|
+
generation_complete: "generation_complete";
|
|
88
|
+
}>;
|
|
89
|
+
native: z.ZodOptional<z.ZodString>;
|
|
90
|
+
}, z.core.$strip>;
|
|
46
91
|
declare const TURN_TOKEN_SIDES: readonly ["input", "output"];
|
|
92
|
+
/** Which side of a call's tokens, input or output, was estimated rather than reported. */
|
|
47
93
|
export type TurnTokenSide = (typeof TURN_TOKEN_SIDES)[number];
|
|
94
|
+
/** What a turn cost, as the provider reports it. */
|
|
48
95
|
export interface TurnCost {
|
|
49
96
|
/** What the provider charged, in US dollars. */
|
|
50
97
|
usd: number;
|
|
@@ -118,6 +165,7 @@ export interface TurnResponse {
|
|
|
118
165
|
}
|
|
119
166
|
declare const SOURCE_TYPES: readonly ["web", "maps"];
|
|
120
167
|
export type SourceType = (typeof SOURCE_TYPES)[number];
|
|
168
|
+
/** A source a grounded answer cites. */
|
|
121
169
|
export interface Source {
|
|
122
170
|
title: string;
|
|
123
171
|
uri: string;
|
|
@@ -133,7 +181,8 @@ export interface GroundingEvent {
|
|
|
133
181
|
searchHtml?: string;
|
|
134
182
|
}
|
|
135
183
|
export interface EvidenceBase {
|
|
136
|
-
provider
|
|
184
|
+
/** The registered provider's id. */
|
|
185
|
+
provider: string;
|
|
137
186
|
/** The provider's own payload, for the builder: `forClient` strips it unless `includeEvidenceRaw`. */
|
|
138
187
|
raw?: Record<string, unknown>;
|
|
139
188
|
/**
|
|
@@ -143,6 +192,7 @@ export interface EvidenceBase {
|
|
|
143
192
|
*/
|
|
144
193
|
partial?: boolean;
|
|
145
194
|
}
|
|
195
|
+
/** What a provider returned beside the answer, such as code it ran or search results it used. */
|
|
146
196
|
export type ProviderEvidence = (EvidenceBase & {
|
|
147
197
|
kind: 'code_execution_call';
|
|
148
198
|
/** Generated source from `code_execution_call.arguments.code`. */
|
|
@@ -173,7 +223,7 @@ export type ProviderEvidence = (EvidenceBase & {
|
|
|
173
223
|
});
|
|
174
224
|
/** A session the provider ended after warning it would. */
|
|
175
225
|
export interface SessionEnded {
|
|
176
|
-
/** The provider warned first
|
|
226
|
+
/** The provider warned first. */
|
|
177
227
|
cause: 'go_away';
|
|
178
228
|
code: number;
|
|
179
229
|
/** Milliseconds from the last warning to the close; compare with `timeLeftMs`. */
|
|
@@ -204,10 +254,13 @@ export type SessionEvent = {
|
|
|
204
254
|
} | {
|
|
205
255
|
kind: 'waiting_for_input' | 'turn_complete' | 'working' | 'idle';
|
|
206
256
|
};
|
|
257
|
+
/** The kind of a live session event. */
|
|
207
258
|
export type SessionEventKind = SessionEvent['kind'];
|
|
259
|
+
/** The live session event of kind `K`. */
|
|
208
260
|
export type SessionEventOf<K extends SessionEventKind> = Extract<SessionEvent, {
|
|
209
261
|
kind: K;
|
|
210
262
|
}>;
|
|
263
|
+
/** Why a tool call failed, for the builder and for the user. */
|
|
211
264
|
export interface ToolFailure {
|
|
212
265
|
/** What went wrong, for the builder. Stable per failure site. */
|
|
213
266
|
code: string;
|
|
@@ -232,22 +285,30 @@ export interface ToolAuthChallenge {
|
|
|
232
285
|
resource?: string;
|
|
233
286
|
requiredScopes?: string[];
|
|
234
287
|
}
|
|
235
|
-
/**
|
|
288
|
+
/**
|
|
289
|
+
* Fields every gate carries. `tool`, `summary`, and `request` are trimmed and never blank.
|
|
290
|
+
* `request` is the tool's `labels.request` filled from the call's input; `access` is the tool's.
|
|
291
|
+
*/
|
|
236
292
|
export interface ToolGateBase {
|
|
237
293
|
tool: string;
|
|
238
294
|
permission?: ToolPermission;
|
|
239
295
|
summary?: string;
|
|
296
|
+
request?: string;
|
|
297
|
+
access?: ToolAccess;
|
|
298
|
+
preparedArguments?: Record<string, unknown>;
|
|
240
299
|
}
|
|
241
300
|
/**
|
|
242
|
-
* Confirm-to-run / permission / sign-in gate: the tool's body did not run.
|
|
243
|
-
* A sign-in gate (`auth`) carries the challenge that says where.
|
|
301
|
+
* Confirm-to-run / permission / sign-in / page gate: the tool's body did not run.
|
|
302
|
+
* A sign-in gate (`auth`) carries the challenge that says where. A `page` gate waits for the
|
|
303
|
+
* page's answer to a tool with `answeredBy: 'page'`; no person decides it.
|
|
244
304
|
*/
|
|
245
305
|
export type ToolGate = (ToolGateBase & {
|
|
246
|
-
kind: 'confirmation' | 'permission';
|
|
306
|
+
kind: 'confirmation' | 'permission' | 'page';
|
|
247
307
|
}) | (ToolGateBase & {
|
|
248
308
|
kind: 'auth';
|
|
249
309
|
authChallenge: ToolAuthChallenge;
|
|
250
310
|
});
|
|
311
|
+
/** The schema a tool gate parses against. */
|
|
251
312
|
export declare const toolGateSchema: z.ZodType<ToolGate>;
|
|
252
313
|
export interface ToolWarning {
|
|
253
314
|
code: string;
|
|
@@ -276,13 +337,18 @@ export type AwaitingUserInput = {
|
|
|
276
337
|
kind: 'choice';
|
|
277
338
|
options: string[];
|
|
278
339
|
});
|
|
340
|
+
/** The schema a pause for user input parses against. */
|
|
279
341
|
export declare const awaitingUserInputSchema: z.ZodType<AwaitingUserInput>;
|
|
342
|
+
/** True when a tool output asks the turn to pause for the user. */
|
|
343
|
+
export declare function isAwaitingUserInput(output: unknown): output is AwaitingUserInput;
|
|
344
|
+
/** A function tool as it is sent to the model. */
|
|
280
345
|
export interface WireFunctionTool {
|
|
281
346
|
type: 'function';
|
|
282
347
|
name: string;
|
|
283
348
|
description: string;
|
|
284
349
|
parameters: Record<string, unknown>;
|
|
285
350
|
}
|
|
351
|
+
/** The tools a turn was offered: provider builtins, gated ids, and the wire definitions. */
|
|
286
352
|
export interface TurnToolSnapshot {
|
|
287
353
|
builtins: string[];
|
|
288
354
|
/** Tool ids eligible this turn (custom: allow + path; builtin: model builtInTools + path). */
|
|
@@ -295,16 +361,21 @@ export interface TurnToolSnapshot {
|
|
|
295
361
|
sessionPermissions?: string[];
|
|
296
362
|
wire: WireFunctionTool[];
|
|
297
363
|
}
|
|
364
|
+
/** The schema a tool snapshot parses against. */
|
|
298
365
|
export declare const turnToolSnapshotSchema: z.ZodType<TurnToolSnapshot>;
|
|
299
366
|
export interface ToolEventBase {
|
|
300
367
|
name: string;
|
|
301
368
|
/** Call id: the provider's own id when it sent one, else kernel-assigned. */
|
|
302
369
|
callId: string;
|
|
303
370
|
}
|
|
371
|
+
export interface GateReference {
|
|
372
|
+
callId: string;
|
|
373
|
+
operationId: string;
|
|
374
|
+
}
|
|
375
|
+
export declare const gateReferenceSchema: z.ZodType<GateReference>;
|
|
304
376
|
/**
|
|
305
|
-
* The
|
|
306
|
-
*
|
|
307
|
-
* it by `callId`.
|
|
377
|
+
* invariant: The provider request owns the arguments. Kernel events add an operation ID.
|
|
378
|
+
* Interface folds join phases by that ID, or by callId for historical events.
|
|
308
379
|
*/
|
|
309
380
|
export interface ToolCallRequest extends ToolEventBase {
|
|
310
381
|
phase?: undefined;
|
|
@@ -314,18 +385,23 @@ export interface ToolCallRequest extends ToolEventBase {
|
|
|
314
385
|
*/
|
|
315
386
|
arguments: Record<string, unknown>;
|
|
316
387
|
/**
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
*
|
|
320
|
-
* fails on Google (probe 25/09/2026).
|
|
388
|
+
* On a step's first call: the signed reasoning the model wrote before the step's calls (a Gemini
|
|
389
|
+
* thought signature, OpenRouter's `reasoning_details`). It goes back on the assistant message
|
|
390
|
+
* holding the step's calls, word for word; a host keeping its own history keeps it there.
|
|
321
391
|
*/
|
|
322
|
-
|
|
392
|
+
reasoning?: ReasoningPart[];
|
|
323
393
|
/**
|
|
324
394
|
* The model step that made this call: calls sharing it were made together,
|
|
325
395
|
* in one model response, and replay as one assistant message. Unique within
|
|
326
396
|
* the turn. Absent on a host's own call (`invokeTool` without a `callId`).
|
|
327
397
|
*/
|
|
328
398
|
stepId?: string;
|
|
399
|
+
/**
|
|
400
|
+
* How many calls the step has, on every call of it: a host that runs a step's
|
|
401
|
+
* calls as one knows the step is complete once it has seen this many. Set
|
|
402
|
+
* wherever `stepId` is; absent with it.
|
|
403
|
+
*/
|
|
404
|
+
stepCallCount?: number;
|
|
329
405
|
}
|
|
330
406
|
export interface ToolPhaseBase extends ToolEventBase {
|
|
331
407
|
/** When the kernel emitted this phase (epoch ms). */
|
|
@@ -341,24 +417,38 @@ export interface ToolCallEdit {
|
|
|
341
417
|
*
|
|
342
418
|
* - `running` — the body started; `edited` when the user changed the arguments;
|
|
343
419
|
* `activity` is the tool's activity label filled from the call's input.
|
|
344
|
-
* - `progress` / `trace` / `artifact` / `warning` — streamed while it ran.
|
|
345
|
-
*
|
|
346
|
-
*
|
|
420
|
+
* - `progress` / `trace` / `artifact` / `warning` — streamed while it ran. A `progress` its
|
|
421
|
+
* output's check stops is not sent.
|
|
422
|
+
* - `draft` — the next piece of what the tool is writing, for a preview, each piece read at
|
|
423
|
+
* `tool_output_<kind>` first (an agent tool's: its agent's reply). Sent only under
|
|
424
|
+
* `outputs.streaming.mode` `sse`. The model never reads it: it reads `complete`'s output.
|
|
425
|
+
* - `complete` — `output`, as the person is shown it (read at `tool_shown_<kind>`); `awaiting`
|
|
426
|
+
* when it asked the user something; `parts` for the media it returned beside its output
|
|
427
|
+
* (images, audio);
|
|
347
428
|
* `readBack` is the text the model reads back, after guardrails;
|
|
348
|
-
* `activityPast` is the tool's past activity label filled from its input and output
|
|
349
|
-
*
|
|
429
|
+
* `activityPast` is the tool's past activity label filled from its input and output, or its
|
|
430
|
+
* failed label when a `post_tool` handler asked for it (`labelFailed`).
|
|
431
|
+
* - `gate` — confirmation, permission, or sign-in held the call; the body did not run.
|
|
350
432
|
* A sign-in gate's `readBack` is what the model reads while the person signs in.
|
|
351
433
|
* - `error` — the call failed or was refused (`failure.kind` `declined` · `blocked` · `cancelled` · …);
|
|
352
|
-
* `readBack` is the text the model reads back for it, after guardrails
|
|
434
|
+
* `readBack` is the text the model reads back for it, after guardrails;
|
|
435
|
+
* `activityPast` is the tool's failed label.
|
|
353
436
|
* - `cancel` — cancelled in flight (e.g. live barge-in).
|
|
354
437
|
*/
|
|
355
438
|
export type ToolPhaseEvent = ToolPhaseBase & ({
|
|
356
439
|
phase: 'running';
|
|
357
440
|
edited?: ToolCallEdit;
|
|
358
441
|
activity?: string;
|
|
442
|
+
} | {
|
|
443
|
+
phase: 'dispatch';
|
|
444
|
+
grantId: string;
|
|
445
|
+
arguments: Record<string, unknown>;
|
|
359
446
|
} | {
|
|
360
447
|
phase: 'progress';
|
|
361
448
|
data: unknown;
|
|
449
|
+
} | {
|
|
450
|
+
phase: 'draft';
|
|
451
|
+
text: string;
|
|
362
452
|
} | {
|
|
363
453
|
phase: 'trace';
|
|
364
454
|
step: ToolTraceStep;
|
|
@@ -375,6 +465,8 @@ export type ToolPhaseEvent = ToolPhaseBase & ({
|
|
|
375
465
|
readBack?: string;
|
|
376
466
|
parts?: InteractionPart[];
|
|
377
467
|
activityPast?: string;
|
|
468
|
+
/** An agent tool's call: the called agent's own usage, which the caller's `done.tokens` includes. */
|
|
469
|
+
tokens?: TurnTokens;
|
|
378
470
|
} | {
|
|
379
471
|
phase: 'gate';
|
|
380
472
|
gate: ToolGate;
|
|
@@ -383,11 +475,19 @@ export type ToolPhaseEvent = ToolPhaseBase & ({
|
|
|
383
475
|
phase: 'error';
|
|
384
476
|
failure: ToolFailure;
|
|
385
477
|
readBack?: string;
|
|
478
|
+
activityPast?: string;
|
|
479
|
+
/** An agent tool's call: the called agent's own usage, as on `complete`. */
|
|
480
|
+
tokens?: TurnTokens;
|
|
386
481
|
} | {
|
|
387
482
|
phase: 'cancel';
|
|
388
483
|
});
|
|
389
484
|
export type ToolCallPhase = ToolPhaseEvent['phase'];
|
|
390
|
-
|
|
485
|
+
/** A tool call event: the model's request or a phase of running it. */
|
|
486
|
+
export type ToolCallEvent = (ToolCallRequest | ToolPhaseEvent) & {
|
|
487
|
+
/** Kernel-issued identity. Historical events can predate this field. */
|
|
488
|
+
operationId?: string;
|
|
489
|
+
};
|
|
490
|
+
/** A note that a stage handler's result was partly or wholly ignored, and why. */
|
|
391
491
|
export interface StageApplyWarning {
|
|
392
492
|
code: StageApplyWarningCode;
|
|
393
493
|
message: string;
|
|
@@ -447,6 +547,7 @@ export interface CompactionEvent extends Omit<CompactionResult, 'toCompact'> {
|
|
|
447
547
|
/** Stops that end a turn with tools pending; `done.tools` is present exactly on them. */
|
|
448
548
|
export type ToolSnapshotStopKind = Extract<TurnStopKind, 'tool' | 'gate'>;
|
|
449
549
|
export interface DoneBase {
|
|
550
|
+
providerState?: ProviderCheckpoint;
|
|
450
551
|
/** The turn's summed usage (`sumTokens` over its `tokens` events). */
|
|
451
552
|
tokens?: TurnTokens;
|
|
452
553
|
/** The turn's root span as a W3C `traceparent`, for a later request's `links`. */
|
|
@@ -471,18 +572,70 @@ export type DoneEvent = DoneBase & ({
|
|
|
471
572
|
};
|
|
472
573
|
tools?: undefined;
|
|
473
574
|
});
|
|
474
|
-
/** Every event a host receives from `runTurn`, `invokeTool
|
|
575
|
+
/** Every event a host receives from `runTurn`, `invokeTool`, or a live session. */
|
|
576
|
+
/** One item an item rule removed from a structured reply, and why. */
|
|
577
|
+
export interface RemovedItem {
|
|
578
|
+
/** The dotted path of the list it sat in. */
|
|
579
|
+
path: string;
|
|
580
|
+
reason: string;
|
|
581
|
+
item: unknown;
|
|
582
|
+
}
|
|
583
|
+
/** A field of a structured reply that still failed its checks when the turn ran out of retries. */
|
|
584
|
+
export interface InvalidField {
|
|
585
|
+
/** The dotted path of the field. */
|
|
586
|
+
path: string;
|
|
587
|
+
error: string;
|
|
588
|
+
}
|
|
589
|
+
/** Why a turn threw an attempt's reply away and asked again. */
|
|
590
|
+
export type AttemptReason = 'validation' | 'egress';
|
|
475
591
|
export type TurnEvent = {
|
|
592
|
+
type: 'provider_warning';
|
|
593
|
+
warning: ProviderWarning;
|
|
594
|
+
} | {
|
|
595
|
+
type: 'provider_checkpoint';
|
|
596
|
+
providerState: ProviderCheckpoint;
|
|
597
|
+
history?: TurnHistoryMessage[];
|
|
598
|
+
} | {
|
|
476
599
|
type: 'text';
|
|
477
600
|
text: string;
|
|
478
601
|
} | {
|
|
479
602
|
type: 'thought';
|
|
480
603
|
text: string;
|
|
481
604
|
}
|
|
605
|
+
/** Content a protocol emits with no common shape; `kind` is `<protocol>.<kind>`. */
|
|
606
|
+
| {
|
|
607
|
+
type: 'custom';
|
|
608
|
+
kind: string;
|
|
609
|
+
data: JsonObject;
|
|
610
|
+
}
|
|
482
611
|
/** The profile's structured-output schema validates `structured`. */
|
|
483
612
|
| {
|
|
484
613
|
type: 'structured';
|
|
485
614
|
structured: unknown;
|
|
615
|
+
/** Items the profile's item rules removed from `structured`, each with why. */
|
|
616
|
+
removed?: RemovedItem[];
|
|
617
|
+
/** The fields still invalid when `outputs.validation` ran out of retries; the reply goes out as it is. */
|
|
618
|
+
failed?: InvalidField[];
|
|
619
|
+
}
|
|
620
|
+
/**
|
|
621
|
+
* The next piece of a structured reply's JSON as the model writes it, for a preview: read at
|
|
622
|
+
* `reply` as the reply's text, before the `structured` event that follows is read whole at
|
|
623
|
+
* `reply_structured`. That event is the reply. Sent only under `outputs.streaming.mode` `sse`; an
|
|
624
|
+
* `attempt` throws it away with the rest of the reply.
|
|
625
|
+
*/
|
|
626
|
+
| {
|
|
627
|
+
type: 'structured_draft';
|
|
628
|
+
text: string;
|
|
629
|
+
}
|
|
630
|
+
/**
|
|
631
|
+
* The turn threw the reply so far away and asks again. Text, media, and structured output since
|
|
632
|
+
* the turn began, or since the last `attempt`, are not the reply; {@linkcode keptReply} drops them.
|
|
633
|
+
* `attempt` counts the retries: 1 for the first, as the trace's `theorem.attempt.retry` does.
|
|
634
|
+
*/
|
|
635
|
+
| {
|
|
636
|
+
type: 'attempt';
|
|
637
|
+
attempt: number;
|
|
638
|
+
reason: AttemptReason;
|
|
486
639
|
} | {
|
|
487
640
|
type: 'media';
|
|
488
641
|
media: {
|
|
@@ -537,6 +690,17 @@ export type TurnEvent = {
|
|
|
537
690
|
injected?: {
|
|
538
691
|
id: string;
|
|
539
692
|
}[];
|
|
693
|
+
}
|
|
694
|
+
/**
|
|
695
|
+
* A tool call the model is still writing: the next piece of its arguments' JSON text, in order,
|
|
696
|
+
* for a preview. The `tool` call that follows owns the arguments; a draft cut off before it never
|
|
697
|
+
* runs. Sent only under `outputs.streaming.mode` `sse`.
|
|
698
|
+
*/
|
|
699
|
+
| {
|
|
700
|
+
type: 'tool_draft';
|
|
701
|
+
callId: string;
|
|
702
|
+
name: string;
|
|
703
|
+
text: string;
|
|
540
704
|
} | {
|
|
541
705
|
type: 'tool';
|
|
542
706
|
tool: ToolCallEvent;
|
|
@@ -549,12 +713,14 @@ export type TurnEvent = {
|
|
|
549
713
|
errorKind: ErrorKind;
|
|
550
714
|
/** Public-safe failure text for hosts to show users: the wording for `errorKind`. */
|
|
551
715
|
error?: string;
|
|
552
|
-
/** The
|
|
716
|
+
/** The labels key and parameters behind `error` when more specific than the kind's. */
|
|
553
717
|
errorCopy?: ErrorCopies;
|
|
554
718
|
/** Raw diagnostic detail for traces/logs; never surface to end users (`forClient` strips it). */
|
|
555
719
|
errorInternal?: string;
|
|
556
720
|
};
|
|
721
|
+
/** The `type` of a turn event. */
|
|
557
722
|
export type TurnEventType = TurnEvent['type'];
|
|
723
|
+
/** The turn event whose `type` is `K`. */
|
|
558
724
|
export type TurnEventOf<K extends TurnEventType> = Extract<TurnEvent, {
|
|
559
725
|
type: K;
|
|
560
726
|
}>;
|
|
@@ -563,24 +729,27 @@ export type TurnEventOf<K extends TurnEventType> = Extract<TurnEvent, {
|
|
|
563
729
|
* reports the turn's own `done`; a live session forwards it (`turnDoneOf`).
|
|
564
730
|
*/
|
|
565
731
|
export interface CallDone {
|
|
732
|
+
providerState?: ProviderCheckpoint;
|
|
566
733
|
stop: TurnStop;
|
|
567
734
|
interactionId?: string;
|
|
568
735
|
/** A user utterance interrupted the live response (barge-in). */
|
|
569
736
|
interrupted?: boolean;
|
|
570
737
|
}
|
|
571
738
|
/**
|
|
572
|
-
* What a
|
|
573
|
-
*
|
|
574
|
-
* never receive.
|
|
739
|
+
* What a model call yields to the engine: the host events, its call's `done`, the response's
|
|
740
|
+
* identity (`response`, recorded on the call's trace) and the signed reasoning it wrote, which the
|
|
741
|
+
* engine puts on the step's first call. Hosts never receive the last three as they are.
|
|
575
742
|
*/
|
|
576
|
-
export type
|
|
743
|
+
export type ModelEvent = Exclude<TurnEvent, {
|
|
577
744
|
type: 'done';
|
|
578
745
|
}> | ({
|
|
579
746
|
type: 'done';
|
|
580
747
|
} & CallDone) | {
|
|
581
748
|
type: 'response';
|
|
582
749
|
response: TurnResponse;
|
|
583
|
-
}
|
|
750
|
+
} | ({
|
|
751
|
+
type: 'reasoning';
|
|
752
|
+
} & ReasoningPart);
|
|
584
753
|
/** A `done` before its stop decides whether it carries the turn's tools. */
|
|
585
754
|
export type DoneFields = DoneBase & {
|
|
586
755
|
stop: TurnStop;
|
|
@@ -591,9 +760,17 @@ export type DoneFields = DoneBase & {
|
|
|
591
760
|
* (a live session forwarding a call's `done`), such a stop has no host `done`.
|
|
592
761
|
*/
|
|
593
762
|
export declare function turnDoneOf(done: DoneFields, tools: TurnToolSnapshot): TurnEventOf<'done'>;
|
|
763
|
+
/** Builds the `done` event from a model call's end, with the tools the turn was offered. */
|
|
594
764
|
export declare function turnDoneOf(done: DoneFields): TurnEventOf<'done'> | undefined;
|
|
765
|
+
/** The schema any turn event parses against. */
|
|
595
766
|
export declare const turnEventSchema: z.ZodType<TurnEvent>;
|
|
596
767
|
/** Every `TurnEvent` kind and its schema: a wire parser tells a kind it doesn't know from a malformed one it does. */
|
|
597
768
|
export declare const TURN_EVENT_SCHEMAS: {
|
|
598
769
|
readonly [K in TurnEventType]: z.ZodType<TurnEventOf<K>>;
|
|
599
770
|
};
|
|
771
|
+
/**
|
|
772
|
+
* `events` without the replies a retry threw away: each `attempt` drops the text, media and
|
|
773
|
+
* structured output before it, back to the turn's start or its last `done`. Tool calls, thoughts
|
|
774
|
+
* and everything else stay, since they happened.
|
|
775
|
+
*/
|
|
776
|
+
export declare function keptReply(events: readonly TurnEvent[]): TurnEvent[];
|