@opencow-ai/opencow-agent-sdk 0.4.6 → 0.4.8
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/dist/Tool.d.ts +1 -0
- package/dist/capabilities/SdkTool.d.ts +8 -0
- package/dist/capabilities/mcp/types.d.ts +1 -1
- package/dist/capabilities/tools/AgentTool/agentMerge.d.ts +8 -0
- package/dist/capabilities/tools/AgentTool/builtInAgents.d.ts +15 -0
- package/dist/capabilities/tools/AgentTool/runAgent.d.ts +13 -2
- package/dist/capabilities/tools/ToolSearchTool/ToolSearchTool.d.ts +1 -1
- package/dist/cli.mjs +914 -567
- package/dist/client.d.ts +10 -0
- package/dist/client.js +863 -399
- package/dist/constants/envVars.d.ts +1 -0
- package/dist/constants/tools.d.ts +1 -1
- package/dist/controller/compact/autoCompact.d.ts +17 -1
- package/dist/controller/compact/reactiveCompact.d.ts +52 -0
- package/dist/controller/hooks.d.ts +17 -2
- package/dist/controller/loop.d.ts +2 -5
- package/dist/controller/query/deps.d.ts +2 -1
- package/dist/controller/toolSearch.d.ts +20 -0
- package/dist/entrypoints/sdk/controlSchemas.d.ts +74 -1
- package/dist/entrypoints/sdk/coreSchemas.d.ts +19 -1
- package/dist/entrypoints/sdk/runtimeTypes.d.ts +41 -0
- package/dist/lib/envDynamic.d.ts +1 -1
- package/dist/permissions/permissions.d.ts +15 -0
- package/dist/providers/anthropic/teleport/api.d.ts +1 -1
- package/dist/providers/codex/shim.d.ts +8 -0
- package/dist/providers/openai/shim.d.ts +19 -12
- package/dist/providers/provider.d.ts +2 -5
- package/dist/providers/shared/clientFactory.d.ts +2 -5
- package/dist/providers/shared/logging.d.ts +2 -2
- package/dist/providers/shared/model/providers.d.ts +5 -0
- package/dist/providers/shared/routing.d.ts +37 -6
- package/dist/providers/shared/usage.d.ts +11 -0
- package/dist/query.d.ts +3 -0
- package/dist/sdk.js +863 -399
- package/dist/session/backgroundAbortRegistry.d.ts +23 -0
- package/dist/types/toolRuntime.d.ts +14 -5
- package/package.json +3 -3
package/dist/sdk.js
CHANGED
|
@@ -25935,6 +25935,267 @@ var init_errors4 = __esm(() => {
|
|
|
25935
25935
|
};
|
|
25936
25936
|
});
|
|
25937
25937
|
|
|
25938
|
+
// src/constants/envVars.ts
|
|
25939
|
+
function envVar(primary, legacy) {
|
|
25940
|
+
return legacy !== undefined ? { primary, legacy } : { primary };
|
|
25941
|
+
}
|
|
25942
|
+
function readEnvVarRaw(key) {
|
|
25943
|
+
const { primary, legacy } = ENV_VARS[key];
|
|
25944
|
+
const fromPrimary = process.env[primary];
|
|
25945
|
+
if (fromPrimary !== undefined)
|
|
25946
|
+
return fromPrimary;
|
|
25947
|
+
if (legacy !== undefined)
|
|
25948
|
+
return process.env[legacy];
|
|
25949
|
+
return;
|
|
25950
|
+
}
|
|
25951
|
+
function resolveEnvVar(key) {
|
|
25952
|
+
const { primary, legacy } = ENV_VARS[key];
|
|
25953
|
+
const { tryGetQueryContext } = (init_als(), __toCommonJS(exports_als));
|
|
25954
|
+
const ctx = tryGetQueryContext();
|
|
25955
|
+
if (ctx) {
|
|
25956
|
+
const fromQueryPrimary = ctx.config.env.get(primary);
|
|
25957
|
+
if (fromQueryPrimary !== undefined)
|
|
25958
|
+
return fromQueryPrimary;
|
|
25959
|
+
if (legacy !== undefined) {
|
|
25960
|
+
const fromQueryLegacy = ctx.config.env.get(legacy);
|
|
25961
|
+
if (fromQueryLegacy !== undefined)
|
|
25962
|
+
return fromQueryLegacy;
|
|
25963
|
+
}
|
|
25964
|
+
}
|
|
25965
|
+
const fromProcessPrimary = process.env[primary];
|
|
25966
|
+
if (fromProcessPrimary !== undefined)
|
|
25967
|
+
return fromProcessPrimary;
|
|
25968
|
+
if (legacy !== undefined)
|
|
25969
|
+
return process.env[legacy];
|
|
25970
|
+
return;
|
|
25971
|
+
}
|
|
25972
|
+
function setEnvVar(key, value) {
|
|
25973
|
+
const { primary } = ENV_VARS[key];
|
|
25974
|
+
if (value === undefined) {
|
|
25975
|
+
delete process.env[primary];
|
|
25976
|
+
} else {
|
|
25977
|
+
process.env[primary] = value;
|
|
25978
|
+
}
|
|
25979
|
+
}
|
|
25980
|
+
function deleteEnvVar(key) {
|
|
25981
|
+
const { primary, legacy } = ENV_VARS[key];
|
|
25982
|
+
delete process.env[primary];
|
|
25983
|
+
if (legacy !== undefined)
|
|
25984
|
+
delete process.env[legacy];
|
|
25985
|
+
}
|
|
25986
|
+
var ENV_VARS;
|
|
25987
|
+
var init_envVars = __esm(() => {
|
|
25988
|
+
ENV_VARS = {
|
|
25989
|
+
ABLATION_BASELINE: envVar("OPENCOW_ABLATION_BASELINE", "CLAUDE_CODE_ABLATION_BASELINE"),
|
|
25990
|
+
ACCESSIBILITY: envVar("OPENCOW_ACCESSIBILITY", "CLAUDE_CODE_ACCESSIBILITY"),
|
|
25991
|
+
ACCOUNT_TAGGED_ID: envVar("OPENCOW_ACCOUNT_TAGGED_ID", "CLAUDE_CODE_ACCOUNT_TAGGED_ID"),
|
|
25992
|
+
ACCOUNT_UUID: envVar("OPENCOW_ACCOUNT_UUID", "CLAUDE_CODE_ACCOUNT_UUID"),
|
|
25993
|
+
ACTION: envVar("OPENCOW_ACTION", "CLAUDE_CODE_ACTION"),
|
|
25994
|
+
ADDITIONAL_DIRECTORIES_CLAUDE_MD: envVar("OPENCOW_ADDITIONAL_DIRECTORIES_CLAUDE_MD", "CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD"),
|
|
25995
|
+
ADDITIONAL_PROTECTION: envVar("OPENCOW_ADDITIONAL_PROTECTION", "CLAUDE_CODE_ADDITIONAL_PROTECTION"),
|
|
25996
|
+
AGENT: envVar("OPENCOW_AGENT", "CLAUDE_CODE_AGENT"),
|
|
25997
|
+
AGENT_LIST_IN_MESSAGES: envVar("OPENCOW_AGENT_LIST_IN_MESSAGES", "CLAUDE_CODE_AGENT_LIST_IN_MESSAGES"),
|
|
25998
|
+
ALWAYS_ENABLE_EFFORT: envVar("OPENCOW_ALWAYS_ENABLE_EFFORT", "CLAUDE_CODE_ALWAYS_ENABLE_EFFORT"),
|
|
25999
|
+
API_KEY_FILE_DESCRIPTOR: envVar("OPENCOW_API_KEY_FILE_DESCRIPTOR", "CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR"),
|
|
26000
|
+
API_KEY_HELPER_TTL_MS: envVar("OPENCOW_API_KEY_HELPER_TTL_MS", "CLAUDE_CODE_API_KEY_HELPER_TTL_MS"),
|
|
26001
|
+
ATTRIBUTION_HEADER: envVar("OPENCOW_ATTRIBUTION_HEADER", "CLAUDE_CODE_ATTRIBUTION_HEADER"),
|
|
26002
|
+
AUTO_COMPACT_WINDOW: envVar("OPENCOW_AUTO_COMPACT_WINDOW", "CLAUDE_CODE_AUTO_COMPACT_WINDOW"),
|
|
26003
|
+
AUTO_CONNECT_IDE: envVar("OPENCOW_AUTO_CONNECT_IDE", "CLAUDE_CODE_AUTO_CONNECT_IDE"),
|
|
26004
|
+
AUTO_MODE_MODEL: envVar("OPENCOW_AUTO_MODE_MODEL", "CLAUDE_CODE_AUTO_MODE_MODEL"),
|
|
26005
|
+
BASE_REF: envVar("OPENCOW_BASE_REF", "CLAUDE_CODE_BASE_REF"),
|
|
26006
|
+
BASH_SANDBOX_SHOW_INDICATOR: envVar("OPENCOW_BASH_SANDBOX_SHOW_INDICATOR", "CLAUDE_CODE_BASH_SANDBOX_SHOW_INDICATOR"),
|
|
26007
|
+
BLOCKING_LIMIT_OVERRIDE: envVar("OPENCOW_BLOCKING_LIMIT_OVERRIDE", "CLAUDE_CODE_BLOCKING_LIMIT_OVERRIDE"),
|
|
26008
|
+
BRIEF: envVar("OPENCOW_BRIEF", "CLAUDE_CODE_BRIEF"),
|
|
26009
|
+
BRIEF_UPLOAD: envVar("OPENCOW_BRIEF_UPLOAD", "CLAUDE_CODE_BRIEF_UPLOAD"),
|
|
26010
|
+
BUBBLEWRAP: envVar("OPENCOW_BUBBLEWRAP", "CLAUDE_CODE_BUBBLEWRAP"),
|
|
26011
|
+
CCR_MIRROR: envVar("OPENCOW_CCR_MIRROR", "CLAUDE_CODE_CCR_MIRROR"),
|
|
26012
|
+
CLIENT_CERT: envVar("OPENCOW_CLIENT_CERT", "CLAUDE_CODE_CLIENT_CERT"),
|
|
26013
|
+
CLIENT_KEY: envVar("OPENCOW_CLIENT_KEY", "CLAUDE_CODE_CLIENT_KEY"),
|
|
26014
|
+
CLIENT_KEY_PASSPHRASE: envVar("OPENCOW_CLIENT_KEY_PASSPHRASE", "CLAUDE_CODE_CLIENT_KEY_PASSPHRASE"),
|
|
26015
|
+
COMMIT_LOG: envVar("OPENCOW_COMMIT_LOG", "CLAUDE_CODE_COMMIT_LOG"),
|
|
26016
|
+
CONTAINER_ID: envVar("OPENCOW_CONTAINER_ID", "CLAUDE_CODE_CONTAINER_ID"),
|
|
26017
|
+
COORDINATOR_MODE: envVar("OPENCOW_COORDINATOR_MODE", "CLAUDE_CODE_COORDINATOR_MODE"),
|
|
26018
|
+
COWORKER_TYPE: envVar("OPENCOW_COWORKER_TYPE", "CLAUDE_CODE_COWORKER_TYPE"),
|
|
26019
|
+
CUSTOM_OAUTH_URL: envVar("OPENCOW_CUSTOM_OAUTH_URL", "CLAUDE_CODE_CUSTOM_OAUTH_URL"),
|
|
26020
|
+
DATADOG_FLUSH_INTERVAL_MS: envVar("OPENCOW_DATADOG_FLUSH_INTERVAL_MS", "CLAUDE_CODE_DATADOG_FLUSH_INTERVAL_MS"),
|
|
26021
|
+
DEBUG_LOGS_DIR: envVar("OPENCOW_DEBUG_LOGS_DIR", "CLAUDE_CODE_DEBUG_LOGS_DIR"),
|
|
26022
|
+
DEBUG_LOG_LEVEL: envVar("OPENCOW_DEBUG_LOG_LEVEL", "CLAUDE_CODE_DEBUG_LOG_LEVEL"),
|
|
26023
|
+
DEBUG_REPAINTS: envVar("OPENCOW_DEBUG_REPAINTS", "CLAUDE_CODE_DEBUG_REPAINTS"),
|
|
26024
|
+
DIAGNOSTICS_FILE: envVar("OPENCOW_DIAGNOSTICS_FILE", "CLAUDE_CODE_DIAGNOSTICS_FILE"),
|
|
26025
|
+
DISABLE_1M_CONTEXT: envVar("OPENCOW_DISABLE_1M_CONTEXT", "CLAUDE_CODE_DISABLE_1M_CONTEXT"),
|
|
26026
|
+
DISABLE_ADAPTIVE_THINKING: envVar("OPENCOW_DISABLE_ADAPTIVE_THINKING", "CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING"),
|
|
26027
|
+
DISABLE_ADVISOR_TOOL: envVar("OPENCOW_DISABLE_ADVISOR_TOOL", "CLAUDE_CODE_DISABLE_ADVISOR_TOOL"),
|
|
26028
|
+
DISABLE_ATTACHMENTS: envVar("OPENCOW_DISABLE_ATTACHMENTS", "CLAUDE_CODE_DISABLE_ATTACHMENTS"),
|
|
26029
|
+
DISABLE_AUTO_MEMORY: envVar("OPENCOW_DISABLE_AUTO_MEMORY", "CLAUDE_CODE_DISABLE_AUTO_MEMORY"),
|
|
26030
|
+
DISABLE_BACKGROUND_TASKS: envVar("OPENCOW_DISABLE_BACKGROUND_TASKS", "CLAUDE_CODE_DISABLE_BACKGROUND_TASKS"),
|
|
26031
|
+
DISABLE_CLAUDE_MDS: envVar("OPENCOW_DISABLE_CLAUDE_MDS", "CLAUDE_CODE_DISABLE_CLAUDE_MDS"),
|
|
26032
|
+
DISABLE_COMMAND_INJECTION_CHECK: envVar("OPENCOW_DISABLE_COMMAND_INJECTION_CHECK", "CLAUDE_CODE_DISABLE_COMMAND_INJECTION_CHECK"),
|
|
26033
|
+
DISABLE_CRON: envVar("OPENCOW_DISABLE_CRON", "CLAUDE_CODE_DISABLE_CRON"),
|
|
26034
|
+
DISABLE_EXPERIMENTAL_BETAS: envVar("OPENCOW_DISABLE_EXPERIMENTAL_BETAS", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS"),
|
|
26035
|
+
DISABLE_FAST_MODE: envVar("OPENCOW_DISABLE_FAST_MODE", "CLAUDE_CODE_DISABLE_FAST_MODE"),
|
|
26036
|
+
DISABLE_FEEDBACK_SURVEY: envVar("OPENCOW_DISABLE_FEEDBACK_SURVEY", "CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY"),
|
|
26037
|
+
DISABLE_FILE_CHECKPOINTING: envVar("OPENCOW_DISABLE_FILE_CHECKPOINTING", "CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING"),
|
|
26038
|
+
DISABLE_GIT_INSTRUCTIONS: envVar("OPENCOW_DISABLE_GIT_INSTRUCTIONS", "CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS"),
|
|
26039
|
+
DISABLE_LEGACY_MODEL_REMAP: envVar("OPENCOW_DISABLE_LEGACY_MODEL_REMAP", "CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP"),
|
|
26040
|
+
DISABLE_MESSAGE_ACTIONS: envVar("OPENCOW_DISABLE_MESSAGE_ACTIONS", "CLAUDE_CODE_DISABLE_MESSAGE_ACTIONS"),
|
|
26041
|
+
DISABLE_MOUSE: envVar("OPENCOW_DISABLE_MOUSE", "CLAUDE_CODE_DISABLE_MOUSE"),
|
|
26042
|
+
DISABLE_MOUSE_CLICKS: envVar("OPENCOW_DISABLE_MOUSE_CLICKS", "CLAUDE_CODE_DISABLE_MOUSE_CLICKS"),
|
|
26043
|
+
DISABLE_NONESSENTIAL_TRAFFIC: envVar("OPENCOW_DISABLE_NONESSENTIAL_TRAFFIC", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC"),
|
|
26044
|
+
DISABLE_NONSTREAMING_FALLBACK: envVar("OPENCOW_DISABLE_NONSTREAMING_FALLBACK", "CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK"),
|
|
26045
|
+
DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL: envVar("OPENCOW_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL", "CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL"),
|
|
26046
|
+
DISABLE_POLICY_SKILLS: envVar("OPENCOW_DISABLE_POLICY_SKILLS", "CLAUDE_CODE_DISABLE_POLICY_SKILLS"),
|
|
26047
|
+
DISABLE_PRECOMPACT_SKIP: envVar("OPENCOW_DISABLE_PRECOMPACT_SKIP", "CLAUDE_CODE_DISABLE_PRECOMPACT_SKIP"),
|
|
26048
|
+
DISABLE_TERMINAL_TITLE: envVar("OPENCOW_DISABLE_TERMINAL_TITLE", "CLAUDE_CODE_DISABLE_TERMINAL_TITLE"),
|
|
26049
|
+
DISABLE_THINKING: envVar("OPENCOW_DISABLE_THINKING", "CLAUDE_CODE_DISABLE_THINKING"),
|
|
26050
|
+
DISABLE_VIRTUAL_SCROLL: envVar("OPENCOW_DISABLE_VIRTUAL_SCROLL", "CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL"),
|
|
26051
|
+
DONT_INHERIT_ENV: envVar("OPENCOW_DONT_INHERIT_ENV", "CLAUDE_CODE_DONT_INHERIT_ENV"),
|
|
26052
|
+
DUMP_AUTO_MODE: envVar("OPENCOW_DUMP_AUTO_MODE", "CLAUDE_CODE_DUMP_AUTO_MODE"),
|
|
26053
|
+
EAGER_FLUSH: envVar("OPENCOW_EAGER_FLUSH", "CLAUDE_CODE_EAGER_FLUSH"),
|
|
26054
|
+
EFFORT_LEVEL: envVar("OPENCOW_EFFORT_LEVEL", "CLAUDE_CODE_EFFORT_LEVEL"),
|
|
26055
|
+
EMIT_SESSION_STATE_EVENTS: envVar("OPENCOW_EMIT_SESSION_STATE_EVENTS", "CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS"),
|
|
26056
|
+
EMIT_TOOL_USE_SUMMARIES: envVar("OPENCOW_EMIT_TOOL_USE_SUMMARIES", "CLAUDE_CODE_EMIT_TOOL_USE_SUMMARIES"),
|
|
26057
|
+
ENABLE_CFC: envVar("OPENCOW_ENABLE_CFC", "CLAUDE_CODE_ENABLE_CFC"),
|
|
26058
|
+
ENABLE_FINE_GRAINED_TOOL_STREAMING: envVar("OPENCOW_ENABLE_FINE_GRAINED_TOOL_STREAMING", "CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING"),
|
|
26059
|
+
ENABLE_PROMPT_SUGGESTION: envVar("OPENCOW_ENABLE_PROMPT_SUGGESTION", "CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION"),
|
|
26060
|
+
ENABLE_SDK_FILE_CHECKPOINTING: envVar("OPENCOW_ENABLE_SDK_FILE_CHECKPOINTING", "CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING"),
|
|
26061
|
+
ENABLE_TASKS: envVar("OPENCOW_ENABLE_TASKS", "CLAUDE_CODE_ENABLE_TASKS"),
|
|
26062
|
+
ENABLE_TELEMETRY: envVar("OPENCOW_ENABLE_TELEMETRY", "CLAUDE_CODE_ENABLE_TELEMETRY"),
|
|
26063
|
+
ENABLE_TOKEN_USAGE_ATTACHMENT: envVar("OPENCOW_ENABLE_TOKEN_USAGE_ATTACHMENT", "CLAUDE_CODE_ENABLE_TOKEN_USAGE_ATTACHMENT"),
|
|
26064
|
+
ENABLE_TOOL_SEARCH: envVar("OPENCOW_ENABLE_TOOL_SEARCH", "ENABLE_TOOL_SEARCH"),
|
|
26065
|
+
ENABLE_XAA: envVar("OPENCOW_ENABLE_XAA", "CLAUDE_CODE_ENABLE_XAA"),
|
|
26066
|
+
ENHANCED_TELEMETRY_BETA: envVar("OPENCOW_ENHANCED_TELEMETRY_BETA", "CLAUDE_CODE_ENHANCED_TELEMETRY_BETA"),
|
|
26067
|
+
ENTRYPOINT: envVar("OPENCOW_ENTRYPOINT", "CLAUDE_CODE_ENTRYPOINT"),
|
|
26068
|
+
ENVIRONMENT_KIND: envVar("OPENCOW_ENVIRONMENT_KIND", "CLAUDE_CODE_ENVIRONMENT_KIND"),
|
|
26069
|
+
ENVIRONMENT_RUNNER_VERSION: envVar("OPENCOW_ENVIRONMENT_RUNNER_VERSION", "CLAUDE_CODE_ENVIRONMENT_RUNNER_VERSION"),
|
|
26070
|
+
EXIT_AFTER_FIRST_RENDER: envVar("OPENCOW_EXIT_AFTER_FIRST_RENDER", "CLAUDE_CODE_EXIT_AFTER_FIRST_RENDER"),
|
|
26071
|
+
EXIT_AFTER_STOP_DELAY: envVar("OPENCOW_EXIT_AFTER_STOP_DELAY", "CLAUDE_CODE_EXIT_AFTER_STOP_DELAY"),
|
|
26072
|
+
EXPERIMENTAL_AGENT_TEAMS: envVar("OPENCOW_EXPERIMENTAL_AGENT_TEAMS", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS"),
|
|
26073
|
+
EXTRA_BODY: envVar("OPENCOW_EXTRA_BODY", "CLAUDE_CODE_EXTRA_BODY"),
|
|
26074
|
+
EXTRA_METADATA: envVar("OPENCOW_EXTRA_METADATA", "CLAUDE_CODE_EXTRA_METADATA"),
|
|
26075
|
+
FILE_READ_MAX_OUTPUT_TOKENS: envVar("OPENCOW_FILE_READ_MAX_OUTPUT_TOKENS", "CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS"),
|
|
26076
|
+
FORCE_FULL_LOGO: envVar("OPENCOW_FORCE_FULL_LOGO", "CLAUDE_CODE_FORCE_FULL_LOGO"),
|
|
26077
|
+
FRAME_TIMING_LOG: envVar("OPENCOW_FRAME_TIMING_LOG", "CLAUDE_CODE_FRAME_TIMING_LOG"),
|
|
26078
|
+
GB_BASE_URL: envVar("OPENCOW_GB_BASE_URL", "CLAUDE_CODE_GB_BASE_URL"),
|
|
26079
|
+
GIT_BASH_PATH: envVar("OPENCOW_GIT_BASH_PATH", "CLAUDE_CODE_GIT_BASH_PATH"),
|
|
26080
|
+
GLOB_HIDDEN: envVar("OPENCOW_GLOB_HIDDEN", "CLAUDE_CODE_GLOB_HIDDEN"),
|
|
26081
|
+
GLOB_NO_IGNORE: envVar("OPENCOW_GLOB_NO_IGNORE", "CLAUDE_CODE_GLOB_NO_IGNORE"),
|
|
26082
|
+
GLOB_TIMEOUT_SECONDS: envVar("OPENCOW_GLOB_TIMEOUT_SECONDS", "CLAUDE_CODE_GLOB_TIMEOUT_SECONDS"),
|
|
26083
|
+
HOST_PLATFORM: envVar("OPENCOW_HOST_PLATFORM", "CLAUDE_CODE_HOST_PLATFORM"),
|
|
26084
|
+
IDE_HOST_OVERRIDE: envVar("OPENCOW_IDE_HOST_OVERRIDE", "CLAUDE_CODE_IDE_HOST_OVERRIDE"),
|
|
26085
|
+
IDE_SKIP_AUTO_INSTALL: envVar("OPENCOW_IDE_SKIP_AUTO_INSTALL", "CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL"),
|
|
26086
|
+
IDE_SKIP_VALID_CHECK: envVar("OPENCOW_IDE_SKIP_VALID_CHECK", "CLAUDE_CODE_IDE_SKIP_VALID_CHECK"),
|
|
26087
|
+
IDLE_THRESHOLD_MINUTES: envVar("OPENCOW_IDLE_THRESHOLD_MINUTES", "CLAUDE_CODE_IDLE_THRESHOLD_MINUTES"),
|
|
26088
|
+
IDLE_TOKEN_THRESHOLD: envVar("OPENCOW_IDLE_TOKEN_THRESHOLD", "CLAUDE_CODE_IDLE_TOKEN_THRESHOLD"),
|
|
26089
|
+
INCLUDE_PARTIAL_MESSAGES: envVar("OPENCOW_INCLUDE_PARTIAL_MESSAGES", "CLAUDE_CODE_INCLUDE_PARTIAL_MESSAGES"),
|
|
26090
|
+
INTERNAL_ARTIFACTORY_BASE_URL: envVar("OPENCOW_INTERNAL_ARTIFACTORY_BASE_URL", "CLAUDE_CODE_INTERNAL_ARTIFACTORY_BASE_URL"),
|
|
26091
|
+
INTERNAL_ARTIFACTORY_REGISTRY_URL: envVar("OPENCOW_INTERNAL_ARTIFACTORY_REGISTRY_URL", "CLAUDE_CODE_INTERNAL_ARTIFACTORY_REGISTRY_URL"),
|
|
26092
|
+
IS_COWORK: envVar("OPENCOW_IS_COWORK", "CLAUDE_CODE_IS_COWORK"),
|
|
26093
|
+
JSONL_TRANSCRIPT: envVar("OPENCOW_JSONL_TRANSCRIPT", "CLAUDE_CODE_JSONL_TRANSCRIPT"),
|
|
26094
|
+
MANAGED_SETTINGS_PATH: envVar("OPENCOW_MANAGED_SETTINGS_PATH", "CLAUDE_CODE_MANAGED_SETTINGS_PATH"),
|
|
26095
|
+
MAX_CONTEXT_TOKENS: envVar("OPENCOW_MAX_CONTEXT_TOKENS", "CLAUDE_CODE_MAX_CONTEXT_TOKENS"),
|
|
26096
|
+
MAX_OUTPUT_TOKENS: envVar("OPENCOW_MAX_OUTPUT_TOKENS", "CLAUDE_CODE_MAX_OUTPUT_TOKENS"),
|
|
26097
|
+
MAX_RETRIES: envVar("OPENCOW_MAX_RETRIES", "CLAUDE_CODE_MAX_RETRIES"),
|
|
26098
|
+
MAX_TOOL_USE_CONCURRENCY: envVar("OPENCOW_MAX_TOOL_USE_CONCURRENCY", "CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY"),
|
|
26099
|
+
MCP_INSTR_DELTA: envVar("OPENCOW_MCP_INSTR_DELTA", "CLAUDE_CODE_MCP_INSTR_DELTA"),
|
|
26100
|
+
MESSAGING_SOCKET: envVar("OPENCOW_MESSAGING_SOCKET", "CLAUDE_CODE_MESSAGING_SOCKET"),
|
|
26101
|
+
NEW_INIT: envVar("OPENCOW_NEW_INIT", "CLAUDE_CODE_NEW_INIT"),
|
|
26102
|
+
NO_FLICKER: envVar("OPENCOW_NO_FLICKER", "CLAUDE_CODE_NO_FLICKER"),
|
|
26103
|
+
OAUTH_CLIENT_ID: envVar("OPENCOW_OAUTH_CLIENT_ID", "CLAUDE_CODE_OAUTH_CLIENT_ID"),
|
|
26104
|
+
OAUTH_REFRESH_TOKEN: envVar("OPENCOW_OAUTH_REFRESH_TOKEN", "CLAUDE_CODE_OAUTH_REFRESH_TOKEN"),
|
|
26105
|
+
OAUTH_SCOPES: envVar("OPENCOW_OAUTH_SCOPES", "CLAUDE_CODE_OAUTH_SCOPES"),
|
|
26106
|
+
OAUTH_TOKEN: envVar("OPENCOW_OAUTH_TOKEN", "CLAUDE_CODE_OAUTH_TOKEN"),
|
|
26107
|
+
OAUTH_TOKEN_FILE_DESCRIPTOR: envVar("OPENCOW_OAUTH_TOKEN_FILE_DESCRIPTOR", "CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR"),
|
|
26108
|
+
ORGANIZATION_UUID: envVar("OPENCOW_ORGANIZATION_UUID", "CLAUDE_CODE_ORGANIZATION_UUID"),
|
|
26109
|
+
OTEL_FLUSH_TIMEOUT_MS: envVar("OPENCOW_OTEL_FLUSH_TIMEOUT_MS", "CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS"),
|
|
26110
|
+
OTEL_HEADERS_HELPER_DEBOUNCE_MS: envVar("OPENCOW_OTEL_HEADERS_HELPER_DEBOUNCE_MS", "CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS"),
|
|
26111
|
+
OTEL_SHUTDOWN_TIMEOUT_MS: envVar("OPENCOW_OTEL_SHUTDOWN_TIMEOUT_MS", "CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS"),
|
|
26112
|
+
OVERRIDE_DATE: envVar("OPENCOW_OVERRIDE_DATE", "CLAUDE_CODE_OVERRIDE_DATE"),
|
|
26113
|
+
PERFETTO_TRACE: envVar("OPENCOW_PERFETTO_TRACE", "CLAUDE_CODE_PERFETTO_TRACE"),
|
|
26114
|
+
PERFETTO_WRITE_INTERVAL_S: envVar("OPENCOW_PERFETTO_WRITE_INTERVAL_S", "CLAUDE_CODE_PERFETTO_WRITE_INTERVAL_S"),
|
|
26115
|
+
PLAN_MODE_INTERVIEW_PHASE: envVar("OPENCOW_PLAN_MODE_INTERVIEW_PHASE", "CLAUDE_CODE_PLAN_MODE_INTERVIEW_PHASE"),
|
|
26116
|
+
PLAN_MODE_REQUIRED: envVar("OPENCOW_PLAN_MODE_REQUIRED", "CLAUDE_CODE_PLAN_MODE_REQUIRED"),
|
|
26117
|
+
PLAN_V2_AGENT_COUNT: envVar("OPENCOW_PLAN_V2_AGENT_COUNT", "CLAUDE_CODE_PLAN_V2_AGENT_COUNT"),
|
|
26118
|
+
PLAN_V2_EXPLORE_AGENT_COUNT: envVar("OPENCOW_PLAN_V2_EXPLORE_AGENT_COUNT", "CLAUDE_CODE_PLAN_V2_EXPLORE_AGENT_COUNT"),
|
|
26119
|
+
PLUGIN_CACHE_DIR: envVar("OPENCOW_PLUGIN_CACHE_DIR", "CLAUDE_CODE_PLUGIN_CACHE_DIR"),
|
|
26120
|
+
PLUGIN_GIT_TIMEOUT_MS: envVar("OPENCOW_PLUGIN_GIT_TIMEOUT_MS", "CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS"),
|
|
26121
|
+
PLUGIN_SEED_DIR: envVar("OPENCOW_PLUGIN_SEED_DIR", "CLAUDE_CODE_PLUGIN_SEED_DIR"),
|
|
26122
|
+
PLUGIN_USE_ZIP_CACHE: envVar("OPENCOW_PLUGIN_USE_ZIP_CACHE", "CLAUDE_CODE_PLUGIN_USE_ZIP_CACHE"),
|
|
26123
|
+
POST_FOR_SESSION_INGRESS_V2: envVar("OPENCOW_POST_FOR_SESSION_INGRESS_V2", "CLAUDE_CODE_POST_FOR_SESSION_INGRESS_V2"),
|
|
26124
|
+
PROACTIVE: envVar("OPENCOW_PROACTIVE", "CLAUDE_CODE_PROACTIVE"),
|
|
26125
|
+
PROFILE_QUERY: envVar("OPENCOW_PROFILE_QUERY", "CLAUDE_CODE_PROFILE_QUERY"),
|
|
26126
|
+
PROFILE_STARTUP: envVar("OPENCOW_PROFILE_STARTUP", "CLAUDE_CODE_PROFILE_STARTUP"),
|
|
26127
|
+
PROVIDER_MANAGED_BY_HOST: envVar("OPENCOW_PROVIDER_MANAGED_BY_HOST", "CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST"),
|
|
26128
|
+
PROVIDER_PROFILE_ENV_APPLIED: envVar("OPENCOW_PROVIDER_PROFILE_ENV_APPLIED", "CLAUDE_CODE_PROVIDER_PROFILE_ENV_APPLIED"),
|
|
26129
|
+
PROXY_RESOLVES_HOSTS: envVar("OPENCOW_PROXY_RESOLVES_HOSTS", "CLAUDE_CODE_PROXY_RESOLVES_HOSTS"),
|
|
26130
|
+
PWSH_PARSE_TIMEOUT_MS: envVar("OPENCOW_PWSH_PARSE_TIMEOUT_MS", "CLAUDE_CODE_PWSH_PARSE_TIMEOUT_MS"),
|
|
26131
|
+
QUESTION_PREVIEW_FORMAT: envVar("OPENCOW_QUESTION_PREVIEW_FORMAT", "CLAUDE_CODE_QUESTION_PREVIEW_FORMAT"),
|
|
26132
|
+
REMOTE: envVar("OPENCOW_REMOTE", "CLAUDE_CODE_REMOTE"),
|
|
26133
|
+
REMOTE_ENVIRONMENT_TYPE: envVar("OPENCOW_REMOTE_ENVIRONMENT_TYPE", "CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE"),
|
|
26134
|
+
REMOTE_MEMORY_DIR: envVar("OPENCOW_REMOTE_MEMORY_DIR", "CLAUDE_CODE_REMOTE_MEMORY_DIR"),
|
|
26135
|
+
REMOTE_SEND_KEEPALIVES: envVar("OPENCOW_REMOTE_SEND_KEEPALIVES", "CLAUDE_CODE_REMOTE_SEND_KEEPALIVES"),
|
|
26136
|
+
REMOTE_SESSION_ID: envVar("OPENCOW_REMOTE_SESSION_ID", "CLAUDE_CODE_REMOTE_SESSION_ID"),
|
|
26137
|
+
REPL: envVar("OPENCOW_REPL", "CLAUDE_CODE_REPL"),
|
|
26138
|
+
RESUME_INTERRUPTED_TURN: envVar("OPENCOW_RESUME_INTERRUPTED_TURN", "CLAUDE_CODE_RESUME_INTERRUPTED_TURN"),
|
|
26139
|
+
SAVE_HOOK_ADDITIONAL_CONTEXT: envVar("OPENCOW_SAVE_HOOK_ADDITIONAL_CONTEXT", "CLAUDE_CODE_SAVE_HOOK_ADDITIONAL_CONTEXT"),
|
|
26140
|
+
SCROLL_SPEED: envVar("OPENCOW_SCROLL_SPEED", "CLAUDE_CODE_SCROLL_SPEED"),
|
|
26141
|
+
SESSIONEND_HOOKS_TIMEOUT_MS: envVar("OPENCOW_SESSIONEND_HOOKS_TIMEOUT_MS", "CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS"),
|
|
26142
|
+
SESSION_ACCESS_TOKEN: envVar("OPENCOW_SESSION_ACCESS_TOKEN", "CLAUDE_CODE_SESSION_ACCESS_TOKEN"),
|
|
26143
|
+
SESSION_ID: envVar("OPENCOW_SESSION_ID", "CLAUDE_CODE_SESSION_ID"),
|
|
26144
|
+
SESSION_KIND: envVar("OPENCOW_SESSION_KIND", "CLAUDE_CODE_SESSION_KIND"),
|
|
26145
|
+
SESSION_LOG: envVar("OPENCOW_SESSION_LOG", "CLAUDE_CODE_SESSION_LOG"),
|
|
26146
|
+
SESSION_NAME: envVar("OPENCOW_SESSION_NAME", "CLAUDE_CODE_SESSION_NAME"),
|
|
26147
|
+
SHELL: envVar("OPENCOW_SHELL", "CLAUDE_CODE_SHELL"),
|
|
26148
|
+
SHELL_PREFIX: envVar("OPENCOW_SHELL_PREFIX", "CLAUDE_CODE_SHELL_PREFIX"),
|
|
26149
|
+
SIMPLE: envVar("OPENCOW_SIMPLE", "CLAUDE_CODE_SIMPLE"),
|
|
26150
|
+
SKIP_BEDROCK_AUTH: envVar("OPENCOW_SKIP_BEDROCK_AUTH", "CLAUDE_CODE_SKIP_BEDROCK_AUTH"),
|
|
26151
|
+
SKIP_FAST_MODE_NETWORK_ERRORS: envVar("OPENCOW_SKIP_FAST_MODE_NETWORK_ERRORS", "CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS"),
|
|
26152
|
+
SKIP_FOUNDRY_AUTH: envVar("OPENCOW_SKIP_FOUNDRY_AUTH", "CLAUDE_CODE_SKIP_FOUNDRY_AUTH"),
|
|
26153
|
+
SKIP_PROMPT_HISTORY: envVar("OPENCOW_SKIP_PROMPT_HISTORY", "CLAUDE_CODE_SKIP_PROMPT_HISTORY"),
|
|
26154
|
+
SKIP_VERTEX_AUTH: envVar("OPENCOW_SKIP_VERTEX_AUTH", "CLAUDE_CODE_SKIP_VERTEX_AUTH"),
|
|
26155
|
+
SLOW_OPERATION_THRESHOLD_MS: envVar("OPENCOW_SLOW_OPERATION_THRESHOLD_MS", "CLAUDE_CODE_SLOW_OPERATION_THRESHOLD_MS"),
|
|
26156
|
+
SSE_PORT: envVar("OPENCOW_SSE_PORT", "CLAUDE_CODE_SSE_PORT"),
|
|
26157
|
+
STALL_TIMEOUT_MS_FOR_TESTING: envVar("OPENCOW_STALL_TIMEOUT_MS_FOR_TESTING", "CLAUDE_CODE_STALL_TIMEOUT_MS_FOR_TESTING"),
|
|
26158
|
+
STREAMLINED_OUTPUT: envVar("OPENCOW_STREAMLINED_OUTPUT", "CLAUDE_CODE_STREAMLINED_OUTPUT"),
|
|
26159
|
+
SUBAGENT_MODEL: envVar("OPENCOW_SUBAGENT_MODEL", "CLAUDE_CODE_SUBAGENT_MODEL"),
|
|
26160
|
+
SUBPROCESS_ENV_SCRUB: envVar("OPENCOW_SUBPROCESS_ENV_SCRUB", "CLAUDE_CODE_SUBPROCESS_ENV_SCRUB"),
|
|
26161
|
+
SYNC_PLUGIN_INSTALL: envVar("OPENCOW_SYNC_PLUGIN_INSTALL", "CLAUDE_CODE_SYNC_PLUGIN_INSTALL"),
|
|
26162
|
+
SYNC_PLUGIN_INSTALL_TIMEOUT_MS: envVar("OPENCOW_SYNC_PLUGIN_INSTALL_TIMEOUT_MS", "CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS"),
|
|
26163
|
+
SYNTAX_HIGHLIGHT: envVar("OPENCOW_SYNTAX_HIGHLIGHT", "CLAUDE_CODE_SYNTAX_HIGHLIGHT"),
|
|
26164
|
+
TAGS: envVar("OPENCOW_TAGS", "CLAUDE_CODE_TAGS"),
|
|
26165
|
+
TASK_LIST_ID: envVar("OPENCOW_TASK_LIST_ID", "CLAUDE_CODE_TASK_LIST_ID"),
|
|
26166
|
+
TEST_FIXTURES_ROOT: envVar("OPENCOW_TEST_FIXTURES_ROOT", "CLAUDE_CODE_TEST_FIXTURES_ROOT"),
|
|
26167
|
+
TMPDIR: envVar("OPENCOW_TMPDIR", "CLAUDE_CODE_TMPDIR"),
|
|
26168
|
+
TMUX_PREFIX: envVar("OPENCOW_TMUX_PREFIX", "CLAUDE_CODE_TMUX_PREFIX"),
|
|
26169
|
+
TMUX_PREFIX_CONFLICTS: envVar("OPENCOW_TMUX_PREFIX_CONFLICTS", "CLAUDE_CODE_TMUX_PREFIX_CONFLICTS"),
|
|
26170
|
+
TMUX_SESSION: envVar("OPENCOW_TMUX_SESSION", "CLAUDE_CODE_TMUX_SESSION"),
|
|
26171
|
+
TMUX_TRUECOLOR: envVar("OPENCOW_TMUX_TRUECOLOR", "CLAUDE_CODE_TMUX_TRUECOLOR"),
|
|
26172
|
+
TWO_STAGE_CLASSIFIER: envVar("OPENCOW_TWO_STAGE_CLASSIFIER", "CLAUDE_CODE_TWO_STAGE_CLASSIFIER"),
|
|
26173
|
+
UNATTENDED_RETRY: envVar("OPENCOW_UNATTENDED_RETRY", "CLAUDE_CODE_UNATTENDED_RETRY"),
|
|
26174
|
+
USER_EMAIL: envVar("OPENCOW_USER_EMAIL", "CLAUDE_CODE_USER_EMAIL"),
|
|
26175
|
+
USE_BEDROCK: envVar("OPENCOW_USE_BEDROCK", "CLAUDE_CODE_USE_BEDROCK"),
|
|
26176
|
+
USE_CCR_V2: envVar("OPENCOW_USE_CCR_V2", "CLAUDE_CODE_USE_CCR_V2"),
|
|
26177
|
+
USE_COWORK_PLUGINS: envVar("OPENCOW_USE_COWORK_PLUGINS", "CLAUDE_CODE_USE_COWORK_PLUGINS"),
|
|
26178
|
+
USE_FOUNDRY: envVar("OPENCOW_USE_FOUNDRY", "CLAUDE_CODE_USE_FOUNDRY"),
|
|
26179
|
+
USE_GEMINI: envVar("OPENCOW_USE_GEMINI", "CLAUDE_CODE_USE_GEMINI"),
|
|
26180
|
+
USE_GITHUB: envVar("OPENCOW_USE_GITHUB", "CLAUDE_CODE_USE_GITHUB"),
|
|
26181
|
+
USE_NATIVE_FILE_SEARCH: envVar("OPENCOW_USE_NATIVE_FILE_SEARCH", "CLAUDE_CODE_USE_NATIVE_FILE_SEARCH"),
|
|
26182
|
+
USE_OPENAI: envVar("OPENCOW_USE_OPENAI", "CLAUDE_CODE_USE_OPENAI"),
|
|
26183
|
+
USE_POWERSHELL_TOOL: envVar("OPENCOW_USE_POWERSHELL_TOOL", "CLAUDE_CODE_USE_POWERSHELL_TOOL"),
|
|
26184
|
+
USE_VERTEX: envVar("OPENCOW_USE_VERTEX", "CLAUDE_CODE_USE_VERTEX"),
|
|
26185
|
+
VERIFY_PLAN: envVar("OPENCOW_VERIFY_PLAN", "CLAUDE_CODE_VERIFY_PLAN"),
|
|
26186
|
+
WEBSOCKET_AUTH_FILE_DESCRIPTOR: envVar("OPENCOW_WEBSOCKET_AUTH_FILE_DESCRIPTOR", "CLAUDE_CODE_WEBSOCKET_AUTH_FILE_DESCRIPTOR"),
|
|
26187
|
+
WORKER_EPOCH: envVar("OPENCOW_WORKER_EPOCH", "CLAUDE_CODE_WORKER_EPOCH"),
|
|
26188
|
+
WORKSPACE_HOST_PATHS: envVar("OPENCOW_WORKSPACE_HOST_PATHS", "CLAUDE_CODE_WORKSPACE_HOST_PATHS"),
|
|
26189
|
+
MEMORY_EXTRA_GUIDELINES: envVar("OPENCOW_MEMORY_EXTRA_GUIDELINES", "CLAUDE_COWORK_MEMORY_EXTRA_GUIDELINES"),
|
|
26190
|
+
MEMORY_PATH_OVERRIDE: envVar("OPENCOW_MEMORY_PATH_OVERRIDE", "CLAUDE_COWORK_MEMORY_PATH_OVERRIDE"),
|
|
26191
|
+
DEBUG_INPUT: envVar("OPENCOW_DEBUG_INPUT"),
|
|
26192
|
+
DISABLE_CO_AUTHORED_BY: envVar("OPENCOW_DISABLE_CO_AUTHORED_BY"),
|
|
26193
|
+
DISABLE_EARLY_INPUT: envVar("OPENCOW_DISABLE_EARLY_INPUT"),
|
|
26194
|
+
ENABLE_EXTENDED_KEYS: envVar("OPENCOW_ENABLE_EXTENDED_KEYS"),
|
|
26195
|
+
USE_READABLE_STDIN: envVar("OPENCOW_USE_READABLE_STDIN")
|
|
26196
|
+
};
|
|
26197
|
+
});
|
|
26198
|
+
|
|
25938
26199
|
// src/session/layout/paths.ts
|
|
25939
26200
|
var exports_paths = {};
|
|
25940
26201
|
__export(exports_paths, {
|
|
@@ -33097,22 +33358,22 @@ function hasNodeOption(flag) {
|
|
|
33097
33358
|
}
|
|
33098
33359
|
return nodeOptions.split(/\s+/).includes(flag);
|
|
33099
33360
|
}
|
|
33100
|
-
function isEnvTruthy(
|
|
33101
|
-
if (!
|
|
33361
|
+
function isEnvTruthy(envVar2) {
|
|
33362
|
+
if (!envVar2)
|
|
33102
33363
|
return false;
|
|
33103
|
-
if (typeof
|
|
33104
|
-
return
|
|
33105
|
-
const normalizedValue =
|
|
33364
|
+
if (typeof envVar2 === "boolean")
|
|
33365
|
+
return envVar2;
|
|
33366
|
+
const normalizedValue = envVar2.toLowerCase().trim();
|
|
33106
33367
|
return ["1", "true", "yes", "on"].includes(normalizedValue);
|
|
33107
33368
|
}
|
|
33108
|
-
function isEnvDefinedFalsy(
|
|
33109
|
-
if (
|
|
33369
|
+
function isEnvDefinedFalsy(envVar2) {
|
|
33370
|
+
if (envVar2 === undefined)
|
|
33110
33371
|
return false;
|
|
33111
|
-
if (typeof
|
|
33112
|
-
return !
|
|
33113
|
-
if (!
|
|
33372
|
+
if (typeof envVar2 === "boolean")
|
|
33373
|
+
return !envVar2;
|
|
33374
|
+
if (!envVar2)
|
|
33114
33375
|
return false;
|
|
33115
|
-
const normalizedValue =
|
|
33376
|
+
const normalizedValue = envVar2.toLowerCase().trim();
|
|
33116
33377
|
return ["0", "false", "no", "off"].includes(normalizedValue);
|
|
33117
33378
|
}
|
|
33118
33379
|
function isBareMode() {
|
|
@@ -33374,266 +33635,6 @@ var init_debug = __esm(() => {
|
|
|
33374
33635
|
});
|
|
33375
33636
|
});
|
|
33376
33637
|
|
|
33377
|
-
// src/constants/envVars.ts
|
|
33378
|
-
function envVar(primary, legacy) {
|
|
33379
|
-
return legacy !== undefined ? { primary, legacy } : { primary };
|
|
33380
|
-
}
|
|
33381
|
-
function readEnvVarRaw(key) {
|
|
33382
|
-
const { primary, legacy } = ENV_VARS[key];
|
|
33383
|
-
const fromPrimary = process.env[primary];
|
|
33384
|
-
if (fromPrimary !== undefined)
|
|
33385
|
-
return fromPrimary;
|
|
33386
|
-
if (legacy !== undefined)
|
|
33387
|
-
return process.env[legacy];
|
|
33388
|
-
return;
|
|
33389
|
-
}
|
|
33390
|
-
function resolveEnvVar(key) {
|
|
33391
|
-
const { primary, legacy } = ENV_VARS[key];
|
|
33392
|
-
const { tryGetQueryContext: tryGetQueryContext2 } = (init_als(), __toCommonJS(exports_als));
|
|
33393
|
-
const ctx = tryGetQueryContext2();
|
|
33394
|
-
if (ctx) {
|
|
33395
|
-
const fromQueryPrimary = ctx.config.env.get(primary);
|
|
33396
|
-
if (fromQueryPrimary !== undefined)
|
|
33397
|
-
return fromQueryPrimary;
|
|
33398
|
-
if (legacy !== undefined) {
|
|
33399
|
-
const fromQueryLegacy = ctx.config.env.get(legacy);
|
|
33400
|
-
if (fromQueryLegacy !== undefined)
|
|
33401
|
-
return fromQueryLegacy;
|
|
33402
|
-
}
|
|
33403
|
-
}
|
|
33404
|
-
const fromProcessPrimary = process.env[primary];
|
|
33405
|
-
if (fromProcessPrimary !== undefined)
|
|
33406
|
-
return fromProcessPrimary;
|
|
33407
|
-
if (legacy !== undefined)
|
|
33408
|
-
return process.env[legacy];
|
|
33409
|
-
return;
|
|
33410
|
-
}
|
|
33411
|
-
function setEnvVar(key, value) {
|
|
33412
|
-
const { primary } = ENV_VARS[key];
|
|
33413
|
-
if (value === undefined) {
|
|
33414
|
-
delete process.env[primary];
|
|
33415
|
-
} else {
|
|
33416
|
-
process.env[primary] = value;
|
|
33417
|
-
}
|
|
33418
|
-
}
|
|
33419
|
-
function deleteEnvVar(key) {
|
|
33420
|
-
const { primary, legacy } = ENV_VARS[key];
|
|
33421
|
-
delete process.env[primary];
|
|
33422
|
-
if (legacy !== undefined)
|
|
33423
|
-
delete process.env[legacy];
|
|
33424
|
-
}
|
|
33425
|
-
var ENV_VARS;
|
|
33426
|
-
var init_envVars = __esm(() => {
|
|
33427
|
-
ENV_VARS = {
|
|
33428
|
-
ABLATION_BASELINE: envVar("OPENCOW_ABLATION_BASELINE", "CLAUDE_CODE_ABLATION_BASELINE"),
|
|
33429
|
-
ACCESSIBILITY: envVar("OPENCOW_ACCESSIBILITY", "CLAUDE_CODE_ACCESSIBILITY"),
|
|
33430
|
-
ACCOUNT_TAGGED_ID: envVar("OPENCOW_ACCOUNT_TAGGED_ID", "CLAUDE_CODE_ACCOUNT_TAGGED_ID"),
|
|
33431
|
-
ACCOUNT_UUID: envVar("OPENCOW_ACCOUNT_UUID", "CLAUDE_CODE_ACCOUNT_UUID"),
|
|
33432
|
-
ACTION: envVar("OPENCOW_ACTION", "CLAUDE_CODE_ACTION"),
|
|
33433
|
-
ADDITIONAL_DIRECTORIES_CLAUDE_MD: envVar("OPENCOW_ADDITIONAL_DIRECTORIES_CLAUDE_MD", "CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD"),
|
|
33434
|
-
ADDITIONAL_PROTECTION: envVar("OPENCOW_ADDITIONAL_PROTECTION", "CLAUDE_CODE_ADDITIONAL_PROTECTION"),
|
|
33435
|
-
AGENT: envVar("OPENCOW_AGENT", "CLAUDE_CODE_AGENT"),
|
|
33436
|
-
AGENT_LIST_IN_MESSAGES: envVar("OPENCOW_AGENT_LIST_IN_MESSAGES", "CLAUDE_CODE_AGENT_LIST_IN_MESSAGES"),
|
|
33437
|
-
ALWAYS_ENABLE_EFFORT: envVar("OPENCOW_ALWAYS_ENABLE_EFFORT", "CLAUDE_CODE_ALWAYS_ENABLE_EFFORT"),
|
|
33438
|
-
API_KEY_FILE_DESCRIPTOR: envVar("OPENCOW_API_KEY_FILE_DESCRIPTOR", "CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR"),
|
|
33439
|
-
API_KEY_HELPER_TTL_MS: envVar("OPENCOW_API_KEY_HELPER_TTL_MS", "CLAUDE_CODE_API_KEY_HELPER_TTL_MS"),
|
|
33440
|
-
ATTRIBUTION_HEADER: envVar("OPENCOW_ATTRIBUTION_HEADER", "CLAUDE_CODE_ATTRIBUTION_HEADER"),
|
|
33441
|
-
AUTO_COMPACT_WINDOW: envVar("OPENCOW_AUTO_COMPACT_WINDOW", "CLAUDE_CODE_AUTO_COMPACT_WINDOW"),
|
|
33442
|
-
AUTO_CONNECT_IDE: envVar("OPENCOW_AUTO_CONNECT_IDE", "CLAUDE_CODE_AUTO_CONNECT_IDE"),
|
|
33443
|
-
AUTO_MODE_MODEL: envVar("OPENCOW_AUTO_MODE_MODEL", "CLAUDE_CODE_AUTO_MODE_MODEL"),
|
|
33444
|
-
BASE_REF: envVar("OPENCOW_BASE_REF", "CLAUDE_CODE_BASE_REF"),
|
|
33445
|
-
BASH_SANDBOX_SHOW_INDICATOR: envVar("OPENCOW_BASH_SANDBOX_SHOW_INDICATOR", "CLAUDE_CODE_BASH_SANDBOX_SHOW_INDICATOR"),
|
|
33446
|
-
BLOCKING_LIMIT_OVERRIDE: envVar("OPENCOW_BLOCKING_LIMIT_OVERRIDE", "CLAUDE_CODE_BLOCKING_LIMIT_OVERRIDE"),
|
|
33447
|
-
BRIEF: envVar("OPENCOW_BRIEF", "CLAUDE_CODE_BRIEF"),
|
|
33448
|
-
BRIEF_UPLOAD: envVar("OPENCOW_BRIEF_UPLOAD", "CLAUDE_CODE_BRIEF_UPLOAD"),
|
|
33449
|
-
BUBBLEWRAP: envVar("OPENCOW_BUBBLEWRAP", "CLAUDE_CODE_BUBBLEWRAP"),
|
|
33450
|
-
CCR_MIRROR: envVar("OPENCOW_CCR_MIRROR", "CLAUDE_CODE_CCR_MIRROR"),
|
|
33451
|
-
CLIENT_CERT: envVar("OPENCOW_CLIENT_CERT", "CLAUDE_CODE_CLIENT_CERT"),
|
|
33452
|
-
CLIENT_KEY: envVar("OPENCOW_CLIENT_KEY", "CLAUDE_CODE_CLIENT_KEY"),
|
|
33453
|
-
CLIENT_KEY_PASSPHRASE: envVar("OPENCOW_CLIENT_KEY_PASSPHRASE", "CLAUDE_CODE_CLIENT_KEY_PASSPHRASE"),
|
|
33454
|
-
COMMIT_LOG: envVar("OPENCOW_COMMIT_LOG", "CLAUDE_CODE_COMMIT_LOG"),
|
|
33455
|
-
CONTAINER_ID: envVar("OPENCOW_CONTAINER_ID", "CLAUDE_CODE_CONTAINER_ID"),
|
|
33456
|
-
COORDINATOR_MODE: envVar("OPENCOW_COORDINATOR_MODE", "CLAUDE_CODE_COORDINATOR_MODE"),
|
|
33457
|
-
COWORKER_TYPE: envVar("OPENCOW_COWORKER_TYPE", "CLAUDE_CODE_COWORKER_TYPE"),
|
|
33458
|
-
CUSTOM_OAUTH_URL: envVar("OPENCOW_CUSTOM_OAUTH_URL", "CLAUDE_CODE_CUSTOM_OAUTH_URL"),
|
|
33459
|
-
DATADOG_FLUSH_INTERVAL_MS: envVar("OPENCOW_DATADOG_FLUSH_INTERVAL_MS", "CLAUDE_CODE_DATADOG_FLUSH_INTERVAL_MS"),
|
|
33460
|
-
DEBUG_LOGS_DIR: envVar("OPENCOW_DEBUG_LOGS_DIR", "CLAUDE_CODE_DEBUG_LOGS_DIR"),
|
|
33461
|
-
DEBUG_LOG_LEVEL: envVar("OPENCOW_DEBUG_LOG_LEVEL", "CLAUDE_CODE_DEBUG_LOG_LEVEL"),
|
|
33462
|
-
DEBUG_REPAINTS: envVar("OPENCOW_DEBUG_REPAINTS", "CLAUDE_CODE_DEBUG_REPAINTS"),
|
|
33463
|
-
DIAGNOSTICS_FILE: envVar("OPENCOW_DIAGNOSTICS_FILE", "CLAUDE_CODE_DIAGNOSTICS_FILE"),
|
|
33464
|
-
DISABLE_1M_CONTEXT: envVar("OPENCOW_DISABLE_1M_CONTEXT", "CLAUDE_CODE_DISABLE_1M_CONTEXT"),
|
|
33465
|
-
DISABLE_ADAPTIVE_THINKING: envVar("OPENCOW_DISABLE_ADAPTIVE_THINKING", "CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING"),
|
|
33466
|
-
DISABLE_ADVISOR_TOOL: envVar("OPENCOW_DISABLE_ADVISOR_TOOL", "CLAUDE_CODE_DISABLE_ADVISOR_TOOL"),
|
|
33467
|
-
DISABLE_ATTACHMENTS: envVar("OPENCOW_DISABLE_ATTACHMENTS", "CLAUDE_CODE_DISABLE_ATTACHMENTS"),
|
|
33468
|
-
DISABLE_AUTO_MEMORY: envVar("OPENCOW_DISABLE_AUTO_MEMORY", "CLAUDE_CODE_DISABLE_AUTO_MEMORY"),
|
|
33469
|
-
DISABLE_BACKGROUND_TASKS: envVar("OPENCOW_DISABLE_BACKGROUND_TASKS", "CLAUDE_CODE_DISABLE_BACKGROUND_TASKS"),
|
|
33470
|
-
DISABLE_CLAUDE_MDS: envVar("OPENCOW_DISABLE_CLAUDE_MDS", "CLAUDE_CODE_DISABLE_CLAUDE_MDS"),
|
|
33471
|
-
DISABLE_COMMAND_INJECTION_CHECK: envVar("OPENCOW_DISABLE_COMMAND_INJECTION_CHECK", "CLAUDE_CODE_DISABLE_COMMAND_INJECTION_CHECK"),
|
|
33472
|
-
DISABLE_CRON: envVar("OPENCOW_DISABLE_CRON", "CLAUDE_CODE_DISABLE_CRON"),
|
|
33473
|
-
DISABLE_EXPERIMENTAL_BETAS: envVar("OPENCOW_DISABLE_EXPERIMENTAL_BETAS", "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS"),
|
|
33474
|
-
DISABLE_FAST_MODE: envVar("OPENCOW_DISABLE_FAST_MODE", "CLAUDE_CODE_DISABLE_FAST_MODE"),
|
|
33475
|
-
DISABLE_FEEDBACK_SURVEY: envVar("OPENCOW_DISABLE_FEEDBACK_SURVEY", "CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY"),
|
|
33476
|
-
DISABLE_FILE_CHECKPOINTING: envVar("OPENCOW_DISABLE_FILE_CHECKPOINTING", "CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING"),
|
|
33477
|
-
DISABLE_GIT_INSTRUCTIONS: envVar("OPENCOW_DISABLE_GIT_INSTRUCTIONS", "CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS"),
|
|
33478
|
-
DISABLE_LEGACY_MODEL_REMAP: envVar("OPENCOW_DISABLE_LEGACY_MODEL_REMAP", "CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP"),
|
|
33479
|
-
DISABLE_MESSAGE_ACTIONS: envVar("OPENCOW_DISABLE_MESSAGE_ACTIONS", "CLAUDE_CODE_DISABLE_MESSAGE_ACTIONS"),
|
|
33480
|
-
DISABLE_MOUSE: envVar("OPENCOW_DISABLE_MOUSE", "CLAUDE_CODE_DISABLE_MOUSE"),
|
|
33481
|
-
DISABLE_MOUSE_CLICKS: envVar("OPENCOW_DISABLE_MOUSE_CLICKS", "CLAUDE_CODE_DISABLE_MOUSE_CLICKS"),
|
|
33482
|
-
DISABLE_NONESSENTIAL_TRAFFIC: envVar("OPENCOW_DISABLE_NONESSENTIAL_TRAFFIC", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC"),
|
|
33483
|
-
DISABLE_NONSTREAMING_FALLBACK: envVar("OPENCOW_DISABLE_NONSTREAMING_FALLBACK", "CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK"),
|
|
33484
|
-
DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL: envVar("OPENCOW_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL", "CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL"),
|
|
33485
|
-
DISABLE_POLICY_SKILLS: envVar("OPENCOW_DISABLE_POLICY_SKILLS", "CLAUDE_CODE_DISABLE_POLICY_SKILLS"),
|
|
33486
|
-
DISABLE_PRECOMPACT_SKIP: envVar("OPENCOW_DISABLE_PRECOMPACT_SKIP", "CLAUDE_CODE_DISABLE_PRECOMPACT_SKIP"),
|
|
33487
|
-
DISABLE_TERMINAL_TITLE: envVar("OPENCOW_DISABLE_TERMINAL_TITLE", "CLAUDE_CODE_DISABLE_TERMINAL_TITLE"),
|
|
33488
|
-
DISABLE_THINKING: envVar("OPENCOW_DISABLE_THINKING", "CLAUDE_CODE_DISABLE_THINKING"),
|
|
33489
|
-
DISABLE_VIRTUAL_SCROLL: envVar("OPENCOW_DISABLE_VIRTUAL_SCROLL", "CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL"),
|
|
33490
|
-
DONT_INHERIT_ENV: envVar("OPENCOW_DONT_INHERIT_ENV", "CLAUDE_CODE_DONT_INHERIT_ENV"),
|
|
33491
|
-
DUMP_AUTO_MODE: envVar("OPENCOW_DUMP_AUTO_MODE", "CLAUDE_CODE_DUMP_AUTO_MODE"),
|
|
33492
|
-
EAGER_FLUSH: envVar("OPENCOW_EAGER_FLUSH", "CLAUDE_CODE_EAGER_FLUSH"),
|
|
33493
|
-
EFFORT_LEVEL: envVar("OPENCOW_EFFORT_LEVEL", "CLAUDE_CODE_EFFORT_LEVEL"),
|
|
33494
|
-
EMIT_SESSION_STATE_EVENTS: envVar("OPENCOW_EMIT_SESSION_STATE_EVENTS", "CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS"),
|
|
33495
|
-
EMIT_TOOL_USE_SUMMARIES: envVar("OPENCOW_EMIT_TOOL_USE_SUMMARIES", "CLAUDE_CODE_EMIT_TOOL_USE_SUMMARIES"),
|
|
33496
|
-
ENABLE_CFC: envVar("OPENCOW_ENABLE_CFC", "CLAUDE_CODE_ENABLE_CFC"),
|
|
33497
|
-
ENABLE_FINE_GRAINED_TOOL_STREAMING: envVar("OPENCOW_ENABLE_FINE_GRAINED_TOOL_STREAMING", "CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING"),
|
|
33498
|
-
ENABLE_PROMPT_SUGGESTION: envVar("OPENCOW_ENABLE_PROMPT_SUGGESTION", "CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION"),
|
|
33499
|
-
ENABLE_SDK_FILE_CHECKPOINTING: envVar("OPENCOW_ENABLE_SDK_FILE_CHECKPOINTING", "CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING"),
|
|
33500
|
-
ENABLE_TASKS: envVar("OPENCOW_ENABLE_TASKS", "CLAUDE_CODE_ENABLE_TASKS"),
|
|
33501
|
-
ENABLE_TELEMETRY: envVar("OPENCOW_ENABLE_TELEMETRY", "CLAUDE_CODE_ENABLE_TELEMETRY"),
|
|
33502
|
-
ENABLE_TOKEN_USAGE_ATTACHMENT: envVar("OPENCOW_ENABLE_TOKEN_USAGE_ATTACHMENT", "CLAUDE_CODE_ENABLE_TOKEN_USAGE_ATTACHMENT"),
|
|
33503
|
-
ENABLE_XAA: envVar("OPENCOW_ENABLE_XAA", "CLAUDE_CODE_ENABLE_XAA"),
|
|
33504
|
-
ENHANCED_TELEMETRY_BETA: envVar("OPENCOW_ENHANCED_TELEMETRY_BETA", "CLAUDE_CODE_ENHANCED_TELEMETRY_BETA"),
|
|
33505
|
-
ENTRYPOINT: envVar("OPENCOW_ENTRYPOINT", "CLAUDE_CODE_ENTRYPOINT"),
|
|
33506
|
-
ENVIRONMENT_KIND: envVar("OPENCOW_ENVIRONMENT_KIND", "CLAUDE_CODE_ENVIRONMENT_KIND"),
|
|
33507
|
-
ENVIRONMENT_RUNNER_VERSION: envVar("OPENCOW_ENVIRONMENT_RUNNER_VERSION", "CLAUDE_CODE_ENVIRONMENT_RUNNER_VERSION"),
|
|
33508
|
-
EXIT_AFTER_FIRST_RENDER: envVar("OPENCOW_EXIT_AFTER_FIRST_RENDER", "CLAUDE_CODE_EXIT_AFTER_FIRST_RENDER"),
|
|
33509
|
-
EXIT_AFTER_STOP_DELAY: envVar("OPENCOW_EXIT_AFTER_STOP_DELAY", "CLAUDE_CODE_EXIT_AFTER_STOP_DELAY"),
|
|
33510
|
-
EXPERIMENTAL_AGENT_TEAMS: envVar("OPENCOW_EXPERIMENTAL_AGENT_TEAMS", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS"),
|
|
33511
|
-
EXTRA_BODY: envVar("OPENCOW_EXTRA_BODY", "CLAUDE_CODE_EXTRA_BODY"),
|
|
33512
|
-
EXTRA_METADATA: envVar("OPENCOW_EXTRA_METADATA", "CLAUDE_CODE_EXTRA_METADATA"),
|
|
33513
|
-
FILE_READ_MAX_OUTPUT_TOKENS: envVar("OPENCOW_FILE_READ_MAX_OUTPUT_TOKENS", "CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS"),
|
|
33514
|
-
FORCE_FULL_LOGO: envVar("OPENCOW_FORCE_FULL_LOGO", "CLAUDE_CODE_FORCE_FULL_LOGO"),
|
|
33515
|
-
FRAME_TIMING_LOG: envVar("OPENCOW_FRAME_TIMING_LOG", "CLAUDE_CODE_FRAME_TIMING_LOG"),
|
|
33516
|
-
GB_BASE_URL: envVar("OPENCOW_GB_BASE_URL", "CLAUDE_CODE_GB_BASE_URL"),
|
|
33517
|
-
GIT_BASH_PATH: envVar("OPENCOW_GIT_BASH_PATH", "CLAUDE_CODE_GIT_BASH_PATH"),
|
|
33518
|
-
GLOB_HIDDEN: envVar("OPENCOW_GLOB_HIDDEN", "CLAUDE_CODE_GLOB_HIDDEN"),
|
|
33519
|
-
GLOB_NO_IGNORE: envVar("OPENCOW_GLOB_NO_IGNORE", "CLAUDE_CODE_GLOB_NO_IGNORE"),
|
|
33520
|
-
GLOB_TIMEOUT_SECONDS: envVar("OPENCOW_GLOB_TIMEOUT_SECONDS", "CLAUDE_CODE_GLOB_TIMEOUT_SECONDS"),
|
|
33521
|
-
HOST_PLATFORM: envVar("OPENCOW_HOST_PLATFORM", "CLAUDE_CODE_HOST_PLATFORM"),
|
|
33522
|
-
IDE_HOST_OVERRIDE: envVar("OPENCOW_IDE_HOST_OVERRIDE", "CLAUDE_CODE_IDE_HOST_OVERRIDE"),
|
|
33523
|
-
IDE_SKIP_AUTO_INSTALL: envVar("OPENCOW_IDE_SKIP_AUTO_INSTALL", "CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL"),
|
|
33524
|
-
IDE_SKIP_VALID_CHECK: envVar("OPENCOW_IDE_SKIP_VALID_CHECK", "CLAUDE_CODE_IDE_SKIP_VALID_CHECK"),
|
|
33525
|
-
IDLE_THRESHOLD_MINUTES: envVar("OPENCOW_IDLE_THRESHOLD_MINUTES", "CLAUDE_CODE_IDLE_THRESHOLD_MINUTES"),
|
|
33526
|
-
IDLE_TOKEN_THRESHOLD: envVar("OPENCOW_IDLE_TOKEN_THRESHOLD", "CLAUDE_CODE_IDLE_TOKEN_THRESHOLD"),
|
|
33527
|
-
INCLUDE_PARTIAL_MESSAGES: envVar("OPENCOW_INCLUDE_PARTIAL_MESSAGES", "CLAUDE_CODE_INCLUDE_PARTIAL_MESSAGES"),
|
|
33528
|
-
INTERNAL_ARTIFACTORY_BASE_URL: envVar("OPENCOW_INTERNAL_ARTIFACTORY_BASE_URL", "CLAUDE_CODE_INTERNAL_ARTIFACTORY_BASE_URL"),
|
|
33529
|
-
INTERNAL_ARTIFACTORY_REGISTRY_URL: envVar("OPENCOW_INTERNAL_ARTIFACTORY_REGISTRY_URL", "CLAUDE_CODE_INTERNAL_ARTIFACTORY_REGISTRY_URL"),
|
|
33530
|
-
IS_COWORK: envVar("OPENCOW_IS_COWORK", "CLAUDE_CODE_IS_COWORK"),
|
|
33531
|
-
JSONL_TRANSCRIPT: envVar("OPENCOW_JSONL_TRANSCRIPT", "CLAUDE_CODE_JSONL_TRANSCRIPT"),
|
|
33532
|
-
MANAGED_SETTINGS_PATH: envVar("OPENCOW_MANAGED_SETTINGS_PATH", "CLAUDE_CODE_MANAGED_SETTINGS_PATH"),
|
|
33533
|
-
MAX_CONTEXT_TOKENS: envVar("OPENCOW_MAX_CONTEXT_TOKENS", "CLAUDE_CODE_MAX_CONTEXT_TOKENS"),
|
|
33534
|
-
MAX_OUTPUT_TOKENS: envVar("OPENCOW_MAX_OUTPUT_TOKENS", "CLAUDE_CODE_MAX_OUTPUT_TOKENS"),
|
|
33535
|
-
MAX_RETRIES: envVar("OPENCOW_MAX_RETRIES", "CLAUDE_CODE_MAX_RETRIES"),
|
|
33536
|
-
MAX_TOOL_USE_CONCURRENCY: envVar("OPENCOW_MAX_TOOL_USE_CONCURRENCY", "CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY"),
|
|
33537
|
-
MCP_INSTR_DELTA: envVar("OPENCOW_MCP_INSTR_DELTA", "CLAUDE_CODE_MCP_INSTR_DELTA"),
|
|
33538
|
-
MESSAGING_SOCKET: envVar("OPENCOW_MESSAGING_SOCKET", "CLAUDE_CODE_MESSAGING_SOCKET"),
|
|
33539
|
-
NEW_INIT: envVar("OPENCOW_NEW_INIT", "CLAUDE_CODE_NEW_INIT"),
|
|
33540
|
-
NO_FLICKER: envVar("OPENCOW_NO_FLICKER", "CLAUDE_CODE_NO_FLICKER"),
|
|
33541
|
-
OAUTH_CLIENT_ID: envVar("OPENCOW_OAUTH_CLIENT_ID", "CLAUDE_CODE_OAUTH_CLIENT_ID"),
|
|
33542
|
-
OAUTH_REFRESH_TOKEN: envVar("OPENCOW_OAUTH_REFRESH_TOKEN", "CLAUDE_CODE_OAUTH_REFRESH_TOKEN"),
|
|
33543
|
-
OAUTH_SCOPES: envVar("OPENCOW_OAUTH_SCOPES", "CLAUDE_CODE_OAUTH_SCOPES"),
|
|
33544
|
-
OAUTH_TOKEN: envVar("OPENCOW_OAUTH_TOKEN", "CLAUDE_CODE_OAUTH_TOKEN"),
|
|
33545
|
-
OAUTH_TOKEN_FILE_DESCRIPTOR: envVar("OPENCOW_OAUTH_TOKEN_FILE_DESCRIPTOR", "CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR"),
|
|
33546
|
-
ORGANIZATION_UUID: envVar("OPENCOW_ORGANIZATION_UUID", "CLAUDE_CODE_ORGANIZATION_UUID"),
|
|
33547
|
-
OTEL_FLUSH_TIMEOUT_MS: envVar("OPENCOW_OTEL_FLUSH_TIMEOUT_MS", "CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS"),
|
|
33548
|
-
OTEL_HEADERS_HELPER_DEBOUNCE_MS: envVar("OPENCOW_OTEL_HEADERS_HELPER_DEBOUNCE_MS", "CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS"),
|
|
33549
|
-
OTEL_SHUTDOWN_TIMEOUT_MS: envVar("OPENCOW_OTEL_SHUTDOWN_TIMEOUT_MS", "CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS"),
|
|
33550
|
-
OVERRIDE_DATE: envVar("OPENCOW_OVERRIDE_DATE", "CLAUDE_CODE_OVERRIDE_DATE"),
|
|
33551
|
-
PERFETTO_TRACE: envVar("OPENCOW_PERFETTO_TRACE", "CLAUDE_CODE_PERFETTO_TRACE"),
|
|
33552
|
-
PERFETTO_WRITE_INTERVAL_S: envVar("OPENCOW_PERFETTO_WRITE_INTERVAL_S", "CLAUDE_CODE_PERFETTO_WRITE_INTERVAL_S"),
|
|
33553
|
-
PLAN_MODE_INTERVIEW_PHASE: envVar("OPENCOW_PLAN_MODE_INTERVIEW_PHASE", "CLAUDE_CODE_PLAN_MODE_INTERVIEW_PHASE"),
|
|
33554
|
-
PLAN_MODE_REQUIRED: envVar("OPENCOW_PLAN_MODE_REQUIRED", "CLAUDE_CODE_PLAN_MODE_REQUIRED"),
|
|
33555
|
-
PLAN_V2_AGENT_COUNT: envVar("OPENCOW_PLAN_V2_AGENT_COUNT", "CLAUDE_CODE_PLAN_V2_AGENT_COUNT"),
|
|
33556
|
-
PLAN_V2_EXPLORE_AGENT_COUNT: envVar("OPENCOW_PLAN_V2_EXPLORE_AGENT_COUNT", "CLAUDE_CODE_PLAN_V2_EXPLORE_AGENT_COUNT"),
|
|
33557
|
-
PLUGIN_CACHE_DIR: envVar("OPENCOW_PLUGIN_CACHE_DIR", "CLAUDE_CODE_PLUGIN_CACHE_DIR"),
|
|
33558
|
-
PLUGIN_GIT_TIMEOUT_MS: envVar("OPENCOW_PLUGIN_GIT_TIMEOUT_MS", "CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS"),
|
|
33559
|
-
PLUGIN_SEED_DIR: envVar("OPENCOW_PLUGIN_SEED_DIR", "CLAUDE_CODE_PLUGIN_SEED_DIR"),
|
|
33560
|
-
PLUGIN_USE_ZIP_CACHE: envVar("OPENCOW_PLUGIN_USE_ZIP_CACHE", "CLAUDE_CODE_PLUGIN_USE_ZIP_CACHE"),
|
|
33561
|
-
POST_FOR_SESSION_INGRESS_V2: envVar("OPENCOW_POST_FOR_SESSION_INGRESS_V2", "CLAUDE_CODE_POST_FOR_SESSION_INGRESS_V2"),
|
|
33562
|
-
PROACTIVE: envVar("OPENCOW_PROACTIVE", "CLAUDE_CODE_PROACTIVE"),
|
|
33563
|
-
PROFILE_QUERY: envVar("OPENCOW_PROFILE_QUERY", "CLAUDE_CODE_PROFILE_QUERY"),
|
|
33564
|
-
PROFILE_STARTUP: envVar("OPENCOW_PROFILE_STARTUP", "CLAUDE_CODE_PROFILE_STARTUP"),
|
|
33565
|
-
PROVIDER_MANAGED_BY_HOST: envVar("OPENCOW_PROVIDER_MANAGED_BY_HOST", "CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST"),
|
|
33566
|
-
PROVIDER_PROFILE_ENV_APPLIED: envVar("OPENCOW_PROVIDER_PROFILE_ENV_APPLIED", "CLAUDE_CODE_PROVIDER_PROFILE_ENV_APPLIED"),
|
|
33567
|
-
PROXY_RESOLVES_HOSTS: envVar("OPENCOW_PROXY_RESOLVES_HOSTS", "CLAUDE_CODE_PROXY_RESOLVES_HOSTS"),
|
|
33568
|
-
PWSH_PARSE_TIMEOUT_MS: envVar("OPENCOW_PWSH_PARSE_TIMEOUT_MS", "CLAUDE_CODE_PWSH_PARSE_TIMEOUT_MS"),
|
|
33569
|
-
QUESTION_PREVIEW_FORMAT: envVar("OPENCOW_QUESTION_PREVIEW_FORMAT", "CLAUDE_CODE_QUESTION_PREVIEW_FORMAT"),
|
|
33570
|
-
REMOTE: envVar("OPENCOW_REMOTE", "CLAUDE_CODE_REMOTE"),
|
|
33571
|
-
REMOTE_ENVIRONMENT_TYPE: envVar("OPENCOW_REMOTE_ENVIRONMENT_TYPE", "CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE"),
|
|
33572
|
-
REMOTE_MEMORY_DIR: envVar("OPENCOW_REMOTE_MEMORY_DIR", "CLAUDE_CODE_REMOTE_MEMORY_DIR"),
|
|
33573
|
-
REMOTE_SEND_KEEPALIVES: envVar("OPENCOW_REMOTE_SEND_KEEPALIVES", "CLAUDE_CODE_REMOTE_SEND_KEEPALIVES"),
|
|
33574
|
-
REMOTE_SESSION_ID: envVar("OPENCOW_REMOTE_SESSION_ID", "CLAUDE_CODE_REMOTE_SESSION_ID"),
|
|
33575
|
-
REPL: envVar("OPENCOW_REPL", "CLAUDE_CODE_REPL"),
|
|
33576
|
-
RESUME_INTERRUPTED_TURN: envVar("OPENCOW_RESUME_INTERRUPTED_TURN", "CLAUDE_CODE_RESUME_INTERRUPTED_TURN"),
|
|
33577
|
-
SAVE_HOOK_ADDITIONAL_CONTEXT: envVar("OPENCOW_SAVE_HOOK_ADDITIONAL_CONTEXT", "CLAUDE_CODE_SAVE_HOOK_ADDITIONAL_CONTEXT"),
|
|
33578
|
-
SCROLL_SPEED: envVar("OPENCOW_SCROLL_SPEED", "CLAUDE_CODE_SCROLL_SPEED"),
|
|
33579
|
-
SESSIONEND_HOOKS_TIMEOUT_MS: envVar("OPENCOW_SESSIONEND_HOOKS_TIMEOUT_MS", "CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS"),
|
|
33580
|
-
SESSION_ACCESS_TOKEN: envVar("OPENCOW_SESSION_ACCESS_TOKEN", "CLAUDE_CODE_SESSION_ACCESS_TOKEN"),
|
|
33581
|
-
SESSION_ID: envVar("OPENCOW_SESSION_ID", "CLAUDE_CODE_SESSION_ID"),
|
|
33582
|
-
SESSION_KIND: envVar("OPENCOW_SESSION_KIND", "CLAUDE_CODE_SESSION_KIND"),
|
|
33583
|
-
SESSION_LOG: envVar("OPENCOW_SESSION_LOG", "CLAUDE_CODE_SESSION_LOG"),
|
|
33584
|
-
SESSION_NAME: envVar("OPENCOW_SESSION_NAME", "CLAUDE_CODE_SESSION_NAME"),
|
|
33585
|
-
SHELL: envVar("OPENCOW_SHELL", "CLAUDE_CODE_SHELL"),
|
|
33586
|
-
SHELL_PREFIX: envVar("OPENCOW_SHELL_PREFIX", "CLAUDE_CODE_SHELL_PREFIX"),
|
|
33587
|
-
SIMPLE: envVar("OPENCOW_SIMPLE", "CLAUDE_CODE_SIMPLE"),
|
|
33588
|
-
SKIP_BEDROCK_AUTH: envVar("OPENCOW_SKIP_BEDROCK_AUTH", "CLAUDE_CODE_SKIP_BEDROCK_AUTH"),
|
|
33589
|
-
SKIP_FAST_MODE_NETWORK_ERRORS: envVar("OPENCOW_SKIP_FAST_MODE_NETWORK_ERRORS", "CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS"),
|
|
33590
|
-
SKIP_FOUNDRY_AUTH: envVar("OPENCOW_SKIP_FOUNDRY_AUTH", "CLAUDE_CODE_SKIP_FOUNDRY_AUTH"),
|
|
33591
|
-
SKIP_PROMPT_HISTORY: envVar("OPENCOW_SKIP_PROMPT_HISTORY", "CLAUDE_CODE_SKIP_PROMPT_HISTORY"),
|
|
33592
|
-
SKIP_VERTEX_AUTH: envVar("OPENCOW_SKIP_VERTEX_AUTH", "CLAUDE_CODE_SKIP_VERTEX_AUTH"),
|
|
33593
|
-
SLOW_OPERATION_THRESHOLD_MS: envVar("OPENCOW_SLOW_OPERATION_THRESHOLD_MS", "CLAUDE_CODE_SLOW_OPERATION_THRESHOLD_MS"),
|
|
33594
|
-
SSE_PORT: envVar("OPENCOW_SSE_PORT", "CLAUDE_CODE_SSE_PORT"),
|
|
33595
|
-
STALL_TIMEOUT_MS_FOR_TESTING: envVar("OPENCOW_STALL_TIMEOUT_MS_FOR_TESTING", "CLAUDE_CODE_STALL_TIMEOUT_MS_FOR_TESTING"),
|
|
33596
|
-
STREAMLINED_OUTPUT: envVar("OPENCOW_STREAMLINED_OUTPUT", "CLAUDE_CODE_STREAMLINED_OUTPUT"),
|
|
33597
|
-
SUBAGENT_MODEL: envVar("OPENCOW_SUBAGENT_MODEL", "CLAUDE_CODE_SUBAGENT_MODEL"),
|
|
33598
|
-
SUBPROCESS_ENV_SCRUB: envVar("OPENCOW_SUBPROCESS_ENV_SCRUB", "CLAUDE_CODE_SUBPROCESS_ENV_SCRUB"),
|
|
33599
|
-
SYNC_PLUGIN_INSTALL: envVar("OPENCOW_SYNC_PLUGIN_INSTALL", "CLAUDE_CODE_SYNC_PLUGIN_INSTALL"),
|
|
33600
|
-
SYNC_PLUGIN_INSTALL_TIMEOUT_MS: envVar("OPENCOW_SYNC_PLUGIN_INSTALL_TIMEOUT_MS", "CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS"),
|
|
33601
|
-
SYNTAX_HIGHLIGHT: envVar("OPENCOW_SYNTAX_HIGHLIGHT", "CLAUDE_CODE_SYNTAX_HIGHLIGHT"),
|
|
33602
|
-
TAGS: envVar("OPENCOW_TAGS", "CLAUDE_CODE_TAGS"),
|
|
33603
|
-
TASK_LIST_ID: envVar("OPENCOW_TASK_LIST_ID", "CLAUDE_CODE_TASK_LIST_ID"),
|
|
33604
|
-
TEST_FIXTURES_ROOT: envVar("OPENCOW_TEST_FIXTURES_ROOT", "CLAUDE_CODE_TEST_FIXTURES_ROOT"),
|
|
33605
|
-
TMPDIR: envVar("OPENCOW_TMPDIR", "CLAUDE_CODE_TMPDIR"),
|
|
33606
|
-
TMUX_PREFIX: envVar("OPENCOW_TMUX_PREFIX", "CLAUDE_CODE_TMUX_PREFIX"),
|
|
33607
|
-
TMUX_PREFIX_CONFLICTS: envVar("OPENCOW_TMUX_PREFIX_CONFLICTS", "CLAUDE_CODE_TMUX_PREFIX_CONFLICTS"),
|
|
33608
|
-
TMUX_SESSION: envVar("OPENCOW_TMUX_SESSION", "CLAUDE_CODE_TMUX_SESSION"),
|
|
33609
|
-
TMUX_TRUECOLOR: envVar("OPENCOW_TMUX_TRUECOLOR", "CLAUDE_CODE_TMUX_TRUECOLOR"),
|
|
33610
|
-
TWO_STAGE_CLASSIFIER: envVar("OPENCOW_TWO_STAGE_CLASSIFIER", "CLAUDE_CODE_TWO_STAGE_CLASSIFIER"),
|
|
33611
|
-
UNATTENDED_RETRY: envVar("OPENCOW_UNATTENDED_RETRY", "CLAUDE_CODE_UNATTENDED_RETRY"),
|
|
33612
|
-
USER_EMAIL: envVar("OPENCOW_USER_EMAIL", "CLAUDE_CODE_USER_EMAIL"),
|
|
33613
|
-
USE_BEDROCK: envVar("OPENCOW_USE_BEDROCK", "CLAUDE_CODE_USE_BEDROCK"),
|
|
33614
|
-
USE_CCR_V2: envVar("OPENCOW_USE_CCR_V2", "CLAUDE_CODE_USE_CCR_V2"),
|
|
33615
|
-
USE_COWORK_PLUGINS: envVar("OPENCOW_USE_COWORK_PLUGINS", "CLAUDE_CODE_USE_COWORK_PLUGINS"),
|
|
33616
|
-
USE_FOUNDRY: envVar("OPENCOW_USE_FOUNDRY", "CLAUDE_CODE_USE_FOUNDRY"),
|
|
33617
|
-
USE_GEMINI: envVar("OPENCOW_USE_GEMINI", "CLAUDE_CODE_USE_GEMINI"),
|
|
33618
|
-
USE_GITHUB: envVar("OPENCOW_USE_GITHUB", "CLAUDE_CODE_USE_GITHUB"),
|
|
33619
|
-
USE_NATIVE_FILE_SEARCH: envVar("OPENCOW_USE_NATIVE_FILE_SEARCH", "CLAUDE_CODE_USE_NATIVE_FILE_SEARCH"),
|
|
33620
|
-
USE_OPENAI: envVar("OPENCOW_USE_OPENAI", "CLAUDE_CODE_USE_OPENAI"),
|
|
33621
|
-
USE_POWERSHELL_TOOL: envVar("OPENCOW_USE_POWERSHELL_TOOL", "CLAUDE_CODE_USE_POWERSHELL_TOOL"),
|
|
33622
|
-
USE_VERTEX: envVar("OPENCOW_USE_VERTEX", "CLAUDE_CODE_USE_VERTEX"),
|
|
33623
|
-
VERIFY_PLAN: envVar("OPENCOW_VERIFY_PLAN", "CLAUDE_CODE_VERIFY_PLAN"),
|
|
33624
|
-
WEBSOCKET_AUTH_FILE_DESCRIPTOR: envVar("OPENCOW_WEBSOCKET_AUTH_FILE_DESCRIPTOR", "CLAUDE_CODE_WEBSOCKET_AUTH_FILE_DESCRIPTOR"),
|
|
33625
|
-
WORKER_EPOCH: envVar("OPENCOW_WORKER_EPOCH", "CLAUDE_CODE_WORKER_EPOCH"),
|
|
33626
|
-
WORKSPACE_HOST_PATHS: envVar("OPENCOW_WORKSPACE_HOST_PATHS", "CLAUDE_CODE_WORKSPACE_HOST_PATHS"),
|
|
33627
|
-
MEMORY_EXTRA_GUIDELINES: envVar("OPENCOW_MEMORY_EXTRA_GUIDELINES", "CLAUDE_COWORK_MEMORY_EXTRA_GUIDELINES"),
|
|
33628
|
-
MEMORY_PATH_OVERRIDE: envVar("OPENCOW_MEMORY_PATH_OVERRIDE", "CLAUDE_COWORK_MEMORY_PATH_OVERRIDE"),
|
|
33629
|
-
DEBUG_INPUT: envVar("OPENCOW_DEBUG_INPUT"),
|
|
33630
|
-
DISABLE_CO_AUTHORED_BY: envVar("OPENCOW_DISABLE_CO_AUTHORED_BY"),
|
|
33631
|
-
DISABLE_EARLY_INPUT: envVar("OPENCOW_DISABLE_EARLY_INPUT"),
|
|
33632
|
-
ENABLE_EXTENDED_KEYS: envVar("OPENCOW_ENABLE_EXTENDED_KEYS"),
|
|
33633
|
-
USE_READABLE_STDIN: envVar("OPENCOW_USE_READABLE_STDIN")
|
|
33634
|
-
};
|
|
33635
|
-
});
|
|
33636
|
-
|
|
33637
33638
|
// src/lib/slowOperations.ts
|
|
33638
33639
|
import {
|
|
33639
33640
|
closeSync,
|
|
@@ -63345,7 +63346,7 @@ function getToolNameForPermissionCheck(tool) {
|
|
|
63345
63346
|
var init_mcpStringUtils = () => {};
|
|
63346
63347
|
|
|
63347
63348
|
// src/constants/toolNames.ts
|
|
63348
|
-
var
|
|
63349
|
+
var AGENT_TOOL_NAME = "Agent", ASK_USER_QUESTION_TOOL_NAME = "AskUserQuestion", BASH_TOOL_NAME = "Bash", ENTER_PLAN_MODE_TOOL_NAME = "EnterPlanMode", ENTER_WORKTREE_TOOL_NAME = "EnterWorktree", EXIT_PLAN_MODE_TOOL_NAME = "ExitPlanMode", EXIT_PLAN_MODE_V2_TOOL_NAME = "ExitPlanMode", EXIT_WORKTREE_TOOL_NAME = "ExitWorktree", FILE_EDIT_TOOL_NAME = "Edit", FILE_READ_TOOL_NAME = "Read", FILE_WRITE_TOOL_NAME = "Write", GLOB_TOOL_NAME = "Glob", GREP_TOOL_NAME = "Grep", NOTEBOOK_EDIT_TOOL_NAME = "NotebookEdit", POWERSHELL_TOOL_NAME = "PowerShell", REPL_TOOL_NAME = "REPL", SEND_MESSAGE_TOOL_NAME = "SendMessage", SKILL_TOOL_NAME = "Skill", SLEEP_TOOL_NAME = "Sleep", SYNTHETIC_OUTPUT_TOOL_NAME = "StructuredOutput", TASK_CREATE_TOOL_NAME = "TaskCreate", TASK_GET_TOOL_NAME = "TaskGet", TASK_LIST_TOOL_NAME = "TaskList", TASK_OUTPUT_TOOL_NAME = "TaskOutput", TASK_STOP_TOOL_NAME = "TaskStop", TASK_UPDATE_TOOL_NAME = "TaskUpdate", TEAM_CREATE_TOOL_NAME = "TeamCreate", TEAM_DELETE_TOOL_NAME = "TeamDelete", TODO_WRITE_TOOL_NAME = "TodoWrite", TOOL_SEARCH_TOOL_NAME = "ToolSearch", EXPLORE_AGENT_TYPE = "Explore", PLAN_AGENT_TYPE = "Plan", WEB_FETCH_TOOL_NAME = "WebFetch", WEB_SEARCH_TOOL_NAME = "WebSearch";
|
|
63349
63350
|
|
|
63350
63351
|
// src/permissions/permissionRuleParser.ts
|
|
63351
63352
|
function normalizeLegacyToolName(name) {
|
|
@@ -63430,7 +63431,7 @@ function findLastUnescapedChar(str, char) {
|
|
|
63430
63431
|
var LEGACY_TOOL_NAME_ALIASES;
|
|
63431
63432
|
var init_permissionRuleParser = __esm(() => {
|
|
63432
63433
|
LEGACY_TOOL_NAME_ALIASES = {
|
|
63433
|
-
Task:
|
|
63434
|
+
Task: AGENT_TOOL_NAME,
|
|
63434
63435
|
KillShell: TASK_STOP_TOOL_NAME,
|
|
63435
63436
|
AgentOutputTool: TASK_OUTPUT_TOOL_NAME,
|
|
63436
63437
|
BashOutputTool: TASK_OUTPUT_TOOL_NAME,
|
|
@@ -69099,6 +69100,31 @@ var init_modelAllowlist = __esm(() => {
|
|
|
69099
69100
|
init_modelStrings();
|
|
69100
69101
|
});
|
|
69101
69102
|
|
|
69103
|
+
// src/providers/shared/model/antModels.ts
|
|
69104
|
+
function getAntModelOverrideConfig() {
|
|
69105
|
+
if (process.env.USER_TYPE !== "ant") {
|
|
69106
|
+
return null;
|
|
69107
|
+
}
|
|
69108
|
+
return getFeatureValue_CACHED_MAY_BE_STALE("tengu_ant_model_override", null);
|
|
69109
|
+
}
|
|
69110
|
+
function getAntModels() {
|
|
69111
|
+
if (process.env.USER_TYPE !== "ant") {
|
|
69112
|
+
return [];
|
|
69113
|
+
}
|
|
69114
|
+
return getAntModelOverrideConfig()?.antModels ?? [];
|
|
69115
|
+
}
|
|
69116
|
+
function resolveAntModel(model) {
|
|
69117
|
+
if (process.env.USER_TYPE !== "ant") {
|
|
69118
|
+
return;
|
|
69119
|
+
}
|
|
69120
|
+
if (model === undefined) {
|
|
69121
|
+
return;
|
|
69122
|
+
}
|
|
69123
|
+
const lower = model.toLowerCase();
|
|
69124
|
+
return getAntModels().find((m) => m.alias === model || lower.includes(m.model.toLowerCase()));
|
|
69125
|
+
}
|
|
69126
|
+
var init_antModels = () => {};
|
|
69127
|
+
|
|
69102
69128
|
// src/providers/shared/model/model.ts
|
|
69103
69129
|
function getSmallFastModel() {
|
|
69104
69130
|
const smallFast = getQueryEnvVar("ANTHROPIC_SMALL_FAST_MODEL");
|
|
@@ -69506,6 +69532,7 @@ var init_model = __esm(() => {
|
|
|
69506
69532
|
init_provider();
|
|
69507
69533
|
init_figures2();
|
|
69508
69534
|
init_modelAllowlist();
|
|
69535
|
+
init_antModels();
|
|
69509
69536
|
init_aliases();
|
|
69510
69537
|
init_stringUtils();
|
|
69511
69538
|
LEGACY_OPUS_FIRSTPARTY = [
|
|
@@ -69757,6 +69784,7 @@ var init_modelContext = __esm(() => {
|
|
|
69757
69784
|
init_envUtils();
|
|
69758
69785
|
init_state2();
|
|
69759
69786
|
init_model();
|
|
69787
|
+
init_antModels();
|
|
69760
69788
|
init_openaiContextWindows();
|
|
69761
69789
|
});
|
|
69762
69790
|
|
|
@@ -71540,7 +71568,7 @@ function getAPIProviderForStatsig() {
|
|
|
71540
71568
|
return getAPIProvider();
|
|
71541
71569
|
}
|
|
71542
71570
|
function isFirstPartyAnthropicBaseUrl() {
|
|
71543
|
-
const baseUrl =
|
|
71571
|
+
const baseUrl = getQueryEnvVar("ANTHROPIC_BASE_URL");
|
|
71544
71572
|
if (!baseUrl) {
|
|
71545
71573
|
return true;
|
|
71546
71574
|
}
|
|
@@ -95564,12 +95592,17 @@ async function performCodexRequest(options) {
|
|
|
95564
95592
|
body.tool_choice ??= "auto";
|
|
95565
95593
|
}
|
|
95566
95594
|
}
|
|
95567
|
-
const
|
|
95568
|
-
|
|
95569
|
-
|
|
95570
|
-
}
|
|
95571
|
-
|
|
95572
|
-
|
|
95595
|
+
const thinkingDisabled = options.params.thinking?.type === "disabled";
|
|
95596
|
+
if (thinkingDisabled) {
|
|
95597
|
+
body.reasoning = { effort: "minimal" };
|
|
95598
|
+
} else {
|
|
95599
|
+
const mergedReasoning = {
|
|
95600
|
+
...options.request.reasoning ?? {},
|
|
95601
|
+
...options.providerSpecific?.reasoning ?? {}
|
|
95602
|
+
};
|
|
95603
|
+
if (Object.keys(mergedReasoning).length > 0) {
|
|
95604
|
+
body.reasoning = mergedReasoning;
|
|
95605
|
+
}
|
|
95573
95606
|
}
|
|
95574
95607
|
const isTargetModel = options.request.resolvedModel?.toLowerCase().includes("gpt") || options.request.resolvedModel?.toLowerCase().includes("codex");
|
|
95575
95608
|
if (!isTargetModel) {
|
|
@@ -95643,12 +95676,17 @@ function determineStopReason(response, sawToolUse) {
|
|
|
95643
95676
|
}
|
|
95644
95677
|
return "end_turn";
|
|
95645
95678
|
}
|
|
95679
|
+
function codexFailureStatus(errorMessage2) {
|
|
95680
|
+
const m = errorMessage2.toLowerCase();
|
|
95681
|
+
const isContextOverflow = m.includes("prompt is too long") || m.includes("context_length_exceeded") || m.includes("maximum context length");
|
|
95682
|
+
return isContextOverflow ? 400 : 500;
|
|
95683
|
+
}
|
|
95646
95684
|
async function collectCodexCompletedResponse(response) {
|
|
95647
95685
|
let completedResponse;
|
|
95648
95686
|
for await (const event of readSseEvents(response)) {
|
|
95649
95687
|
if (event.event === "response.failed") {
|
|
95650
95688
|
const msg = event.data?.response?.error?.message ?? event.data?.error?.message ?? "Codex response failed";
|
|
95651
|
-
throw APIError.generate(
|
|
95689
|
+
throw APIError.generate(codexFailureStatus(msg), undefined, msg, new Headers);
|
|
95652
95690
|
}
|
|
95653
95691
|
if (event.event === "response.completed" || event.event === "response.incomplete") {
|
|
95654
95692
|
completedResponse = event.data?.response;
|
|
@@ -95838,7 +95876,7 @@ async function* codexStreamToAnthropic(response, model) {
|
|
|
95838
95876
|
}
|
|
95839
95877
|
if (event.event === "response.failed") {
|
|
95840
95878
|
const msg = payload?.response?.error?.message ?? payload?.error?.message ?? "Codex response failed";
|
|
95841
|
-
throw APIError.generate(
|
|
95879
|
+
throw APIError.generate(codexFailureStatus(msg), undefined, msg, new Headers);
|
|
95842
95880
|
}
|
|
95843
95881
|
}
|
|
95844
95882
|
yield* closeActiveTextBlock();
|
|
@@ -96012,6 +96050,7 @@ var init_providerProfile = __esm(() => {
|
|
|
96012
96050
|
var exports_shim = {};
|
|
96013
96051
|
__export(exports_shim, {
|
|
96014
96052
|
toOpenAIChatReasoningEffort: () => toOpenAIChatReasoningEffort,
|
|
96053
|
+
openaiUsageToAnthropicUsage: () => openaiUsageToAnthropicUsage,
|
|
96015
96054
|
openaiStreamToAnthropic: () => openaiStreamToAnthropic,
|
|
96016
96055
|
makeMessageId: () => makeMessageId2,
|
|
96017
96056
|
createOpenAIShimClient: () => createOpenAIShimClient,
|
|
@@ -96087,6 +96126,10 @@ function splitToolResultMedia2(content) {
|
|
|
96087
96126
|
}
|
|
96088
96127
|
continue;
|
|
96089
96128
|
}
|
|
96129
|
+
if (block?.type === "tool_reference" && typeof block.tool_name === "string") {
|
|
96130
|
+
textChunks.push(`<discovered-tool name="${block.tool_name}" />`);
|
|
96131
|
+
continue;
|
|
96132
|
+
}
|
|
96090
96133
|
if (typeof block?.text === "string") {
|
|
96091
96134
|
textChunks.push(block.text);
|
|
96092
96135
|
}
|
|
@@ -96263,16 +96306,21 @@ function convertTools(tools, model = "") {
|
|
|
96263
96306
|
function makeMessageId2() {
|
|
96264
96307
|
return `msg_${crypto.randomUUID().replace(/-/g, "")}`;
|
|
96265
96308
|
}
|
|
96266
|
-
function
|
|
96267
|
-
|
|
96268
|
-
|
|
96309
|
+
function openaiUsageToAnthropicUsage(usage) {
|
|
96310
|
+
const promptTokens = usage?.prompt_tokens ?? 0;
|
|
96311
|
+
const cachedTokens = usage?.prompt_tokens_details?.cached_tokens ?? 0;
|
|
96269
96312
|
return {
|
|
96270
|
-
input_tokens:
|
|
96271
|
-
output_tokens: usage
|
|
96313
|
+
input_tokens: Math.max(0, promptTokens - cachedTokens),
|
|
96314
|
+
output_tokens: usage?.completion_tokens ?? 0,
|
|
96272
96315
|
cache_creation_input_tokens: 0,
|
|
96273
|
-
cache_read_input_tokens:
|
|
96316
|
+
cache_read_input_tokens: cachedTokens
|
|
96274
96317
|
};
|
|
96275
96318
|
}
|
|
96319
|
+
function convertChunkUsage(usage) {
|
|
96320
|
+
if (!usage)
|
|
96321
|
+
return;
|
|
96322
|
+
return openaiUsageToAnthropicUsage(usage);
|
|
96323
|
+
}
|
|
96276
96324
|
function toOpenAIChatReasoningEffort(effort) {
|
|
96277
96325
|
return effort === "xhigh" ? "high" : effort;
|
|
96278
96326
|
}
|
|
@@ -96694,7 +96742,8 @@ class OpenAIShimMessages {
|
|
|
96694
96742
|
const self2 = this;
|
|
96695
96743
|
let httpResponse;
|
|
96696
96744
|
const promise3 = (async () => {
|
|
96697
|
-
const
|
|
96745
|
+
const overrideTransport = self2.providerOverride?.transport === "anthropic" ? undefined : self2.providerOverride?.transport;
|
|
96746
|
+
const request = resolveProviderRequest({ model: self2.providerOverride?.model ?? params.model, baseUrl: self2.providerOverride?.baseURL, reasoningEffortOverride: self2.reasoningEffort, transportOverride: overrideTransport });
|
|
96698
96747
|
const response = await self2._doRequest(request, params, options);
|
|
96699
96748
|
httpResponse = response;
|
|
96700
96749
|
if (params.stream) {
|
|
@@ -96719,7 +96768,7 @@ class OpenAIShimMessages {
|
|
|
96719
96768
|
}
|
|
96720
96769
|
async _doRequest(request, params, options) {
|
|
96721
96770
|
if (request.transport === "openai_responses") {
|
|
96722
|
-
const credentials = resolveOpenAIResponsesCredentials();
|
|
96771
|
+
const credentials = this.providerOverride?.apiKey ? { apiKey: this.providerOverride.apiKey, source: "env-openai" } : resolveOpenAIResponsesCredentials();
|
|
96723
96772
|
if (!credentials.apiKey) {
|
|
96724
96773
|
const safeModel = redactSecretValueForDisplay(request.requestedModel, process.env) ?? "the requested model";
|
|
96725
96774
|
const codexAuthHint = credentials.authPath ? `, set CODEX_API_KEY, or place a Codex auth.json at ${credentials.authPath}` : " or set CODEX_API_KEY";
|
|
@@ -96738,7 +96787,7 @@ class OpenAIShimMessages {
|
|
|
96738
96787
|
...options?.headers ?? {}
|
|
96739
96788
|
},
|
|
96740
96789
|
signal: options?.signal,
|
|
96741
|
-
providerSpecific: readOpenAIResponsesProviderSpecific()
|
|
96790
|
+
providerSpecific: this.providerOverride?.providerSpecific?.openaiResponses ?? readOpenAIResponsesProviderSpecific()
|
|
96742
96791
|
});
|
|
96743
96792
|
}
|
|
96744
96793
|
return this._doOpenAIRequest(request, params, options);
|
|
@@ -96918,12 +96967,7 @@ function convertOpenAIResponseToAnthropic(data, model) {
|
|
|
96918
96967
|
model: data.model ?? model,
|
|
96919
96968
|
stop_reason: stopReason,
|
|
96920
96969
|
stop_sequence: null,
|
|
96921
|
-
usage:
|
|
96922
|
-
input_tokens: data.usage?.prompt_tokens ?? 0,
|
|
96923
|
-
output_tokens: data.usage?.completion_tokens ?? 0,
|
|
96924
|
-
cache_creation_input_tokens: 0,
|
|
96925
|
-
cache_read_input_tokens: data.usage?.prompt_tokens_details?.cached_tokens ?? 0
|
|
96926
|
-
}
|
|
96970
|
+
usage: openaiUsageToAnthropicUsage(data.usage)
|
|
96927
96971
|
};
|
|
96928
96972
|
}
|
|
96929
96973
|
|
|
@@ -97045,7 +97089,6 @@ async function getNormalizedClient({
|
|
|
97045
97089
|
}
|
|
97046
97090
|
};
|
|
97047
97091
|
if (providerOverride) {
|
|
97048
|
-
const { createOpenAIShimClient: createOpenAIShimClient2 } = await Promise.resolve().then(() => (init_shim2(), exports_shim));
|
|
97049
97092
|
const safeHeaders = {};
|
|
97050
97093
|
for (const [k, v] of Object.entries(defaultHeaders)) {
|
|
97051
97094
|
const lower = k.toLowerCase();
|
|
@@ -97053,6 +97096,18 @@ async function getNormalizedClient({
|
|
|
97053
97096
|
continue;
|
|
97054
97097
|
safeHeaders[k] = v;
|
|
97055
97098
|
}
|
|
97099
|
+
if (providerOverride.transport === "anthropic") {
|
|
97100
|
+
const overrideToken = providerOverride.apiKey ?? getQueryEnvVar("ANTHROPIC_AUTH_TOKEN");
|
|
97101
|
+
return new Anthropic({
|
|
97102
|
+
apiKey: null,
|
|
97103
|
+
...overrideToken ? { authToken: overrideToken } : {},
|
|
97104
|
+
...providerOverride.baseURL ? { baseURL: providerOverride.baseURL } : {},
|
|
97105
|
+
...ARGS,
|
|
97106
|
+
defaultHeaders: safeHeaders,
|
|
97107
|
+
...isDebugToStdErr() && { logger: createStderrLogger() }
|
|
97108
|
+
});
|
|
97109
|
+
}
|
|
97110
|
+
const { createOpenAIShimClient: createOpenAIShimClient2 } = await Promise.resolve().then(() => (init_shim2(), exports_shim));
|
|
97056
97111
|
return createOpenAIShimClient2({
|
|
97057
97112
|
defaultHeaders: safeHeaders,
|
|
97058
97113
|
maxRetries,
|
|
@@ -97530,6 +97585,13 @@ function resolveProviderFromEnv(envOverride) {
|
|
|
97530
97585
|
const model = readEnv2(envOverride, "OPENAI_MODEL")?.trim() ?? "";
|
|
97531
97586
|
return model && isCodexAlias(model) ? providers.codex() : providers.openai();
|
|
97532
97587
|
}
|
|
97588
|
+
const transport = readEnv2(envOverride, QUERY_ENV_KEY_TRANSPORT_OVERRIDE)?.trim();
|
|
97589
|
+
if (transport === "openai_responses" || transport === "codex_responses") {
|
|
97590
|
+
return providers.codex();
|
|
97591
|
+
}
|
|
97592
|
+
if (transport === "chat_completions") {
|
|
97593
|
+
return providers.openai();
|
|
97594
|
+
}
|
|
97533
97595
|
if (envOverride) {
|
|
97534
97596
|
const hasOAuthToken = Boolean(readEnv2(envOverride, "CLAUDE_CODE_OAUTH_TOKEN"));
|
|
97535
97597
|
return providers.anthropic({
|
|
@@ -97925,7 +97987,7 @@ function cloneHookRegistry(registry2) {
|
|
|
97925
97987
|
var queryContextStorage;
|
|
97926
97988
|
var init_als = __esm(() => {
|
|
97927
97989
|
init_errors4();
|
|
97928
|
-
|
|
97990
|
+
init_envVars();
|
|
97929
97991
|
queryContextStorage = new AsyncLocalStorage2;
|
|
97930
97992
|
});
|
|
97931
97993
|
|
|
@@ -106666,7 +106728,14 @@ function buildToolRuntime(def) {
|
|
|
106666
106728
|
...def
|
|
106667
106729
|
};
|
|
106668
106730
|
}
|
|
106669
|
-
var
|
|
106731
|
+
var getEmptyToolPermissionContext = () => ({
|
|
106732
|
+
mode: "default",
|
|
106733
|
+
additionalWorkingDirectories: new Map,
|
|
106734
|
+
alwaysAllowRules: {},
|
|
106735
|
+
alwaysDenyRules: {},
|
|
106736
|
+
alwaysAskRules: {},
|
|
106737
|
+
isBypassPermissionsModeAvailable: false
|
|
106738
|
+
}), TOOL_RUNTIME_DEFAULTS;
|
|
106670
106739
|
var init_toolRuntime = __esm(() => {
|
|
106671
106740
|
TOOL_RUNTIME_DEFAULTS = {
|
|
106672
106741
|
isEnabled: () => true,
|
|
@@ -106686,7 +106755,7 @@ function toolMatchesName2(tool, name) {
|
|
|
106686
106755
|
function findToolByName(tools, name) {
|
|
106687
106756
|
return tools.find((t) => toolMatchesName2(t, name));
|
|
106688
106757
|
}
|
|
106689
|
-
var
|
|
106758
|
+
var getEmptyToolPermissionContext2 = () => ({
|
|
106690
106759
|
mode: "default",
|
|
106691
106760
|
additionalWorkingDirectories: new Map,
|
|
106692
106761
|
alwaysAllowRules: {},
|
|
@@ -107602,7 +107671,7 @@ var init_paths2 = __esm(() => {
|
|
|
107602
107671
|
});
|
|
107603
107672
|
|
|
107604
107673
|
// src/capabilities/tools/AgentTool/constants.ts
|
|
107605
|
-
var
|
|
107674
|
+
var AGENT_TOOL_NAME2 = "Agent", LEGACY_AGENT_TOOL_NAME = "Task", VERIFICATION_AGENT_TYPE = "verification", ONE_SHOT_BUILTIN_AGENT_TYPES;
|
|
107606
107675
|
var init_constants4 = __esm(() => {
|
|
107607
107676
|
ONE_SHOT_BUILTIN_AGENT_TYPES = new Set([
|
|
107608
107677
|
"Explore",
|
|
@@ -107714,7 +107783,7 @@ function getDescription() {
|
|
|
107714
107783
|
- Supports full regex syntax (e.g., "log.*Error", "function\\s+\\w+")
|
|
107715
107784
|
- Filter files with glob parameter (e.g., "*.js", "**/*.tsx") or type parameter (e.g., "js", "py", "rust")
|
|
107716
107785
|
- Output modes: "content" shows matching lines, "files_with_matches" shows only file paths (default), "count" shows match counts
|
|
107717
|
-
- Use ${
|
|
107786
|
+
- Use ${AGENT_TOOL_NAME2} tool for open-ended searches requiring multiple rounds
|
|
107718
107787
|
- Pattern syntax: Uses ripgrep (not grep) - literal braces need escaping (use \`interface\\{\\}\` to find \`interface{}\` in Go code)
|
|
107719
107788
|
- Multiline matching: By default patterns match within single lines only. For cross-line patterns like \`struct \\{[\\s\\S]*?field\`, use \`multiline: true\`
|
|
107720
107789
|
`;
|
|
@@ -107751,7 +107820,7 @@ var init_constants5 = __esm(() => {
|
|
|
107751
107820
|
GREP_TOOL_NAME2,
|
|
107752
107821
|
BASH_TOOL_NAME2,
|
|
107753
107822
|
NOTEBOOK_EDIT_TOOL_NAME2,
|
|
107754
|
-
|
|
107823
|
+
AGENT_TOOL_NAME2
|
|
107755
107824
|
]);
|
|
107756
107825
|
});
|
|
107757
107826
|
|
|
@@ -130512,13 +130581,23 @@ var init_ToolSearchTool = __esm(() => {
|
|
|
130512
130581
|
content: text
|
|
130513
130582
|
};
|
|
130514
130583
|
}
|
|
130584
|
+
if (isNativeToolReferenceWire()) {
|
|
130585
|
+
return {
|
|
130586
|
+
type: "tool_result",
|
|
130587
|
+
tool_use_id: toolUseID,
|
|
130588
|
+
content: content.matches.map((name) => ({
|
|
130589
|
+
type: "tool_reference",
|
|
130590
|
+
tool_name: name
|
|
130591
|
+
}))
|
|
130592
|
+
};
|
|
130593
|
+
}
|
|
130594
|
+
const markerLines = content.matches.map((name) => `<discovered-tool name="${name}" />`).join(`
|
|
130595
|
+
`);
|
|
130515
130596
|
return {
|
|
130516
130597
|
type: "tool_result",
|
|
130517
130598
|
tool_use_id: toolUseID,
|
|
130518
|
-
content: content.matches.
|
|
130519
|
-
|
|
130520
|
-
tool_name: name
|
|
130521
|
-
}))
|
|
130599
|
+
content: `Found ${content.matches.length} tool(s) — their full schemas will ` + `be included in your tools list from the next request:
|
|
130600
|
+
` + markerLines
|
|
130522
130601
|
};
|
|
130523
130602
|
}
|
|
130524
130603
|
});
|
|
@@ -131443,6 +131522,7 @@ function shouldEnableThinkingByDefault() {
|
|
|
131443
131522
|
var init_thinking = __esm(() => {
|
|
131444
131523
|
init_model();
|
|
131445
131524
|
init_modelSupportOverrides();
|
|
131525
|
+
init_antModels();
|
|
131446
131526
|
init_state2();
|
|
131447
131527
|
init_settings2();
|
|
131448
131528
|
});
|
|
@@ -131582,6 +131662,7 @@ var init_effort = __esm(() => {
|
|
|
131582
131662
|
init_auth();
|
|
131583
131663
|
init_state2();
|
|
131584
131664
|
init_modelSupportOverrides();
|
|
131665
|
+
init_antModels();
|
|
131585
131666
|
init_envUtils();
|
|
131586
131667
|
EFFORT_LEVELS = [
|
|
131587
131668
|
"low",
|
|
@@ -223847,7 +223928,7 @@ var init_tools = __esm(() => {
|
|
|
223847
223928
|
TASK_OUTPUT_TOOL_NAME,
|
|
223848
223929
|
EXIT_PLAN_MODE_V2_TOOL_NAME,
|
|
223849
223930
|
ENTER_PLAN_MODE_TOOL_NAME,
|
|
223850
|
-
...process.env.USER_TYPE === "ant" ? [] : [
|
|
223931
|
+
...process.env.USER_TYPE === "ant" ? [] : [AGENT_TOOL_NAME],
|
|
223851
223932
|
ASK_USER_QUESTION_TOOL_NAME,
|
|
223852
223933
|
TASK_STOP_TOOL_NAME,
|
|
223853
223934
|
...[]
|
|
@@ -223881,7 +223962,7 @@ var init_tools = __esm(() => {
|
|
|
223881
223962
|
...[]
|
|
223882
223963
|
]);
|
|
223883
223964
|
COORDINATOR_MODE_ALLOWED_TOOLS = new Set([
|
|
223884
|
-
|
|
223965
|
+
AGENT_TOOL_NAME,
|
|
223885
223966
|
TASK_STOP_TOOL_NAME,
|
|
223886
223967
|
SEND_MESSAGE_TOOL_NAME,
|
|
223887
223968
|
SYNTHETIC_OUTPUT_TOOL_NAME
|
|
@@ -231003,6 +231084,9 @@ function getPluginErrorMessage(error41) {
|
|
|
231003
231084
|
}
|
|
231004
231085
|
|
|
231005
231086
|
// src/capabilities/mcp/knownServers.ts
|
|
231087
|
+
function isClaudeInChromeMCPServer(name) {
|
|
231088
|
+
return normalizeNameForMCP(name) === CLAUDE_IN_CHROME_MCP_SERVER_NAME;
|
|
231089
|
+
}
|
|
231006
231090
|
var CLAUDE_IN_CHROME_MCP_SERVER_NAME = "claude-in-chrome", CHROME_TOOL_SEARCH_INSTRUCTIONS = `**IMPORTANT: Before using any chrome browser tools, you MUST first load them using ToolSearch.**
|
|
231007
231091
|
|
|
231008
231092
|
Chrome browser tools are MCP tools that require loading before use. Before calling any mcp__claude-in-chrome__* tool:
|
|
@@ -231969,7 +232053,7 @@ var init_exploreAgent = __esm(() => {
|
|
|
231969
232053
|
agentType: "Explore",
|
|
231970
232054
|
whenToUse: EXPLORE_WHEN_TO_USE,
|
|
231971
232055
|
disallowedTools: [
|
|
231972
|
-
|
|
232056
|
+
AGENT_TOOL_NAME,
|
|
231973
232057
|
EXIT_PLAN_MODE_TOOL_NAME,
|
|
231974
232058
|
FILE_EDIT_TOOL_NAME,
|
|
231975
232059
|
FILE_WRITE_TOOL_NAME,
|
|
@@ -232075,7 +232159,7 @@ var init_planAgent = __esm(() => {
|
|
|
232075
232159
|
agentType: "Plan",
|
|
232076
232160
|
whenToUse: "Software architect agent for designing implementation plans. Use this when you need to plan the implementation strategy for a task. Returns step-by-step plans, identifies critical files, and considers architectural trade-offs.",
|
|
232077
232161
|
disallowedTools: [
|
|
232078
|
-
|
|
232162
|
+
AGENT_TOOL_NAME2,
|
|
232079
232163
|
EXIT_PLAN_MODE_TOOL_NAME,
|
|
232080
232164
|
FILE_EDIT_TOOL_NAME,
|
|
232081
232165
|
FILE_WRITE_TOOL_NAME,
|
|
@@ -232363,7 +232447,23 @@ Use the literal string \`VERDICT: \` followed by exactly one of \`PASS\`, \`FAIL
|
|
|
232363
232447
|
- **PARTIAL**: what was verified, what could not be and why (missing tool/env), what the implementer should know.`;
|
|
232364
232448
|
});
|
|
232365
232449
|
|
|
232450
|
+
// src/capabilities/tools/AgentTool/agentMerge.ts
|
|
232451
|
+
function mergeAgentsByType(base2, override) {
|
|
232452
|
+
const byType = new Map;
|
|
232453
|
+
for (const agent of base2)
|
|
232454
|
+
byType.set(agent.agentType, agent);
|
|
232455
|
+
for (const agent of override)
|
|
232456
|
+
byType.set(agent.agentType, agent);
|
|
232457
|
+
return [...byType.values()];
|
|
232458
|
+
}
|
|
232459
|
+
|
|
232366
232460
|
// src/capabilities/tools/AgentTool/builtInAgents.ts
|
|
232461
|
+
var exports_builtInAgents = {};
|
|
232462
|
+
__export(exports_builtInAgents, {
|
|
232463
|
+
resolveSdkAgents: () => resolveSdkAgents,
|
|
232464
|
+
getBuiltInAgents: () => getBuiltInAgents,
|
|
232465
|
+
areExplorePlanAgentsEnabled: () => areExplorePlanAgentsEnabled
|
|
232466
|
+
});
|
|
232367
232467
|
function areExplorePlanAgentsEnabled() {
|
|
232368
232468
|
if (false) {}
|
|
232369
232469
|
return false;
|
|
@@ -232387,6 +232487,9 @@ function getBuiltInAgents() {
|
|
|
232387
232487
|
if (false) {}
|
|
232388
232488
|
return agents;
|
|
232389
232489
|
}
|
|
232490
|
+
function resolveSdkAgents(hostAgents) {
|
|
232491
|
+
return mergeAgentsByType(getBuiltInAgents(), hostAgents);
|
|
232492
|
+
}
|
|
232390
232493
|
var init_builtInAgents = __esm(() => {
|
|
232391
232494
|
init_state();
|
|
232392
232495
|
init_envUtils();
|
|
@@ -233313,7 +233416,7 @@ function getDefaultAppState() {
|
|
|
233313
233416
|
replBridgeInitialName: undefined,
|
|
233314
233417
|
showRemoteCallout: false,
|
|
233315
233418
|
toolPermissionContext: {
|
|
233316
|
-
...
|
|
233419
|
+
...getEmptyToolPermissionContext2(),
|
|
233317
233420
|
mode: initialMode
|
|
233318
233421
|
},
|
|
233319
233422
|
agent: undefined,
|
|
@@ -234457,6 +234560,34 @@ var init_registerFrontmatterHooks = __esm(() => {
|
|
|
234457
234560
|
init_sessionHooks();
|
|
234458
234561
|
});
|
|
234459
234562
|
|
|
234563
|
+
// src/session/backgroundAbortRegistry.ts
|
|
234564
|
+
function registerBackgroundAgentAbort(agentId, controller) {
|
|
234565
|
+
runs.set(agentId, { controller, stopFired: false });
|
|
234566
|
+
}
|
|
234567
|
+
function unregisterBackgroundAgentAbort(agentId) {
|
|
234568
|
+
runs.delete(agentId);
|
|
234569
|
+
}
|
|
234570
|
+
function abortBackgroundAgentById(agentId) {
|
|
234571
|
+
const run = runs.get(agentId);
|
|
234572
|
+
if (!run)
|
|
234573
|
+
return false;
|
|
234574
|
+
run.controller.abort();
|
|
234575
|
+
return true;
|
|
234576
|
+
}
|
|
234577
|
+
function markSubagentStopFired(agentId) {
|
|
234578
|
+
const run = runs.get(agentId);
|
|
234579
|
+
if (run) {
|
|
234580
|
+
run.stopFired = true;
|
|
234581
|
+
}
|
|
234582
|
+
}
|
|
234583
|
+
function hasSubagentStopFired(agentId) {
|
|
234584
|
+
return runs.get(agentId)?.stopFired ?? false;
|
|
234585
|
+
}
|
|
234586
|
+
var runs;
|
|
234587
|
+
var init_backgroundAbortRegistry = __esm(() => {
|
|
234588
|
+
runs = new Map;
|
|
234589
|
+
});
|
|
234590
|
+
|
|
234460
234591
|
// src/providers/shared/model/agent.ts
|
|
234461
234592
|
function getDefaultSubagentModel() {
|
|
234462
234593
|
return "inherit";
|
|
@@ -234508,6 +234639,12 @@ var init_agent = __esm(() => {
|
|
|
234508
234639
|
});
|
|
234509
234640
|
|
|
234510
234641
|
// src/providers/shared/routing.ts
|
|
234642
|
+
function resolveModelProvider(model, modelProviders) {
|
|
234643
|
+
const config2 = modelProviders?.[model];
|
|
234644
|
+
if (!config2)
|
|
234645
|
+
return null;
|
|
234646
|
+
return { model, ...config2 };
|
|
234647
|
+
}
|
|
234511
234648
|
function normalize10(key) {
|
|
234512
234649
|
return key.toLowerCase().replace(/[-_]/g, "");
|
|
234513
234650
|
}
|
|
@@ -234810,9 +234947,6 @@ var init_caching = __esm(() => {
|
|
|
234810
234947
|
init_microCompact();
|
|
234811
234948
|
});
|
|
234812
234949
|
|
|
234813
|
-
// src/providers/shared/model/antModels.ts
|
|
234814
|
-
var init_antModels = () => {};
|
|
234815
|
-
|
|
234816
234950
|
// src/lib/fingerprint.ts
|
|
234817
234951
|
import { createHash as createHash4 } from "crypto";
|
|
234818
234952
|
function extractFirstMessageText(messages) {
|
|
@@ -235043,7 +235177,7 @@ function filterToolsForAgent({
|
|
|
235043
235177
|
}
|
|
235044
235178
|
if (isAsync2 && !ASYNC_AGENT_ALLOWED_TOOLS.has(tool.name)) {
|
|
235045
235179
|
if (isAgentSwarmsEnabled() && isInProcessTeammate()) {
|
|
235046
|
-
if (toolMatchesName(tool,
|
|
235180
|
+
if (toolMatchesName(tool, AGENT_TOOL_NAME2)) {
|
|
235047
235181
|
return true;
|
|
235048
235182
|
}
|
|
235049
235183
|
if (IN_PROCESS_TEAMMATE_ALLOWED_TOOLS.has(tool.name)) {
|
|
@@ -235093,7 +235227,7 @@ function resolveAgentTools(agentDefinition, availableTools, isAsync2 = false, is
|
|
|
235093
235227
|
let allowedAgentTypes;
|
|
235094
235228
|
for (const toolSpec of agentTools) {
|
|
235095
235229
|
const { toolName, ruleContent } = permissionRuleValueFromString(toolSpec);
|
|
235096
|
-
if (toolName ===
|
|
235230
|
+
if (toolName === AGENT_TOOL_NAME2) {
|
|
235097
235231
|
if (ruleContent) {
|
|
235098
235232
|
allowedAgentTypes = ruleContent.split(",").map((s) => s.trim());
|
|
235099
235233
|
}
|
|
@@ -235312,6 +235446,8 @@ async function runAsyncAgentLifecycle({
|
|
|
235312
235446
|
return;
|
|
235313
235447
|
}
|
|
235314
235448
|
const msg = errorMessage(error41);
|
|
235449
|
+
logForDebugging(`Background agent ${taskId} failed: ${msg}
|
|
235450
|
+
${error41 instanceof Error ? error41.stack ?? "" : ""}`, { level: "error" });
|
|
235315
235451
|
failAgentTask(taskId, msg, rootSetAppState);
|
|
235316
235452
|
const worktreeResult = await getWorktreeResult();
|
|
235317
235453
|
enqueueAgentNotification({
|
|
@@ -235466,6 +235602,49 @@ async function initializeAgentMcpServers(agentDefinition, parentClients) {
|
|
|
235466
235602
|
function isRecordableMessage(msg) {
|
|
235467
235603
|
return msg.type === "assistant" || msg.type === "user" || msg.type === "progress" || msg.type === "system" && "subtype" in msg && msg.subtype === "compact_boundary";
|
|
235468
235604
|
}
|
|
235605
|
+
function simplifySubagentMessageBlocks(msg) {
|
|
235606
|
+
const content = msg.message.content;
|
|
235607
|
+
if (!Array.isArray(content))
|
|
235608
|
+
return [];
|
|
235609
|
+
const out = [];
|
|
235610
|
+
for (const raw of content) {
|
|
235611
|
+
if (!raw || typeof raw !== "object")
|
|
235612
|
+
continue;
|
|
235613
|
+
const block2 = raw;
|
|
235614
|
+
switch (block2.type) {
|
|
235615
|
+
case "text":
|
|
235616
|
+
if (typeof block2.text === "string" && block2.text) {
|
|
235617
|
+
out.push({ type: "text", text: block2.text });
|
|
235618
|
+
}
|
|
235619
|
+
break;
|
|
235620
|
+
case "thinking":
|
|
235621
|
+
if (typeof block2.thinking === "string" && block2.thinking) {
|
|
235622
|
+
out.push({ type: "thinking", thinking: block2.thinking });
|
|
235623
|
+
}
|
|
235624
|
+
break;
|
|
235625
|
+
case "tool_use":
|
|
235626
|
+
out.push({
|
|
235627
|
+
type: "tool_use",
|
|
235628
|
+
tool_use_id: block2.id,
|
|
235629
|
+
name: block2.name,
|
|
235630
|
+
input: block2.input ?? {}
|
|
235631
|
+
});
|
|
235632
|
+
break;
|
|
235633
|
+
case "tool_result": {
|
|
235634
|
+
const c6 = block2.content;
|
|
235635
|
+
const text = typeof c6 === "string" ? c6 : Array.isArray(c6) ? c6.map((p) => p && typeof p === "object" && p.type === "text" ? String(p.text ?? "") : "").join("") : "";
|
|
235636
|
+
out.push({
|
|
235637
|
+
type: "tool_result",
|
|
235638
|
+
tool_use_id: block2.tool_use_id,
|
|
235639
|
+
content: text,
|
|
235640
|
+
is_error: Boolean(block2.is_error)
|
|
235641
|
+
});
|
|
235642
|
+
break;
|
|
235643
|
+
}
|
|
235644
|
+
}
|
|
235645
|
+
}
|
|
235646
|
+
return out;
|
|
235647
|
+
}
|
|
235469
235648
|
async function* runAgent({
|
|
235470
235649
|
agentDefinition,
|
|
235471
235650
|
promptMessages,
|
|
@@ -235488,13 +235667,14 @@ async function* runAgent({
|
|
|
235488
235667
|
description,
|
|
235489
235668
|
transcriptSubdir,
|
|
235490
235669
|
onQueryProgress,
|
|
235670
|
+
onPartialAssistant,
|
|
235491
235671
|
agentName
|
|
235492
235672
|
}) {
|
|
235493
235673
|
const appState = toolUseContext.getAppState();
|
|
235494
235674
|
const permissionMode = appState.toolPermissionContext.mode;
|
|
235495
235675
|
const rootSetAppState = toolUseContext.setAppStateForTasks ?? toolUseContext.setAppState;
|
|
235496
235676
|
const resolvedAgentModel = getAgentModel(agentDefinition.model, toolUseContext.options.mainLoopModel, model, permissionMode);
|
|
235497
|
-
const providerOverride = resolveAgentProvider(agentName, agentDefinition.agentType, getInitialSettings());
|
|
235677
|
+
const providerOverride = resolveAgentProvider(agentName, agentDefinition.agentType, getInitialSettings()) ?? resolveModelProvider(resolvedAgentModel, toolUseContext.options.modelProviders);
|
|
235498
235678
|
const effectiveModel = providerOverride ? providerOverride.model : resolvedAgentModel;
|
|
235499
235679
|
const agentId = override?.agentId ? override.agentId : createAgentId();
|
|
235500
235680
|
if (transcriptSubdir) {
|
|
@@ -235561,12 +235741,15 @@ async function* runAgent({
|
|
|
235561
235741
|
effortValue
|
|
235562
235742
|
};
|
|
235563
235743
|
};
|
|
235564
|
-
const resolvedTools = useExactTools ? availableTools : resolveAgentTools(agentDefinition, availableTools, isAsync2).resolvedTools;
|
|
235744
|
+
const resolvedTools = filterSubagentDisallowedTools(useExactTools ? availableTools : resolveAgentTools(agentDefinition, availableTools, isAsync2).resolvedTools, toolUseContext.options.subagentDisallowedTools);
|
|
235565
235745
|
const additionalWorkingDirectories = Array.from(appState.toolPermissionContext.additionalWorkingDirectories.keys());
|
|
235566
235746
|
const agentSystemPrompt = override?.systemPrompt ? override.systemPrompt : asSystemPrompt(await getAgentSystemPrompt(agentDefinition, toolUseContext, resolvedAgentModel, additionalWorkingDirectories, resolvedTools));
|
|
235567
235747
|
const agentAbortController = override?.abortController ? override.abortController : isAsync2 ? new AbortController : toolUseContext.abortController;
|
|
235748
|
+
if (isAsync2) {
|
|
235749
|
+
registerBackgroundAgentAbort(agentId, agentAbortController);
|
|
235750
|
+
}
|
|
235568
235751
|
const additionalContexts = [];
|
|
235569
|
-
for await (const hookResult of executeSubagentStartHooks(agentId, agentDefinition.agentType, agentAbortController.signal)) {
|
|
235752
|
+
for await (const hookResult of executeSubagentStartHooks(agentId, agentDefinition.agentType, agentAbortController.signal, undefined, toolUseContext.toolUseId, isAsync2)) {
|
|
235570
235753
|
if (hookResult.additionalContexts && hookResult.additionalContexts.length > 0) {
|
|
235571
235754
|
additionalContexts.push(...hookResult.additionalContexts);
|
|
235572
235755
|
}
|
|
@@ -235631,10 +235814,11 @@ async function* runAgent({
|
|
|
235631
235814
|
verbose: toolUseContext.options.verbose,
|
|
235632
235815
|
mainLoopModel: effectiveModel,
|
|
235633
235816
|
providerOverride: providerOverride ?? undefined,
|
|
235634
|
-
thinkingConfig:
|
|
235817
|
+
thinkingConfig: toolUseContext.options.thinkingConfig,
|
|
235635
235818
|
mcpClients: mergedMcpClients,
|
|
235636
235819
|
mcpResources: toolUseContext.options.mcpResources,
|
|
235637
235820
|
agentDefinitions: toolUseContext.options.agentDefinitions,
|
|
235821
|
+
subagentDisallowedTools: toolUseContext.options.subagentDisallowedTools,
|
|
235638
235822
|
...useExactTools && { querySource }
|
|
235639
235823
|
};
|
|
235640
235824
|
const agentToolRuntimeContext = createSubagentContext(toolUseContext, {
|
|
@@ -235669,6 +235853,12 @@ async function* runAgent({
|
|
|
235669
235853
|
...description && { description }
|
|
235670
235854
|
}).catch((_err) => logForDebugging(`Failed to write agent metadata: ${_err}`));
|
|
235671
235855
|
let lastRecordedUuid = initialMessages.at(-1)?.uuid ?? null;
|
|
235856
|
+
let partialBaseMessage = null;
|
|
235857
|
+
const partialTextByIndex = new Map;
|
|
235858
|
+
const PARTIAL_PROGRESS_HOOK_INTERVAL_MS = 100;
|
|
235859
|
+
let lastPartialProgressHookAt = 0;
|
|
235860
|
+
let lastAssistantForFallback = null;
|
|
235861
|
+
let agentRunError;
|
|
235672
235862
|
try {
|
|
235673
235863
|
for await (const message of query({
|
|
235674
235864
|
messages: initialMessages,
|
|
@@ -235681,8 +235871,37 @@ async function* runAgent({
|
|
|
235681
235871
|
maxTurns: maxTurns ?? agentDefinition.maxTurns
|
|
235682
235872
|
})) {
|
|
235683
235873
|
onQueryProgress?.();
|
|
235684
|
-
if (message.type === "stream_event"
|
|
235685
|
-
|
|
235874
|
+
if (message.type === "stream_event") {
|
|
235875
|
+
const ev = message.event;
|
|
235876
|
+
if (ev.type === "message_start") {
|
|
235877
|
+
if (message.ttftMs != null) {
|
|
235878
|
+
toolUseContext.pushApiMetricsEntry?.(message.ttftMs);
|
|
235879
|
+
}
|
|
235880
|
+
if ((onPartialAssistant || isAsync2) && ev.message) {
|
|
235881
|
+
partialBaseMessage = ev.message;
|
|
235882
|
+
partialTextByIndex.clear();
|
|
235883
|
+
}
|
|
235884
|
+
} else if ((onPartialAssistant || isAsync2) && partialBaseMessage && ev.type === "content_block_delta" && ev.delta?.type === "text_delta" && typeof ev.delta.text === "string") {
|
|
235885
|
+
const idx = ev.index ?? 0;
|
|
235886
|
+
const acc = (partialTextByIndex.get(idx) ?? "") + ev.delta.text;
|
|
235887
|
+
partialTextByIndex.set(idx, acc);
|
|
235888
|
+
onPartialAssistant?.({
|
|
235889
|
+
type: "assistant",
|
|
235890
|
+
message: {
|
|
235891
|
+
...partialBaseMessage,
|
|
235892
|
+
content: [{ type: "text", text: acc, citations: null }]
|
|
235893
|
+
},
|
|
235894
|
+
uuid: randomUUID6(),
|
|
235895
|
+
timestamp: new Date().toISOString()
|
|
235896
|
+
});
|
|
235897
|
+
if (isAsync2) {
|
|
235898
|
+
const now = Date.now();
|
|
235899
|
+
if (now - lastPartialProgressHookAt >= PARTIAL_PROGRESS_HOOK_INTERVAL_MS) {
|
|
235900
|
+
lastPartialProgressHookAt = now;
|
|
235901
|
+
executeSubagentProgressHooks(agentId, agentDefinition.agentType, partialBaseMessage.id, toolUseContext.toolUseId, [{ type: "text", text: acc }]).catch(() => {});
|
|
235902
|
+
}
|
|
235903
|
+
}
|
|
235904
|
+
}
|
|
235686
235905
|
continue;
|
|
235687
235906
|
}
|
|
235688
235907
|
if (message.type === "attachment") {
|
|
@@ -235707,6 +235926,16 @@ async function* runAgent({
|
|
|
235707
235926
|
if (message.type !== "progress") {
|
|
235708
235927
|
lastRecordedUuid = message.uuid;
|
|
235709
235928
|
}
|
|
235929
|
+
if (isAsync2 && message.type === "assistant" && message.message.content.some((b) => b.type === "text" && b.text.trim().length > 0)) {
|
|
235930
|
+
lastAssistantForFallback = message;
|
|
235931
|
+
}
|
|
235932
|
+
if (isAsync2 && (message.type === "assistant" || message.type === "user")) {
|
|
235933
|
+
const blocks = simplifySubagentMessageBlocks(message);
|
|
235934
|
+
if (blocks.length > 0) {
|
|
235935
|
+
const messageId = (message.type === "assistant" ? message.message.id : undefined) ?? message.uuid;
|
|
235936
|
+
executeSubagentProgressHooks(agentId, agentDefinition.agentType, messageId, toolUseContext.toolUseId, blocks).catch(() => {});
|
|
235937
|
+
}
|
|
235938
|
+
}
|
|
235710
235939
|
yield message;
|
|
235711
235940
|
}
|
|
235712
235941
|
}
|
|
@@ -235716,7 +235945,30 @@ async function* runAgent({
|
|
|
235716
235945
|
if (isBuiltInAgent(agentDefinition) && agentDefinition.callback) {
|
|
235717
235946
|
agentDefinition.callback();
|
|
235718
235947
|
}
|
|
235948
|
+
} catch (err2) {
|
|
235949
|
+
agentRunError = err2;
|
|
235950
|
+
throw err2;
|
|
235719
235951
|
} finally {
|
|
235952
|
+
const naturalStopAlreadyFired = isAsync2 && hasSubagentStopFired(agentId);
|
|
235953
|
+
if (isAsync2) {
|
|
235954
|
+
unregisterBackgroundAgentAbort(agentId);
|
|
235955
|
+
}
|
|
235956
|
+
if (isAsync2 && agentRunError !== undefined) {
|
|
235957
|
+
logForDebugging(`Background agent ${agentId} crashed: ${errorMessage(agentRunError)}
|
|
235958
|
+
${agentRunError instanceof Error ? agentRunError.stack ?? "" : ""}`, { level: "error" });
|
|
235959
|
+
}
|
|
235960
|
+
if (isAsync2 && !naturalStopAlreadyFired) {
|
|
235961
|
+
try {
|
|
235962
|
+
const fallbackAppState = agentToolRuntimeContext.getAppState();
|
|
235963
|
+
const terminal = agentAbortController.signal.aborted ? { status: "stopped" } : agentRunError !== undefined ? { status: "failed", errorMessage: errorMessage(agentRunError) } : { status: "completed" };
|
|
235964
|
+
const fallbackStop = executeStopHooks(fallbackAppState.toolPermissionContext.mode, undefined, undefined, false, agentId, agentToolRuntimeContext, lastAssistantForFallback ? [lastAssistantForFallback] : undefined, agentDefinition.agentType, undefined, terminal);
|
|
235965
|
+
for await (const evt of fallbackStop) {}
|
|
235966
|
+
} catch (err2) {
|
|
235967
|
+
logForDebugging(`Fallback SubagentStop failed for ${agentId}: ${err2}`, {
|
|
235968
|
+
level: "warn"
|
|
235969
|
+
});
|
|
235970
|
+
}
|
|
235971
|
+
}
|
|
235720
235972
|
await mcpCleanup();
|
|
235721
235973
|
if (agentDefinition.hooks) {
|
|
235722
235974
|
clearSessionHooks(rootSetAppState, agentId);
|
|
@@ -235803,6 +236055,7 @@ var init_runAgent = __esm(() => {
|
|
|
235803
236055
|
init_cacheBreak();
|
|
235804
236056
|
init_client5();
|
|
235805
236057
|
init_config5();
|
|
236058
|
+
init_permissions2();
|
|
235806
236059
|
init_killShellTasks();
|
|
235807
236060
|
init_attachments();
|
|
235808
236061
|
init_errors5();
|
|
@@ -235812,6 +236065,7 @@ var init_runAgent = __esm(() => {
|
|
|
235812
236065
|
init_registerFrontmatterHooks();
|
|
235813
236066
|
init_sessionHooks();
|
|
235814
236067
|
init_hooks2();
|
|
236068
|
+
init_backgroundAbortRegistry();
|
|
235815
236069
|
init_messages4();
|
|
235816
236070
|
init_agent();
|
|
235817
236071
|
init_settings2();
|
|
@@ -236597,7 +236851,7 @@ var init_TodoWriteTool = __esm(() => {
|
|
|
236597
236851
|
const base2 = `Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable`;
|
|
236598
236852
|
const nudge = verificationNudgeNeeded ? `
|
|
236599
236853
|
|
|
236600
|
-
NOTE: You just closed out 3+ tasks and none of them was a verification step. Before writing your final summary, spawn the verification agent (subagent_type="${
|
|
236854
|
+
NOTE: You just closed out 3+ tasks and none of them was a verification step. Before writing your final summary, spawn the verification agent (subagent_type="${VERIFICATION_AGENT_TYPE}"). You cannot self-assign PARTIAL by listing caveats in your summary — only the verifier issues a verdict.` : "";
|
|
236601
236855
|
return {
|
|
236602
236856
|
tool_use_id: toolUseID,
|
|
236603
236857
|
type: "tool_result",
|
|
@@ -238522,7 +238776,9 @@ var init_coreSchemas = __esm(() => {
|
|
|
238522
238776
|
SubagentStartHookInputSchema = lazySchema(() => BaseHookInputSchema().and(exports_external2.object({
|
|
238523
238777
|
hook_event_name: exports_external2.literal("SubagentStart"),
|
|
238524
238778
|
agent_id: exports_external2.string(),
|
|
238525
|
-
agent_type: exports_external2.string()
|
|
238779
|
+
agent_type: exports_external2.string(),
|
|
238780
|
+
tool_use_id: exports_external2.string().optional().describe("tool_use id of the Agent tool call that launched this subagent. " + "Lets hosts correlate the subagent lifecycle back to the launching " + "tool call (e.g. to render an inline running indicator on its pill)."),
|
|
238781
|
+
is_background: exports_external2.boolean().optional().describe("True when the subagent was launched with run_in_background (async). " + "Lets hosts scope background-specific UI/notifications to async agents.")
|
|
238526
238782
|
})));
|
|
238527
238783
|
SubagentStopHookInputSchema = lazySchema(() => BaseHookInputSchema().and(exports_external2.object({
|
|
238528
238784
|
hook_event_name: exports_external2.literal("SubagentStop"),
|
|
@@ -238530,7 +238786,9 @@ var init_coreSchemas = __esm(() => {
|
|
|
238530
238786
|
agent_id: exports_external2.string(),
|
|
238531
238787
|
agent_transcript_path: exports_external2.string(),
|
|
238532
238788
|
agent_type: exports_external2.string(),
|
|
238533
|
-
last_assistant_message: exports_external2.string().optional().describe("Text content of the last assistant message before stopping. " + "Avoids the need to read and parse the transcript file.")
|
|
238789
|
+
last_assistant_message: exports_external2.string().optional().describe("Text content of the last assistant message before stopping. " + "Avoids the need to read and parse the transcript file."),
|
|
238790
|
+
status: exports_external2.enum(["completed", "failed", "stopped"]).optional().describe("Terminal outcome carried by the guaranteed terminal delivery for " + "background subagents (fired from the run teardown). Absent on the " + "natural-stop path — hosts treat a missing status as completed."),
|
|
238791
|
+
error_message: exports_external2.string().optional().describe("Present when status is failed: the error that aborted the run.")
|
|
238534
238792
|
})));
|
|
238535
238793
|
PreCompactHookInputSchema = lazySchema(() => BaseHookInputSchema().and(exports_external2.object({
|
|
238536
238794
|
hook_event_name: exports_external2.literal("PreCompact"),
|
|
@@ -239036,6 +239294,7 @@ var init_coreSchemas = __esm(() => {
|
|
|
239036
239294
|
compact_metadata: exports_external2.object({
|
|
239037
239295
|
trigger: exports_external2.enum(["manual", "auto"]),
|
|
239038
239296
|
pre_tokens: exports_external2.number(),
|
|
239297
|
+
post_tokens: exports_external2.number().optional().describe("Estimated resulting context size after compaction."),
|
|
239039
239298
|
preserved_segment: exports_external2.object({
|
|
239040
239299
|
head_uuid: UUIDPlaceholder(),
|
|
239041
239300
|
anchor_uuid: UUIDPlaceholder(),
|
|
@@ -250244,7 +250503,7 @@ ${forkEnabled ? "For fresh agents, terse" : "Terse"} command-style prompts produ
|
|
|
250244
250503
|
<example>
|
|
250245
250504
|
user: "What's left on this branch before we can ship?"
|
|
250246
250505
|
assistant: <thinking>Forking this — it's a survey question. I want the punch list, not the git output in my context.</thinking>
|
|
250247
|
-
${
|
|
250506
|
+
${AGENT_TOOL_NAME2}({
|
|
250248
250507
|
name: "ship-audit",
|
|
250249
250508
|
description: "Branch ship-readiness audit",
|
|
250250
250509
|
prompt: "Audit what's left before this branch can ship. Check: uncommitted changes, commits ahead of main, whether tests exist, whether the GrowthBook gate is wired up, whether CI-relevant files changed. Report a punch list — done vs. missing. Under 200 words."
|
|
@@ -250271,7 +250530,7 @@ assistant: <thinking>I'll ask the code-reviewer agent — it won't see my analys
|
|
|
250271
250530
|
<commentary>
|
|
250272
250531
|
A subagent_type is specified, so the agent starts fresh. It needs full context in the prompt. The briefing explains what to assess and why.
|
|
250273
250532
|
</commentary>
|
|
250274
|
-
${
|
|
250533
|
+
${AGENT_TOOL_NAME2}({
|
|
250275
250534
|
name: "migration-review",
|
|
250276
250535
|
description: "Independent migration review",
|
|
250277
250536
|
subagent_type: "code-reviewer",
|
|
@@ -250301,7 +250560,7 @@ function isPrime(n) {
|
|
|
250301
250560
|
<commentary>
|
|
250302
250561
|
Since a significant piece of code was written and the task was completed, now use the test-runner agent to run the tests
|
|
250303
250562
|
</commentary>
|
|
250304
|
-
assistant: Uses the ${
|
|
250563
|
+
assistant: Uses the ${AGENT_TOOL_NAME2} tool to launch the test-runner agent
|
|
250305
250564
|
</example>
|
|
250306
250565
|
|
|
250307
250566
|
<example>
|
|
@@ -250309,7 +250568,7 @@ user: "Hello"
|
|
|
250309
250568
|
<commentary>
|
|
250310
250569
|
Since the user is greeting, use the greeting-responder agent to respond with a friendly joke
|
|
250311
250570
|
</commentary>
|
|
250312
|
-
assistant: "I'm going to use the ${
|
|
250571
|
+
assistant: "I'm going to use the ${AGENT_TOOL_NAME2} tool to launch the greeting-responder agent"
|
|
250313
250572
|
</example>
|
|
250314
250573
|
`;
|
|
250315
250574
|
const listViaAttachment = shouldInjectAgentListInMessages();
|
|
@@ -250318,11 +250577,11 @@ ${effectiveAgents.map((agent) => formatAgentLine(agent)).join(`
|
|
|
250318
250577
|
`)}`;
|
|
250319
250578
|
const shared2 = `Launch a new agent to handle complex, multi-step tasks autonomously.
|
|
250320
250579
|
|
|
250321
|
-
The ${
|
|
250580
|
+
The ${AGENT_TOOL_NAME2} tool launches specialized agents (subprocesses) that autonomously handle complex tasks. Each agent type has specific capabilities and tools available to it.
|
|
250322
250581
|
|
|
250323
250582
|
${agentListSection}
|
|
250324
250583
|
|
|
250325
|
-
${forkEnabled ? `When using the ${
|
|
250584
|
+
${forkEnabled ? `When using the ${AGENT_TOOL_NAME2} tool, specify a subagent_type to use a specialized agent, or omit it to fork yourself — a fork inherits your full conversation context.` : `When using the ${AGENT_TOOL_NAME2} tool, specify a subagent_type parameter to select which agent type to use. If omitted, the general-purpose agent is used.`}`;
|
|
250326
250585
|
if (isCoordinator) {
|
|
250327
250586
|
return shared2;
|
|
250328
250587
|
}
|
|
@@ -250330,10 +250589,10 @@ ${forkEnabled ? `When using the ${AGENT_TOOL_NAME3} tool, specify a subagent_typ
|
|
|
250330
250589
|
const fileSearchHint = embedded ? "`find` via the Bash tool" : `the ${GLOB_TOOL_NAME2} tool`;
|
|
250331
250590
|
const contentSearchHint = embedded ? "`grep` via the Bash tool" : `the ${GLOB_TOOL_NAME2} tool`;
|
|
250332
250591
|
const whenNotToUseSection = forkEnabled ? "" : `
|
|
250333
|
-
When NOT to use the ${
|
|
250334
|
-
- If you want to read a specific file path, use the ${FILE_READ_TOOL_NAME2} tool or ${fileSearchHint} instead of the ${
|
|
250592
|
+
When NOT to use the ${AGENT_TOOL_NAME2} tool:
|
|
250593
|
+
- If you want to read a specific file path, use the ${FILE_READ_TOOL_NAME2} tool or ${fileSearchHint} instead of the ${AGENT_TOOL_NAME2} tool, to find the match more quickly
|
|
250335
250594
|
- If you are searching for a specific class definition like "class Foo", use ${contentSearchHint} instead, to find the match more quickly
|
|
250336
|
-
- If you are searching for code within a specific file or set of 2-3 files, use the ${FILE_READ_TOOL_NAME2} tool instead of the ${
|
|
250595
|
+
- If you are searching for code within a specific file or set of 2-3 files, use the ${FILE_READ_TOOL_NAME2} tool instead of the ${AGENT_TOOL_NAME2} tool, to find the match more quickly
|
|
250337
250596
|
- Other tasks that are not related to the agent descriptions above
|
|
250338
250597
|
`;
|
|
250339
250598
|
const concurrencyNote = !listViaAttachment && getSubscriptionType() !== "pro" ? `
|
|
@@ -250350,7 +250609,7 @@ Usage notes:
|
|
|
250350
250609
|
- The agent's outputs should generally be trusted
|
|
250351
250610
|
- Clearly tell the agent whether you expect it to write code or just to do research (search, file reads, web fetches, etc.)${forkEnabled ? "" : ", since it is not aware of the user's intent"}
|
|
250352
250611
|
- If the agent description mentions that it should be used proactively, then you should try your best to use it without the user having to ask for it first. Use your judgement.
|
|
250353
|
-
- If the user specifies that they want you to run agents "in parallel", you MUST send a single message with multiple ${
|
|
250612
|
+
- If the user specifies that they want you to run agents "in parallel", you MUST send a single message with multiple ${AGENT_TOOL_NAME2} tool use content blocks. For example, if you need to launch both a build-validator agent and a test-runner agent in parallel, send a single message with both tool calls.
|
|
250354
250613
|
- You can optionally set \`isolation: "worktree"\` to run the agent in a temporary git worktree, giving it an isolated copy of the repository. The worktree is automatically cleaned up if the agent makes no changes; if changes are made, the worktree path and branch are returned in the result.${process.env.USER_TYPE === "ant" ? `
|
|
250355
250614
|
- You can set \`isolation: "remote"\` to run the agent in a remote CCR environment. This is always a background task; you'll be notified when it completes. Use for long-running tasks that need a fresh sandbox.` : ""}${isInProcessTeammate() ? `
|
|
250356
250615
|
- The run_in_background, name, team_name, and mode parameters are not available in this context. Only synchronous subagents are supported.` : isTeammate() ? `
|
|
@@ -250500,11 +250759,11 @@ var init_AgentTool = __esm(() => {
|
|
|
250500
250759
|
}
|
|
250501
250760
|
}
|
|
250502
250761
|
const agentsWithMcpRequirementsMet = filterAgentsByMcpRequirements(agents, mcpServersWithTools);
|
|
250503
|
-
const filteredAgents = filterDeniedAgents(agentsWithMcpRequirementsMet, toolPermissionContext,
|
|
250762
|
+
const filteredAgents = filterDeniedAgents(agentsWithMcpRequirementsMet, toolPermissionContext, AGENT_TOOL_NAME2);
|
|
250504
250763
|
const isCoordinator = false;
|
|
250505
250764
|
return await getPrompt2(filteredAgents, isCoordinator, allowedAgentTypes);
|
|
250506
250765
|
},
|
|
250507
|
-
name:
|
|
250766
|
+
name: AGENT_TOOL_NAME2,
|
|
250508
250767
|
searchHint: "delegate work to a subagent",
|
|
250509
250768
|
aliases: [LEGACY_AGENT_TOOL_NAME],
|
|
250510
250769
|
maxResultSizeChars: 1e5,
|
|
@@ -250584,13 +250843,13 @@ var init_AgentTool = __esm(() => {
|
|
|
250584
250843
|
const {
|
|
250585
250844
|
allowedAgentTypes
|
|
250586
250845
|
} = toolUseContext.options.agentDefinitions;
|
|
250587
|
-
const agents = filterDeniedAgents(allowedAgentTypes ? allAgents.filter((a2) => allowedAgentTypes.includes(a2.agentType)) : allAgents, appState.toolPermissionContext,
|
|
250846
|
+
const agents = filterDeniedAgents(allowedAgentTypes ? allAgents.filter((a2) => allowedAgentTypes.includes(a2.agentType)) : allAgents, appState.toolPermissionContext, AGENT_TOOL_NAME2);
|
|
250588
250847
|
const found = agents.find((agent) => agent.agentType === effectiveType);
|
|
250589
250848
|
if (!found) {
|
|
250590
250849
|
const agentExistsButDenied = allAgents.find((agent) => agent.agentType === effectiveType);
|
|
250591
250850
|
if (agentExistsButDenied) {
|
|
250592
|
-
const denyRule = getDenyRuleForAgent(appState.toolPermissionContext,
|
|
250593
|
-
throw new Error(`Agent type '${effectiveType}' has been denied by permission rule '${
|
|
250851
|
+
const denyRule = getDenyRuleForAgent(appState.toolPermissionContext, AGENT_TOOL_NAME2, effectiveType);
|
|
250852
|
+
throw new Error(`Agent type '${effectiveType}' has been denied by permission rule '${AGENT_TOOL_NAME2}(${effectiveType})' from ${denyRule?.source ?? "settings"}.`);
|
|
250594
250853
|
}
|
|
250595
250854
|
throw new Error(`Agent type '${effectiveType}' not found. Available agents: ${agents.map((a2) => a2.agentType).join(", ")}`);
|
|
250596
250855
|
}
|
|
@@ -250961,6 +251220,19 @@ ${reasons}`);
|
|
|
250961
251220
|
...runAgentParams.override,
|
|
250962
251221
|
agentId: syncAgentId
|
|
250963
251222
|
},
|
|
251223
|
+
onPartialAssistant: onProgress ? (partial2) => {
|
|
251224
|
+
if (partial2.message.content.length === 0)
|
|
251225
|
+
return;
|
|
251226
|
+
onProgress({
|
|
251227
|
+
toolUseID: `agent_${assistantMessage.message.id}`,
|
|
251228
|
+
data: {
|
|
251229
|
+
message: partial2,
|
|
251230
|
+
type: "agent_progress",
|
|
251231
|
+
prompt: "",
|
|
251232
|
+
agentId: syncAgentId
|
|
251233
|
+
}
|
|
251234
|
+
});
|
|
251235
|
+
} : undefined,
|
|
250964
251236
|
onCacheSafeParams: summaryTaskId && getSdkAgentProgressSummariesEnabled() ? (params) => {
|
|
250965
251237
|
const {
|
|
250966
251238
|
stop
|
|
@@ -251143,21 +251415,16 @@ ${reasons}`);
|
|
|
251143
251415
|
}
|
|
251144
251416
|
const normalizedNew = normalizeMessages([message]);
|
|
251145
251417
|
for (const m of normalizedNew) {
|
|
251146
|
-
|
|
251147
|
-
|
|
251148
|
-
|
|
251149
|
-
|
|
251150
|
-
|
|
251151
|
-
|
|
251152
|
-
|
|
251153
|
-
|
|
251154
|
-
|
|
251155
|
-
|
|
251156
|
-
prompt: "",
|
|
251157
|
-
agentId: syncAgentId
|
|
251158
|
-
}
|
|
251159
|
-
});
|
|
251160
|
-
}
|
|
251418
|
+
if (onProgress && m.message.content.length > 0) {
|
|
251419
|
+
onProgress({
|
|
251420
|
+
toolUseID: `agent_${assistantMessage.message.id}`,
|
|
251421
|
+
data: {
|
|
251422
|
+
message: m,
|
|
251423
|
+
type: "agent_progress",
|
|
251424
|
+
prompt: "",
|
|
251425
|
+
agentId: syncAgentId
|
|
251426
|
+
}
|
|
251427
|
+
});
|
|
251161
251428
|
}
|
|
251162
251429
|
}
|
|
251163
251430
|
}
|
|
@@ -251305,10 +251572,9 @@ Briefly tell the user what you launched and end your response.`
|
|
|
251305
251572
|
if (data.status === "async_launched") {
|
|
251306
251573
|
const prefix = `Async agent launched successfully.
|
|
251307
251574
|
agentId: ${data.agentId} (internal ID - do not mention to user. Use SendMessage with to: '${data.agentId}' to continue this agent.)
|
|
251308
|
-
The agent is working in the background.
|
|
251309
|
-
const instructions =
|
|
251310
|
-
|
|
251311
|
-
If asked, you can check progress before completion by using ${FILE_READ_TOOL_NAME2} or ${BASH_TOOL_NAME2} tail on the output file.` : `Briefly tell the user what you launched and end your response. Do not generate any other text — agent results will arrive in a subsequent message.`;
|
|
251575
|
+
The agent is working in the background. Its result will be delivered to you automatically when it completes.`;
|
|
251576
|
+
const instructions = `Do not duplicate this agent's work — avoid working with the same files or topics it is using. Work on non-overlapping tasks, or briefly tell the user what you launched and end your response.
|
|
251577
|
+
Do NOT read its output/transcript file to check progress — its result will arrive automatically in a subsequent message.`;
|
|
251312
251578
|
const text = `${prefix}
|
|
251313
251579
|
${instructions}`;
|
|
251314
251580
|
return {
|
|
@@ -256809,7 +257075,7 @@ function toComparable(p) {
|
|
|
256809
257075
|
return IS_WINDOWS ? posixForm.toLowerCase() : posixForm;
|
|
256810
257076
|
}
|
|
256811
257077
|
function detectSessionFileType(filePath) {
|
|
256812
|
-
const configDir =
|
|
257078
|
+
const configDir = resolveConfigHomeDir();
|
|
256813
257079
|
const normalized = toComparable(filePath);
|
|
256814
257080
|
const configDirCmp = toComparable(configDir);
|
|
256815
257081
|
if (!normalized.startsWith(configDirCmp)) {
|
|
@@ -256855,6 +257121,7 @@ var init_memoryFileDetection = __esm(() => {
|
|
|
256855
257121
|
init_agentMemory();
|
|
256856
257122
|
init_state2();
|
|
256857
257123
|
init_paths();
|
|
257124
|
+
init_envUtils();
|
|
256858
257125
|
init_windowsPaths();
|
|
256859
257126
|
IS_WINDOWS = process.platform === "win32";
|
|
256860
257127
|
});
|
|
@@ -258095,7 +258362,7 @@ Git Safety Protocol:
|
|
|
258095
258362
|
|
|
258096
258363
|
Important notes:
|
|
258097
258364
|
- NEVER run additional commands to read or explore code, besides git bash commands
|
|
258098
|
-
- NEVER use the ${TodoWriteTool.name} or ${
|
|
258365
|
+
- NEVER use the ${TodoWriteTool.name} or ${AGENT_TOOL_NAME2} tools
|
|
258099
258366
|
- DO NOT push to the remote repository unless the user explicitly asks you to do so
|
|
258100
258367
|
- IMPORTANT: Never use git commands with the -i flag (like git rebase -i or git add -i) since they require interactive input which is not supported.
|
|
258101
258368
|
- IMPORTANT: Do not use --no-edit with git rebase commands, as the --no-edit flag is not a valid option for git rebase.
|
|
@@ -258141,7 +258408,7 @@ EOF
|
|
|
258141
258408
|
</example>
|
|
258142
258409
|
|
|
258143
258410
|
Important:
|
|
258144
|
-
- DO NOT use the ${TodoWriteTool.name} or ${
|
|
258411
|
+
- DO NOT use the ${TodoWriteTool.name} or ${AGENT_TOOL_NAME2} tools
|
|
258145
258412
|
- Return the PR URL when you're done, so the user can see it
|
|
258146
258413
|
|
|
258147
258414
|
# Other common operations
|
|
@@ -278143,6 +278410,7 @@ var init_client5 = __esm(() => {
|
|
|
278143
278410
|
init_auth();
|
|
278144
278411
|
init_cleanupRegistry();
|
|
278145
278412
|
init_codeIndexing();
|
|
278413
|
+
init_knownServers();
|
|
278146
278414
|
init_debug();
|
|
278147
278415
|
init_envUtils();
|
|
278148
278416
|
init_errors5();
|
|
@@ -281347,6 +281615,7 @@ function productionDeps() {
|
|
|
281347
281615
|
callModel: queryModelWithStreaming,
|
|
281348
281616
|
microcompact: microcompactMessages,
|
|
281349
281617
|
autocompact: autoCompactIfNeeded,
|
|
281618
|
+
manualCompact,
|
|
281350
281619
|
uuid: randomUUID10
|
|
281351
281620
|
};
|
|
281352
281621
|
}
|
|
@@ -281410,7 +281679,8 @@ async function* queryLoop(params, consumedCommandUuids) {
|
|
|
281410
281679
|
fallbackModel,
|
|
281411
281680
|
querySource,
|
|
281412
281681
|
maxTurns,
|
|
281413
|
-
skipCacheWrite
|
|
281682
|
+
skipCacheWrite,
|
|
281683
|
+
compactRequest
|
|
281414
281684
|
} = params;
|
|
281415
281685
|
const deps = params.deps ?? productionDeps();
|
|
281416
281686
|
let state3 = {
|
|
@@ -281475,6 +281745,28 @@ async function* queryLoop(params, consumedCommandUuids) {
|
|
|
281475
281745
|
const pendingCacheEdits2 = undefined;
|
|
281476
281746
|
queryCheckpoint("query_microcompact_end");
|
|
281477
281747
|
if (false) {}
|
|
281748
|
+
if (compactRequest) {
|
|
281749
|
+
try {
|
|
281750
|
+
const { compactionResult: compactionResult2 } = await deps.manualCompact(messagesForQuery, toolUseContext, {
|
|
281751
|
+
systemPrompt,
|
|
281752
|
+
userContext,
|
|
281753
|
+
systemContext,
|
|
281754
|
+
toolUseContext,
|
|
281755
|
+
forkContextMessages: messagesForQuery
|
|
281756
|
+
}, compactRequest.instructions);
|
|
281757
|
+
if (compactionResult2) {
|
|
281758
|
+
for (const message of buildPostCompactMessages(compactionResult2)) {
|
|
281759
|
+
yield message;
|
|
281760
|
+
}
|
|
281761
|
+
}
|
|
281762
|
+
} catch (err2) {
|
|
281763
|
+
yield createAssistantAPIErrorMessage({
|
|
281764
|
+
content: err2 instanceof Error ? err2.message : String(err2),
|
|
281765
|
+
error: "invalid_request"
|
|
281766
|
+
});
|
|
281767
|
+
}
|
|
281768
|
+
return { reason: "completed" };
|
|
281769
|
+
}
|
|
281478
281770
|
const fullSystemPrompt = asSystemPrompt(appendSystemContext(systemPrompt, systemContext));
|
|
281479
281771
|
queryCheckpoint("query_autocompact_start");
|
|
281480
281772
|
const { compactionResult, consecutiveFailures } = await deps.autocompact(messagesForQuery, toolUseContext, {
|
|
@@ -282194,6 +282486,9 @@ function accumulateUsage(totalUsage, messageUsage) {
|
|
|
282194
282486
|
}
|
|
282195
282487
|
|
|
282196
282488
|
// src/providers/shared/usage.ts
|
|
282489
|
+
function contextWindowTokens(usage) {
|
|
282490
|
+
return (usage.input_tokens ?? 0) + (usage.cache_read_input_tokens ?? 0) + (usage.cache_creation_input_tokens ?? 0);
|
|
282491
|
+
}
|
|
282197
282492
|
var EMPTY_USAGE;
|
|
282198
282493
|
var init_usage = __esm(() => {
|
|
282199
282494
|
EMPTY_USAGE = {
|
|
@@ -282266,7 +282561,7 @@ function getAnthropicEnvMetadata() {
|
|
|
282266
282561
|
function getBuildAgeMinutes() {
|
|
282267
282562
|
if (false)
|
|
282268
282563
|
;
|
|
282269
|
-
const buildTime = new Date("2026-06-
|
|
282564
|
+
const buildTime = new Date("2026-06-20T04:27:50.766Z").getTime();
|
|
282270
282565
|
if (isNaN(buildTime))
|
|
282271
282566
|
return;
|
|
282272
282567
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -283609,6 +283904,7 @@ async function compactConversation(messages, context4, cacheSafeParams, suppress
|
|
|
283609
283904
|
...postCompactFileAttachments,
|
|
283610
283905
|
...hookMessages
|
|
283611
283906
|
]);
|
|
283907
|
+
boundaryMarker.compactMetadata.postTokens = truePostCompactTokenCount;
|
|
283612
283908
|
const compactionUsage = getTokenUsage(summaryResponse);
|
|
283613
283909
|
const querySourceForEvent = recompactionInfo?.querySource ?? context4.options.querySource ?? "unknown";
|
|
283614
283910
|
logEvent("tengu_compact", {
|
|
@@ -284649,6 +284945,24 @@ async function autoCompactIfNeeded(messages, toolUseContext, cacheSafeParams, qu
|
|
|
284649
284945
|
return { wasCompacted: false, consecutiveFailures: nextFailures };
|
|
284650
284946
|
}
|
|
284651
284947
|
}
|
|
284948
|
+
async function manualCompact(messages, toolUseContext, cacheSafeParams, instructions, deps = { compactConversation, trySessionMemoryCompaction }) {
|
|
284949
|
+
if (isEnvTruthy(process.env.DISABLE_COMPACT)) {
|
|
284950
|
+
return { wasCompacted: false };
|
|
284951
|
+
}
|
|
284952
|
+
if (!instructions) {
|
|
284953
|
+
const sessionMemoryResult = await deps.trySessionMemoryCompaction(messages, toolUseContext.agentId);
|
|
284954
|
+
if (sessionMemoryResult) {
|
|
284955
|
+
setLastSummarizedMessageId(undefined);
|
|
284956
|
+
runPostCompactCleanup();
|
|
284957
|
+
markPostCompaction();
|
|
284958
|
+
return { wasCompacted: true, compactionResult: sessionMemoryResult };
|
|
284959
|
+
}
|
|
284960
|
+
}
|
|
284961
|
+
const compactionResult = await deps.compactConversation(messages, toolUseContext, cacheSafeParams, false, instructions, false);
|
|
284962
|
+
setLastSummarizedMessageId(undefined);
|
|
284963
|
+
runPostCompactCleanup();
|
|
284964
|
+
return { wasCompacted: true, compactionResult };
|
|
284965
|
+
}
|
|
284652
284966
|
var MAX_OUTPUT_TOKENS_FOR_SUMMARY = 20000, AUTOCOMPACT_BUFFER_TOKENS = 13000, WARNING_THRESHOLD_BUFFER_TOKENS = 20000, ERROR_THRESHOLD_BUFFER_TOKENS = 20000, MANUAL_COMPACT_BUFFER_TOKENS = 3000, MAX_CONSECUTIVE_AUTOCOMPACT_FAILURES = 3;
|
|
284653
284967
|
var init_autoCompact = __esm(() => {
|
|
284654
284968
|
init_state();
|
|
@@ -284767,7 +285081,7 @@ function isAutoToolSearchMode(value) {
|
|
|
284767
285081
|
return value === "auto" || value.startsWith("auto:");
|
|
284768
285082
|
}
|
|
284769
285083
|
function getAutoToolSearchPercentage() {
|
|
284770
|
-
const value =
|
|
285084
|
+
const value = resolveEnvVar("ENABLE_TOOL_SEARCH");
|
|
284771
285085
|
if (!value)
|
|
284772
285086
|
return DEFAULT_AUTO_TOOL_SEARCH_PERCENTAGE;
|
|
284773
285087
|
if (value === "auto")
|
|
@@ -284790,7 +285104,7 @@ function getToolSearchMode() {
|
|
|
284790
285104
|
if (isEnvTruthy(resolveEnvVar("DISABLE_EXPERIMENTAL_BETAS"))) {
|
|
284791
285105
|
return "standard";
|
|
284792
285106
|
}
|
|
284793
|
-
const value =
|
|
285107
|
+
const value = resolveEnvVar("ENABLE_TOOL_SEARCH");
|
|
284794
285108
|
const autoPercent = value ? parseAutoPercentage(value) : null;
|
|
284795
285109
|
if (autoPercent === 0)
|
|
284796
285110
|
return "tst";
|
|
@@ -284801,7 +285115,7 @@ function getToolSearchMode() {
|
|
|
284801
285115
|
}
|
|
284802
285116
|
if (isEnvTruthy(value))
|
|
284803
285117
|
return "tst";
|
|
284804
|
-
if (isEnvDefinedFalsy(
|
|
285118
|
+
if (isEnvDefinedFalsy(value))
|
|
284805
285119
|
return "standard";
|
|
284806
285120
|
return "tst";
|
|
284807
285121
|
}
|
|
@@ -284829,11 +285143,12 @@ function isToolSearchEnabledOptimistic() {
|
|
|
284829
285143
|
if (mode === "standard") {
|
|
284830
285144
|
if (!loggedOptimistic) {
|
|
284831
285145
|
loggedOptimistic = true;
|
|
284832
|
-
logForDebugging(`[ToolSearch:optimistic] mode=${mode}, ENABLE_TOOL_SEARCH=${
|
|
285146
|
+
logForDebugging(`[ToolSearch:optimistic] mode=${mode}, ENABLE_TOOL_SEARCH=${resolveEnvVar("ENABLE_TOOL_SEARCH")}, result=false`);
|
|
284833
285147
|
}
|
|
284834
285148
|
return false;
|
|
284835
285149
|
}
|
|
284836
|
-
|
|
285150
|
+
const enableToolSearchValue = resolveEnvVar("ENABLE_TOOL_SEARCH");
|
|
285151
|
+
if (!enableToolSearchValue && isFamily(getProvider(), "firstParty") && !isFirstPartyAnthropicBaseUrl()) {
|
|
284837
285152
|
if (!loggedOptimistic) {
|
|
284838
285153
|
loggedOptimistic = true;
|
|
284839
285154
|
logForDebugging(`[ToolSearch:optimistic] disabled: ANTHROPIC_BASE_URL=${process.env.ANTHROPIC_BASE_URL} is not a first-party Anthropic host. Set ENABLE_TOOL_SEARCH=true (or auto / auto:N) if your proxy forwards tool_reference blocks.`);
|
|
@@ -284842,10 +285157,13 @@ function isToolSearchEnabledOptimistic() {
|
|
|
284842
285157
|
}
|
|
284843
285158
|
if (!loggedOptimistic) {
|
|
284844
285159
|
loggedOptimistic = true;
|
|
284845
|
-
logForDebugging(`[ToolSearch:optimistic] mode=${mode}, ENABLE_TOOL_SEARCH=${
|
|
285160
|
+
logForDebugging(`[ToolSearch:optimistic] mode=${mode}, ENABLE_TOOL_SEARCH=${enableToolSearchValue}, result=true`);
|
|
284846
285161
|
}
|
|
284847
285162
|
return true;
|
|
284848
285163
|
}
|
|
285164
|
+
function isNativeToolReferenceWire() {
|
|
285165
|
+
return isFamily(getProvider(), "firstParty") && isFirstPartyAnthropicBaseUrl();
|
|
285166
|
+
}
|
|
284849
285167
|
function isToolSearchToolAvailable(tools) {
|
|
284850
285168
|
return tools.some((tool) => toolMatchesName2(tool, TOOL_SEARCH_TOOL_NAME));
|
|
284851
285169
|
}
|
|
@@ -284917,6 +285235,14 @@ function isToolReferenceWithName(obj) {
|
|
|
284917
285235
|
function isToolResultBlockWithContent(obj) {
|
|
284918
285236
|
return typeof obj === "object" && obj !== null && "type" in obj && obj.type === "tool_result" && "content" in obj && Array.isArray(obj.content);
|
|
284919
285237
|
}
|
|
285238
|
+
function isToolResultBlockWithStringContent(obj) {
|
|
285239
|
+
return typeof obj === "object" && obj !== null && obj.type === "tool_result" && typeof obj.content === "string";
|
|
285240
|
+
}
|
|
285241
|
+
function scanDiscoveredToolMarkers(text, into) {
|
|
285242
|
+
for (const m of text.matchAll(DISCOVERED_TOOL_MARKER_RE)) {
|
|
285243
|
+
into.add(m[1]);
|
|
285244
|
+
}
|
|
285245
|
+
}
|
|
284920
285246
|
function extractDiscoveredToolNames(messages) {
|
|
284921
285247
|
const discoveredTools = new Set;
|
|
284922
285248
|
let carriedFromBoundary = 0;
|
|
@@ -284940,8 +285266,12 @@ function extractDiscoveredToolNames(messages) {
|
|
|
284940
285266
|
for (const item of block2.content) {
|
|
284941
285267
|
if (isToolReferenceWithName(item)) {
|
|
284942
285268
|
discoveredTools.add(item.tool_name);
|
|
285269
|
+
} else if (typeof item?.text === "string") {
|
|
285270
|
+
scanDiscoveredToolMarkers(item.text, discoveredTools);
|
|
284943
285271
|
}
|
|
284944
285272
|
}
|
|
285273
|
+
} else if (isToolResultBlockWithStringContent(block2)) {
|
|
285274
|
+
scanDiscoveredToolMarkers(block2.content, discoveredTools);
|
|
284945
285275
|
}
|
|
284946
285276
|
}
|
|
284947
285277
|
}
|
|
@@ -285019,7 +285349,7 @@ async function checkAutoThreshold(tools, getToolPermissionContext, agents, model
|
|
|
285019
285349
|
metrics: { deferredToolDescriptionChars, charThreshold }
|
|
285020
285350
|
};
|
|
285021
285351
|
}
|
|
285022
|
-
var DEFAULT_AUTO_TOOL_SEARCH_PERCENTAGE = 10, CHARS_PER_TOKEN2 = 2.5, getDeferredToolTokenCount, DEFAULT_UNSUPPORTED_MODEL_PATTERNS, loggedOptimistic = false;
|
|
285352
|
+
var DEFAULT_AUTO_TOOL_SEARCH_PERCENTAGE = 10, CHARS_PER_TOKEN2 = 2.5, getDeferredToolTokenCount, DEFAULT_UNSUPPORTED_MODEL_PATTERNS, loggedOptimistic = false, DISCOVERED_TOOL_MARKER_RE;
|
|
285023
285353
|
var init_toolSearch = __esm(() => {
|
|
285024
285354
|
init_memoize();
|
|
285025
285355
|
init_Tool();
|
|
@@ -285047,6 +285377,7 @@ var init_toolSearch = __esm(() => {
|
|
|
285047
285377
|
}
|
|
285048
285378
|
}, (tools) => tools.filter((t) => isDeferredTool(t)).map((t) => t.name).join(","));
|
|
285049
285379
|
DEFAULT_UNSUPPORTED_MODEL_PATTERNS = ["haiku"];
|
|
285380
|
+
DISCOVERED_TOOL_MARKER_RE = /<discovered-tool name="([^"]+)" \/>/g;
|
|
285050
285381
|
});
|
|
285051
285382
|
|
|
285052
285383
|
// src/providers/shared/tokenCount.ts
|
|
@@ -286658,7 +286989,7 @@ function getDeferredToolsDeltaAttachment(tools, model, messages, scanContext) {
|
|
|
286658
286989
|
function getAgentListingDeltaAttachment(toolUseContext, messages) {
|
|
286659
286990
|
if (!shouldInjectAgentListInMessages())
|
|
286660
286991
|
return [];
|
|
286661
|
-
if (!toolUseContext.options.tools.some((t) => toolMatchesName2(t,
|
|
286992
|
+
if (!toolUseContext.options.tools.some((t) => toolMatchesName2(t, AGENT_TOOL_NAME))) {
|
|
286662
286993
|
return [];
|
|
286663
286994
|
}
|
|
286664
286995
|
const { activeAgents, allowedAgentTypes } = toolUseContext.options.agentDefinitions;
|
|
@@ -286669,7 +287000,7 @@ function getAgentListingDeltaAttachment(toolUseContext, messages) {
|
|
|
286669
287000
|
mcpServers.add(info.serverName);
|
|
286670
287001
|
}
|
|
286671
287002
|
const permissionContext = toolUseContext.getAppState().toolPermissionContext;
|
|
286672
|
-
let filtered = filterDeniedAgents(filterAgentsByMcpRequirements(activeAgents, [...mcpServers]), permissionContext,
|
|
287003
|
+
let filtered = filterDeniedAgents(filterAgentsByMcpRequirements(activeAgents, [...mcpServers]), permissionContext, AGENT_TOOL_NAME);
|
|
286673
287004
|
if (allowedAgentTypes) {
|
|
286674
287005
|
filtered = filtered.filter((a2) => allowedAgentTypes.includes(a2.agentType));
|
|
286675
287006
|
}
|
|
@@ -287275,8 +287606,8 @@ async function getSkillListingAttachments(toolUseContext) {
|
|
|
287275
287606
|
sent.add(cmd.name);
|
|
287276
287607
|
}
|
|
287277
287608
|
logForDebugging(`Sending ${newSkills.length} skills via attachment (${isInitial ? "initial" : "dynamic"}, ${sent.size} total sent)`);
|
|
287278
|
-
const
|
|
287279
|
-
const content = formatCommandsWithinBudget(newSkills,
|
|
287609
|
+
const contextWindowTokens2 = getContextWindowForModel(toolUseContext.options.mainLoopModel, getSdkBetas());
|
|
287610
|
+
const content = formatCommandsWithinBudget(newSkills, contextWindowTokens2);
|
|
287280
287611
|
return [
|
|
287281
287612
|
{
|
|
287282
287613
|
type: "skill_listing",
|
|
@@ -288796,6 +289127,7 @@ __export(exports_hooks, {
|
|
|
288796
289127
|
executeTaskCreatedHooks: () => executeTaskCreatedHooks,
|
|
288797
289128
|
executeTaskCompletedHooks: () => executeTaskCompletedHooks,
|
|
288798
289129
|
executeSubagentStartHooks: () => executeSubagentStartHooks,
|
|
289130
|
+
executeSubagentProgressHooks: () => executeSubagentProgressHooks,
|
|
288799
289131
|
executeStopHooks: () => executeStopHooks,
|
|
288800
289132
|
executeStopFailureHooks: () => executeStopFailureHooks,
|
|
288801
289133
|
executeStatusLineCommand: () => executeStatusLineCommand,
|
|
@@ -290856,13 +291188,16 @@ async function executeStopFailureHooks(lastMessage, toolUseContext, timeoutMs =
|
|
|
290856
291188
|
matchQuery: error41
|
|
290857
291189
|
});
|
|
290858
291190
|
}
|
|
290859
|
-
async function* executeStopHooks(permissionMode, signal, timeoutMs = TOOL_HOOK_EXECUTION_TIMEOUT_MS, stopHookActive = false, subagentId, toolUseContext, messages, agentType, requestPrompt) {
|
|
291191
|
+
async function* executeStopHooks(permissionMode, signal, timeoutMs = TOOL_HOOK_EXECUTION_TIMEOUT_MS, stopHookActive = false, subagentId, toolUseContext, messages, agentType, requestPrompt, terminal2) {
|
|
290860
291192
|
const hookEvent = subagentId ? "SubagentStop" : "Stop";
|
|
290861
291193
|
const appState = toolUseContext?.getAppState();
|
|
290862
291194
|
const sessionId = toolUseContext?.agentId ?? getSessionId();
|
|
290863
291195
|
if (!hasHookForEvent(hookEvent, appState, sessionId)) {
|
|
290864
291196
|
return;
|
|
290865
291197
|
}
|
|
291198
|
+
if (subagentId) {
|
|
291199
|
+
markSubagentStopFired(subagentId);
|
|
291200
|
+
}
|
|
290866
291201
|
const lastAssistantMessage = messages ? getLastAssistantMessage(messages) : undefined;
|
|
290867
291202
|
const lastAssistantText = lastAssistantMessage ? extractTextContent(lastAssistantMessage.message.content, `
|
|
290868
291203
|
`).trim() || undefined : undefined;
|
|
@@ -290873,7 +291208,8 @@ async function* executeStopHooks(permissionMode, signal, timeoutMs = TOOL_HOOK_E
|
|
|
290873
291208
|
agent_id: subagentId,
|
|
290874
291209
|
agent_transcript_path: getAgentTranscriptPath(subagentId),
|
|
290875
291210
|
agent_type: agentType ?? "",
|
|
290876
|
-
last_assistant_message: lastAssistantText
|
|
291211
|
+
last_assistant_message: lastAssistantText,
|
|
291212
|
+
...terminal2 ? { status: terminal2.status, error_message: terminal2.errorMessage } : {}
|
|
290877
291213
|
} : {
|
|
290878
291214
|
...createBaseHookInput(permissionMode),
|
|
290879
291215
|
hook_event_name: "Stop",
|
|
@@ -290992,12 +291328,14 @@ async function* executeSetupHooks(trigger, signal, timeoutMs = TOOL_HOOK_EXECUTI
|
|
|
290992
291328
|
forceSyncExecution
|
|
290993
291329
|
});
|
|
290994
291330
|
}
|
|
290995
|
-
async function* executeSubagentStartHooks(agentId, agentType, signal, timeoutMs = TOOL_HOOK_EXECUTION_TIMEOUT_MS) {
|
|
291331
|
+
async function* executeSubagentStartHooks(agentId, agentType, signal, timeoutMs = TOOL_HOOK_EXECUTION_TIMEOUT_MS, toolUseId, isBackground) {
|
|
290996
291332
|
const hookInput = {
|
|
290997
291333
|
...createBaseHookInput(undefined),
|
|
290998
291334
|
hook_event_name: "SubagentStart",
|
|
290999
291335
|
agent_id: agentId,
|
|
291000
|
-
agent_type: agentType
|
|
291336
|
+
agent_type: agentType,
|
|
291337
|
+
...toolUseId !== undefined ? { tool_use_id: toolUseId } : {},
|
|
291338
|
+
...isBackground !== undefined ? { is_background: isBackground } : {}
|
|
291001
291339
|
};
|
|
291002
291340
|
yield* executeHooks({
|
|
291003
291341
|
hookInput,
|
|
@@ -291007,6 +291345,24 @@ async function* executeSubagentStartHooks(agentId, agentType, signal, timeoutMs
|
|
|
291007
291345
|
timeoutMs
|
|
291008
291346
|
});
|
|
291009
291347
|
}
|
|
291348
|
+
async function executeSubagentProgressHooks(agentId, agentType, messageId, parentToolUseId, blocks, signal) {
|
|
291349
|
+
const hookInput = {
|
|
291350
|
+
...createBaseHookInput(undefined),
|
|
291351
|
+
hook_event_name: "SubagentProgress",
|
|
291352
|
+
agent_id: agentId,
|
|
291353
|
+
agent_type: agentType,
|
|
291354
|
+
message_id: messageId,
|
|
291355
|
+
...parentToolUseId !== undefined ? { parent_tool_use_id: parentToolUseId } : {},
|
|
291356
|
+
blocks
|
|
291357
|
+
};
|
|
291358
|
+
for await (const _hookResult of executeHooks({
|
|
291359
|
+
hookInput,
|
|
291360
|
+
toolUseID: randomUUID16(),
|
|
291361
|
+
matchQuery: agentType,
|
|
291362
|
+
signal,
|
|
291363
|
+
timeoutMs: TOOL_HOOK_EXECUTION_TIMEOUT_MS
|
|
291364
|
+
})) {}
|
|
291365
|
+
}
|
|
291010
291366
|
async function executePreCompactHooks(compactData, signal, timeoutMs = TOOL_HOOK_EXECUTION_TIMEOUT_MS) {
|
|
291011
291367
|
const hookInput = {
|
|
291012
291368
|
...createBaseHookInput(undefined),
|
|
@@ -291646,6 +292002,7 @@ var init_hooks2 = __esm(() => {
|
|
|
291646
292002
|
init_envUtils();
|
|
291647
292003
|
init_errors5();
|
|
291648
292004
|
init_state2();
|
|
292005
|
+
init_backgroundAbortRegistry();
|
|
291649
292006
|
TOOL_HOOK_EXECUTION_TIMEOUT_MS = 10 * 60 * 1000;
|
|
291650
292007
|
});
|
|
291651
292008
|
|
|
@@ -292431,6 +292788,7 @@ var init_prompts2 = __esm(() => {
|
|
|
292431
292788
|
init_debug();
|
|
292432
292789
|
init_memdir();
|
|
292433
292790
|
init_mcpInstructionsDelta();
|
|
292791
|
+
init_antModels();
|
|
292434
292792
|
init_state2();
|
|
292435
292793
|
CLAUDE_4_5_OR_4_6_MODEL_IDS = {
|
|
292436
292794
|
opus: "claude-opus-4-6",
|
|
@@ -292794,7 +293152,7 @@ var init_api3 = __esm(() => {
|
|
|
292794
293152
|
init_zodToJsonSchema2();
|
|
292795
293153
|
SWARM_FIELDS_BY_TOOL = {
|
|
292796
293154
|
[EXIT_PLAN_MODE_V2_TOOL_NAME]: ["launchSwarm", "teammateCount"],
|
|
292797
|
-
[
|
|
293155
|
+
[AGENT_TOOL_NAME]: ["name", "team_name", "mode"]
|
|
292798
293156
|
};
|
|
292799
293157
|
});
|
|
292800
293158
|
|
|
@@ -293120,7 +293478,8 @@ async function* queryModel(messages, systemPrompt, thinkingConfig, tools, signal
|
|
|
293120
293478
|
} else {
|
|
293121
293479
|
filteredTools = tools.filter((t) => !toolMatchesName2(t, TOOL_SEARCH_TOOL_NAME));
|
|
293122
293480
|
}
|
|
293123
|
-
const
|
|
293481
|
+
const nativeToolReferenceWire = useToolSearch && isNativeToolReferenceWire();
|
|
293482
|
+
const toolSearchHeader = nativeToolReferenceWire ? getToolSearchBetaHeader() : null;
|
|
293124
293483
|
if (toolSearchHeader && !betas.includes(toolSearchHeader)) {
|
|
293125
293484
|
betas.push(toolSearchHeader);
|
|
293126
293485
|
}
|
|
@@ -293128,7 +293487,7 @@ async function* queryModel(messages, systemPrompt, thinkingConfig, tools, signal
|
|
|
293128
293487
|
let cacheEditingBetaHeader = "";
|
|
293129
293488
|
if (false) {}
|
|
293130
293489
|
const useGlobalCacheFeature = shouldUseGlobalCacheScope();
|
|
293131
|
-
const willDefer = (t) =>
|
|
293490
|
+
const willDefer = (t) => nativeToolReferenceWire && (deferredToolNames.has(t.name) || shouldDeferLspTool(t));
|
|
293132
293491
|
const needsToolBasedCacheMarker = useGlobalCacheFeature && filteredTools.some((t) => t.isMcp === true && !willDefer(t));
|
|
293133
293492
|
if (useGlobalCacheFeature && !betas.includes(PROMPT_CACHING_SCOPE_BETA_HEADER)) {
|
|
293134
293493
|
betas.push(PROMPT_CACHING_SCOPE_BETA_HEADER);
|
|
@@ -294134,7 +294493,7 @@ async function queryHaiku({
|
|
|
294134
294493
|
enablePromptCaching: options2.enablePromptCaching ?? false,
|
|
294135
294494
|
outputFormat,
|
|
294136
294495
|
async getToolPermissionContext() {
|
|
294137
|
-
return
|
|
294496
|
+
return getEmptyToolPermissionContext2();
|
|
294138
294497
|
}
|
|
294139
294498
|
}
|
|
294140
294499
|
});
|
|
@@ -295071,6 +295430,23 @@ function getDenyRules(context4) {
|
|
|
295071
295430
|
ruleValue: permissionRuleValueFromString(ruleString)
|
|
295072
295431
|
})));
|
|
295073
295432
|
}
|
|
295433
|
+
function denySessionTools(context4, toolNames) {
|
|
295434
|
+
if (!toolNames || toolNames.length === 0)
|
|
295435
|
+
return context4;
|
|
295436
|
+
return {
|
|
295437
|
+
...context4,
|
|
295438
|
+
alwaysDenyRules: {
|
|
295439
|
+
...context4.alwaysDenyRules,
|
|
295440
|
+
session: [...context4.alwaysDenyRules.session ?? [], ...toolNames]
|
|
295441
|
+
}
|
|
295442
|
+
};
|
|
295443
|
+
}
|
|
295444
|
+
function filterSubagentDisallowedTools(tools, subagentDisallowedTools) {
|
|
295445
|
+
if (!subagentDisallowedTools || subagentDisallowedTools.length === 0)
|
|
295446
|
+
return tools;
|
|
295447
|
+
const context4 = denySessionTools(getEmptyToolPermissionContext(), subagentDisallowedTools);
|
|
295448
|
+
return tools.filter((tool) => getDenyRuleForTool(context4, tool) === null);
|
|
295449
|
+
}
|
|
295074
295450
|
function getAskRules(context4) {
|
|
295075
295451
|
return PERMISSION_RULE_SOURCES.flatMap((source) => (context4.alwaysAskRules[source] || []).map((ruleString) => ({
|
|
295076
295452
|
source,
|
|
@@ -295365,6 +295741,7 @@ var _shouldUseSandbox = null, CLASSIFIER_FAIL_CLOSED_REFRESH_MS, PERMISSION_RULE
|
|
|
295365
295741
|
var init_permissions2 = __esm(() => {
|
|
295366
295742
|
init_canonical();
|
|
295367
295743
|
init_mcpStringUtils();
|
|
295744
|
+
init_toolRuntime();
|
|
295368
295745
|
init_commands();
|
|
295369
295746
|
init_debug();
|
|
295370
295747
|
init_errors5();
|
|
@@ -298112,7 +298489,7 @@ ${attachment.removedNames.join(`
|
|
|
298112
298489
|
}
|
|
298113
298490
|
case "verify_plan_reminder": {
|
|
298114
298491
|
const toolName = resolveEnvVar("VERIFY_PLAN") === "true" ? "VerifyPlanExecution" : "";
|
|
298115
|
-
const content = `You have completed implementing the plan. Please call the "${toolName}" tool directly (NOT the ${
|
|
298492
|
+
const content = `You have completed implementing the plan. Please call the "${toolName}" tool directly (NOT the ${AGENT_TOOL_NAME} tool or an agent) to verify that all plan items were completed correctly.`;
|
|
298116
298493
|
return wrapMessagesInSystemReminder([
|
|
298117
298494
|
createUserMessage({ content, isMeta: true })
|
|
298118
298495
|
]);
|
|
@@ -299362,6 +299739,7 @@ function toSDKCompactMetadata(meta) {
|
|
|
299362
299739
|
return {
|
|
299363
299740
|
trigger: meta.trigger,
|
|
299364
299741
|
pre_tokens: meta.preTokens,
|
|
299742
|
+
...meta.postTokens !== undefined && { post_tokens: meta.postTokens },
|
|
299365
299743
|
...seg && {
|
|
299366
299744
|
preserved_segment: {
|
|
299367
299745
|
head_uuid: seg.headUuid,
|
|
@@ -299393,7 +299771,7 @@ var init_mappers = __esm(() => {
|
|
|
299393
299771
|
// src/session/messages/systemInit.ts
|
|
299394
299772
|
import { randomUUID as randomUUID22 } from "crypto";
|
|
299395
299773
|
function sdkCompatToolName(name) {
|
|
299396
|
-
return name ===
|
|
299774
|
+
return name === AGENT_TOOL_NAME2 ? LEGACY_AGENT_TOOL_NAME : name;
|
|
299397
299775
|
}
|
|
299398
299776
|
function buildSystemInitMessage(inputs) {
|
|
299399
299777
|
const settings = getSettings_DEPRECATED();
|
|
@@ -299476,6 +299854,7 @@ class QueryEngine {
|
|
|
299476
299854
|
maxBudgetUsd,
|
|
299477
299855
|
maxOutputTokens,
|
|
299478
299856
|
contextWindow,
|
|
299857
|
+
compact,
|
|
299479
299858
|
taskBudget,
|
|
299480
299859
|
canUseTool,
|
|
299481
299860
|
customSystemPrompt,
|
|
@@ -299562,7 +299941,9 @@ class QueryEngine {
|
|
|
299562
299941
|
theme: resolveThemeSetting(getGlobalConfig().theme),
|
|
299563
299942
|
maxBudgetUsd,
|
|
299564
299943
|
maxOutputTokens,
|
|
299565
|
-
contextWindow
|
|
299944
|
+
contextWindow,
|
|
299945
|
+
modelProviders: this.config.modelProviders,
|
|
299946
|
+
subagentDisallowedTools: this.config.subagentDisallowedTools
|
|
299566
299947
|
},
|
|
299567
299948
|
getAppState,
|
|
299568
299949
|
setAppState,
|
|
@@ -299664,7 +300045,9 @@ class QueryEngine {
|
|
|
299664
300045
|
agentDefinitions: { activeAgents: agents, allAgents: [] },
|
|
299665
300046
|
maxBudgetUsd,
|
|
299666
300047
|
maxOutputTokens,
|
|
299667
|
-
contextWindow
|
|
300048
|
+
contextWindow,
|
|
300049
|
+
modelProviders: this.config.modelProviders,
|
|
300050
|
+
subagentDisallowedTools: this.config.subagentDisallowedTools
|
|
299668
300051
|
},
|
|
299669
300052
|
getAppState,
|
|
299670
300053
|
setAppState,
|
|
@@ -299698,7 +300081,7 @@ class QueryEngine {
|
|
|
299698
300081
|
fastMode: initialAppState.fastMode
|
|
299699
300082
|
});
|
|
299700
300083
|
headlessProfilerCheckpoint("system_message_yielded");
|
|
299701
|
-
if (!shouldQuery) {
|
|
300084
|
+
if (!shouldQuery && !compact) {
|
|
299702
300085
|
for (const msg of messagesFromUserInput) {
|
|
299703
300086
|
if (msg.type === "user" && typeof msg.message.content === "string" && (msg.message.content.includes(`<${LOCAL_COMMAND_STDOUT_TAG}>`) || msg.message.content.includes(`<${LOCAL_COMMAND_STDERR_TAG}>`) || msg.isCompactSummary)) {
|
|
299704
300087
|
yield {
|
|
@@ -299781,6 +300164,7 @@ class QueryEngine {
|
|
|
299781
300164
|
querySource: "sdk",
|
|
299782
300165
|
maxTurns,
|
|
299783
300166
|
maxOutputTokensOverride: maxOutputTokens,
|
|
300167
|
+
compactRequest: compact,
|
|
299784
300168
|
taskBudget
|
|
299785
300169
|
})) {
|
|
299786
300170
|
if (message.type === "assistant" || message.type === "user" || message.type === "system" && message.subtype === "compact_boundary") {
|
|
@@ -300046,7 +300430,7 @@ class QueryEngine {
|
|
|
300046
300430
|
await flushSessionStorage();
|
|
300047
300431
|
}
|
|
300048
300432
|
}
|
|
300049
|
-
if (!isResultSuccessful(result, lastStopReason)) {
|
|
300433
|
+
if (!compact && !isResultSuccessful(result, lastStopReason)) {
|
|
300050
300434
|
if (this.abortController.signal.aborted) {
|
|
300051
300435
|
yield {
|
|
300052
300436
|
type: "result",
|
|
@@ -300113,6 +300497,7 @@ class QueryEngine {
|
|
|
300113
300497
|
session_id: getSessionId(),
|
|
300114
300498
|
total_cost_usd: getTotalCostUSD(),
|
|
300115
300499
|
usage: this.totalUsage,
|
|
300500
|
+
context_window: { used_tokens: contextWindowTokens(currentMessageUsage) },
|
|
300116
300501
|
modelUsage: getModelUsage(),
|
|
300117
300502
|
permission_denials: this.permissionDenials,
|
|
300118
300503
|
structured_output: structuredOutputFromTool,
|
|
@@ -300150,6 +300535,7 @@ async function* ask({
|
|
|
300150
300535
|
maxBudgetUsd,
|
|
300151
300536
|
maxOutputTokens,
|
|
300152
300537
|
contextWindow,
|
|
300538
|
+
compact,
|
|
300153
300539
|
taskBudget,
|
|
300154
300540
|
canUseTool,
|
|
300155
300541
|
mutableMessages = [],
|
|
@@ -300159,6 +300545,7 @@ async function* ask({
|
|
|
300159
300545
|
appendSystemPrompt,
|
|
300160
300546
|
userSpecifiedModel,
|
|
300161
300547
|
fallbackModel,
|
|
300548
|
+
modelProviders,
|
|
300162
300549
|
jsonSchema,
|
|
300163
300550
|
getAppState,
|
|
300164
300551
|
setAppState,
|
|
@@ -300186,11 +300573,13 @@ async function* ask({
|
|
|
300186
300573
|
appendSystemPrompt,
|
|
300187
300574
|
userSpecifiedModel,
|
|
300188
300575
|
fallbackModel,
|
|
300576
|
+
modelProviders,
|
|
300189
300577
|
thinkingConfig,
|
|
300190
300578
|
maxTurns,
|
|
300191
300579
|
maxBudgetUsd,
|
|
300192
300580
|
maxOutputTokens,
|
|
300193
300581
|
contextWindow,
|
|
300582
|
+
compact,
|
|
300194
300583
|
taskBudget,
|
|
300195
300584
|
jsonSchema,
|
|
300196
300585
|
verbose,
|
|
@@ -328902,6 +329291,8 @@ function registerSdkInlineSkillHandler() {
|
|
|
328902
329291
|
}
|
|
328903
329292
|
|
|
328904
329293
|
// src/session/sdkRuntime.ts
|
|
329294
|
+
init_LocalAgentTask();
|
|
329295
|
+
init_backgroundAbortRegistry();
|
|
328905
329296
|
init_hooks2();
|
|
328906
329297
|
init_debug();
|
|
328907
329298
|
init_errors5();
|
|
@@ -328919,6 +329310,7 @@ function toInternalTool(sdkTool) {
|
|
|
328919
329310
|
maxResultSizeChars: 1e5,
|
|
328920
329311
|
inputSchema: zodObjectInputSchema,
|
|
328921
329312
|
isMcp: false,
|
|
329313
|
+
shouldDefer: sdkTool.shouldDefer,
|
|
328922
329314
|
isReadOnly: () => sdkTool.isReadOnly ?? false,
|
|
328923
329315
|
isConcurrencySafe: () => sdkTool.isConcurrencySafe ?? false,
|
|
328924
329316
|
async description() {
|
|
@@ -328963,11 +329355,20 @@ function extractToolUseId2(message) {
|
|
|
328963
329355
|
return;
|
|
328964
329356
|
}
|
|
328965
329357
|
|
|
329358
|
+
// src/session/mcpAppState.ts
|
|
329359
|
+
function withSessionMcpTools(appState, clients, tools) {
|
|
329360
|
+
return {
|
|
329361
|
+
...appState,
|
|
329362
|
+
mcp: { ...appState.mcp, clients: [...clients], tools: [...tools] }
|
|
329363
|
+
};
|
|
329364
|
+
}
|
|
329365
|
+
|
|
328966
329366
|
// src/session/sdkRuntime.ts
|
|
328967
329367
|
init_AppStateStore();
|
|
328968
329368
|
init_toolRuntime();
|
|
328969
329369
|
init_tools2();
|
|
328970
329370
|
init_abortController();
|
|
329371
|
+
init_stream2();
|
|
328971
329372
|
init_config3();
|
|
328972
329373
|
init_fileStateCache();
|
|
328973
329374
|
init_log2();
|
|
@@ -329136,6 +329537,14 @@ function applyPermissionMode(appState, permissionMode) {
|
|
|
329136
329537
|
toolPermissionContext: nextContext
|
|
329137
329538
|
};
|
|
329138
329539
|
}
|
|
329540
|
+
function applyDisallowedTools(appState, disallowedTools) {
|
|
329541
|
+
if (!disallowedTools || disallowedTools.length === 0)
|
|
329542
|
+
return appState;
|
|
329543
|
+
return {
|
|
329544
|
+
...appState,
|
|
329545
|
+
toolPermissionContext: denySessionTools(appState.toolPermissionContext, disallowedTools)
|
|
329546
|
+
};
|
|
329547
|
+
}
|
|
329139
329548
|
function filterDisallowedTools(tools, disallowedTools) {
|
|
329140
329549
|
if (!Array.isArray(disallowedTools) || disallowedTools.length === 0) {
|
|
329141
329550
|
return tools;
|
|
@@ -329211,6 +329620,10 @@ function createQueryLike(generator, runtimeState, onClose) {
|
|
|
329211
329620
|
runtimeState.abortController.abort();
|
|
329212
329621
|
runtimeState.abortController = createAbortController();
|
|
329213
329622
|
},
|
|
329623
|
+
killAgent(agentId) {
|
|
329624
|
+
abortBackgroundAgentById(agentId);
|
|
329625
|
+
killAsyncAgent(agentId, runtimeState.setAppState);
|
|
329626
|
+
},
|
|
329214
329627
|
async close() {
|
|
329215
329628
|
if (runtimeState.closed)
|
|
329216
329629
|
return;
|
|
@@ -329226,6 +329639,33 @@ function createQueryLike(generator, runtimeState, onClose) {
|
|
|
329226
329639
|
}
|
|
329227
329640
|
};
|
|
329228
329641
|
}
|
|
329642
|
+
async function* mergeAskWithStatus(askIterable, statusStream) {
|
|
329643
|
+
const askIter = askIterable[Symbol.asyncIterator]();
|
|
329644
|
+
let askNext = askIter.next();
|
|
329645
|
+
let statusNext = statusStream.next();
|
|
329646
|
+
try {
|
|
329647
|
+
while (true) {
|
|
329648
|
+
const winner = await Promise.race([
|
|
329649
|
+
askNext.then((r) => ({ src: "ask", r })),
|
|
329650
|
+
statusNext.then((r) => ({ src: "status", r }))
|
|
329651
|
+
]);
|
|
329652
|
+
if (winner.src === "status") {
|
|
329653
|
+
if (!winner.r.done) {
|
|
329654
|
+
yield winner.r.value;
|
|
329655
|
+
statusNext = statusStream.next();
|
|
329656
|
+
}
|
|
329657
|
+
} else {
|
|
329658
|
+
if (winner.r.done)
|
|
329659
|
+
return;
|
|
329660
|
+
yield winner.r.value;
|
|
329661
|
+
askNext = askIter.next();
|
|
329662
|
+
}
|
|
329663
|
+
}
|
|
329664
|
+
} finally {
|
|
329665
|
+
statusStream.done();
|
|
329666
|
+
await askIter.return?.();
|
|
329667
|
+
}
|
|
329668
|
+
}
|
|
329229
329669
|
function runSdkQueryRuntime(params) {
|
|
329230
329670
|
const options2 = params.options ?? {};
|
|
329231
329671
|
const cwd = typeof options2.cwd === "string" && options2.cwd.trim().length > 0 ? options2.cwd : process.cwd();
|
|
@@ -329237,7 +329677,7 @@ function runSdkQueryRuntime(params) {
|
|
|
329237
329677
|
abortController: createAbortController()
|
|
329238
329678
|
};
|
|
329239
329679
|
const fileCheckpointingOnChange = options2.fileCheckpointing?.onFileHistoryChange;
|
|
329240
|
-
const appStateStore = buildAppStateStore(applyFileCheckpointingInitialState(applyPermissionMode(getDefaultAppState(), options2.permissionMode), options2.fileCheckpointing?.initialState), fileCheckpointingOnChange);
|
|
329680
|
+
const appStateStore = buildAppStateStore(applyFileCheckpointingInitialState(applyDisallowedTools(applyPermissionMode(getDefaultAppState(), options2.permissionMode), options2.disallowedTools), options2.fileCheckpointing?.initialState), fileCheckpointingOnChange);
|
|
329241
329681
|
const initialMessagesForReplay = options2.resume ? loadAndRestampHistoricalMessages(options2.resume, queryContext.identity.sessionId, options2.initialMessages) : options2.initialMessages;
|
|
329242
329682
|
let mutableMessages = normalizeInitialMessages(initialMessagesForReplay);
|
|
329243
329683
|
let readFileCache = createFileStateCacheWithSizeLimit(DEFAULT_READ_FILE_CACHE_SIZE);
|
|
@@ -329364,6 +329804,7 @@ function runSdkQueryRuntime(params) {
|
|
|
329364
329804
|
const allCommands = [...baseCommands, ...dynamicCommands, ...hostCommands];
|
|
329365
329805
|
const allMcpClients = [...dynamicClients, ...sdkClients];
|
|
329366
329806
|
const allMcpTools = [...dynamicTools, ...sdkTools];
|
|
329807
|
+
appStateStore.setAppState((prev) => withSessionMcpTools(prev, allMcpClients, allMcpTools));
|
|
329367
329808
|
const externalBuiltInTools = options2.builtInTools;
|
|
329368
329809
|
if (externalBuiltInTools && !_builtInToolsProviderSetByOptions) {
|
|
329369
329810
|
registerBuiltInToolsProvider(() => externalBuiltInTools);
|
|
@@ -329378,7 +329819,11 @@ function runSdkQueryRuntime(params) {
|
|
|
329378
329819
|
break;
|
|
329379
329820
|
}
|
|
329380
329821
|
runtimeState.runningTurn = true;
|
|
329381
|
-
|
|
329822
|
+
const { resolveSdkAgents: resolveSdkAgents2 } = (init_builtInAgents(), __toCommonJS(exports_builtInAgents));
|
|
329823
|
+
const hostProvidedAgents = Array.isArray(options2.agents) ? options2.agents : [];
|
|
329824
|
+
const mergedAgents = resolveSdkAgents2(hostProvidedAgents);
|
|
329825
|
+
const turnStatusStream = new Stream2;
|
|
329826
|
+
for await (const message of mergeAskWithStatus(getAsk()({
|
|
329382
329827
|
commands: allCommands,
|
|
329383
329828
|
prompt: turn.prompt,
|
|
329384
329829
|
promptUuid: turn.uuid,
|
|
@@ -329391,7 +329836,9 @@ function runSdkQueryRuntime(params) {
|
|
|
329391
329836
|
maxBudgetUsd: options2.maxBudgetUsd,
|
|
329392
329837
|
maxOutputTokens: options2.maxOutputTokens,
|
|
329393
329838
|
contextWindow: options2.contextWindow,
|
|
329839
|
+
compact: options2.compact,
|
|
329394
329840
|
taskBudget: options2.taskBudget,
|
|
329841
|
+
subagentDisallowedTools: options2.subagentDisallowedTools,
|
|
329395
329842
|
canUseTool,
|
|
329396
329843
|
mutableMessages,
|
|
329397
329844
|
getReadFileCache: () => readFileCache,
|
|
@@ -329403,14 +329850,24 @@ function runSdkQueryRuntime(params) {
|
|
|
329403
329850
|
userSpecifiedModel: typeof options2.model === "string" && options2.model.length > 0 ? options2.model : undefined,
|
|
329404
329851
|
fallbackModel: typeof options2.fallbackModel === "string" && options2.fallbackModel.length > 0 ? options2.fallbackModel : undefined,
|
|
329405
329852
|
jsonSchema: options2.jsonSchema && typeof options2.jsonSchema === "object" ? options2.jsonSchema : undefined,
|
|
329853
|
+
modelProviders: options2.modelProviders && typeof options2.modelProviders === "object" ? options2.modelProviders : undefined,
|
|
329406
329854
|
getAppState: appStateStore.getAppState,
|
|
329407
329855
|
setAppState: appStateStore.setAppState,
|
|
329408
329856
|
abortController: runtimeState.abortController,
|
|
329409
329857
|
replayUserMessages: Boolean(options2.replayUserMessages),
|
|
329410
329858
|
includePartialMessages: Boolean(options2.includePartialMessages),
|
|
329411
|
-
agents:
|
|
329412
|
-
onToolInvoke: typeof options2.onToolInvoke === "function" ? options2.onToolInvoke : undefined
|
|
329413
|
-
|
|
329859
|
+
agents: mergedAgents,
|
|
329860
|
+
onToolInvoke: typeof options2.onToolInvoke === "function" ? options2.onToolInvoke : undefined,
|
|
329861
|
+
setSDKStatus: (status) => {
|
|
329862
|
+
turnStatusStream.enqueue({
|
|
329863
|
+
type: "system",
|
|
329864
|
+
subtype: "status",
|
|
329865
|
+
status,
|
|
329866
|
+
session_id: queryContext.identity.sessionId,
|
|
329867
|
+
uuid: randomUUID24()
|
|
329868
|
+
});
|
|
329869
|
+
}
|
|
329870
|
+
}), turnStatusStream)) {
|
|
329414
329871
|
if (runtimeState.closed)
|
|
329415
329872
|
break;
|
|
329416
329873
|
yield message;
|
|
@@ -329584,6 +330041,7 @@ function createSession(options2) {
|
|
|
329584
330041
|
|
|
329585
330042
|
// src/client.ts
|
|
329586
330043
|
init_observer();
|
|
330044
|
+
init_backgroundAbortRegistry();
|
|
329587
330045
|
init_log2();
|
|
329588
330046
|
init_log2();
|
|
329589
330047
|
init_coreTypes();
|
|
@@ -331986,6 +332444,7 @@ function getTaskByType(type) {
|
|
|
331986
332444
|
|
|
331987
332445
|
// src/tasks/stopTask.ts
|
|
331988
332446
|
init_sdkEventQueue();
|
|
332447
|
+
init_backgroundAbortRegistry();
|
|
331989
332448
|
|
|
331990
332449
|
class StopTaskError extends Error {
|
|
331991
332450
|
code;
|
|
@@ -332000,6 +332459,9 @@ async function stopTask(taskId, context4) {
|
|
|
332000
332459
|
const appState = getAppState();
|
|
332001
332460
|
const task = appState.tasks?.[taskId];
|
|
332002
332461
|
if (!task) {
|
|
332462
|
+
if (abortBackgroundAgentById(taskId)) {
|
|
332463
|
+
return { taskId, taskType: "local_agent", command: undefined };
|
|
332464
|
+
}
|
|
332003
332465
|
throw new StopTaskError(`No task found with ID: ${taskId}`, "not_found");
|
|
332004
332466
|
}
|
|
332005
332467
|
if (task.status !== "running") {
|
|
@@ -332387,7 +332849,7 @@ var ExitPlanModeV2Tool = buildToolRuntime({
|
|
|
332387
332849
|
}
|
|
332388
332850
|
};
|
|
332389
332851
|
});
|
|
332390
|
-
const hasTaskTool = isAgentSwarmsEnabled() && context4.options.tools.some((t) => toolMatchesName(t,
|
|
332852
|
+
const hasTaskTool = isAgentSwarmsEnabled() && context4.options.tools.some((t) => toolMatchesName(t, AGENT_TOOL_NAME2));
|
|
332391
332853
|
return {
|
|
332392
332854
|
data: {
|
|
332393
332855
|
plan,
|
|
@@ -333328,7 +333790,7 @@ Task completed. Call TaskList now to find your next available task or see if you
|
|
|
333328
333790
|
if (verificationNudgeNeeded) {
|
|
333329
333791
|
resultContent += `
|
|
333330
333792
|
|
|
333331
|
-
NOTE: You just closed out 3+ tasks and none of them was a verification step. Before writing your final summary, spawn the verification agent (subagent_type="${
|
|
333793
|
+
NOTE: You just closed out 3+ tasks and none of them was a verification step. Before writing your final summary, spawn the verification agent (subagent_type="${VERIFICATION_AGENT_TYPE}"). You cannot self-assign PARTIAL by listing caveats in your summary — only the verifier issues a verdict.`;
|
|
333332
333794
|
}
|
|
333333
333795
|
return {
|
|
333334
333796
|
tool_use_id: toolUseID,
|
|
@@ -333549,6 +334011,7 @@ init_state2();
|
|
|
333549
334011
|
init_modelAllowlist();
|
|
333550
334012
|
init_model();
|
|
333551
334013
|
init_modelContext();
|
|
334014
|
+
init_antModels();
|
|
333552
334015
|
init_config3();
|
|
333553
334016
|
|
|
333554
334017
|
// src/providers/shared/providerProfiles.ts
|
|
@@ -335403,6 +335866,7 @@ export {
|
|
|
335403
335866
|
query2 as query,
|
|
335404
335867
|
parseScopes,
|
|
335405
335868
|
listSessions,
|
|
335869
|
+
abortBackgroundAgentById as killBackgroundAgent,
|
|
335406
335870
|
isOAuthTokenExpired,
|
|
335407
335871
|
getSessionMessages2 as getSessionMessages,
|
|
335408
335872
|
getSessionInfo,
|
|
@@ -335447,4 +335911,4 @@ export {
|
|
|
335447
335911
|
AbortError2 as AbortError
|
|
335448
335912
|
};
|
|
335449
335913
|
|
|
335450
|
-
//# debugId=
|
|
335914
|
+
//# debugId=8D264B0B42FBE9F564756E2164756E21
|