@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.
Files changed (232) hide show
  1. package/dist/agent/agent-factory.d.ts +67 -71
  2. package/dist/agent/agent-factory.d.ts.map +1 -1
  3. package/dist/agent/agent-factory.js +658 -100
  4. package/dist/agent/agent.test.d.ts +2 -0
  5. package/dist/agent/agent.test.d.ts.map +1 -0
  6. package/dist/agent/contract-spec-agent.d.ts +48 -52
  7. package/dist/agent/contract-spec-agent.d.ts.map +1 -1
  8. package/dist/agent/contract-spec-agent.js +605 -146
  9. package/dist/agent/index.d.ts +4 -4
  10. package/dist/agent/index.d.ts.map +1 -0
  11. package/dist/agent/index.js +2102 -4
  12. package/dist/agent/json-runner.d.ts +15 -19
  13. package/dist/agent/json-runner.d.ts.map +1 -1
  14. package/dist/agent/json-runner.js +672 -57
  15. package/dist/agent/json-runner.test.d.ts +2 -0
  16. package/dist/agent/json-runner.test.d.ts.map +1 -0
  17. package/dist/agent/unified-agent.d.ts +132 -109
  18. package/dist/agent/unified-agent.d.ts.map +1 -1
  19. package/dist/agent/unified-agent.js +2011 -293
  20. package/dist/approval/index.d.ts +3 -2
  21. package/dist/approval/index.d.ts.map +1 -0
  22. package/dist/approval/index.js +128 -2
  23. package/dist/approval/workflow.d.ts +106 -110
  24. package/dist/approval/workflow.d.ts.map +1 -1
  25. package/dist/approval/workflow.js +126 -157
  26. package/dist/exporters/claude-agent-exporter.d.ts +50 -48
  27. package/dist/exporters/claude-agent-exporter.d.ts.map +1 -1
  28. package/dist/exporters/claude-agent-exporter.js +258 -203
  29. package/dist/exporters/index.d.ts +28 -4
  30. package/dist/exporters/index.d.ts.map +1 -0
  31. package/dist/exporters/index.js +737 -3
  32. package/dist/exporters/opencode-exporter.d.ts +47 -45
  33. package/dist/exporters/opencode-exporter.d.ts.map +1 -1
  34. package/dist/exporters/opencode-exporter.js +507 -191
  35. package/dist/exporters/types.d.ts +171 -169
  36. package/dist/exporters/types.d.ts.map +1 -1
  37. package/dist/exporters/types.js +1 -0
  38. package/dist/index.d.ts +15 -39
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +3337 -32
  41. package/dist/interop/index.d.ts +48 -4
  42. package/dist/interop/index.d.ts.map +1 -0
  43. package/dist/interop/index.js +709 -3
  44. package/dist/interop/spec-consumer.d.ts +57 -53
  45. package/dist/interop/spec-consumer.d.ts.map +1 -1
  46. package/dist/interop/spec-consumer.js +302 -282
  47. package/dist/interop/tool-consumer.d.ts +57 -53
  48. package/dist/interop/tool-consumer.d.ts.map +1 -1
  49. package/dist/interop/tool-consumer.js +412 -213
  50. package/dist/interop/types.d.ts +173 -171
  51. package/dist/interop/types.d.ts.map +1 -1
  52. package/dist/interop/types.js +1 -0
  53. package/dist/knowledge/index.d.ts +2 -2
  54. package/dist/knowledge/index.d.ts.map +1 -0
  55. package/dist/knowledge/index.js +66 -2
  56. package/dist/knowledge/injector.d.ts +16 -20
  57. package/dist/knowledge/injector.d.ts.map +1 -1
  58. package/dist/knowledge/injector.js +56 -47
  59. package/dist/memory/in-memory.d.ts +15 -19
  60. package/dist/memory/in-memory.d.ts.map +1 -1
  61. package/dist/memory/in-memory.js +152 -46
  62. package/dist/memory/index.d.ts +3 -3
  63. package/dist/memory/index.d.ts.map +1 -0
  64. package/dist/memory/index.js +155 -3
  65. package/dist/memory/manager.d.ts +32 -36
  66. package/dist/memory/manager.d.ts.map +1 -1
  67. package/dist/memory/manager.js +96 -70
  68. package/dist/memory/memory.test.d.ts +2 -0
  69. package/dist/memory/memory.test.d.ts.map +1 -0
  70. package/dist/node/agent/agent-factory.js +661 -0
  71. package/dist/node/agent/contract-spec-agent.js +607 -0
  72. package/dist/node/agent/index.js +2103 -0
  73. package/dist/node/agent/json-runner.js +684 -0
  74. package/dist/node/agent/unified-agent.js +2019 -0
  75. package/dist/node/approval/index.js +129 -0
  76. package/dist/node/approval/workflow.js +129 -0
  77. package/dist/node/exporters/claude-agent-exporter.js +265 -0
  78. package/dist/node/exporters/index.js +738 -0
  79. package/dist/node/exporters/opencode-exporter.js +516 -0
  80. package/dist/node/exporters/types.js +0 -0
  81. package/dist/node/index.js +3337 -0
  82. package/dist/node/interop/index.js +710 -0
  83. package/dist/node/interop/spec-consumer.js +307 -0
  84. package/dist/node/interop/tool-consumer.js +419 -0
  85. package/dist/node/interop/types.js +0 -0
  86. package/dist/node/knowledge/index.js +67 -0
  87. package/dist/node/knowledge/injector.js +67 -0
  88. package/dist/node/memory/in-memory.js +154 -0
  89. package/dist/node/memory/index.js +156 -0
  90. package/dist/node/memory/manager.js +105 -0
  91. package/dist/node/providers/claude-agent-sdk/adapter.js +624 -0
  92. package/dist/node/providers/claude-agent-sdk/index.js +673 -0
  93. package/dist/node/providers/claude-agent-sdk/session-bridge.js +149 -0
  94. package/dist/node/providers/claude-agent-sdk/tool-bridge.js +118 -0
  95. package/dist/node/providers/index.js +1261 -0
  96. package/dist/node/providers/opencode-sdk/adapter.js +669 -0
  97. package/dist/node/providers/opencode-sdk/agent-bridge.js +299 -0
  98. package/dist/node/providers/opencode-sdk/index.js +703 -0
  99. package/dist/node/providers/opencode-sdk/tool-bridge.js +141 -0
  100. package/dist/node/providers/registry.js +89 -0
  101. package/dist/node/providers/types.js +56 -0
  102. package/dist/node/schema/index.js +195 -0
  103. package/dist/node/schema/json-schema-to-zod.js +152 -0
  104. package/dist/node/schema/schema-output.js +190 -0
  105. package/dist/node/session/index.js +90 -0
  106. package/dist/node/session/store.js +90 -0
  107. package/dist/node/spec/index.js +85 -0
  108. package/dist/node/spec/registry.js +56 -0
  109. package/dist/node/spec/spec.js +44 -0
  110. package/dist/node/telemetry/adapter.js +85 -0
  111. package/dist/node/telemetry/index.js +86 -0
  112. package/dist/node/tools/index.js +345 -0
  113. package/dist/node/tools/knowledge-tool.js +74 -0
  114. package/dist/node/tools/mcp-client.js +47 -0
  115. package/dist/node/tools/mcp-server.js +205 -0
  116. package/dist/node/tools/tool-adapter.js +197 -0
  117. package/dist/node/types.js +0 -0
  118. package/dist/providers/claude-agent-sdk/adapter.d.ts +60 -52
  119. package/dist/providers/claude-agent-sdk/adapter.d.ts.map +1 -1
  120. package/dist/providers/claude-agent-sdk/adapter.js +622 -304
  121. package/dist/providers/claude-agent-sdk/index.d.ts +22 -4
  122. package/dist/providers/claude-agent-sdk/index.d.ts.map +1 -0
  123. package/dist/providers/claude-agent-sdk/index.js +672 -4
  124. package/dist/providers/claude-agent-sdk/session-bridge.d.ts +43 -40
  125. package/dist/providers/claude-agent-sdk/session-bridge.d.ts.map +1 -1
  126. package/dist/providers/claude-agent-sdk/session-bridge.js +121 -130
  127. package/dist/providers/claude-agent-sdk/tool-bridge.d.ts +63 -60
  128. package/dist/providers/claude-agent-sdk/tool-bridge.d.ts.map +1 -1
  129. package/dist/providers/claude-agent-sdk/tool-bridge.js +104 -108
  130. package/dist/providers/index.d.ts +28 -7
  131. package/dist/providers/index.d.ts.map +1 -0
  132. package/dist/providers/index.js +1261 -8
  133. package/dist/providers/opencode-sdk/adapter.d.ts +56 -48
  134. package/dist/providers/opencode-sdk/adapter.d.ts.map +1 -1
  135. package/dist/providers/opencode-sdk/adapter.js +667 -274
  136. package/dist/providers/opencode-sdk/agent-bridge.d.ts +62 -57
  137. package/dist/providers/opencode-sdk/agent-bridge.d.ts.map +1 -1
  138. package/dist/providers/opencode-sdk/agent-bridge.js +289 -155
  139. package/dist/providers/opencode-sdk/index.d.ts +22 -4
  140. package/dist/providers/opencode-sdk/index.d.ts.map +1 -0
  141. package/dist/providers/opencode-sdk/index.js +702 -4
  142. package/dist/providers/opencode-sdk/tool-bridge.d.ts +41 -42
  143. package/dist/providers/opencode-sdk/tool-bridge.d.ts.map +1 -1
  144. package/dist/providers/opencode-sdk/tool-bridge.js +121 -107
  145. package/dist/providers/registry.d.ts +10 -11
  146. package/dist/providers/registry.d.ts.map +1 -1
  147. package/dist/providers/registry.js +86 -49
  148. package/dist/providers/types.d.ts +169 -166
  149. package/dist/providers/types.d.ts.map +1 -1
  150. package/dist/providers/types.js +54 -42
  151. package/dist/schema/index.d.ts +3 -3
  152. package/dist/schema/index.d.ts.map +1 -0
  153. package/dist/schema/index.js +194 -3
  154. package/dist/schema/json-schema-to-zod.d.ts +23 -26
  155. package/dist/schema/json-schema-to-zod.d.ts.map +1 -1
  156. package/dist/schema/json-schema-to-zod.js +138 -110
  157. package/dist/schema/schema-output.d.ts +29 -32
  158. package/dist/schema/schema-output.d.ts.map +1 -1
  159. package/dist/schema/schema-output.js +178 -53
  160. package/dist/session/index.d.ts +2 -2
  161. package/dist/session/index.d.ts.map +1 -0
  162. package/dist/session/index.js +89 -2
  163. package/dist/session/store.d.ts +51 -55
  164. package/dist/session/store.d.ts.map +1 -1
  165. package/dist/session/store.js +85 -74
  166. package/dist/spec/index.d.ts +3 -3
  167. package/dist/spec/index.d.ts.map +1 -0
  168. package/dist/spec/index.js +84 -3
  169. package/dist/spec/registry.d.ts +32 -36
  170. package/dist/spec/registry.d.ts.map +1 -1
  171. package/dist/spec/registry.js +51 -60
  172. package/dist/spec/spec.d.ts +80 -84
  173. package/dist/spec/spec.d.ts.map +1 -1
  174. package/dist/spec/spec.js +40 -26
  175. package/dist/telemetry/adapter.d.ts +33 -37
  176. package/dist/telemetry/adapter.d.ts.map +1 -1
  177. package/dist/telemetry/adapter.js +78 -96
  178. package/dist/telemetry/index.d.ts +2 -2
  179. package/dist/telemetry/index.d.ts.map +1 -0
  180. package/dist/telemetry/index.js +85 -2
  181. package/dist/tools/index.d.ts +5 -5
  182. package/dist/tools/index.d.ts.map +1 -0
  183. package/dist/tools/index.js +344 -5
  184. package/dist/tools/knowledge-tool.d.ts +4 -8
  185. package/dist/tools/knowledge-tool.d.ts.map +1 -1
  186. package/dist/tools/knowledge-tool.js +68 -48
  187. package/dist/tools/mcp-client.d.ts +17 -21
  188. package/dist/tools/mcp-client.d.ts.map +1 -1
  189. package/dist/tools/mcp-client.js +42 -53
  190. package/dist/tools/mcp-server.d.ts +14 -18
  191. package/dist/tools/mcp-server.d.ts.map +1 -1
  192. package/dist/tools/mcp-server.js +200 -64
  193. package/dist/tools/tool-adapter.d.ts +7 -11
  194. package/dist/tools/tool-adapter.d.ts.map +1 -1
  195. package/dist/tools/tool-adapter.js +187 -70
  196. package/dist/tools/tools.test.d.ts +2 -0
  197. package/dist/tools/tools.test.d.ts.map +1 -0
  198. package/dist/types.d.ts +108 -111
  199. package/dist/types.d.ts.map +1 -1
  200. package/dist/types.js +1 -0
  201. package/package.json +448 -90
  202. package/dist/_virtual/_rolldown/runtime.js +0 -8
  203. package/dist/agent/agent-factory.js.map +0 -1
  204. package/dist/agent/contract-spec-agent.js.map +0 -1
  205. package/dist/agent/json-runner.js.map +0 -1
  206. package/dist/agent/unified-agent.js.map +0 -1
  207. package/dist/approval/workflow.js.map +0 -1
  208. package/dist/exporters/claude-agent-exporter.js.map +0 -1
  209. package/dist/exporters/opencode-exporter.js.map +0 -1
  210. package/dist/interop/spec-consumer.js.map +0 -1
  211. package/dist/interop/tool-consumer.js.map +0 -1
  212. package/dist/knowledge/injector.js.map +0 -1
  213. package/dist/memory/in-memory.js.map +0 -1
  214. package/dist/memory/manager.js.map +0 -1
  215. package/dist/providers/claude-agent-sdk/adapter.js.map +0 -1
  216. package/dist/providers/claude-agent-sdk/session-bridge.js.map +0 -1
  217. package/dist/providers/claude-agent-sdk/tool-bridge.js.map +0 -1
  218. package/dist/providers/opencode-sdk/adapter.js.map +0 -1
  219. package/dist/providers/opencode-sdk/agent-bridge.js.map +0 -1
  220. package/dist/providers/opencode-sdk/tool-bridge.js.map +0 -1
  221. package/dist/providers/registry.js.map +0 -1
  222. package/dist/providers/types.js.map +0 -1
  223. package/dist/schema/json-schema-to-zod.js.map +0 -1
  224. package/dist/schema/schema-output.js.map +0 -1
  225. package/dist/session/store.js.map +0 -1
  226. package/dist/spec/registry.js.map +0 -1
  227. package/dist/spec/spec.js.map +0 -1
  228. package/dist/telemetry/adapter.js.map +0 -1
  229. package/dist/tools/knowledge-tool.js.map +0 -1
  230. package/dist/tools/mcp-client.js.map +0 -1
  231. package/dist/tools/mcp-server.js.map +0 -1
  232. package/dist/tools/tool-adapter.js.map +0 -1
@@ -1,122 +1,118 @@
1
- //#region src/providers/claude-agent-sdk/tool-bridge.ts
2
- /**
3
- * Convert a ContractSpec AgentToolConfig to Claude Agent SDK tool format.
4
- *
5
- * @param tool - ContractSpec tool configuration
6
- * @param handler - Tool handler function
7
- * @param context - Partial execution context to inject
8
- * @returns Claude Agent SDK tool definition with execute function
9
- */
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
+ });
11
+ };
12
+ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
13
+ var __require = import.meta.require;
14
+
15
+ // src/providers/claude-agent-sdk/tool-bridge.ts
10
16
  function specToolToClaudeAgentTool(tool, handler, context) {
11
- return {
12
- name: tool.name,
13
- description: tool.description ?? `Execute ${tool.name}`,
14
- input_schema: normalizeSchema(tool.schema),
15
- requires_confirmation: tool.requiresApproval ?? !tool.automationSafe,
16
- execute: async (input) => {
17
- return handler(input, {
18
- agentId: context.agentId ?? "unknown",
19
- sessionId: context.sessionId ?? "unknown",
20
- tenantId: context.tenantId,
21
- actorId: context.actorId,
22
- metadata: context.metadata,
23
- signal: context.signal
24
- });
25
- }
26
- };
17
+ return {
18
+ name: tool.name,
19
+ description: tool.description ?? `Execute ${tool.name}`,
20
+ input_schema: normalizeSchema(tool.schema),
21
+ requires_confirmation: tool.requiresApproval ?? !tool.automationSafe,
22
+ execute: async (input) => {
23
+ const fullContext = {
24
+ agentId: context.agentId ?? "unknown",
25
+ sessionId: context.sessionId ?? "unknown",
26
+ tenantId: context.tenantId,
27
+ actorId: context.actorId,
28
+ metadata: context.metadata,
29
+ signal: context.signal
30
+ };
31
+ return handler(input, fullContext);
32
+ }
33
+ };
27
34
  }
28
- /**
29
- * Convert multiple ContractSpec tools to Claude Agent SDK format.
30
- */
31
35
  function specToolsToClaudeAgentTools(tools, handlers, context) {
32
- return tools.filter((tool) => handlers.has(tool.name)).map((tool) => {
33
- const handler = handlers.get(tool.name);
34
- if (!handler) throw new Error(`Handler not found for tool ${tool.name}`);
35
- return specToolToClaudeAgentTool(tool, handler, context);
36
- });
36
+ return tools.filter((tool) => handlers.has(tool.name)).map((tool) => {
37
+ const handler = handlers.get(tool.name);
38
+ if (!handler) {
39
+ throw new Error(`Handler not found for tool ${tool.name}`);
40
+ }
41
+ return specToolToClaudeAgentTool(tool, handler, context);
42
+ });
37
43
  }
38
- /**
39
- * Convert a Claude Agent SDK tool to ContractSpec AgentToolConfig.
40
- * This enables importing tools defined in Claude Agent SDK format.
41
- *
42
- * @param claudeTool - Claude Agent SDK tool definition
43
- * @param execute - Optional execute function to wrap
44
- * @returns ContractSpec tool config and optional handler
45
- */
46
44
  function claudeAgentToolToSpecTool(claudeTool, execute) {
47
- return {
48
- config: {
49
- name: claudeTool.name,
50
- description: claudeTool.description,
51
- schema: claudeTool.input_schema,
52
- requiresApproval: claudeTool.requires_confirmation,
53
- automationSafe: !claudeTool.requires_confirmation
54
- },
55
- handler: execute ? async (input, _ctx) => String(await execute(input)) : void 0
56
- };
45
+ const config = {
46
+ name: claudeTool.name,
47
+ description: claudeTool.description,
48
+ schema: claudeTool.input_schema,
49
+ requiresApproval: claudeTool.requires_confirmation,
50
+ automationSafe: !claudeTool.requires_confirmation
51
+ };
52
+ const handler = execute ? async (input, _ctx) => String(await execute(input)) : undefined;
53
+ return { config, handler };
57
54
  }
58
- /**
59
- * Convert multiple Claude Agent SDK tools to ContractSpec format.
60
- */
61
55
  function claudeAgentToolsToSpecTools(claudeTools) {
62
- const configs = [];
63
- const handlers = /* @__PURE__ */ new Map();
64
- for (const claudeTool of claudeTools) {
65
- const { config, handler } = claudeAgentToolToSpecTool(claudeTool, claudeTool.execute);
66
- configs.push(config);
67
- if (handler) handlers.set(config.name, handler);
68
- }
69
- return {
70
- configs,
71
- handlers
72
- };
56
+ const configs = [];
57
+ const handlers = new Map;
58
+ for (const claudeTool of claudeTools) {
59
+ const { config, handler } = claudeAgentToolToSpecTool(claudeTool, claudeTool.execute);
60
+ configs.push(config);
61
+ if (handler) {
62
+ handlers.set(config.name, handler);
63
+ }
64
+ }
65
+ return { configs, handlers };
73
66
  }
74
- /**
75
- * Convert ContractSpec tool to ExternalToolDefinition format.
76
- */
77
67
  function specToolToExternalTool(tool, handler, context) {
78
- return {
79
- name: tool.name,
80
- description: tool.description ?? `Execute ${tool.name}`,
81
- inputSchema: tool.schema ?? { type: "object" },
82
- requiresApproval: tool.requiresApproval ?? !tool.automationSafe,
83
- execute: handler ? async (input) => {
84
- return handler(input, {
85
- agentId: context?.agentId ?? "unknown",
86
- sessionId: context?.sessionId ?? "unknown",
87
- tenantId: context?.tenantId,
88
- actorId: context?.actorId,
89
- metadata: context?.metadata,
90
- signal: context?.signal
91
- });
92
- } : void 0
93
- };
68
+ return {
69
+ name: tool.name,
70
+ description: tool.description ?? `Execute ${tool.name}`,
71
+ inputSchema: tool.schema ?? { type: "object" },
72
+ requiresApproval: tool.requiresApproval ?? !tool.automationSafe,
73
+ execute: handler ? async (input) => {
74
+ const fullContext = {
75
+ agentId: context?.agentId ?? "unknown",
76
+ sessionId: context?.sessionId ?? "unknown",
77
+ tenantId: context?.tenantId,
78
+ actorId: context?.actorId,
79
+ metadata: context?.metadata,
80
+ signal: context?.signal
81
+ };
82
+ return handler(input, fullContext);
83
+ } : undefined
84
+ };
94
85
  }
95
- /**
96
- * Normalize a schema to Claude Agent SDK's expected format.
97
- * Ensures the schema is a valid JSON Schema object type.
98
- */
99
86
  function normalizeSchema(schema) {
100
- if (!schema) return { type: "object" };
101
- if (schema.type === "object") return schema;
102
- return {
103
- type: "object",
104
- properties: { value: schema },
105
- required: ["value"]
106
- };
87
+ if (!schema) {
88
+ return { type: "object" };
89
+ }
90
+ if (schema.type === "object") {
91
+ return schema;
92
+ }
93
+ return {
94
+ type: "object",
95
+ properties: {
96
+ value: schema
97
+ },
98
+ required: ["value"]
99
+ };
107
100
  }
108
- /**
109
- * Extract tool call info from Claude Agent SDK response.
110
- */
111
101
  function extractToolCalls(response) {
112
- if (!response.content) return [];
113
- return response.content.filter((block) => block.type === "tool_use").map((block) => ({
114
- toolCallId: block.id ?? "",
115
- toolName: block.name ?? "",
116
- args: block.input
117
- }));
102
+ if (!response.content) {
103
+ return [];
104
+ }
105
+ return response.content.filter((block) => block.type === "tool_use").map((block) => ({
106
+ toolCallId: block.id ?? "",
107
+ toolName: block.name ?? "",
108
+ args: block.input
109
+ }));
118
110
  }
119
-
120
- //#endregion
121
- export { claudeAgentToolToSpecTool, claudeAgentToolsToSpecTools, extractToolCalls, specToolToClaudeAgentTool, specToolToExternalTool, specToolsToClaudeAgentTools };
122
- //# sourceMappingURL=tool-bridge.js.map
111
+ export {
112
+ specToolsToClaudeAgentTools,
113
+ specToolToExternalTool,
114
+ specToolToClaudeAgentTool,
115
+ extractToolCalls,
116
+ claudeAgentToolsToSpecTools,
117
+ claudeAgentToolToSpecTool
118
+ };
@@ -1,7 +1,28 @@
1
- import { ClaudeAgentContextMetadata, ClaudeAgentSDKConfig, ContextCreationError, ExternalAgentContext, ExternalAgentProvider, ExternalExecuteParams, ExternalExecuteResult, ExternalProviderError, ExternalProviderFactory, ExternalStreamChunk, ExternalToolDefinition, ExternalToolSet, ExternalUsage, OpenCodeAgentType, OpenCodeContextMetadata, OpenCodeSDKConfig, ProviderExecutionError, ProviderNotAvailableError, ProviderRegistry } from "./types.js";
2
- import { ClaudeAgentSDKProvider } from "./claude-agent-sdk/adapter.js";
3
- import "./claude-agent-sdk/index.js";
4
- import { OpenCodeSDKProvider } from "./opencode-sdk/adapter.js";
5
- import "./opencode-sdk/index.js";
6
- import { createProviderRegistry, defaultProviderRegistry } from "./registry.js";
7
- export { ClaudeAgentContextMetadata, ClaudeAgentSDKConfig, ClaudeAgentSDKProvider, ContextCreationError, ExternalAgentContext, ExternalAgentProvider, ExternalExecuteParams, ExternalExecuteResult, ExternalProviderError, ExternalProviderFactory, ExternalStreamChunk, ExternalToolDefinition, ExternalToolSet, ExternalUsage, OpenCodeAgentType, OpenCodeContextMetadata, OpenCodeSDKConfig, OpenCodeSDKProvider, ProviderExecutionError, ProviderNotAvailableError, ProviderRegistry, createProviderRegistry, defaultProviderRegistry };
1
+ /**
2
+ * External SDK providers for ContractSpec agents.
3
+ *
4
+ * This module provides integration with external agent SDKs:
5
+ * - @anthropic-ai/claude-agent-sdk
6
+ * - @opencode-ai/sdk
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * import { ClaudeAgentSDKProvider, OpenCodeSDKProvider } from '@contractspec/lib.ai-agent/providers';
11
+ *
12
+ * // Use Claude Agent SDK as backend
13
+ * const claudeProvider = new ClaudeAgentSDKProvider({
14
+ * extendedThinking: true,
15
+ * computerUse: true,
16
+ * });
17
+ *
18
+ * // Use OpenCode SDK as backend
19
+ * const openCodeProvider = new OpenCodeSDKProvider({
20
+ * agentType: 'build',
21
+ * });
22
+ * ```
23
+ */
24
+ export * from './types';
25
+ export { ClaudeAgentSDKProvider } from './claude-agent-sdk';
26
+ export { OpenCodeSDKProvider } from './opencode-sdk';
27
+ export { createProviderRegistry, defaultProviderRegistry } from './registry';
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGrD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}