stitchkit 0.87.1 → 0.89.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.
- package/CHANGELOG.md +190 -0
- package/dist/agent-runtime/child-blocking.d.ts +17 -0
- package/dist/agent-runtime/child-blocking.d.ts.map +1 -0
- package/dist/agent-runtime/child-budget-policy.d.ts +23 -0
- package/dist/agent-runtime/child-budget-policy.d.ts.map +1 -0
- package/dist/agent-runtime/children-contract.d.ts +155 -0
- package/dist/agent-runtime/children-contract.d.ts.map +1 -0
- package/dist/agent-runtime/children.d.ts +4 -99
- package/dist/agent-runtime/children.d.ts.map +1 -1
- package/dist/agent-runtime/coding-shell-process.d.ts +33 -0
- package/dist/agent-runtime/coding-shell-process.d.ts.map +1 -0
- package/dist/agent-runtime/coding-tool-contract.d.ts +18 -0
- package/dist/agent-runtime/coding-tool-contract.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-files.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-listing.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-paths.d.ts +1 -1
- package/dist/agent-runtime/coding-tool-paths.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-search-patch.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-shell.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-utf8.d.ts +28 -0
- package/dist/agent-runtime/coding-tool-utf8.d.ts.map +1 -0
- package/dist/agent-runtime/contained-files.d.ts +20 -0
- package/dist/agent-runtime/contained-files.d.ts.map +1 -1
- package/dist/agent-runtime/durability-contract.d.ts +176 -0
- package/dist/agent-runtime/durability-contract.d.ts.map +1 -0
- package/dist/agent-runtime/durability-json.d.ts +3 -0
- package/dist/agent-runtime/durability-json.d.ts.map +1 -0
- package/dist/agent-runtime/durability-ledger.d.ts +16 -0
- package/dist/agent-runtime/durability-ledger.d.ts.map +1 -0
- package/dist/agent-runtime/durability-scheduler.d.ts +29 -0
- package/dist/agent-runtime/durability-scheduler.d.ts.map +1 -0
- package/dist/agent-runtime/durability.d.ts +14 -0
- package/dist/agent-runtime/durability.d.ts.map +1 -0
- package/dist/agent-runtime/event-search.d.ts.map +1 -1
- package/dist/agent-runtime/harness-contract.d.ts +37 -0
- package/dist/agent-runtime/harness-contract.d.ts.map +1 -1
- package/dist/agent-runtime/harness.d.ts +8 -0
- package/dist/agent-runtime/harness.d.ts.map +1 -1
- package/dist/agent-runtime/models.d.ts +14 -0
- package/dist/agent-runtime/models.d.ts.map +1 -1
- package/dist/agent-runtime/observability.d.ts +8 -0
- package/dist/agent-runtime/observability.d.ts.map +1 -1
- package/dist/agent-runtime/owned-provider-stream.d.ts +16 -0
- package/dist/agent-runtime/owned-provider-stream.d.ts.map +1 -0
- package/dist/agent-runtime/prompt.d.ts +23 -0
- package/dist/agent-runtime/prompt.d.ts.map +1 -1
- package/dist/agent-runtime/run-execution.d.ts.map +1 -1
- package/dist/agent-runtime/runtime-internals.d.ts +16 -0
- package/dist/agent-runtime/runtime-internals.d.ts.map +1 -1
- package/dist/agent-runtime/runtime.d.ts +25 -0
- package/dist/agent-runtime/runtime.d.ts.map +1 -1
- package/dist/agent-runtime/sandbox-broker.d.ts +7 -0
- package/dist/agent-runtime/sandbox-broker.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-bubblewrap-args.d.ts +9 -0
- package/dist/agent-runtime/sandbox-bubblewrap-args.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-bubblewrap-storage.d.ts +22 -0
- package/dist/agent-runtime/sandbox-bubblewrap-storage.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-bubblewrap.d.ts +14 -0
- package/dist/agent-runtime/sandbox-bubblewrap.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-coding-adapter.d.ts +15 -0
- package/dist/agent-runtime/sandbox-coding-adapter.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-coding.d.ts +15 -0
- package/dist/agent-runtime/sandbox-coding.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-contract.d.ts +93 -0
- package/dist/agent-runtime/sandbox-contract.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-process-owner.d.ts +11 -0
- package/dist/agent-runtime/sandbox-process-owner.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-process.d.ts +8 -0
- package/dist/agent-runtime/sandbox-process.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox-session.d.ts +5 -0
- package/dist/agent-runtime/sandbox-session.d.ts.map +1 -0
- package/dist/agent-runtime/sandbox.d.ts +19 -0
- package/dist/agent-runtime/sandbox.d.ts.map +1 -1
- package/dist/agent-runtime/schemas.d.ts +6 -0
- package/dist/agent-runtime/schemas.d.ts.map +1 -1
- package/dist/agent-runtime/sqlite-purge.d.ts.map +1 -1
- package/dist/agent-runtime/sqlite.d.ts.map +1 -1
- package/dist/agent-runtime/store-driver.d.ts +127 -0
- package/dist/agent-runtime/store-driver.d.ts.map +1 -1
- package/dist/agent-runtime/store-events.d.ts +106 -0
- package/dist/agent-runtime/store-events.d.ts.map +1 -1
- package/dist/agent-runtime/store-migrations/v2-to-v3.d.ts +14 -0
- package/dist/agent-runtime/store-migrations/v2-to-v3.d.ts.map +1 -0
- package/dist/agent-runtime/store.d.ts +115 -0
- package/dist/agent-runtime/store.d.ts.map +1 -1
- package/dist/agent-runtime-browser.js +5 -3
- package/dist/agent-runtime-coding-tools.js +11 -1236
- package/dist/agent-runtime-harness.d.ts +1 -1
- package/dist/agent-runtime-harness.d.ts.map +1 -1
- package/dist/agent-runtime-harness.js +69 -19
- package/dist/agent-runtime-openrouter.d.ts +3 -12
- package/dist/agent-runtime-openrouter.d.ts.map +1 -1
- package/dist/agent-runtime-openrouter.js +22 -9
- package/dist/agent-runtime-sandbox.d.ts +5 -0
- package/dist/agent-runtime-sandbox.d.ts.map +1 -0
- package/dist/agent-runtime-sandbox.js +797 -0
- package/dist/agent-runtime-sqlite-bun.js +5 -5
- package/dist/agent-runtime-sqlite-node.js +5 -5
- package/dist/agent-runtime.d.ts +6 -5
- package/dist/agent-runtime.d.ts.map +1 -1
- package/dist/agent-runtime.js +266 -69
- package/dist/application.js +26 -26
- package/dist/cli.js +8 -8
- package/dist/{index-rcgsnrr6.js → index-31jw8fjq.js} +3 -3
- package/dist/{index-9hw9eq48.js → index-7601qfg1.js} +14 -14
- package/dist/{index-3xnq72rz.js → index-7rkhw9ec.js} +14 -1
- package/dist/{index-0vfdh685.js → index-8c3a7m4g.js} +1 -1
- package/dist/{index-t7gh5w3v.js → index-bn2cjajt.js} +27 -6
- package/dist/{index-z2452tsw.js → index-bt14acb5.js} +2 -2
- package/dist/index-cp20z0n6.js +1351 -0
- package/dist/{index-9553432s.js → index-crykmqkr.js} +1 -1
- package/dist/{index-6g273pqx.js → index-fadnxwna.js} +89 -7
- package/dist/{index-p1b1y93x.js → index-gtj3zc53.js} +5 -1
- package/dist/{index-5wezxcxx.js → index-hrbajay7.js} +107 -5
- package/dist/{index-35aefxby.js → index-hw2chdvy.js} +768 -49
- package/dist/{index-0ydchz76.js → index-mnm4qp0p.js} +5 -5
- package/dist/{index-tg3m2ec5.js → index-mqv3b5rh.js} +4 -1
- package/dist/{index-1szetq6f.js → index-q3ve2d1k.js} +30 -8
- package/dist/{index-hkm6wysp.js → index-y64k3s0h.js} +1 -1
- package/dist/{index-z1m86vc8.js → index-zwkgfq1s.js} +97 -86
- package/dist/{index-wn9cb82y.js → index-zyvby92n.js} +12 -9
- package/dist/index.js +13 -13
- package/dist/server/index.js +9 -9
- package/dist/testing/agent-store-conformance.d.ts.map +1 -1
- package/dist/testing.js +69 -24
- package/dist/tool-invoker.js +6 -6
- package/dist/tools/agent.d.ts +6 -0
- package/dist/tools/agent.d.ts.map +1 -1
- package/dist/tools/connections/define.d.ts +6 -0
- package/dist/tools/connections/define.d.ts.map +1 -0
- package/dist/tools/connections/errors.d.ts +50 -0
- package/dist/tools/connections/errors.d.ts.map +1 -0
- package/dist/tools/connections/http.d.ts +3 -0
- package/dist/tools/connections/http.d.ts.map +1 -0
- package/dist/tools/connections/index.d.ts +19 -0
- package/dist/tools/connections/index.d.ts.map +1 -0
- package/dist/tools/connections/index.js +1047 -0
- package/dist/tools/connections/instance.d.ts +3 -0
- package/dist/tools/connections/instance.d.ts.map +1 -0
- package/dist/tools/connections/json-rpc.d.ts +8 -0
- package/dist/tools/connections/json-rpc.d.ts.map +1 -0
- package/dist/tools/connections/limits.d.ts +36 -0
- package/dist/tools/connections/limits.d.ts.map +1 -0
- package/dist/tools/connections/mcp-client.d.ts +44 -0
- package/dist/tools/connections/mcp-client.d.ts.map +1 -0
- package/dist/tools/connections/mcp.d.ts +5 -0
- package/dist/tools/connections/mcp.d.ts.map +1 -0
- package/dist/tools/connections/mount.d.ts +12 -0
- package/dist/tools/connections/mount.d.ts.map +1 -0
- package/dist/tools/connections/openapi-document.d.ts +4 -0
- package/dist/tools/connections/openapi-document.d.ts.map +1 -0
- package/dist/tools/connections/openapi.d.ts +5 -0
- package/dist/tools/connections/openapi.d.ts.map +1 -0
- package/dist/tools/connections/runtime.d.ts +29 -0
- package/dist/tools/connections/runtime.d.ts.map +1 -0
- package/dist/tools/connections/schema-budget.d.ts +8 -0
- package/dist/tools/connections/schema-budget.d.ts.map +1 -0
- package/dist/tools/connections/sse-frames.d.ts +7 -0
- package/dist/tools/connections/sse-frames.d.ts.map +1 -0
- package/dist/tools/connections/sse-session.d.ts +26 -0
- package/dist/tools/connections/sse-session.d.ts.map +1 -0
- package/dist/tools/connections/ssrf.d.ts +15 -0
- package/dist/tools/connections/ssrf.d.ts.map +1 -0
- package/dist/tools/connections/types.d.ts +60 -0
- package/dist/tools/connections/types.d.ts.map +1 -0
- package/dist/tools/durability-context.d.ts +7 -0
- package/dist/tools/durability-context.d.ts.map +1 -0
- package/dist/tools/execute.d.ts +2 -0
- package/dist/tools/execute.d.ts.map +1 -1
- package/dist/tools/registry.d.ts +38 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/runtime-tool.d.ts +4 -0
- package/dist/tools/runtime-tool.d.ts.map +1 -1
- package/dist/tools.d.ts +1 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +83 -26
- package/llms-full.txt +329 -14
- package/llms.txt +1 -0
- package/package.json +9 -1
- package/dist/{index-evcnmsc3.js → index-t7fkyxcr.js} +3 -3
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { type AgentHarnessApprovalDecision, type AgentHarnessControlConnection, type AgentHarnessControlServer, type AgentHarnessControlServerConfig, type AgentHarnessFileLimits, AgentHarnessFileLimitsSchema, type AgentHarnessFileResources, type AgentHarnessFileRoot, AgentHarnessFileRootSchema, type AgentHarnessLimits, AgentHarnessLimitsSchema, type AgentHarnessPendingApproval, type AgentHarnessProfileEvent, AgentHarnessProfileEventSchema, type AgentHarnessResource, type AgentHarnessResourceDiagnostic, AgentHarnessResourceDiagnosticSchema, type AgentHarnessResourceKind, AgentHarnessResourceKindSchema, type AgentHarnessResourceResult, AgentHarnessResourceSchema, createAgentHarnessControlServer, createAgentHarnessFileResources, createHeadlessAgentHarness, type HeadlessAgentHarness, type HeadlessAgentHarnessConfig, type HeadlessAgentModelResolver, } from './agent-runtime/harness.js';
|
|
1
|
+
export { type AgentHarnessApprovalAuthorization, type AgentHarnessApprovalAuthorizationResult, type AgentHarnessApprovalDecision, AgentHarnessApprovalRejectedError, type AgentHarnessApprovalRequest, type AgentHarnessControlConnection, type AgentHarnessControlServer, type AgentHarnessControlServerConfig, type AgentHarnessFileLimits, AgentHarnessFileLimitsSchema, type AgentHarnessFileResources, type AgentHarnessFileRoot, AgentHarnessFileRootSchema, type AgentHarnessLimits, AgentHarnessLimitsSchema, type AgentHarnessPendingApproval, type AgentHarnessProfileEvent, AgentHarnessProfileEventSchema, type AgentHarnessResource, type AgentHarnessResourceDiagnostic, AgentHarnessResourceDiagnosticSchema, type AgentHarnessResourceKind, AgentHarnessResourceKindSchema, type AgentHarnessResourceResult, AgentHarnessResourceSchema, createAgentHarnessControlServer, createAgentHarnessFileResources, createHeadlessAgentHarness, type HeadlessAgentHarness, type HeadlessAgentHarnessConfig, type HeadlessAgentModelResolver, } from './agent-runtime/harness.js';
|
|
2
2
|
//# sourceMappingURL=agent-runtime-harness.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runtime-harness.d.ts","sourceRoot":"","sources":["../src/agent-runtime-harness.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,oCAAoC,EACpC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,0BAA0B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,+BAA+B,EAC/B,0BAA0B,EAC1B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,GAChC,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"agent-runtime-harness.d.ts","sourceRoot":"","sources":["../src/agent-runtime-harness.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,uCAAuC,EAC5C,KAAK,4BAA4B,EACjC,iCAAiC,EACjC,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,oCAAoC,EACpC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,0BAA0B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,+BAA+B,EAC/B,0BAA0B,EAC1B,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,GAChC,MAAM,yBAAyB,CAAC"}
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentControlRequestSchema,
|
|
3
3
|
AgentControlResponseSchema
|
|
4
|
-
} from "./index-
|
|
4
|
+
} from "./index-bt14acb5.js";
|
|
5
5
|
import {
|
|
6
6
|
composeAgentPrompt,
|
|
7
7
|
createAgentRuntime,
|
|
8
8
|
createAgentRuntimeEventSink
|
|
9
|
-
} from "./index-
|
|
9
|
+
} from "./index-hw2chdvy.js";
|
|
10
10
|
import"./index-p13mwz16.js";
|
|
11
|
-
import"./index-
|
|
11
|
+
import"./index-y64k3s0h.js";
|
|
12
12
|
import {
|
|
13
13
|
AgentModelDescriptorSchema
|
|
14
|
-
} from "./index-
|
|
15
|
-
import"./index-
|
|
16
|
-
import"./index-
|
|
14
|
+
} from "./index-mqv3b5rh.js";
|
|
15
|
+
import"./index-zwkgfq1s.js";
|
|
16
|
+
import"./index-gtj3zc53.js";
|
|
17
17
|
import"./index-wnfk50r0.js";
|
|
18
18
|
import {
|
|
19
19
|
walkContainedFiles
|
|
20
|
-
} from "./index-
|
|
21
|
-
import"./index-
|
|
22
|
-
import
|
|
23
|
-
defineRuntimeTool
|
|
24
|
-
} from "./index-kc6h6hg0.js";
|
|
25
|
-
import"./index-wn9cb82y.js";
|
|
20
|
+
} from "./index-bn2cjajt.js";
|
|
21
|
+
import"./index-7rkhw9ec.js";
|
|
22
|
+
import"./index-zyvby92n.js";
|
|
26
23
|
import"./index-vsbzgd7b.js";
|
|
27
24
|
import"./index-f9mb610r.js";
|
|
28
|
-
import"./index-r159gjwy.js";
|
|
29
|
-
import"./index-cby4ar3v.js";
|
|
30
|
-
import"./index-7zbps32p.js";
|
|
31
25
|
import"./index-7evdsyez.js";
|
|
32
26
|
import"./index-2bxcmqkb.js";
|
|
33
27
|
import"./index-6k1937bx.js";
|
|
34
28
|
import"./index-0w9abg87.js";
|
|
35
29
|
import"./index-zcgf3gqf.js";
|
|
30
|
+
import"./index-7zbps32p.js";
|
|
36
31
|
import"./index-kzfs85xp.js";
|
|
32
|
+
import {
|
|
33
|
+
defineRuntimeTool
|
|
34
|
+
} from "./index-kc6h6hg0.js";
|
|
35
|
+
import"./index-r159gjwy.js";
|
|
36
|
+
import"./index-cby4ar3v.js";
|
|
37
37
|
import"./index-77fekveh.js";
|
|
38
38
|
|
|
39
39
|
// src/agent-runtime/harness-contract.ts
|
|
@@ -485,6 +485,14 @@ function createAgentHarnessControlServer(harness, config = {}) {
|
|
|
485
485
|
}
|
|
486
486
|
|
|
487
487
|
// src/agent-runtime/harness.ts
|
|
488
|
+
class AgentHarnessApprovalRejectedError extends Error {
|
|
489
|
+
reason;
|
|
490
|
+
constructor(reason) {
|
|
491
|
+
super(`Approval response rejected: ${reason}`);
|
|
492
|
+
this.name = "AgentHarnessApprovalRejectedError";
|
|
493
|
+
this.reason = reason;
|
|
494
|
+
}
|
|
495
|
+
}
|
|
488
496
|
function activeRunId(snapshot) {
|
|
489
497
|
const active = snapshot.runs.filter((run2) => run2.state === "running" || run2.state === "interrupt_requested");
|
|
490
498
|
if (active.length !== 1) {
|
|
@@ -506,6 +514,7 @@ function createHeadlessAgentHarness(config) {
|
|
|
506
514
|
onProfile,
|
|
507
515
|
onProfileError,
|
|
508
516
|
publish: applicationPublish,
|
|
517
|
+
blockingPresentation = "local",
|
|
509
518
|
...runtimeConfig
|
|
510
519
|
} = config;
|
|
511
520
|
const limits = resolveHarnessLimits(inputLimits);
|
|
@@ -543,7 +552,15 @@ function createHeadlessAgentHarness(config) {
|
|
|
543
552
|
entry.emitting = emitting;
|
|
544
553
|
return emitting;
|
|
545
554
|
};
|
|
546
|
-
const
|
|
555
|
+
const presentationMessage = (message) => blockingPresentation === "parent" ? {
|
|
556
|
+
...message,
|
|
557
|
+
parts: message.parts.filter((part) => part.type !== "tool-approval-request")
|
|
558
|
+
} : message;
|
|
559
|
+
const publish = async (rawEvent) => {
|
|
560
|
+
let event = rawEvent;
|
|
561
|
+
if (blockingPresentation === "parent" && (event.type === "assistant-checkpoint" || event.type === "terminal")) {
|
|
562
|
+
event = { ...event, message: presentationMessage(event.message) };
|
|
563
|
+
}
|
|
547
564
|
try {
|
|
548
565
|
await applicationPublish?.(event);
|
|
549
566
|
} finally {
|
|
@@ -558,7 +575,7 @@ function createHeadlessAgentHarness(config) {
|
|
|
558
575
|
...runtimeConfig,
|
|
559
576
|
models,
|
|
560
577
|
publish,
|
|
561
|
-
prompt: async ({ context, signal, model, snapshot }) => {
|
|
578
|
+
prompt: async ({ context, signal, model, snapshot, event }) => {
|
|
562
579
|
const loaded = validateHarnessResources(await resources.load({ context, signal, model, snapshot }), limits);
|
|
563
580
|
try {
|
|
564
581
|
await resources.onDiagnostics?.({ context, diagnostics: loaded.diagnostics });
|
|
@@ -584,6 +601,7 @@ function createHeadlessAgentHarness(config) {
|
|
|
584
601
|
return prompt({
|
|
585
602
|
context,
|
|
586
603
|
signal,
|
|
604
|
+
event,
|
|
587
605
|
budget: await promptBudget({
|
|
588
606
|
context,
|
|
589
607
|
contextWindow: model.descriptor.contextWindow
|
|
@@ -627,7 +645,10 @@ function createHeadlessAgentHarness(config) {
|
|
|
627
645
|
};
|
|
628
646
|
return {
|
|
629
647
|
...runtime,
|
|
630
|
-
snapshot: (conversationId) =>
|
|
648
|
+
snapshot: async (conversationId) => {
|
|
649
|
+
const snapshot = await config.store.loadSnapshot(conversationId);
|
|
650
|
+
return { ...snapshot, messages: snapshot.messages.map(presentationMessage) };
|
|
651
|
+
},
|
|
631
652
|
subscribe(listener) {
|
|
632
653
|
subscribers.add(listener);
|
|
633
654
|
return () => subscribers.delete(listener);
|
|
@@ -638,6 +659,34 @@ function createHeadlessAgentHarness(config) {
|
|
|
638
659
|
if (pending2.length !== 1) {
|
|
639
660
|
throw new Error("Approval request is missing, stale or already answered");
|
|
640
661
|
}
|
|
662
|
+
const request = pending2[0];
|
|
663
|
+
if (!request) {
|
|
664
|
+
throw new Error("Approval request is missing, stale or already answered");
|
|
665
|
+
}
|
|
666
|
+
const authorization = config.authorizeApprovalResponse ? await config.authorizeApprovalResponse({
|
|
667
|
+
responder: input.context,
|
|
668
|
+
conversationId: input.conversationId,
|
|
669
|
+
request: {
|
|
670
|
+
approvalId: request.approvalId,
|
|
671
|
+
callId: request.callId,
|
|
672
|
+
toolName: request.toolName,
|
|
673
|
+
input: request.input
|
|
674
|
+
},
|
|
675
|
+
approved: input.approved
|
|
676
|
+
}) : { status: "allowed" };
|
|
677
|
+
if (authorization.status === "rejected") {
|
|
678
|
+
await runtimeConfig.store.appendEvent({
|
|
679
|
+
conversationId: input.conversationId,
|
|
680
|
+
kind: "approval/response-rejected",
|
|
681
|
+
payload: {
|
|
682
|
+
approvalId: request.approvalId,
|
|
683
|
+
callId: request.callId,
|
|
684
|
+
toolName: request.toolName,
|
|
685
|
+
reason: authorization.reason
|
|
686
|
+
}
|
|
687
|
+
});
|
|
688
|
+
throw new AgentHarnessApprovalRejectedError(authorization.reason);
|
|
689
|
+
}
|
|
641
690
|
const ticket = runtime.submit({
|
|
642
691
|
conversationId: input.conversationId,
|
|
643
692
|
idempotencyKey: `tool-approval:${input.approvalId}`,
|
|
@@ -674,5 +723,6 @@ export {
|
|
|
674
723
|
AgentHarnessProfileEventSchema,
|
|
675
724
|
AgentHarnessLimitsSchema,
|
|
676
725
|
AgentHarnessFileRootSchema,
|
|
677
|
-
AgentHarnessFileLimitsSchema
|
|
726
|
+
AgentHarnessFileLimitsSchema,
|
|
727
|
+
AgentHarnessApprovalRejectedError
|
|
678
728
|
};
|
|
@@ -21,18 +21,9 @@ export declare function openRouterProvider(settings: OpenRouterProviderSettings)
|
|
|
21
21
|
/**
|
|
22
22
|
* Read OpenRouter's token counts and cost out of one SDK step, with provenance.
|
|
23
23
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* recovery included. An application that calls `generateText` directly, and only
|
|
28
|
-
* wants an honest number for its own ledger, could not reach it and derived it
|
|
29
|
-
* again; two of them did, and more than half of the two files agree line for
|
|
30
|
-
* line.
|
|
31
|
-
*
|
|
32
|
-
* What is easy to get wrong when deriving it again is not the arithmetic but the
|
|
33
|
-
* provenance: a number the provider reported, a number nobody reported and a
|
|
34
|
-
* zero are three different facts, and a value invented for a missing field is
|
|
35
|
-
* the one that reads as true and is not.
|
|
24
|
+
* Raw step usage is authoritative: the SDK adapter substitutes zero for some
|
|
25
|
+
* absent counters. Normalized counters (including aggregate usage without raw)
|
|
26
|
+
* therefore cannot establish provider-reported provenance. Use each SDK step.
|
|
36
27
|
*/
|
|
37
28
|
export declare function normalizeOpenRouterUsage(usage: LanguageModelUsage, providerMetadata: unknown): AgentUsage;
|
|
38
29
|
//# sourceMappingURL=agent-runtime-openrouter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runtime-openrouter.d.ts","sourceRoot":"","sources":["../src/agent-runtime-openrouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAE7C,OAAO,EACL,KAAK,0BAA0B,EAE/B,KAAK,iBAAiB,EAGvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAkD9E,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE3F,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAyFD,+FAA+F;AAC/F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,GAAG;IAC9E,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpE,CAyGA;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,0BAA0B,GACnC,0BAA0B,
|
|
1
|
+
{"version":3,"file":"agent-runtime-openrouter.d.ts","sourceRoot":"","sources":["../src/agent-runtime-openrouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAE7C,OAAO,EACL,KAAK,0BAA0B,EAE/B,KAAK,iBAAiB,EAGvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAkD9E,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE3F,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAyFD,+FAA+F;AAC/F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,6BAA6B,GAAG;IAC9E,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpE,CAyGA;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,0BAA0B,GACnC,0BAA0B,CAQ5B;AA0CD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,kBAAkB,EACzB,gBAAgB,EAAE,OAAO,GACxB,UAAU,CAcZ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentModelCatalogSchema
|
|
3
|
-
} from "./index-
|
|
3
|
+
} from "./index-mqv3b5rh.js";
|
|
4
4
|
import {
|
|
5
5
|
isRecord
|
|
6
6
|
} from "./index-77fekveh.js";
|
|
@@ -220,14 +220,24 @@ function openRouterProvider(settings) {
|
|
|
220
220
|
const provider = createOpenRouter(settings);
|
|
221
221
|
return {
|
|
222
222
|
create: (modelId) => provider.chat(modelId),
|
|
223
|
-
normalizeUsage: ({ usage, providerMetadata }) => normalizeOpenRouterUsage(usage, providerMetadata)
|
|
223
|
+
normalizeUsage: ({ usage, providerMetadata }) => normalizeOpenRouterUsage(usage, providerMetadata),
|
|
224
|
+
resolveResponseProvider: ({ providerMetadata }) => readUpstreamProvider(providerMetadata)
|
|
224
225
|
};
|
|
225
226
|
}
|
|
227
|
+
function readUpstreamProvider(metadata) {
|
|
228
|
+
if (!isRecord(metadata))
|
|
229
|
+
return;
|
|
230
|
+
const openrouter = metadata.openrouter;
|
|
231
|
+
if (!isRecord(openrouter))
|
|
232
|
+
return;
|
|
233
|
+
const name = openrouter.provider;
|
|
234
|
+
return typeof name === "string" && name.length > 0 ? name : undefined;
|
|
235
|
+
}
|
|
226
236
|
function reported(value) {
|
|
227
|
-
return value
|
|
237
|
+
return typeof value !== "number" || !Number.isSafeInteger(value) || value < 0 ? { provenance: "unavailable" } : { value, provenance: "provider-reported" };
|
|
228
238
|
}
|
|
229
239
|
function reportedUsd(value) {
|
|
230
|
-
return value === undefined ? { provenance: "unavailable" } : { value, currency: "USD", provenance: "provider-reported" };
|
|
240
|
+
return value === undefined || !Number.isFinite(value) || value < 0 ? { provenance: "unavailable" } : { value, currency: "USD", provenance: "provider-reported" };
|
|
231
241
|
}
|
|
232
242
|
function readCost(metadata) {
|
|
233
243
|
if (!isRecord(metadata))
|
|
@@ -241,12 +251,15 @@ function readCost(metadata) {
|
|
|
241
251
|
return isRecord(usage) && typeof usage.cost === "number" && usage.cost >= 0 ? usage.cost : undefined;
|
|
242
252
|
}
|
|
243
253
|
function normalizeOpenRouterUsage(usage, providerMetadata) {
|
|
254
|
+
const raw = isRecord(usage.raw) ? usage.raw : {};
|
|
255
|
+
const prompt = isRecord(raw.prompt_tokens_details) ? raw.prompt_tokens_details : {};
|
|
256
|
+
const completion = isRecord(raw.completion_tokens_details) ? raw.completion_tokens_details : {};
|
|
244
257
|
return {
|
|
245
|
-
inputTokens: reported(
|
|
246
|
-
outputTokens: reported(
|
|
247
|
-
reasoningTokens: reported(
|
|
248
|
-
cacheReadTokens: reported(
|
|
249
|
-
cacheWriteTokens: reported(
|
|
258
|
+
inputTokens: reported(raw.prompt_tokens),
|
|
259
|
+
outputTokens: reported(raw.completion_tokens),
|
|
260
|
+
reasoningTokens: reported(completion.reasoning_tokens),
|
|
261
|
+
cacheReadTokens: reported(prompt.cached_tokens),
|
|
262
|
+
cacheWriteTokens: reported(prompt.cache_write_tokens),
|
|
250
263
|
cost: reportedUsd(readCost(providerMetadata))
|
|
251
264
|
};
|
|
252
265
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { type BubblewrapSandboxConfig, createBubblewrapSandboxBackend, } from './agent-runtime/sandbox-bubblewrap.js';
|
|
2
|
+
export { createSandboxCodingTools, type SandboxCodingBinding, } from './agent-runtime/sandbox-coding.js';
|
|
3
|
+
export { type SandboxBackend, type SandboxCommand, SandboxCommandSchema, type SandboxCreateInput, type SandboxDriver, SandboxError, type SandboxHandle, type SandboxNetworkPolicy, SandboxNetworkPolicySchema, type SandboxPrewarmInput, type SandboxProcess, type SandboxRunOptions, type SandboxSession, type SandboxState, SandboxStateSchema, } from './agent-runtime/sandbox-contract.js';
|
|
4
|
+
export { createSandboxSession } from './agent-runtime/sandbox-session.js';
|
|
5
|
+
//# sourceMappingURL=agent-runtime-sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-runtime-sandbox.d.ts","sourceRoot":"","sources":["../src/agent-runtime-sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,8BAA8B,GAC/B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,wBAAwB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC"}
|