@strands-agents/sdk 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.
- package/dist/src/__fixtures__/agent-helpers.d.ts +10 -1
- package/dist/src/__fixtures__/agent-helpers.d.ts.map +1 -1
- package/dist/src/__fixtures__/agent-helpers.js +13 -2
- package/dist/src/__fixtures__/agent-helpers.js.map +1 -1
- package/dist/src/__fixtures__/metrics-helpers.d.ts +25 -0
- package/dist/src/__fixtures__/metrics-helpers.d.ts.map +1 -0
- package/dist/src/__fixtures__/metrics-helpers.js +34 -0
- package/dist/src/__fixtures__/metrics-helpers.js.map +1 -0
- package/dist/src/__fixtures__/mock-message-model.d.ts.map +1 -1
- package/dist/src/__fixtures__/mock-message-model.js +12 -0
- package/dist/src/__fixtures__/mock-message-model.js.map +1 -1
- package/dist/src/__fixtures__/mock-span.d.ts +78 -0
- package/dist/src/__fixtures__/mock-span.d.ts.map +1 -0
- package/dist/src/__fixtures__/mock-span.js +93 -0
- package/dist/src/__fixtures__/mock-span.js.map +1 -0
- package/dist/src/__fixtures__/mock-storage-provider.d.ts +5 -0
- package/dist/src/__fixtures__/mock-storage-provider.d.ts.map +1 -1
- package/dist/src/__fixtures__/mock-storage-provider.js +23 -6
- package/dist/src/__fixtures__/mock-storage-provider.js.map +1 -1
- package/dist/src/__fixtures__/slim-types.d.ts +2 -1
- package/dist/src/__fixtures__/slim-types.d.ts.map +1 -1
- package/dist/src/__fixtures__/tool-helpers.d.ts +2 -2
- package/dist/src/__fixtures__/tool-helpers.d.ts.map +1 -1
- package/dist/src/__fixtures__/tool-helpers.js +4 -4
- package/dist/src/__fixtures__/tool-helpers.js.map +1 -1
- package/dist/src/__tests__/app-state.test.d.ts +2 -0
- package/dist/src/__tests__/app-state.test.d.ts.map +1 -0
- package/dist/src/{agent/__tests__/state.test.js → __tests__/app-state.test.js} +46 -46
- package/dist/src/__tests__/app-state.test.js.map +1 -0
- package/dist/src/__tests__/mcp.test.js +129 -18
- package/dist/src/__tests__/mcp.test.js.map +1 -1
- package/dist/src/agent/__tests__/agent.test.js +119 -11
- package/dist/src/agent/__tests__/agent.test.js.map +1 -1
- package/dist/src/agent/__tests__/agent.tracer.test.d.ts +2 -0
- package/dist/src/agent/__tests__/agent.tracer.test.d.ts.map +1 -0
- package/dist/src/agent/__tests__/agent.tracer.test.js +470 -0
- package/dist/src/agent/__tests__/agent.tracer.test.js.map +1 -0
- package/dist/src/agent/agent.d.ts +79 -9
- package/dist/src/agent/agent.d.ts.map +1 -1
- package/dist/src/agent/agent.js +253 -68
- package/dist/src/agent/agent.js.map +1 -1
- package/dist/src/{agent/state.d.ts → app-state.d.ts} +7 -7
- package/dist/src/app-state.d.ts.map +1 -0
- package/dist/src/{agent/state.js → app-state.js} +6 -6
- package/dist/src/app-state.js.map +1 -0
- package/dist/src/conversation-manager/sliding-window-conversation-manager.d.ts +1 -1
- package/dist/src/conversation-manager/sliding-window-conversation-manager.js +1 -1
- package/dist/src/errors.d.ts +6 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +9 -0
- package/dist/src/errors.js.map +1 -1
- package/dist/src/hooks/__tests__/events.test.js +2 -0
- package/dist/src/hooks/__tests__/events.test.js.map +1 -1
- package/dist/src/hooks/events.d.ts +16 -0
- package/dist/src/hooks/events.d.ts.map +1 -1
- package/dist/src/hooks/events.js.map +1 -1
- package/dist/src/hooks/index.d.ts +1 -1
- package/dist/src/hooks/index.d.ts.map +1 -1
- package/dist/src/index.d.ts +23 -7
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +19 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp.d.ts +41 -0
- package/dist/src/mcp.d.ts.map +1 -1
- package/dist/src/mcp.js +60 -6
- package/dist/src/mcp.js.map +1 -1
- package/dist/src/models/__tests__/bedrock.test.js +688 -0
- package/dist/src/models/__tests__/bedrock.test.js.map +1 -1
- package/dist/src/models/__tests__/model.test.js +113 -0
- package/dist/src/models/__tests__/model.test.js.map +1 -1
- package/dist/src/models/__tests__/streaming.test.d.ts +2 -0
- package/dist/src/models/__tests__/streaming.test.d.ts.map +1 -0
- package/dist/src/models/__tests__/streaming.test.js +50 -0
- package/dist/src/models/__tests__/streaming.test.js.map +1 -0
- package/dist/src/models/bedrock.d.ts +80 -1
- package/dist/src/models/bedrock.d.ts.map +1 -1
- package/dist/src/models/bedrock.js +214 -5
- package/dist/src/models/bedrock.js.map +1 -1
- package/dist/src/models/model.d.ts +10 -0
- package/dist/src/models/model.d.ts.map +1 -1
- package/dist/src/models/model.js +58 -2
- package/dist/src/models/model.js.map +1 -1
- package/dist/src/models/streaming.d.ts +84 -3
- package/dist/src/models/streaming.d.ts.map +1 -1
- package/dist/src/models/streaming.js +26 -0
- package/dist/src/models/streaming.js.map +1 -1
- package/dist/src/multiagent/__tests__/events.test.d.ts +2 -0
- package/dist/src/multiagent/__tests__/events.test.d.ts.map +1 -0
- package/dist/src/multiagent/__tests__/events.test.js +205 -0
- package/dist/src/multiagent/__tests__/events.test.js.map +1 -0
- package/dist/src/multiagent/__tests__/graph.test.d.ts +2 -0
- package/dist/src/multiagent/__tests__/graph.test.d.ts.map +1 -0
- package/dist/src/multiagent/__tests__/graph.test.js +438 -0
- package/dist/src/multiagent/__tests__/graph.test.js.map +1 -0
- package/dist/src/multiagent/__tests__/nodes.test.js +105 -9
- package/dist/src/multiagent/__tests__/nodes.test.js.map +1 -1
- package/dist/src/multiagent/__tests__/queue.test.d.ts +2 -0
- package/dist/src/multiagent/__tests__/queue.test.d.ts.map +1 -0
- package/dist/src/multiagent/__tests__/queue.test.js +118 -0
- package/dist/src/multiagent/__tests__/queue.test.js.map +1 -0
- package/dist/src/multiagent/__tests__/swarm.test.d.ts +2 -0
- package/dist/src/multiagent/__tests__/swarm.test.d.ts.map +1 -0
- package/dist/src/multiagent/__tests__/swarm.test.js +241 -0
- package/dist/src/multiagent/__tests__/swarm.test.js.map +1 -0
- package/dist/src/multiagent/base.d.ts +25 -0
- package/dist/src/multiagent/base.d.ts.map +1 -0
- package/dist/src/multiagent/base.js +2 -0
- package/dist/src/multiagent/base.js.map +1 -0
- package/dist/src/multiagent/edge.d.ts +36 -0
- package/dist/src/multiagent/edge.d.ts.map +1 -0
- package/dist/src/multiagent/edge.js +15 -0
- package/dist/src/multiagent/edge.js.map +1 -0
- package/dist/src/multiagent/events.d.ts +129 -4
- package/dist/src/multiagent/events.d.ts.map +1 -1
- package/dist/src/multiagent/events.js +140 -2
- package/dist/src/multiagent/events.js.map +1 -1
- package/dist/src/multiagent/graph.d.ts +125 -0
- package/dist/src/multiagent/graph.d.ts.map +1 -0
- package/dist/src/multiagent/graph.js +394 -0
- package/dist/src/multiagent/graph.js.map +1 -0
- package/dist/src/multiagent/index.d.ts +12 -6
- package/dist/src/multiagent/index.d.ts.map +1 -1
- package/dist/src/multiagent/index.js +6 -3
- package/dist/src/multiagent/index.js.map +1 -1
- package/dist/src/multiagent/nodes.d.ts +66 -16
- package/dist/src/multiagent/nodes.d.ts.map +1 -1
- package/dist/src/multiagent/nodes.js +82 -24
- package/dist/src/multiagent/nodes.js.map +1 -1
- package/dist/src/multiagent/queue.d.ts +73 -0
- package/dist/src/multiagent/queue.d.ts.map +1 -0
- package/dist/src/multiagent/queue.js +72 -0
- package/dist/src/multiagent/queue.js.map +1 -0
- package/dist/src/multiagent/state.d.ts +79 -10
- package/dist/src/multiagent/state.d.ts.map +1 -1
- package/dist/src/multiagent/state.js +101 -9
- package/dist/src/multiagent/state.js.map +1 -1
- package/dist/src/multiagent/swarm.d.ts +102 -0
- package/dist/src/multiagent/swarm.d.ts.map +1 -0
- package/dist/src/multiagent/swarm.js +238 -0
- package/dist/src/multiagent/swarm.js.map +1 -0
- package/dist/src/registry/__tests__/tool-registry.test.d.ts +2 -0
- package/dist/src/registry/__tests__/tool-registry.test.d.ts.map +1 -0
- package/dist/src/registry/__tests__/tool-registry.test.js +124 -0
- package/dist/src/registry/__tests__/tool-registry.test.js.map +1 -0
- package/dist/src/registry/tool-registry.d.ts +32 -20
- package/dist/src/registry/tool-registry.d.ts.map +1 -1
- package/dist/src/registry/tool-registry.js +60 -158
- package/dist/src/registry/tool-registry.js.map +1 -1
- package/dist/src/session/__tests__/file-storage.test.node.js +75 -15
- package/dist/src/session/__tests__/file-storage.test.node.js.map +1 -1
- package/dist/src/session/__tests__/s3-storage.test.d.ts +2 -0
- package/dist/src/session/__tests__/s3-storage.test.d.ts.map +1 -0
- package/dist/src/session/__tests__/{s3-storage.test.node.js → s3-storage.test.js} +161 -75
- package/dist/src/session/__tests__/s3-storage.test.js.map +1 -0
- package/dist/src/session/__tests__/session-manager.test.d.ts +2 -0
- package/dist/src/session/__tests__/session-manager.test.d.ts.map +1 -0
- package/dist/src/session/__tests__/session-manager.test.js +461 -0
- package/dist/src/session/__tests__/session-manager.test.js.map +1 -0
- package/dist/src/session/__tests__/validation.test.js +28 -1
- package/dist/src/session/__tests__/validation.test.js.map +1 -1
- package/dist/src/session/file-storage.d.ts +53 -27
- package/dist/src/session/file-storage.d.ts.map +1 -1
- package/dist/src/session/file-storage.js +103 -52
- package/dist/src/session/file-storage.js.map +1 -1
- package/dist/src/session/index.d.ts +6 -13
- package/dist/src/session/index.d.ts.map +1 -1
- package/dist/src/session/index.js +4 -12
- package/dist/src/session/index.js.map +1 -1
- package/dist/src/session/s3-storage.d.ts +49 -20
- package/dist/src/session/s3-storage.d.ts.map +1 -1
- package/dist/src/session/s3-storage.js +120 -35
- package/dist/src/session/s3-storage.js.map +1 -1
- package/dist/src/session/session-manager.d.ts +83 -0
- package/dist/src/session/session-manager.d.ts.map +1 -0
- package/dist/src/session/session-manager.js +122 -0
- package/dist/src/session/session-manager.js.map +1 -0
- package/dist/src/session/storage.d.ts +19 -11
- package/dist/src/session/storage.d.ts.map +1 -1
- package/dist/src/session/types.d.ts +6 -18
- package/dist/src/session/types.d.ts.map +1 -1
- package/dist/src/session/validation.d.ts +7 -0
- package/dist/src/session/validation.d.ts.map +1 -1
- package/dist/src/session/validation.js +12 -0
- package/dist/src/session/validation.js.map +1 -1
- package/dist/src/structured-output/__tests__/context.test.js +13 -13
- package/dist/src/structured-output/__tests__/context.test.js.map +1 -1
- package/dist/src/structured-output/context.js +1 -1
- package/dist/src/structured-output/context.js.map +1 -1
- package/dist/src/telemetry/__tests__/config.test.d.ts +2 -0
- package/dist/src/telemetry/__tests__/config.test.d.ts.map +1 -0
- package/dist/src/telemetry/__tests__/config.test.js +40 -0
- package/dist/src/telemetry/__tests__/config.test.js.map +1 -0
- package/dist/src/telemetry/__tests__/config.test.node.d.ts +2 -0
- package/dist/src/telemetry/__tests__/config.test.node.d.ts.map +1 -0
- package/dist/src/telemetry/__tests__/config.test.node.js +103 -0
- package/dist/src/telemetry/__tests__/config.test.node.js.map +1 -0
- package/dist/src/telemetry/__tests__/json.test.d.ts +2 -0
- package/dist/src/telemetry/__tests__/json.test.d.ts.map +1 -0
- package/dist/src/telemetry/__tests__/json.test.js +89 -0
- package/dist/src/telemetry/__tests__/json.test.js.map +1 -0
- package/dist/src/telemetry/__tests__/meter.test.d.ts +2 -0
- package/dist/src/telemetry/__tests__/meter.test.d.ts.map +1 -0
- package/dist/src/telemetry/__tests__/meter.test.js +457 -0
- package/dist/src/telemetry/__tests__/meter.test.js.map +1 -0
- package/dist/src/telemetry/__tests__/tracer.test.node.d.ts +2 -0
- package/dist/src/telemetry/__tests__/tracer.test.node.d.ts.map +1 -0
- package/dist/src/telemetry/__tests__/tracer.test.node.js +611 -0
- package/dist/src/telemetry/__tests__/tracer.test.node.js.map +1 -0
- package/dist/src/telemetry/config.d.ts +82 -0
- package/dist/src/telemetry/config.d.ts.map +1 -0
- package/dist/src/telemetry/config.js +133 -0
- package/dist/src/telemetry/config.js.map +1 -0
- package/dist/src/telemetry/index.d.ts +34 -0
- package/dist/src/telemetry/index.d.ts.map +1 -0
- package/dist/src/telemetry/index.js +33 -0
- package/dist/src/telemetry/index.js.map +1 -0
- package/dist/src/telemetry/json.d.ts +11 -0
- package/dist/src/telemetry/json.d.ts.map +1 -0
- package/dist/src/telemetry/json.js +25 -0
- package/dist/src/telemetry/json.js.map +1 -0
- package/dist/src/telemetry/meter.d.ts +277 -0
- package/dist/src/telemetry/meter.d.ts.map +1 -0
- package/dist/src/telemetry/meter.js +292 -0
- package/dist/src/telemetry/meter.js.map +1 -0
- package/dist/src/telemetry/tracer.d.ts +219 -0
- package/dist/src/telemetry/tracer.d.ts.map +1 -0
- package/dist/src/telemetry/tracer.js +610 -0
- package/dist/src/telemetry/tracer.js.map +1 -0
- package/dist/src/telemetry/types.d.ts +101 -0
- package/dist/src/telemetry/types.d.ts.map +1 -0
- package/dist/src/telemetry/types.js +5 -0
- package/dist/src/{multiagent → telemetry}/types.js.map +1 -1
- package/dist/src/tools/__tests__/tool-factory.test.d.ts +2 -0
- package/dist/src/tools/__tests__/tool-factory.test.d.ts.map +1 -0
- package/dist/src/tools/__tests__/tool-factory.test.js +98 -0
- package/dist/src/tools/__tests__/tool-factory.test.js.map +1 -0
- package/dist/src/tools/__tests__/zod-tool.test-d.js +1 -1
- package/dist/src/tools/__tests__/zod-tool.test-d.js.map +1 -1
- package/dist/src/tools/__tests__/zod-tool.test.js +3 -4
- package/dist/src/tools/__tests__/zod-tool.test.js.map +1 -1
- package/dist/src/tools/function-tool.d.ts +15 -2
- package/dist/src/tools/function-tool.d.ts.map +1 -1
- package/dist/src/tools/function-tool.js +24 -0
- package/dist/src/tools/function-tool.js.map +1 -1
- package/dist/src/tools/tool-factory.d.ts +22 -0
- package/dist/src/tools/tool-factory.d.ts.map +1 -0
- package/dist/src/tools/tool-factory.js +55 -0
- package/dist/src/tools/tool-factory.js.map +1 -0
- package/dist/src/tools/tool.d.ts +1 -1
- package/dist/src/tools/tool.js +1 -1
- package/dist/src/tools/zod-tool.d.ts +55 -52
- package/dist/src/tools/zod-tool.d.ts.map +1 -1
- package/dist/src/tools/zod-tool.js +7 -61
- package/dist/src/tools/zod-tool.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/src/types/__tests__/agent.test.js +11 -0
- package/dist/src/types/__tests__/agent.test.js.map +1 -1
- package/dist/src/types/__tests__/citations.test.d.ts +2 -0
- package/dist/src/types/__tests__/citations.test.d.ts.map +1 -0
- package/dist/src/types/__tests__/citations.test.js +104 -0
- package/dist/src/types/__tests__/citations.test.js.map +1 -0
- package/dist/src/types/__tests__/messages.test.js +26 -0
- package/dist/src/types/__tests__/messages.test.js.map +1 -1
- package/dist/src/types/agent.d.ts +10 -3
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/agent.js +9 -0
- package/dist/src/types/agent.js.map +1 -1
- package/dist/src/types/citations.d.ts +180 -0
- package/dist/src/types/citations.d.ts.map +1 -0
- package/dist/src/types/citations.js +45 -0
- package/dist/src/types/citations.js.map +1 -0
- package/dist/src/types/messages.d.ts +9 -5
- package/dist/src/types/messages.d.ts.map +1 -1
- package/dist/src/types/messages.js +5 -1
- package/dist/src/types/messages.js.map +1 -1
- package/dist/src/vended-tools/bash/__tests__/bash.test.node.js +2 -2
- package/dist/src/vended-tools/bash/__tests__/bash.test.node.js.map +1 -1
- package/dist/src/vended-tools/bash/bash.d.ts.map +1 -1
- package/dist/src/vended-tools/bash/bash.js +1 -2
- package/dist/src/vended-tools/bash/bash.js.map +1 -1
- package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.js +4 -4
- package/dist/src/vended-tools/file_editor/__tests__/file-editor.test.node.js.map +1 -1
- package/dist/src/vended-tools/file_editor/file-editor.js +1 -1
- package/dist/src/vended-tools/file_editor/file-editor.js.map +1 -1
- package/dist/src/vended-tools/http_request/http-request.d.ts.map +1 -1
- package/dist/src/vended-tools/http_request/http-request.js +1 -2
- package/dist/src/vended-tools/http_request/http-request.js.map +1 -1
- package/dist/src/vended-tools/notebook/__tests__/notebook.test.js +2 -2
- package/dist/src/vended-tools/notebook/__tests__/notebook.test.js.map +1 -1
- package/dist/src/vended-tools/notebook/notebook.d.ts +1 -1
- package/package.json +25 -4
- package/dist/src/agent/__tests__/state.test.d.ts +0 -2
- package/dist/src/agent/__tests__/state.test.d.ts.map +0 -1
- package/dist/src/agent/__tests__/state.test.js.map +0 -1
- package/dist/src/agent/state.d.ts.map +0 -1
- package/dist/src/agent/state.js.map +0 -1
- package/dist/src/multiagent/types.d.ts +0 -5
- package/dist/src/multiagent/types.d.ts.map +0 -1
- package/dist/src/multiagent/types.js +0 -2
- package/dist/src/registry/registry.d.ts +0 -117
- package/dist/src/registry/registry.d.ts.map +0 -1
- package/dist/src/registry/registry.js +0 -298
- package/dist/src/registry/registry.js.map +0 -1
- package/dist/src/session/__tests__/s3-storage.test.node.d.ts +0 -2
- package/dist/src/session/__tests__/s3-storage.test.node.d.ts.map +0 -1
- package/dist/src/session/__tests__/s3-storage.test.node.js.map +0 -1
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
import { AgentResult, type AgentStreamEvent
|
|
2
|
-
import type
|
|
1
|
+
import { AgentResult, type AgentStreamEvent } from '../types/agent.js';
|
|
2
|
+
import { type ContentBlock, type ContentBlockData, Message, type MessageData, type SystemPrompt, type SystemPromptData } from '../types/messages.js';
|
|
3
|
+
import type { JSONValue } from '../types/json.js';
|
|
4
|
+
import { McpClient } from '../mcp.js';
|
|
5
|
+
import { type Tool } from '../tools/tool.js';
|
|
6
|
+
import { Model } from '../models/model.js';
|
|
7
|
+
import type { BaseModelConfig } from '../models/model.js';
|
|
3
8
|
import { ToolRegistry } from '../registry/tool-registry.js';
|
|
4
|
-
import {
|
|
9
|
+
import { AppState } from '../app-state.js';
|
|
5
10
|
import type { AgentData } from '../types/agent.js';
|
|
6
11
|
import type { HookProvider } from '../hooks/types.js';
|
|
7
12
|
import { HookRegistryImplementation } from '../hooks/registry.js';
|
|
8
13
|
import type { z } from 'zod';
|
|
14
|
+
import type { SessionManager } from '../session/session-manager.js';
|
|
15
|
+
import type { AttributeValue } from '@opentelemetry/api';
|
|
9
16
|
/**
|
|
10
17
|
* Recursive type definition for nested tool arrays.
|
|
11
18
|
* Allows tools to be organized in nested arrays of any depth.
|
|
@@ -71,6 +78,28 @@ export type AgentConfig = {
|
|
|
71
78
|
* Zod schema for structured output validation.
|
|
72
79
|
*/
|
|
73
80
|
structuredOutputSchema?: z.ZodSchema;
|
|
81
|
+
/**
|
|
82
|
+
* Session manager for saving and restoring agent sessions
|
|
83
|
+
*/
|
|
84
|
+
sessionManager?: SessionManager;
|
|
85
|
+
/**
|
|
86
|
+
* Custom trace attributes to include in all spans.
|
|
87
|
+
* These attributes are merged with standard attributes in telemetry spans.
|
|
88
|
+
* Telemetry must be enabled globally via telemetry.setupTracer() for these to take effect.
|
|
89
|
+
*/
|
|
90
|
+
traceAttributes?: Record<string, AttributeValue>;
|
|
91
|
+
/**
|
|
92
|
+
* Optional name for the agent. Defaults to "Strands Agent".
|
|
93
|
+
*/
|
|
94
|
+
name?: string;
|
|
95
|
+
/**
|
|
96
|
+
* Optional description of what the agent does.
|
|
97
|
+
*/
|
|
98
|
+
description?: string;
|
|
99
|
+
/**
|
|
100
|
+
* Optional unique identifier for the agent. Defaults to "default".
|
|
101
|
+
*/
|
|
102
|
+
agentId?: string;
|
|
74
103
|
};
|
|
75
104
|
/**
|
|
76
105
|
* Arguments for invoking an agent.
|
|
@@ -81,6 +110,15 @@ export type AgentConfig = {
|
|
|
81
110
|
* - `Message[]` | `MessageData[]` - Array of messages (appends all to conversation)
|
|
82
111
|
*/
|
|
83
112
|
export type InvokeArgs = string | ContentBlock[] | ContentBlockData[] | Message[] | MessageData[];
|
|
113
|
+
/**
|
|
114
|
+
* Options for a single agent invocation.
|
|
115
|
+
*/
|
|
116
|
+
export interface InvokeOptions {
|
|
117
|
+
/**
|
|
118
|
+
* Zod schema for structured output validation, overriding the constructor-provided schema for this invocation only.
|
|
119
|
+
*/
|
|
120
|
+
structuredOutputSchema?: z.ZodSchema;
|
|
121
|
+
}
|
|
84
122
|
/**
|
|
85
123
|
* Orchestrates the interaction between a model, a set of tools, and MCP clients.
|
|
86
124
|
* The Agent is responsible for managing the lifecycle of tools and clients
|
|
@@ -92,10 +130,10 @@ export declare class Agent implements AgentData {
|
|
|
92
130
|
*/
|
|
93
131
|
readonly messages: Message[];
|
|
94
132
|
/**
|
|
95
|
-
*
|
|
133
|
+
* App state storage accessible to tools and application logic.
|
|
96
134
|
* State is not passed to the model during inference.
|
|
97
135
|
*/
|
|
98
|
-
readonly state:
|
|
136
|
+
readonly state: AppState;
|
|
99
137
|
/**
|
|
100
138
|
* Conversation manager for handling message history and context overflow.
|
|
101
139
|
*/
|
|
@@ -113,12 +151,28 @@ export declare class Agent implements AgentData {
|
|
|
113
151
|
* The system prompt to pass to the model provider.
|
|
114
152
|
*/
|
|
115
153
|
systemPrompt?: SystemPrompt;
|
|
154
|
+
/**
|
|
155
|
+
* The name of the agent.
|
|
156
|
+
*/
|
|
157
|
+
readonly name: string;
|
|
158
|
+
/**
|
|
159
|
+
* The unique identifier of the agent instance.
|
|
160
|
+
*/
|
|
161
|
+
readonly agentId: string;
|
|
162
|
+
/**
|
|
163
|
+
* Optional description of what the agent does.
|
|
164
|
+
*/
|
|
165
|
+
readonly description?: string;
|
|
116
166
|
private _toolRegistry;
|
|
117
167
|
private _mcpClients;
|
|
118
168
|
private _initialized;
|
|
119
169
|
private _isInvoking;
|
|
120
170
|
private _printer?;
|
|
121
171
|
private _structuredOutputSchema?;
|
|
172
|
+
/** Tracer instance for creating and managing OpenTelemetry spans. */
|
|
173
|
+
private _tracer;
|
|
174
|
+
/** Meter instance for accumulating loop metrics during invocation. */
|
|
175
|
+
private _meter;
|
|
122
176
|
/**
|
|
123
177
|
* Creates an instance of the Agent.
|
|
124
178
|
* @param config - The configuration for the agent.
|
|
@@ -146,6 +200,7 @@ export declare class Agent implements AgentData {
|
|
|
146
200
|
* streaming events.
|
|
147
201
|
*
|
|
148
202
|
* @param args - Arguments for invoking the agent
|
|
203
|
+
* @param options - Optional per-invocation options
|
|
149
204
|
* @returns Promise that resolves to the final AgentResult
|
|
150
205
|
*
|
|
151
206
|
* @example
|
|
@@ -155,7 +210,7 @@ export declare class Agent implements AgentData {
|
|
|
155
210
|
* console.log(result.lastMessage) // Agent's response
|
|
156
211
|
* ```
|
|
157
212
|
*/
|
|
158
|
-
invoke(args: InvokeArgs): Promise<AgentResult>;
|
|
213
|
+
invoke(args: InvokeArgs, options?: InvokeOptions): Promise<AgentResult>;
|
|
159
214
|
/**
|
|
160
215
|
* Streams the agent execution, yielding events and returning the final result.
|
|
161
216
|
*
|
|
@@ -173,6 +228,7 @@ export declare class Agent implements AgentData {
|
|
|
173
228
|
* with valid toolResponses
|
|
174
229
|
*
|
|
175
230
|
* @param args - Arguments for invoking the agent
|
|
231
|
+
* @param options - Optional per-invocation options
|
|
176
232
|
* @returns Async generator that yields AgentStreamEvent objects and returns AgentResult
|
|
177
233
|
*
|
|
178
234
|
* @example
|
|
@@ -185,12 +241,13 @@ export declare class Agent implements AgentData {
|
|
|
185
241
|
* // Messages array is mutated in place and contains the full conversation
|
|
186
242
|
* ```
|
|
187
243
|
*/
|
|
188
|
-
stream(args: InvokeArgs): AsyncGenerator<AgentStreamEvent, AgentResult, undefined>;
|
|
244
|
+
stream(args: InvokeArgs, options?: InvokeOptions): AsyncGenerator<AgentStreamEvent, AgentResult, undefined>;
|
|
189
245
|
/**
|
|
190
246
|
* Internal implementation of the agent streaming logic.
|
|
191
247
|
* Separated to centralize printer event processing in the public stream method.
|
|
192
248
|
*
|
|
193
249
|
* @param args - Arguments for invoking the agent
|
|
250
|
+
* @param options - Optional per-invocation options
|
|
194
251
|
* @returns Async generator that yields AgentStreamEvent objects and returns AgentResult
|
|
195
252
|
*/
|
|
196
253
|
private _stream;
|
|
@@ -206,7 +263,7 @@ export declare class Agent implements AgentData {
|
|
|
206
263
|
*
|
|
207
264
|
* @param args - Optional arguments for invoking the model
|
|
208
265
|
* @param toolChoice - Optional tool choice to force specific tool usage
|
|
209
|
-
* @returns Object containing the assistant message and
|
|
266
|
+
* @returns Object containing the assistant message, stop reason, and optional redaction message
|
|
210
267
|
*/
|
|
211
268
|
private invokeModel;
|
|
212
269
|
/**
|
|
@@ -223,7 +280,7 @@ export declare class Agent implements AgentData {
|
|
|
223
280
|
*
|
|
224
281
|
* @param messages - Messages to send to the model
|
|
225
282
|
* @param streamOptions - Options for streaming
|
|
226
|
-
* @returns
|
|
283
|
+
* @returns StreamAggregatedResult containing message, stop reason, and optional redaction message
|
|
227
284
|
*/
|
|
228
285
|
private _streamFromModel;
|
|
229
286
|
/**
|
|
@@ -245,6 +302,19 @@ export declare class Agent implements AgentData {
|
|
|
245
302
|
* @returns Tool result block
|
|
246
303
|
*/
|
|
247
304
|
private executeTool;
|
|
305
|
+
/**
|
|
306
|
+
* Redacts the last message in the conversation history.
|
|
307
|
+
* Called when guardrails block user input and redaction is enabled.
|
|
308
|
+
*
|
|
309
|
+
* Follows the redaction strategy:
|
|
310
|
+
* - If the message contains at least one toolResult block, all toolResult blocks
|
|
311
|
+
* are kept with redacted content, and all other blocks are discarded.
|
|
312
|
+
* - Otherwise, the entire content is replaced with a single text block containing
|
|
313
|
+
* the redaction message.
|
|
314
|
+
*
|
|
315
|
+
* @param redactMessage - The redaction message to replace the content with
|
|
316
|
+
*/
|
|
317
|
+
private _redactLastMessage;
|
|
248
318
|
/**
|
|
249
319
|
* Appends a message to the conversation history and returns the event for yielding.
|
|
250
320
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/agent/agent.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/agent/agent.ts"],"names":[],"mappings":"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"}
|