@kodax-ai/kodax 0.7.76 → 0.7.78

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.
Files changed (130) hide show
  1. package/CHANGELOG.md +758 -371
  2. package/LICENSE +158 -158
  3. package/README.md +1702 -1508
  4. package/README_CN.md +1019 -869
  5. package/config-templates/config.example.jsonc +86 -4
  6. package/config-templates/integrations/a2a.example.jsonc +98 -98
  7. package/config-templates/integrations/extensions.example.jsonc +7 -7
  8. package/config-templates/integrations/mcp.example.jsonc +16 -16
  9. package/dist/builtin/code-review/SKILL.md +22 -22
  10. package/dist/builtin/skill-creator/scripts/aggregate-benchmark.d.ts +46 -46
  11. package/dist/builtin/skill-creator/scripts/analyze-benchmark.d.ts +46 -46
  12. package/dist/builtin/skill-creator/scripts/compare-runs.d.ts +62 -62
  13. package/dist/builtin/skill-creator/scripts/generate-review.d.ts +33 -33
  14. package/dist/builtin/skill-creator/scripts/grade-evals.d.ts +73 -73
  15. package/dist/builtin/skill-creator/scripts/improve-description.d.ts +23 -23
  16. package/dist/builtin/skill-creator/scripts/init-skill.d.ts +14 -14
  17. package/dist/builtin/skill-creator/scripts/install-skill.d.ts +29 -29
  18. package/dist/builtin/skill-creator/scripts/package-skill.d.ts +38 -38
  19. package/dist/builtin/skill-creator/scripts/quick-validate.d.ts +8 -8
  20. package/dist/builtin/skill-creator/scripts/run-eval.d.ts +66 -66
  21. package/dist/builtin/skill-creator/scripts/run-loop.d.ts +49 -49
  22. package/dist/builtin/skill-creator/scripts/run-trigger-eval.d.ts +58 -58
  23. package/dist/chunks/agent-ASP4MS3X.js +2 -0
  24. package/dist/chunks/argument-completer-JYQ7FX3W.js +2 -0
  25. package/dist/chunks/chunk-2CFHBKRE.js +5 -0
  26. package/dist/chunks/chunk-35PPHOQ2.js +292 -0
  27. package/dist/chunks/chunk-43QNNDHR.js +29 -0
  28. package/dist/chunks/chunk-5BNQXXGY.js +1 -0
  29. package/dist/chunks/chunk-5GO6FH7L.js +458 -0
  30. package/dist/chunks/chunk-5NDCSFOP.js +78 -0
  31. package/dist/chunks/chunk-6FOJVETH.js +22 -0
  32. package/dist/chunks/chunk-6XM4B6K2.js +48 -0
  33. package/dist/chunks/chunk-6YZUE6NC.js +240 -0
  34. package/dist/chunks/{chunk-RDXRM3UI.js → chunk-7OEBJGHK.js} +1 -1
  35. package/dist/chunks/chunk-KQLQYHWU.js +386 -0
  36. package/dist/chunks/chunk-NXO6GWSY.js +46 -0
  37. package/dist/chunks/chunk-T2XZTLYE.js +316 -0
  38. package/dist/chunks/chunk-TQDBTTIM.js +348 -0
  39. package/dist/chunks/{chunk-SMT2JSM3.js → chunk-UID7BLAB.js} +9 -9
  40. package/dist/chunks/chunk-VAT2QYXM.js +765 -0
  41. package/dist/chunks/chunk-YAZQTC2L.js +5 -0
  42. package/dist/chunks/chunk-YVRYHC4C.js +655 -0
  43. package/dist/chunks/{chunk-PXKSE54E.js → chunk-Z3KFRTSB.js} +1 -1
  44. package/dist/chunks/compaction-config-BQSSIWK5.js +2 -0
  45. package/dist/chunks/{construction-bootstrap-5F5KF2BZ.js → construction-bootstrap-VQLQGWPY.js} +1 -1
  46. package/dist/chunks/dist-BFT5YIGU.js +2 -0
  47. package/dist/chunks/dist-PCFE24YP.js +2 -0
  48. package/dist/chunks/host-UTFXCYYM.js +2 -0
  49. package/dist/chunks/run-manager-PJU3WIFJ.js +2 -0
  50. package/dist/chunks/utils-SID4HW2Q.js +2 -0
  51. package/dist/index.d.ts +21 -19
  52. package/dist/index.js +6 -6
  53. package/dist/kodax_bootstrap.js +25 -25
  54. package/dist/kodax_cli.js +1787 -1341
  55. package/dist/kodax_resume.js +17 -17
  56. package/dist/provider-capabilities.json +392 -362
  57. package/dist/runtime-worker.js +1707 -1279
  58. package/dist/sandbox-workspace-session.js +563 -0
  59. package/dist/sdk-a2a.d.ts +18 -17
  60. package/dist/sdk-a2a.js +8 -8
  61. package/dist/sdk-agent.d.ts +320 -70
  62. package/dist/sdk-agent.js +1 -1
  63. package/dist/sdk-coding.d.ts +135 -168
  64. package/dist/sdk-coding.js +1 -1
  65. package/dist/sdk-experimental-memory.d.ts +14 -597
  66. package/dist/sdk-experimental-memory.js +1 -1
  67. package/dist/sdk-llm.d.ts +219 -6
  68. package/dist/sdk-llm.js +1 -1
  69. package/dist/sdk-mcp.js +1 -1
  70. package/dist/sdk-media.d.ts +1 -1
  71. package/dist/sdk-media.js +1 -1
  72. package/dist/sdk-repl.d.ts +70 -27
  73. package/dist/sdk-repl.js +2 -2
  74. package/dist/sdk-runtime.d.ts +212 -149
  75. package/dist/sdk-runtime.js +1 -1
  76. package/dist/sdk-sandbox.d.ts +93 -0
  77. package/dist/sdk-sandbox.js +2 -0
  78. package/dist/sdk-session.d.ts +8 -8
  79. package/dist/sdk-session.js +1 -1
  80. package/dist/sdk-skills.d.ts +2 -2
  81. package/dist/sdk-skills.js +1 -1
  82. package/dist/semantic-worker.js +15 -15
  83. package/dist/types-chunks/{base.d-ChvpaKjZ.d.ts → base.d-4e74xDdy.d.ts} +13 -1
  84. package/dist/types-chunks/{bash-prefix-extractor.d-r1beOESM.d.ts → bash-prefix-extractor.d-uAe2Oqda.d.ts} +319 -9
  85. package/dist/types-chunks/{capability-learning.d-DPrYxRjF.d.ts → capability-learning.d-CVsdHw4j.d.ts} +1 -1
  86. package/dist/types-chunks/{capsule.d-zeqV4IQX.d.ts → capsule.d-BlSv9l3V.d.ts} +2 -2
  87. package/dist/types-chunks/{guardrail.d-CWYD1bdL.d.ts → guardrail.d-BRE_ErEj.d.ts} +1 -1
  88. package/dist/types-chunks/{guardrail.d-qjuKJZ31.d.ts → guardrail.d-CXDYRgZ3.d.ts} +201 -35
  89. package/dist/types-chunks/{history-retrieval.d-BKTJIrVd.d.ts → history-retrieval.d-DtCy7x64.d.ts} +2 -2
  90. package/dist/types-chunks/{integration-config.d-ojG4swOP.d.ts → integration-config.d-BNowXE8k.d.ts} +23 -8
  91. package/dist/types-chunks/{public-api.d-CX4B11qY.d.ts → public-api.d-B3AohsxN.d.ts} +37 -8
  92. package/dist/types-chunks/{commands.d-DUxnK2TU.d.ts → repl.d-Ie_ZXb_U.d.ts} +89 -78
  93. package/dist/types-chunks/{side-query.d-DWTMsndP.d.ts → resolver.d-iAQ9ocLB.d.ts} +23 -74
  94. package/dist/types-chunks/{run-manager.d-B9fEIjZk.d.ts → run-manager.d-D1twIhF9.d.ts} +1 -1
  95. package/dist/types-chunks/{sdk-session-B0fhAOPa.d.ts → sdk-session-DB9KksIx.d.ts} +3 -3
  96. package/dist/types-chunks/side-query.d-DTuLPcC5.d.ts +77 -0
  97. package/dist/types-chunks/types-D3g6XUQr.d.ts +662 -0
  98. package/dist/types-chunks/{types.d-sRLugmjy.d.ts → types.d-BA-Jwpfs.d.ts} +506 -11
  99. package/dist/types-chunks/{types.d-DEctY20M.d.ts → types.d-BH0ZkTGf.d.ts} +2 -2
  100. package/dist/types-chunks/{types.d-DCQVBqVn.d.ts → types.d-BbtGlKZu.d.ts} +25 -3
  101. package/dist/types-chunks/{types.d-CSmF0t0n.d.ts → types.d-DIpZJKUl.d.ts} +15 -0
  102. package/dist/types-chunks/{types.d-Bm_y6YuM.d.ts → types.d-DVDTIfB_.d.ts} +4 -4
  103. package/dist/types-chunks/{utils.d-D0wPxz8y.d.ts → utils.d-CVp6bFl9.d.ts} +23 -7
  104. package/docs/SDK_EMBEDDER_GUIDE.md +592 -119
  105. package/package.json +9 -1
  106. package/scripts/kodax-bin.cjs +28 -28
  107. package/scripts/production-env.cjs +25 -25
  108. package/dist/chunks/agent-7X5CFET2.js +0 -2
  109. package/dist/chunks/argument-completer-3NHIKB4N.js +0 -2
  110. package/dist/chunks/chunk-4PWPNCNK.js +0 -158
  111. package/dist/chunks/chunk-7FJNLJLF.js +0 -369
  112. package/dist/chunks/chunk-COQYLD4U.js +0 -5
  113. package/dist/chunks/chunk-D3T24FJW.js +0 -78
  114. package/dist/chunks/chunk-EI4JBQKL.js +0 -46
  115. package/dist/chunks/chunk-HGT6WQ24.js +0 -321
  116. package/dist/chunks/chunk-HS3XHF3R.js +0 -622
  117. package/dist/chunks/chunk-IDCGNQ4H.js +0 -5
  118. package/dist/chunks/chunk-KAY2XLCP.js +0 -74
  119. package/dist/chunks/chunk-OD6LVXU6.js +0 -329
  120. package/dist/chunks/chunk-OSF3H4RR.js +0 -22
  121. package/dist/chunks/chunk-TGMBHGZO.js +0 -427
  122. package/dist/chunks/chunk-VWSLC2WO.js +0 -770
  123. package/dist/chunks/chunk-Y3AMP22L.js +0 -37
  124. package/dist/chunks/compaction-config-7J2XE35D.js +0 -2
  125. package/dist/chunks/dist-2RA7LSH3.js +0 -2
  126. package/dist/chunks/dist-URKXBOC6.js +0 -2
  127. package/dist/chunks/host-RKZ2OGFT.js +0 -2
  128. package/dist/chunks/run-manager-7RM4HEH6.js +0 -2
  129. package/dist/chunks/utils-X3TEH6IO.js +0 -2
  130. package/dist/types-chunks/center-types.d-BBT122uJ.d.ts +0 -91
package/dist/sdk-llm.d.ts CHANGED
@@ -1,9 +1,12 @@
1
- import { p as KodaXProviderCapabilityProfile, a8 as KodaXVerifyStrategy, a7 as KodaXVerifyCredentialResult, c as KodaXContentBlock, a as KodaXCacheBoundary } from './types-chunks/types.d-CSmF0t0n.js';
2
- export { K as KodaXAssuranceIntent, b as KodaXChildFanoutClass, d as KodaXCustomProviderConfig, e as KodaXEphemeralSuffix, f as KodaXExecutionMode, g as KodaXExecutionPattern, h as KodaXHarnessProfile, i as KodaXImageBlock, j as KodaXListModelsResult, k as KodaXMessage, l as KodaXModelDescriptor, m as KodaXMutationSurface, n as KodaXNormalizedReasoningRequest, o as KodaXProtocolFamily, q as KodaXProviderConfig, r as KodaXProviderContextFidelity, s as KodaXProviderConversationSemantics, t as KodaXProviderEvidenceSupport, u as KodaXProviderLongRunningSupport, v as KodaXProviderMcpSupport, w as KodaXProviderMultimodalSupport, x as KodaXProviderSessionSupport, y as KodaXProviderStreamOptions, z as KodaXProviderToolCallingFidelity, A as KodaXProviderTransport, B as KodaXReasoningCapability, C as KodaXReasoningEffortPreset, D as KodaXReasoningEffortRequest, E as KodaXReasoningEffortWireStrategy, F as KodaXReasoningMode, G as KodaXReasoningProfile, H as KodaXReasoningRequest, I as KodaXRedactedThinkingBlock, J as KodaXReviewScale, L as KodaXRiskLevel, M as KodaXStableEffortIntent, N as KodaXStreamResult, O as KodaXTaskActionability, P as KodaXTaskBudgetOverrides, Q as KodaXTaskComplexity, R as KodaXTaskFamily, S as KodaXTaskResultMetadata, T as KodaXTaskResultSource, U as KodaXTaskRoutingDecision, V as KodaXTaskType, W as KodaXTaskWorkIntent, X as KodaXTextBlock, Y as KodaXThinkingBlock, Z as KodaXThinkingBudgetMap, _ as KodaXThinkingDepth, $ as KodaXThinkingWireStrategy, a0 as KodaXTokenUsage, a1 as KodaXToolDefinition, a2 as KodaXToolResultBlock, a3 as KodaXToolResultContentItem, a4 as KodaXToolResultImageItem, a5 as KodaXToolResultTextItem, a6 as KodaXToolUseBlock, a9 as KodaXWireReasoningEffort } from './types-chunks/types.d-CSmF0t0n.js';
3
- export { K as KODAX_DEFAULT_PROVIDER, a as KODAX_DEFAULT_THINKING_BUDGETS, b as KODAX_PROVIDERS, c as KODAX_PROVIDER_SNAPSHOTS, d as KODAX_REASONING_MODE_SEQUENCE, e as KODAX_REASONING_SAFETY_RESERVE, f as KODAX_STABLE_EFFORT_INTENTS, g as KodaXAnthropicCompatProvider, h as KodaXError, i as KodaXModelCapabilities, j as KodaXNetworkError, k as KodaXOpenAICompatProvider, l as KodaXProviderError, m as KodaXRateLimitError, n as KodaXToolCallIdError, P as ProviderName, R as ResolveWireEffortInput, o as ResolvedWireEffort, S as SideQueryDiagnostics, p as SideQueryRequest, q as SideQueryResult, r as SideQueryStopReason, s as SideQueryTerminalPhase, t as clampThinkingBudget, u as clearRuntimeModelProviders, v as createCustomProvider, w as effortToLegacyReasoningMode, x as getAvailableProviderNames, y as getCustomModelCapabilities, z as getCustomProvider, A as getCustomProviderList, B as getCustomProviderModelDescriptors, C as getCustomProviderModels, D as getCustomProviderNames, E as getDefaultThinkingDepthForMode, F as getModelCapabilities, G as getProvider, H as getProviderConfiguredCapabilityProfile, I as getProviderConfiguredReasoningCapability, J as getProviderList, L as getProviderModel, M as getProviderModelDescriptors, N as getProviderModels, O as getReasoningCapability, Q as getRuntimeModelProvider, T as getRuntimeModelProviderNames, U as isCustomProviderName, V as isKnownProvider, W as isProviderConfigured, X as isProviderName, Y as isReasoningEnabled, Z as isRuntimeModelProviderName, _ as listAllModelCapabilities, $ as listBuiltinModelCapabilities, a0 as listCustomProviderModelCapabilities, a1 as listProviderModels, a2 as mapDepthToOpenAIReasoningEffort, a3 as mapLegacyReasoningModeToEffortIntent, a4 as normalizeReasoningEffortValue, a5 as normalizeReasoningRequest, a6 as parseReasoningEffortEnv, a7 as registerCustomProviders, a8 as registerModelProvider, a9 as resolveModelCapabilities, aa as resolveProvider, ab as resolveProviderModelDescriptors, ac as resolveReasoningEffort, ad as resolveReasoningEffortForModelSwitch, ae as resolveThinkingBudget, af as resolveWireEffort, ag as sideQuery, ah as validateCustomProviderConfig, ai as verifyProviderCredential } from './types-chunks/side-query.d-DWTMsndP.js';
1
+ import { a7 as KodaXVerifyCredentialResult, k as KodaXMessage, p as KodaXProviderCapabilityProfile, i as KodaXImageBlock, a1 as KodaXToolDefinition, H as KodaXReasoningRequest, y as KodaXProviderStreamOptions, N as KodaXStreamResult, a8 as KodaXVerifyStrategy, c as KodaXContentBlock, a as KodaXCacheBoundary } from './types-chunks/types.d-DIpZJKUl.js';
2
+ export { K as KodaXAssuranceIntent, b as KodaXChildFanoutClass, d as KodaXCustomProviderConfig, e as KodaXEphemeralSuffix, f as KodaXExecutionMode, g as KodaXExecutionPattern, h as KodaXHarnessProfile, j as KodaXListModelsResult, l as KodaXModelDescriptor, m as KodaXMutationSurface, n as KodaXNormalizedReasoningRequest, o as KodaXProtocolFamily, q as KodaXProviderConfig, r as KodaXProviderContextFidelity, s as KodaXProviderConversationSemantics, t as KodaXProviderEvidenceSupport, u as KodaXProviderLongRunningSupport, v as KodaXProviderMcpSupport, w as KodaXProviderMultimodalSupport, x as KodaXProviderSessionSupport, z as KodaXProviderToolCallingFidelity, A as KodaXProviderTransport, B as KodaXReasoningCapability, C as KodaXReasoningEffortPreset, D as KodaXReasoningEffortRequest, E as KodaXReasoningEffortWireStrategy, F as KodaXReasoningMode, G as KodaXReasoningProfile, I as KodaXRedactedThinkingBlock, J as KodaXReviewScale, L as KodaXRiskLevel, M as KodaXStableEffortIntent, O as KodaXTaskActionability, P as KodaXTaskBudgetOverrides, Q as KodaXTaskComplexity, R as KodaXTaskFamily, S as KodaXTaskResultMetadata, T as KodaXTaskResultSource, U as KodaXTaskRoutingDecision, V as KodaXTaskType, W as KodaXTaskWorkIntent, X as KodaXTextBlock, Y as KodaXThinkingBlock, Z as KodaXThinkingBudgetMap, _ as KodaXThinkingDepth, $ as KodaXThinkingWireStrategy, a0 as KodaXTokenUsage, a2 as KodaXToolResultBlock, a3 as KodaXToolResultContentItem, a4 as KodaXToolResultImageItem, a5 as KodaXToolResultTextItem, a6 as KodaXToolUseBlock, a9 as KodaXWireReasoningEffort } from './types-chunks/types.d-DIpZJKUl.js';
3
+ export { K as KODAX_DEFAULT_PROVIDER, a as KODAX_DEFAULT_THINKING_BUDGETS, b as KODAX_PROVIDERS, c as KODAX_PROVIDER_SNAPSHOTS, d as KODAX_REASONING_MODE_SEQUENCE, e as KODAX_REASONING_SAFETY_RESERVE, f as KODAX_STABLE_EFFORT_INTENTS, g as KodaXAnthropicCompatProvider, h as KodaXError, i as KodaXModelCapabilities, j as KodaXNetworkError, k as KodaXOpenAICompatProvider, l as KodaXProviderError, m as KodaXRateLimitError, n as KodaXToolCallIdError, P as ProviderName, R as ResolveWireEffortInput, o as ResolvedWireEffort, p as clampThinkingBudget, q as clearRuntimeModelProviders, r as createCustomProvider, s as effortToLegacyReasoningMode, t as getAvailableProviderNames, u as getCustomModelCapabilities, v as getCustomProvider, w as getCustomProviderList, x as getCustomProviderModelDescriptors, y as getCustomProviderModels, z as getCustomProviderNames, A as getDefaultThinkingDepthForMode, B as getModelCapabilities, C as getProvider, D as getProviderConfiguredCapabilityProfile, E as getProviderConfiguredReasoningCapability, F as getProviderCredentialEnvironmentNames, G as getProviderList, H as getProviderModel, I as getProviderModelDescriptors, J as getProviderModels, L as getReasoningCapability, M as getRuntimeModelProvider, N as getRuntimeModelProviderCredentialEnvironmentNames, O as getRuntimeModelProviderNames, Q as isCustomProviderName, S as isKnownProvider, T as isProviderConfigured, U as isProviderName, V as isReasoningEnabled, W as isRuntimeModelProviderName, X as listAllModelCapabilities, Y as listBuiltinModelCapabilities, Z as listCustomProviderModelCapabilities, _ as listProviderModels, $ as mapDepthToOpenAIReasoningEffort, a0 as mapLegacyReasoningModeToEffortIntent, a1 as normalizeReasoningEffortValue, a2 as normalizeReasoningRequest, a3 as parseReasoningEffortEnv, a4 as registerCustomProviders, a5 as registerModelProvider, a6 as resolveModelCapabilities, a7 as resolveProvider, a8 as resolveProviderModelDescriptors, a9 as resolveReasoningEffort, aa as resolveReasoningEffortForModelSwitch, ab as resolveThinkingBudget, ac as resolveWireEffort, ad as validateCustomProviderConfig, ae as verifyProviderCredential } from './types-chunks/resolver.d-iAQ9ocLB.js';
4
4
  export { C as CostRate, a as CostTracker, D as DEFAULT_COST_RATES, K as KodaXLlmTimeoutConfig, b as KodaXResolvedLlmTimeoutConfig, P as ProviderCostSummary, R as RetryRecord, S as SessionCostSummary, T as TokenUsageRecord, c as calculateCost, d as createCostTracker, f as formatCost, e as formatCostReport, g as getCostRate, h as getSummary, p as parseTimeoutSecEnvMs, r as recordRetry, i as recordUsage, j as resolveLlmTimeoutConfig, t as timeoutSecToMs } from './types-chunks/cost-tracker.d-BeaenODW.js';
5
- export { C as CapabilityCache, a as CapabilityCacheEntry, b as CapabilityCacheSource, c as addRejectedEffort, d as capabilityCacheKey, g as getRejectedEfforts, n as narrowReasoningProfile, r as removeCacheEntry, s as sanitizeCapabilityCache } from './types-chunks/capability-learning.d-DPrYxRjF.js';
6
- export { K as KodaXBaseProvider, a as KodaXOnRetryAfterCallback, b as KodaXRetryAfterEvent, P as ParseRetryAfterOptions, R as RetryAfterResult, c as RetryAfterSource, e as extractHeadersFromError, p as parseRetryAfter } from './types-chunks/base.d-ChvpaKjZ.js';
5
+ export { C as CapabilityCache, a as CapabilityCacheEntry, b as CapabilityCacheSource, c as addRejectedEffort, d as capabilityCacheKey, g as getRejectedEfforts, n as narrowReasoningProfile, r as removeCacheEntry, s as sanitizeCapabilityCache } from './types-chunks/capability-learning.d-CVsdHw4j.js';
6
+ import { K as KodaXBaseProvider } from './types-chunks/base.d-4e74xDdy.js';
7
+ export { a as KodaXOnRetryAfterCallback, b as KodaXRetryAfterEvent, P as ParseRetryAfterOptions, R as RetryAfterResult, c as RetryAfterSource, e as extractHeadersFromError, p as parseRetryAfter } from './types-chunks/base.d-4e74xDdy.js';
8
+ import { SessionNotification } from '@agentclientprotocol/sdk';
9
+ export { S as SideQueryDiagnostics, a as SideQueryRequest, b as SideQueryResult, c as SideQueryStopReason, d as SideQueryTerminalPhase, s as sideQuery } from './types-chunks/side-query.d-DTuLPcC5.js';
7
10
  export { C as CapabilityKind, a as CapabilityProvider, b as CapabilityResult, c as CapabilitySearchFailure, d as CapabilitySearchFreshness, e as CapabilitySearchOptions, f as CapabilitySearchSnapshot } from './types-chunks/capability.d-K664nHOS.js';
8
11
  import '@anthropic-ai/sdk';
9
12
  import 'openai';
@@ -41,6 +44,209 @@ declare const KODAX_CAPPED_MAX_OUTPUT_TOKENS = 32000;
41
44
  declare const KODAX_ESCALATED_MAX_OUTPUT_TOKENS = 64000;
42
45
  declare const KODAX_API_MIN_INTERVAL = 0.5;
43
46
 
47
+ /**
48
+ * Unified event model for CLI-backed providers.
49
+ * This hides the wire-format differences between Codex CLI and Gemini CLI.
50
+ */
51
+ type CLIEvent = CLISessionStartEvent | CLIMessageEvent | CLIToolUseEvent | CLIToolResultEvent | CLIThinkingEvent | CLIErrorEvent | CLICompleteEvent;
52
+ interface CLISessionStartEvent {
53
+ type: 'session_start';
54
+ timestamp: number;
55
+ sessionId: string;
56
+ model: string;
57
+ raw: unknown;
58
+ }
59
+ interface CLIMessageEvent {
60
+ type: 'message';
61
+ timestamp: number;
62
+ role: 'user' | 'assistant';
63
+ content: string;
64
+ delta?: boolean;
65
+ raw: unknown;
66
+ }
67
+ interface CLIToolUseEvent {
68
+ type: 'tool_use';
69
+ timestamp: number;
70
+ toolId: string;
71
+ toolName: string;
72
+ parameters: Record<string, unknown>;
73
+ raw: unknown;
74
+ }
75
+ interface CLIToolResultEvent {
76
+ type: 'tool_result';
77
+ timestamp: number;
78
+ toolId: string;
79
+ status: 'success' | 'error';
80
+ output: string;
81
+ raw: unknown;
82
+ }
83
+ interface CLIThinkingEvent {
84
+ type: 'thinking';
85
+ timestamp: number;
86
+ content: string;
87
+ delta?: boolean;
88
+ raw: unknown;
89
+ }
90
+ interface CLIErrorEvent {
91
+ type: 'error';
92
+ timestamp: number;
93
+ errorType: string;
94
+ message: string;
95
+ code?: number;
96
+ raw: unknown;
97
+ }
98
+ interface CLICompleteEvent {
99
+ type: 'complete';
100
+ timestamp: number;
101
+ status: 'success' | 'failed';
102
+ usage?: {
103
+ inputTokens: number;
104
+ outputTokens: number;
105
+ totalTokens: number;
106
+ cachedReadTokens?: number;
107
+ cachedWriteTokens?: number;
108
+ };
109
+ raw: unknown;
110
+ }
111
+ interface CLIExecutorConfig {
112
+ command: string;
113
+ baseArgs: string[];
114
+ timeout?: number;
115
+ cwd?: string;
116
+ env?: Record<string, string>;
117
+ }
118
+ interface CLIExecutionOptions {
119
+ prompt: string;
120
+ sessionId?: string;
121
+ model?: string;
122
+ reasoningEffort?: string;
123
+ signal?: AbortSignal;
124
+ }
125
+
126
+ declare abstract class CLIExecutor {
127
+ protected config: CLIExecutorConfig;
128
+ private _installedCache;
129
+ constructor(config: CLIExecutorConfig);
130
+ /**
131
+ * Check whether the backing CLI is installed, with a small in-memory cache
132
+ * so repeated stream() calls do not respawn the probe process.
133
+ */
134
+ isInstalled(): Promise<boolean>;
135
+ /**
136
+ * Provider-specific install probe implementation.
137
+ */
138
+ protected abstract checkInstalled(): Promise<boolean>;
139
+ /**
140
+ * Execute the CLI and stream normalized events back to the caller.
141
+ */
142
+ execute(options: CLIExecutionOptions): AsyncGenerator<CLIEvent>;
143
+ /**
144
+ * Build the CLI argument list for a single execution.
145
+ */
146
+ protected abstract buildArgs(options: CLIExecutionOptions): string[];
147
+ /**
148
+ * Parse the subprocess stdout stream as newline-delimited JSON.
149
+ */
150
+ protected parseOutputStream(stream: NodeJS.ReadableStream, signal?: AbortSignal): AsyncGenerator<CLIEvent>;
151
+ /**
152
+ * Parse a single JSONL record into a normalized CLI event.
153
+ */
154
+ protected abstract parseLine(line: string): CLIEvent | null;
155
+ }
156
+
157
+ interface AcpClientOptions {
158
+ /** Command used to launch a native ACP server process. */
159
+ command?: string;
160
+ /** Arguments passed to the native ACP server process. */
161
+ args?: string[];
162
+ /** Readable side of an in-memory pseudo ACP server transport. */
163
+ inputStream?: ReadableStream<Uint8Array>;
164
+ outputStream?: WritableStream<Uint8Array>;
165
+ /** Working directory for spawned native ACP processes. */
166
+ cwd?: string;
167
+ /** Session update callback forwarded from the ACP connection. */
168
+ onSessionUpdate?: (update: SessionNotification) => void;
169
+ /** Cleanup hook used by the in-memory pseudo server transport. */
170
+ abort?: () => void;
171
+ /** Release pseudo-server state for a completed one-shot ACP session. */
172
+ releaseSession?: (sessionId: string) => void;
173
+ /** Create a fresh equivalent transport after the current one is closed. */
174
+ recreate?: () => AcpClientOptions;
175
+ /** Optional executor exposed for install checks in higher layers. */
176
+ executor?: CLIExecutor;
177
+ }
178
+
179
+ /**
180
+ * Shared base class for ACP-backed providers.
181
+ * It can connect either to a native ACP server process or to our in-memory
182
+ * pseudo ACP bridge that adapts CLI executors into ACP session updates.
183
+ */
184
+ declare abstract class KodaXAcpProvider extends KodaXBaseProvider {
185
+ protected abstract readonly acpClientOptions: AcpClientOptions;
186
+ private _client;
187
+ private _clientConnectPromise;
188
+ private _connectingClient;
189
+ private _clientGeneration;
190
+ private _sessionMap;
191
+ private _activeStreams;
192
+ private _activeConversationIds;
193
+ private ensureClient;
194
+ private invalidateClient;
195
+ supportsEphemeralSuffix(): boolean;
196
+ isConfigured(): boolean;
197
+ /**
198
+ * FEATURE_216 v0.7.45 — CLI-bridge providers manage credentials in
199
+ * the CLI binary's own token store (gemini CLI / codex CLI OAuth
200
+ * tokens, etc.), which lives outside SDK reach. There is no HTTP
201
+ * primitive to probe. Always returns `unsupported` regardless of
202
+ * `verifyStrategy` (which provider-capabilities.json validates as
203
+ * 'unsupported' for cliBridge entries).
204
+ */
205
+ verifyCredential(): Promise<KodaXVerifyCredentialResult>;
206
+ /**
207
+ * Exact prompt text handed to ACP. Exposed only so diagnostics can hash the
208
+ * real CLI-visible request instead of incorrectly hashing full history.
209
+ */
210
+ getDiagnosticPromptText(messages: readonly KodaXMessage[], ephemeralSuffix?: string): string;
211
+ getCapabilityProfile(): KodaXProviderCapabilityProfile;
212
+ /**
213
+ * FEATURE_134 (v0.7.40) — extension point for CLI bridges that have a
214
+ * file-include syntax in their prompt grammar. Default implementation
215
+ * returns `null`, which makes the prompt flatten path drop image blocks
216
+ * silently (preserving the pre-FEATURE_134 behavior for CLIs that do
217
+ * not accept image input — Codex CLI's `codex exec --json --full-auto`
218
+ * mode currently has no image attachment surface).
219
+ *
220
+ * Subclasses that DO accept image input should override and return a
221
+ * single-token string the CLI will resolve to file content — for
222
+ * Gemini CLI 2.x that is `@<absolutePath>` (the `@file` reference
223
+ * syntax inlines arbitrary file content, including images).
224
+ *
225
+ * Callers must pass a `block.path` that already exists on disk;
226
+ * KodaX does not stat-check at this point because the image blocks
227
+ * come from `KodaXImageBlock` instances that the REPL or SDK has
228
+ * already validated (`preparePromptInputArtifacts` rewrites missing
229
+ * images to placeholders before they ever reach this layer).
230
+ */
231
+ protected serializeImageBlockToPromptToken(_block: KodaXImageBlock): string | null;
232
+ /**
233
+ * FEATURE_116 (v0.7.37) — Strip any `cache-boundary` markers from
234
+ * KodaXMessage content arrays before they reach the ACP CLI bridge.
235
+ * The CLI subprocess does not understand KodaX-internal cache markers;
236
+ * stripping at the entry point keeps the marker abstraction purely
237
+ * client-side.
238
+ *
239
+ * Idempotent: messages with no boundary content return the same
240
+ * reference.
241
+ */
242
+ protected stripCacheBoundariesFromMessages(messages: KodaXMessage[]): KodaXMessage[];
243
+ stream(messages: KodaXMessage[], tools: KodaXToolDefinition[], system: string, reasoning?: boolean | KodaXReasoningRequest, streamOptions?: KodaXProviderStreamOptions, signal?: AbortSignal): Promise<KodaXStreamResult>;
244
+ /**
245
+ * Manually close and clear the ACP connection maintained by this provider.
246
+ */
247
+ disconnect(): void;
248
+ }
249
+
44
250
  interface NormalizedKodaXProviderCapabilityProfile extends KodaXProviderCapabilityProfile {
45
251
  contextFidelity: NonNullable<KodaXProviderCapabilityProfile['contextFidelity']>;
46
252
  toolCallingFidelity: NonNullable<KodaXProviderCapabilityProfile['toolCallingFidelity']>;
@@ -195,6 +401,13 @@ declare function resolveWorkflowMaxConcurrency(): number;
195
401
  declare function runWithScopedConfig<T>(config: KodaXRunScopedConfig, fn: () => T): T;
196
402
  /** The current run's scoped config, or undefined outside any run (→ env fallback). */
197
403
  declare function getRunScopedConfig(): KodaXRunScopedConfig | undefined;
404
+ /**
405
+ * Resolve the effective prompt-cache disable switch without letting the
406
+ * process-wide env override an explicit per-run choice. Callers that already
407
+ * hold the public SDK option should pass it; provider code can omit it and
408
+ * read the active AsyncLocalStorage scope instead.
409
+ */
410
+ declare function resolvePromptCacheDisabled(explicit?: boolean): boolean;
198
411
 
199
412
  /**
200
413
  * KodaX Cache Control — FEATURE_116 (v0.7.37)
@@ -282,5 +495,5 @@ declare function stripCacheBoundaries<T extends {
282
495
  type: string;
283
496
  }>(blocks: readonly (T | KodaXCacheBoundary)[]): T[];
284
497
 
285
- export { KODAX_API_MIN_INTERVAL, KODAX_CAPPED_MAX_OUTPUT_TOKENS, KODAX_ESCALATED_MAX_OUTPUT_TOKENS, KODAX_MAX_TOKENS, KodaXCacheBoundary, KodaXContentBlock, KodaXProviderCapabilityProfile, KodaXVerifyCredentialResult, KodaXVerifyStrategy, WORKFLOW_MAX_CONCURRENCY_ABSOLUTE, WORKFLOW_MAX_CONCURRENCY_DEFAULT, classifyStopReason, classifyVerifyError, getCodexCliDefaultModel, getCodexCliKnownModels, getGeminiCliDefaultModel, getGeminiCliKnownModels, getRunScopedConfig, getScopedProviderCredential, insertCacheBoundary, isCacheBoundary, isCleanStop, lowerCacheBoundaries, normalizeCapabilityProfile, parseToolInputWithSalvage, redactScopedProviderCredential, resolveWorkflowMaxConcurrency, runVerifyCredential, runWithProviderCredential, runWithScopedConfig, stripCacheBoundaries };
498
+ export { KODAX_API_MIN_INTERVAL, KODAX_CAPPED_MAX_OUTPUT_TOKENS, KODAX_ESCALATED_MAX_OUTPUT_TOKENS, KODAX_MAX_TOKENS, KodaXAcpProvider, KodaXBaseProvider, KodaXCacheBoundary, KodaXContentBlock, KodaXImageBlock, KodaXMessage, KodaXProviderCapabilityProfile, KodaXProviderStreamOptions, KodaXReasoningRequest, KodaXStreamResult, KodaXToolDefinition, KodaXVerifyCredentialResult, KodaXVerifyStrategy, WORKFLOW_MAX_CONCURRENCY_ABSOLUTE, WORKFLOW_MAX_CONCURRENCY_DEFAULT, classifyStopReason, classifyVerifyError, getCodexCliDefaultModel, getCodexCliKnownModels, getGeminiCliDefaultModel, getGeminiCliKnownModels, getRunScopedConfig, getScopedProviderCredential, insertCacheBoundary, isCacheBoundary, isCleanStop, lowerCacheBoundaries, normalizeCapabilityProfile, parseToolInputWithSalvage, redactScopedProviderCredential, resolvePromptCacheDisabled, resolveWorkflowMaxConcurrency, runVerifyCredential, runWithProviderCredential, runWithScopedConfig, stripCacheBoundaries };
286
499
  export type { KodaXAnthropicCacheableBlock, KodaXCacheLowerMode, KodaXRunScopedConfig, KodaXStopClass, RunVerifyCredentialOpts, VerifyPrimitiveRunner };
package/dist/sdk-llm.js CHANGED
@@ -1,2 +1,2 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{$,$a as or,A,Aa as Bo,B,Ba as Co,C,Ca as Do,D,Da as Eo,E,Ea as Fo,F,Fa as Go,G,Ga as Ho,H,Ha as Io,I,Ia as Jo,J,Ja as Ko,K,Ka as Lo,L,La as Mo,M,Ma as No,N,Na as Oo,O,Oa as Po,P,Pa as Qo,Q,Qa as Ro,R,Ra as So,S,Sa as To,T,Ta as Uo,U,Ua as Vo,V,Va as Wo,W,Wa as Xo,X,Xa as Yo,Y,Ya as Zo,Z,Za as _o,_,_a as $o,a as o,aa as oo,ab as rr,b as r,ba as ro,bb as er,c as e,ca as eo,cb as fr,d as f,da as fo,e as m,ea as mo,f as p,fa as po,g as t,ga as to,h as x,ha as xo,i as a,ia as ao,j as b,ja as bo,k as c,ka as co,l as d,la as go,m as g,ma as ho,n as h,na as io,o as i,oa as jo,p as j,pa as ko,q as k,qa as lo,r as l,ra as no,s as n,sa as qo,t as q,ta as so,u as s,ua as uo,v as u,va as vo,w as v,wa as wo,x as w,xa as yo,y,ya as zo,z,za as Ao}from"./chunks/chunk-D3T24FJW.js";import"./chunks/chunk-ONUPGMER.js";export{Wo as DEFAULT_COST_RATES,d as KODAX_API_MIN_INTERVAL,b as KODAX_CAPPED_MAX_OUTPUT_TOKENS,co as KODAX_DEFAULT_PROVIDER,w as KODAX_DEFAULT_THINKING_BUDGETS,c as KODAX_ESCALATED_MAX_OUTPUT_TOKENS,a as KODAX_MAX_TOKENS,bo as KODAX_PROVIDERS,ao as KODAX_PROVIDER_SNAPSHOTS,u as KODAX_REASONING_MODE_SEQUENCE,y as KODAX_REASONING_SAFETY_RESERVE,v as KODAX_STABLE_EFFORT_INTENTS,eo as KodaXAnthropicCompatProvider,U as KodaXBaseProvider,f as KodaXError,t as KodaXNetworkError,fo as KodaXOpenAICompatProvider,m as KodaXProviderError,p as KodaXRateLimitError,x as KodaXToolCallIdError,P as WORKFLOW_MAX_CONCURRENCY_ABSOLUTE,O as WORKFLOW_MAX_CONCURRENCY_DEFAULT,n as addRejectedEffort,Yo as calculateCost,j as capabilityCacheKey,K as clampThinkingBudget,W as classifyStopReason,Z as classifyVerifyError,Mo as clearRuntimeModelProviders,Zo as createCostTracker,yo as createCustomProvider,E as effortToLegacyReasoningMode,N as extractHeadersFromError,rr as formatCost,er as formatCostReport,Po as getAvailableProviderNames,mo as getCodexCliDefaultModel,to as getCodexCliKnownModels,Xo as getCostRate,Go as getCustomModelCapabilities,Ao as getCustomProvider,Do as getCustomProviderList,Fo as getCustomProviderModelDescriptors,Eo as getCustomProviderModels,Co as getCustomProviderNames,I as getDefaultThinkingDepthForMode,po as getGeminiCliDefaultModel,xo as getGeminiCliKnownModels,uo as getModelCapabilities,go as getProvider,ko as getProviderConfiguredCapabilityProfile,jo as getProviderConfiguredReasoningCapability,lo as getProviderList,io as getProviderModel,so as getProviderModelDescriptors,no as getProviderModels,z as getReasoningCapability,l as getRejectedEfforts,S as getRunScopedConfig,Jo as getRuntimeModelProvider,Lo as getRuntimeModelProviderNames,r as getScopedProviderCredential,or as getSummary,_ as insertCacheBoundary,$ as isCacheBoundary,X as isCleanStop,Bo as isCustomProviderName,Oo as isKnownProvider,ho as isProviderConfigured,qo as isProviderName,A as isReasoningEnabled,Ko as isRuntimeModelProviderName,So as listAllModelCapabilities,vo as listBuiltinModelCapabilities,Ho as listCustomProviderModelCapabilities,Uo as listProviderModels,oo as lowerCacheBoundaries,L as mapDepthToOpenAIReasoningEffort,D as mapLegacyReasoningModeToEffortIntent,k as narrowReasoningProfile,T as normalizeCapabilityProfile,C as normalizeReasoningEffortValue,B as normalizeReasoningRequest,F as parseReasoningEffortEnv,M as parseRetryAfter,h as parseTimeoutSecEnvMs,V as parseToolInputWithSalvage,_o as recordRetry,$o as recordUsage,e as redactScopedProviderCredential,zo as registerCustomProviders,Io as registerModelProvider,q as removeCacheEntry,i as resolveLlmTimeoutConfig,Ro as resolveModelCapabilities,No as resolveProvider,Qo as resolveProviderModelDescriptors,G as resolveReasoningEffort,H as resolveReasoningEffortForModelSwitch,J as resolveThinkingBudget,Vo as resolveWireEffort,Q as resolveWorkflowMaxConcurrency,Y as runVerifyCredential,o as runWithProviderCredential,R as runWithScopedConfig,s as sanitizeCapabilityCache,fr as sideQuery,ro as stripCacheBoundaries,g as timeoutSecToMs,wo as validateCustomProviderConfig,To as verifyProviderCredential};
2
+ import{$,$a as or,A,Aa as Bo,B,Ba as Co,C,Ca as Do,D,Da as Eo,E,Ea as Fo,F,Fa as Go,G,Ga as Ho,H,Ha as Io,I,Ia as Jo,J,Ja as Ko,K,Ka as Lo,L,La as Mo,M,Ma as No,N,Na as Oo,O,Oa as Po,P,Pa as Qo,Q,Qa as Ro,R,Ra as So,S,Sa as To,T,Ta as Uo,U,Ua as Vo,V,Va as Wo,W,Wa as Xo,X,Xa as Yo,Y,Ya as Zo,Z,Za as _o,_,_a as $o,a as o,aa as oo,ab as rr,b as r,ba as ro,bb as er,c as e,ca as eo,cb as fr,d as f,da as fo,db as mr,e as m,ea as mo,eb as pr,f as p,fa as po,fb as tr,g as t,ga as to,gb as xr,h as x,ha as xo,i as a,ia as ao,j as b,ja as bo,k as c,ka as co,l as d,la as go,m as g,ma as ho,n as h,na as io,o as i,oa as jo,p as j,pa as ko,q as k,qa as lo,r as l,ra as no,s as n,sa as qo,t as q,ta as so,u as s,ua as uo,v as u,va as vo,w as v,wa as wo,x as w,xa as yo,y,ya as zo,z,za as Ao}from"./chunks/chunk-5NDCSFOP.js";import"./chunks/chunk-ONUPGMER.js";export{_o as DEFAULT_COST_RATES,d as KODAX_API_MIN_INTERVAL,b as KODAX_CAPPED_MAX_OUTPUT_TOKENS,ho as KODAX_DEFAULT_PROVIDER,w as KODAX_DEFAULT_THINKING_BUDGETS,c as KODAX_ESCALATED_MAX_OUTPUT_TOKENS,a as KODAX_MAX_TOKENS,go as KODAX_PROVIDERS,co as KODAX_PROVIDER_SNAPSHOTS,u as KODAX_REASONING_MODE_SEQUENCE,y as KODAX_REASONING_SAFETY_RESERVE,v as KODAX_STABLE_EFFORT_INTENTS,po as KodaXAcpProvider,fo as KodaXAnthropicCompatProvider,V as KodaXBaseProvider,f as KodaXError,t as KodaXNetworkError,mo as KodaXOpenAICompatProvider,m as KodaXProviderError,p as KodaXRateLimitError,x as KodaXToolCallIdError,P as WORKFLOW_MAX_CONCURRENCY_ABSOLUTE,O as WORKFLOW_MAX_CONCURRENCY_DEFAULT,n as addRejectedEffort,or as calculateCost,j as capabilityCacheKey,K as clampThinkingBudget,X as classifyStopReason,_ as classifyVerifyError,Po as clearRuntimeModelProviders,rr as createCostTracker,Ao as createCustomProvider,E as effortToLegacyReasoningMode,N as extractHeadersFromError,pr as formatCost,tr as formatCostReport,So as getAvailableProviderNames,to as getCodexCliDefaultModel,ao as getCodexCliKnownModels,$o as getCostRate,Io as getCustomModelCapabilities,Co as getCustomProvider,Fo as getCustomProviderList,Ho as getCustomProviderModelDescriptors,Go as getCustomProviderModels,Eo as getCustomProviderNames,I as getDefaultThinkingDepthForMode,xo as getGeminiCliDefaultModel,bo as getGeminiCliKnownModels,wo as getModelCapabilities,io as getProvider,no as getProviderConfiguredCapabilityProfile,lo as getProviderConfiguredReasoningCapability,To as getProviderCredentialEnvironmentNames,qo as getProviderList,ko as getProviderModel,vo as getProviderModelDescriptors,so as getProviderModels,z as getReasoningCapability,l as getRejectedEfforts,S as getRunScopedConfig,Lo as getRuntimeModelProvider,Oo as getRuntimeModelProviderCredentialEnvironmentNames,No as getRuntimeModelProviderNames,r as getScopedProviderCredential,mr as getSummary,$ as insertCacheBoundary,oo as isCacheBoundary,Y as isCleanStop,Do as isCustomProviderName,Ro as isKnownProvider,jo as isProviderConfigured,uo as isProviderName,A as isReasoningEnabled,Mo as isRuntimeModelProviderName,Wo as listAllModelCapabilities,yo as listBuiltinModelCapabilities,Jo as listCustomProviderModelCapabilities,Yo as listProviderModels,ro as lowerCacheBoundaries,L as mapDepthToOpenAIReasoningEffort,D as mapLegacyReasoningModeToEffortIntent,k as narrowReasoningProfile,U as normalizeCapabilityProfile,C as normalizeReasoningEffortValue,B as normalizeReasoningRequest,F as parseReasoningEffortEnv,M as parseRetryAfter,h as parseTimeoutSecEnvMs,W as parseToolInputWithSalvage,er as recordRetry,fr as recordUsage,e as redactScopedProviderCredential,Bo as registerCustomProviders,Ko as registerModelProvider,q as removeCacheEntry,i as resolveLlmTimeoutConfig,Vo as resolveModelCapabilities,T as resolvePromptCacheDisabled,Qo as resolveProvider,Uo as resolveProviderModelDescriptors,G as resolveReasoningEffort,H as resolveReasoningEffortForModelSwitch,J as resolveThinkingBudget,Zo as resolveWireEffort,Q as resolveWorkflowMaxConcurrency,Z as runVerifyCredential,o as runWithProviderCredential,R as runWithScopedConfig,s as sanitizeCapabilityCache,xr as sideQuery,eo as stripCacheBoundaries,g as timeoutSecToMs,zo as validateCustomProviderConfig,Xo as verifyProviderCredential};
package/dist/sdk-mcp.js CHANGED
@@ -1,2 +1,2 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{bc as e,cc as t,dc as r,ec as a,fc as i,gc as p,hc as c,ic as o,jc as M,kc as n,lc as s,mc as l,nc as d,oc as u,pc as C,qc as v,rc as g,sc as S,tc as h,uc as R,vc as A,wc as b,xc as f}from"./chunks/chunk-VWSLC2WO.js";import"./chunks/chunk-Y3AMP22L.js";import"./chunks/chunk-COQYLD4U.js";import"./chunks/chunk-EI4JBQKL.js";import"./chunks/chunk-ONUPGMER.js";export{o as McpAuthRequiredError,R as McpCapabilityProvider,c as McpExpiredSessionError,A as McpManager,h as McpServerRuntime,S as buildInitializeCapabilities,t as createMcpCapabilityId,b as createMcpManager,f as createMcpTestServerFixture,M as createMcpTransport,e as defaultMcpCacheDir,d as discoverAuthorizationServerMetadata,u as discoverOAuthEndpoints,l as discoverProtectedResourceMetadata,s as extractInsufficientScope,n as extractResourceMetadataUrl,p as getMcpCachePaths,g as loadValidToken,r as normalizeMcpCapabilityId,a as parseMcpCapabilityId,v as performOAuthLogin,C as registerOAuthClient,i as searchMcpCatalog};
2
+ import{Ab as i,Bb as p,Cb as c,Db as o,Eb as M,Fb as n,Gb as s,Hb as l,Ib as d,Jb as u,Kb as C,Lb as v,Mb as g,Nb as S,Ob as h,Pb as R,Qb as A,Rb as b,Sb as f,wb as e,xb as t,yb as r,zb as a}from"./chunks/chunk-VAT2QYXM.js";import"./chunks/chunk-6XM4B6K2.js";import"./chunks/chunk-2CFHBKRE.js";import"./chunks/chunk-NXO6GWSY.js";import"./chunks/chunk-ONUPGMER.js";export{o as McpAuthRequiredError,R as McpCapabilityProvider,c as McpExpiredSessionError,A as McpManager,h as McpServerRuntime,S as buildInitializeCapabilities,t as createMcpCapabilityId,b as createMcpManager,f as createMcpTestServerFixture,M as createMcpTransport,e as defaultMcpCacheDir,d as discoverAuthorizationServerMetadata,u as discoverOAuthEndpoints,l as discoverProtectedResourceMetadata,s as extractInsufficientScope,n as extractResourceMetadataUrl,p as getMcpCachePaths,g as loadValidToken,r as normalizeMcpCapabilityId,a as parseMcpCapabilityId,v as performOAuthLogin,C as registerOAuthClient,i as searchMcpCatalog};
@@ -1,4 +1,4 @@
1
- import { i as KodaXImageBlock } from './types-chunks/types.d-CSmF0t0n.js';
1
+ import { i as KodaXImageBlock } from './types-chunks/types.d-DIpZJKUl.js';
2
2
 
3
3
  type KodaXMediaErrorCode = 'CLIPBOARD_EMPTY' | 'CLIPBOARD_IMAGE_UNAVAILABLE' | 'UNSUPPORTED_PLATFORM' | 'IMAGE_DECODE_FAILED' | 'IMAGE_TOO_LARGE' | 'UNSUPPORTED_MEDIA_TYPE' | 'MODEL_INPUT_UNSUPPORTED' | 'FILE_ACCESS_DENIED';
4
4
  interface KodaXMediaErrorOptions {
package/dist/sdk-media.js CHANGED
@@ -1,2 +1,2 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{F as u,a as o,b as r,c as e,d as f,e as m,f as p,g as t,h as x,i as a,j as b,k as c,l as d,m as g,n as h,o as i,p as j,q as k,r as l,s as n,t as q,u as s}from"./chunks/chunk-COQYLD4U.js";import"./chunks/chunk-EI4JBQKL.js";import"./chunks/chunk-ONUPGMER.js";export{r as ImageResizeError,n as KODAX_FILE_MEDIA_TYPES,k as KODAX_IMAGE_MEDIA_TYPES,l as KODAX_VIDEO_MEDIA_TYPES,o as KodaXMediaError,x as MAX_DIMENSION,g as PASTE_TMP_DIR_ENV,h as PASTE_TMP_TTL_MS,a as TARGET_RAW_SIZE_BYTES,p as createFileArtifactFromPath,m as createImageArtifactFromPath,t as createVideoArtifactFromPath,u as enqueueWithArtifacts,q as getModelInputCapabilities,e as inferImageMediaType,f as inferVideoMediaType,b as normalizePastedImage,i as persistImageAsBlock,j as prunePasteTmpDir,d as readAndNormalizeClipboardImage,c as readClipboardImage,s as validateInputArtifactsForModel};
2
+ import{A as k,B as l,C as n,D as q,E as s,F as u,k as o,l as r,m as e,n as f,o as m,p,q as t,r as x,s as a,t as b,u as c,v as d,w as g,x as h,y as i,z as j}from"./chunks/chunk-2CFHBKRE.js";import"./chunks/chunk-NXO6GWSY.js";import"./chunks/chunk-ONUPGMER.js";export{r as ImageResizeError,n as KODAX_FILE_MEDIA_TYPES,k as KODAX_IMAGE_MEDIA_TYPES,l as KODAX_VIDEO_MEDIA_TYPES,o as KodaXMediaError,x as MAX_DIMENSION,g as PASTE_TMP_DIR_ENV,h as PASTE_TMP_TTL_MS,a as TARGET_RAW_SIZE_BYTES,p as createFileArtifactFromPath,m as createImageArtifactFromPath,t as createVideoArtifactFromPath,u as enqueueWithArtifacts,q as getModelInputCapabilities,e as inferImageMediaType,f as inferVideoMediaType,b as normalizePastedImage,i as persistImageAsBlock,j as prunePasteTmpDir,d as readAndNormalizeClipboardImage,c as readClipboardImage,s as validateInputArtifactsForModel};
@@ -1,28 +1,29 @@
1
1
  import React$1, { ReactNode } from 'react';
2
- import { A as AppProps, N as Message, ab as UIState, g as CreatableHistoryItem, l as HistoryItem, a8 as ToolCall, aa as UIActions, K as KeyInfo, z as KeypressHandler, a0 as StreamingState, S as PromptEditingMode, I as InputPromptProps, $ as StatusBarProps, a5 as Theme, a9 as ToolCallStatus, a1 as Suggestion, ac as UseTextBufferReturn, H as HistoryEntry, O as PastedContent, r as HistoryItemInfo, R as PermissionMode } from './types-chunks/public-api.d-CX4B11qY.js';
3
- export { a as AppState, b as AppendClientNoticeOptions, C as CompactSessionOptions, c as CompactSessionResult, d as Completer, e as Completion, f as ConfirmResult, h as CursorPosition, D as DEFAULT_UI_STATE, i as DeleteSessionResult, F as FILE_MODIFICATION_TOOLS, j as FileSessionStorage, k as FullTranscriptSessionData, m as HistoryItemAssistant, n as HistoryItemBase, o as HistoryItemError, p as HistoryItemEvent, q as HistoryItemHint, s as HistoryItemSidecar, t as HistoryItemSystem, u as HistoryItemThinking, v as HistoryItemToolGroup, w as HistoryItemType, x as HistoryItemUser, y as KeypressEvent, B as KeypressHandlerPriority, L as LearningBinding, E as LearningSurfaceSnapshot, G as LegacyMessageListProps, J as ListSessionsOptions, M as MemorySessionStorage, P as PERMISSION_MODES, Q as PermissionContext, T as PromptSubmitPayload, U as RunningSessionInfo, V as SessionData, W as SessionManager, X as SessionStorage, Y as SessionSummary, Z as SessionTranscriptEntry, _ as SessionTranscriptEntryType, a2 as TOOL_STATUS_ICONS, a3 as TextBuffer, a4 as TextBufferOptions, a6 as ThemeColors, a7 as ThemeSymbols, ad as VisualCursor, ae as VisualLayout, af as WatchSessionsCallback, ag as appendClientNotice, ah as archiveSession, ai as compactSession, aj as computeConfirmTools, ak as createMemorySessionStorage, al as createSessionManager, am as deleteSession, an as forkSession, ao as isPermissionMode, ap as listRunningSessions, aq as listSessions, ar as loadFullTranscript, as as loadSession, at as normalizePermissionMode, au as permissionModeDisplayName, av as rewindSession, aw as setActiveEntry, ax as unarchiveSession, ay as watchSessions } from './types-chunks/public-api.d-CX4B11qY.js';
4
- export { B as BUILTIN_COMMANDS, C as Command, I as InkREPLOptions, a as InkRuntimeRunner, b as InkRuntimeRunnerInput, c as InkRuntimeStatusProvider, R as RUNTIME_PERMISSION_PENDING_NOTICE, d as RepLOptions, e as ReplRuntimeAutoModeControl, f as ReplRuntimeAutoModeSettings, g as ReplRuntimePermissionDecision, h as ReplRuntimePermissionGrantSuggestion, i as ReplRuntimePermissionPrompt, j as ReplRuntimePermissionRequest, k as ReplRuntimeRunner, l as ReplRuntimeRunnerInput, m as ReplRuntimeStatusProvider, n as executeCommand, o as getCommandRegistry, p as parseCommand, q as processSpecialSyntax, r as runInkInteractiveMode, s as runInteractiveMode, t as toReplRuntimeAutoModeSettings } from './types-chunks/commands.d-DUxnK2TU.js';
5
- import { a as BashPrefixExtractor, Q as KodaXEvents, t as KodaXAgentMode, aX as ProviderRecoveryEvent, ab as KodaXResult } from './types-chunks/bash-prefix-extractor.d-r1beOESM.js';
6
- import { c as QueuedMessage } from './types-chunks/types.d-DEctY20M.js';
7
- export { H as HistorySeedSourceMessage, R as RestoreHistoryItemsFromSessionInput, a as RestoredHistorySeed, e as extractHistorySeedsFromMessage, b as extractHistorySeedsFromMessages, c as extractTextContent, d as extractTitle, f as formatMessagePreview, r as restoreHistoryItemsFromSession, s as seedToHistoryItem, t as toolCallSeedToHistoryToolCall, g as trimPersistedUiHistorySnapshot } from './types-chunks/sdk-session-B0fhAOPa.js';
8
- import { c as CommandInfo } from './types-chunks/utils.d-D0wPxz8y.js';
9
- export { A as AutoModeSettings, a as CommandCallbacks, g as CurrentConfig, I as InteractiveContext, h as InteractiveMode, K as KODAX_CONFIG_FILE, i as KODAX_DIR, j as KODAX_EXAMPLE_CONFIG_FILE, k as KODAX_INTEGRATION_EXAMPLE_FILES, l as KODAX_SESSIONS_DIR, m as KODAX_VERSION, P as PREVIEW_MAX_LENGTH, R as ResolveAutoModeSettingsInput, n as ResolvedAutoModeSettings, o as RuntimeSurfaceMode, p as RuntimeSurfaceStatus, q as createInteractiveContext, r as ensureExampleConfigFile, s as ensureExampleConfigFiles, t as getGitRoot, u as getProviderList, v as getProviderModel, w as getVersion, x as hydrateProcessEnvFromShell, y as isProviderConfigured, z as loadAutoModeSettings, B as loadConfig, D as prepareRuntimeConfig, E as rateLimitedCall, F as registerConfiguredCustomProviders, G as resolveAutoModeSettings, H as resolveRuntimeEffortSelection, J as resolveRuntimeModelSelection, L as resolveRuntimeProviderSelection, M as saveConfig, N as touchContext } from './types-chunks/utils.d-D0wPxz8y.js';
10
- import { d as KodaXCustomProviderConfig } from './types-chunks/types.d-CSmF0t0n.js';
11
- export { S as KodaXTaskResultMetadata, T as KodaXTaskResultSource } from './types-chunks/types.d-CSmF0t0n.js';
2
+ import { A as AppProps, N as Message, ab as UIState, g as CreatableHistoryItem, l as HistoryItem, a8 as ToolCall, aa as UIActions, K as KeyInfo, z as KeypressHandler, a0 as StreamingState, S as PromptEditingMode, I as InputPromptProps, $ as StatusBarProps, a5 as Theme, a9 as ToolCallStatus, a1 as Suggestion, ac as UseTextBufferReturn, H as HistoryEntry, O as PastedContent, r as HistoryItemInfo, R as PermissionMode } from './types-chunks/public-api.d-B3AohsxN.js';
3
+ export { a as AppState, b as AppendClientNoticeOptions, C as CompactSessionOptions, c as CompactSessionResult, d as Completer, e as Completion, f as ConfirmResult, h as CursorPosition, D as DEFAULT_UI_STATE, i as DeleteSessionResult, F as FILE_MODIFICATION_TOOLS, j as FileSessionStorage, k as FullTranscriptSessionData, m as HistoryItemAssistant, n as HistoryItemBase, o as HistoryItemError, p as HistoryItemEvent, q as HistoryItemHint, s as HistoryItemSidecar, t as HistoryItemSystem, u as HistoryItemThinking, v as HistoryItemToolGroup, w as HistoryItemType, x as HistoryItemUser, y as KeypressEvent, B as KeypressHandlerPriority, L as LearningBinding, E as LearningSurfaceSnapshot, G as LegacyMessageListProps, J as ListSessionsOptions, M as MemorySessionStorage, P as PERMISSION_MODES, Q as PermissionContext, T as PromptSubmitPayload, U as RunningSessionInfo, V as SessionData, W as SessionManager, X as SessionStorage, Y as SessionSummary, Z as SessionTranscriptEntry, _ as SessionTranscriptEntryType, a2 as TOOL_STATUS_ICONS, a3 as TextBuffer, a4 as TextBufferOptions, a6 as ThemeColors, a7 as ThemeSymbols, ad as VisualCursor, ae as VisualLayout, af as WatchSessionsCallback, ag as appendClientNotice, ah as archiveSession, ai as compactSession, aj as computeConfirmTools, ak as createMemorySessionStorage, al as createSessionManager, am as deleteSession, an as forkSession, ao as isPermissionMode, ap as listRunningSessions, aq as listSessions, ar as loadFullTranscript, as as loadSession, at as normalizePermissionMode, au as permissionModeDisplayName, av as rewindSession, aw as setActiveEntry, ax as unarchiveSession, ay as watchSessions } from './types-chunks/public-api.d-B3AohsxN.js';
4
+ export { B as BUILTIN_COMMANDS, C as Command, I as InkREPLOptions, a as InkRuntimeRunner, b as InkRuntimeRunnerInput, c as InkRuntimeStatusProvider, d as InkTransientNotice, R as RUNTIME_PERMISSION_PENDING_NOTICE, e as RepLOptions, f as ReplRuntimeAutoModeControl, g as ReplRuntimeAutoModeSettings, h as ReplRuntimePermissionDecision, i as ReplRuntimePermissionGrantSuggestion, j as ReplRuntimePermissionPrompt, k as ReplRuntimePermissionRequest, l as ReplRuntimeRunner, m as ReplRuntimeRunnerInput, n as ReplRuntimeStatusProvider, o as executeCommand, p as getCommandRegistry, q as parseCommand, r as processSpecialSyntax, s as runInkInteractiveMode, t as runInteractiveMode, u as toReplRuntimeAutoModeSettings } from './types-chunks/repl.d-Ie_ZXb_U.js';
5
+ import { a as BashPrefixExtractor, Q as KodaXEvents, t as KodaXAgentMode, b5 as ProviderRecoveryEvent, ad as KodaXResult } from './types-chunks/bash-prefix-extractor.d-uAe2Oqda.js';
6
+ import { c as QueuedMessage } from './types-chunks/types.d-BH0ZkTGf.js';
7
+ export { H as HistorySeedSourceMessage, R as RestoreHistoryItemsFromSessionInput, a as RestoredHistorySeed, e as extractHistorySeedsFromMessage, b as extractHistorySeedsFromMessages, c as extractTextContent, d as extractTitle, f as formatMessagePreview, r as restoreHistoryItemsFromSession, s as seedToHistoryItem, t as toolCallSeedToHistoryToolCall, g as trimPersistedUiHistorySnapshot } from './types-chunks/sdk-session-DB9KksIx.js';
8
+ import { c as CommandInfo } from './types-chunks/utils.d-CVp6bFl9.js';
9
+ export { A as AutoModeSettings, a as CommandCallbacks, g as CurrentConfig, I as InteractiveContext, h as InteractiveMode, K as KODAX_CONFIG_FILE, i as KODAX_DIR, j as KODAX_EXAMPLE_CONFIG_FILE, k as KODAX_INTEGRATION_EXAMPLE_FILES, l as KODAX_SESSIONS_DIR, m as KODAX_VERSION, P as PREVIEW_MAX_LENGTH, R as ResolveAutoModeSettingsInput, n as ResolvedAutoModeSettings, o as RuntimeSurfaceMode, p as RuntimeSurfaceStatus, q as createInteractiveContext, r as ensureExampleConfigFile, s as ensureExampleConfigFiles, t as getGitRoot, u as getProviderList, v as getProviderModel, w as getVersion, x as hydrateProcessEnvFromShell, y as isProviderConfigured, z as loadAutoModeSettings, B as loadConfig, D as prepareRuntimeConfig, E as rateLimitedCall, F as registerConfiguredCustomProviders, G as resolveAutoModeSettings, H as resolveRuntimeEffortSelection, J as resolveRuntimeModelSelection, L as resolveRuntimeProviderSelection, M as saveConfig, N as touchContext } from './types-chunks/utils.d-CVp6bFl9.js';
10
+ import { d as KodaXCustomProviderConfig } from './types-chunks/types.d-DIpZJKUl.js';
11
+ export { S as KodaXTaskResultMetadata, T as KodaXTaskResultSource } from './types-chunks/types.d-DIpZJKUl.js';
12
12
  import { Readable, Writable } from 'node:stream';
13
13
  import { a as McpServerConfig, b as McpServersConfig } from './types-chunks/config.d-CJy1WENT.js';
14
- export { E as ExtensionsIntegrationDocument, I as IntegrationConfigController, a as IntegrationConfigDiagnostic, b as IntegrationConfigListener, c as IntegrationConfigSnapshot, d as IntegrationConfigSource, e as IntegrationConfigStatus, f as IntegrationDocumentValidator, g as IntegrationDomain, L as LegacyIntegrationMigrationDomainPlan, h as LegacyIntegrationMigrationPlan, i as LegacyIntegrationMigrationResult, M as McpIntegrationDocument, m as migrateLegacyIntegrationConfig, p as parseExtensionsIntegrationDocument, j as parseMcpIntegrationDocument, k as planLegacyIntegrationMigration, r as readExtensionsIntegration, l as readMcpIntegration, n as resolveIntegrationConfigPath, w as writeIntegrationDocument } from './types-chunks/integration-config.d-ojG4swOP.js';
15
- export { bX as KodaXSessionUiHistoryItem, bY as KodaXSessionUiHistoryItemType, bZ as KodaXSessionUiTextHistoryItem, b_ as KodaXSessionUiTextHistoryItemType, b$ as KodaXSessionUiToolCall, c0 as KodaXSessionUiToolCallStatus, c1 as KodaXSessionUiToolGroupHistoryItem } from './types-chunks/types.d-sRLugmjy.js';
16
- import { S as SignalCollector, e as AutoModeAskUser, q as AutoModeSharedState, s as AutoModeToolGuardrail, B as RulesLoadResult } from './types-chunks/guardrail.d-qjuKJZ31.js';
17
- import './types-chunks/center-types.d-BBT122uJ.js';
18
- import './types-chunks/types.d-DCQVBqVn.js';
14
+ export { E as ExtensionsIntegrationDocument, I as IntegrationConfigConflictError, a as IntegrationConfigController, b as IntegrationConfigDiagnostic, c as IntegrationConfigListener, d as IntegrationConfigSnapshot, e as IntegrationConfigSource, f as IntegrationConfigStatus, g as IntegrationDocumentValidator, h as IntegrationDomain, L as LegacyIntegrationMigrationDomainPlan, i as LegacyIntegrationMigrationPlan, j as LegacyIntegrationMigrationResult, M as McpIntegrationDocument, m as migrateLegacyIntegrationConfig, p as parseExtensionsIntegrationDocument, k as parseMcpIntegrationDocument, l as planLegacyIntegrationMigration, r as readExtensionsIntegration, n as readMcpIntegration, o as resolveIntegrationConfigPath, w as writeIntegrationDocument } from './types-chunks/integration-config.d-BNowXE8k.js';
15
+ export { c3 as KodaXSessionUiHistoryItem, c4 as KodaXSessionUiHistoryItemType, c5 as KodaXSessionUiTextHistoryItem, c6 as KodaXSessionUiTextHistoryItemType, c7 as KodaXSessionUiToolCall, c8 as KodaXSessionUiToolCallStatus, c9 as KodaXSessionUiToolGroupHistoryItem } from './types-chunks/types.d-BA-Jwpfs.js';
16
+ import { S as SignalCollector, e as AutoModeAskUser, j as AutoModeGuardrailConfig, r as AutoModeSharedState, t as AutoModeToolGuardrail, O as RulesLoadResult } from './types-chunks/guardrail.d-CXDYRgZ3.js';
17
+ import './types-chunks/types.d-BbtGlKZu.js';
19
18
  import 'vscode-languageserver-protocol';
20
19
  import './types-chunks/cost-tracker.d-BeaenODW.js';
20
+ import './types-chunks/types-D3g6XUQr.js';
21
21
  import './types-chunks/capability.d-K664nHOS.js';
22
- import './types-chunks/base.d-ChvpaKjZ.js';
22
+ import './types-chunks/base.d-4e74xDdy.js';
23
23
  import 'readline';
24
24
  import 'child_process';
25
- import './types-chunks/guardrail.d-CWYD1bdL.js';
25
+ import './types-chunks/guardrail.d-BRE_ErEj.js';
26
+ import './types-chunks/side-query.d-DTuLPcC5.js';
26
27
 
27
28
  /**
28
29
  * App - KodaX CLI root component.
@@ -2133,7 +2134,7 @@ declare function getThemeNames(): string[];
2133
2134
  declare function listRegisteredCommands(projectRoot?: string): CommandInfo[];
2134
2135
 
2135
2136
  declare const CONFIG_TEMPLATES: {
2136
- readonly core: "// KodaX core configuration template.\n// Copy only the fields you need to ~/.kodax/config.json (strict JSON).\n// MCP, A2A, and Extensions live in ~/.kodax/integrations/*.json; use\n// `kodax integrations migrate --dry-run` for legacy declarations.\n{\n // \"provider\": \"deepseek\",\n // \"model\": \"deepseek-v4\",\n // \"runtimeMode\": \"embedded\",\n // \"effort\": \"high\",\n // \"agentMode\": \"ama\",\n // \"permissionMode\": \"accept-edits\",\n // \"locale\": \"zh\",\n // \"customProviders\": [\n // {\n // \"name\": \"my-relay\",\n // \"protocol\": \"openai\",\n // \"baseUrl\": \"https://api.example.com/v1\",\n // \"apiKeyEnv\": \"MY_RELAY_API_KEY\",\n // \"model\": \"provider/model\",\n // \"reasoning\": { \"efforts\": [\"off\", \"low\", \"high\"], \"default\": \"high\" }\n // }\n // ],\n // \"repoIntelligenceMode\": \"auto\",\n // Automatic large compaction is always enabled. Percentage defaults to 75\n // and is clamped to 15..90. A missing/zero absolute threshold is inactive;\n // otherwise the smaller percentage, absolute, and physical limit wins.\n // \"compaction\": {\n // \"triggerPercent\": 75,\n // \"triggerTokens\": 0\n // },\n // \"sessionRetentionDays\": 0,\n // \"workflow\": { \"maxConcurrency\": 8 }\n}\n";
2137
+ readonly core: "// Split configs: ~/.kodax/integrations/mcp.json, extensions.json, and a2a.json.\n// KodaX core configuration template.\n// Copy only the fields you need to ~/.kodax/config.json (strict JSON).\n// MCP, A2A, and Extensions live in ~/.kodax/integrations/*.json; use\n// `kodax integrations migrate` to preview legacy declarations.\n{\n // Active provider alias and optional model override. Run `kodax setup` or\n // `/model` instead of editing these manually when possible.\n // \"provider\": \"deepseek\",\n // \"model\": \"deepseek-v4-flash\",\n // Add or reorder model ids shown by `/model` for a provider.\n // \"providerModels\": {\n // \"deepseek\": [\"deepseek-v4-flash\", \"deepseek-v4-pro\"]\n // },\n\n // Interactive Runtime hosting: \"embedded\" (this process) or \"daemon\".\n // \"runtimeMode\": \"embedded\",\n\n // Native model reasoning. `effort` is the preferred explicit depth;\n // `reasoningCeiling` is the session ceiling. `reasoningMode` and `thinking`\n // remain accepted for backward compatibility.\n // \"effort\": \"high\",\n // \"planModeEffort\": \"high\",\n // \"reasoningCeiling\": \"auto\",\n // \"reasoningMode\": \"auto\",\n // \"thinking\": true,\n\n // Agent harness: \"ama\" enables adaptive multi-agent use; \"sa\" forces one\n // agent. Permission mode is \"plan\", \"accept-edits\", or classifier-backed\n // \"auto\".\n // \"agentMode\": \"ama\",\n // \"permissionMode\": \"accept-edits\",\n // User-level Bash allow patterns. Project additions belong in\n // <project>/.kodax/config.local.json. Broad Bash(*) is rejected.\n // \"alwaysAllowTools\": [\"Bash(npm test)\", \"Bash(git status:*)\"],\n // \"autoMode\": {\n // \"engine\": \"llm\",\n // \"classifierModel\": \"provider:model\",\n // \"timeoutMs\": 20000,\n // \"speculativeWindowMs\": 500\n // },\n\n // UI/manual locale.\n // \"locale\": \"zh\",\n\n // Custom providers store public connection metadata only. Put the actual\n // credential in the named environment variable, never in this file. Use\n // `kodax setup --custom` for the guided writer.\n // \"customProviders\": [\n // {\n // \"name\": \"my-relay\",\n // \"protocol\": \"openai\",\n // \"baseUrl\": \"https://api.example.com/v1\",\n // \"apiKeyEnv\": \"MY_RELAY_API_KEY\",\n // \"model\": \"provider/model\",\n // \"models\": [\"provider/model\", \"provider/fast-model\"],\n // \"reasoning\": { \"efforts\": [\"off\", \"low\", \"high\"], \"default\": \"high\" },\n // \"userAgentMode\": \"compat\",\n // \"contextWindow\": 128000,\n // \"maxOutputTokens\": 8192,\n // \"thinkingBudgetCap\": 32000,\n // \"promptCacheAffinity\": false,\n // \"replayReasoningContent\": false,\n // \"strictThinkingSignature\": false,\n // \"streamMaxDurationMs\": 300000,\n // \"verifyStrategy\": \"models-list\"\n // }\n // ],\n\n // Repository intelligence. Mode: \"auto\", \"full\", \"light\", or \"off\".\n // \"repoIntelligenceMode\": \"auto\",\n // \"repoIntelligenceTrace\": false,\n // \"repoIntelligence\": {\n // \"toolWaitMs\": 250,\n // \"workerTimeoutMs\": 30000,\n // \"workerOldSpaceMb\": 1024,\n // \"storageDir\": \"~/.kodax/repo-intelligence\"\n // },\n\n // Runtime/provider diagnostics and timeouts.\n // \"streamIdleTimeoutMs\": 120000,\n // \"verifierLog\": false,\n // \"stallLog\": false,\n\n // Ordered provider fallback for child tasks and optional model tiers used by\n // workflow/dispatch model hints.\n // \"fallbackProviders\": [\"ark-coding\", \"kimi-code\"],\n // \"fastProvider\": \"openai\",\n // \"fastModel\": \"gpt-5-mini\",\n // \"deepProvider\": \"anthropic\",\n // \"deepModel\": \"claude-opus-4-6\",\n\n // Provider/LSP/ACP process settings.\n // \"maxOutputTokens\": 8192,\n // \"disablePromptCache\": false,\n // \"lsp\": true,\n // \"lspAutoDownload\": false,\n // \"acpLogLevel\": \"info\",\n\n // Automatic large compaction is always enabled. Percentage defaults to 75\n // and is clamped to 15..90. A missing/zero absolute threshold is inactive;\n // otherwise the smaller percentage, absolute, and physical limit wins.\n // \"compaction\": {\n // \"enabled\": true,\n // \"contextWindow\": 128000,\n // \"triggerPercent\": 75,\n // \"triggerTokens\": 0\n // },\n\n // 0 disables automatic session pruning.\n // \"sessionRetentionDays\": 0,\n\n // Workflow host concurrency. The Runtime still applies its system cap.\n // \"workflow\": { \"maxConcurrency\": 8 }\n}\n";
2137
2138
  readonly mcp: "// User MCP declarations: ~/.kodax/integrations/mcp.json (strict JSON).\n// The whole file hot-reloads; healthy entries remain active if one new entry\n// fails to prepare. Keep credentials in ${env:NAME} references.\n{\n \"version\": 1,\n \"servers\": {}\n // Example:\n // \"servers\": {\n // \"reporting\": {\n // \"type\": \"streamable-http\",\n // \"url\": \"https://mcp.example.com\",\n // \"headers\": { \"Authorization\": \"Bearer ${env:REPORTING_MCP_TOKEN}\" },\n // \"connect\": \"lazy\"\n // }\n // }\n}\n";
2138
2139
  readonly a2a: "// Bidirectional A2A configuration: ~/.kodax/integrations/a2a.json.\n// `agents` calls many third-party Agents. The optional singleton `server`\n// exposes exactly one KodaX general task Agent; ACP remains the coding/editor\n// protocol. Uncomment only the entries you need; no token value belongs here.\n// Legacy version 1 files remain readable. Non-empty files require an explicit\n// stopped-daemon migration; new/empty files and every later write use version 2.\n{\n \"version\": 2,\n\n // Create this inbound block with `kodax a2a expose`; config never starts a\n // listener by itself. Do not copy private Agent instructions, Runtime Skills,\n // model names, or local paths into the public `published.skills` list.\n // Managed workspaces default below\n // ~/kodax_a2a_server_workspace/<runtime-profile>/contexts/<context-key>/.\n // Native read/grep/glob remains available according to workspace access.\n // Arbitrary shell is never exposed. Skill instructions/assets need no\n // process authority. An exact checked-in scripts/... entry requires\n // process=\"isolated\", skillScripts admission, and `kodax sandbox doctor`.\n // ASRT receives no KodaX credentials or ambient ~/.srt-settings.json and its\n // script quota is observed; hostile tenants also require an outer container/VM.\n //\n // \"server\": {\n // \"execution\": {\n // \"kind\": \"local-agent\",\n // \"agentRef\": { \"source\": \"markdown:user\", \"name\": \"report-agent\" },\n // \"workspace\": { \"mode\": \"managed\" },\n // \"toolPolicy\": {\n // \"workspace\": \"write\",\n // \"process\": \"deny\",\n // \"network\": { \"mode\": \"deny\" },\n // \"tools\": [],\n // \"mcp\": {},\n // \"skillScripts\": {},\n // \"subagents\": \"deny\"\n // }\n // },\n // \"published\": {\n // \"name\": \"KodaX Agent\",\n // \"description\": \"Completes approved general tasks.\",\n // \"version\": \"0.7.71\",\n // \"skills\": [{ \"id\": \"general\", \"name\": \"General\", \"description\": \"Complete general tasks.\", \"tags\": [] }],\n // \"inputModes\": [\"text/plain\"],\n // \"outputModes\": [\"text/plain\"]\n // },\n // \"authentication\": { \"type\": \"bearer-env\", \"tokenEnv\": \"KODAX_A2A_TOKEN\", \"principalId\": \"configured-client\" },\n // \"dataDir\": \"~/.kodax/a2a/tasks\"\n // },\n\n // Production OAuth2 resource-server alternative for the server above. The\n // external Authorization Server issues access tokens and, for JWT tokens,\n // signs them. KodaX holds no issuer signing key; it validates RFC 9068 tokens\n // against the issuer's rotating JWKS, audience, expiry, subject, and scopes.\n // Replace the server.authentication value above with:\n // {\n // \"type\": \"oauth2-jwt\",\n // \"scheme\": \"enterprise-oauth\",\n // \"issuer\": \"https://identity.example.com\",\n // \"audience\": \"https://agent.example.com/a2a\",\n // \"jwksUrl\": \"https://identity.example.com/.well-known/jwks.json\",\n // \"tokenUrl\": \"https://identity.example.com/oauth/token\",\n // \"metadataUrl\": \"https://identity.example.com/.well-known/oauth-authorization-server\",\n // \"requiredScopes\": [\"a2a.invoke\"]\n // }\n\n \"agents\": {\n // Fixed Bearer compatibility example. `enabled` is hot desired state:\n // disabled Agents remain configured but are not candidates for new\n // orchestration, while already admitted remote tasks may finish.\n // \"reporting\": {\n // \"cardUrl\": \"https://agents.example.com/.well-known/agent-card.json\",\n // \"enabled\": true,\n // \"credentialEnv\": \"REPORTING_A2A_TOKEN\",\n // \"effect\": \"read\"\n // },\n\n // Standards-based machine-to-machine OAuth2 example. The external\n // Authorization Server issues access tokens; KodaX obtains and caches them\n // only in process memory. `tokenUrl` must exactly match the selected Card\n // OAuth2 clientCredentials flow. Use `kodax a2a enable|disable <name>` to\n // mutate `enabled` atomically; the owning Runtime applies it asynchronously.\n // \"reviewer\": {\n // \"cardUrl\": \"https://reviewer.example.com/.well-known/agent-card.json\",\n // \"enabled\": false,\n // \"effect\": \"read\",\n // \"authentication\": {\n // \"type\": \"oauth2-client-credentials\",\n // \"scheme\": \"enterprise-oauth\",\n // \"issuer\": \"https://identity.example.com\",\n // \"tokenUrl\": \"https://identity.example.com/oauth/token\",\n // \"clientId\": \"kodax-reviewer\",\n // \"clientSecretEnv\": \"REVIEWER_CLIENT_SECRET\",\n // \"scopes\": [\"a2a.invoke\"],\n // \"resource\": \"https://reviewer.example.com/\",\n // \"clientAuthentication\": \"client-secret-basic\"\n // }\n // }\n }\n}\n";
2139
2140
  readonly extensions: "// Trusted user Extension paths: ~/.kodax/integrations/extensions.json.\n// Extensions are host code. Reload is whole-domain atomic; use MCP for\n// capabilities that should remain outside the KodaX process.\n{\n \"version\": 1,\n \"paths\": []\n}\n";
@@ -2175,13 +2176,9 @@ declare function getConfigTemplate(name: ConfigTemplateName): string;
2175
2176
  * unlike the load-time-frozen `KODAX_CONFIG_FILE` constant in
2176
2177
  * `common/utils.ts` that captures the path once at import time.
2177
2178
  *
2178
- * Concurrency / multi-process: this is a single-machine, last-write-
2179
- * wins implementation. If two SDK consumers (KodaX CLI + KodaX Space)
2180
- * both mutate the same config simultaneously, the later writer's view
2181
- * survives. KodaX is a single-user CLI; the multi-writer surface is
2182
- * not a real production concern for v0.7.42. A future FEATURE could
2183
- * layer file locking on top of this surface without changing the
2184
- * caller-facing API.
2179
+ * Concurrency / multi-process: mutations share the core-config writer lock
2180
+ * with setup and saveConfig, so cooperating KodaX processes fail with a
2181
+ * visible conflict instead of silently replacing one another.
2185
2182
  */
2186
2183
 
2187
2184
  /**
@@ -2336,6 +2333,7 @@ interface RunProviderSetupWizardInput {
2336
2333
  readonly interaction?: ProviderSetupInteraction;
2337
2334
  readonly input?: Readable;
2338
2335
  readonly output?: Writable;
2336
+ readonly customOnly?: boolean;
2339
2337
  }
2340
2338
  /**
2341
2339
  * Run the standalone first-use setup flow. It intentionally has no API-key
@@ -2343,6 +2341,47 @@ interface RunProviderSetupWizardInput {
2343
2341
  */
2344
2342
  declare function runProviderSetupWizard(input?: RunProviderSetupWizardInput): Promise<ProviderSetupWizardResult>;
2345
2343
 
2344
+ type SetupConfigDomain = 'core' | 'mcp' | 'extensions' | 'a2a';
2345
+ type SetupConfigFileKind = 'active' | 'template';
2346
+ type SetupConfigFileStatus = 'created' | 'existing' | 'invalid' | 'missing';
2347
+ interface SetupConfigFileResult {
2348
+ readonly domain: SetupConfigDomain;
2349
+ readonly kind: SetupConfigFileKind;
2350
+ readonly path: string;
2351
+ readonly status: SetupConfigFileStatus;
2352
+ readonly diagnostic?: string;
2353
+ }
2354
+ interface SetupConfigurationResult {
2355
+ readonly configHome: string;
2356
+ readonly files: readonly SetupConfigFileResult[];
2357
+ }
2358
+ interface InitializeSetupConfigurationInput {
2359
+ readonly configHome?: string;
2360
+ /**
2361
+ * Host-owned canonical A2A parser. The standalone REPL package can safely
2362
+ * recognize only the inert empty document without this dependency.
2363
+ */
2364
+ readonly validateA2A?: (value: unknown) => unknown;
2365
+ }
2366
+ /**
2367
+ * Install the inert active documents and annotated references needed by setup.
2368
+ * Existing files are authoritative and are never rewritten.
2369
+ */
2370
+ declare function initializeSetupConfiguration(input?: InitializeSetupConfigurationInput): SetupConfigurationResult;
2371
+
2372
+ interface RenderSetupGuideInput {
2373
+ readonly configHome?: string;
2374
+ readonly catalog?: readonly ProviderSetupCatalogEntry[];
2375
+ readonly cliBridges?: readonly string[];
2376
+ }
2377
+ declare function renderSetupGuide(input?: RenderSetupGuideInput): string;
2378
+
2379
+ declare class CoreConfigWriteConflictError extends Error {
2380
+ constructor(configPath: string);
2381
+ }
2382
+ declare function coreConfigWriteLockPath(configPath: string): string;
2383
+ declare function withCoreConfigWriteLock<T>(configPath: string, action: () => T): T;
2384
+
2346
2385
  /**
2347
2386
  * Typed MCP integration CRUD.
2348
2387
  *
@@ -2443,6 +2482,10 @@ interface AutoModeBootstrapDeps {
2443
2482
  readonly projectRoot: string;
2444
2483
  /** Directory used to resolve relative tool paths. */
2445
2484
  readonly executionCwd: string;
2485
+ /** Runtime-confirmed ASRT availability for exact workspace shell calls. */
2486
+ readonly workspaceShellSandboxAvailable?: boolean;
2487
+ /** Runtime-owned one-shot admission into the workspace shell sandbox. */
2488
+ readonly admitWorkspaceSandboxCall?: AutoModeGuardrailConfig['admitWorkspaceSandboxCall'];
2446
2489
  readonly getCurrentProviderName: () => string;
2447
2490
  readonly getCurrentModel: () => string | undefined;
2448
2491
  readonly getCurrentPermissionMode: () => PermissionMode;
@@ -2533,5 +2576,5 @@ declare function loadCommands(commandDir?: string): Promise<Map<string, KodaXCom
2533
2576
  declare function processCommandCall(commandName: string, args: string | undefined, commands: Map<string, KodaXCommand>, runAgent: (prompt: string) => Promise<KodaXResult>): Promise<string | null>;
2534
2577
  declare function parseCommandCall(input: string): [string, string?] | null;
2535
2578
 
2536
- export { App, AppProps, AutocompleteContextProvider, BackgroundTaskBar, CONFIG_TEMPLATES, ChildActivitySurface, CommandInfo, ConsoleCapturer, CreatableHistoryItem, DialogSurface, DotsIndicator, FullscreenTranscriptLayout, HistoryEntry, HistoryItem, HistoryItemInfo, HistoryItemRenderer, InputPrompt, InputPromptProps, KODAX_COMMANDS_DIR, KeyInfo, KeyMatchers, KeypressHandler, KeypressParser, KeypressProvider, LRUCache, LoadingIndicator, Message, MessageActions, MessageList, MessageSelector, NotificationsSurface, PendingInputsIndicator, PermissionMode, ProgressIndicator, PromptComposer, PromptEditingMode, PromptFooter, PromptFooterLeftSide, PromptFooterRightSide, PromptHelpMenu, PromptSuggestionsSurface, ProviderSetupConfigConflictError, ProviderSetupInvalidConfigError, QueuedCommandsSurface, SimpleApp, SimpleInputPrompt, SimpleMessageDisplay, SimpleStatusBar, SingleLineTextInput, Spinner, StashNotice, StatusBar, StatusBarProps, StatusNoticesSurface, StreamingProvider, StreamingState, Suggestion, SuggestionsDisplay, TextInput, Theme, ThinkingIndicator, ToolCall, ToolCallDisplay, ToolCallStatus, ToolGroup, ToolProgressBar, ToolStatusBadge, TranscriptViewport, UIActions, UIState, UIStateProvider, UseTextBufferReturn, _resetQueuedPromptsCacheForTests, bootstrapAutoMode, calculateVisualCursorFromLayout, calculateVisualLayout, collectBashWriteTargets, createCliEvents, createHistoryItem, createJsonEvents, createKeyMatcher, createKeypressManager, createRecoveryHistoryItem, createRetryHistoryItem, createStreamingManager, createToolCall, darkTheme, dedupeSessions, detectTerminalCapabilities, detectTerminalHostProfile, detectTerminalRenderHost, emitRecoveryHistoryItem, emitRetryHistoryItem, executeShellCommand, findMostRecentResumableSession, generateId, generateSavePattern, getBashOutsideProjectWriteRisk, getCharAtCodePoint, getCodePointLength, getConfigTemplate, getCustomProviderConfig, getDefaultCommandDir, getKeyDisplayName, getMcpServerConfig, getPlanModeBlockReason, getProviderSetupCatalog, getTerminalHostCapabilities, getTerminalWidth, getTheme, getThemeNames, getVisualWidth, getVisualWidthCached, hasCursorUpViewportYankRisk, hasMainScreenRenderScrollRisk, inspectProviderSetupReadiness, isAlwaysConfirmPath, isBashReadCommand, isBashWriteCommand, isClassicReplForced, isCommandOnProtectedPath, isFunctionKey, isOwnedRendererPreferred, isPathInsideProject, isPrintable, isRemoteConptyHost, isScreenReader, isShellCommand, isShellCommandSuccess, isTmuxControlMode, isToolCallAllowed, isVsCodeTerminalHostEnv, isWideChar, listCustomProviders, listMcpServers, listRegisteredCommands, loadCommands, measureChildActivitySurfaceRows, minimalTheme, parseCommandCall, parseKeypress, persistProviderSetupChoice, processCommandCall, providerSetupRestartInstructions, removeCustomProvider, removeMcpServer, replBashPathSignalCollector, resetTmuxControlModeProbeForTesting, resolveConfiguredTuiRendererMode, resolveEffectiveTuiRendererMode, resolveFullscreenPolicy, resolveInteractiveSurfacePreference, runProviderSetupWizard, runSessionPicker, splitByCodePoints, supports256Colors, supportsEmoji, supportsTrueColor, supportsUnicode, themes, truncateByVisualWidth, upsertCustomProvider, upsertMcpServer, useAutocomplete, useAutocompleteContext, useInputHistory, useKeypress, useKeypressManager, useQueuedPromptContents, useQueuedPrompts, useStreaming, useStreamingActions, useStreamingState, useTextBuffer, useUI, useUIActions, useUIState, validateMcpServerConfig, visualWidthCache, withCapture, withCaptureSync };
2537
- export type { AppHandle, AutoModeBootstrapDeps, AutoModeBootstrapResult, BackgroundTaskBarItem, BackgroundTaskBarProps, ChildActivitySurfaceProps, ConfigTemplateName, DialogSelectOption, DialogSurfaceConfirmState, DialogSurfaceProps, DialogSurfaceUIRequestState, DotsIndicatorProps, EffectiveTuiRendererMode, FullscreenPolicy, FullscreenTranscriptLayoutProps, HistoryItemRendererProps, InteractiveSurfacePreference, KeypressManager, KeypressProviderProps, KodaXCommand, KodaXCommandContext, LoadingIndicatorProps, LoadingIndicatorType, MessageActionsProps, MessageListProps, MessageSelectorProps, NotificationSurfaceItem, NotificationsSurfaceProps, PendingInputsIndicatorProps, PersistedProviderSetupChoice, ProgressIndicatorProps, PromptComposerProps, PromptFooterLeftSideProps, PromptFooterProps, PromptFooterRightSideProps, PromptFooterSurfaceItem, PromptHelpMenuProps, PromptSuggestionsSurfaceProps, ProviderSetupCatalogEntry, ProviderSetupChoice, ProviderSetupCustomProviderMetadata, ProviderSetupInteraction, ProviderSetupReadiness, ProviderSetupWizardResult, QueuedCommandsSurfaceProps, ResolvedAutoModeBootstrapSettings, RunProviderSetupWizardInput, SessionDedupeMatch, SessionDedupeMove, SessionDedupeOptions, SessionDedupeReport, SessionDedupeSkip, SessionDedupeSkipReason, SessionPickerItem, ShellExecutorConfig, SpinnerProps, StashNoticeProps, StatusNoticesSurfaceProps, StreamingActions, StreamingContextValue, StreamingManager, StreamingProviderProps, StreamingStateListener, SuggestionsDisplayProps, TerminalCapabilities, TerminalHostCapabilities, TerminalHostDetectionOptions, TerminalHostProfile, TerminalRenderHost, TextInputProps, ThinkingIndicatorProps, ToolCallDisplayProps, ToolGroupProps, ToolProgressBarProps, ToolStatusBadgeProps, TranscriptViewportProps, TuiRendererMode, UIStateProviderProps, UseAutocompleteOptions, UseAutocompleteReturn, UseInputHistoryOptions, UseInputHistoryReturn, UseKeypressOptions, UseTextBufferOptions };
2579
+ export { App, AppProps, AutocompleteContextProvider, BackgroundTaskBar, CONFIG_TEMPLATES, ChildActivitySurface, CommandInfo, ConsoleCapturer, CoreConfigWriteConflictError, CreatableHistoryItem, DialogSurface, DotsIndicator, FullscreenTranscriptLayout, HistoryEntry, HistoryItem, HistoryItemInfo, HistoryItemRenderer, InputPrompt, InputPromptProps, KODAX_COMMANDS_DIR, KeyInfo, KeyMatchers, KeypressHandler, KeypressParser, KeypressProvider, LRUCache, LoadingIndicator, Message, MessageActions, MessageList, MessageSelector, NotificationsSurface, PendingInputsIndicator, PermissionMode, ProgressIndicator, PromptComposer, PromptEditingMode, PromptFooter, PromptFooterLeftSide, PromptFooterRightSide, PromptHelpMenu, PromptSuggestionsSurface, ProviderSetupConfigConflictError, ProviderSetupInvalidConfigError, QueuedCommandsSurface, SimpleApp, SimpleInputPrompt, SimpleMessageDisplay, SimpleStatusBar, SingleLineTextInput, Spinner, StashNotice, StatusBar, StatusBarProps, StatusNoticesSurface, StreamingProvider, StreamingState, Suggestion, SuggestionsDisplay, TextInput, Theme, ThinkingIndicator, ToolCall, ToolCallDisplay, ToolCallStatus, ToolGroup, ToolProgressBar, ToolStatusBadge, TranscriptViewport, UIActions, UIState, UIStateProvider, UseTextBufferReturn, _resetQueuedPromptsCacheForTests, bootstrapAutoMode, calculateVisualCursorFromLayout, calculateVisualLayout, collectBashWriteTargets, coreConfigWriteLockPath, createCliEvents, createHistoryItem, createJsonEvents, createKeyMatcher, createKeypressManager, createRecoveryHistoryItem, createRetryHistoryItem, createStreamingManager, createToolCall, darkTheme, dedupeSessions, detectTerminalCapabilities, detectTerminalHostProfile, detectTerminalRenderHost, emitRecoveryHistoryItem, emitRetryHistoryItem, executeShellCommand, findMostRecentResumableSession, generateId, generateSavePattern, getBashOutsideProjectWriteRisk, getCharAtCodePoint, getCodePointLength, getConfigTemplate, getCustomProviderConfig, getDefaultCommandDir, getKeyDisplayName, getMcpServerConfig, getPlanModeBlockReason, getProviderSetupCatalog, getTerminalHostCapabilities, getTerminalWidth, getTheme, getThemeNames, getVisualWidth, getVisualWidthCached, hasCursorUpViewportYankRisk, hasMainScreenRenderScrollRisk, initializeSetupConfiguration, inspectProviderSetupReadiness, isAlwaysConfirmPath, isBashReadCommand, isBashWriteCommand, isClassicReplForced, isCommandOnProtectedPath, isFunctionKey, isOwnedRendererPreferred, isPathInsideProject, isPrintable, isRemoteConptyHost, isScreenReader, isShellCommand, isShellCommandSuccess, isTmuxControlMode, isToolCallAllowed, isVsCodeTerminalHostEnv, isWideChar, listCustomProviders, listMcpServers, listRegisteredCommands, loadCommands, measureChildActivitySurfaceRows, minimalTheme, parseCommandCall, parseKeypress, persistProviderSetupChoice, processCommandCall, providerSetupRestartInstructions, removeCustomProvider, removeMcpServer, renderSetupGuide, replBashPathSignalCollector, resetTmuxControlModeProbeForTesting, resolveConfiguredTuiRendererMode, resolveEffectiveTuiRendererMode, resolveFullscreenPolicy, resolveInteractiveSurfacePreference, runProviderSetupWizard, runSessionPicker, splitByCodePoints, supports256Colors, supportsEmoji, supportsTrueColor, supportsUnicode, themes, truncateByVisualWidth, upsertCustomProvider, upsertMcpServer, useAutocomplete, useAutocompleteContext, useInputHistory, useKeypress, useKeypressManager, useQueuedPromptContents, useQueuedPrompts, useStreaming, useStreamingActions, useStreamingState, useTextBuffer, useUI, useUIActions, useUIState, validateMcpServerConfig, visualWidthCache, withCapture, withCaptureSync, withCoreConfigWriteLock };
2580
+ export type { AppHandle, AutoModeBootstrapDeps, AutoModeBootstrapResult, BackgroundTaskBarItem, BackgroundTaskBarProps, ChildActivitySurfaceProps, ConfigTemplateName, DialogSelectOption, DialogSurfaceConfirmState, DialogSurfaceProps, DialogSurfaceUIRequestState, DotsIndicatorProps, EffectiveTuiRendererMode, FullscreenPolicy, FullscreenTranscriptLayoutProps, HistoryItemRendererProps, InitializeSetupConfigurationInput, InteractiveSurfacePreference, KeypressManager, KeypressProviderProps, KodaXCommand, KodaXCommandContext, LoadingIndicatorProps, LoadingIndicatorType, MessageActionsProps, MessageListProps, MessageSelectorProps, NotificationSurfaceItem, NotificationsSurfaceProps, PendingInputsIndicatorProps, PersistedProviderSetupChoice, ProgressIndicatorProps, PromptComposerProps, PromptFooterLeftSideProps, PromptFooterProps, PromptFooterRightSideProps, PromptFooterSurfaceItem, PromptHelpMenuProps, PromptSuggestionsSurfaceProps, ProviderSetupCatalogEntry, ProviderSetupChoice, ProviderSetupCustomProviderMetadata, ProviderSetupInteraction, ProviderSetupReadiness, ProviderSetupWizardResult, QueuedCommandsSurfaceProps, RenderSetupGuideInput, ResolvedAutoModeBootstrapSettings, RunProviderSetupWizardInput, SessionDedupeMatch, SessionDedupeMove, SessionDedupeOptions, SessionDedupeReport, SessionDedupeSkip, SessionDedupeSkipReason, SessionPickerItem, SetupConfigDomain, SetupConfigFileKind, SetupConfigFileResult, SetupConfigFileStatus, SetupConfigurationResult, ShellExecutorConfig, SpinnerProps, StashNoticeProps, StatusNoticesSurfaceProps, StreamingActions, StreamingContextValue, StreamingManager, StreamingProviderProps, StreamingStateListener, SuggestionsDisplayProps, TerminalCapabilities, TerminalHostCapabilities, TerminalHostDetectionOptions, TerminalHostProfile, TerminalRenderHost, TextInputProps, ThinkingIndicatorProps, ToolCallDisplayProps, ToolGroupProps, ToolProgressBarProps, ToolStatusBadgeProps, TranscriptViewportProps, TuiRendererMode, UIStateProviderProps, UseAutocompleteOptions, UseAutocompleteReturn, UseInputHistoryOptions, UseInputHistoryReturn, UseKeypressOptions, UseTextBufferOptions };