@zhivex-ai/core 0.7.0 → 0.8.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 (77) hide show
  1. package/README.md +5 -0
  2. package/dist/advanced-tool-registry.d.ts +112 -0
  3. package/dist/advanced-tool-registry.d.ts.map +1 -0
  4. package/dist/advanced-tool-registry.js +407 -0
  5. package/dist/advanced-tool-registry.js.map +1 -0
  6. package/dist/agent-evaluation.d.ts +176 -0
  7. package/dist/agent-evaluation.d.ts.map +1 -0
  8. package/dist/agent-evaluation.js +334 -0
  9. package/dist/agent-evaluation.js.map +1 -0
  10. package/dist/agent-store.d.ts.map +1 -1
  11. package/dist/agent-store.js +226 -8
  12. package/dist/agent-store.js.map +1 -1
  13. package/dist/agent-trace.d.ts +127 -0
  14. package/dist/agent-trace.d.ts.map +1 -0
  15. package/dist/agent-trace.js +331 -0
  16. package/dist/agent-trace.js.map +1 -0
  17. package/dist/agent.d.ts +12 -1
  18. package/dist/agent.d.ts.map +1 -1
  19. package/dist/agent.js +469 -36
  20. package/dist/agent.js.map +1 -1
  21. package/dist/api-stability.d.ts +9 -0
  22. package/dist/api-stability.d.ts.map +1 -0
  23. package/dist/api-stability.js +261 -0
  24. package/dist/api-stability.js.map +1 -0
  25. package/dist/artifact.d.ts +165 -0
  26. package/dist/artifact.d.ts.map +1 -0
  27. package/dist/artifact.js +994 -0
  28. package/dist/artifact.js.map +1 -0
  29. package/dist/errors.d.ts +2 -0
  30. package/dist/errors.d.ts.map +1 -1
  31. package/dist/errors.js +2 -0
  32. package/dist/errors.js.map +1 -1
  33. package/dist/generate-text.d.ts.map +1 -1
  34. package/dist/generate-text.js +6 -2
  35. package/dist/generate-text.js.map +1 -1
  36. package/dist/index.d.ts +27 -1
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +14 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/live-agent.d.ts.map +1 -1
  41. package/dist/live-agent.js +7 -1
  42. package/dist/live-agent.js.map +1 -1
  43. package/dist/provider-parity.d.ts +63 -0
  44. package/dist/provider-parity.d.ts.map +1 -0
  45. package/dist/provider-parity.js +175 -0
  46. package/dist/provider-parity.js.map +1 -0
  47. package/dist/runner.d.ts +111 -0
  48. package/dist/runner.d.ts.map +1 -0
  49. package/dist/runner.js +635 -0
  50. package/dist/runner.js.map +1 -0
  51. package/dist/safety-policy.d.ts +65 -0
  52. package/dist/safety-policy.d.ts.map +1 -0
  53. package/dist/safety-policy.js +308 -0
  54. package/dist/safety-policy.js.map +1 -0
  55. package/dist/types.d.ts +119 -3
  56. package/dist/types.d.ts.map +1 -1
  57. package/dist/workflow-artifacts.d.ts +28 -0
  58. package/dist/workflow-artifacts.d.ts.map +1 -0
  59. package/dist/workflow-artifacts.js +86 -0
  60. package/dist/workflow-artifacts.js.map +1 -0
  61. package/dist/workflow-evaluation-diff.d.ts +51 -0
  62. package/dist/workflow-evaluation-diff.d.ts.map +1 -0
  63. package/dist/workflow-evaluation-diff.js +141 -0
  64. package/dist/workflow-evaluation-diff.js.map +1 -0
  65. package/dist/workflow-evaluation.d.ts +94 -0
  66. package/dist/workflow-evaluation.d.ts.map +1 -0
  67. package/dist/workflow-evaluation.js +210 -0
  68. package/dist/workflow-evaluation.js.map +1 -0
  69. package/dist/workflow-state-service.d.ts +67 -0
  70. package/dist/workflow-state-service.d.ts.map +1 -0
  71. package/dist/workflow-state-service.js +498 -0
  72. package/dist/workflow-state-service.js.map +1 -0
  73. package/dist/workflow.d.ts +206 -0
  74. package/dist/workflow.d.ts.map +1 -0
  75. package/dist/workflow.js +727 -0
  76. package/dist/workflow.js.map +1 -0
  77. package/package.json +1 -1
@@ -39,6 +39,10 @@ const prepareSqliteStatement = (db, sql) => {
39
39
  const initializeSqliteTable = (db, sql) => {
40
40
  db.exec(sql);
41
41
  };
42
+ const normalizeRunState = (state) => ({
43
+ ...state,
44
+ schemaVersion: 1
45
+ });
42
46
  const ensurePostgresTable = (() => {
43
47
  const initializedTables = new WeakMap();
44
48
  return async (client, tableName, createSql) => {
@@ -57,15 +61,56 @@ const ensurePostgresTable = (() => {
57
61
  })();
58
62
  export const createInMemoryAgentRunStore = () => {
59
63
  const states = new Map();
64
+ const idempotencyKeys = new Map();
65
+ const parentRunIds = new Map();
66
+ const removeParentIndex = (state) => {
67
+ if (!state?.parentRunId) {
68
+ return;
69
+ }
70
+ const children = parentRunIds.get(state.parentRunId);
71
+ children?.delete(state.runId);
72
+ if (children?.size === 0) {
73
+ parentRunIds.delete(state.parentRunId);
74
+ }
75
+ };
60
76
  return {
61
77
  load(runId) {
62
78
  const state = states.get(runId);
63
- return state ? cloneState(state) : undefined;
79
+ return state ? cloneState(normalizeRunState(state)) : undefined;
80
+ },
81
+ findByIdempotencyKey(idempotencyKey) {
82
+ const runId = idempotencyKeys.get(idempotencyKey);
83
+ if (!runId) {
84
+ return undefined;
85
+ }
86
+ const state = states.get(runId);
87
+ return state ? cloneState(normalizeRunState(state)) : undefined;
88
+ },
89
+ findByParentRunId(parentRunId) {
90
+ return [...(parentRunIds.get(parentRunId) ?? [])].flatMap((runId) => {
91
+ const state = states.get(runId);
92
+ return state ? [cloneState(normalizeRunState(state))] : [];
93
+ });
64
94
  },
65
95
  save(state) {
66
- states.set(state.runId, cloneState(state));
96
+ const normalized = normalizeRunState(state);
97
+ removeParentIndex(states.get(normalized.runId));
98
+ states.set(normalized.runId, cloneState(normalized));
99
+ if (normalized.idempotencyKey) {
100
+ idempotencyKeys.set(normalized.idempotencyKey, normalized.runId);
101
+ }
102
+ if (normalized.parentRunId) {
103
+ const children = parentRunIds.get(normalized.parentRunId) ?? new Set();
104
+ children.add(normalized.runId);
105
+ parentRunIds.set(normalized.parentRunId, children);
106
+ }
67
107
  },
68
108
  delete(runId) {
109
+ const state = states.get(runId);
110
+ if (state?.idempotencyKey) {
111
+ idempotencyKeys.delete(state.idempotencyKey);
112
+ }
113
+ removeParentIndex(state);
69
114
  states.delete(runId);
70
115
  }
71
116
  };
@@ -74,7 +119,7 @@ export const createFileAgentRunStore = (options) => ({
74
119
  async load(runId) {
75
120
  try {
76
121
  const content = await fs.readFile(path.join(options.directory, `${runId}.json`), "utf8");
77
- return JSON.parse(content);
122
+ return normalizeRunState(JSON.parse(content));
78
123
  }
79
124
  catch (error) {
80
125
  if (error.code === "ENOENT") {
@@ -83,9 +128,56 @@ export const createFileAgentRunStore = (options) => ({
83
128
  throw error;
84
129
  }
85
130
  },
131
+ async findByIdempotencyKey(idempotencyKey) {
132
+ let entries;
133
+ try {
134
+ entries = await fs.readdir(options.directory);
135
+ }
136
+ catch (error) {
137
+ if (error.code === "ENOENT") {
138
+ return undefined;
139
+ }
140
+ throw error;
141
+ }
142
+ for (const entry of entries) {
143
+ if (!entry.endsWith(".json")) {
144
+ continue;
145
+ }
146
+ const content = await fs.readFile(path.join(options.directory, entry), "utf8");
147
+ const state = normalizeRunState(JSON.parse(content));
148
+ if (state.idempotencyKey === idempotencyKey) {
149
+ return state;
150
+ }
151
+ }
152
+ return undefined;
153
+ },
154
+ async findByParentRunId(parentRunId) {
155
+ let entries;
156
+ try {
157
+ entries = await fs.readdir(options.directory);
158
+ }
159
+ catch (error) {
160
+ if (error.code === "ENOENT") {
161
+ return [];
162
+ }
163
+ throw error;
164
+ }
165
+ const states = [];
166
+ for (const entry of entries) {
167
+ if (!entry.endsWith(".json")) {
168
+ continue;
169
+ }
170
+ const content = await fs.readFile(path.join(options.directory, entry), "utf8");
171
+ const state = normalizeRunState(JSON.parse(content));
172
+ if (state.parentRunId === parentRunId) {
173
+ states.push(state);
174
+ }
175
+ }
176
+ return states;
177
+ },
86
178
  async save(state) {
87
179
  await fs.mkdir(options.directory, { recursive: true });
88
- await fs.writeFile(path.join(options.directory, `${state.runId}.json`), JSON.stringify(state, null, 2), "utf8");
180
+ await fs.writeFile(path.join(options.directory, `${state.runId}.json`), JSON.stringify(normalizeRunState(state), null, 2), "utf8");
89
181
  },
90
182
  async delete(runId) {
91
183
  try {
@@ -135,11 +227,23 @@ export const createFileAgentMemoryStore = (options) => {
135
227
  };
136
228
  export const createSqliteAgentRunStore = (options) => {
137
229
  const tableName = validateIdentifier(options.tableName ?? "zhivex_agent_runs", "tableName");
230
+ const idempotencyTableName = `${tableName}_idempotency`;
231
+ const parentTableName = `${tableName}_parents`;
138
232
  initializeSqliteTable(options.db, `CREATE TABLE IF NOT EXISTS ${tableName} (
139
233
  run_id TEXT PRIMARY KEY,
140
234
  state_json TEXT NOT NULL,
141
235
  updated_at_ms INTEGER NOT NULL
142
236
  )`);
237
+ initializeSqliteTable(options.db, `CREATE TABLE IF NOT EXISTS ${idempotencyTableName} (
238
+ idempotency_key TEXT PRIMARY KEY,
239
+ run_id TEXT NOT NULL,
240
+ updated_at_ms INTEGER NOT NULL
241
+ )`);
242
+ initializeSqliteTable(options.db, `CREATE TABLE IF NOT EXISTS ${parentTableName} (
243
+ run_id TEXT PRIMARY KEY,
244
+ parent_run_id TEXT NOT NULL,
245
+ updated_at_ms INTEGER NOT NULL
246
+ )`);
143
247
  const loadStatement = prepareSqliteStatement(options.db, `SELECT state_json FROM ${tableName} WHERE run_id = ?`);
144
248
  const saveStatement = prepareSqliteStatement(options.db, `
145
249
  INSERT INTO ${tableName} (run_id, state_json, updated_at_ms)
@@ -149,17 +253,69 @@ export const createSqliteAgentRunStore = (options) => {
149
253
  updated_at_ms = excluded.updated_at_ms
150
254
  `);
151
255
  const deleteStatement = prepareSqliteStatement(options.db, `DELETE FROM ${tableName} WHERE run_id = ?`);
256
+ const findIdempotencyStatement = prepareSqliteStatement(options.db, `SELECT runs.state_json
257
+ FROM ${tableName} runs
258
+ INNER JOIN ${idempotencyTableName} keys ON keys.run_id = runs.run_id
259
+ WHERE keys.idempotency_key = ?`);
260
+ const saveIdempotencyStatement = prepareSqliteStatement(options.db, `
261
+ INSERT INTO ${idempotencyTableName} (idempotency_key, run_id, updated_at_ms)
262
+ VALUES (?, ?, ?)
263
+ ON CONFLICT(idempotency_key) DO UPDATE SET
264
+ run_id = excluded.run_id,
265
+ updated_at_ms = excluded.updated_at_ms
266
+ `);
267
+ const deleteIdempotencyStatement = prepareSqliteStatement(options.db, `DELETE FROM ${idempotencyTableName} WHERE run_id = ?`);
268
+ const findParentStatement = prepareSqliteStatement(options.db, `SELECT runs.state_json
269
+ FROM ${tableName} runs
270
+ INNER JOIN ${parentTableName} parents ON parents.run_id = runs.run_id
271
+ WHERE parents.parent_run_id = ?`);
272
+ const saveParentStatement = prepareSqliteStatement(options.db, `
273
+ INSERT INTO ${parentTableName} (run_id, parent_run_id, updated_at_ms)
274
+ VALUES (?, ?, ?)
275
+ ON CONFLICT(run_id) DO UPDATE SET
276
+ parent_run_id = excluded.parent_run_id,
277
+ updated_at_ms = excluded.updated_at_ms
278
+ `);
279
+ const deleteParentStatement = prepareSqliteStatement(options.db, `DELETE FROM ${parentTableName} WHERE run_id = ?`);
152
280
  return {
153
281
  load(runId) {
154
282
  const row = loadStatement.get([runId]);
155
283
  const stateJson = getRecordField(row, ["state_json", "stateJson"]);
156
- return typeof stateJson === "string" ? JSON.parse(stateJson) : undefined;
284
+ return typeof stateJson === "string" ? normalizeRunState(JSON.parse(stateJson)) : undefined;
285
+ },
286
+ findByIdempotencyKey(idempotencyKey) {
287
+ const row = findIdempotencyStatement.get([idempotencyKey]);
288
+ const stateJson = getRecordField(row, ["state_json", "stateJson"]);
289
+ return typeof stateJson === "string" ? normalizeRunState(JSON.parse(stateJson)) : undefined;
290
+ },
291
+ findByParentRunId(parentRunId) {
292
+ const rows = findParentStatement.all?.([parentRunId]);
293
+ if (Array.isArray(rows)) {
294
+ return rows.flatMap((row) => {
295
+ const stateJson = getRecordField(row, ["state_json", "stateJson"]);
296
+ return typeof stateJson === "string" ? [normalizeRunState(JSON.parse(stateJson))] : [];
297
+ });
298
+ }
299
+ const row = findParentStatement.get([parentRunId]);
300
+ const stateJson = getRecordField(row, ["state_json", "stateJson"]);
301
+ return typeof stateJson === "string" ? [normalizeRunState(JSON.parse(stateJson))] : [];
157
302
  },
158
303
  save(state) {
159
- saveStatement.run([state.runId, JSON.stringify(state), Date.now()]);
304
+ const normalized = normalizeRunState(state);
305
+ const updatedAt = Date.now();
306
+ saveStatement.run([normalized.runId, JSON.stringify(normalized), updatedAt]);
307
+ if (normalized.idempotencyKey) {
308
+ saveIdempotencyStatement.run([normalized.idempotencyKey, normalized.runId, updatedAt]);
309
+ }
310
+ deleteParentStatement.run([normalized.runId]);
311
+ if (normalized.parentRunId) {
312
+ saveParentStatement.run([normalized.runId, normalized.parentRunId, updatedAt]);
313
+ }
160
314
  },
161
315
  delete(runId) {
162
316
  deleteStatement.run([runId]);
317
+ deleteIdempotencyStatement.run([runId]);
318
+ deleteParentStatement.run([runId]);
163
319
  }
164
320
  };
165
321
  };
@@ -193,30 +349,92 @@ export const createSqliteAgentMemoryStore = (options) => {
193
349
  };
194
350
  export const createPostgresAgentRunStore = (options) => {
195
351
  const tableName = validateIdentifier(options.tableName ?? "zhivex_agent_runs", "tableName");
352
+ const idempotencyTableName = `${tableName}_idempotency`;
353
+ const parentTableName = `${tableName}_parents`;
196
354
  const createSql = `
197
355
  CREATE TABLE IF NOT EXISTS ${tableName} (
198
356
  run_id TEXT PRIMARY KEY,
199
357
  state_json JSONB NOT NULL,
200
358
  updated_at_ms BIGINT NOT NULL
201
359
  )
360
+ `;
361
+ const createIdempotencySql = `
362
+ CREATE TABLE IF NOT EXISTS ${idempotencyTableName} (
363
+ idempotency_key TEXT PRIMARY KEY,
364
+ run_id TEXT NOT NULL,
365
+ updated_at_ms BIGINT NOT NULL
366
+ )
367
+ `;
368
+ const createParentSql = `
369
+ CREATE TABLE IF NOT EXISTS ${parentTableName} (
370
+ run_id TEXT PRIMARY KEY,
371
+ parent_run_id TEXT NOT NULL,
372
+ updated_at_ms BIGINT NOT NULL
373
+ )
202
374
  `;
203
375
  return {
204
376
  async load(runId) {
205
377
  await ensurePostgresTable(options.client, tableName, createSql);
206
378
  const result = await options.client.query(`SELECT state_json FROM ${tableName} WHERE run_id = $1`, [runId]);
207
- return result.rows[0] ? (getRecordField(result.rows[0], ["state_json", "stateJson"]) ?? undefined) : undefined;
379
+ const state = result.rows[0] ? (getRecordField(result.rows[0], ["state_json", "stateJson"]) ?? undefined) : undefined;
380
+ return state ? normalizeRunState(state) : undefined;
381
+ },
382
+ async findByIdempotencyKey(idempotencyKey) {
383
+ await ensurePostgresTable(options.client, tableName, createSql);
384
+ await ensurePostgresTable(options.client, idempotencyTableName, createIdempotencySql);
385
+ const result = await options.client.query(`SELECT runs.state_json
386
+ FROM ${tableName} runs
387
+ INNER JOIN ${idempotencyTableName} keys ON keys.run_id = runs.run_id
388
+ WHERE keys.idempotency_key = $1`, [idempotencyKey]);
389
+ const state = result.rows[0] ? (getRecordField(result.rows[0], ["state_json", "stateJson"]) ?? undefined) : undefined;
390
+ return state ? normalizeRunState(state) : undefined;
391
+ },
392
+ async findByParentRunId(parentRunId) {
393
+ await ensurePostgresTable(options.client, tableName, createSql);
394
+ await ensurePostgresTable(options.client, parentTableName, createParentSql);
395
+ const result = await options.client.query(`SELECT runs.state_json
396
+ FROM ${tableName} runs
397
+ INNER JOIN ${parentTableName} parents ON parents.run_id = runs.run_id
398
+ WHERE parents.parent_run_id = $1`, [parentRunId]);
399
+ return result.rows.flatMap((row) => {
400
+ const state = getRecordField(row, ["state_json", "stateJson"]) ?? undefined;
401
+ return state ? [normalizeRunState(state)] : [];
402
+ });
208
403
  },
209
404
  async save(state) {
210
405
  await ensurePostgresTable(options.client, tableName, createSql);
406
+ await ensurePostgresTable(options.client, idempotencyTableName, createIdempotencySql);
407
+ await ensurePostgresTable(options.client, parentTableName, createParentSql);
408
+ const normalized = normalizeRunState(state);
409
+ const updatedAt = Date.now();
211
410
  await options.client.query(`INSERT INTO ${tableName} (run_id, state_json, updated_at_ms)
212
411
  VALUES ($1, $2::jsonb, $3)
213
412
  ON CONFLICT(run_id) DO UPDATE SET
214
413
  state_json = EXCLUDED.state_json,
215
- updated_at_ms = EXCLUDED.updated_at_ms`, [state.runId, JSON.stringify(state), Date.now()]);
414
+ updated_at_ms = EXCLUDED.updated_at_ms`, [normalized.runId, JSON.stringify(normalized), updatedAt]);
415
+ if (normalized.idempotencyKey) {
416
+ await options.client.query(`INSERT INTO ${idempotencyTableName} (idempotency_key, run_id, updated_at_ms)
417
+ VALUES ($1, $2, $3)
418
+ ON CONFLICT(idempotency_key) DO UPDATE SET
419
+ run_id = EXCLUDED.run_id,
420
+ updated_at_ms = EXCLUDED.updated_at_ms`, [normalized.idempotencyKey, normalized.runId, updatedAt]);
421
+ }
422
+ await options.client.query(`DELETE FROM ${parentTableName} WHERE run_id = $1`, [normalized.runId]);
423
+ if (normalized.parentRunId) {
424
+ await options.client.query(`INSERT INTO ${parentTableName} (run_id, parent_run_id, updated_at_ms)
425
+ VALUES ($1, $2, $3)
426
+ ON CONFLICT(run_id) DO UPDATE SET
427
+ parent_run_id = EXCLUDED.parent_run_id,
428
+ updated_at_ms = EXCLUDED.updated_at_ms`, [normalized.runId, normalized.parentRunId, updatedAt]);
429
+ }
216
430
  },
217
431
  async delete(runId) {
218
432
  await ensurePostgresTable(options.client, tableName, createSql);
433
+ await ensurePostgresTable(options.client, idempotencyTableName, createIdempotencySql);
434
+ await ensurePostgresTable(options.client, parentTableName, createParentSql);
219
435
  await options.client.query(`DELETE FROM ${tableName} WHERE run_id = $1`, [runId]);
436
+ await options.client.query(`DELETE FROM ${idempotencyTableName} WHERE run_id = $1`, [runId]);
437
+ await options.client.query(`DELETE FROM ${parentTableName} WHERE run_id = $1`, [runId]);
220
438
  }
221
439
  };
222
440
  };
@@ -1 +1 @@
1
- {"version":3,"file":"agent-store.js","sourceRoot":"","sources":["../src/agent-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-store.js","sourceRoot":"","sources":["../src/agent-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ import type { ModelCatalog } from "./catalog.js";
2
+ import { type AgentRunSnapshot } from "./agent-evaluation.js";
3
+ import type { AgentRunStore, AgentRunState, AgentStatus, AgentStep, AgentTelemetryObserver, JsonValue, ModelMessage, TokenUsage, ToolExecutionResult } from "./types.js";
4
+ export interface TokenPricing {
5
+ inputCostPer1kTokens?: number;
6
+ outputCostPer1kTokens?: number;
7
+ totalCostPer1kTokens?: number;
8
+ costPer1kTokens?: number;
9
+ currency?: string;
10
+ }
11
+ export interface CostEstimate {
12
+ inputCost?: number;
13
+ outputCost?: number;
14
+ totalCost?: number;
15
+ currency?: string;
16
+ usage?: TokenUsage;
17
+ }
18
+ export interface LatencySummary {
19
+ startedAt?: number;
20
+ finishedAt?: number;
21
+ durationMs?: number;
22
+ }
23
+ export interface AgentTraceToolCall {
24
+ id: string;
25
+ name: string;
26
+ input?: JsonValue;
27
+ }
28
+ export interface AgentTraceStep {
29
+ index: number;
30
+ status: AgentStep["status"];
31
+ startedAt?: number;
32
+ finishedAt?: number;
33
+ durationMs?: number;
34
+ toolCalls: AgentTraceToolCall[];
35
+ toolResults: ToolExecutionResult[];
36
+ usage?: TokenUsage;
37
+ messages?: ModelMessage[];
38
+ error?: AgentStep["error"];
39
+ }
40
+ export interface AgentTraceEvent {
41
+ type: string;
42
+ runId: string;
43
+ agentId?: string;
44
+ timestamp?: number;
45
+ step?: number;
46
+ status?: string;
47
+ name?: string;
48
+ data?: JsonValue;
49
+ }
50
+ export interface AgentTraceArtifact {
51
+ runId: string;
52
+ agentId?: string;
53
+ provider: string;
54
+ modelId: string;
55
+ status: AgentStatus;
56
+ startedAt?: number;
57
+ updatedAt?: number;
58
+ durationMs?: number;
59
+ steps: AgentTraceStep[];
60
+ childRuns: AgentRunState["childRuns"];
61
+ events: AgentTraceEvent[];
62
+ approvals: AgentRunState["pendingApprovals"];
63
+ usage?: TokenUsage;
64
+ outputText?: string;
65
+ outputPreview: string;
66
+ error?: AgentRunState["error"];
67
+ cancellationReason?: string;
68
+ }
69
+ export interface AgentTraceOptions {
70
+ includeMessages?: boolean;
71
+ includeToolInputs?: boolean;
72
+ outputPreviewLength?: number;
73
+ }
74
+ export interface AgentTraceSummary {
75
+ runId: string;
76
+ agentId?: string;
77
+ provider: string;
78
+ modelId: string;
79
+ status: AgentStatus;
80
+ latency: LatencySummary;
81
+ steps: number;
82
+ childRuns: number;
83
+ toolCalls: number;
84
+ toolErrors: number;
85
+ approvals: number;
86
+ usage?: TokenUsage;
87
+ cost?: CostEstimate;
88
+ error?: AgentRunState["error"];
89
+ cancellationReason?: string;
90
+ }
91
+ export interface AgentTraceCollector {
92
+ observer: AgentTelemetryObserver;
93
+ getTrace(runId?: string): AgentTraceArtifact | undefined;
94
+ getEvents(runId?: string): AgentTraceEvent[];
95
+ reset(runId?: string): void;
96
+ }
97
+ export interface AgentRunTreeNode {
98
+ runId: string;
99
+ agentId?: string;
100
+ parentRunId?: string;
101
+ status: AgentStatus;
102
+ snapshot: AgentRunSnapshot;
103
+ children: AgentRunTreeNode[];
104
+ }
105
+ export interface AgentRunTreeSnapshot {
106
+ root: AgentRunTreeNode;
107
+ totalRuns: number;
108
+ }
109
+ export interface HierarchicalAgentTraceNode {
110
+ trace: AgentTraceArtifact;
111
+ children: HierarchicalAgentTraceNode[];
112
+ }
113
+ export interface HierarchicalAgentTrace {
114
+ root: HierarchicalAgentTraceNode;
115
+ totalRuns: number;
116
+ }
117
+ export type AgentRunCostPricing = TokenPricing | ModelCatalog;
118
+ export declare const createAgentTraceArtifact: (state: AgentRunState, options?: AgentTraceOptions) => AgentTraceArtifact;
119
+ export declare const createAgentRunTreeSnapshot: (store: AgentRunStore, runId: string) => Promise<AgentRunTreeSnapshot | undefined>;
120
+ export declare const createHierarchicalAgentTrace: (store: AgentRunStore, runId: string, options?: AgentTraceOptions) => Promise<HierarchicalAgentTrace | undefined>;
121
+ export declare const estimateTokenCost: (usage: TokenUsage | undefined, pricing?: TokenPricing) => CostEstimate;
122
+ export declare const estimateAgentRunCost: (stateOrTrace: AgentRunState | AgentTraceArtifact, pricing?: AgentRunCostPricing) => CostEstimate;
123
+ export declare const summarizeAgentTrace: (trace: AgentTraceArtifact, options?: {
124
+ pricing?: AgentRunCostPricing;
125
+ }) => AgentTraceSummary;
126
+ export declare const createAgentTraceCollector: (options?: AgentTraceOptions) => AgentTraceCollector;
127
+ //# sourceMappingURL=agent-trace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-trace.d.ts","sourceRoot":"","sources":["../src/agent-trace.ts"],"names":[],"mappings":"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"}