fix: sync Codex app-server protocol (#77578)

* fix: sync codex app-server protocol

* docs: add codex protocol changelog

* fix: refresh codex protocol schemas
This commit is contained in:
Peter Steinberger
2026-05-05 00:43:07 +01:00
committed by GitHub
parent 0677a4f8b3
commit d522a18971
115 changed files with 3604 additions and 2594 deletions

View File

@@ -59,6 +59,7 @@ Docs: https://docs.openclaw.ai
### Fixes
- Codex plugin: mirror the experimental upstream app-server protocol and format generated TypeScript before drift checks, keeping OpenClaw's `experimentalApi` bridge compatible with latest Codex while preserving formatter gates.
- Gateway/startup: include resolved thinking and fast-mode defaults in the `agent model` startup log line, defaulting unset startup thinking to `medium` without mixing in reasoning visibility.
- Gateway/watch: suppress sync-I/O trace output during `pnpm gateway:watch --benchmark` unless explicitly requested, so CPU profiling no longer floods the terminal with stack traces.
- Gateway/watch: when benchmark sync-I/O tracing is explicitly enabled, tee trace blocks to the benchmark output log and filter them from the terminal pane while keeping normal Gateway logs visible.

View File

@@ -331,12 +331,11 @@ export function codexSandboxPolicyForTurn(
return { type: "dangerFullAccess" };
}
if (mode === "read-only") {
return { type: "readOnly", access: { type: "fullAccess" }, networkAccess: false };
return { type: "readOnly", networkAccess: false };
}
return {
type: "workspaceWrite",
writableRoots: [cwd],
readOnlyAccess: { type: "fullAccess" },
networkAccess: false,
excludeTmpdirEnvVar: false,
excludeSlashTmp: false,

View File

@@ -1,5 +1,8 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "DynamicToolCallParams",
"type": "object",
"required": ["arguments", "callId", "threadId", "tool", "turnId"],
"properties": {
"arguments": true,
"callId": {
@@ -17,8 +20,5 @@
"turnId": {
"type": "string"
}
},
"required": ["arguments", "callId", "threadId", "tool", "turnId"],
"title": "DynamicToolCallParams",
"type": "object"
}
}

View File

@@ -1,10 +1,28 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ErrorNotification",
"type": "object",
"required": ["error", "threadId", "turnId", "willRetry"],
"properties": {
"error": {
"$ref": "#/definitions/TurnError"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"willRetry": {
"type": "boolean"
}
},
"definitions": {
"CodexErrorInfo": {
"description": "This translation layer make sure that we expose codex error code in camel case.\n\nWhen an upstream HTTP status is available (for example, from the Responses API or a provider), it is forwarded in `httpStatusCode` on the relevant `codexErrorInfo` variant.",
"oneOf": [
{
"type": "string",
"enum": [
"contextWindowExceeded",
"usageLimitExceeded",
@@ -16,109 +34,110 @@
"threadRollbackFailed",
"sandboxError",
"other"
],
"type": "string"
]
},
{
"additionalProperties": false,
"type": "object",
"required": ["httpConnectionFailed"],
"properties": {
"httpConnectionFailed": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": ["integer", "null"],
"format": "uint16",
"minimum": 0.0,
"type": ["integer", "null"]
"minimum": 0.0
}
},
"type": "object"
}
}
},
"required": ["httpConnectionFailed"],
"title": "HttpConnectionFailedCodexErrorInfo",
"type": "object"
"additionalProperties": false,
"title": "HttpConnectionFailedCodexErrorInfo"
},
{
"additionalProperties": false,
"description": "Failed to connect to the response SSE stream.",
"type": "object",
"required": ["responseStreamConnectionFailed"],
"properties": {
"responseStreamConnectionFailed": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": ["integer", "null"],
"format": "uint16",
"minimum": 0.0,
"type": ["integer", "null"]
"minimum": 0.0
}
},
"type": "object"
}
}
},
"required": ["responseStreamConnectionFailed"],
"title": "ResponseStreamConnectionFailedCodexErrorInfo",
"type": "object"
"additionalProperties": false,
"title": "ResponseStreamConnectionFailedCodexErrorInfo"
},
{
"additionalProperties": false,
"description": "The response SSE stream disconnected in the middle of a turn before completion.",
"type": "object",
"required": ["responseStreamDisconnected"],
"properties": {
"responseStreamDisconnected": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": ["integer", "null"],
"format": "uint16",
"minimum": 0.0,
"type": ["integer", "null"]
"minimum": 0.0
}
},
"type": "object"
}
}
},
"required": ["responseStreamDisconnected"],
"title": "ResponseStreamDisconnectedCodexErrorInfo",
"type": "object"
"additionalProperties": false,
"title": "ResponseStreamDisconnectedCodexErrorInfo"
},
{
"additionalProperties": false,
"description": "Reached the retry limit for responses.",
"type": "object",
"required": ["responseTooManyFailedAttempts"],
"properties": {
"responseTooManyFailedAttempts": {
"type": "object",
"properties": {
"httpStatusCode": {
"type": ["integer", "null"],
"format": "uint16",
"minimum": 0.0,
"type": ["integer", "null"]
"minimum": 0.0
}
},
"type": "object"
}
}
},
"required": ["responseTooManyFailedAttempts"],
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo",
"type": "object"
"additionalProperties": false,
"title": "ResponseTooManyFailedAttemptsCodexErrorInfo"
},
{
"additionalProperties": false,
"description": "Returned when `turn/start` or `turn/steer` is submitted while the current active turn cannot accept same-turn steering, for example `/review` or manual `/compact`.",
"type": "object",
"required": ["activeTurnNotSteerable"],
"properties": {
"activeTurnNotSteerable": {
"type": "object",
"required": ["turnKind"],
"properties": {
"turnKind": {
"$ref": "#/definitions/NonSteerableTurnKind"
}
},
"required": ["turnKind"],
"type": "object"
}
}
},
"required": ["activeTurnNotSteerable"],
"title": "ActiveTurnNotSteerableCodexErrorInfo",
"type": "object"
"additionalProperties": false,
"title": "ActiveTurnNotSteerableCodexErrorInfo"
}
]
},
"NonSteerableTurnKind": {
"enum": ["review", "compact"],
"type": "string"
"type": "string",
"enum": ["review", "compact"]
},
"TurnError": {
"type": "object",
"required": ["message"],
"properties": {
"additionalDetails": {
"default": null,
@@ -137,26 +156,7 @@
"message": {
"type": "string"
}
},
"required": ["message"],
"type": "object"
}
}
},
"properties": {
"error": {
"$ref": "#/definitions/TurnError"
},
"threadId": {
"type": "string"
},
"turnId": {
"type": "string"
},
"willRetry": {
"type": "boolean"
}
},
"required": ["error", "threadId", "turnId", "willRetry"],
"title": "ErrorNotification",
"type": "object"
}
}

View File

@@ -1,70 +1,8 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"Account": {
"oneOf": [
{
"properties": {
"type": {
"enum": ["apiKey"],
"title": "ApiKeyAccountType",
"type": "string"
}
},
"required": ["type"],
"title": "ApiKeyAccount",
"type": "object"
},
{
"properties": {
"email": {
"type": "string"
},
"planType": {
"$ref": "#/definitions/PlanType"
},
"type": {
"enum": ["chatgpt"],
"title": "ChatgptAccountType",
"type": "string"
}
},
"required": ["email", "planType", "type"],
"title": "ChatgptAccount",
"type": "object"
},
{
"properties": {
"type": {
"enum": ["amazonBedrock"],
"title": "AmazonBedrockAccountType",
"type": "string"
}
},
"required": ["type"],
"title": "AmazonBedrockAccount",
"type": "object"
}
]
},
"PlanType": {
"enum": [
"free",
"go",
"plus",
"pro",
"prolite",
"team",
"self_serve_business_usage_based",
"business",
"enterprise_cbp_usage_based",
"enterprise",
"edu",
"unknown"
],
"type": "string"
}
},
"title": "GetAccountResponse",
"type": "object",
"required": ["requiresOpenaiAuth"],
"properties": {
"account": {
"anyOf": [
@@ -80,7 +18,69 @@
"type": "boolean"
}
},
"required": ["requiresOpenaiAuth"],
"title": "GetAccountResponse",
"type": "object"
"definitions": {
"Account": {
"oneOf": [
{
"type": "object",
"required": ["type"],
"properties": {
"type": {
"type": "string",
"enum": ["apiKey"],
"title": "ApiKeyAccountType"
}
},
"title": "ApiKeyAccount"
},
{
"type": "object",
"required": ["email", "planType", "type"],
"properties": {
"email": {
"type": "string"
},
"planType": {
"$ref": "#/definitions/PlanType"
},
"type": {
"type": "string",
"enum": ["chatgpt"],
"title": "ChatgptAccountType"
}
},
"title": "ChatgptAccount"
},
{
"type": "object",
"required": ["type"],
"properties": {
"type": {
"type": "string",
"enum": ["amazonBedrock"],
"title": "AmazonBedrockAccountType"
}
},
"title": "AmazonBedrockAccount"
}
]
},
"PlanType": {
"type": "string",
"enum": [
"free",
"go",
"plus",
"pro",
"prolite",
"team",
"self_serve_business_usage_based",
"business",
"enterprise_cbp_usage_based",
"enterprise",
"edu",
"unknown"
]
}
}
}

View File

@@ -1,29 +1,55 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ModelListResponse",
"type": "object",
"required": ["data"],
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/Model"
}
},
"nextCursor": {
"description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.",
"type": ["string", "null"]
}
},
"definitions": {
"InputModality": {
"description": "Canonical user-input modality tags advertised by a model.",
"oneOf": [
{
"description": "Plain text turns and tool payloads.",
"enum": ["text"],
"type": "string"
"type": "string",
"enum": ["text"]
},
{
"description": "Image attachments included in user turns.",
"enum": ["image"],
"type": "string"
"type": "string",
"enum": ["image"]
}
]
},
"Model": {
"type": "object",
"required": [
"defaultReasoningEffort",
"description",
"displayName",
"hidden",
"id",
"isDefault",
"model",
"supportedReasoningEfforts"
],
"properties": {
"additionalSpeedTiers": {
"default": [],
"type": "array",
"items": {
"type": "string"
},
"type": "array"
}
},
"availabilityNux": {
"anyOf": [
@@ -52,10 +78,10 @@
},
"inputModalities": {
"default": ["text", "image"],
"type": "array",
"items": {
"$ref": "#/definitions/InputModality"
},
"type": "array"
}
},
"isDefault": {
"type": "boolean"
@@ -64,10 +90,10 @@
"type": "string"
},
"supportedReasoningEfforts": {
"type": "array",
"items": {
"$ref": "#/definitions/ReasoningEffortOption"
},
"type": "array"
}
},
"supportsPersonality": {
"default": false,
@@ -86,29 +112,20 @@
}
]
}
},
"required": [
"defaultReasoningEffort",
"description",
"displayName",
"hidden",
"id",
"isDefault",
"model",
"supportedReasoningEfforts"
],
"type": "object"
}
},
"ModelAvailabilityNux": {
"type": "object",
"required": ["message"],
"properties": {
"message": {
"type": "string"
}
},
"required": ["message"],
"type": "object"
}
},
"ModelUpgradeInfo": {
"type": "object",
"required": ["model"],
"properties": {
"migrationMarkdown": {
"type": ["string", "null"]
@@ -122,16 +139,16 @@
"upgradeCopy": {
"type": ["string", "null"]
}
},
"required": ["model"],
"type": "object"
}
},
"ReasoningEffort": {
"description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning",
"enum": ["none", "minimal", "low", "medium", "high", "xhigh"],
"type": "string"
"type": "string",
"enum": ["none", "minimal", "low", "medium", "high", "xhigh"]
},
"ReasoningEffortOption": {
"type": "object",
"required": ["description", "reasoningEffort"],
"properties": {
"description": {
"type": "string"
@@ -139,24 +156,7 @@
"reasoningEffort": {
"$ref": "#/definitions/ReasoningEffort"
}
},
"required": ["description", "reasoningEffort"],
"type": "object"
}
}
},
"properties": {
"data": {
"items": {
"$ref": "#/definitions/Model"
},
"type": "array"
},
"nextCursor": {
"description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.",
"type": ["string", "null"]
}
},
"required": ["data"],
"title": "ModelListResponse",
"type": "object"
}
}

View File

@@ -2,6 +2,9 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { FuzzyFileSearchParams } from "./FuzzyFileSearchParams.js";
import type { FuzzyFileSearchSessionStartParams } from "./FuzzyFileSearchSessionStartParams.js";
import type { FuzzyFileSearchSessionStopParams } from "./FuzzyFileSearchSessionStopParams.js";
import type { FuzzyFileSearchSessionUpdateParams } from "./FuzzyFileSearchSessionUpdateParams.js";
import type { GetAuthStatusParams } from "./GetAuthStatusParams.js";
import type { GetConversationSummaryParams } from "./GetConversationSummaryParams.js";
import type { GitDiffToRemoteParams } from "./GitDiffToRemoteParams.js";
@@ -9,6 +12,7 @@ import type { InitializeParams } from "./InitializeParams.js";
import type { RequestId } from "./RequestId.js";
import type { AppsListParams } from "./v2/AppsListParams.js";
import type { CancelLoginAccountParams } from "./v2/CancelLoginAccountParams.js";
import type { CollaborationModeListParams } from "./v2/CollaborationModeListParams.js";
import type { CommandExecParams } from "./v2/CommandExecParams.js";
import type { CommandExecResizeParams } from "./v2/CommandExecResizeParams.js";
import type { CommandExecTerminateParams } from "./v2/CommandExecTerminateParams.js";
@@ -34,6 +38,7 @@ import type { FsUnwatchParams } from "./v2/FsUnwatchParams.js";
import type { FsWatchParams } from "./v2/FsWatchParams.js";
import type { FsWriteFileParams } from "./v2/FsWriteFileParams.js";
import type { GetAccountParams } from "./v2/GetAccountParams.js";
import type { HooksListParams } from "./v2/HooksListParams.js";
import type { ListMcpServerStatusParams } from "./v2/ListMcpServerStatusParams.js";
import type { LoginAccountParams } from "./v2/LoginAccountParams.js";
import type { MarketplaceAddParams } from "./v2/MarketplaceAddParams.js";
@@ -42,10 +47,16 @@ import type { MarketplaceUpgradeParams } from "./v2/MarketplaceUpgradeParams.js"
import type { McpResourceReadParams } from "./v2/McpResourceReadParams.js";
import type { McpServerOauthLoginParams } from "./v2/McpServerOauthLoginParams.js";
import type { McpServerToolCallParams } from "./v2/McpServerToolCallParams.js";
import type { MockExperimentalMethodParams } from "./v2/MockExperimentalMethodParams.js";
import type { ModelListParams } from "./v2/ModelListParams.js";
import type { ModelProviderCapabilitiesReadParams } from "./v2/ModelProviderCapabilitiesReadParams.js";
import type { PluginInstallParams } from "./v2/PluginInstallParams.js";
import type { PluginListParams } from "./v2/PluginListParams.js";
import type { PluginReadParams } from "./v2/PluginReadParams.js";
import type { PluginShareDeleteParams } from "./v2/PluginShareDeleteParams.js";
import type { PluginShareListParams } from "./v2/PluginShareListParams.js";
import type { PluginShareSaveParams } from "./v2/PluginShareSaveParams.js";
import type { PluginSkillReadParams } from "./v2/PluginSkillReadParams.js";
import type { PluginUninstallParams } from "./v2/PluginUninstallParams.js";
import type { ReviewStartParams } from "./v2/ReviewStartParams.js";
import type { SendAddCreditsNudgeEmailParams } from "./v2/SendAddCreditsNudgeEmailParams.js";
@@ -53,13 +64,25 @@ import type { SkillsConfigWriteParams } from "./v2/SkillsConfigWriteParams.js";
import type { SkillsListParams } from "./v2/SkillsListParams.js";
import type { ThreadApproveGuardianDeniedActionParams } from "./v2/ThreadApproveGuardianDeniedActionParams.js";
import type { ThreadArchiveParams } from "./v2/ThreadArchiveParams.js";
import type { ThreadBackgroundTerminalsCleanParams } from "./v2/ThreadBackgroundTerminalsCleanParams.js";
import type { ThreadCompactStartParams } from "./v2/ThreadCompactStartParams.js";
import type { ThreadDecrementElicitationParams } from "./v2/ThreadDecrementElicitationParams.js";
import type { ThreadForkParams } from "./v2/ThreadForkParams.js";
import type { ThreadGoalClearParams } from "./v2/ThreadGoalClearParams.js";
import type { ThreadGoalGetParams } from "./v2/ThreadGoalGetParams.js";
import type { ThreadGoalSetParams } from "./v2/ThreadGoalSetParams.js";
import type { ThreadIncrementElicitationParams } from "./v2/ThreadIncrementElicitationParams.js";
import type { ThreadInjectItemsParams } from "./v2/ThreadInjectItemsParams.js";
import type { ThreadListParams } from "./v2/ThreadListParams.js";
import type { ThreadLoadedListParams } from "./v2/ThreadLoadedListParams.js";
import type { ThreadMemoryModeSetParams } from "./v2/ThreadMemoryModeSetParams.js";
import type { ThreadMetadataUpdateParams } from "./v2/ThreadMetadataUpdateParams.js";
import type { ThreadReadParams } from "./v2/ThreadReadParams.js";
import type { ThreadRealtimeAppendAudioParams } from "./v2/ThreadRealtimeAppendAudioParams.js";
import type { ThreadRealtimeAppendTextParams } from "./v2/ThreadRealtimeAppendTextParams.js";
import type { ThreadRealtimeListVoicesParams } from "./v2/ThreadRealtimeListVoicesParams.js";
import type { ThreadRealtimeStartParams } from "./v2/ThreadRealtimeStartParams.js";
import type { ThreadRealtimeStopParams } from "./v2/ThreadRealtimeStopParams.js";
import type { ThreadResumeParams } from "./v2/ThreadResumeParams.js";
import type { ThreadRollbackParams } from "./v2/ThreadRollbackParams.js";
import type { ThreadSetNameParams } from "./v2/ThreadSetNameParams.js";
@@ -83,8 +106,23 @@ export type ClientRequest =
| { method: "thread/fork"; id: RequestId; params: ThreadForkParams }
| { method: "thread/archive"; id: RequestId; params: ThreadArchiveParams }
| { method: "thread/unsubscribe"; id: RequestId; params: ThreadUnsubscribeParams }
| {
method: "thread/increment_elicitation";
id: RequestId;
params: ThreadIncrementElicitationParams;
}
| {
method: "thread/decrement_elicitation";
id: RequestId;
params: ThreadDecrementElicitationParams;
}
| { method: "thread/name/set"; id: RequestId; params: ThreadSetNameParams }
| { method: "thread/goal/set"; id: RequestId; params: ThreadGoalSetParams }
| { method: "thread/goal/get"; id: RequestId; params: ThreadGoalGetParams }
| { method: "thread/goal/clear"; id: RequestId; params: ThreadGoalClearParams }
| { method: "thread/metadata/update"; id: RequestId; params: ThreadMetadataUpdateParams }
| { method: "thread/memoryMode/set"; id: RequestId; params: ThreadMemoryModeSetParams }
| { method: "memory/reset"; id: RequestId; params: undefined }
| { method: "thread/unarchive"; id: RequestId; params: ThreadUnarchiveParams }
| { method: "thread/compact/start"; id: RequestId; params: ThreadCompactStartParams }
| { method: "thread/shellCommand"; id: RequestId; params: ThreadShellCommandParams }
@@ -93,6 +131,11 @@ export type ClientRequest =
id: RequestId;
params: ThreadApproveGuardianDeniedActionParams;
}
| {
method: "thread/backgroundTerminals/clean";
id: RequestId;
params: ThreadBackgroundTerminalsCleanParams;
}
| { method: "thread/rollback"; id: RequestId; params: ThreadRollbackParams }
| { method: "thread/list"; id: RequestId; params: ThreadListParams }
| { method: "thread/loaded/list"; id: RequestId; params: ThreadLoadedListParams }
@@ -100,11 +143,16 @@ export type ClientRequest =
| { method: "thread/turns/list"; id: RequestId; params: ThreadTurnsListParams }
| { method: "thread/inject_items"; id: RequestId; params: ThreadInjectItemsParams }
| { method: "skills/list"; id: RequestId; params: SkillsListParams }
| { method: "hooks/list"; id: RequestId; params: HooksListParams }
| { method: "marketplace/add"; id: RequestId; params: MarketplaceAddParams }
| { method: "marketplace/remove"; id: RequestId; params: MarketplaceRemoveParams }
| { method: "marketplace/upgrade"; id: RequestId; params: MarketplaceUpgradeParams }
| { method: "plugin/list"; id: RequestId; params: PluginListParams }
| { method: "plugin/read"; id: RequestId; params: PluginReadParams }
| { method: "plugin/skill/read"; id: RequestId; params: PluginSkillReadParams }
| { method: "plugin/share/save"; id: RequestId; params: PluginShareSaveParams }
| { method: "plugin/share/list"; id: RequestId; params: PluginShareListParams }
| { method: "plugin/share/delete"; id: RequestId; params: PluginShareDeleteParams }
| { method: "app/list"; id: RequestId; params: AppsListParams }
| { method: "device/key/create"; id: RequestId; params: DeviceKeyCreateParams }
| { method: "device/key/public"; id: RequestId; params: DeviceKeyPublicParams }
@@ -124,14 +172,30 @@ export type ClientRequest =
| { method: "turn/start"; id: RequestId; params: TurnStartParams }
| { method: "turn/steer"; id: RequestId; params: TurnSteerParams }
| { method: "turn/interrupt"; id: RequestId; params: TurnInterruptParams }
| { method: "thread/realtime/start"; id: RequestId; params: ThreadRealtimeStartParams }
| {
method: "thread/realtime/appendAudio";
id: RequestId;
params: ThreadRealtimeAppendAudioParams;
}
| { method: "thread/realtime/appendText"; id: RequestId; params: ThreadRealtimeAppendTextParams }
| { method: "thread/realtime/stop"; id: RequestId; params: ThreadRealtimeStopParams }
| { method: "thread/realtime/listVoices"; id: RequestId; params: ThreadRealtimeListVoicesParams }
| { method: "review/start"; id: RequestId; params: ReviewStartParams }
| { method: "model/list"; id: RequestId; params: ModelListParams }
| {
method: "modelProvider/capabilities/read";
id: RequestId;
params: ModelProviderCapabilitiesReadParams;
}
| { method: "experimentalFeature/list"; id: RequestId; params: ExperimentalFeatureListParams }
| {
method: "experimentalFeature/enablement/set";
id: RequestId;
params: ExperimentalFeatureEnablementSetParams;
}
| { method: "collaborationMode/list"; id: RequestId; params: CollaborationModeListParams }
| { method: "mock/experimentalMethod"; id: RequestId; params: MockExperimentalMethodParams }
| { method: "mcpServer/oauth/login"; id: RequestId; params: McpServerOauthLoginParams }
| { method: "config/mcpServer/reload"; id: RequestId; params: undefined }
| { method: "mcpServerStatus/list"; id: RequestId; params: ListMcpServerStatusParams }
@@ -162,4 +226,19 @@ export type ClientRequest =
| { method: "getConversationSummary"; id: RequestId; params: GetConversationSummaryParams }
| { method: "gitDiffToRemote"; id: RequestId; params: GitDiffToRemoteParams }
| { method: "getAuthStatus"; id: RequestId; params: GetAuthStatusParams }
| { method: "fuzzyFileSearch"; id: RequestId; params: FuzzyFileSearchParams };
| { method: "fuzzyFileSearch"; id: RequestId; params: FuzzyFileSearchParams }
| {
method: "fuzzyFileSearch/sessionStart";
id: RequestId;
params: FuzzyFileSearchSessionStartParams;
}
| {
method: "fuzzyFileSearch/sessionUpdate";
id: RequestId;
params: FuzzyFileSearchSessionUpdateParams;
}
| {
method: "fuzzyFileSearch/sessionStop";
id: RequestId;
params: FuzzyFileSearchSessionStopParams;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionStartParams = { sessionId: string; roots: Array<string> };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionStartResponse = Record<string, never>;

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionStopParams = { sessionId: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionStopResponse = Record<string, never>;

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionUpdateParams = { sessionId: string; query: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type FuzzyFileSearchSessionUpdateResponse = Record<string, never>;

View File

@@ -1,13 +0,0 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Details of a ghost commit created from a repository state.
*/
export type GhostCommit = {
id: string;
parent: string | null;
preexisting_untracked_files: Array<string>;
preexisting_untracked_dirs: Array<string>;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type InternalSessionSource = "memory_consolidation";

View File

@@ -3,7 +3,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ContentItem } from "./ContentItem.js";
import type { FunctionCallOutputBody } from "./FunctionCallOutputBody.js";
import type { GhostCommit } from "./GhostCommit.js";
import type { LocalShellAction } from "./LocalShellAction.js";
import type { LocalShellStatus } from "./LocalShellStatus.js";
import type { MessagePhase } from "./MessagePhase.js";
@@ -12,13 +11,7 @@ import type { ReasoningItemReasoningSummary } from "./ReasoningItemReasoningSumm
import type { WebSearchAction } from "./WebSearchAction.js";
export type ResponseItem =
| {
type: "message";
role: string;
content: Array<ContentItem>;
end_turn?: boolean;
phase?: MessagePhase;
}
| { type: "message"; role: string; content: Array<ContentItem>; phase?: MessagePhase }
| {
type: "reasoning";
summary: Array<ReasoningItemReasoningSummary>;
@@ -65,6 +58,6 @@ export type ResponseItem =
revised_prompt?: string;
result: string;
}
| { type: "ghost_snapshot"; ghost_commit: GhostCommit }
| { type: "compaction"; encrypted_content: string }
| { type: "context_compaction"; encrypted_content?: string }
| { type: "other" };

View File

@@ -35,11 +35,14 @@ import type { RawResponseItemCompletedNotification } from "./v2/RawResponseItemC
import type { ReasoningSummaryPartAddedNotification } from "./v2/ReasoningSummaryPartAddedNotification.js";
import type { ReasoningSummaryTextDeltaNotification } from "./v2/ReasoningSummaryTextDeltaNotification.js";
import type { ReasoningTextDeltaNotification } from "./v2/ReasoningTextDeltaNotification.js";
import type { RemoteControlStatusChangedNotification } from "./v2/RemoteControlStatusChangedNotification.js";
import type { ServerRequestResolvedNotification } from "./v2/ServerRequestResolvedNotification.js";
import type { SkillsChangedNotification } from "./v2/SkillsChangedNotification.js";
import type { TerminalInteractionNotification } from "./v2/TerminalInteractionNotification.js";
import type { ThreadArchivedNotification } from "./v2/ThreadArchivedNotification.js";
import type { ThreadClosedNotification } from "./v2/ThreadClosedNotification.js";
import type { ThreadGoalClearedNotification } from "./v2/ThreadGoalClearedNotification.js";
import type { ThreadGoalUpdatedNotification } from "./v2/ThreadGoalUpdatedNotification.js";
import type { ThreadNameUpdatedNotification } from "./v2/ThreadNameUpdatedNotification.js";
import type { ThreadRealtimeClosedNotification } from "./v2/ThreadRealtimeClosedNotification.js";
import type { ThreadRealtimeErrorNotification } from "./v2/ThreadRealtimeErrorNotification.js";
@@ -73,6 +76,8 @@ export type ServerNotification =
| { method: "thread/closed"; params: ThreadClosedNotification }
| { method: "skills/changed"; params: SkillsChangedNotification }
| { method: "thread/name/updated"; params: ThreadNameUpdatedNotification }
| { method: "thread/goal/updated"; params: ThreadGoalUpdatedNotification }
| { method: "thread/goal/cleared"; params: ThreadGoalClearedNotification }
| { method: "thread/tokenUsage/updated"; params: ThreadTokenUsageUpdatedNotification }
| { method: "turn/started"; params: TurnStartedNotification }
| { method: "hook/started"; params: HookStartedNotification }
@@ -105,6 +110,7 @@ export type ServerNotification =
| { method: "account/updated"; params: AccountUpdatedNotification }
| { method: "account/rateLimits/updated"; params: AccountRateLimitsUpdatedNotification }
| { method: "app/list/updated"; params: AppListUpdatedNotification }
| { method: "remoteControl/status/changed"; params: RemoteControlStatusChangedNotification }
| {
method: "externalAgentConfig/import/completed";
params: ExternalAgentConfigImportCompletedNotification;

View File

@@ -1,6 +1,7 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { InternalSessionSource } from "./InternalSessionSource.js";
import type { SubAgentSource } from "./SubAgentSource.js";
export type SessionSource =
@@ -9,5 +10,6 @@ export type SessionSource =
| "exec"
| "mcp"
| { custom: string }
| { internal: InternalSessionSource }
| { subagent: SubAgentSource }
| "unknown";

View File

@@ -24,12 +24,17 @@ export type { FuzzyFileSearchParams } from "./FuzzyFileSearchParams.js";
export type { FuzzyFileSearchResponse } from "./FuzzyFileSearchResponse.js";
export type { FuzzyFileSearchResult } from "./FuzzyFileSearchResult.js";
export type { FuzzyFileSearchSessionCompletedNotification } from "./FuzzyFileSearchSessionCompletedNotification.js";
export type { FuzzyFileSearchSessionStartParams } from "./FuzzyFileSearchSessionStartParams.js";
export type { FuzzyFileSearchSessionStartResponse } from "./FuzzyFileSearchSessionStartResponse.js";
export type { FuzzyFileSearchSessionStopParams } from "./FuzzyFileSearchSessionStopParams.js";
export type { FuzzyFileSearchSessionStopResponse } from "./FuzzyFileSearchSessionStopResponse.js";
export type { FuzzyFileSearchSessionUpdateParams } from "./FuzzyFileSearchSessionUpdateParams.js";
export type { FuzzyFileSearchSessionUpdateResponse } from "./FuzzyFileSearchSessionUpdateResponse.js";
export type { FuzzyFileSearchSessionUpdatedNotification } from "./FuzzyFileSearchSessionUpdatedNotification.js";
export type { GetAuthStatusParams } from "./GetAuthStatusParams.js";
export type { GetAuthStatusResponse } from "./GetAuthStatusResponse.js";
export type { GetConversationSummaryParams } from "./GetConversationSummaryParams.js";
export type { GetConversationSummaryResponse } from "./GetConversationSummaryResponse.js";
export type { GhostCommit } from "./GhostCommit.js";
export type { GitDiffToRemoteParams } from "./GitDiffToRemoteParams.js";
export type { GitDiffToRemoteResponse } from "./GitDiffToRemoteResponse.js";
export type { GitSha } from "./GitSha.js";
@@ -38,6 +43,7 @@ export type { InitializeCapabilities } from "./InitializeCapabilities.js";
export type { InitializeParams } from "./InitializeParams.js";
export type { InitializeResponse } from "./InitializeResponse.js";
export type { InputModality } from "./InputModality.js";
export type { InternalSessionSource } from "./InternalSessionSource.js";
export type { LocalShellAction } from "./LocalShellAction.js";
export type { LocalShellExecAction } from "./LocalShellExecAction.js";
export type { LocalShellStatus } from "./LocalShellStatus.js";

View File

@@ -0,0 +1,22 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ActivePermissionProfileModification } from "./ActivePermissionProfileModification.js";
export type ActivePermissionProfile = {
/**
* Identifier from `default_permissions` or the implicit built-in default,
* such as `:workspace` or a user-defined `[permissions.<id>]` profile.
*/
id: string;
/**
* Parent profile identifier once permissions profiles support
* inheritance. This is currently always `null`.
*/
extends: string | null;
/**
* Bounded user-requested modifications applied on top of the named
* profile, if any.
*/
modifications: Array<ActivePermissionProfileModification>;
};

View File

@@ -3,6 +3,7 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
export type ReadOnlyAccess =
| { type: "restricted"; includePlatformDefaults: boolean; readableRoots: Array<AbsolutePathBuf> }
| { type: "fullAccess" };
export type ActivePermissionProfileModification = {
type: "additionalWritableRoot";
path: AbsolutePathBuf;
};

View File

@@ -5,6 +5,9 @@ import type { AdditionalFileSystemPermissions } from "./AdditionalFileSystemPerm
import type { AdditionalNetworkPermissions } from "./AdditionalNetworkPermissions.js";
export type AdditionalPermissionProfile = {
/**
* Partial overlay used for per-command permission requests.
*/
network: AdditionalNetworkPermissions | null;
fileSystem: AdditionalFileSystemPermissions | null;
};

View File

@@ -0,0 +1,8 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* EXPERIMENTAL - list collaboration mode presets.
*/
export type CollaborationModeListParams = Record<string, never>;

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CollaborationModeMask } from "./CollaborationModeMask.js";
/**
* EXPERIMENTAL - collaboration mode presets response.
*/
export type CollaborationModeListResponse = { data: Array<CollaborationModeMask> };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type CommandMigration = { name: string };

View File

@@ -10,6 +10,7 @@ import type { Verbosity } from "../Verbosity.js";
import type { WebSearchMode } from "../WebSearchMode.js";
import type { AnalyticsConfig } from "./AnalyticsConfig.js";
import type { ApprovalsReviewer } from "./ApprovalsReviewer.js";
import type { AppsConfig } from "./AppsConfig.js";
import type { AskForApproval } from "./AskForApproval.js";
import type { ProfileV2 } from "./ProfileV2.js";
import type { SandboxMode } from "./SandboxMode.js";
@@ -22,10 +23,11 @@ export type Config = {
model_context_window: bigint | null;
model_auto_compact_token_limit: bigint | null;
model_provider: string | null;
approval_policy: AskForApproval | null /**
approval_policy: AskForApproval | null;
/**
* [UNSTABLE] Optional default for where approval requests are routed for
* review.
*/;
*/
approvals_reviewer: ApprovalsReviewer | null;
sandbox_mode: SandboxMode | null;
sandbox_workspace_write: SandboxWorkspaceWrite | null;
@@ -43,6 +45,7 @@ export type Config = {
model_verbosity: Verbosity | null;
service_tier: ServiceTier | null;
analytics: AnalyticsConfig | null;
apps: AppsConfig | null;
} & {
[key in string]?:
| number

View File

@@ -2,14 +2,20 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { WebSearchMode } from "../WebSearchMode.js";
import type { ApprovalsReviewer } from "./ApprovalsReviewer.js";
import type { AskForApproval } from "./AskForApproval.js";
import type { ManagedHooksRequirements } from "./ManagedHooksRequirements.js";
import type { NetworkRequirements } from "./NetworkRequirements.js";
import type { ResidencyRequirement } from "./ResidencyRequirement.js";
import type { SandboxMode } from "./SandboxMode.js";
export type ConfigRequirements = {
allowedApprovalPolicies: Array<AskForApproval> | null;
allowedApprovalsReviewers: Array<ApprovalsReviewer> | null;
allowedSandboxModes: Array<SandboxMode> | null;
allowedWebSearchModes: Array<WebSearchMode> | null;
featureRequirements: { [key in string]?: boolean } | null;
hooks: ManagedHooksRequirements | null;
enforceResidency: ResidencyRequirement | null;
network: NetworkRequirements | null;
};

View File

@@ -7,4 +7,8 @@ export type ExternalAgentConfigMigrationItemType =
| "CONFIG"
| "SKILLS"
| "PLUGINS"
| "MCP_SERVER_CONFIG";
| "MCP_SERVER_CONFIG"
| "SUBAGENTS"
| "HOOKS"
| "COMMANDS"
| "SESSIONS";

View File

@@ -2,6 +2,11 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Deprecated legacy notification for `apply_patch` textual output.
*
* The server no longer emits this notification.
*/
export type FileChangeOutputDeltaNotification = {
threadId: string;
turnId: string;

View File

@@ -5,7 +5,6 @@
export type FileSystemSpecialPath =
| { kind: "root" }
| { kind: "minimal" }
| { kind: "current_working_directory" }
| { kind: "project_roots"; subpath: string | null }
| { kind: "tmpdir" }
| { kind: "slash_tmp" }

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type HookErrorInfo = { path: string; message: string };

View File

@@ -0,0 +1,23 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
import type { HookEventName } from "./HookEventName.js";
import type { HookHandlerType } from "./HookHandlerType.js";
import type { HookSource } from "./HookSource.js";
export type HookMetadata = {
key: string;
eventName: HookEventName;
handlerType: HookHandlerType;
matcher: string | null;
command: string | null;
timeoutSec: bigint;
statusMessage: string | null;
sourcePath: AbsolutePathBuf;
source: HookSource;
pluginId: string | null;
displayOrder: bigint;
enabled: boolean;
isManaged: boolean;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type HookMigration = { name: string };

View File

@@ -8,6 +8,8 @@ export type HookSource =
| "project"
| "mdm"
| "sessionFlags"
| "plugin"
| "cloudRequirements"
| "legacyManagedConfigFile"
| "legacyManagedConfigMdm"
| "unknown";

View File

@@ -0,0 +1,12 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { HookErrorInfo } from "./HookErrorInfo.js";
import type { HookMetadata } from "./HookMetadata.js";
export type HooksListEntry = {
cwd: string;
hooks: Array<HookMetadata>;
warnings: Array<string>;
errors: Array<HookErrorInfo>;
};

View File

@@ -0,0 +1,10 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type HooksListParams = {
/**
* When empty, defaults to the current session working directory.
*/
cwds?: Array<string>;
};

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { HooksListEntry } from "./HooksListEntry.js";
export type HooksListResponse = { data: Array<HooksListEntry> };

View File

@@ -3,4 +3,12 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadItem } from "./ThreadItem.js";
export type ItemCompletedNotification = { item: ThreadItem; threadId: string; turnId: string };
export type ItemCompletedNotification = {
item: ThreadItem;
threadId: string;
turnId: string;
/**
* Unix timestamp (in milliseconds) when this item lifecycle completed.
*/
completedAtMs: number;
};

View File

@@ -3,4 +3,12 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadItem } from "./ThreadItem.js";
export type ItemStartedNotification = { item: ThreadItem; threadId: string; turnId: string };
export type ItemStartedNotification = {
item: ThreadItem;
threadId: string;
turnId: string;
/**
* Unix timestamp (in milliseconds) when this item lifecycle started.
*/
startedAtMs: number;
};

View File

@@ -4,7 +4,7 @@
export type LoginAccountParams =
| { type: "apiKey"; apiKey: string }
| { type: "chatgpt" }
| { type: "chatgpt"; codexStreamlinedLogin?: boolean }
| { type: "chatgptDeviceCode" }
| {
type: "chatgptAuthTokens";

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type McpServerMigration = { name: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type MemoryResetResponse = Record<string, never>;

View File

@@ -1,6 +1,18 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommandMigration } from "./CommandMigration.js";
import type { HookMigration } from "./HookMigration.js";
import type { McpServerMigration } from "./McpServerMigration.js";
import type { PluginsMigration } from "./PluginsMigration.js";
import type { SessionMigration } from "./SessionMigration.js";
import type { SubagentMigration } from "./SubagentMigration.js";
export type MigrationDetails = { plugins: Array<PluginsMigration> };
export type MigrationDetails = {
plugins: Array<PluginsMigration>;
sessions: Array<SessionMigration>;
mcpServers: Array<McpServerMigration>;
hooks: Array<HookMigration>;
subagents: Array<SubagentMigration>;
commands: Array<CommandMigration>;
};

View File

@@ -0,0 +1,10 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type MockExperimentalMethodParams = {
/**
* Test-only payload field.
*/
value?: string | null;
};

View File

@@ -0,0 +1,10 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type MockExperimentalMethodResponse = {
/**
* Echoes the input `value`.
*/
echoed: string | null;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ModelProviderCapabilitiesReadParams = Record<string, never>;

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ModelProviderCapabilitiesReadResponse = {
namespaceTools: boolean;
imageGeneration: boolean;
webSearch: boolean;
};

View File

@@ -4,7 +4,11 @@
import type { PermissionProfileFileSystemPermissions } from "./PermissionProfileFileSystemPermissions.js";
import type { PermissionProfileNetworkPermissions } from "./PermissionProfileNetworkPermissions.js";
export type PermissionProfile = {
network: PermissionProfileNetworkPermissions | null;
fileSystem: PermissionProfileFileSystemPermissions | null;
};
export type PermissionProfile =
| {
type: "managed";
network: PermissionProfileNetworkPermissions;
fileSystem: PermissionProfileFileSystemPermissions;
}
| { type: "disabled" }
| { type: "external"; network: PermissionProfileNetworkPermissions };

View File

@@ -3,7 +3,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { FileSystemSandboxEntry } from "./FileSystemSandboxEntry.js";
export type PermissionProfileFileSystemPermissions = {
entries: Array<FileSystemSandboxEntry>;
globScanMaxDepth?: number;
};
export type PermissionProfileFileSystemPermissions =
| { type: "restricted"; entries: Array<FileSystemSandboxEntry>; globScanMaxDepth?: number }
| { type: "unrestricted" };

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
export type PermissionProfileModificationParams = {
type: "additionalWritableRoot";
path: AbsolutePathBuf;
};

View File

@@ -2,4 +2,4 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PermissionProfileNetworkPermissions = { enabled: boolean | null };
export type PermissionProfileNetworkPermissions = { enabled: boolean };

View File

@@ -0,0 +1,10 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { PermissionProfileModificationParams } from "./PermissionProfileModificationParams.js";
export type PermissionProfileSelectionParams = {
type: "profile";
id: string;
modifications?: Array<PermissionProfileModificationParams> | null;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginAvailability = "AVAILABLE" | "DISABLED_BY_ADMIN";

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginShareDeleteParams = { remotePluginId: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginShareDeleteResponse = Record<string, never>;

View File

@@ -0,0 +1,11 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
import type { PluginSummary } from "./PluginSummary.js";
export type PluginShareListItem = {
plugin: PluginSummary;
shareUrl: string;
localPluginPath: AbsolutePathBuf | null;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginShareListParams = Record<string, never>;

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { PluginShareListItem } from "./PluginShareListItem.js";
export type PluginShareListResponse = { data: Array<PluginShareListItem> };

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
export type PluginShareSaveParams = { pluginPath: AbsolutePathBuf; remotePluginId?: string | null };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginShareSaveResponse = { remotePluginId: string; shareUrl: string };

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginSkillReadParams = {
remoteMarketplaceName: string;
remotePluginId: string;
skillName: string;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PluginSkillReadResponse = { contents: string | null };

View File

@@ -2,6 +2,7 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { PluginAuthPolicy } from "./PluginAuthPolicy.js";
import type { PluginAvailability } from "./PluginAvailability.js";
import type { PluginInstallPolicy } from "./PluginInstallPolicy.js";
import type { PluginInterface } from "./PluginInterface.js";
import type { PluginSource } from "./PluginSource.js";
@@ -14,5 +15,9 @@ export type PluginSummary = {
enabled: boolean;
installPolicy: PluginInstallPolicy;
authPolicy: PluginAuthPolicy;
/**
* Availability state for installing and using the plugin.
*/
availability: PluginAvailability;
interface: PluginInterface | null;
};

View File

@@ -14,11 +14,12 @@ import type { ToolsV2 } from "./ToolsV2.js";
export type ProfileV2 = {
model: string | null;
model_provider: string | null;
approval_policy: AskForApproval | null /**
approval_policy: AskForApproval | null;
/**
* [UNSTABLE] Optional profile-level override for where approval requests
* are routed for review. If omitted, the enclosing config default is
* used.
*/;
*/
approvals_reviewer: ApprovalsReviewer | null;
service_tier: ServiceTier | null;
model_reasoning_effort: ReasoningEffort | null;

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type RemoteControlConnectionStatus = "disabled" | "connecting" | "connected" | "errored";

View File

@@ -0,0 +1,12 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { RemoteControlConnectionStatus } from "./RemoteControlConnectionStatus.js";
/**
* Current remote-control connection status and environment id exposed to clients.
*/
export type RemoteControlStatusChangedNotification = {
status: RemoteControlConnectionStatus;
environmentId: string | null;
};

View File

@@ -3,16 +3,14 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
import type { NetworkAccess } from "./NetworkAccess.js";
import type { ReadOnlyAccess } from "./ReadOnlyAccess.js";
export type SandboxPolicy =
| { type: "dangerFullAccess" }
| { type: "readOnly"; access: ReadOnlyAccess; networkAccess: boolean }
| { type: "readOnly"; networkAccess: boolean }
| { type: "externalSandbox"; networkAccess: NetworkAccess }
| {
type: "workspaceWrite";
writableRoots: Array<AbsolutePathBuf>;
readOnlyAccess: ReadOnlyAccess;
networkAccess: boolean;
excludeTmpdirEnvVar: boolean;
excludeSlashTmp: boolean;

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type SessionMigration = { path: string; cwd: string; title: string | null };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type SubagentMigration = { name: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadBackgroundTerminalsCleanParams = { threadId: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadBackgroundTerminalsCleanResponse = Record<string, never>;

View File

@@ -0,0 +1,13 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Parameters for `thread/decrement_elicitation`.
*/
export type ThreadDecrementElicitationParams = {
/**
* Thread whose out-of-band elicitation counter should be decremented.
*/
threadId: string;
};

View File

@@ -0,0 +1,17 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Response for `thread/decrement_elicitation`.
*/
export type ThreadDecrementElicitationResponse = {
/**
* Current out-of-band elicitation count after the decrement.
*/
count: bigint;
/**
* Whether timeout accounting remains paused after applying the decrement.
*/
paused: boolean;
};

View File

@@ -5,7 +5,7 @@ import type { JsonValue } from "../serde_json/JsonValue.js";
import type { ServiceTier } from "../ServiceTier.js";
import type { ApprovalsReviewer } from "./ApprovalsReviewer.js";
import type { AskForApproval } from "./AskForApproval.js";
import type { PermissionProfile } from "./PermissionProfile.js";
import type { PermissionProfileSelectionParams } from "./PermissionProfileSelectionParams.js";
import type { SandboxMode } from "./SandboxMode.js";
/**
@@ -18,38 +18,46 @@ import type { SandboxMode } from "./SandboxMode.js";
* Prefer using thread_id whenever possible.
*/
export type ThreadForkParams = {
threadId: string /**
threadId: string;
/**
* [UNSTABLE] Specify the rollout path to fork from.
* If specified, the thread_id param will be ignored.
*/;
path?: string | null /**
*/
path?: string | null;
/**
* Configuration overrides for the forked thread, if any.
*/;
*/
model?: string | null;
modelProvider?: string | null;
serviceTier?: ServiceTier | null;
cwd?: string | null;
approvalPolicy?: AskForApproval | null /**
approvalPolicy?: AskForApproval | null;
/**
* Override where approval requests are routed for review on this thread
* and subsequent turns.
*/;
*/
approvalsReviewer?: ApprovalsReviewer | null;
sandbox?: SandboxMode | null /**
* Full permissions override for the forked thread. Cannot be combined
* with `sandbox`.
*/;
permissionProfile?: PermissionProfile | null;
sandbox?: SandboxMode | null;
/**
* Named profile selection for the forked thread. Cannot be combined with
* `sandbox`. Use bounded `modifications` for supported thread
* adjustments instead of replacing the full permissions profile.
*/
permissions?: PermissionProfileSelectionParams | null;
config?: { [key in string]?: JsonValue } | null;
baseInstructions?: string | null;
developerInstructions?: string | null;
ephemeral?: boolean /**
ephemeral?: boolean;
/**
* When true, return only thread metadata and live fork state without
* populating `thread.turns`. This is useful when the client plans to call
* `thread/turns/list` immediately after forking.
*/;
excludeTurns?: boolean /**
* If true, persist additional rollout EventMsg variants required to
* reconstruct a richer thread history on subsequent resume/fork/read.
*/;
*/
excludeTurns?: boolean;
/**
* If true, persist additional EventMsg variants to the rollout file.
* However, `thread/read`, `thread/resume`, and `thread/fork` still only
* return the limited form of thread history for scalability reasons.
*/
persistExtendedHistory: boolean;
};

View File

@@ -4,6 +4,7 @@
import type { AbsolutePathBuf } from "../AbsolutePathBuf.js";
import type { ReasoningEffort } from "../ReasoningEffort.js";
import type { ServiceTier } from "../ServiceTier.js";
import type { ActivePermissionProfile } from "./ActivePermissionProfile.js";
import type { ApprovalsReviewer } from "./ApprovalsReviewer.js";
import type { AskForApproval } from "./AskForApproval.js";
import type { PermissionProfile } from "./PermissionProfile.js";
@@ -26,16 +27,20 @@ export type ThreadForkResponse = {
*/
approvalsReviewer: ApprovalsReviewer;
/**
* Legacy sandbox policy retained for compatibility. New clients should use
* `permissionProfile` when present as the canonical active permissions
* view.
* Legacy sandbox policy retained for compatibility. Experimental clients
* should prefer `permissionProfile` when they need exact runtime
* permissions.
*/
sandbox: SandboxPolicy;
/**
* Canonical active permissions view for this thread when representable.
* This is `null` for external sandbox policies because external
* enforcement cannot be round-tripped as a `PermissionProfile`.
* Full active permissions for this thread. `activePermissionProfile`
* carries display/provenance metadata for this runtime profile.
*/
permissionProfile: PermissionProfile | null;
/**
* Named or implicit built-in profile that produced the active
* permissions, when known.
*/
activePermissionProfile: ActivePermissionProfile | null;
reasoningEffort: ReasoningEffort | null;
};

View File

@@ -0,0 +1,15 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadGoalStatus } from "./ThreadGoalStatus.js";
export type ThreadGoal = {
threadId: string;
objective: string;
status: ThreadGoalStatus;
tokenBudget: number | null;
tokensUsed: number;
timeUsedSeconds: number;
createdAt: number;
updatedAt: number;
};

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadGoalClearParams = { threadId: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadGoalClearResponse = { cleared: boolean };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadGoalClearedNotification = { threadId: string };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadGoalGetParams = { threadId: string };

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadGoal } from "./ThreadGoal.js";
export type ThreadGoalGetResponse = { goal: ThreadGoal | null };

View File

@@ -0,0 +1,11 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadGoalStatus } from "./ThreadGoalStatus.js";
export type ThreadGoalSetParams = {
threadId: string;
objective?: string | null;
status?: ThreadGoalStatus | null;
tokenBudget?: number | null;
};

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadGoal } from "./ThreadGoal.js";
export type ThreadGoalSetResponse = { goal: ThreadGoal };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadGoalStatus = "active" | "paused" | "budgetLimited" | "complete";

View File

@@ -0,0 +1,10 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadGoal } from "./ThreadGoal.js";
export type ThreadGoalUpdatedNotification = {
threadId: string;
turnId: string | null;
goal: ThreadGoal;
};

View File

@@ -0,0 +1,13 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Parameters for `thread/increment_elicitation`.
*/
export type ThreadIncrementElicitationParams = {
/**
* Thread whose out-of-band elicitation counter should be incremented.
*/
threadId: string;
};

View File

@@ -0,0 +1,17 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* Response for `thread/increment_elicitation`.
*/
export type ThreadIncrementElicitationResponse = {
/**
* Current out-of-band elicitation count after the increment.
*/
count: bigint;
/**
* Whether timeout accounting is paused after applying the increment.
*/
paused: boolean;
};

View File

@@ -0,0 +1,6 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadMemoryMode } from "../ThreadMemoryMode.js";
export type ThreadMemoryModeSetParams = { threadId: string; mode: ThreadMemoryMode };

View File

@@ -0,0 +1,5 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type ThreadMemoryModeSetResponse = Record<string, never>;

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ThreadRealtimeAudioChunk } from "./ThreadRealtimeAudioChunk.js";
/**
* EXPERIMENTAL - append audio input to thread realtime.
*/
export type ThreadRealtimeAppendAudioParams = { threadId: string; audio: ThreadRealtimeAudioChunk };

View File

@@ -0,0 +1,8 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* EXPERIMENTAL - response for appending realtime audio input.
*/
export type ThreadRealtimeAppendAudioResponse = Record<string, never>;

View File

@@ -0,0 +1,8 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* EXPERIMENTAL - append text input to thread realtime.
*/
export type ThreadRealtimeAppendTextParams = { threadId: string; text: string };

View File

@@ -0,0 +1,8 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* EXPERIMENTAL - response for appending realtime text input.
*/
export type ThreadRealtimeAppendTextResponse = Record<string, never>;

View File

@@ -0,0 +1,8 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
/**
* EXPERIMENTAL - list voices supported by thread realtime.
*/
export type ThreadRealtimeListVoicesParams = Record<string, never>;

View File

@@ -0,0 +1,9 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { RealtimeVoicesList } from "../RealtimeVoicesList.js";
/**
* EXPERIMENTAL - response for listing supported realtime voices.
*/
export type ThreadRealtimeListVoicesResponse = { voices: RealtimeVoicesList };

View File

@@ -0,0 +1,22 @@
// GENERATED CODE! DO NOT MODIFY BY HAND!
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { RealtimeOutputModality } from "../RealtimeOutputModality.js";
import type { RealtimeVoice } from "../RealtimeVoice.js";
import type { ThreadRealtimeStartTransport } from "./ThreadRealtimeStartTransport.js";
/**
* EXPERIMENTAL - start a thread-scoped realtime session.
*/
export type ThreadRealtimeStartParams = {
threadId: string;
/**
* Selects text or audio output for the realtime session. Transport and voice stay
* independent so clients can choose how they connect separately from what the model emits.
*/
outputModality: RealtimeOutputModality;
prompt?: string | null;
realtimeSessionId?: string | null;
transport?: ThreadRealtimeStartTransport | null;
voice?: RealtimeVoice | null;
};

Some files were not shown because too many files have changed in this diff Show More