@qoder-ai/qoder-agent-sdk 1.0.19 → 1.0.21
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 +9 -7
- package/dist/core/brand.d.ts +4 -0
- package/dist/core/errors.d.ts +8 -0
- package/dist/global/plugins.d.ts +8 -2
- package/dist/index.d.ts +12 -9
- package/dist/index.js +30 -26
- package/dist/protocol/agents.d.ts +7 -0
- package/dist/protocol/control.d.ts +27 -1
- package/dist/protocol/index.d.ts +3 -3
- package/dist/protocol/index.js +1 -1
- package/dist/protocol/messages.d.ts +36 -1
- package/dist/protocol/version.d.ts +1 -1
- package/dist/query/index.d.ts +2 -0
- package/dist/query/query-runner.d.ts +14 -1
- package/dist/query/startup.d.ts +11 -0
- package/dist/runtime-manifest.json +5 -5
- package/dist/session/session-manager.d.ts +5 -4
- package/dist/settings/resolve-settings.d.ts +2 -0
- package/dist/types/agents.d.ts +1 -1
- package/dist/types/control.d.ts +1 -1
- package/dist/types/messages.d.ts +1 -1
- package/dist/types/options.d.ts +18 -1
- package/dist/types/plugins.d.ts +52 -0
- package/dist/types/session.d.ts +28 -0
- package/dist/types/settings.d.ts +14 -1
- package/dist/types/tools.d.ts +59 -15
- package/package.json +2 -2
- package/scripts/postinstall.cjs +10 -0
package/README.md
CHANGED
|
@@ -47,9 +47,10 @@ const q = query({
|
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
The worker transport uses the runtime installed at
|
|
50
|
-
`dist/_worker/qoder-worker-runtime.obf.mjs`.
|
|
51
|
-
|
|
52
|
-
`new WorkerTransport({ pathToQoderWorkerRuntime })`.
|
|
50
|
+
`dist/_worker/qoder-worker-runtime.obf.mjs`. To use another Worker runtime,
|
|
51
|
+
pass its path explicitly with
|
|
52
|
+
`new WorkerTransport({ pathToQoderWorkerRuntime })`. Environment variables do
|
|
53
|
+
not override the Worker runtime entry.
|
|
53
54
|
|
|
54
55
|
The package includes a `dist/runtime-manifest.json` that records the default
|
|
55
56
|
runtime and pins the qodercli Worker runtime archive URL. The SDK package itself
|
|
@@ -70,14 +71,15 @@ QODER_SKIP_DOWNLOAD=1 npm install @qoder-ai/qoder-agent-sdk zod
|
|
|
70
71
|
|
|
71
72
|
`QODER_SKIP_DOWNLOAD` only affects install-time downloads. It does not change the
|
|
72
73
|
package's default runtime. Then point the process transport at an existing
|
|
73
|
-
`qodercli
|
|
74
|
+
`qodercli`:
|
|
74
75
|
|
|
75
76
|
```bash
|
|
76
77
|
export QODERCLI_PATH=/absolute/path/to/qodercli
|
|
77
|
-
# or
|
|
78
|
-
export QODER_WORKER_RUNTIME_PATH=/absolute/path/to/qoder-worker-runtime.obf.mjs
|
|
79
78
|
```
|
|
80
79
|
|
|
80
|
+
To use an existing Worker runtime, pass its absolute path through
|
|
81
|
+
`new WorkerTransport({ pathToQoderWorkerRuntime })`.
|
|
82
|
+
|
|
81
83
|
`query()` is the only query entry point and defaults to Worker. Pass
|
|
82
84
|
`transport: ProcessTransport.default`,
|
|
83
85
|
`transport: WorkerTransport.default`, or a custom transport provider when a
|
|
@@ -143,7 +145,7 @@ short-lived SATs for qodercli. See the
|
|
|
143
145
|
[host callback example](examples/service-account-token-demo/demo.mjs) for a
|
|
144
146
|
complete Token exchange and query. To reuse a signed-in developer
|
|
145
147
|
workstation, use `qodercliAuth()`. See the
|
|
146
|
-
[SDK authentication guide](docs/public/
|
|
148
|
+
[SDK authentication guide](docs/public/global/cli/sdk/authentication.mdx) for
|
|
147
149
|
complete setup instructions and security guidance.
|
|
148
150
|
|
|
149
151
|
## Quick Start
|
package/dist/core/brand.d.ts
CHANGED
|
@@ -6,7 +6,9 @@ export declare const SDK_BRAND_CONFIG: {
|
|
|
6
6
|
packageName: string;
|
|
7
7
|
cliCommands: readonly ["qoderclicn", "qodercn"];
|
|
8
8
|
configDirName: string;
|
|
9
|
+
projectConfigDirName: string;
|
|
9
10
|
configDirEnv: string;
|
|
11
|
+
configDirNameEnv: string;
|
|
10
12
|
cliHomeEnv: string;
|
|
11
13
|
accessTokenEnv: string;
|
|
12
14
|
serviceAccountEnv: string;
|
|
@@ -15,7 +17,9 @@ export declare const SDK_BRAND_CONFIG: {
|
|
|
15
17
|
packageName: string;
|
|
16
18
|
cliCommands: readonly ["qodercli", "qoder"];
|
|
17
19
|
configDirName: string;
|
|
20
|
+
projectConfigDirName: string;
|
|
18
21
|
configDirEnv: string;
|
|
22
|
+
configDirNameEnv: string;
|
|
19
23
|
cliHomeEnv: string;
|
|
20
24
|
accessTokenEnv: string;
|
|
21
25
|
serviceAccountEnv: string;
|
package/dist/core/errors.d.ts
CHANGED
|
@@ -32,4 +32,12 @@ export declare class ProtocolVersionMismatchError extends Error {
|
|
|
32
32
|
readonly cliProtocolVersion: string;
|
|
33
33
|
readonly sdkProtocolVersion: string;
|
|
34
34
|
constructor(cliProtocolVersion: string, sdkProtocolVersion: string);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Thrown when an SDK operation requires a protocol capability that the
|
|
38
|
+
* running qodercli process did not advertise in its system/init message.
|
|
39
|
+
*/
|
|
40
|
+
export declare class UnsupportedCliCapabilityError extends Error {
|
|
41
|
+
readonly capability: string;
|
|
42
|
+
constructor(capability: string);
|
|
35
43
|
}
|
package/dist/global/plugins.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PluginDetails, InstallPluginResult, UninstallPluginResult } from '../types/plugins.js';
|
|
1
|
+
import type { PluginDetails, InstallPluginResult, PluginValidationReport, ValidatePluginOptions, UninstallPluginResult } from '../types/plugins.js';
|
|
2
2
|
export declare function listPlugins(opts?: {
|
|
3
3
|
orgId?: string;
|
|
4
4
|
cliPath?: string;
|
|
@@ -20,4 +20,10 @@ export declare function uninstallPlugin(id: string, opts?: {
|
|
|
20
20
|
keepData?: boolean;
|
|
21
21
|
cliPath?: string;
|
|
22
22
|
env?: Record<string, string>;
|
|
23
|
-
}): Promise<UninstallPluginResult>;
|
|
23
|
+
}): Promise<UninstallPluginResult>;
|
|
24
|
+
/**
|
|
25
|
+
* Statically validate a local plugin without creating a session or executing
|
|
26
|
+
* plugin hooks, MCP servers, or binaries. Invalid plugin content is returned
|
|
27
|
+
* as a report; transport and CLI capability failures reject the promise.
|
|
28
|
+
*/
|
|
29
|
+
export declare function validatePlugin(path: string, opts?: ValidatePluginOptions): Promise<PluginValidationReport>;
|
package/dist/index.d.ts
CHANGED
|
@@ -52,6 +52,9 @@
|
|
|
52
52
|
* ```
|
|
53
53
|
*/
|
|
54
54
|
export { query } from './query/query.js';
|
|
55
|
+
export { startup } from './query/startup.js';
|
|
56
|
+
export type { StartupParams, WarmQuery } from './query/startup.js';
|
|
57
|
+
export { resolveSettings } from './settings/resolve-settings.js';
|
|
55
58
|
export { DEFAULT_RUNTIME_TRANSPORT, } from './core/default-runtime.js';
|
|
56
59
|
export { ProcessTransport, QoderCliProcessError, } from './core/process-transport.js';
|
|
57
60
|
export { hasResolvableQoderWorkerRuntime, QoderWorkerRuntimeError, WorkerTransport, resolveQoderWorkerRuntimePath, } from './core/worker-transport.js';
|
|
@@ -66,11 +69,11 @@ export { InMemorySessionStore } from './session/session-store.js';
|
|
|
66
69
|
export { importSessionToStore } from './session/session-import.js';
|
|
67
70
|
export type { ImportSessionToStoreOptions } from './session/session-import.js';
|
|
68
71
|
export type { SessionKey, SessionStore, SessionStoreEntry, SessionStoreFlush, } from './session/session-store.js';
|
|
69
|
-
export { listPlugins, enablePlugin, disablePlugin, installPlugin, uninstallPlugin } from './global/plugins.js';
|
|
70
|
-
export type { PluginDetails, PluginResources, InstallPluginResult, UninstallPluginResult } from './types/plugins.js';
|
|
72
|
+
export { listPlugins, enablePlugin, disablePlugin, installPlugin, uninstallPlugin, validatePlugin, } from './global/plugins.js';
|
|
73
|
+
export type { PluginDetails, PluginResources, InstallPluginResult, UninstallPluginResult, PluginValidationSeverity, PluginValidationPhase, PluginValidationPosition, PluginValidationLocation, PluginValidationDiagnostic, PluginValidationReport, ValidatePluginOptions, } from './types/plugins.js';
|
|
71
74
|
export { submitFeedback } from './feedback.js';
|
|
72
75
|
export type { SubmitFeedbackParams, SubmitFeedbackOptions, IntegrationMode, } from './feedback.js';
|
|
73
|
-
export { AbortError, ModelPolicyTimeoutError, ProtocolVersionMismatchError, } from './core/errors.js';
|
|
76
|
+
export { AbortError, ModelPolicyTimeoutError, ProtocolVersionMismatchError, UnsupportedCliCapabilityError, } from './core/errors.js';
|
|
74
77
|
export { AuthAccessTokenEnvVarError, AuthServiceAccountEnvVarError, } from './core/runtime-launch-options.js';
|
|
75
78
|
export { WIRE_PROTOCOL_VERSION } from './protocol/version.js';
|
|
76
79
|
export type { ModelPromptPatch, ModelPromptPatches, } from './protocol/model-prompt-patches.js';
|
|
@@ -83,7 +86,7 @@ export type { AccessTokenInput, AuthOptions, FetchServiceAccountToken, ServiceAc
|
|
|
83
86
|
*/
|
|
84
87
|
export type { FetchJobToken, JobTokenAuthOptions, JobTokenRequest, JobTokenResult, } from './types/auth.js';
|
|
85
88
|
export type { AccountInfo, UsageAddOnQuotaBucket, UsageInfo, UsageOrgResourcePackage, UsageQuotaBucket, SessionCreditsUsage, ApiKeySource, ExitReason, FastModeState, ConfigScope, SettingSource, SDKAssistantMessageError, SDKStatus, EffortLevel, ThinkingAdaptive, ThinkingEnabled, ThinkingDisabled, ThinkingConfig, ModelInfo, ModelSource, ServerModelJson, ServerModelJsonValue, ModelStrategy, ModelPromotion, LocalizedModelText, ModelContextConfig, ModelContextWindowEntry, ModelEffortEntry, ModelThinkingConfig, ModelThinkingDisabled, ModelThinkingEnabled, ModelUsage, NonNullableUsage, SlashCommand, ToolConfig, SdkPluginConfig, } from './types/common.js';
|
|
86
|
-
export type { SDKMessage, SDKAssistantMessage, SDKUserMessage, SDKUserMessageReplay, SDKResultMessage, SDKResultSuccess, SDKResultError, SDKSystemMessage, SDKSystemInitMessage, SDKSystemMessageSubtype, SDKSystemMessageBySubtype, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKStatusMessage, SDKAPIRetryMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKPermissionDeniedMessage, SDKMirrorErrorMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKPermissionDenial, } from './types/messages.js';
|
|
89
|
+
export type { SDKMessage, SDKAssistantMessage, SDKUserMessage, SDKUserMessageReplay, SDKResultMessage, SDKResultSuccess, SDKResultError, SDKSystemMessage, SDKSystemInitMessage, SDKSystemMessageSubtype, SDKSystemMessageBySubtype, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKStatusMessage, SDKAPIRetryMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKPermissionDeniedMessage, SDKMirrorErrorMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKTaskUpdatedMessage, SDKBackgroundTasksChangedMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKPermissionDenial, } from './types/messages.js';
|
|
87
90
|
export type { DefaultRuntimeTransport, } from './core/default-runtime.js';
|
|
88
91
|
export type { QueryTransportCreateOptions, QueryTransportProviderOption, } from './core/query-transport.js';
|
|
89
92
|
export type { ProcessTransportOptions } from './core/process-transport.js';
|
|
@@ -95,13 +98,13 @@ export type { SettingSource as SettingSourceFromOptions } from './types/options.
|
|
|
95
98
|
export type { PermissionMode, PermissionBehavior, PermissionDecisionClassification, PermissionUpdateDestination, PermissionRuleValue, PermissionUpdate, PermissionResult, CanUseToolOptions, } from './types/permissions.js';
|
|
96
99
|
export type { HookEvent, HookPermissionDecision, HookCallback, HookCallbackMatcher, HookInput, HookSpecificOutput, HookJSONOutput, AsyncHookJSONOutput, SyncHookJSONOutput, BaseHookInput, PreToolUseHookInput, PostToolUseHookInput, PostToolUseFailureHookInput, UserPromptSubmitHookInput, SessionStartHookInput, SessionEndHookInput, StopHookInput, SubagentStartHookInput, SubagentStopHookInput, PreCompactHookInput, PostCompactHookInput, PermissionRequestHookInput, InstructionsLoadedHookInput, CwdChangedHookInput, FileChangedHookInput, PreToolUseHookSpecificOutput, PostToolUseHookSpecificOutput, PostToolUseFailureHookSpecificOutput, UserPromptSubmitHookSpecificOutput, SessionStartHookSpecificOutput, SubagentStartHookSpecificOutput, PermissionRequestHookSpecificOutput, CwdChangedHookSpecificOutput, FileChangedHookSpecificOutput, } from './types/hooks.js';
|
|
97
100
|
export type { McpStdioServerConfig, McpSSEServerConfig, McpHttpServerConfig, McpSdkServerConfig, McpSdkServerConfigWithInstance, McpServerConfig, McpServerToolPolicy, McpServerConfigForProcessTransport, McpServerStatus, McpServerStatusConfig, } from './types/mcp.js';
|
|
98
|
-
export type { AgentDefinition, AgentInfo, AgentMcpServerSpec, } from './types/agents.js';
|
|
99
|
-
export type { SDKSessionInfo, SessionMessage, ListSessionsOptions, GetSessionInfoOptions, GetSessionMessagesOptions, GetSubagentMessagesOptions, ListSubagentsOptions, SessionMutationOptions, ForkSessionOptions, ForkSessionResult, RewindFilesResult, } from './types/session.js';
|
|
100
|
-
export type { Settings, ResolvedSettings, ResolvedSettingsSource, } from './types/settings.js';
|
|
101
|
+
export type { AgentDefinition, AgentInfo, AgentMemoryScope, AgentMcpServerSpec, } from './types/agents.js';
|
|
102
|
+
export type { SDKSessionInfo, SessionMessage, ListSessionsOptions, GetSessionInfoOptions, GetSessionMessagesOptions, GetSubagentMessagesOptions, ListSubagentsOptions, SessionMutationOptions, ForkSessionOptions, ForkSessionResult, RewindFilesResult, RewindScope, RewindStatus, RewindFileFailure, RewindResult, } from './types/session.js';
|
|
103
|
+
export type { Settings, ResolveSettingsOptions, ResolvedSettingSource, ResolvedSettings, ResolvedSettingsSource, SettingsProvenanceEntry, } from './types/settings.js';
|
|
101
104
|
export { filterEscalatingDefaultMode } from './types/settings.js';
|
|
102
105
|
export type { QoderModelPurpose } from './types/control.js';
|
|
103
|
-
export type { SDKControlRequest, SDKControlResponse, SDKControlInterruptResponse, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAddDirectoriesResponse, SDKControlReloadPluginsResponse, } from './types/control.js';
|
|
106
|
+
export type { SDKControlRequest, SDKControlResponse, SDKControlInterruptResponse, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAddDirectoriesResponse, SDKControlReloadPluginsResponse, SDKControlStopTaskRequest, SDKControlBackgroundTasksRequest, SDKControlBackgroundTasksResponse, } from './types/control.js';
|
|
104
107
|
export type { SDKControlGetModelPolicyRequest, SDKControlGetModelPolicyResponse, SDKCapabilities, ModelPolicyContext, ModelPolicyResult, ModelPolicyProvider, } from './types/model-policy-provider.js';
|
|
105
108
|
export type { SDKControlGetByokConfigRequest, SDKControlGetByokConfigResponse, SDKControlValidateByokModelRequest, SDKControlValidateByokModelResponse, BYOKModelValidationInput, BYOKProviderInfo, BYOKModelTypeInfo, BYOKModelInfo, CustomModel, } from './types/byok.js';
|
|
106
|
-
export type { AgentInput, AgentOutput, BashInput, FileReadInput, FileReadOutput, FileEditInput, FileWriteInput, GlobInput, GrepInput, WebFetchInput, WebSearchInput, AskUserQuestionInput, NotebookEditInput, TaskCreateInput, TaskCreateOutput, TaskGetInput, TaskGetOutput, TaskUpdateInput, TaskUpdateOutput, TaskListInput, TaskListOutput, ExitPlanModeInput, TodoWriteInput, ToolInputSchemas, ToolOutputSchemas, } from './types/tools.js';
|
|
109
|
+
export type { AgentInput, AgentOutput, AgentToolCompletionResult, AgentToolBackgroundLaunchResult, AgentToolTeammateSpawnedResult, BashInput, FileReadInput, FileReadOutput, FileEditInput, FileWriteInput, GlobInput, GrepInput, WebFetchInput, WebSearchInput, AskUserQuestionInput, NotebookEditInput, TaskCreateInput, TaskCreateOutput, TaskGetInput, TaskGetOutput, TaskUpdateInput, TaskUpdateOutput, TaskListInput, TaskListOutput, ExitPlanModeInput, TodoWriteInput, ToolInputSchemas, ToolOutputSchemas, } from './types/tools.js';
|
|
107
110
|
export type { FeedbackResult } from './types/account.js';
|