@archships/dim-agent-sdk 0.0.3 → 0.0.5
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/README.md +27 -5
- package/dist/dim-agent-sdk/src/agent-core/agent-types.d.ts +3 -2
- package/dist/dim-agent-sdk/src/agent-core/{Agent.d.ts → agent.d.ts} +2 -2
- package/dist/dim-agent-sdk/src/agent-core/index.d.ts +10 -10
- package/dist/dim-agent-sdk/src/agent-core/{LoopRunner.d.ts → loop-runner.d.ts} +6 -5
- package/dist/dim-agent-sdk/src/agent-core/notifications.d.ts +1 -1
- package/dist/dim-agent-sdk/src/agent-core/session-state.d.ts +3 -2
- package/dist/dim-agent-sdk/src/agent-core/{Session.d.ts → session.d.ts} +48 -9
- package/dist/dim-agent-sdk/src/agent-core/{ToolExecutor.d.ts → tool-executor.d.ts} +2 -2
- package/dist/dim-agent-sdk/src/context/{AutoContextManager.d.ts → auto-context-manager.d.ts} +1 -1
- package/dist/dim-agent-sdk/src/context/index.d.ts +2 -2
- package/dist/dim-agent-sdk/src/contracts/event.d.ts +13 -7
- package/dist/dim-agent-sdk/src/contracts/state.d.ts +32 -1
- package/dist/dim-agent-sdk/src/index.d.ts +7 -6
- package/dist/dim-agent-sdk/src/persistence/index.d.ts +5 -5
- package/dist/dim-agent-sdk/src/persistence/{SnapshotCodec.d.ts → snapshot-codec.d.ts} +2 -1
- package/dist/dim-agent-sdk/src/plugin-host/index.d.ts +2 -2
- package/dist/dim-agent-sdk/src/plugin-host/{PluginHost.d.ts → plugin-host.d.ts} +4 -4
- package/dist/dim-agent-sdk/src/providers/aihubmix/adapter.d.ts +17 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix-responses/adapter.d.ts +17 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix-responses/driver.d.ts +12 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix-responses/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/aihubmix-responses/state.d.ts +7 -0
- package/dist/dim-agent-sdk/src/providers/anthropic/adapter.d.ts +15 -4
- package/dist/dim-agent-sdk/src/providers/anthropic/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/anthropic/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/anthropic/state.d.ts +6 -0
- package/dist/dim-agent-sdk/src/providers/core/create-provider-factory.d.ts +39 -0
- package/dist/dim-agent-sdk/src/providers/core/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/deepseek/adapter.d.ts +11 -0
- package/dist/dim-agent-sdk/src/providers/deepseek/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/deepseek/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/gemini/adapter.d.ts +3 -4
- package/dist/dim-agent-sdk/src/providers/gemini/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/gemini/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/gemini/state.d.ts +5 -0
- package/dist/dim-agent-sdk/src/providers/index.d.ts +22 -8
- package/dist/dim-agent-sdk/src/providers/moonshotai/adapter.d.ts +11 -0
- package/dist/dim-agent-sdk/src/providers/moonshotai/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/moonshotai/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/openai/adapter.d.ts +3 -4
- package/dist/dim-agent-sdk/src/providers/openai/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/openai/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/openai-responses/adapter.d.ts +3 -4
- package/dist/dim-agent-sdk/src/providers/openai-responses/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/openai-responses/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/openai-responses/state.d.ts +7 -0
- package/dist/dim-agent-sdk/src/providers/shared/ai-sdk-driver.d.ts +7 -0
- package/dist/dim-agent-sdk/src/providers/shared/auth-warning.d.ts +6 -0
- package/dist/dim-agent-sdk/src/providers/shared/fetch.d.ts +8 -0
- package/dist/dim-agent-sdk/src/providers/shared/http-error.d.ts +10 -0
- package/dist/dim-agent-sdk/src/providers/shared/prompt.d.ts +14 -0
- package/dist/dim-agent-sdk/src/providers/shared/reasoning.d.ts +30 -7
- package/dist/dim-agent-sdk/src/providers/shared/responses-state.d.ts +11 -0
- package/dist/dim-agent-sdk/src/providers/shared/usage.d.ts +4 -2
- package/dist/dim-agent-sdk/src/providers/xai/adapter.d.ts +11 -0
- package/dist/dim-agent-sdk/src/providers/xai/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/xai/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/xai-responses/adapter.d.ts +11 -0
- package/dist/dim-agent-sdk/src/providers/xai-responses/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/xai-responses/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/providers/xai-responses/state.d.ts +7 -0
- package/dist/dim-agent-sdk/src/providers/zenmux/adapter.d.ts +13 -0
- package/dist/dim-agent-sdk/src/providers/zenmux/driver.d.ts +3 -0
- package/dist/dim-agent-sdk/src/providers/zenmux/index.d.ts +2 -0
- package/dist/dim-agent-sdk/src/services/index.d.ts +6 -6
- package/dist/dim-agent-sdk/src/tools/builtins/{EditTool.d.ts → edit-tool.d.ts} +1 -1
- package/dist/dim-agent-sdk/src/tools/builtins/{ExecTool.d.ts → exec-tool.d.ts} +1 -1
- package/dist/dim-agent-sdk/src/tools/builtins/index.d.ts +4 -4
- package/dist/dim-agent-sdk/src/tools/builtins/{ReadTool.d.ts → read-tool.d.ts} +1 -1
- package/dist/dim-agent-sdk/src/tools/builtins/{WriteTool.d.ts → write-tool.d.ts} +1 -1
- package/dist/dim-agent-sdk/src/tools/index.d.ts +2 -2
- package/dist/dim-plugin-api/src/index.d.ts +18 -1
- package/dist/{index.js → src/index.js} +4422 -3627
- package/dist/src/providers/aihubmix/index.js +636 -0
- package/dist/src/providers/aihubmix-responses/index.js +759 -0
- package/dist/src/providers/anthropic/index.js +743 -0
- package/dist/src/providers/core/index.js +92 -0
- package/dist/src/providers/deepseek/index.js +639 -0
- package/dist/src/providers/gemini/index.js +756 -0
- package/dist/src/providers/moonshotai/index.js +639 -0
- package/dist/src/providers/openai/index.js +499 -0
- package/dist/src/providers/openai-responses/index.js +727 -0
- package/dist/src/providers/xai/index.js +639 -0
- package/dist/src/providers/xai-responses/index.js +728 -0
- package/dist/src/providers/zenmux/index.js +642 -0
- package/package.json +74 -5
- package/dist/dim-agent-sdk/src/providers/anthropic/mapper.d.ts +0 -28
- package/dist/dim-agent-sdk/src/providers/gemini/mapper.d.ts +0 -30
- package/dist/dim-agent-sdk/src/providers/openai/mapper.d.ts +0 -15
- package/dist/dim-agent-sdk/src/providers/openai-responses/mapper.d.ts +0 -40
- /package/dist/dim-agent-sdk/src/agent-core/{createModel.d.ts → create-model.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/agent-core/{MessageFactory.d.ts → message-factory.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/agent-core/{ModelTurnCollector.d.ts → model-turn-collector.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/agent-core/{TerminationPolicy.d.ts → termination-policy.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/persistence/{FileStateStore.d.ts → file-state-store.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/persistence/{InMemoryStateStore.d.ts → in-memory-state-store.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/plugin-host/{HookPipeline.d.ts → hook-pipeline.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{ExecGateway.d.ts → exec-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{FileSystemGateway.d.ts → file-system-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{GitGateway.d.ts → git-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{ModelGateway.d.ts → model-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{NetworkGateway.d.ts → network-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/services/{PermissionGateway.d.ts → permission-gateway.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/tools/{BaseTool.d.ts → base-tool.d.ts} +0 -0
- /package/dist/dim-agent-sdk/src/tools/{ToolRegistry.d.ts → tool-registry.d.ts} +0 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// src/providers/core/create-provider-factory.ts
|
|
2
|
+
function createProviderFactory(definition) {
|
|
3
|
+
return function createConfiguredAdapter(options) {
|
|
4
|
+
const provider = options.provider ?? definition.defaultProvider;
|
|
5
|
+
const defaultModel = {
|
|
6
|
+
provider,
|
|
7
|
+
modelId: options.defaultModel
|
|
8
|
+
};
|
|
9
|
+
return {
|
|
10
|
+
provider,
|
|
11
|
+
defaultModel,
|
|
12
|
+
async* stream(request) {
|
|
13
|
+
const requestId = request.requestId ?? crypto.randomUUID();
|
|
14
|
+
const model = request.model ?? defaultModel;
|
|
15
|
+
yield { type: "response_start", requestId, model };
|
|
16
|
+
const context = {
|
|
17
|
+
options,
|
|
18
|
+
provider,
|
|
19
|
+
defaultModel,
|
|
20
|
+
request: {
|
|
21
|
+
...request,
|
|
22
|
+
model
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
let result;
|
|
26
|
+
try {
|
|
27
|
+
result = await definition.driver.generate(context);
|
|
28
|
+
} catch (error) {
|
|
29
|
+
const payload = definition.driver.normalizeError ? await definition.driver.normalizeError(error, context) : createFallbackErrorPayload(provider, error);
|
|
30
|
+
yield {
|
|
31
|
+
type: "error",
|
|
32
|
+
requestId,
|
|
33
|
+
error: payload,
|
|
34
|
+
terminal: true
|
|
35
|
+
};
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
for (const segment of result.content) {
|
|
39
|
+
if (segment.type === "text") {
|
|
40
|
+
if (segment.text.length > 0)
|
|
41
|
+
yield { type: "text_delta", requestId, delta: segment.text };
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
if (segment.type === "thinking") {
|
|
45
|
+
if (segment.text.length > 0)
|
|
46
|
+
yield { type: "thinking_delta", requestId, delta: segment.text };
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
yield {
|
|
50
|
+
type: "tool_call_start",
|
|
51
|
+
requestId,
|
|
52
|
+
callId: segment.callId,
|
|
53
|
+
toolName: segment.toolName
|
|
54
|
+
};
|
|
55
|
+
yield {
|
|
56
|
+
type: "tool_call_args_delta",
|
|
57
|
+
requestId,
|
|
58
|
+
callId: segment.callId,
|
|
59
|
+
delta: segment.argsText
|
|
60
|
+
};
|
|
61
|
+
yield {
|
|
62
|
+
type: "tool_call_end",
|
|
63
|
+
requestId,
|
|
64
|
+
callId: segment.callId
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
yield {
|
|
68
|
+
type: "response_end",
|
|
69
|
+
requestId,
|
|
70
|
+
stopReason: result.stopReason,
|
|
71
|
+
usage: result.usage,
|
|
72
|
+
assistantMetadata: result.assistantMetadata
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
function createFallbackErrorPayload(provider, error) {
|
|
79
|
+
if (error instanceof Error) {
|
|
80
|
+
return {
|
|
81
|
+
code: `${provider}_request_error`,
|
|
82
|
+
message: error.message
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
code: `${provider}_request_error`,
|
|
87
|
+
message: String(error)
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export {
|
|
91
|
+
createProviderFactory
|
|
92
|
+
};
|