@contractspec/lib.ai-agent 1.57.0 → 1.59.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/agent/agent-factory.d.ts +67 -71
- package/dist/agent/agent-factory.d.ts.map +1 -1
- package/dist/agent/agent-factory.js +658 -100
- package/dist/agent/agent.test.d.ts +2 -0
- package/dist/agent/agent.test.d.ts.map +1 -0
- package/dist/agent/contract-spec-agent.d.ts +48 -52
- package/dist/agent/contract-spec-agent.d.ts.map +1 -1
- package/dist/agent/contract-spec-agent.js +605 -146
- package/dist/agent/index.d.ts +4 -4
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +2102 -4
- package/dist/agent/json-runner.d.ts +15 -19
- package/dist/agent/json-runner.d.ts.map +1 -1
- package/dist/agent/json-runner.js +672 -57
- package/dist/agent/json-runner.test.d.ts +2 -0
- package/dist/agent/json-runner.test.d.ts.map +1 -0
- package/dist/agent/unified-agent.d.ts +132 -109
- package/dist/agent/unified-agent.d.ts.map +1 -1
- package/dist/agent/unified-agent.js +2011 -293
- package/dist/approval/index.d.ts +3 -2
- package/dist/approval/index.d.ts.map +1 -0
- package/dist/approval/index.js +128 -2
- package/dist/approval/workflow.d.ts +106 -110
- package/dist/approval/workflow.d.ts.map +1 -1
- package/dist/approval/workflow.js +126 -157
- package/dist/exporters/claude-agent-exporter.d.ts +50 -48
- package/dist/exporters/claude-agent-exporter.d.ts.map +1 -1
- package/dist/exporters/claude-agent-exporter.js +258 -203
- package/dist/exporters/index.d.ts +28 -4
- package/dist/exporters/index.d.ts.map +1 -0
- package/dist/exporters/index.js +737 -3
- package/dist/exporters/opencode-exporter.d.ts +47 -45
- package/dist/exporters/opencode-exporter.d.ts.map +1 -1
- package/dist/exporters/opencode-exporter.js +507 -191
- package/dist/exporters/types.d.ts +171 -169
- package/dist/exporters/types.d.ts.map +1 -1
- package/dist/exporters/types.js +1 -0
- package/dist/index.d.ts +15 -39
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3337 -32
- package/dist/interop/index.d.ts +48 -4
- package/dist/interop/index.d.ts.map +1 -0
- package/dist/interop/index.js +709 -3
- package/dist/interop/spec-consumer.d.ts +57 -53
- package/dist/interop/spec-consumer.d.ts.map +1 -1
- package/dist/interop/spec-consumer.js +302 -282
- package/dist/interop/tool-consumer.d.ts +57 -53
- package/dist/interop/tool-consumer.d.ts.map +1 -1
- package/dist/interop/tool-consumer.js +412 -213
- package/dist/interop/types.d.ts +173 -171
- package/dist/interop/types.d.ts.map +1 -1
- package/dist/interop/types.js +1 -0
- package/dist/knowledge/index.d.ts +2 -2
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +66 -2
- package/dist/knowledge/injector.d.ts +16 -20
- package/dist/knowledge/injector.d.ts.map +1 -1
- package/dist/knowledge/injector.js +56 -47
- package/dist/memory/in-memory.d.ts +15 -19
- package/dist/memory/in-memory.d.ts.map +1 -1
- package/dist/memory/in-memory.js +152 -46
- package/dist/memory/index.d.ts +3 -3
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +155 -3
- package/dist/memory/manager.d.ts +32 -36
- package/dist/memory/manager.d.ts.map +1 -1
- package/dist/memory/manager.js +96 -70
- package/dist/memory/memory.test.d.ts +2 -0
- package/dist/memory/memory.test.d.ts.map +1 -0
- package/dist/node/agent/agent-factory.js +661 -0
- package/dist/node/agent/contract-spec-agent.js +607 -0
- package/dist/node/agent/index.js +2103 -0
- package/dist/node/agent/json-runner.js +684 -0
- package/dist/node/agent/unified-agent.js +2019 -0
- package/dist/node/approval/index.js +129 -0
- package/dist/node/approval/workflow.js +129 -0
- package/dist/node/exporters/claude-agent-exporter.js +265 -0
- package/dist/node/exporters/index.js +738 -0
- package/dist/node/exporters/opencode-exporter.js +516 -0
- package/dist/node/exporters/types.js +0 -0
- package/dist/node/index.js +3337 -0
- package/dist/node/interop/index.js +710 -0
- package/dist/node/interop/spec-consumer.js +307 -0
- package/dist/node/interop/tool-consumer.js +419 -0
- package/dist/node/interop/types.js +0 -0
- package/dist/node/knowledge/index.js +67 -0
- package/dist/node/knowledge/injector.js +67 -0
- package/dist/node/memory/in-memory.js +154 -0
- package/dist/node/memory/index.js +156 -0
- package/dist/node/memory/manager.js +105 -0
- package/dist/node/providers/claude-agent-sdk/adapter.js +624 -0
- package/dist/node/providers/claude-agent-sdk/index.js +673 -0
- package/dist/node/providers/claude-agent-sdk/session-bridge.js +149 -0
- package/dist/node/providers/claude-agent-sdk/tool-bridge.js +118 -0
- package/dist/node/providers/index.js +1261 -0
- package/dist/node/providers/opencode-sdk/adapter.js +669 -0
- package/dist/node/providers/opencode-sdk/agent-bridge.js +299 -0
- package/dist/node/providers/opencode-sdk/index.js +703 -0
- package/dist/node/providers/opencode-sdk/tool-bridge.js +141 -0
- package/dist/node/providers/registry.js +89 -0
- package/dist/node/providers/types.js +56 -0
- package/dist/node/schema/index.js +195 -0
- package/dist/node/schema/json-schema-to-zod.js +152 -0
- package/dist/node/schema/schema-output.js +190 -0
- package/dist/node/session/index.js +90 -0
- package/dist/node/session/store.js +90 -0
- package/dist/node/spec/index.js +85 -0
- package/dist/node/spec/registry.js +56 -0
- package/dist/node/spec/spec.js +44 -0
- package/dist/node/telemetry/adapter.js +85 -0
- package/dist/node/telemetry/index.js +86 -0
- package/dist/node/tools/index.js +345 -0
- package/dist/node/tools/knowledge-tool.js +74 -0
- package/dist/node/tools/mcp-client.js +47 -0
- package/dist/node/tools/mcp-server.js +205 -0
- package/dist/node/tools/tool-adapter.js +197 -0
- package/dist/node/types.js +0 -0
- package/dist/providers/claude-agent-sdk/adapter.d.ts +60 -52
- package/dist/providers/claude-agent-sdk/adapter.d.ts.map +1 -1
- package/dist/providers/claude-agent-sdk/adapter.js +622 -304
- package/dist/providers/claude-agent-sdk/index.d.ts +22 -4
- package/dist/providers/claude-agent-sdk/index.d.ts.map +1 -0
- package/dist/providers/claude-agent-sdk/index.js +672 -4
- package/dist/providers/claude-agent-sdk/session-bridge.d.ts +43 -40
- package/dist/providers/claude-agent-sdk/session-bridge.d.ts.map +1 -1
- package/dist/providers/claude-agent-sdk/session-bridge.js +121 -130
- package/dist/providers/claude-agent-sdk/tool-bridge.d.ts +63 -60
- package/dist/providers/claude-agent-sdk/tool-bridge.d.ts.map +1 -1
- package/dist/providers/claude-agent-sdk/tool-bridge.js +104 -108
- package/dist/providers/index.d.ts +28 -7
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +1261 -8
- package/dist/providers/opencode-sdk/adapter.d.ts +56 -48
- package/dist/providers/opencode-sdk/adapter.d.ts.map +1 -1
- package/dist/providers/opencode-sdk/adapter.js +667 -274
- package/dist/providers/opencode-sdk/agent-bridge.d.ts +62 -57
- package/dist/providers/opencode-sdk/agent-bridge.d.ts.map +1 -1
- package/dist/providers/opencode-sdk/agent-bridge.js +289 -155
- package/dist/providers/opencode-sdk/index.d.ts +22 -4
- package/dist/providers/opencode-sdk/index.d.ts.map +1 -0
- package/dist/providers/opencode-sdk/index.js +702 -4
- package/dist/providers/opencode-sdk/tool-bridge.d.ts +41 -42
- package/dist/providers/opencode-sdk/tool-bridge.d.ts.map +1 -1
- package/dist/providers/opencode-sdk/tool-bridge.js +121 -107
- package/dist/providers/registry.d.ts +10 -11
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +86 -49
- package/dist/providers/types.d.ts +169 -166
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +54 -42
- package/dist/schema/index.d.ts +3 -3
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +194 -3
- package/dist/schema/json-schema-to-zod.d.ts +23 -26
- package/dist/schema/json-schema-to-zod.d.ts.map +1 -1
- package/dist/schema/json-schema-to-zod.js +138 -110
- package/dist/schema/schema-output.d.ts +29 -32
- package/dist/schema/schema-output.d.ts.map +1 -1
- package/dist/schema/schema-output.js +178 -53
- package/dist/session/index.d.ts +2 -2
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +89 -2
- package/dist/session/store.d.ts +51 -55
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +85 -74
- package/dist/spec/index.d.ts +3 -3
- package/dist/spec/index.d.ts.map +1 -0
- package/dist/spec/index.js +84 -3
- package/dist/spec/registry.d.ts +32 -36
- package/dist/spec/registry.d.ts.map +1 -1
- package/dist/spec/registry.js +51 -60
- package/dist/spec/spec.d.ts +80 -84
- package/dist/spec/spec.d.ts.map +1 -1
- package/dist/spec/spec.js +40 -26
- package/dist/telemetry/adapter.d.ts +33 -37
- package/dist/telemetry/adapter.d.ts.map +1 -1
- package/dist/telemetry/adapter.js +78 -96
- package/dist/telemetry/index.d.ts +2 -2
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +85 -2
- package/dist/tools/index.d.ts +5 -5
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +344 -5
- package/dist/tools/knowledge-tool.d.ts +4 -8
- package/dist/tools/knowledge-tool.d.ts.map +1 -1
- package/dist/tools/knowledge-tool.js +68 -48
- package/dist/tools/mcp-client.d.ts +17 -21
- package/dist/tools/mcp-client.d.ts.map +1 -1
- package/dist/tools/mcp-client.js +42 -53
- package/dist/tools/mcp-server.d.ts +14 -18
- package/dist/tools/mcp-server.d.ts.map +1 -1
- package/dist/tools/mcp-server.js +200 -64
- package/dist/tools/tool-adapter.d.ts +7 -11
- package/dist/tools/tool-adapter.d.ts.map +1 -1
- package/dist/tools/tool-adapter.js +187 -70
- package/dist/tools/tools.test.d.ts +2 -0
- package/dist/tools/tools.test.d.ts.map +1 -0
- package/dist/types.d.ts +108 -111
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -0
- package/package.json +448 -90
- package/dist/_virtual/_rolldown/runtime.js +0 -8
- package/dist/agent/agent-factory.js.map +0 -1
- package/dist/agent/contract-spec-agent.js.map +0 -1
- package/dist/agent/json-runner.js.map +0 -1
- package/dist/agent/unified-agent.js.map +0 -1
- package/dist/approval/workflow.js.map +0 -1
- package/dist/exporters/claude-agent-exporter.js.map +0 -1
- package/dist/exporters/opencode-exporter.js.map +0 -1
- package/dist/interop/spec-consumer.js.map +0 -1
- package/dist/interop/tool-consumer.js.map +0 -1
- package/dist/knowledge/injector.js.map +0 -1
- package/dist/memory/in-memory.js.map +0 -1
- package/dist/memory/manager.js.map +0 -1
- package/dist/providers/claude-agent-sdk/adapter.js.map +0 -1
- package/dist/providers/claude-agent-sdk/session-bridge.js.map +0 -1
- package/dist/providers/claude-agent-sdk/tool-bridge.js.map +0 -1
- package/dist/providers/opencode-sdk/adapter.js.map +0 -1
- package/dist/providers/opencode-sdk/agent-bridge.js.map +0 -1
- package/dist/providers/opencode-sdk/tool-bridge.js.map +0 -1
- package/dist/providers/registry.js.map +0 -1
- package/dist/providers/types.js.map +0 -1
- package/dist/schema/json-schema-to-zod.js.map +0 -1
- package/dist/schema/schema-output.js.map +0 -1
- package/dist/session/store.js.map +0 -1
- package/dist/spec/registry.js.map +0 -1
- package/dist/spec/spec.js.map +0 -1
- package/dist/telemetry/adapter.js.map +0 -1
- package/dist/tools/knowledge-tool.js.map +0 -1
- package/dist/tools/mcp-client.js.map +0 -1
- package/dist/tools/mcp-server.js.map +0 -1
- package/dist/tools/tool-adapter.js.map +0 -1
|
@@ -1,242 +1,245 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
/**
|
|
2
|
+
* External SDK provider types for ContractSpec agents.
|
|
3
|
+
*
|
|
4
|
+
* These interfaces define the contract for integrating external agent SDKs
|
|
5
|
+
* (like @anthropic-ai/claude-agent-sdk and @opencode-ai/sdk) with ContractSpec's
|
|
6
|
+
* agent system.
|
|
7
|
+
*/
|
|
8
|
+
import type { AgentSpec } from '../spec/spec';
|
|
9
|
+
import type { AgentCallOptions, AgentFinishReason, ToolCallInfo, ToolResultInfo } from '../types';
|
|
10
|
+
import type { McpClientConfig } from '../tools/mcp-client';
|
|
6
11
|
/**
|
|
7
12
|
* External SDK provider interface for ContractSpec agents.
|
|
8
13
|
* Allows external SDKs to be used as execution backends.
|
|
9
14
|
*/
|
|
10
|
-
interface ExternalAgentProvider {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
15
|
+
export interface ExternalAgentProvider {
|
|
16
|
+
/** Provider name identifier */
|
|
17
|
+
readonly name: string;
|
|
18
|
+
/** Provider version */
|
|
19
|
+
readonly version: string;
|
|
20
|
+
/**
|
|
21
|
+
* Check if this provider is available (dependencies installed, configured).
|
|
22
|
+
* Should be a quick synchronous check.
|
|
23
|
+
*/
|
|
24
|
+
isAvailable(): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Create an execution context from an AgentSpec.
|
|
27
|
+
* This prepares the provider for execution with the given spec.
|
|
28
|
+
*/
|
|
29
|
+
createContext(spec: AgentSpec): Promise<ExternalAgentContext>;
|
|
30
|
+
/**
|
|
31
|
+
* Execute a prompt using this provider.
|
|
32
|
+
* Non-streaming execution that returns the complete result.
|
|
33
|
+
*/
|
|
34
|
+
execute(context: ExternalAgentContext, params: ExternalExecuteParams): Promise<ExternalExecuteResult>;
|
|
35
|
+
/**
|
|
36
|
+
* Stream execution with real-time updates.
|
|
37
|
+
* Returns an async iterable of stream chunks.
|
|
38
|
+
*/
|
|
39
|
+
stream(context: ExternalAgentContext, params: ExternalExecuteParams): AsyncIterable<ExternalStreamChunk>;
|
|
35
40
|
}
|
|
36
41
|
/**
|
|
37
42
|
* Execution context created by a provider.
|
|
38
43
|
* Holds the prepared state for executing prompts.
|
|
39
44
|
*/
|
|
40
|
-
interface ExternalAgentContext {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
export interface ExternalAgentContext {
|
|
46
|
+
/** Unique context ID */
|
|
47
|
+
id: string;
|
|
48
|
+
/** The spec this context was created from */
|
|
49
|
+
spec: AgentSpec;
|
|
50
|
+
/** Tools available in this context */
|
|
51
|
+
tools: ExternalToolSet;
|
|
52
|
+
/** Cleanup function to release resources */
|
|
53
|
+
cleanup: () => Promise<void>;
|
|
54
|
+
/** Provider-specific metadata */
|
|
55
|
+
metadata?: Record<string, unknown>;
|
|
51
56
|
}
|
|
52
57
|
/**
|
|
53
58
|
* Parameters for executing a prompt.
|
|
54
59
|
*/
|
|
55
|
-
interface ExternalExecuteParams {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
export interface ExternalExecuteParams {
|
|
61
|
+
/** The prompt to execute */
|
|
62
|
+
prompt: string;
|
|
63
|
+
/** Optional system prompt override/addition */
|
|
64
|
+
systemOverride?: string;
|
|
65
|
+
/** Call options (tenant, actor, session, metadata) */
|
|
66
|
+
options?: AgentCallOptions;
|
|
67
|
+
/** Abort signal for cancellation */
|
|
68
|
+
signal?: AbortSignal;
|
|
69
|
+
/** Maximum steps/iterations (provider may interpret differently) */
|
|
70
|
+
maxSteps?: number;
|
|
66
71
|
}
|
|
67
72
|
/**
|
|
68
73
|
* Result from a non-streaming execution.
|
|
69
74
|
*/
|
|
70
|
-
interface ExternalExecuteResult {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
75
|
+
export interface ExternalExecuteResult {
|
|
76
|
+
/** Final text response */
|
|
77
|
+
text: string;
|
|
78
|
+
/** Tool calls made during execution */
|
|
79
|
+
toolCalls: ToolCallInfo[];
|
|
80
|
+
/** Results from tool executions */
|
|
81
|
+
toolResults: ToolResultInfo[];
|
|
82
|
+
/** Token usage statistics */
|
|
83
|
+
usage?: ExternalUsage;
|
|
84
|
+
/** Reason the execution finished */
|
|
85
|
+
finishReason: AgentFinishReason;
|
|
86
|
+
/** Provider-specific result metadata */
|
|
87
|
+
metadata?: Record<string, unknown>;
|
|
83
88
|
}
|
|
84
89
|
/**
|
|
85
90
|
* Token usage statistics.
|
|
86
91
|
*/
|
|
87
|
-
interface ExternalUsage {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
92
|
+
export interface ExternalUsage {
|
|
93
|
+
inputTokens: number;
|
|
94
|
+
outputTokens: number;
|
|
95
|
+
totalTokens?: number;
|
|
91
96
|
}
|
|
92
97
|
/**
|
|
93
98
|
* Stream chunk from streaming execution.
|
|
94
99
|
*/
|
|
95
|
-
interface ExternalStreamChunk {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
100
|
+
export interface ExternalStreamChunk {
|
|
101
|
+
/** Chunk type */
|
|
102
|
+
type: 'text' | 'tool-call' | 'tool-result' | 'step-complete' | 'done';
|
|
103
|
+
/** Text content (for text chunks) */
|
|
104
|
+
text?: string;
|
|
105
|
+
/** Tool call info (for tool-call chunks) */
|
|
106
|
+
toolCall?: ToolCallInfo;
|
|
107
|
+
/** Tool result info (for tool-result chunks) */
|
|
108
|
+
toolResult?: ToolResultInfo;
|
|
109
|
+
/** Step index (for step-complete chunks) */
|
|
110
|
+
stepIndex?: number;
|
|
111
|
+
/** Final result (for done chunks) */
|
|
112
|
+
result?: ExternalExecuteResult;
|
|
108
113
|
}
|
|
109
114
|
/**
|
|
110
115
|
* Set of tools available to an external provider.
|
|
111
116
|
*/
|
|
112
|
-
type ExternalToolSet = Record<string, ExternalToolDefinition>;
|
|
117
|
+
export type ExternalToolSet = Record<string, ExternalToolDefinition>;
|
|
113
118
|
/**
|
|
114
119
|
* External tool definition in a provider-agnostic format.
|
|
115
120
|
*/
|
|
116
|
-
interface ExternalToolDefinition {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
121
|
+
export interface ExternalToolDefinition {
|
|
122
|
+
/** Tool name */
|
|
123
|
+
name: string;
|
|
124
|
+
/** Tool description */
|
|
125
|
+
description: string;
|
|
126
|
+
/** Input schema (JSON Schema format) */
|
|
127
|
+
inputSchema: Record<string, unknown>;
|
|
128
|
+
/** Whether tool requires user approval */
|
|
129
|
+
requiresApproval?: boolean;
|
|
130
|
+
/** Tool handler function */
|
|
131
|
+
execute?: (input: unknown) => Promise<unknown>;
|
|
127
132
|
}
|
|
128
133
|
/**
|
|
129
134
|
* Configuration for Claude Agent SDK provider.
|
|
130
135
|
*/
|
|
131
|
-
interface ClaudeAgentSDKConfig {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
136
|
+
export interface ClaudeAgentSDKConfig {
|
|
137
|
+
/** API key (defaults to ANTHROPIC_API_KEY env var) */
|
|
138
|
+
apiKey?: string;
|
|
139
|
+
/** Model to use (defaults to claude-sonnet-4-20250514) */
|
|
140
|
+
model?: string;
|
|
141
|
+
/** Enable extended thinking mode */
|
|
142
|
+
extendedThinking?: boolean;
|
|
143
|
+
/** Enable computer use capabilities (file editing, bash) */
|
|
144
|
+
computerUse?: boolean;
|
|
145
|
+
/** MCP servers to connect */
|
|
146
|
+
mcpServers?: McpClientConfig[];
|
|
147
|
+
/** Maximum tokens for response */
|
|
148
|
+
maxTokens?: number;
|
|
149
|
+
/** Temperature for generation */
|
|
150
|
+
temperature?: number;
|
|
146
151
|
}
|
|
147
152
|
/**
|
|
148
153
|
* Claude Agent SDK specific context metadata.
|
|
149
154
|
*/
|
|
150
|
-
interface ClaudeAgentContextMetadata {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
155
|
+
export interface ClaudeAgentContextMetadata {
|
|
156
|
+
/** Session ID for Claude Agent SDK */
|
|
157
|
+
sessionId?: string;
|
|
158
|
+
/** Whether computer use is enabled */
|
|
159
|
+
computerUseEnabled: boolean;
|
|
160
|
+
/** Whether extended thinking is enabled */
|
|
161
|
+
extendedThinkingEnabled: boolean;
|
|
162
|
+
/** Connected MCP servers */
|
|
163
|
+
mcpServerIds?: string[];
|
|
164
|
+
/** Allow additional metadata properties */
|
|
165
|
+
[key: string]: unknown;
|
|
161
166
|
}
|
|
162
167
|
/**
|
|
163
168
|
* Configuration for OpenCode SDK provider.
|
|
164
169
|
*/
|
|
165
|
-
interface OpenCodeSDKConfig {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
170
|
+
export interface OpenCodeSDKConfig {
|
|
171
|
+
/** Server URL (defaults to http://127.0.0.1:4096) */
|
|
172
|
+
serverUrl?: string;
|
|
173
|
+
/** Server port (alternative to full URL) */
|
|
174
|
+
port?: number;
|
|
175
|
+
/** Agent type to use */
|
|
176
|
+
agentType?: OpenCodeAgentType;
|
|
177
|
+
/** Session ID for resuming sessions */
|
|
178
|
+
sessionId?: string;
|
|
179
|
+
/** Model to use */
|
|
180
|
+
model?: string;
|
|
181
|
+
/** Temperature for generation */
|
|
182
|
+
temperature?: number;
|
|
183
|
+
/** Connection timeout in milliseconds */
|
|
184
|
+
timeout?: number;
|
|
180
185
|
}
|
|
181
186
|
/**
|
|
182
187
|
* OpenCode agent types.
|
|
183
188
|
*/
|
|
184
|
-
type OpenCodeAgentType = 'build' | 'plan' | 'general' | 'explore';
|
|
189
|
+
export type OpenCodeAgentType = 'build' | 'plan' | 'general' | 'explore';
|
|
185
190
|
/**
|
|
186
191
|
* OpenCode SDK specific context metadata.
|
|
187
192
|
*/
|
|
188
|
-
interface OpenCodeContextMetadata {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
193
|
+
export interface OpenCodeContextMetadata {
|
|
194
|
+
/** Session ID from OpenCode */
|
|
195
|
+
sessionId: string;
|
|
196
|
+
/** Agent type being used */
|
|
197
|
+
agentType: OpenCodeAgentType;
|
|
198
|
+
/** Server URL */
|
|
199
|
+
serverUrl: string;
|
|
195
200
|
}
|
|
196
201
|
/**
|
|
197
202
|
* Factory function type for creating providers.
|
|
198
203
|
*/
|
|
199
|
-
type ExternalProviderFactory<TConfig> = (config: TConfig) => ExternalAgentProvider;
|
|
204
|
+
export type ExternalProviderFactory<TConfig> = (config: TConfig) => ExternalAgentProvider;
|
|
200
205
|
/**
|
|
201
206
|
* Registry of available providers.
|
|
202
207
|
*/
|
|
203
|
-
interface ProviderRegistry {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
208
|
+
export interface ProviderRegistry {
|
|
209
|
+
/** Get a provider by name */
|
|
210
|
+
get(name: string): ExternalAgentProvider | undefined;
|
|
211
|
+
/** Register a provider */
|
|
212
|
+
register(name: string, provider: ExternalAgentProvider): void;
|
|
213
|
+
/** List available provider names */
|
|
214
|
+
list(): string[];
|
|
215
|
+
/** Check if a provider is registered and available */
|
|
216
|
+
isAvailable(name: string): boolean;
|
|
212
217
|
}
|
|
213
218
|
/**
|
|
214
219
|
* Base error for external provider operations.
|
|
215
220
|
*/
|
|
216
|
-
declare class ExternalProviderError extends Error {
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
+
export declare class ExternalProviderError extends Error {
|
|
222
|
+
readonly provider: string;
|
|
223
|
+
readonly code: string;
|
|
224
|
+
readonly cause?: Error | undefined;
|
|
225
|
+
constructor(message: string, provider: string, code: string, cause?: Error | undefined);
|
|
221
226
|
}
|
|
222
227
|
/**
|
|
223
228
|
* Error when provider is not available.
|
|
224
229
|
*/
|
|
225
|
-
declare class ProviderNotAvailableError extends ExternalProviderError {
|
|
226
|
-
|
|
230
|
+
export declare class ProviderNotAvailableError extends ExternalProviderError {
|
|
231
|
+
constructor(provider: string, reason?: string);
|
|
227
232
|
}
|
|
228
233
|
/**
|
|
229
234
|
* Error when provider execution fails.
|
|
230
235
|
*/
|
|
231
|
-
declare class ProviderExecutionError extends ExternalProviderError {
|
|
232
|
-
|
|
236
|
+
export declare class ProviderExecutionError extends ExternalProviderError {
|
|
237
|
+
constructor(provider: string, message: string, cause?: Error);
|
|
233
238
|
}
|
|
234
239
|
/**
|
|
235
240
|
* Error when context creation fails.
|
|
236
241
|
*/
|
|
237
|
-
declare class ContextCreationError extends ExternalProviderError {
|
|
238
|
-
|
|
242
|
+
export declare class ContextCreationError extends ExternalProviderError {
|
|
243
|
+
constructor(provider: string, message: string, cause?: Error);
|
|
239
244
|
}
|
|
240
|
-
//#endregion
|
|
241
|
-
export { ClaudeAgentContextMetadata, ClaudeAgentSDKConfig, ContextCreationError, ExternalAgentContext, ExternalAgentProvider, ExternalExecuteParams, ExternalExecuteResult, ExternalProviderError, ExternalProviderFactory, ExternalStreamChunk, ExternalToolDefinition, ExternalToolSet, ExternalUsage, OpenCodeAgentType, OpenCodeContextMetadata, OpenCodeSDKConfig, ProviderExecutionError, ProviderNotAvailableError, ProviderRegistry };
|
|
242
245
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
|
package/dist/providers/types.js
CHANGED
|
@@ -1,44 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.name = "ExternalProviderError";
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Error when provider is not available.
|
|
16
|
-
*/
|
|
17
|
-
var ProviderNotAvailableError = class extends ExternalProviderError {
|
|
18
|
-
constructor(provider, reason) {
|
|
19
|
-
super(`Provider '${provider}' is not available${reason ? `: ${reason}` : ""}`, provider, "PROVIDER_NOT_AVAILABLE");
|
|
20
|
-
this.name = "ProviderNotAvailableError";
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* Error when provider execution fails.
|
|
25
|
-
*/
|
|
26
|
-
var ProviderExecutionError = class extends ExternalProviderError {
|
|
27
|
-
constructor(provider, message, cause) {
|
|
28
|
-
super(message, provider, "EXECUTION_FAILED", cause);
|
|
29
|
-
this.name = "ProviderExecutionError";
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
/**
|
|
33
|
-
* Error when context creation fails.
|
|
34
|
-
*/
|
|
35
|
-
var ContextCreationError = class extends ExternalProviderError {
|
|
36
|
-
constructor(provider, message, cause) {
|
|
37
|
-
super(message, provider, "CONTEXT_CREATION_FAILED", cause);
|
|
38
|
-
this.name = "ContextCreationError";
|
|
39
|
-
}
|
|
1
|
+
// @bun
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __export = (target, all) => {
|
|
4
|
+
for (var name in all)
|
|
5
|
+
__defProp(target, name, {
|
|
6
|
+
get: all[name],
|
|
7
|
+
enumerable: true,
|
|
8
|
+
configurable: true,
|
|
9
|
+
set: (newValue) => all[name] = () => newValue
|
|
10
|
+
});
|
|
40
11
|
};
|
|
12
|
+
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
13
|
+
var __require = import.meta.require;
|
|
41
14
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
15
|
+
// src/providers/types.ts
|
|
16
|
+
var ExternalProviderError, ProviderNotAvailableError, ProviderExecutionError, ContextCreationError;
|
|
17
|
+
var init_types = __esm(() => {
|
|
18
|
+
ExternalProviderError = class ExternalProviderError extends Error {
|
|
19
|
+
provider;
|
|
20
|
+
code;
|
|
21
|
+
cause;
|
|
22
|
+
constructor(message, provider, code, cause) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.provider = provider;
|
|
25
|
+
this.code = code;
|
|
26
|
+
this.cause = cause;
|
|
27
|
+
this.name = "ExternalProviderError";
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
ProviderNotAvailableError = class ProviderNotAvailableError extends ExternalProviderError {
|
|
31
|
+
constructor(provider, reason) {
|
|
32
|
+
super(`Provider '${provider}' is not available${reason ? `: ${reason}` : ""}`, provider, "PROVIDER_NOT_AVAILABLE");
|
|
33
|
+
this.name = "ProviderNotAvailableError";
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
ProviderExecutionError = class ProviderExecutionError extends ExternalProviderError {
|
|
37
|
+
constructor(provider, message, cause) {
|
|
38
|
+
super(message, provider, "EXECUTION_FAILED", cause);
|
|
39
|
+
this.name = "ProviderExecutionError";
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
ContextCreationError = class ContextCreationError extends ExternalProviderError {
|
|
43
|
+
constructor(provider, message, cause) {
|
|
44
|
+
super(message, provider, "CONTEXT_CREATION_FAILED", cause);
|
|
45
|
+
this.name = "ContextCreationError";
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
init_types();
|
|
50
|
+
|
|
51
|
+
export {
|
|
52
|
+
ProviderNotAvailableError,
|
|
53
|
+
ProviderExecutionError,
|
|
54
|
+
ExternalProviderError,
|
|
55
|
+
ContextCreationError
|
|
56
|
+
};
|
package/dist/schema/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
export * from './json-schema-to-zod';
|
|
2
|
+
export * from './schema-output';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
|