agentenkit 0.4.0 → 0.6.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 (126) hide show
  1. package/README.md +48 -1
  2. package/dist/adapters/brave.d.ts +21 -0
  3. package/dist/adapters/brave.d.ts.map +1 -0
  4. package/dist/adapters/brave.js +52 -0
  5. package/dist/adapters/brave.js.map +1 -0
  6. package/dist/adapters/computesdk.d.ts +71 -0
  7. package/dist/adapters/computesdk.d.ts.map +1 -0
  8. package/dist/adapters/computesdk.js +163 -0
  9. package/dist/adapters/computesdk.js.map +1 -0
  10. package/dist/adapters/docker.d.ts +35 -0
  11. package/dist/adapters/docker.d.ts.map +1 -0
  12. package/dist/adapters/docker.js +246 -0
  13. package/dist/adapters/docker.js.map +1 -0
  14. package/dist/adapters/e2b.d.ts +44 -0
  15. package/dist/adapters/e2b.d.ts.map +1 -0
  16. package/dist/adapters/e2b.js +349 -0
  17. package/dist/adapters/e2b.js.map +1 -0
  18. package/dist/adapters/jina.d.ts +34 -0
  19. package/dist/adapters/jina.d.ts.map +1 -0
  20. package/dist/adapters/jina.js +99 -0
  21. package/dist/adapters/jina.js.map +1 -0
  22. package/dist/adapters/local-sandbox.d.ts +32 -0
  23. package/dist/adapters/local-sandbox.d.ts.map +1 -0
  24. package/dist/adapters/local-sandbox.js +257 -0
  25. package/dist/adapters/local-sandbox.js.map +1 -0
  26. package/dist/adapters/mcp.d.ts +71 -0
  27. package/dist/adapters/mcp.d.ts.map +1 -0
  28. package/dist/adapters/mcp.js +344 -0
  29. package/dist/adapters/mcp.js.map +1 -0
  30. package/dist/adapters/memory.d.ts +81 -0
  31. package/dist/adapters/memory.d.ts.map +1 -1
  32. package/dist/adapters/memory.js +207 -0
  33. package/dist/adapters/memory.js.map +1 -1
  34. package/dist/adapters/page-reader.d.ts +39 -0
  35. package/dist/adapters/page-reader.d.ts.map +1 -0
  36. package/dist/adapters/page-reader.js +165 -0
  37. package/dist/adapters/page-reader.js.map +1 -0
  38. package/dist/adapters/sandbox-shell.d.ts +60 -0
  39. package/dist/adapters/sandbox-shell.d.ts.map +1 -0
  40. package/dist/adapters/sandbox-shell.js +129 -0
  41. package/dist/adapters/sandbox-shell.js.map +1 -0
  42. package/dist/adapters/sqlite.d.ts +37 -1
  43. package/dist/adapters/sqlite.d.ts.map +1 -1
  44. package/dist/adapters/sqlite.js +106 -7
  45. package/dist/adapters/sqlite.js.map +1 -1
  46. package/dist/adapters/web-search-shared.d.ts +11 -0
  47. package/dist/adapters/web-search-shared.d.ts.map +1 -0
  48. package/dist/adapters/web-search-shared.js +40 -0
  49. package/dist/adapters/web-search-shared.js.map +1 -0
  50. package/dist/core/builtin/definitions.d.ts +12 -0
  51. package/dist/core/builtin/definitions.d.ts.map +1 -0
  52. package/dist/core/builtin/definitions.js +149 -0
  53. package/dist/core/builtin/definitions.js.map +1 -0
  54. package/dist/core/builtin/html.d.ts +13 -0
  55. package/dist/core/builtin/html.d.ts.map +1 -0
  56. package/dist/core/builtin/html.js +96 -0
  57. package/dist/core/builtin/html.js.map +1 -0
  58. package/dist/core/builtin/index.d.ts +21 -0
  59. package/dist/core/builtin/index.d.ts.map +1 -0
  60. package/dist/core/builtin/index.js +55 -0
  61. package/dist/core/builtin/index.js.map +1 -0
  62. package/dist/core/builtin/run.d.ts +37 -0
  63. package/dist/core/builtin/run.d.ts.map +1 -0
  64. package/dist/core/builtin/run.js +56 -0
  65. package/dist/core/builtin/run.js.map +1 -0
  66. package/dist/core/builtin/sandbox-tools.d.ts +69 -0
  67. package/dist/core/builtin/sandbox-tools.d.ts.map +1 -0
  68. package/dist/core/builtin/sandbox-tools.js +389 -0
  69. package/dist/core/builtin/sandbox-tools.js.map +1 -0
  70. package/dist/core/builtin/sandbox.d.ts +52 -0
  71. package/dist/core/builtin/sandbox.d.ts.map +1 -0
  72. package/dist/core/builtin/sandbox.js +174 -0
  73. package/dist/core/builtin/sandbox.js.map +1 -0
  74. package/dist/core/builtin/web.d.ts +54 -0
  75. package/dist/core/builtin/web.d.ts.map +1 -0
  76. package/dist/core/builtin/web.js +167 -0
  77. package/dist/core/builtin/web.js.map +1 -0
  78. package/dist/core/deleteThread.d.ts.map +1 -1
  79. package/dist/core/deleteThread.js +3 -0
  80. package/dist/core/deleteThread.js.map +1 -1
  81. package/dist/core/engine.d.ts.map +1 -1
  82. package/dist/core/engine.js +29 -5
  83. package/dist/core/engine.js.map +1 -1
  84. package/dist/core/permanent.d.ts +11 -0
  85. package/dist/core/permanent.d.ts.map +1 -0
  86. package/dist/core/permanent.js +37 -0
  87. package/dist/core/permanent.js.map +1 -0
  88. package/dist/core/publish.d.ts +4 -1
  89. package/dist/core/publish.d.ts.map +1 -1
  90. package/dist/core/publish.js +4 -1
  91. package/dist/core/publish.js.map +1 -1
  92. package/dist/core/run.d.ts.map +1 -1
  93. package/dist/core/run.js +5 -4
  94. package/dist/core/run.js.map +1 -1
  95. package/dist/core/subagent.d.ts.map +1 -1
  96. package/dist/core/subagent.js +13 -3
  97. package/dist/core/subagent.js.map +1 -1
  98. package/dist/core/tools.d.ts +9 -3
  99. package/dist/core/tools.d.ts.map +1 -1
  100. package/dist/core/tools.js.map +1 -1
  101. package/dist/core/types.d.ts +25 -1
  102. package/dist/core/types.d.ts.map +1 -1
  103. package/dist/core/types.js +14 -1
  104. package/dist/core/types.js.map +1 -1
  105. package/dist/index.d.ts +16 -3
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +13 -1
  108. package/dist/index.js.map +1 -1
  109. package/dist/ports/runtime.d.ts +47 -22
  110. package/dist/ports/runtime.d.ts.map +1 -1
  111. package/dist/ports/sandbox.d.ts +159 -0
  112. package/dist/ports/sandbox.d.ts.map +1 -0
  113. package/dist/ports/sandbox.js +44 -0
  114. package/dist/ports/sandbox.js.map +1 -0
  115. package/dist/ports/tools.d.ts +60 -0
  116. package/dist/ports/tools.d.ts.map +1 -0
  117. package/dist/ports/tools.js +5 -0
  118. package/dist/ports/tools.js.map +1 -0
  119. package/dist/pricing.d.ts +24 -0
  120. package/dist/pricing.d.ts.map +1 -1
  121. package/dist/pricing.js +43 -0
  122. package/dist/pricing.js.map +1 -1
  123. package/dist/runtime.d.ts.map +1 -1
  124. package/dist/runtime.js +18 -10
  125. package/dist/runtime.js.map +1 -1
  126. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -9,6 +9,7 @@ export { setupAgentCore, UnknownAgentError } from './runtime.js';
9
9
  export { execute, executeStep, executeWithPolicy, finalize, markRequiresConfirmation, } from './core/engine.js';
10
10
  export { agentTool } from './core/tools.js';
11
11
  export { followEvents, followThread, followFrame, formatCursor, parseCursor, toFollowSse, agUiFrame, toSseStream, sseFrame, SSE_HEADERS, } from './core/follow.js';
12
+ export { isToolUse, TOOL_USE_PREFIX } from './core/types.js';
12
13
  export { claimRun, redriveKey, runIdKey } from './core/keys.js';
13
14
  export { countTokens, sumUsage, emptyTotals, UsageMerger } from './core/usage.js';
14
15
  /** Pricing (§4): the pricers that ship with the platform. `pricing.table(...)`
@@ -21,6 +22,7 @@ export { Semaphore, runNestedAgent, spawnSubagentTool } from './core/subagent.js
21
22
  export { run } from './core/run.js';
22
23
  export { publishEvent, withPublishEvent, RESERVED_EVENT_TYPES, } from './core/publish.js';
23
24
  export { stop } from './core/stop.js';
25
+ export { isPermanentError } from './core/permanent.js';
24
26
  export { repairDanglingToolCalls, DANGLING_CALL_RESULT } from './core/messages.js';
25
27
  // types
26
28
  export { DEFAULT_CONFIG, resolveConfig, } from './core/types.js';
@@ -29,5 +31,15 @@ export { PrismaStorage, PrismaRunStreams } from './adapters/prisma.js';
29
31
  export { UpstashBus, UpstashKv, UpstashRunStreams, THREAD_CHANNEL } from './adapters/upstash.js';
30
32
  export { RedisBus, RedisKv, RedisRunStreams } from './adapters/redis.js';
31
33
  export { QStashQueue } from './adapters/qstash.js';
32
- export { MemoryStorage, MemoryBus, MemoryQueue, MemoryKv, MemoryRunStreams } from './adapters/memory.js';
34
+ export { MemoryStorage, MemoryBus, MemoryQueue, MemoryKv, MemoryRunStreams, MemorySearch, MemoryFetcher, MemorySandbox } from './adapters/memory.js';
35
+ export { BraveWebSearch } from './adapters/brave.js';
36
+ export { JinaWebSearch, JinaReader } from './adapters/jina.js';
37
+ export { PageReader, BlockedUrlError, isPrivateAddress } from './adapters/page-reader.js';
38
+ export { LocalSandbox } from './adapters/local-sandbox.js';
39
+ export { DockerSandbox } from './adapters/docker.js';
40
+ export { E2BSandbox } from './adapters/e2b.js';
41
+ export { ComputeSdkSandbox, } from './adapters/computesdk.js';
42
+ export { DEFAULT_COMMAND_TIMEOUT_MS, MAX_COMMAND_OUTPUT_BYTES, TIMED_OUT_EXIT_CODE, SandboxFileNotFoundError, SandboxGoneError, SandboxUnsupportedError, } from './ports/sandbox.js';
43
+ export { sandboxFor, withSandbox } from './core/builtin/sandbox.js';
44
+ export { BUILTIN_TOOL_DEFINITIONS, BUILTIN_TOOL_NAMES, } from './core/builtin/index.js';
33
45
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,GAKjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,iBAAiB,EACjB,eAAe,GAIhB,MAAM,oBAAoB,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAmC,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAuC,MAAM,iBAAiB,CAAC;AA+BtG,sDAAsD;AACtD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjE,mCAAmC;AACnC,OAAO,EACL,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,QAAQ,EACR,wBAAwB,GAKzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAoB,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EACT,WAAW,EACX,QAAQ,EACR,WAAW,GAOZ,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAC;AAEnG;oEACoE;AACpE,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAExC,OAAO,EACL,OAAO,EACP,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,EACf,YAAY,EACZ,cAAc,EAEd,eAAe,EACf,aAAa,EACb,QAAQ,EACR,WAAW,EACX,WAAW,EACX,OAAO,GAKR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACvG,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAoB,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,GAGrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAEnF,QAAQ;AACR,OAAO,EACL,cAAc,EACd,aAAa,GA2Bd,MAAM,iBAAiB,CAAC;AAEzB,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAA2C,MAAM,sBAAsB,CAAC;AAChH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAqD,MAAM,uBAAuB,CAAC;AACpJ,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAkD,MAAM,qBAAqB,CAAC;AACzH,OAAO,EAAE,WAAW,EAA4C,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ import type { PublishEventOptions } from '../core/publish.js';
11
11
  import type { SnapshotStream } from '../core/snapshot.js';
12
12
  import type { PruneOptions, PruneReport } from '../core/prune.js';
13
13
  import type { WireFormat } from '../core/agui.js';
14
+ import type { BuiltinToolPorts } from './tools.js';
15
+ import type { BuiltinToolName, BuiltinToolOptions } from '../core/builtin/index.js';
14
16
  export type { AdminStore, NewStepRecord, RunFilter, StepRecord } from './admin.js';
15
17
  export type { AgentRunState, BoundStorage, StorageContext } from '../core/state.js';
16
18
  import type { EventBus } from './bus.js';
@@ -46,6 +48,8 @@ export interface RuntimePorts {
46
48
  * run, such as a usage row it failed to store. Defaults to `console`. */
47
49
  log?: Logger;
48
50
  config: AgentConfig;
51
+ /** The adapters behind the built-in tools. */
52
+ tools?: BuiltinToolPorts;
49
53
  }
50
54
  /** The little the platform needs from a logger. `console` satisfies it. */
51
55
  export interface Logger {
@@ -89,6 +93,11 @@ export interface RuntimeOptions {
89
93
  * run. Defaults to `console`. */
90
94
  log?: Logger;
91
95
  config?: Partial<AgentConfig>;
96
+ /** The adapters behind the built-in tools: a search engine for
97
+ * `web_search`, a page reader for `web_fetch`, a sandbox provider for the
98
+ * tools that run commands. Only the tools you ask `builtinTools` for need
99
+ * theirs. */
100
+ tools?: BuiltinToolPorts;
92
101
  }
93
102
  export interface RunInput {
94
103
  /** Omit to create a fresh thread first (threads.create, §3.2) */
@@ -348,6 +357,33 @@ export interface AgentHandle {
348
357
  /** Platform stop (§2.1) — works regardless of which agent's run is active. */
349
358
  stop(threadId: string, state?: AgentRunState): Promise<StopResult>;
350
359
  }
360
+ /** Operational reads (§2.9); see `AgentCore.admin`. */
361
+ export interface AdminApi {
362
+ overview(range?: {
363
+ since?: Date;
364
+ }): Promise<AdminOverview>;
365
+ listRuns(filter?: RunFilter): Promise<RunRecord[]>;
366
+ stats(range?: {
367
+ since?: Date;
368
+ until?: Date;
369
+ }): Promise<RunStats>;
370
+ getRun(runId: string): Promise<RunDetail | null>;
371
+ listRunsByThread(threadId: string): Promise<RunRecord[]>;
372
+ listSteps(runId: string): Promise<StepRecord[]>;
373
+ /** Threads with their runs rolled up — the top level of an operational
374
+ * view, since a thread is what a person recognises (§2.9). */
375
+ listThreads(filter?: {
376
+ state?: ExecutionState[];
377
+ since?: Date;
378
+ limit?: number;
379
+ }): Promise<ThreadSummary[]>;
380
+ getThread(threadId: string): Promise<ThreadDetail | null>;
381
+ /** The same reads, with their Storage reads (a thread's or a run's spend,
382
+ * a run's events) made with `state`, as a run's are. A storage that needs
383
+ * a tenant to open the right database reads it from state; without it
384
+ * those reads fail, and the view shows no spend. */
385
+ withState(state: AgentRunState): AdminApi;
386
+ }
351
387
  export interface AgentCore {
352
388
  /** Resolve a registry key to the stable identity and provider instance used
353
389
  * by execution, compaction, usage attribution, and persisted run metadata. */
@@ -432,30 +468,19 @@ export interface AgentCore {
432
468
  createGenerateTextAgent(spec: GenerateTextAgentSpec): AgentHandle;
433
469
  /** Worker-side resolution of a registered handle from the queue job. */
434
470
  getAgent(name: string): AgentHandle | null;
471
+ /** The built-in tools, ready to put in an agent's `tools`: one name and one
472
+ * input shape in every runtime, so any model that can call tools can use
473
+ * them. Throws when a tool's adapter was not given to `setupAgentCore`.
474
+ *
475
+ * ```ts
476
+ * tools: { ...runtime.builtinTools(['web_search', 'web_fetch']), lookupInvoice }
477
+ * ``` */
478
+ builtinTools(names: BuiltinToolName[], options?: BuiltinToolOptions): Record<string, any>;
435
479
  /** Operational reads (§2.9). The platform records what runs did; building a
436
480
  * view over it is the caller's business. Everything here comes from the
437
- * platform's OWN store — it never reads the caller's database. */
438
- admin: {
439
- overview(range?: {
440
- since?: Date;
441
- }): Promise<AdminOverview>;
442
- listRuns(filter?: RunFilter): Promise<RunRecord[]>;
443
- stats(range?: {
444
- since?: Date;
445
- until?: Date;
446
- }): Promise<RunStats>;
447
- getRun(runId: string): Promise<RunDetail | null>;
448
- listRunsByThread(threadId: string): Promise<RunRecord[]>;
449
- listSteps(runId: string): Promise<StepRecord[]>;
450
- /** Threads with their runs rolled up — the top level of an operational
451
- * view, since a thread is what a person recognises (§2.9). */
452
- listThreads(filter?: {
453
- state?: ExecutionState[];
454
- since?: Date;
455
- limit?: number;
456
- }): Promise<ThreadSummary[]>;
457
- getThread(threadId: string): Promise<ThreadDetail | null>;
458
- };
481
+ * platform's OWN store — it never reads the caller's database — except a
482
+ * thread's or a run's spend and a run's events, which live in Storage. */
483
+ admin: AdminApi;
459
484
  /** The queue dispatch side of the platform (§2.8): resolves the handle,
460
485
  * applies the failure policy, and is idempotent under at-least-once
461
486
  * delivery (the per-thread run lock, §3.4). The HTTP layer only verifies
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/ports/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/ports/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,159 @@
1
+ import type { AgentRunState } from '../core/state.js';
2
+ /** The sandbox port: a place apart from the app where an agent's commands run
3
+ * and its files live. A container, a hosted machine, or a folder on this
4
+ * machine in development.
5
+ *
6
+ * The shape and names follow ComputeSDK's Sandbox, so an adapter over it is
7
+ * thin, with three additions: `readFileBytes` (charts and images need it),
8
+ * `setTimeout` (how an idle sandbox ends by itself) and `SandboxInfo.workdir`.
9
+ * The Go runtime has the same port (ports/sandbox.go). */
10
+ /** How long a command may run when the caller does not say. */
11
+ export declare const DEFAULT_COMMAND_TIMEOUT_MS = 120000;
12
+ /** The most output kept from one command, per stream. Past it the rest is
13
+ * dropped and the result says `truncated: true`, so a command that prints
14
+ * without end cannot fill the app's memory. */
15
+ export declare const MAX_COMMAND_OUTPUT_BYTES: number;
16
+ /** The exit code of a command stopped at its time limit, as `timeout(1)`
17
+ * gives it. */
18
+ export declare const TIMED_OUT_EXIT_CODE = 124;
19
+ /** What the sandbox may reach on the network. `none` is the default. */
20
+ export type SandboxNetwork = 'none' | 'all' | {
21
+ allow: string[];
22
+ };
23
+ export interface CreateSandboxOptions {
24
+ /** How long the sandbox lives unless `setTimeout` pushes it back. It then
25
+ * shuts itself down, even when the app that made it is gone. */
26
+ timeoutMs: number;
27
+ /** What the sandbox is for. Adapters keep it as labels or metadata where
28
+ * the provider has them, and a multi-tenant adapter can read `state` to
29
+ * pick a template or key per tenant (§2.10). */
30
+ metadata: {
31
+ threadId: string;
32
+ runId?: string;
33
+ state?: AgentRunState;
34
+ };
35
+ /** Environment variables every command sees. */
36
+ envs?: Record<string, string>;
37
+ /** A provider template (E2B) or image (Docker). Adapters have their own
38
+ * default. */
39
+ template?: string;
40
+ image?: string;
41
+ network?: SandboxNetwork;
42
+ resources?: {
43
+ cpu?: number;
44
+ memoryMiB?: number;
45
+ diskMiB?: number;
46
+ };
47
+ /** Provider-only settings, passed through as they are. */
48
+ extra?: Record<string, unknown>;
49
+ }
50
+ /** Makes sandboxes and finds them again. One per app, passed to
51
+ * `setupAgentCore({ tools: { sandbox } })`. */
52
+ export interface SandboxProvider {
53
+ /** The adapter's name: 'docker', 'e2b', 'local'. */
54
+ readonly name: string;
55
+ create(options: CreateSandboxOptions): Promise<Sandbox>;
56
+ /** Finds a sandbox made earlier, by this process or another. Throws
57
+ * SandboxGoneError when it no longer exists. */
58
+ connect(sandboxId: string): Promise<Sandbox>;
59
+ }
60
+ export interface RunCommandOptions {
61
+ /** Where the command runs. A relative path is taken from the sandbox's
62
+ * work folder, which is also the default. */
63
+ cwd?: string;
64
+ env?: Record<string, string>;
65
+ /** Stops the command after this long: the result then has `timedOut: true`
66
+ * and exit code 124, with the output it printed so far. Default 120 s. */
67
+ timeoutMs?: number;
68
+ /** Starts the command and returns at once, leaving it running (a dev
69
+ * server, say). Its output is not kept. */
70
+ background?: boolean;
71
+ /** Output as it comes, decoded as UTF-8. */
72
+ onStdout?: (chunk: string) => void;
73
+ onStderr?: (chunk: string) => void;
74
+ /** Stops the command and rejects with the signal's reason. */
75
+ signal?: AbortSignal;
76
+ }
77
+ export interface CommandResult {
78
+ stdout: string;
79
+ stderr: string;
80
+ exitCode: number;
81
+ durationMs: number;
82
+ /** True when the command was stopped at its time limit. */
83
+ timedOut?: boolean;
84
+ /** True when output past MAX_COMMAND_OUTPUT_BYTES was dropped. */
85
+ truncated?: boolean;
86
+ }
87
+ export interface FileEntry {
88
+ name: string;
89
+ type: 'file' | 'directory';
90
+ size?: number;
91
+ }
92
+ /** The sandbox's files. A relative path is taken from the work folder. */
93
+ export interface SandboxFileSystem {
94
+ /** Throws SandboxFileNotFoundError when there is no such file. */
95
+ readFile(path: string): Promise<string>;
96
+ /** Not in ComputeSDK: charts and images are bytes. */
97
+ readFileBytes(path: string): Promise<Uint8Array>;
98
+ /** Makes the parent folders it needs, and replaces a file already there. */
99
+ writeFile(path: string, content: string | Uint8Array): Promise<void>;
100
+ /** The folder's entries, sorted by name. Throws SandboxFileNotFoundError
101
+ * when there is no such folder. */
102
+ readdir(path: string): Promise<FileEntry[]>;
103
+ /** Makes the folder and its parents; fine when it is there already. */
104
+ mkdir(path: string): Promise<void>;
105
+ exists(path: string): Promise<boolean>;
106
+ /** Removes a file, or a folder with everything in it; fine when it is not
107
+ * there. */
108
+ remove(path: string): Promise<void>;
109
+ }
110
+ export interface SandboxInfo {
111
+ id: string;
112
+ provider: string;
113
+ status: 'running' | 'stopped' | 'error';
114
+ createdAt: Date;
115
+ /** When it will shut itself down, when the provider says. */
116
+ expiresAt?: Date;
117
+ /** The folder commands start in and relative paths are taken from. */
118
+ workdir: string;
119
+ metadata?: Record<string, string>;
120
+ }
121
+ export interface Sandbox {
122
+ readonly sandboxId: string;
123
+ readonly provider: string;
124
+ readonly filesystem: SandboxFileSystem;
125
+ runCommand(command: string, options?: RunCommandOptions): Promise<CommandResult>;
126
+ /** A URL for a port the sandbox serves on. Throws SandboxUnsupportedError
127
+ * where the adapter cannot give one. */
128
+ getUrl(options: {
129
+ port: number;
130
+ protocol?: 'http' | 'https';
131
+ }): Promise<string>;
132
+ getInfo(): Promise<SandboxInfo>;
133
+ /** Not in ComputeSDK: the sandbox now shuts itself down `timeoutMs` from
134
+ * now. The runtime calls it as a thread uses its sandbox, so one left idle
135
+ * ends by itself. Throws SandboxUnsupportedError where the provider
136
+ * cannot change it. */
137
+ setTimeout(timeoutMs: number): Promise<void>;
138
+ /** Ends the sandbox and its files. Fine when it is already gone. */
139
+ destroy(): Promise<void>;
140
+ }
141
+ /** The sandbox no longer exists: it timed out, was destroyed, or its
142
+ * provider lost it. */
143
+ export declare class SandboxGoneError extends Error {
144
+ readonly sandboxId: string;
145
+ readonly name = "SandboxGoneError";
146
+ constructor(sandboxId: string, why?: string);
147
+ }
148
+ /** There is no file or folder at this path. */
149
+ export declare class SandboxFileNotFoundError extends Error {
150
+ readonly path: string;
151
+ readonly name = "SandboxFileNotFoundError";
152
+ constructor(path: string);
153
+ }
154
+ /** The adapter cannot do this. */
155
+ export declare class SandboxUnsupportedError extends Error {
156
+ readonly name = "SandboxUnsupportedError";
157
+ constructor(provider: string, what: string);
158
+ }
159
+ //# sourceMappingURL=sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/ports/sandbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /** The sandbox port: a place apart from the app where an agent's commands run
2
+ * and its files live. A container, a hosted machine, or a folder on this
3
+ * machine in development.
4
+ *
5
+ * The shape and names follow ComputeSDK's Sandbox, so an adapter over it is
6
+ * thin, with three additions: `readFileBytes` (charts and images need it),
7
+ * `setTimeout` (how an idle sandbox ends by itself) and `SandboxInfo.workdir`.
8
+ * The Go runtime has the same port (ports/sandbox.go). */
9
+ /** How long a command may run when the caller does not say. */
10
+ export const DEFAULT_COMMAND_TIMEOUT_MS = 120_000;
11
+ /** The most output kept from one command, per stream. Past it the rest is
12
+ * dropped and the result says `truncated: true`, so a command that prints
13
+ * without end cannot fill the app's memory. */
14
+ export const MAX_COMMAND_OUTPUT_BYTES = 4 * 1024 * 1024;
15
+ /** The exit code of a command stopped at its time limit, as `timeout(1)`
16
+ * gives it. */
17
+ export const TIMED_OUT_EXIT_CODE = 124;
18
+ /** The sandbox no longer exists: it timed out, was destroyed, or its
19
+ * provider lost it. */
20
+ export class SandboxGoneError extends Error {
21
+ sandboxId;
22
+ name = 'SandboxGoneError';
23
+ constructor(sandboxId, why) {
24
+ super(`sandbox ${sandboxId} is gone${why ? `: ${why}` : ''}`);
25
+ this.sandboxId = sandboxId;
26
+ }
27
+ }
28
+ /** There is no file or folder at this path. */
29
+ export class SandboxFileNotFoundError extends Error {
30
+ path;
31
+ name = 'SandboxFileNotFoundError';
32
+ constructor(path) {
33
+ super(`sandbox: no such file or folder: ${path}`);
34
+ this.path = path;
35
+ }
36
+ }
37
+ /** The adapter cannot do this. */
38
+ export class SandboxUnsupportedError extends Error {
39
+ name = 'SandboxUnsupportedError';
40
+ constructor(provider, what) {
41
+ super(`${provider}: ${what} is not supported`);
42
+ }
43
+ }
44
+ //# sourceMappingURL=sandbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/ports/sandbox.ts"],"names":[],"mappings":"AAEA;;;;;;;2DAO2D;AAE3D,+DAA+D;AAC/D,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD;;gDAEgD;AAChD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAExD;gBACgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAwHvC;wBACwB;AACxB,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAEpB;IADH,IAAI,GAAG,kBAAkB,CAAC;IAC5C,YAAqB,SAAiB,EAAE,GAAY;QAClD,KAAK,CAAC,WAAW,SAAS,WAAW,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAD3C,cAAS,GAAT,SAAS,CAAQ;IAEtC,CAAC;CACF;AAED,+CAA+C;AAC/C,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAE5B;IADH,IAAI,GAAG,0BAA0B,CAAC;IACpD,YAAqB,IAAY;QAC/B,KAAK,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;QAD/B,SAAI,GAAJ,IAAI,CAAQ;IAEjC,CAAC;CACF;AAED,kCAAkC;AAClC,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAC9B,IAAI,GAAG,yBAAyB,CAAC;IACnD,YAAY,QAAgB,EAAE,IAAY;QACxC,KAAK,CAAC,GAAG,QAAQ,KAAK,IAAI,mBAAmB,CAAC,CAAC;IACjD,CAAC;CACF"}
@@ -0,0 +1,60 @@
1
+ /** The ports behind the built-in tools. Each tool has one name and one input
2
+ * shape in every runtime; what does the work is an adapter you plug in here,
3
+ * like storage or the queue. */
4
+ /** How far back a search may look. */
5
+ export type SearchRecency = 'day' | 'week' | 'month' | 'year';
6
+ export interface SearchOptions {
7
+ /** 1 to 10. */
8
+ maxResults: number;
9
+ /** Only results from these domains (and their subdomains). */
10
+ allowedDomains?: string[];
11
+ /** Never results from these domains (and their subdomains). */
12
+ blockedDomains?: string[];
13
+ recency?: SearchRecency;
14
+ signal?: AbortSignal;
15
+ }
16
+ export interface SearchHit {
17
+ title: string;
18
+ url: string;
19
+ /** A short piece of the page that matched: what the model reads to decide
20
+ * whether to open it. */
21
+ snippet: string;
22
+ /** ISO date, when the engine knows it. */
23
+ publishedAt?: string;
24
+ }
25
+ /** A web search engine: Brave, Jina, Tavily… */
26
+ export interface Search {
27
+ /** The adapter's name, as usage rows and prices know it: 'brave'. */
28
+ readonly name: string;
29
+ search(query: string, options: SearchOptions): Promise<SearchHit[]>;
30
+ }
31
+ export interface FetchOptions {
32
+ /** Stop reading the page after this many bytes. */
33
+ maxBytes: number;
34
+ format: 'markdown' | 'text';
35
+ signal?: AbortSignal;
36
+ }
37
+ export interface FetchedPage {
38
+ /** Where the page ended up, after redirects. */
39
+ url: string;
40
+ title: string;
41
+ content: string;
42
+ /** True when the page was cut at `maxBytes`. */
43
+ truncated: boolean;
44
+ }
45
+ /** Reads one web page as clean text: our PageReader, Jina Reader… */
46
+ export interface Fetcher {
47
+ readonly name: string;
48
+ fetch(url: string, options: FetchOptions): Promise<FetchedPage>;
49
+ }
50
+ import type { SandboxProvider } from './sandbox.js';
51
+ /** The adapters the built-in tools use. A tool whose port is missing cannot
52
+ * be asked for: `builtinTools` throws at startup rather than a run failing
53
+ * later. */
54
+ export interface BuiltinToolPorts {
55
+ search?: Search;
56
+ fetcher?: Fetcher;
57
+ /** Where commands run and files live: one sandbox per thread. */
58
+ sandbox?: SandboxProvider;
59
+ }
60
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/ports/tools.ts"],"names":[],"mappings":"AAAA;;iCAEiC;AAEjC,sCAAsC;AACtC,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,eAAe;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ;8BAC0B;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,gDAAgD;AAChD,MAAM,WAAW,MAAM;IACrB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;CACrE;AAED,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,qEAAqE;AACrE,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACjE;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD;;aAEa;AACb,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iEAAiE;IACjE,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B"}
@@ -0,0 +1,5 @@
1
+ /** The ports behind the built-in tools. Each tool has one name and one input
2
+ * shape in every runtime; what does the work is an adapter you plug in here,
3
+ * like storage or the queue. */
4
+ export {};
5
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/ports/tools.ts"],"names":[],"mappings":"AAAA;;iCAEiC"}
package/dist/pricing.d.ts CHANGED
@@ -35,6 +35,30 @@ export declare function lookupPrice(prices: PriceTable, model?: string | null, m
35
35
  * cost and `UsageTotals.unpriced` counts it, so a missing price shows up as
36
36
  * a gap in the bill rather than as a silent zero. */
37
37
  export declare function table(prices: PriceTable, currency?: string): Pricer;
38
+ /** What a paid tool service costs, in currency units: per use (a search, a
39
+ * page), per second of sandbox time (bash, code_execution), or both. */
40
+ export interface ToolPrice {
41
+ perUse?: number;
42
+ perSecond?: number;
43
+ }
44
+ /** Tool prices, keyed by adapter name ('brave', 'jina-search') or by tool
45
+ * name ('web_search'). The adapter wins: the same tool costs what the
46
+ * service behind it charges. */
47
+ export type ToolPriceTable = Record<string, ToolPrice>;
48
+ /** Prices the built-in tools' usage rows (`kind: 'tool'`, `model:
49
+ * 'tool:<name>'`), per use. Every other row is left to the next pricer, so
50
+ * chain it with the model table:
51
+ *
52
+ * ```ts
53
+ * pricer: pricing.chain(pricing.table(modelPrices), pricing.tools({ brave: { perUse: 0.005 } }))
54
+ * ```
55
+ *
56
+ * Sandbox tools are priced by the sandbox adapter's name and the seconds
57
+ * their commands ran: `{ e2b: { perSecond: 0.000028 } }`.
58
+ *
59
+ * A tool's own model calls (reading a page with a question) carry the
60
+ * model's key, so the model table prices them. */
61
+ export declare function tools(prices: ToolPriceTable, currency?: string): Pricer;
38
62
  /** Pulls a cost out of what the provider attached to the finish: a gateway
39
63
  * receipt, a billing header, whatever your provider sends. Return null when
40
64
  * this call carried no receipt, and the next pricer in a chain gets its
@@ -1 +1 @@
1
- {"version":3,"file":"pricing.d.ts","sourceRoot":"","sources":["../src/pricing.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,kEAAkE;AAClE,eAAO,MAAM,GAAG,QAAQ,CAAC;AAEzB;;;oBAGoB;AACpB,MAAM,WAAW,UAAU;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;kBAGc;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;uEAGuE;AACvE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAEpD;kDACkD;AAClD,wBAAgB,WAAW,CACzB,MAAM,EAAE,UAAU,EAClB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,UAAU,GAAG,SAAS,CAMxB;AAWD;;;;;;;;;sDASsD;AACtD,wBAAgB,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CA2BxE;AAED;;;YAGY;AACZ,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,IAAI,CAAC;AAE7E;;;;yBAIyB;AACzB,wBAAgB,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAW3E;AAED;;;;;;;;;;0BAU0B;AAC1B,wBAAgB,KAAK,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAiBnE;AAED;kEACkE;AAClE,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAEpE;AAED,sEAAsE;AACtE,eAAO,MAAM,MAAM,GAAI,QAAQ,MAAM,KAAG,MAAwC,CAAC;AAEjF,2EAA2E;AAC3E,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,KAAG,MAAuB,CAAC;AAE3D;qBACqB;AACrB,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,EAAE,WAAU,MAAY,KAAG,MACpB,CAAC"}
1
+ {"version":3,"file":"pricing.d.ts","sourceRoot":"","sources":["../src/pricing.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,kEAAkE;AAClE,eAAO,MAAM,GAAG,QAAQ,CAAC;AAEzB;;;oBAGoB;AACpB,MAAM,WAAW,UAAU;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;kBAGc;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;uEAGuE;AACvE,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAEpD;kDACkD;AAClD,wBAAgB,WAAW,CACzB,MAAM,EAAE,UAAU,EAClB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GACtB,UAAU,GAAG,SAAS,CAMxB;AAWD;;;;;;;;;sDASsD;AACtD,wBAAgB,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CA2BxE;AAED;yEACyE;AACzE,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;iCAEiC;AACjC,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEvD;;;;;;;;;;;;mDAYmD;AACnD,wBAAgB,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAa5E;AAED;;;YAGY;AACZ,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,IAAI,CAAC;AAE7E;;;;yBAIyB;AACzB,wBAAgB,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAW3E;AAED;;;;;;;;;;0BAU0B;AAC1B,wBAAgB,KAAK,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAiBnE;AAED;kEACkE;AAClE,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAEpE;AAED,sEAAsE;AACtE,eAAO,MAAM,MAAM,GAAI,QAAQ,MAAM,KAAG,MAAwC,CAAC;AAEjF,2EAA2E;AAC3E,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,KAAG,MAAuB,CAAC;AAE3D;qBACqB;AACrB,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,EAAE,WAAU,MAAY,KAAG,MACpB,CAAC"}
package/dist/pricing.js CHANGED
@@ -1,3 +1,17 @@
1
+ /** The pricers that ship with the platform (§4).
2
+ *
3
+ * A pricer turns one model call into money. The runtime calls it after every
4
+ * call, before the usage row is stored, so cost lives on the row next to the
5
+ * tokens instead of being worked out by whoever reads it later.
6
+ *
7
+ * Three cover almost everyone:
8
+ *
9
+ * `table` — a price list, keyed by model. The common case.
10
+ * `receipt` — read the cost the provider already computed and sent back.
11
+ * `chain` — try several in order; the first that answers wins.
12
+ *
13
+ * Anything else is a `Pricer` of your own: an object with a `price` method. */
14
+ import { isToolUse, TOOL_USE_PREFIX } from './core/types.js';
1
15
  /** The currency the shipped pricers use unless told otherwise. */
2
16
  export const USD = 'USD';
3
17
  /** Find a model's price, trying the registry key, the wire id, then the
@@ -56,6 +70,35 @@ export function table(prices, currency = USD) {
56
70
  },
57
71
  };
58
72
  }
73
+ /** Prices the built-in tools' usage rows (`kind: 'tool'`, `model:
74
+ * 'tool:<name>'`), per use. Every other row is left to the next pricer, so
75
+ * chain it with the model table:
76
+ *
77
+ * ```ts
78
+ * pricer: pricing.chain(pricing.table(modelPrices), pricing.tools({ brave: { perUse: 0.005 } }))
79
+ * ```
80
+ *
81
+ * Sandbox tools are priced by the sandbox adapter's name and the seconds
82
+ * their commands ran: `{ e2b: { perSecond: 0.000028 } }`.
83
+ *
84
+ * A tool's own model calls (reading a page with a question) carry the
85
+ * model's key, so the model table prices them. */
86
+ export function tools(prices, currency = USD) {
87
+ return {
88
+ price(u) {
89
+ if (u.kind !== 'tool' || !u.model || !isToolUse(u.model))
90
+ return null;
91
+ const p = (u.modelId ? prices[u.modelId] : undefined) ?? prices[u.model.slice(TOOL_USE_PREFIX.length)];
92
+ if (!p)
93
+ return null;
94
+ const meta = u.providerMetadata;
95
+ const uses = typeof meta?.uses === 'number' && meta.uses > 0 ? meta.uses : 1;
96
+ const secs = typeof meta?.seconds === 'number' && meta.seconds > 0 ? meta.seconds : 0;
97
+ const amount = (p.perUse ?? 0) * uses + (p.perSecond ?? 0) * secs;
98
+ return { micros: Math.round(amount * 1_000_000), currency, source: 'table' };
99
+ },
100
+ };
101
+ }
59
102
  /** Price a call from the number the provider already computed.
60
103
  *
61
104
  * This is the most accurate pricer there is: no price list to keep in step
@@ -1 +1 @@
1
- {"version":3,"file":"pricing.js","sourceRoot":"","sources":["../src/pricing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pricing.js","sourceRoot":"","sources":["../src/pricing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EAMT,cAAc,EAGf,MAAM,oBAAoB,CAAC;AAuB5B;qDACqD;AACrD,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;gBAAd,KAAK,CAAC,EAAE,MAAM,YAAA;CAIpC;AA0BD;qEACqE;AACrE,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAgQ7E"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EAMT,cAAc,EAGf,MAAM,oBAAoB,CAAC;AAwB5B;qDACqD;AACrD,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;gBAAd,KAAK,CAAC,EAAE,MAAM,YAAA;CAIpC;AA0BD;qEACqE;AACrE,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CA0P7E"}