@qoder-ai/qoder-agent-sdk 1.0.22 → 1.0.24
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 +24 -0
- package/dist/core/process-transport.d.ts +2 -1
- package/dist/core/runtime-command.d.ts +14 -0
- package/dist/core/runtime-launch-options.d.ts +3 -1
- package/dist/core/security-scan-options.d.ts +7 -0
- package/dist/core/worker-runtime-launch.d.ts +16 -0
- package/dist/core/worker-runtime-path.d.ts +2 -0
- package/dist/core/worker-transport.d.ts +3 -3
- package/dist/index.d.ts +6 -4
- package/dist/index.js +30 -30
- package/dist/memory/memory-options.d.ts +7 -0
- package/dist/protocol/control.d.ts +54 -10
- package/dist/protocol/index.d.ts +3 -2
- package/dist/protocol/index.js +1 -1
- package/dist/protocol/launch.d.ts +4 -0
- package/dist/protocol/memory.d.ts +133 -0
- package/dist/protocol/messages.d.ts +47 -1
- package/dist/query/query-runner.d.ts +21 -2
- package/dist/runtime-manifest.json +5 -5
- package/dist/types/control.d.ts +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/memory.d.ts +59 -0
- package/dist/types/messages.d.ts +2 -1
- package/dist/types/options.d.ts +42 -1
- package/dist/types/plugins.d.ts +1 -0
- package/dist/types/session.d.ts +6 -0
- package/dist/types/tools.d.ts +15 -1
- package/package.json +2 -2
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { MemoryOptions, MemoryRuntimeCallbacks } from '../types/memory.js';
|
|
2
|
+
import type { SerializableMemoryConfig } from '../protocol/memory.js';
|
|
3
|
+
export type PreparedMemoryOptions = {
|
|
4
|
+
config?: SerializableMemoryConfig;
|
|
5
|
+
callbacks?: MemoryRuntimeCallbacks;
|
|
6
|
+
};
|
|
7
|
+
export declare function prepareMemoryOptions(memory: MemoryOptions | undefined): PreparedMemoryOptions;
|
|
@@ -20,6 +20,7 @@ import type { AgentDefinition, AgentInfo } from './agents.js';
|
|
|
20
20
|
import type { AccountInfo, FastModeState, ModelInfo, SessionCreditsUsage, SlashCommand, SdkPluginConfig, UsageInfo } from './common.js';
|
|
21
21
|
import type { PluginDetails } from '../types/plugins.js';
|
|
22
22
|
import type { ModelPromptPatches } from './model-prompt-patches.js';
|
|
23
|
+
import type { EffectiveMemoryConfig, MemoryGenerationGateInput, SerializableMemoryConfig } from './memory.js';
|
|
23
24
|
export type SDKControlRequest = {
|
|
24
25
|
type: 'control_request';
|
|
25
26
|
request_id: string;
|
|
@@ -113,6 +114,7 @@ export type SDKControlInitializeRequest = {
|
|
|
113
114
|
supportsCatalogReadyInitialize?: boolean;
|
|
114
115
|
initializeTimeoutMs?: number;
|
|
115
116
|
agentProgressSummaries?: boolean;
|
|
117
|
+
memory?: SerializableMemoryConfig;
|
|
116
118
|
hooks?: Partial<Record<HookEvent, Array<{
|
|
117
119
|
hookCallbackIds: string[];
|
|
118
120
|
timeout?: number;
|
|
@@ -126,6 +128,17 @@ export type SDKControlInitializeRequest = {
|
|
|
126
128
|
*/
|
|
127
129
|
scene?: string;
|
|
128
130
|
};
|
|
131
|
+
export type SDKControlMemoryShouldGenerateRequest = {
|
|
132
|
+
type: 'memory_should_generate';
|
|
133
|
+
callbackId: string;
|
|
134
|
+
input: MemoryGenerationGateInput;
|
|
135
|
+
};
|
|
136
|
+
export type SDKControlFlushMemoryRequest = {
|
|
137
|
+
type: 'flush_memory';
|
|
138
|
+
};
|
|
139
|
+
export type SDKControlRefreshMemoryRequest = {
|
|
140
|
+
type: 'refresh_memory';
|
|
141
|
+
};
|
|
129
142
|
export type SDKControlSetPermissionModeRequest = {
|
|
130
143
|
type: 'set_permission_mode';
|
|
131
144
|
mode: PermissionMode;
|
|
@@ -146,6 +159,45 @@ export type SDKControlGenerateSessionTitleRequest = {
|
|
|
146
159
|
export type SDKControlGenerateSessionTitleResponse = {
|
|
147
160
|
title: string | null;
|
|
148
161
|
};
|
|
162
|
+
/** One completed side-question exchange that may be reused as local context. */
|
|
163
|
+
export type SideQuestionHistoryEntry = {
|
|
164
|
+
question: string;
|
|
165
|
+
response: string;
|
|
166
|
+
/** Optional notice explaining that a fallback model produced the response. */
|
|
167
|
+
fallback_notice?: string;
|
|
168
|
+
};
|
|
169
|
+
/** Options for a side question that does not interrupt the main agent turn. */
|
|
170
|
+
export type AskSideQuestionOptions = {
|
|
171
|
+
/** Cancels only this side question. The main agent turn continues running. */
|
|
172
|
+
signal?: AbortSignal;
|
|
173
|
+
/** Previous side-question exchanges to include as local context. */
|
|
174
|
+
history?: readonly SideQuestionHistoryEntry[];
|
|
175
|
+
};
|
|
176
|
+
export type SideQuestionRefusalFallback = {
|
|
177
|
+
originalModel: string;
|
|
178
|
+
fallbackModel: string;
|
|
179
|
+
content: string;
|
|
180
|
+
};
|
|
181
|
+
/** Public result returned by {@link Query.askSideQuestion}. */
|
|
182
|
+
export type SideQuestionResult = {
|
|
183
|
+
response: string;
|
|
184
|
+
synthetic: boolean;
|
|
185
|
+
refusalFallback?: SideQuestionRefusalFallback;
|
|
186
|
+
};
|
|
187
|
+
export type SDKControlSideQuestionRequest = {
|
|
188
|
+
subtype: 'side_question';
|
|
189
|
+
question: string;
|
|
190
|
+
history?: SideQuestionHistoryEntry[];
|
|
191
|
+
};
|
|
192
|
+
export type SDKControlSideQuestionResponse = {
|
|
193
|
+
response: string | null;
|
|
194
|
+
synthetic?: boolean;
|
|
195
|
+
refusal_fallback?: {
|
|
196
|
+
original_model: string;
|
|
197
|
+
fallback_model: string;
|
|
198
|
+
content: string;
|
|
199
|
+
};
|
|
200
|
+
};
|
|
149
201
|
export type SDKControlAddDirectoriesRequest = {
|
|
150
202
|
type: 'add_directories';
|
|
151
203
|
directories: string[];
|
|
@@ -506,7 +558,7 @@ export type SDKControlBackgroundTasksResponse = {
|
|
|
506
558
|
/** Present for a targeted tool use. Bulk backgrounding may omit the body. */
|
|
507
559
|
backgrounded?: boolean;
|
|
508
560
|
};
|
|
509
|
-
export type SDKControlRequestInner = SDKControlInterruptRequest | SDKControlPermissionRequest | SDKControlInitializeRequest | SDKControlSetPermissionModeRequest | SDKControlSetModelRequest | SDKControlSetProxyRequest | SDKControlGenerateSessionTitleRequest | SDKControlAddDirectoriesRequest | SDKControlSetMaxThinkingTokensRequest | SDKControlMcpStatusRequest | SDKControlGetContextUsageRequest | SDKControlGetUsageInfoRequest | SDKControlGetModelPolicyRequest | SDKControlAccountInfoRequest | SDKHookCallbackRequest | SDKControlMcpMessageRequest | SDKControlRewindFilesRequest | SDKControlRewindRequest | SDKControlCancelAsyncMessageRequest | SDKControlSeedReadStateRequest | SDKControlMcpSetServersRequest | SDKControlReloadPluginsRequest | SDKControlMcpReconnectRequest | SDKControlMcpToggleRequest | SDKControlApplyFlagSettingsRequest | SDKControlGetSettingsRequest | SDKControlElicitationRequest | SDKControlEndSessionRequest | SDKControlChannelEnableRequest | SDKControlMcpInjectTokenRequest | SDKControlMcpAuthenticateRequest | SDKControlMcpOAuthCallbackUrlRequest | SDKControlMcpClearAuthRequest | SDKControlGetByokConfigRequest | SDKControlValidateByokModelRequest | SDKControlListPluginsRequest | SDKControlStopTaskRequest | SDKControlBackgroundTasksRequest;
|
|
561
|
+
export type SDKControlRequestInner = SDKControlInterruptRequest | SDKControlPermissionRequest | SDKControlInitializeRequest | SDKControlSetPermissionModeRequest | SDKControlSetModelRequest | SDKControlSetProxyRequest | SDKControlGenerateSessionTitleRequest | SDKControlSideQuestionRequest | SDKControlAddDirectoriesRequest | SDKControlSetMaxThinkingTokensRequest | SDKControlMcpStatusRequest | SDKControlGetContextUsageRequest | SDKControlGetUsageInfoRequest | SDKControlGetModelPolicyRequest | SDKControlAccountInfoRequest | SDKHookCallbackRequest | SDKControlMcpMessageRequest | SDKControlRewindFilesRequest | SDKControlRewindRequest | SDKControlCancelAsyncMessageRequest | SDKControlSeedReadStateRequest | SDKControlMcpSetServersRequest | SDKControlReloadPluginsRequest | SDKControlMcpReconnectRequest | SDKControlMcpToggleRequest | SDKControlApplyFlagSettingsRequest | SDKControlGetSettingsRequest | SDKControlElicitationRequest | SDKControlEndSessionRequest | SDKControlChannelEnableRequest | SDKControlMcpInjectTokenRequest | SDKControlMcpAuthenticateRequest | SDKControlMcpOAuthCallbackUrlRequest | SDKControlMcpClearAuthRequest | SDKControlGetByokConfigRequest | SDKControlValidateByokModelRequest | SDKControlListPluginsRequest | SDKControlStopTaskRequest | SDKControlBackgroundTasksRequest | SDKControlMemoryShouldGenerateRequest | SDKControlFlushMemoryRequest | SDKControlRefreshMemoryRequest;
|
|
510
562
|
export type SDKControlInitializeResponse = {
|
|
511
563
|
commands: SlashCommand[];
|
|
512
564
|
agents: AgentInfo[];
|
|
@@ -522,45 +574,37 @@ export type SDKControlInitializeResponse = {
|
|
|
522
574
|
fast_mode_state?: FastModeState;
|
|
523
575
|
/** Optional features implemented by the connected CLI control channel. */
|
|
524
576
|
capabilities?: string[];
|
|
577
|
+
memory?: EffectiveMemoryConfig;
|
|
525
578
|
};
|
|
526
579
|
export type SDKControlGetContextUsageResponse = {
|
|
527
580
|
model: string;
|
|
528
|
-
/** Whether optional token-count fields are available in this response. */
|
|
529
|
-
tokenCountsAvailable: boolean;
|
|
530
581
|
contextWindow: {
|
|
531
582
|
/** Context occupancy as a percentage from 0 to 100. */
|
|
532
583
|
usedPercentage: number;
|
|
533
|
-
usedTokens?: number;
|
|
534
|
-
sizeTokens?: number;
|
|
535
584
|
};
|
|
536
585
|
/** Local estimates in the same order and category model as `/context`. */
|
|
537
586
|
categories: Array<{
|
|
538
587
|
type: 'system_prompt' | 'system_tools' | 'skills' | 'messages' | 'other' | 'free_space' | 'auto_compact';
|
|
539
588
|
percentage: number;
|
|
540
|
-
tokens?: number;
|
|
541
589
|
}>;
|
|
542
590
|
autoCompact: {
|
|
543
591
|
enabled: boolean;
|
|
544
592
|
thresholdPercentage: number;
|
|
545
|
-
thresholdTokens?: number;
|
|
546
593
|
};
|
|
547
594
|
skills: {
|
|
548
595
|
count: number;
|
|
549
596
|
/** Aggregate skill frontmatter as a percentage of the full context. */
|
|
550
597
|
percentageOfContext: number;
|
|
551
|
-
tokens?: number;
|
|
552
598
|
items: Array<{
|
|
553
599
|
name: string;
|
|
554
600
|
source: 'project' | 'user' | 'built-in' | 'plugin';
|
|
555
601
|
/** This skill's frontmatter as a percentage of the full context. */
|
|
556
602
|
percentageOfContext: number;
|
|
557
|
-
tokens?: number;
|
|
558
603
|
}>;
|
|
559
604
|
};
|
|
560
605
|
duplicateFileReads: Array<{
|
|
561
606
|
path: string;
|
|
562
607
|
count: number;
|
|
563
|
-
wastedTokens?: number;
|
|
564
608
|
}>;
|
|
565
609
|
session: {
|
|
566
610
|
messageCount: number;
|
package/dist/protocol/index.d.ts
CHANGED
|
@@ -17,10 +17,11 @@ export type { ModelPromptPatch, ModelPromptPatches, } from './model-prompt-patch
|
|
|
17
17
|
export type { UUID, BetaMessage, BetaRawMessageStreamEvent, BetaUsage, BetaStopReason, MessageParam, NonNullableUsage, 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, PluginInfo, ModelUsage, SlashCommand, ToolConfig, SdkPluginConfig, } from './common.js';
|
|
18
18
|
export type { AICodeTrackingLaunchOptions, QoderAgentLaunchOptions, QoderCliFlagSettings, } from './launch.js';
|
|
19
19
|
export { buildQoderCliFlagSettings, buildQoderCliFlagSettingsArgs, } from './launch.js';
|
|
20
|
+
export type { EffectiveMemoryConfig, MemoryConsumptionFile, MemoryConsumptionResult, MemoryGenerationFailedFile, MemoryGenerationGateInput, MemoryGenerationGateResult, MemoryGenerationResult, MemoryMode, MemoryRoot, MemoryRootAccess, SerializableMemoryConfig, SerializableMemoryConsumptionOptions, SerializableMemoryGenerationOptions, } from './memory.js';
|
|
20
21
|
export type { PermissionMode, PermissionBehavior, PermissionDecisionClassification, PermissionUpdateDestination, PermissionRuleValue, PermissionUpdate, PermissionResult, } from './permissions.js';
|
|
21
22
|
export type { McpStdioServerConfig, McpSSEServerConfig, McpHttpServerConfig, McpSdkServerConfig, McpServerConfigForProcessTransport, McpServerStatus, McpServerStatusConfig, McpSetServersResult, OAuthToken, } from './mcp.js';
|
|
22
|
-
export type { SDKAssistantMessage, SDKToolNonExecutionKind, SDKToolResultMeta, SDKUserMessage, SDKUserMessageReplay, SDKResultSuccess, SDKResultError, SDKResultMessage, SDKFileAttachment, SDKSystemMessage, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKStatusMessage, SDKAPIRetryMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKTaskUpdatedMessage, SDKBackgroundTasksChangedMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKPermissionDenial, SDKPermissionDeniedMessage, SDKPermissionDeniedReasonType, SDKMessage, } from './messages.js';
|
|
23
|
+
export type { SDKAssistantMessage, SDKToolNonExecutionKind, SDKToolResultMeta, SDKUserMessage, SDKUserMessageReplay, SDKResultSuccess, SDKResultError, SDKResultMessage, SDKFileAttachment, SDKSystemMessage, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKStatusMessage, SDKAPIRetryMessage, SDKModelQueueStatusMessage, SDKControlRequestProgressMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKTaskUpdatedMessage, SDKBackgroundTasksChangedMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKMemoryGenerationMessage, SDKMemoryConsumptionMessage, SDKPermissionDenial, SDKPermissionDeniedMessage, SDKPermissionDeniedReasonType, SDKMessage, } from './messages.js';
|
|
23
24
|
export type { BaseHookInput, PreToolUseHookInput, PostToolUseHookInput, PostToolUseFailureHookInput, UserPromptSubmitHookInput, SessionStartHookInput, SessionEndHookInput, StopHookInput, StopFailureHookInput, SubagentStartHookInput, SubagentStopHookInput, PreCompactHookInput, PostCompactHookInput, PermissionRequestHookInput, PermissionDeniedHookInput, SetupHookInput, TeammateIdleHookInput, TaskCreatedHookInput, TaskCompletedHookInput, ElicitationHookInput, ElicitationResultHookInput, ConfigChangeHookInput, WorktreeCreateHookInput, WorktreeRemoveHookInput, InstructionsLoadedHookInput, CwdChangedHookInput, FileChangedHookInput, HookInput, PreToolUseHookSpecificOutput, PostToolUseHookSpecificOutput, PostToolUseFailureHookSpecificOutput, UserPromptSubmitHookSpecificOutput, SessionStartHookSpecificOutput, SetupHookSpecificOutput, SubagentStartHookSpecificOutput, PermissionRequestHookSpecificOutput, ElicitationHookSpecificOutput, ElicitationResultHookSpecificOutput, CwdChangedHookSpecificOutput, FileChangedHookSpecificOutput, WorktreeCreateHookSpecificOutput, SyncHookJSONOutput, AsyncHookJSONOutput, HookJSONOutput, HookEvent, } from './hooks.js';
|
|
24
25
|
export type { AgentMcpServerSpec, AgentDefinition, AgentInfo, AgentMemoryScope, } from './agents.js';
|
|
25
26
|
export { QoderModelPurpose } from './control.js';
|
|
26
|
-
export type { SDKControlRequest, SDKControlResponse, SDKControlCancelRequest, SDKControlInterruptRequest, SDKControlInterruptResponse, SDKControlPermissionRequest, SDKControlInitializeRequest, SDKControlSetPermissionModeRequest, SDKControlSetModelRequest, SDKControlGenerateSessionTitleRequest, SDKControlGenerateSessionTitleResponse, SDKControlAddDirectoriesRequest, SDKControlAddDirectoriesResponse, SDKControlGetModelPolicyRequest, SDKControlGetModelPolicyResponse, SDKControlSetMaxThinkingTokensRequest, SDKControlMcpStatusRequest, SDKControlGetContextUsageRequest, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAccountInfoRequest, SDKHookCallbackRequest, SDKControlMcpMessageRequest, SDKControlRewindFilesRequest, SDKControlRewindRequest, SDKControlCancelAsyncMessageRequest, SDKControlSeedReadStateRequest, SDKControlMcpSetServersRequest, SDKControlReloadPluginsRequest, SDKControlMcpReconnectRequest, SDKControlMcpToggleRequest, SDKControlApplyFlagSettingsRequest, SDKControlGetSettingsRequest, SDKControlElicitationRequest, SDKControlEndSessionRequest, SDKControlChannelEnableRequest, SDKControlMcpInjectTokenRequest, SDKControlMcpAuthenticateRequest, SDKControlMcpOAuthCallbackUrlRequest, SDKControlMcpClearAuthRequest, SDKControlRequestInner, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlReloadPluginsResponse, SDKControlMcpStatusResponse, SDKControlMcpSetServersResponse, SDKControlMcpAuthenticateResponse, SDKControlGetByokConfigRequest, SDKControlGetByokConfigResponse, SDKControlValidateByokModelRequest, SDKControlValidateByokModelResponse, BYOKModelValidationInput, BYOKProviderInfo, BYOKFieldInfo, BYOKModelTypeInfo, BYOKModelInfo, CustomModel, SDKControlListPluginsRequest, SDKControlListPluginsResponse, SDKControlStopTaskRequest, SDKControlBackgroundTasksRequest, SDKControlBackgroundTasksResponse, SDKKeepAliveMessage, StdoutMessage, ControlMcpServerConfig, } from './control.js';
|
|
27
|
+
export type { SDKControlRequest, SDKControlResponse, SDKControlCancelRequest, SDKControlInterruptRequest, SDKControlInterruptResponse, SDKControlPermissionRequest, SDKControlInitializeRequest, SDKControlSetPermissionModeRequest, SDKControlSetModelRequest, SDKControlGenerateSessionTitleRequest, SDKControlGenerateSessionTitleResponse, SideQuestionHistoryEntry, AskSideQuestionOptions, SideQuestionRefusalFallback, SideQuestionResult, SDKControlSideQuestionRequest, SDKControlSideQuestionResponse, SDKControlAddDirectoriesRequest, SDKControlAddDirectoriesResponse, SDKControlGetModelPolicyRequest, SDKControlGetModelPolicyResponse, SDKControlSetMaxThinkingTokensRequest, SDKControlMcpStatusRequest, SDKControlGetContextUsageRequest, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAccountInfoRequest, SDKHookCallbackRequest, SDKControlMcpMessageRequest, SDKControlRewindFilesRequest, SDKControlRewindRequest, SDKControlCancelAsyncMessageRequest, SDKControlSeedReadStateRequest, SDKControlMcpSetServersRequest, SDKControlReloadPluginsRequest, SDKControlMcpReconnectRequest, SDKControlMcpToggleRequest, SDKControlApplyFlagSettingsRequest, SDKControlGetSettingsRequest, SDKControlElicitationRequest, SDKControlEndSessionRequest, SDKControlChannelEnableRequest, SDKControlMcpInjectTokenRequest, SDKControlMcpAuthenticateRequest, SDKControlMcpOAuthCallbackUrlRequest, SDKControlMcpClearAuthRequest, SDKControlRequestInner, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlReloadPluginsResponse, SDKControlMcpStatusResponse, SDKControlMcpSetServersResponse, SDKControlMcpAuthenticateResponse, SDKControlGetByokConfigRequest, SDKControlGetByokConfigResponse, SDKControlValidateByokModelRequest, SDKControlValidateByokModelResponse, BYOKModelValidationInput, BYOKProviderInfo, BYOKFieldInfo, BYOKModelTypeInfo, BYOKModelInfo, CustomModel, SDKControlListPluginsRequest, SDKControlListPluginsResponse, SDKControlStopTaskRequest, SDKControlBackgroundTasksRequest, SDKControlBackgroundTasksResponse, SDKControlMemoryShouldGenerateRequest, SDKControlFlushMemoryRequest, SDKControlRefreshMemoryRequest, SDKKeepAliveMessage, StdoutMessage, ControlMcpServerConfig, } from './control.js';
|
package/dist/protocol/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var p="1.2.0";var r=["l1StaticCheck","l2LightweightScan","l3DeepScan"];function i(e){if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError("securityScan must be an object.");let t=new Set(r),s=Object.keys(e).filter(o=>!t.has(o));if(s.length>0)throw new TypeError(`securityScan contains unknown option${s.length===1?"":"s"}: ${s.join(", ")}.`);for(let o of r){let n=e[o];if(n!==void 0&&typeof n!="boolean")throw new TypeError(`securityScan.${o} must be a boolean.`)}return{l1StaticCheck:e.l1StaticCheck??!1,l2LightweightScan:e.l2LightweightScan??!1,l3DeepScan:e.l3DeepScan??!1}}function a(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function l(e={}){let t={...e.settings??{}},s=e.aiCodeTracking?.installGitCommitHook;if(s!==void 0){let o=t.aiCodeTracking;t.aiCodeTracking={...a(o)?o:{},installGitCommitHook:s}}return e.securityScan!==void 0&&(t.securityScan=i(e.securityScan)),t}function u(e={}){let t=l(e);return Object.keys(t).length===0?[]:["--settings",JSON.stringify(t)]}var S={Main:"main",Plan:"plan",Task:"task",Compact:"compact",Title:"title",Suggestion:"suggestion",Generate:"generate",HookPrompt:"hook_prompt",Subagent:"subagent",WebFetch:"web_fetch",ImageGen:"image_gen",Compression:"compression",Utility:"utility"};export{S as QoderModelPurpose,p as WIRE_PROTOCOL_VERSION,l as buildQoderCliFlagSettings,u as buildQoderCliFlagSettingsArgs};
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import type { SecurityScanOptions } from '../types/options.js';
|
|
6
7
|
/**
|
|
7
8
|
* Startup-only AI code tracking options exposed by the Agent SDK.
|
|
8
9
|
*
|
|
@@ -21,6 +22,7 @@ export type AICodeTrackingLaunchOptions = {
|
|
|
21
22
|
};
|
|
22
23
|
export type QoderCliFlagSettings = Record<string, unknown> & {
|
|
23
24
|
aiCodeTracking?: Record<string, unknown> & AICodeTrackingLaunchOptions;
|
|
25
|
+
securityScan?: Required<SecurityScanOptions>;
|
|
24
26
|
};
|
|
25
27
|
export type QoderAgentLaunchOptions = {
|
|
26
28
|
/**
|
|
@@ -31,6 +33,8 @@ export type QoderAgentLaunchOptions = {
|
|
|
31
33
|
* SDK-facing convenience options for AI code statistics.
|
|
32
34
|
*/
|
|
33
35
|
aiCodeTracking?: AICodeTrackingLaunchOptions;
|
|
36
|
+
/** SDK-native code security capabilities. Omitted switches are disabled. */
|
|
37
|
+
securityScan?: SecurityScanOptions;
|
|
34
38
|
};
|
|
35
39
|
/**
|
|
36
40
|
* Merge SDK launch options into a single qodercli flag-settings object.
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import type { NonNullableUsage } from './common.js';
|
|
2
|
+
/** Native delegates behavior to CLI defaults; custom applies partial SDK overrides. */
|
|
3
|
+
export type MemoryMode = 'native' | 'custom';
|
|
4
|
+
export type MemoryRootAccess = 'read' | 'read-write';
|
|
5
|
+
export type MemoryRoot = {
|
|
6
|
+
/** Stable caller-defined identifier used in prompts, initialization, and generation results. */
|
|
7
|
+
id: string;
|
|
8
|
+
/** Directory path on the machine running qodercli. */
|
|
9
|
+
path: string;
|
|
10
|
+
/** Root access granted to memory agents. Defaults to "read-write". */
|
|
11
|
+
access?: MemoryRootAccess;
|
|
12
|
+
/** Relative index path inside this root. Omit when every file, including MEMORY.md, is content. */
|
|
13
|
+
indexFile?: string;
|
|
14
|
+
};
|
|
15
|
+
export type MemoryGenerationGateInput = {
|
|
16
|
+
/** Current CLI session identifier. */
|
|
17
|
+
sessionId: string;
|
|
18
|
+
/** Current model request identifier, when available. */
|
|
19
|
+
requestId?: string;
|
|
20
|
+
/** Current logical turn request-set identifier, when available. */
|
|
21
|
+
requestSetId?: string;
|
|
22
|
+
/** One-based SDK memory TurnComplete sequence number. */
|
|
23
|
+
turnIndex: number;
|
|
24
|
+
/** Current CLI working directory. */
|
|
25
|
+
cwd: string;
|
|
26
|
+
/** User prompt for the completed turn. */
|
|
27
|
+
prompt: string;
|
|
28
|
+
/** Final assistant response for the completed turn. */
|
|
29
|
+
response: string;
|
|
30
|
+
};
|
|
31
|
+
export type MemoryGenerationGateResult = {
|
|
32
|
+
/** True starts generation; false emits a skipped result. */
|
|
33
|
+
run: boolean;
|
|
34
|
+
/** Optional product-readable decision reason. */
|
|
35
|
+
reason?: string;
|
|
36
|
+
};
|
|
37
|
+
export type SerializableMemoryGenerationOptions = {
|
|
38
|
+
/** Defaults to true. */
|
|
39
|
+
enabled?: boolean;
|
|
40
|
+
roots?: MemoryRoot[];
|
|
41
|
+
prompt?: string;
|
|
42
|
+
turnComplete?: {
|
|
43
|
+
/** Defaults to true when generation is enabled. */
|
|
44
|
+
enabled?: boolean;
|
|
45
|
+
/** SDK process callback identifier used by the CLI control protocol. */
|
|
46
|
+
shouldGenerateCallbackId?: string;
|
|
47
|
+
/** Callback timeout in milliseconds. */
|
|
48
|
+
timeoutMs?: number;
|
|
49
|
+
/** Error/timeout result mapping for the product gate. */
|
|
50
|
+
onGateError?: 'skip' | 'report_failed';
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
export type MemoryConsumptionFile = {
|
|
54
|
+
/** Stable caller-defined identifier used as the injected section name and in results. */
|
|
55
|
+
id: string;
|
|
56
|
+
/** File path on the machine running qodercli. */
|
|
57
|
+
path: string;
|
|
58
|
+
/** Defaults to false. A read failure aborts only when this is true and failureMode is "fail_query". */
|
|
59
|
+
required?: boolean;
|
|
60
|
+
};
|
|
61
|
+
export type SerializableMemoryConsumptionOptions = {
|
|
62
|
+
/** Defaults to true. */
|
|
63
|
+
enabled?: boolean;
|
|
64
|
+
files?: MemoryConsumptionFile[];
|
|
65
|
+
maxTokens?: number;
|
|
66
|
+
overflow?: 'truncate' | 'fail_query';
|
|
67
|
+
failureMode?: 'best_effort' | 'fail_query';
|
|
68
|
+
};
|
|
69
|
+
type SerializableMemoryConfigBase = {
|
|
70
|
+
/** Marks this memory configuration as originating from the Agent SDK. */
|
|
71
|
+
requester: 'sdk';
|
|
72
|
+
};
|
|
73
|
+
export type SerializableMemoryConfig = SerializableMemoryConfigBase & ({
|
|
74
|
+
mode: 'native';
|
|
75
|
+
generation?: never;
|
|
76
|
+
consumption?: never;
|
|
77
|
+
} | {
|
|
78
|
+
mode: 'custom';
|
|
79
|
+
generation?: SerializableMemoryGenerationOptions;
|
|
80
|
+
consumption?: SerializableMemoryConsumptionOptions;
|
|
81
|
+
});
|
|
82
|
+
export type EffectiveMemoryConfig = {
|
|
83
|
+
enabled: boolean;
|
|
84
|
+
requester: 'sdk';
|
|
85
|
+
mode?: MemoryMode;
|
|
86
|
+
generationEnabled: boolean;
|
|
87
|
+
turnCompleteEnabled: boolean;
|
|
88
|
+
consumptionEnabled: boolean;
|
|
89
|
+
roots: Array<{
|
|
90
|
+
id: string;
|
|
91
|
+
access: MemoryRootAccess;
|
|
92
|
+
}>;
|
|
93
|
+
};
|
|
94
|
+
export type MemoryGenerationFailedFile = {
|
|
95
|
+
rootId: string;
|
|
96
|
+
path: string;
|
|
97
|
+
error?: string;
|
|
98
|
+
};
|
|
99
|
+
export type MemoryGenerationResult = {
|
|
100
|
+
/** saved means every written file succeeded; partial means at least one file succeeded and one failed. */
|
|
101
|
+
status: 'saved' | 'partial' | 'no_change' | 'skipped' | 'failed';
|
|
102
|
+
attemptId: string;
|
|
103
|
+
/** Human-readable diagnostic detail. */
|
|
104
|
+
reason?: string;
|
|
105
|
+
origin: 'main_session' | 'turn_complete' | 'dream';
|
|
106
|
+
sourceRequestIds?: string[];
|
|
107
|
+
modelRequestIds?: string[];
|
|
108
|
+
writtenFiles: Array<{
|
|
109
|
+
rootId: string;
|
|
110
|
+
path: string;
|
|
111
|
+
}>;
|
|
112
|
+
/** Files that were not written successfully after the attempt completed. */
|
|
113
|
+
failedFiles: MemoryGenerationFailedFile[];
|
|
114
|
+
/** True when a native or explicitly declared custom index file changed. */
|
|
115
|
+
indexUpdated?: boolean;
|
|
116
|
+
/** True when at least one non-index memory content file changed. */
|
|
117
|
+
contentUpdated?: boolean;
|
|
118
|
+
durationMs: number;
|
|
119
|
+
usage?: NonNullableUsage;
|
|
120
|
+
/** Missing server-side credits remain undefined; callers must not infer them. */
|
|
121
|
+
credits?: number;
|
|
122
|
+
};
|
|
123
|
+
export type MemoryConsumptionResult = {
|
|
124
|
+
status: 'success' | 'partial' | 'failed';
|
|
125
|
+
files: Array<{
|
|
126
|
+
id: string;
|
|
127
|
+
path: string;
|
|
128
|
+
status: 'loaded' | 'missing' | 'failed' | 'truncated';
|
|
129
|
+
/** Human-readable diagnostic detail. */
|
|
130
|
+
error?: string;
|
|
131
|
+
}>;
|
|
132
|
+
};
|
|
133
|
+
export {};
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import type { BetaMessage, BetaRawMessageStreamEvent, MessageParam, UUID, SDKAssistantMessageError, FastModeState, ApiKeySource, ModelUsage, NonNullableUsage, PluginInfo, SDKStatus } from './common.js';
|
|
15
15
|
import type { PermissionMode } from './permissions.js';
|
|
16
|
+
import type { MemoryConsumptionResult, MemoryGenerationResult } from './memory.js';
|
|
16
17
|
export type SDKAssistantMessage = {
|
|
17
18
|
type: 'assistant';
|
|
18
19
|
message: BetaMessage;
|
|
@@ -49,6 +50,7 @@ export type SDKUserMessage = {
|
|
|
49
50
|
type: 'user';
|
|
50
51
|
message: MessageParam;
|
|
51
52
|
parent_tool_use_id: string | null;
|
|
53
|
+
custom_context?: Record<string, string>;
|
|
52
54
|
file_attachments?: SDKFileAttachment[];
|
|
53
55
|
isSynthetic?: boolean;
|
|
54
56
|
tool_use_result?: unknown;
|
|
@@ -218,6 +220,36 @@ export type SDKAPIRetryMessage = {
|
|
|
218
220
|
uuid: UUID;
|
|
219
221
|
session_id: string;
|
|
220
222
|
};
|
|
223
|
+
/** Model capacity queue progress emitted while qodercli waits and retries. */
|
|
224
|
+
export type SDKModelQueueStatusMessage = {
|
|
225
|
+
type: 'system';
|
|
226
|
+
subtype: 'model_queue_status';
|
|
227
|
+
status: 'queued' | 'ready';
|
|
228
|
+
request_id: string;
|
|
229
|
+
request_set_id: string;
|
|
230
|
+
model_key: string;
|
|
231
|
+
queue_type?: string;
|
|
232
|
+
queue_count?: number;
|
|
233
|
+
wait_time_ms?: number;
|
|
234
|
+
queue_wait_elapsed_ms?: number;
|
|
235
|
+
queue_max_wait_ms?: number;
|
|
236
|
+
service_available?: boolean;
|
|
237
|
+
uuid: UUID;
|
|
238
|
+
session_id: string;
|
|
239
|
+
};
|
|
240
|
+
/** Progress emitted for an SDK-initiated side question. */
|
|
241
|
+
export type SDKControlRequestProgressMessage = {
|
|
242
|
+
type: 'system';
|
|
243
|
+
subtype: 'control_request_progress';
|
|
244
|
+
request_id: string;
|
|
245
|
+
status: 'started' | 'api_retry';
|
|
246
|
+
attempt?: number;
|
|
247
|
+
max_retries?: number;
|
|
248
|
+
retry_delay_ms?: number;
|
|
249
|
+
error_status?: number | null;
|
|
250
|
+
uuid: UUID;
|
|
251
|
+
session_id: string;
|
|
252
|
+
};
|
|
221
253
|
export type SDKHookStartedMessage = {
|
|
222
254
|
type: 'system';
|
|
223
255
|
subtype: 'hook_started';
|
|
@@ -389,6 +421,20 @@ export type SDKCloudAgentEventMessage = {
|
|
|
389
421
|
uuid: UUID;
|
|
390
422
|
session_id: string;
|
|
391
423
|
};
|
|
424
|
+
export type SDKMemoryGenerationMessage = {
|
|
425
|
+
type: 'system';
|
|
426
|
+
subtype: 'memory_generation';
|
|
427
|
+
result: MemoryGenerationResult;
|
|
428
|
+
uuid: UUID;
|
|
429
|
+
session_id: string;
|
|
430
|
+
};
|
|
431
|
+
export type SDKMemoryConsumptionMessage = {
|
|
432
|
+
type: 'system';
|
|
433
|
+
subtype: 'memory_consumption';
|
|
434
|
+
result: MemoryConsumptionResult;
|
|
435
|
+
uuid: UUID;
|
|
436
|
+
session_id: string;
|
|
437
|
+
};
|
|
392
438
|
export type SDKPermissionDenial = {
|
|
393
439
|
tool_name: string;
|
|
394
440
|
tool_use_id: string;
|
|
@@ -410,4 +456,4 @@ export type SDKPermissionDeniedMessage = {
|
|
|
410
456
|
decision_reason_type?: SDKPermissionDeniedReasonType;
|
|
411
457
|
decision_reason?: string;
|
|
412
458
|
};
|
|
413
|
-
export type SDKMessage = SDKAssistantMessage | SDKUserMessage | SDKUserMessageReplay | SDKResultMessage | SDKSystemMessage | SDKPermissionDeniedMessage | SDKPartialAssistantMessage | SDKCompactBoundaryMessage | SDKStatusMessage | SDKAPIRetryMessage | SDKHookStartedMessage | SDKHookProgressMessage | SDKHookResponseMessage | SDKTaskNotificationMessage | SDKTaskStartedMessage | SDKTaskProgressMessage | SDKTaskUpdatedMessage | SDKBackgroundTasksChangedMessage | SDKSessionStateChangedMessage | SDKSessionTitleChangedMessage | SDKFilesPersistedEvent | SDKElicitationCompleteMessage | SDKPromptSuggestionMessage | SDKCloudAgentEventMessage;
|
|
459
|
+
export type SDKMessage = SDKAssistantMessage | SDKUserMessage | SDKUserMessageReplay | SDKResultMessage | SDKSystemMessage | SDKPermissionDeniedMessage | SDKPartialAssistantMessage | SDKCompactBoundaryMessage | SDKStatusMessage | SDKAPIRetryMessage | SDKModelQueueStatusMessage | SDKControlRequestProgressMessage | SDKHookStartedMessage | SDKHookProgressMessage | SDKHookResponseMessage | SDKTaskNotificationMessage | SDKTaskStartedMessage | SDKTaskProgressMessage | SDKTaskUpdatedMessage | SDKBackgroundTasksChangedMessage | SDKSessionStateChangedMessage | SDKSessionTitleChangedMessage | SDKFilesPersistedEvent | SDKElicitationCompleteMessage | SDKPromptSuggestionMessage | SDKCloudAgentEventMessage | SDKMemoryGenerationMessage | SDKMemoryConsumptionMessage;
|
|
@@ -26,7 +26,7 @@ import type { Transport } from '../core/transport.js';
|
|
|
26
26
|
import type { SDKMessage, SDKUserMessage } from '../types/messages.js';
|
|
27
27
|
import type { InternalQuery, OnElicitation } from '../types/options.js';
|
|
28
28
|
import type { FetchJobToken, FetchServiceAccountToken } from '../types/auth.js';
|
|
29
|
-
import type { SDKControlInterruptResponse, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlGenerateSessionTitleResponse, SDKControlAddDirectoriesResponse, SDKControlReloadPluginsResponse } from '../types/control.js';
|
|
29
|
+
import type { SDKControlInterruptResponse, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlGenerateSessionTitleResponse, AskSideQuestionOptions, SideQuestionResult, SDKControlAddDirectoriesResponse, SDKControlReloadPluginsResponse } from '../types/control.js';
|
|
30
30
|
import type { PermissionMode, CanUseTool } from '../types/permissions.js';
|
|
31
31
|
import type { HookCallbackMatcher } from '../types/hooks.js';
|
|
32
32
|
import type { HookEvent as InternalHookEvent } from '../protocol/index.js';
|
|
@@ -40,6 +40,7 @@ import type { SessionStore, SessionStoreFlush } from '../session/session-store.j
|
|
|
40
40
|
import type { PluginDetails } from '../types/plugins.js';
|
|
41
41
|
import type { ModelInfo, SlashCommand, AccountInfo, UsageInfo } from '../types/common.js';
|
|
42
42
|
import type { ModelPolicyProvider } from '../types/model-policy-provider.js';
|
|
43
|
+
import type { MemoryRuntimeCallbacks, SerializableMemoryConfig } from '../types/memory.js';
|
|
43
44
|
import type { BYOKModelValidationInput, BYOKProviderInfo } from '../types/byok.js';
|
|
44
45
|
/** Init config passed to the initialize control request. */
|
|
45
46
|
type InitConfig = {
|
|
@@ -50,10 +51,14 @@ type InitConfig = {
|
|
|
50
51
|
skills?: string[];
|
|
51
52
|
promptSuggestions?: boolean;
|
|
52
53
|
enableFileCheckpointing?: boolean;
|
|
54
|
+
memory?: SerializableMemoryConfig;
|
|
55
|
+
customContext?: Record<string, string>;
|
|
53
56
|
};
|
|
54
57
|
export declare class QueryRunner implements InternalQuery {
|
|
58
|
+
private static readonly CUSTOM_CONTEXT_CAPABILITY;
|
|
55
59
|
private static readonly INITIALIZE_TIMEOUT_MS;
|
|
56
60
|
private static readonly BACKGROUND_TASKS_CAPABILITY;
|
|
61
|
+
private static readonly SIDE_QUESTION_CAPABILITY;
|
|
57
62
|
private readonly transport;
|
|
58
63
|
private readonly inputStream;
|
|
59
64
|
private readonly pendingRequests;
|
|
@@ -78,6 +83,7 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
78
83
|
private readonly resolveModel?;
|
|
79
84
|
private readonly resolveModelTimeoutMs;
|
|
80
85
|
private readonly transcriptMirrorBatcher?;
|
|
86
|
+
private readonly memoryCallbacks?;
|
|
81
87
|
private initResponse?;
|
|
82
88
|
private initializationPromise?;
|
|
83
89
|
private resultMessage?;
|
|
@@ -86,9 +92,13 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
86
92
|
private authExpiredFired;
|
|
87
93
|
private protocolHandshakeValidated;
|
|
88
94
|
private cliCapabilities?;
|
|
95
|
+
private customContextCapabilityWarningEmitted;
|
|
89
96
|
private firstResultReceived;
|
|
90
97
|
private firstResultReceivedResolve?;
|
|
91
|
-
|
|
98
|
+
private memoryFlushPromise?;
|
|
99
|
+
private memoryEndInputPromise?;
|
|
100
|
+
private closePromise?;
|
|
101
|
+
constructor(transport: Transport, isSingleTurn: boolean, canUseTool?: CanUseTool, hooks?: Partial<Record<InternalHookEvent, HookCallbackMatcher[]>>, abortController?: AbortController, sdkMcpServers?: Map<string, McpServer>, initConfig?: InitConfig, onElicitation?: OnElicitation, diagnostics?: DiagnosticsSink, onAuthExpired?: () => void, controlRequestTimeoutMs?: number, sdkMcpTransports?: Map<string, SdkMcpTransport>, pendingMcpResponses?: Map<string, PendingMcpResponse>, fetchJobToken?: FetchJobToken, resolveModel?: ModelPolicyProvider, resolveModelTimeoutMs?: number, sessionStore?: SessionStore, sessionStoreFlush?: SessionStoreFlush, sdkMcpToolOverrides?: Record<string, Record<string, McpToolRuntimeOverride>>, fetchServiceAccountToken?: FetchServiceAccountToken, memoryCallbacks?: MemoryRuntimeCallbacks);
|
|
92
102
|
private getRecord;
|
|
93
103
|
private normalizeLogPreview;
|
|
94
104
|
private extractMessagePreview;
|
|
@@ -111,6 +121,9 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
111
121
|
*/
|
|
112
122
|
private readMessages;
|
|
113
123
|
private notifyAuthExpiredIfNeeded;
|
|
124
|
+
private dispatchMemoryCallbacks;
|
|
125
|
+
private flushMemoryBeforeEndInput;
|
|
126
|
+
private performFlushMemoryBeforeEndInput;
|
|
114
127
|
/**
|
|
115
128
|
* Send a control request to the CLI and wait for the response.
|
|
116
129
|
*
|
|
@@ -225,6 +238,7 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
225
238
|
generateSessionTitle(description: string, options?: {
|
|
226
239
|
persist?: boolean;
|
|
227
240
|
}): Promise<SDKControlGenerateSessionTitleResponse['title']>;
|
|
241
|
+
askSideQuestion(question: string, options?: AskSideQuestionOptions): Promise<SideQuestionResult | null>;
|
|
228
242
|
/**
|
|
229
243
|
* Add directories to the running session workspace.
|
|
230
244
|
*/
|
|
@@ -306,6 +320,10 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
306
320
|
* Seed read state for a file.
|
|
307
321
|
*/
|
|
308
322
|
seedReadState(path: string, mtime: number): Promise<void>;
|
|
323
|
+
flushMemory(): Promise<void>;
|
|
324
|
+
private performMemoryFlush;
|
|
325
|
+
refreshMemory(): Promise<void>;
|
|
326
|
+
private requireSdkMemoryEnabled;
|
|
309
327
|
/**
|
|
310
328
|
* Reconnect an MCP server.
|
|
311
329
|
*/
|
|
@@ -366,6 +384,7 @@ export declare class QueryRunner implements InternalQuery {
|
|
|
366
384
|
* consumer queue that no more messages will arrive.
|
|
367
385
|
*/
|
|
368
386
|
close(): Promise<void>;
|
|
387
|
+
private performClose;
|
|
369
388
|
/**
|
|
370
389
|
* Async dispose support.
|
|
371
390
|
*
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 1,
|
|
3
3
|
"brand": "global",
|
|
4
|
-
"sdkVersion": "1.0.
|
|
5
|
-
"qoderCliVersion": "1.1.
|
|
4
|
+
"sdkVersion": "1.0.24",
|
|
5
|
+
"qoderCliVersion": "1.1.25",
|
|
6
6
|
"defaultTransport": "worker",
|
|
7
7
|
"workerRuntime": {
|
|
8
8
|
"packaged": false,
|
|
9
9
|
"delivery": "install",
|
|
10
10
|
"source": "qodercli-worker-runtime",
|
|
11
|
-
"urlTemplate": "https://download.qoder.com/qodercli/releases/1.1.
|
|
11
|
+
"urlTemplate": "https://download.qoder.com/qodercli/releases/1.1.25/qodercli-worker-runtime-{target}.tgz",
|
|
12
12
|
"artifactNameTemplate": "qodercli-worker-runtime-{target}.tgz",
|
|
13
|
-
"sdkVersion": "1.0.
|
|
14
|
-
"qoderCliVersion": "1.1.
|
|
13
|
+
"sdkVersion": "1.0.24",
|
|
14
|
+
"qoderCliVersion": "1.1.25"
|
|
15
15
|
}
|
|
16
16
|
}
|
package/dist/types/control.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* shim so existing SDK consumer imports keep working.
|
|
6
6
|
*/
|
|
7
7
|
export type { QoderModelPurpose } from '../protocol/index.js';
|
|
8
|
-
export type { SDKControlRequest, SDKControlResponse, SDKControlCancelRequest, SDKControlInterruptRequest, SDKControlInterruptResponse, SDKControlPermissionRequest, SDKControlInitializeRequest, SDKControlSetPermissionModeRequest, SDKControlSetModelRequest, SDKControlGenerateSessionTitleRequest, SDKControlGenerateSessionTitleResponse, SDKControlAddDirectoriesRequest, SDKControlAddDirectoriesResponse, SDKControlGetModelPolicyRequest, SDKControlGetByokConfigRequest, SDKControlGetByokConfigResponse, SDKControlValidateByokModelRequest, SDKControlValidateByokModelResponse, SDKControlSetMaxThinkingTokensRequest, SDKControlMcpStatusRequest, SDKControlGetContextUsageRequest, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAccountInfoRequest, SDKHookCallbackRequest, SDKControlMcpMessageRequest, SDKControlRewindFilesRequest, SDKControlRewindRequest, SDKControlCancelAsyncMessageRequest, SDKControlSeedReadStateRequest, SDKControlMcpSetServersRequest, SDKControlReloadPluginsRequest, SDKControlMcpReconnectRequest, SDKControlMcpToggleRequest, SDKControlApplyFlagSettingsRequest, SDKControlGetSettingsRequest, SDKControlElicitationRequest, SDKControlEndSessionRequest, SDKControlChannelEnableRequest, SDKControlMcpInjectTokenRequest, SDKControlMcpAuthenticateRequest, SDKControlMcpOAuthCallbackUrlRequest, SDKControlMcpClearAuthRequest, SDKControlRequestInner, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlReloadPluginsResponse, SDKControlListPluginsRequest, SDKControlListPluginsResponse, SDKControlStopTaskRequest, SDKControlBackgroundTasksRequest, SDKControlBackgroundTasksResponse, SDKControlMcpStatusResponse, SDKControlMcpSetServersResponse, SDKKeepAliveMessage, StdoutMessage, ControlMcpServerConfig, BYOKModelValidationInput, } from '../protocol/index.js';
|
|
8
|
+
export type { SDKControlRequest, SDKControlResponse, SDKControlCancelRequest, SDKControlInterruptRequest, SDKControlInterruptResponse, SDKControlPermissionRequest, SDKControlInitializeRequest, SDKControlSetPermissionModeRequest, SDKControlSetModelRequest, SDKControlGenerateSessionTitleRequest, SDKControlGenerateSessionTitleResponse, SideQuestionHistoryEntry, AskSideQuestionOptions, SideQuestionRefusalFallback, SideQuestionResult, SDKControlSideQuestionRequest, SDKControlSideQuestionResponse, SDKControlAddDirectoriesRequest, SDKControlAddDirectoriesResponse, SDKControlGetModelPolicyRequest, SDKControlGetByokConfigRequest, SDKControlGetByokConfigResponse, SDKControlValidateByokModelRequest, SDKControlValidateByokModelResponse, SDKControlSetMaxThinkingTokensRequest, SDKControlMcpStatusRequest, SDKControlGetContextUsageRequest, SDKControlGetUsageInfoRequest, SDKControlGetUsageInfoResponse, SDKControlAccountInfoRequest, SDKHookCallbackRequest, SDKControlMcpMessageRequest, SDKControlRewindFilesRequest, SDKControlRewindRequest, SDKControlCancelAsyncMessageRequest, SDKControlSeedReadStateRequest, SDKControlMcpSetServersRequest, SDKControlReloadPluginsRequest, SDKControlMcpReconnectRequest, SDKControlMcpToggleRequest, SDKControlApplyFlagSettingsRequest, SDKControlGetSettingsRequest, SDKControlElicitationRequest, SDKControlEndSessionRequest, SDKControlChannelEnableRequest, SDKControlMcpInjectTokenRequest, SDKControlMcpAuthenticateRequest, SDKControlMcpOAuthCallbackUrlRequest, SDKControlMcpClearAuthRequest, SDKControlRequestInner, SDKControlInitializeResponse, SDKControlGetContextUsageResponse, SDKControlReloadPluginsResponse, SDKControlListPluginsRequest, SDKControlListPluginsResponse, SDKControlStopTaskRequest, SDKControlBackgroundTasksRequest, SDKControlBackgroundTasksResponse, SDKControlMemoryShouldGenerateRequest, SDKControlFlushMemoryRequest, SDKControlRefreshMemoryRequest, SDKControlMcpStatusResponse, SDKControlMcpSetServersResponse, SDKKeepAliveMessage, StdoutMessage, ControlMcpServerConfig, BYOKModelValidationInput, } from '../protocol/index.js';
|
|
9
9
|
/** Wire format for fetch_job_token inbound control request from CLI. */
|
|
10
10
|
export type FetchJobTokenWireRequest = {
|
|
11
11
|
subtype: 'fetch_job_token';
|
package/dist/types/index.d.ts
CHANGED
|
@@ -4,12 +4,13 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export * from './common.js';
|
|
6
6
|
export * from './messages.js';
|
|
7
|
+
export * from './memory.js';
|
|
7
8
|
export type { DefaultRuntimeTransport } from '../core/default-runtime.js';
|
|
8
9
|
export type { QueryTransportCreateOptions, QueryTransportProviderOption, } from '../core/query-transport.js';
|
|
9
10
|
export type { ProcessTransportOptions } from '../core/process-transport.js';
|
|
10
11
|
export type { WorkerRuntimeTransportOptions, WorkerTransportOptions, } from '../core/worker-transport.js';
|
|
11
12
|
export type { QueryTransportProvider, Transport, } from '../core/transport.js';
|
|
12
|
-
export type { ElicitationRequest, ElicitationResult, OnElicitation, PromptRequestOption, PromptRequest, PromptResponse, Options, QueryTransportOptions, SpawnOptions, SpawnedProcess, Query, } from './options.js';
|
|
13
|
+
export type { ElicitationRequest, ElicitationResult, OnElicitation, PromptRequestOption, PromptRequest, PromptResponse, SecurityScanOptions, Options, QueryTransportOptions, SpawnOptions, SpawnedProcess, Query, } from './options.js';
|
|
13
14
|
export * from './permissions.js';
|
|
14
15
|
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 './hooks.js';
|
|
15
16
|
export * from './mcp.js';
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { MemoryConsumptionFile, MemoryConsumptionResult, MemoryGenerationGateInput, MemoryGenerationGateResult, MemoryGenerationResult, MemoryRoot } from '../protocol/memory.js';
|
|
2
|
+
export type { EffectiveMemoryConfig, MemoryConsumptionFile, MemoryConsumptionResult, MemoryGenerationGateInput, MemoryGenerationGateResult, MemoryGenerationResult, MemoryGenerationFailedFile, MemoryMode, MemoryRoot, MemoryRootAccess, SerializableMemoryConfig, SerializableMemoryConsumptionOptions, SerializableMemoryGenerationOptions, } from '../protocol/memory.js';
|
|
3
|
+
/** Product-side decision invoked before TurnComplete memory generation starts. */
|
|
4
|
+
export type MemoryShouldGenerate = (input: MemoryGenerationGateInput, options: {
|
|
5
|
+
signal: AbortSignal;
|
|
6
|
+
}) => Promise<MemoryGenerationGateResult>;
|
|
7
|
+
export type MemoryGenerationOptions = {
|
|
8
|
+
/** Enables automatic and active memory generation. Defaults to true. */
|
|
9
|
+
enabled?: boolean;
|
|
10
|
+
/** Memory directories available to the main agent and background memory agent. CLI defaults are used when omitted. */
|
|
11
|
+
roots?: MemoryRoot[];
|
|
12
|
+
/** Generation instructions. The CLI-owned default prompt is used when omitted. */
|
|
13
|
+
prompt?: string;
|
|
14
|
+
/** Controls generation started from the real CLI TurnComplete event. */
|
|
15
|
+
turnComplete?: {
|
|
16
|
+
/** Defaults to true when generation is enabled. */
|
|
17
|
+
enabled?: boolean;
|
|
18
|
+
/** Product-side gate called before the background memory agent starts. Omit to use only CLI built-in guards. */
|
|
19
|
+
shouldGenerate?: MemoryShouldGenerate;
|
|
20
|
+
/** Maximum time allowed for shouldGenerate. The CLI default is 10 seconds. */
|
|
21
|
+
timeoutMs?: number;
|
|
22
|
+
/** Whether callback errors/timeouts produce a skipped or failed generation result. Defaults to "skip". */
|
|
23
|
+
onGateError?: 'skip' | 'report_failed';
|
|
24
|
+
};
|
|
25
|
+
/** Called for every completed generation attempt, including saved, partial, no-change, skipped, and failed outcomes. */
|
|
26
|
+
onResult?: (result: MemoryGenerationResult) => void | Promise<void>;
|
|
27
|
+
};
|
|
28
|
+
export type MemoryConsumptionOptions = {
|
|
29
|
+
/** Enables memory consumption. Defaults to true. */
|
|
30
|
+
enabled?: boolean;
|
|
31
|
+
/** Explicit files to inject in array order. They replace CLI native auto-memory; static instructions remain. CLI native auto-memory is used when omitted. */
|
|
32
|
+
files?: MemoryConsumptionFile[];
|
|
33
|
+
/** Shared token budget for all explicit files. Omit for no explicit SDK budget. */
|
|
34
|
+
maxTokens?: number;
|
|
35
|
+
/** Behavior when explicit file content exceeds maxTokens. Defaults to "truncate". */
|
|
36
|
+
overflow?: 'truncate' | 'fail_query';
|
|
37
|
+
/** Read-failure behavior. Only required files fail the query in "fail_query" mode. Defaults to "best_effort". */
|
|
38
|
+
failureMode?: 'best_effort' | 'fail_query';
|
|
39
|
+
/** Receives per-file load status after initialization and explicit refreshes. */
|
|
40
|
+
onResult?: (result: MemoryConsumptionResult) => void | Promise<void>;
|
|
41
|
+
};
|
|
42
|
+
export type MemoryOptions = {
|
|
43
|
+
/** Uses CLI-native generation and consumption. Only result callbacks may be supplied. */
|
|
44
|
+
mode: 'native';
|
|
45
|
+
generation?: Pick<MemoryGenerationOptions, 'onResult'>;
|
|
46
|
+
consumption?: Pick<MemoryConsumptionOptions, 'onResult'>;
|
|
47
|
+
} | {
|
|
48
|
+
/** Applies supplied overrides and inherits omitted behavior from the CLI. */
|
|
49
|
+
mode: 'custom';
|
|
50
|
+
/** Memory generation overrides. Omit to use CLI generation defaults. */
|
|
51
|
+
generation?: MemoryGenerationOptions;
|
|
52
|
+
/** Memory consumption overrides. Omit to use CLI consumption defaults. */
|
|
53
|
+
consumption?: MemoryConsumptionOptions;
|
|
54
|
+
};
|
|
55
|
+
export type MemoryRuntimeCallbacks = {
|
|
56
|
+
shouldGenerateCallbacks: ReadonlyMap<string, MemoryShouldGenerate>;
|
|
57
|
+
onGenerationResult?: MemoryGenerationOptions['onResult'];
|
|
58
|
+
onConsumptionResult?: MemoryConsumptionOptions['onResult'];
|
|
59
|
+
};
|
package/dist/types/messages.d.ts
CHANGED
|
@@ -9,11 +9,12 @@ import type { SDKMessage as ProtocolSDKMessage, SDKStatusMessage as ProtocolSDKS
|
|
|
9
9
|
import type { MessageParam, UUID } from './common.js';
|
|
10
10
|
import type { PermissionMode } from './permissions.js';
|
|
11
11
|
import type { SessionKey } from '../session/session-store.js';
|
|
12
|
-
export type { SDKAssistantMessage, SDKResultSuccess, SDKResultError, SDKResultMessage, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKAPIRetryMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKTaskUpdatedMessage, SDKBackgroundTasksChangedMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKPermissionDenial, SDKToolNonExecutionKind, SDKToolResultMeta, } from '../protocol/index.js';
|
|
12
|
+
export type { SDKAssistantMessage, SDKResultSuccess, SDKResultError, SDKResultMessage, SDKPartialAssistantMessage, SDKCompactBoundaryMessage, SDKAPIRetryMessage, SDKModelQueueStatusMessage, SDKControlRequestProgressMessage, SDKHookStartedMessage, SDKHookProgressMessage, SDKHookResponseMessage, SDKTaskNotificationMessage, SDKTaskStartedMessage, SDKTaskProgressMessage, SDKTaskUpdatedMessage, SDKBackgroundTasksChangedMessage, SDKSessionStateChangedMessage, SDKSessionTitleChangedMessage, SDKFilesPersistedEvent, SDKElicitationCompleteMessage, SDKPromptSuggestionMessage, SDKCloudAgentEventMessage, SDKMemoryGenerationMessage, SDKMemoryConsumptionMessage, SDKPermissionDenial, SDKToolNonExecutionKind, SDKToolResultMeta, } from '../protocol/index.js';
|
|
13
13
|
export type SDKUserMessage = {
|
|
14
14
|
type: 'user';
|
|
15
15
|
message: MessageParam;
|
|
16
16
|
parent_tool_use_id: string | null;
|
|
17
|
+
custom_context?: Record<string, string>;
|
|
17
18
|
isSynthetic?: boolean;
|
|
18
19
|
tool_use_result?: unknown;
|
|
19
20
|
/** CLI-stamped display metadata for tool results that did not execute. */
|