@kodax-ai/kodax 0.7.41 → 0.7.43

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 (54) hide show
  1. package/CHANGELOG.md +119 -3
  2. package/README.md +214 -286
  3. package/README_CN.md +173 -277
  4. package/dist/chunks/chunk-7G5PSL6C.js +830 -0
  5. package/dist/chunks/{chunk-6OB4AJOM.js → chunk-IYSK7LUK.js} +1 -1
  6. package/dist/chunks/chunk-K75O2CAE.js +31 -0
  7. package/dist/chunks/chunk-UG4262JI.js +502 -0
  8. package/dist/chunks/chunk-VHKAJDQD.js +425 -0
  9. package/dist/chunks/chunk-YMRZBS4G.js +2 -0
  10. package/dist/chunks/{compaction-config-LT5PEXPT.js → compaction-config-3E57ABCT.js} +1 -1
  11. package/dist/chunks/{construction-bootstrap-HBCWJFHC.js → construction-bootstrap-JR63KI5N.js} +4 -4
  12. package/dist/chunks/dist-KWHUKXEL.js +2 -0
  13. package/dist/chunks/dist-XANXEVTU.js +2 -0
  14. package/dist/chunks/utils-HQ2QCKJA.js +2 -0
  15. package/dist/index.d.ts +15 -10
  16. package/dist/index.js +5 -5
  17. package/dist/kodax_cli.js +1084 -1054
  18. package/dist/sdk-agent.d.ts +853 -135
  19. package/dist/sdk-agent.js +1 -1
  20. package/dist/sdk-coding.d.ts +932 -981
  21. package/dist/sdk-coding.js +1 -1
  22. package/dist/sdk-llm.d.ts +8 -5
  23. package/dist/sdk-llm.js +1 -1
  24. package/dist/sdk-mcp.d.ts +17 -0
  25. package/dist/sdk-mcp.js +2 -0
  26. package/dist/sdk-repl.d.ts +343 -10
  27. package/dist/sdk-repl.js +2 -1
  28. package/dist/sdk-session.d.ts +176 -0
  29. package/dist/sdk-session.js +2 -0
  30. package/dist/sdk-skills.d.ts +72 -4
  31. package/dist/sdk-skills.js +1 -1
  32. package/dist/types-chunks/{cost-tracker.d-C4dMlQuV.d.ts → base.d-FUJahC0i.d.ts} +22 -112
  33. package/dist/types-chunks/{bash-prefix-extractor.d-B2iliwdi.d.ts → bash-prefix-extractor.d-DMrGImMl.d.ts} +266 -228
  34. package/dist/types-chunks/capability.d-3C62G8Eq.d.ts +39 -0
  35. package/dist/types-chunks/config.d-BfJUXxC0.d.ts +41 -0
  36. package/dist/types-chunks/cost-tracker.d-wRtyEW9d.d.ts +110 -0
  37. package/dist/types-chunks/{history-cleanup.d-q1vAvCss.d.ts → file-tracker.d-zaLZeNBK.d.ts} +532 -15
  38. package/dist/types-chunks/manager.d-87belpiS.d.ts +370 -0
  39. package/dist/types-chunks/{resolver.d-BwD6TKz7.d.ts → resolver.d-CA68_NeH.d.ts} +150 -5
  40. package/dist/types-chunks/storage.d-DPAEX7zS.d.ts +115 -0
  41. package/dist/types-chunks/{capability.d-BxNgd1-c.d.ts → types.d-B1uGoVTE.d.ts} +72 -40
  42. package/dist/types-chunks/{instance-discovery.d-DZhp77vb.d.ts → types.d-CKJtjo-6.d.ts} +168 -258
  43. package/dist/types-chunks/types.d-mM8vqvhT.d.ts +254 -0
  44. package/dist/types-chunks/{storage.d-Bv9T99Qu.d.ts → utils.d-DkLZD_wa.d.ts} +38 -112
  45. package/package.json +15 -6
  46. package/dist/chunks/chunk-5TFLMGER.js +0 -2
  47. package/dist/chunks/chunk-6QO6HWGU.js +0 -30
  48. package/dist/chunks/chunk-EQ5DGS2W.js +0 -14
  49. package/dist/chunks/chunk-HYWVRTFA.js +0 -1233
  50. package/dist/chunks/chunk-SX2IS5JP.js +0 -16
  51. package/dist/chunks/chunk-ZPJPNLBK.js +0 -462
  52. package/dist/chunks/dist-M57GIWR4.js +0 -2
  53. package/dist/chunks/dist-V3BS2NKB.js +0 -2
  54. package/dist/chunks/utils-FAFUQJ2A.js +0 -2
@@ -0,0 +1,2 @@
1
+ // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
+ import{$b as T,Zb as A}from"./chunk-7G5PSL6C.js";import{S as w,T as S,U as L,V as x,W as I,X as h,ca as O,da as m,ga as b,qa as R}from"./chunk-K75O2CAE.js";import{va as k}from"./chunk-VHKAJDQD.js";import{a as i}from"./chunk-V4WSBIXB.js";import a from"fs";import c from"path";import{exec as j,spawnSync as z}from"child_process";import{promisify as U}from"util";import{fileURLToPath as q}from"url";var E="en";function H(){return(process.env.LC_ALL||process.env.LC_MESSAGES||process.env.LANG||"").toLowerCase().startsWith("zh")?"zh":"en"}i(H,"detectSystemLocale");function M(e){if(!e||e==="auto"){E=H();return}E=e.toLowerCase().replace(/[-_].*/,"")==="zh"?"zh":"en"}i(M,"setLocale");var D={en:{"dialog.confirm":"[Confirm]","dialog.select":"[Select]","dialog.input":"[Input]","confirm.instruction.basic":"Press (y) yes, (n) no","confirm.instruction.always":"Press (y) yes, (a) always yes for this tool, (n) no","confirm.instruction.protected":"Press (y) to confirm, (n) to cancel (protected path)","confirm.result.approved":"Approved","confirm.result.approved_always":"Approved (always)","confirm.result.denied":"Denied","tool.bash.title":"Execute bash command?","tool.shell.title":"Execute shell command?","tool.write.title":"Write to file?","tool.edit.title":"Edit file?","tool.generic.title":"Execute {tool}?","field.reason":"Reason","field.intent":"Intent","field.target":"Target","field.scope":"Scope","field.risk":"Risk","field.summary":"Summary","intent.read":"Read project files","intent.delete":"Delete files","intent.deps":"Modify dependencies or environment","intent.modify":"Modify files","intent.execute":"Execute command","intent.write_file":"Write file","intent.edit_file":"Edit file","intent.use_tool":"Use {tool}","risk.destructive":"Destructive change","risk.deps":"May change dependencies or local tools","risk.modify":"May modify files","risk.unknown":"Command effects depend on its arguments","risk.network":"May access network","scope.outside":"Outside project","scope.protected":"Protected path","waiting.confirm":"Waiting: approval required","waiting.select":"Waiting: choose an option","waiting.input":"Waiting: answer the prompt","placeholder.confirm":"Respond to the approval prompt above...","placeholder.select":"Choose an option above...","placeholder.input":"Answer the prompt above...","placeholder.busy":"Agent is busy...","placeholder.queue":"Queue a follow-up for the next round...","placeholder.idle":"Type a message...","select.choice":"Choice:","select.type_number":"(type a number)","select.more":"{count} more choices...","select.more_above":"\u2191 {count} more above","select.more_below":"\u2193 {count} more below","select.confirm_hint":"Press Enter to confirm, Esc to cancel","select.navigate_hint":"Use \u2191\u2193 to navigate, Enter to confirm, Esc to cancel","select.multiselect_hint":"Use \u2191\u2193 to navigate, Space to toggle, Enter to confirm, Esc to cancel","select.multiselect_empty":"Select at least one option with Space before confirming.","select.back_prev":"\u2190 Back to previous question","input.default":"Default:","input.value":"Value:","input.type_response":"(type your response)","managed.completed":"Task completed","managed.completed.blocked":"Task blocked","managed.completed.continuation":"Task needs continuation",cancelled:"[Cancelled] Operation cancelled by user"},zh:{"dialog.confirm":"[\u786E\u8BA4]","dialog.select":"[\u9009\u62E9]","dialog.input":"[\u8F93\u5165]","confirm.instruction.basic":"\u6309 (y) \u786E\u8BA4, (n) \u62D2\u7EDD","confirm.instruction.always":"\u6309 (y) \u786E\u8BA4, (a) \u59CB\u7EC8\u5141\u8BB8\u6B64\u5DE5\u5177, (n) \u62D2\u7EDD","confirm.instruction.protected":"\u6309 (y) \u786E\u8BA4, (n) \u53D6\u6D88 (\u53D7\u4FDD\u62A4\u8DEF\u5F84)","confirm.result.approved":"\u5DF2\u6279\u51C6","confirm.result.approved_always":"\u5DF2\u6279\u51C6 (\u59CB\u7EC8\u5141\u8BB8)","confirm.result.denied":"\u5DF2\u62D2\u7EDD","tool.bash.title":"\u6267\u884C bash \u547D\u4EE4\uFF1F","tool.shell.title":"\u6267\u884C shell \u547D\u4EE4\uFF1F","tool.write.title":"\u5199\u5165\u6587\u4EF6\uFF1F","tool.edit.title":"\u7F16\u8F91\u6587\u4EF6\uFF1F","tool.generic.title":"\u6267\u884C {tool}\uFF1F","field.reason":"\u539F\u56E0","field.intent":"\u610F\u56FE","field.target":"\u76EE\u6807","field.scope":"\u8303\u56F4","field.risk":"\u98CE\u9669","field.summary":"\u6458\u8981","intent.read":"\u8BFB\u53D6\u9879\u76EE\u6587\u4EF6","intent.delete":"\u5220\u9664\u6587\u4EF6","intent.deps":"\u4FEE\u6539\u4F9D\u8D56\u6216\u73AF\u5883","intent.modify":"\u4FEE\u6539\u6587\u4EF6","intent.execute":"\u6267\u884C\u547D\u4EE4","intent.write_file":"\u5199\u5165\u6587\u4EF6","intent.edit_file":"\u7F16\u8F91\u6587\u4EF6","intent.use_tool":"\u4F7F\u7528 {tool}","risk.destructive":"\u7834\u574F\u6027\u53D8\u66F4","risk.deps":"\u53EF\u80FD\u4FEE\u6539\u4F9D\u8D56\u6216\u672C\u5730\u5DE5\u5177","risk.modify":"\u53EF\u80FD\u4FEE\u6539\u6587\u4EF6","risk.unknown":"\u547D\u4EE4\u6548\u679C\u53D6\u51B3\u4E8E\u53C2\u6570","risk.network":"\u53EF\u80FD\u8BBF\u95EE\u7F51\u7EDC","scope.outside":"\u9879\u76EE\u5916\u90E8","scope.protected":"\u53D7\u4FDD\u62A4\u8DEF\u5F84","waiting.confirm":"\u7B49\u5F85\u4E2D\uFF1A\u9700\u8981\u5BA1\u6279","waiting.select":"\u7B49\u5F85\u4E2D\uFF1A\u8BF7\u9009\u62E9","waiting.input":"\u7B49\u5F85\u4E2D\uFF1A\u8BF7\u56DE\u7B54","placeholder.confirm":"\u8BF7\u56DE\u5E94\u4E0A\u65B9\u7684\u5BA1\u6279\u63D0\u793A...","placeholder.select":"\u8BF7\u5728\u4E0A\u65B9\u9009\u62E9\u4E00\u4E2A\u9009\u9879...","placeholder.input":"\u8BF7\u56DE\u7B54\u4E0A\u65B9\u7684\u63D0\u793A...","placeholder.busy":"\u4EE3\u7406\u6B63\u5728\u5DE5\u4F5C\u4E2D...","placeholder.queue":"\u6392\u961F\u7B49\u5F85\u4E0B\u4E00\u8F6E\u8DDF\u8FDB...","placeholder.idle":"\u8F93\u5165\u6D88\u606F...","select.choice":"\u9009\u9879\uFF1A","select.type_number":"(\u8F93\u5165\u7F16\u53F7)","select.more":"\u8FD8\u6709 {count} \u4E2A\u9009\u9879...","select.more_above":"\u2191 \u4E0A\u65B9\u8FD8\u6709 {count} \u4E2A","select.more_below":"\u2193 \u4E0B\u65B9\u8FD8\u6709 {count} \u4E2A","select.confirm_hint":"\u6309 Enter \u786E\u8BA4\uFF0CEsc \u53D6\u6D88","select.navigate_hint":"\u4F7F\u7528 \u2191\u2193 \u5BFC\u822A\uFF0CEnter \u786E\u8BA4\uFF0CEsc \u53D6\u6D88","select.multiselect_hint":"\u4F7F\u7528 \u2191\u2193 \u5BFC\u822A\uFF0C\u7A7A\u683C \u5207\u6362\u9009\u4E2D\uFF0CEnter \u786E\u8BA4\uFF0CEsc \u53D6\u6D88","select.multiselect_empty":"\u8BF7\u5148\u4F7F\u7528\u7A7A\u683C\u9009\u62E9\u81F3\u5C11\u4E00\u4E2A\u9009\u9879\u3002","select.back_prev":"\u2190 \u8FD4\u56DE\u4E0A\u4E00\u9898","input.default":"\u9ED8\u8BA4\u503C\uFF1A","input.value":"\u503C\uFF1A","input.type_response":"(\u8F93\u5165\u4F60\u7684\u56DE\u7B54)","managed.completed":"\u4EFB\u52A1\u5B8C\u6210","managed.completed.blocked":"\u4EFB\u52A1\u53D7\u963B","managed.completed.continuation":"\u4EFB\u52A1\u9700\u8981\u7EE7\u7EED",cancelled:"[\u5DF2\u53D6\u6D88] \u64CD\u4F5C\u5DF2\u88AB\u7528\u6237\u53D6\u6D88"}};function me(e,t){let o=D[E][e]??D.en[e]??e;if(t)for(let[r,l]of Object.entries(t))o=o.replace(`{${r}}`,String(l));return o}i(me,"t");var W=U(j),X=k(),Se=c.join(X,"sessions"),p=c.join(X,"config.json"),Le=60,s=null,_=!1,J="dumb";function Q(e){let t=c.basename(e).toLowerCase(),n="__KODAX_SHELL_ENV_START__",o=`printf '%s\\0' '${n}'; env -0`;return t==="fish"?{args:["-i","-c",o],sentinel:n}:{args:t==="bash"||t==="zsh"?["-ic",o]:["-lc",o],sentinel:n}}i(Q,"buildShellEnvCommand");function Y(e,t){let n=`${t}\0`,o=e.lastIndexOf(n);if(o===-1)return{};let r=e.slice(o+n.length),l={};for(let u of r.split("\0")){if(!u)continue;let d=u.indexOf("=");d<=0||(l[u.slice(0,d)]=u.slice(d+1))}return l}i(Y,"parseNullDelimitedShellEnv");function Z(e={}){let t=e.env??process.env;if((e.platform??process.platform)==="win32"||t.KODAX_DISABLE_SHELL_ENV_HYDRATION==="1")return!1;let o=e.shell??t.SHELL;if(!o||!c.isAbsolute(o))return!1;let{args:r,sentinel:l}=Q(o),u=e.run??z,d={...t,TERM:J},f=u(o,r,{encoding:"utf8",env:d,maxBuffer:1024*1024,timeout:5e3,windowsHide:!0,detached:!0,stdio:["ignore","pipe","pipe"]});if(f.status!==0||!f.stdout)return!1;let B=typeof f.stdout=="string"?f.stdout:f.stdout.toString("utf8"),V=Y(B,l),C=!1;for(let[v,F]of Object.entries(V))v!=="TERM"&&t[v]===void 0&&(t[v]=F,C=!0);return C}i(Z,"hydrateProcessEnvFromShell");function ee(){if(!_){_=!0;try{Z()}catch{}}}i(ee,"ensureShellEnvironmentHydrated");function xe(){_=!1}i(xe,"resetShellEnvironmentHydrationForTesting");function te(e){O(e.customProviders??[])}i(te,"registerConfiguredCustomProviders");function $(e){if(!Array.isArray(e))return;let t=e.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0);return t.length>0?t:[]}i($,"normalizeConfiguredExtensions");function ne(e){if(e.permissionMode!=="default")return e;let t={...e,permissionMode:"accept-edits"};try{a.mkdirSync(c.dirname(p),{recursive:!0}),a.writeFileSync(p,JSON.stringify(t,null,2))}catch{}return t}i(ne,"migrateLegacyPermissionModeInConfig");function oe(){if(s)return s;let e="0.7.43";if(e)return s=e,s;let t=c.join(c.dirname(q(import.meta.url)),"../../package.json");if(a.existsSync(t))try{return s=JSON.parse(a.readFileSync(t,"utf-8")).version??"0.0.0",s??"0.0.0"}catch{}return s="0.0.0",s}i(oe,"getVersion");var Ie=oe();function Oe(e){return S(e)}i(Oe,"getProviderModel");function P(e,t){let n=new Set(e.map(r=>r.toLowerCase())),o=[...e];for(let r of t)n.has(r.toLowerCase())||o.push(r);return o}i(P,"mergeModels");function ie(e,t){t||(t=y().providerModels);let n=t?.[e];if(n&&n.length>0){try{let o=h(e);if(o.length>0)return P(n,o)}catch{}try{let o=m(e);if(o)return P(n,o.getAvailableModels())}catch{}return n}try{let o=h(e);if(o.length>0)return o}catch{}try{let o=m(e);if(o)return o.getAvailableModels()}catch{}return[]}i(ie,"getProviderAvailableModels");function re(e,t){let n=L(e,t);if(n!=="unknown")return n;try{let o=m(e);if(o)return o.getReasoningCapability(t)}catch{}return"unknown"}i(re,"getProviderReasoningCapability");function se(e){let t=x(e);if(t)return t;try{return b().find(o=>o.name===e)?.capabilityProfile??null}catch{return null}}i(se,"getProviderCapabilityProfile");function G(e,t){let n=se(e),o=re(e,t);if(n)return{capabilityProfile:n,reasoningCapability:o};try{let r=R(e);return{capabilityProfile:r.getCapabilityProfile(),reasoningCapability:r.getReasoningCapability(t)}}catch{return null}}i(G,"getProviderCapabilityMetadata");function Re(e,t){let n=G(e,t);return n?A({providerName:e,model:t,capabilityProfile:n.capabilityProfile,reasoningCapability:n.reasoningCapability==="unknown"?void 0:n.reasoningCapability}):null}i(Re,"getProviderCapabilitySnapshot");function ae(e,t,n,o){let r=G(e,t);return r?T({providerName:e,model:t,capabilityProfile:r.capabilityProfile,reasoningCapability:r.reasoningCapability==="unknown"?void 0:r.reasoningCapability,reasoningMode:n,hints:o}):null}i(ae,"getProviderPolicyDecision");function ke(e){let t=e.transport==="cli-bridge"?"CLI bridge":"Native API",n=e.conversationSemantics==="last-user-message"?"forwards only the latest user message":"preserves full conversation history",o=e.mcpSupport==="native"?"MCP available":"MCP unavailable";return`${t}; ${n}; ${o}`}i(ke,"describeProviderCapabilitySummary");function Ae(e){switch(e){case"native-budget":return"B";case"native-effort":return"E";case"native-toggle":return"T";default:return"-"}}i(Ae,"formatReasoningCapabilityShort");function ce(e){switch(e){case"native-budget":return"budget";case"native-effort":return"effort";case"native-toggle":return"toggle";default:return"none"}}i(ce,"describeReasoningCapabilityControl");function Te(e,t){if(e==="off")return"Reasoning disabled";switch(t){case"native-budget":return"Uses native thinking budget control";case"native-effort":return"Uses native reasoning effort control";case"native-toggle":return"Uses provider-native thinking toggle only";case"none":return"Runs without native reasoning parameters";case"prompt-only":return"Uses prompt overlays only; no native reasoning parameter";default:return"Runs without native reasoning parameters"}}i(Te,"describeReasoningExecution");function De(e){let t=[];e||(e=y().providerModels);for(let n of I())t.push({name:n.name,model:n.model,models:ie(n.name,e),configured:n.capabilityProfile.transport==="cli-bridge"?!0:n.configured,reasoningCapability:n.reasoningCapability,capabilityProfile:n.capabilityProfile});try{let n=b().map(o=>({...o,models:(()=>{let r=e?.[o.name];return r&&r.length>0?P(r,o.models):o.models})()}));t.push(...n)}catch{}return t}i(De,"getProviderList");function Me(e){if(w(e))return!0;try{return m(e)?.isConfigured()??!1}catch{return!1}}i(Me,"isProviderConfigured");function y(){try{if(a.existsSync(p)){let e=JSON.parse(a.readFileSync(p,"utf-8")),t=e.reasoningCeiling??e.reasoningMode;return ne({...e,reasoningMode:t,extensions:$(e.extensions)})}}catch{}return{}}i(y,"loadConfig");function le(e){e.streamIdleTimeoutMs&&!process.env.KODAX_STREAM_IDLE_TIMEOUT_MS&&(process.env.KODAX_STREAM_IDLE_TIMEOUT_MS=String(e.streamIdleTimeoutMs))}i(le,"applyResilienceRuntimeEnv");function ue(e){e.repoIntelligenceMode&&!process.env.KODAX_REPO_INTELLIGENCE_MODE&&(process.env.KODAX_REPO_INTELLIGENCE_MODE=e.repoIntelligenceMode),e.repointelEndpoint&&!process.env.KODAX_REPOINTEL_ENDPOINT&&(process.env.KODAX_REPOINTEL_ENDPOINT=e.repointelEndpoint),e.repointelBin&&!process.env.KODAX_REPOINTEL_BIN&&(process.env.KODAX_REPOINTEL_BIN=e.repointelBin),e.repoIntelligenceTrace===!0&&!process.env.KODAX_REPO_INTELLIGENCE_TRACE&&(process.env.KODAX_REPO_INTELLIGENCE_TRACE="1")}i(ue,"applyRepoIntelligenceRuntimeEnv");function pe(e){e.verifierLog===!0&&!process.env.KODAX_VERIFIER_LOG&&(process.env.KODAX_VERIFIER_LOG="1")}i(pe,"applyVerifierRuntimeEnv");function de(e){e.stallLog===!0&&!process.env.KODAX_STALL_LOG&&(process.env.KODAX_STALL_LOG="1")}i(de,"applyStallSidecarRuntimeEnv");function Ne(){ee();let e=y();return le(e),ue(e),pe(e),de(e),te(e),M(e.locale),e}i(Ne,"prepareRuntimeConfig");function Ke(e){let n={...y(),...e},o=$(n.extensions);o!==void 0&&(n.extensions=o);for(let r of Object.keys(e))e[r]===void 0&&delete n[r];a.mkdirSync(c.dirname(p),{recursive:!0}),a.writeFileSync(p,JSON.stringify(n,null,2))}i(Ke,"saveConfig");async function Xe(){try{let{stdout:e}=await W("git rev-parse --show-toplevel");return e.trim()}catch{return null}}i(Xe,"getGitRoot");function fe(e){switch(e){case"builtin":return"Built-in";case"runtime":return"Runtime extension";case"custom":return"Custom config";default:return"Unknown"}}i(fe,"formatProviderSourceKind");function $e(e){let t=e.transport==="cli-bridge"?"CLI bridge":"Native API",n=e.conversationSemantics==="last-user-message"?"latest-user-message only":"full conversation history";return[`Source: ${fe(e.sourceKind)}`,`Transport: ${t}`,`Conversation semantics: ${n}`,`Context fidelity: ${e.contextFidelity}`,`Tool calling: ${e.toolCallingFidelity}`,`Session behavior: ${e.sessionSupport}`,`Long-running support: ${e.longRunningSupport}`,`Evidence-heavy flows: ${e.evidenceSupport}`,`Multimodal support: ${e.multimodalSupport}`,`MCP support: ${e.mcpSupport}`,`Reasoning control: ${ce(e.reasoningCapability)}`]}i($e,"formatProviderCapabilityDetailLines");function Ge(e,t,n){return[{label:"General coding",hints:{}},{label:"Evidence-heavy review",hints:{evidenceHeavy:!0}},{label:"Long-running task",hints:{longRunning:!0}}].map(r=>({label:r.label,decision:ae(e,t,n,r.hints)})).filter(r=>r.decision!==null)}i(Ge,"getProviderCommonPolicyScenarios");var N=.5,K=0,g={locked:!1,queue:[]};async function Be(e){for(;g.locked;)await new Promise(t=>g.queue.push(t));g.locked=!0;try{let t=(Date.now()-K)/1e3;t<N&&await new Promise(o=>setTimeout(o,(N-t)*1e3));let n=await e();return K=Date.now(),n}finally{g.locked=!1;let t=g.queue.shift();t&&t()}}i(Be,"rateLimitedCall");export{me as a,X as b,Se as c,p as d,Le as e,Z as f,xe as g,te as h,oe as i,Ie as j,Oe as k,ie as l,re as m,se as n,Re as o,ae as p,ke as q,Ae as r,ce as s,Te as t,De as u,Me as v,y as w,Ne as x,Ke as y,Xe as z,fe as A,$e as B,Ge as C,Be as D};
@@ -1,2 +1,2 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{a}from"./chunk-6OB4AJOM.js";import"./chunk-SX2IS5JP.js";import"./chunk-V4WSBIXB.js";export{a as loadCompactionConfig};
2
+ import{a}from"./chunk-IYSK7LUK.js";import"./chunk-VHKAJDQD.js";import"./chunk-V4WSBIXB.js";export{a as loadCompactionConfig};
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{Cb as a,xb as i}from"./chunk-HYWVRTFA.js";import"./chunk-SX2IS5JP.js";import"./chunk-EQ5DGS2W.js";import"./chunk-6QO6HWGU.js";import{a as t}from"./chunk-V4WSBIXB.js";var n=null;function f(e){n=e}t(f,"bindAskUserForConstruction");function d(e){return e.content?.capabilities?.tools??[]}t(d,"readDeclaredTools");var u=t(async e=>{if(!n)return"reject";let o=d(e),r=o.length>0?o.join(", "):"<none>";return await n({question:`Activate constructed tool ${e.name}@${e.version}?
3
- It declares capabilities.tools = [${r}].`,options:[{label:"Approve \u2014 register and make callable",description:"The tool will be added to the active tool registry and the LLM can invoke it on the next turn.",value:"approve"},{label:"Reject \u2014 do not register",description:"The artifact stays staged on disk; rerun activate_tool to retry.",value:"reject"}]})==="approve"?"approve":"reject"},"replConstructionPolicy"),p=t(async e=>{if(!n)return"reject";let o=e.llmSummary.flaggedConcerns.length>0?e.llmSummary.flaggedConcerns.map(l=>` \u2022 ${l}`).join(`
4
- `):" \u2022 <none>",r=e.prevContent.instructions??"<no instructions>",s=e.nextContent.instructions??"<no instructions>",c=[`Self-modify activation: ${e.agentName}@${e.fromVersion} \u2192 ${e.toVersion}`,"",`LLM diff summary (severity=${e.llmSummary.severity}):`,` ${e.llmSummary.summary}`,"","Flagged concerns:",o,"",`Budget remaining (after approve): ${e.budgetRemaining-1}/${e.budgetLimit}`,"","\u2500\u2500 Previous instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",r,"\u2500\u2500 Proposed instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",s,"\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500","","The LLM summary is advisory \u2014 read the proposed instructions above before approving."].join(`
5
- `);return await n({question:c,options:[{label:"Approve \u2014 activate the new version on the next run",description:"Resolver swap is deferred to the next Runner.run boundary so the in-flight conversation keeps the prior reference.",value:"approve"},{label:"Reject \u2014 stay on the previous version",description:"Budget is not consumed on rejection; the staged version is left on disk for diff inspection.",value:"reject"}]})==="approve"?"approve":"reject"},"replSelfModifyAskUser");async function g(e){return i({cwd:e,policy:u,selfModifyAskUser:p}),a()}t(g,"bootstrapConstructionRuntime");export{f as bindAskUserForConstruction,g as bootstrapConstructionRuntime};
2
+ import{Xa as a,ab as i,hb as c}from"./chunk-7G5PSL6C.js";import"./chunk-K75O2CAE.js";import"./chunk-VHKAJDQD.js";import{a as n}from"./chunk-V4WSBIXB.js";var r=null;function g(e){r=e}n(g,"bindAskUserForConstruction");function u(e){return e.content?.capabilities?.tools??[]}n(u,"readDeclaredTools");var m=n(async e=>{if(!r)return"reject";let t=u(e),o=t.length>0?t.join(", "):"<none>";return await r({question:`Activate constructed tool ${e.name}@${e.version}?
3
+ It declares capabilities.tools = [${o}].`,options:[{label:"Approve \u2014 register and make callable",description:"The tool will be added to the active tool registry and the LLM can invoke it on the next turn.",value:"approve"},{label:"Reject \u2014 do not register",description:"The artifact stays staged on disk; rerun activate_tool to retry.",value:"reject"}]})==="approve"?"approve":"reject"},"replConstructionPolicy"),p=n(async e=>{if(!r)return"reject";let t=e.llmSummary.flaggedConcerns.length>0?e.llmSummary.flaggedConcerns.map(d=>` \u2022 ${d}`).join(`
4
+ `):" \u2022 <none>",o=e.prevContent.instructions??"<no instructions>",s=e.nextContent.instructions??"<no instructions>",l=[`Self-modify activation: ${e.agentName}@${e.fromVersion} \u2192 ${e.toVersion}`,"",`LLM diff summary (severity=${e.llmSummary.severity}):`,` ${e.llmSummary.summary}`,"","Flagged concerns:",t,"",`Budget remaining (after approve): ${e.budgetRemaining-1}/${e.budgetLimit}`,"","\u2500\u2500 Previous instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",o,"\u2500\u2500 Proposed instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",s,"\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500","","The LLM summary is advisory \u2014 read the proposed instructions above before approving."].join(`
5
+ `);return await r({question:l,options:[{label:"Approve \u2014 activate the new version on the next run",description:"Resolver swap is deferred to the next Runner.run boundary so the in-flight conversation keeps the prior reference.",value:"approve"},{label:"Reject \u2014 stay on the previous version",description:"Budget is not consumed on rejection; the staged version is left on disk for diff inspection.",value:"reject"}]})==="approve"?"approve":"reject"},"replSelfModifyAskUser");async function y(e){a({cwd:e,policy:m,selfModifyAskUser:p});let t=await i(),o=await c({cwd:e});return{loaded:t.loaded,failed:t.failed,tampered:t.tampered,markdownLoaded:o.loaded,markdownFailures:o.failed}}n(y,"bootstrapConstructionRuntime");export{g as bindAskUserForConstruction,y as bootstrapConstructionRuntime};
@@ -0,0 +1,2 @@
1
+ // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
+ import{$ as Vb,$a as Vc,$b as Vd,$c as Ve,A as ub,Aa as uc,Ab as ud,Ac as ue,Ad as vf,B as vb,Ba as vc,Bb as vd,Bc as ve,Bd as wf,C as wb,Ca as wc,Cb as wd,Cc as we,Cd as xf,D as xb,Da as xc,Db as xd,Dc as xe,Dd as yf,E as yb,Ea as yc,Eb as yd,Ec as ye,Ed as zf,F as zb,Fa as zc,Fb as zd,Fc as ze,Fd as Af,G as Ab,Ga as Ac,Gb as Ad,Gc as Ae,Gd as Bf,H as Bb,Ha as Bc,Hb as Bd,Hc as Be,I as Cb,Ia as Cc,Ib as Cd,Ic as Ce,J as Db,Ja as Dc,Jb as Dd,Jc as De,K as Eb,Ka as Ec,Kb as Ed,Kc as Ee,L as Fb,La as Fc,Lb as Fd,Lc as Fe,M as Gb,Ma as Gc,Mb as Gd,Mc as Ge,N as Hb,Na as Hc,Nb as Hd,Nc as He,O as Ib,Oa as Ic,Ob as Id,Oc as Ie,P as Jb,Pa as Jc,Pb as Jd,Pc as Je,Q as Kb,Qa as Kc,Qb as Kd,Qc as Ke,R as Lb,Ra as Lc,Rb as Ld,Rc as Le,S as Mb,Sa as Mc,Sb as Md,Sc as Me,T as Nb,Ta as Nc,Tb as Nd,Tc as Ne,U as Ob,Ua as Oc,Ub as Od,Uc as Oe,V as Pb,Va as Pc,Vb as Pd,Vc as Pe,W as Qb,Wa as Qc,Wb as Qd,Wc as Qe,X as Rb,Xa as Rc,Xb as Rd,Xc as Re,Y as Sb,Ya as Sc,Yb as Sd,Yc as Se,Z as Tb,Za as Tc,Zb as Td,Zc as Te,_ as Ub,_a as Uc,_b as Ud,_c as Ue,a as X,aa as Wb,ab as Wc,ac as Wd,ad as We,b as Y,ba as Xb,bb as Xc,bc as Xd,bd as Xe,c as Z,ca as Yb,cb as Yc,cc as Yd,cd as Ye,d as _,da as Zb,db as Zc,dc as Zd,dd as Ze,e as $,ea as _b,eb as _c,ec as _d,ed as _e,f as $a,fa as $b,fb as $c,fc as $d,fd as $e,g as ab,ga as ac,gb as ad,gc as ae,gd as af,h as bb,ha as bc,hb as bd,hc as be,hd as bf,i as cb,ia as cc,ib as cd,ic as ce,id as cf,j as db,ja as dc,jb as dd,jc as de,jd as df,k as eb,ka as ec,kb as ed,kc as ee,kd as ef,l as fb,la as fc,lb as fd,lc as fe,ld as ff,m as gb,ma as gc,mb as gd,mc as ge,md as gf,n as hb,na as hc,nb as hd,nc as he,nd as hf,o as ib,oa as ic,ob as id,oc as ie,od as jf,p as jb,pa as jc,pb as jd,pc as je,pd as kf,q as kb,qa as kc,qb as kd,qc as ke,qd as lf,r as lb,ra as lc,rb as ld,rc as le,rd as mf,s as mb,sa as mc,sb as md,sc as me,sd as nf,t as nb,ta as nc,tb as nd,tc as ne,td as of,u as ob,ua as oc,ub as od,uc as oe,ud as pf,v as pb,va as pc,vb as pd,vc as pe,vd as qf,w as qb,wa as qc,wb as qd,wc as qe,wd as rf,x as rb,xa as rc,xb as rd,xc as re,xd as sf,y as sb,ya as sc,yb as sd,yc as se,yd as tf,z as tb,za as tc,zb as td,zc as te,zd as uf}from"./chunk-7G5PSL6C.js";import{$ as A,C as k,I as l,J as m,O as n,P as o,Q as p,R as q,S as r,T as s,U as t,V as u,W as v,X as w,Y as x,Z as y,_ as z,a,aa as B,b,ba as C,c,ca as D,da as E,ea as F,fa as G,ga as H,ha as I,ia as J,j as d,ja as K,ka as L,la as M,ma as N,na as O,oa as P,pa as Q,qa as R,ra as S,sa as T,t as e,ta as U,u as f,ua as V,v as g,va as W,w as h,x as i,y as j}from"./chunk-K75O2CAE.js";import{$b as Ka,Xa as va,Ya as wa,Yb as Ha,Zb as Ia,_b as Ja,a as aa,ac as La,b as ba,c as ca,d as da,e as ea,f as fa,h as ga,hc as Ma,i as ha,ic as Na,j as ia,jc as Oa,k as ja,ka as pa,kb as xa,kc as Pa,l as ka,lb as ya,lc as Qa,m as la,mb as za,mc as Ra,n as ma,na as qa,nb as Aa,nc as Sa,o as na,ob as Ba,p as oa,pb as Ca,pc as Ta,qb as Da,qc as Ua,rb as Ea,rc as Va,sb as Fa,sc as Wa,tb as Ga,tc as Xa,ua as ra,uc as Ya,va as sa,wa as ta,xa as ua,xc as Za,yc as _a}from"./chunk-VHKAJDQD.js";import"./chunk-V4WSBIXB.js";export{df as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD,ef as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD,zf as BASH_POLICY_SPEC,kf as BREAKER_ERROR_THRESHOLD,lf as BREAKER_WINDOW_MS,ab as CANCELLED_TOOL_RESULT_MESSAGE,$a as CANCELLED_TOOL_RESULT_PREFIX,Ve as CODING_AGENT_MARKER,oe as CODING_INVARIANTS,de as CODING_SUMMARY_PROMPT,ee as CODING_UPDATE_SUMMARY_PROMPT,Ac as CapabilityDeniedError,qe as Client,Bc as ConstructionManifestError,fe as DEFAULT_CODING_AGENT_NAME,Ke as DEFAULT_DANGEROUS_PATTERNS,yc as DEFAULT_HANDLER_TIMEOUT_MS,Nd as DEFAULT_RESILIENCE_CONFIG,Je as DEFAULT_SAFE_PATTERNS,Lc as DEFAULT_SELF_MODIFY_BUDGET,vf as DEFAULT_SPECULATIVE_WINDOW_MS,cb as DEFAULT_TOOL_OUTPUT_MAX_BYTES,bb as DEFAULT_TOOL_OUTPUT_MAX_LINES,oa as DefaultSummaryCompaction,Se as EMIT_VERDICT_TOOL_NAME,_ as ErrorCategory,pc as GENERATOR_AGENT_NAME,ha as KODAX_API_MIN_INTERVAL,p as KODAX_DEFAULT_PROVIDER,ba as KODAX_DEFAULT_TIMEOUT,ca as KODAX_HARD_TIMEOUT,fa as KODAX_MAX_INCOMPLETE_RETRIES,da as KODAX_MAX_RETRIES,aa as KODAX_MAX_TOKENS,o as KODAX_PROVIDERS,n as KODAX_PROVIDER_SNAPSHOTS,d as KODAX_REASONING_MODE_SEQUENCE,ea as KODAX_RETRY_BASE_DELAY,ga as KODAX_STAGGER_DELAY,id as KODAX_TOOLS,l as KodaXAnthropicCompatProvider,k as KodaXBaseProvider,qe as KodaXClient,a as KodaXError,ed as KodaXExtensionRuntime,m as KodaXOpenAICompatProvider,b as KodaXProviderError,c as KodaXRateLimitError,Y as KodaXSessionError,Z as KodaXTerminalError,X as KodaXToolError,Ha as LINEAGE_ENTRY_TYPES,Ja as LineageCompaction,Ia as LineageExtension,Ea as McpCapabilityProvider,Fa as McpManager,Da as McpServerRuntime,oc as PLANNER_AGENT_NAME,ia as PROMISE_PATTERN,Bd as PROMPT_SECTION_REGISTRY,Ue as PROTOCOL_EMITTER_TOOLS,Sd as ProviderRecoveryCoordinator,db as READ_DEFAULT_LIMIT,fb as READ_MAX_LINE_CHARS,eb as READ_PREFLIGHT_SIZE_BYTES,Jb as REPOINTEL_DEFAULT_ENDPOINT,qa as Runner,nc as SCOUT_AGENT_NAME,Ad as SYSTEM_PROMPT,Qd as StableBoundaryTracker,sc as TASK_ENGINE_ROLE_AGENTS,ze as TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME,qc as WORKER_AGENT_NAME,Sc as _resetRuntimeForTesting,Vc as activate,Ab as analyzeChangedScope,Jc as appendAuditEntry,Ra as appendSessionLineageLabel,ve as applyFanoutBranchTransition,Sa as applySessionCompaction,$b as applyToolResultGuardrail,Ya as archiveOldIslands,we as assignFanoutBranchWorker,jf as autoModeDenialShouldFallback,sf as bashSignalCollector,ke as boundedRevise,of as breakerShouldFallback,le as budgetCeiling,$d as buildAmaControllerDecision,Gd as buildCapabilityContextSections,We as buildClassifierPrompt,Zd as buildFallbackRoutingDecision,se as buildFanoutSchedulerPlan,Gc as buildLlmReviewPrompt,Kd as buildPromptMessageContent,ae as buildPromptOverlay,Fd as buildPromptSnapshot,Td as buildProviderCapabilitySnapshot,_d as buildProviderPolicyHintsForDecision,Ud as buildProviderPolicyPromptNotes,g as buildReasoningOverrideKey,zb as buildRepoIntelligenceContext,Ob as buildRepoIntelligenceIndex,wb as buildRepoOverview,Wa as buildSessionTree,Id as buildSystemPrompt,Hd as buildSystemPromptSnapshot,rf as checkAbsoluteDeny,Jd as checkIncompleteToolCalls,ce as checkPromiseSignal,Ye as classify,Me as classifyBashCommand,$ as classifyError,Pd as classifyResilienceError,wa as cleanupIncompleteToolCalls,j as clearReasoningOverride,Q as clearRuntimeModelProviders,uf as collectAllSignals,Oe as computeInputSignature,Ze as computeRulesFingerprint,Rc as configureRuntime,dc as convertCapabilityReadResult,cc as convertProviderSearchResults,ue as countActiveFanoutBranches,Xa as countActiveLineageMessages,ka as countTokens,la as createAgent,ff as createAutoModeDenialTracker,yf as createAutoModeToolGuardrail,Le as createBashClassifierConfig,Bf as createBashPrefixExtractor,qd as createBuiltinToolDefinition,mf as createCircuitBreaker,Cc as createCtxProxy,C as createCustomProvider,ge as createDefaultCodingAgent,Ne as createDenialTracker,fd as createExtensionRuntime,re as createFanoutSchedulerInput,ma as createHandoff,na as createInMemorySession,Fe as createKodaXTaskRunner,ya as createMcpCapabilityId,Ga as createMcpManager,Ca as createMcpTransport,Cd as createPromptSection,be as createReasoningPlan,ie as createSessionControl,Ma as createSessionLineage,Ae as createToolResultTruncationGuardrail,xa as defaultMcpCacheDir,zc as defaultPolicy,Qc as disableSelfModify,cd as discoverMarkdownAgents,vc as drainPendingSwaps,Te as emitVerdict,ja as estimateTokens,Vd as evaluateProviderPolicy,wc as exec,zd as executeTool,Za as extractArtifactLedger,Af as extractCommandPrefix,Md as extractComparableUserMessageText,bc as extractHtmlTitle,Ld as extractPromptComparableText,La as extractTitleFromMessages,tf as fileSignalCollector,fc as finalizeRetrievalResult,$c as findByVersion,Ta as findPreviousUserEntryId,Va as forkSessionLineage,mc as formatAgentsForPrompt,He as formatParallelDispatchResult,gb as formatSize,Ka as generateSessionId,hd as getActiveExtensionRuntime,sa as getAgentConfigHome,ta as getAgentConfigPath,sd as getAllRegisteredTools,ua as getAppDataDir,T as getAvailableProviderNames,pd as getBuiltinRegisteredToolDefinition,od as getBuiltinToolDefinition,K as getCustomModelCapabilities,E as getCustomProvider,H as getCustomProviderList,J as getCustomProviderModelDescriptors,I as getCustomProviderModels,G as getCustomProviderNames,Re as getDenialContext,te as getFanoutBranch,Tb as getImpactEstimate,kc as getKodaxGlobalDir,Ba as getMcpCachePaths,z as getModelCapabilities,Qb as getModuleContext,Sb as getProcessContext,q as getProvider,u as getProviderConfiguredCapabilityProfile,t as getProviderConfiguredReasoningCapability,v as getProviderList,s as getProviderModel,y as getProviderModelDescriptors,w as getProviderModels,md as getRegisteredToolDefinition,Pb as getRepoIntelligenceIndex,xb as getRepoOverview,Ub as getRepoRoutingSignals,wd as getRequiredToolParams,N as getRuntimeModelProvider,P as getRuntimeModelProviderNames,Na as getSessionLineagePath,Oa as getSessionMessagesFromLineage,Rb as getSymbolContext,kd as getTool,ld as getToolDefinition,nd as getToolRegistrations,_b as getToolResultPolicy,uc as hasPendingSwap,Yd as inferTaskType,pb as inspectEditFailure,Mb as inspectRepoIntelligenceRuntime,F as isCustomProviderName,Qe as isDeniedRecently,S as isKnownProvider,Ge as isParallelDispatchDirective,r as isProviderConfigured,x as isProviderName,O as isRuntimeModelProviderName,ud as isToolFileMutation,vd as isToolMutation,td as isToolPlanModeAllowed,ad as listAll,W as listAllModelCapabilities,Yc as listArtifacts,A as listBuiltinModelCapabilities,rd as listBuiltinToolDefinitions,_c as listConstructed,L as listCustomProviderModelCapabilities,yd as listToolDefinitions,xd as listTools,lc as loadAgentsFiles,bd as loadAgentsFromMarkdown,bf as loadAutoRules,Dc as loadHandler,h as loadReasoningOverride,ye as markFanoutBranchCancelled,xe as markFanoutBranchCompleted,_a as mergeArtifactLedger,Dd as orderPromptSections,af as parseAutoRules,Xe as parseClassifierOutput,ob as parseEditToolError,Hc as parseLlmReviewVerdict,za as parseMcpCapabilityId,pf as parseModelSpec,kb as persistToolOutput,Vb as prewarmRepoIntelligenceCaches,Zc as readArtifact,Kc as readAuditEntries,Mc as readBudget,Pc as readDisableState,wf as readSpeculativeWindowFromEnv,_e as readTrustState,e as reasoningCapabilityToOverride,Xd as reasoningModeToDepth,f as reasoningOverrideToCapability,Rd as reconstructMessagesWithToolGuard,hf as recordAutoModeAllow,gf as recordAutoModeBlock,nf as recordBreakerError,Pe as recordDenial,pe as registerCodingInvariants,Ce as registerConfiguredMcpCapabilityProvider,D as registerCustomProviders,M as registerModelProvider,De as registerOfficialSandboxExtension,pa as registerPresetDispatcher,jd as registerTool,Wc as rehydrateActiveArtifacts,Nc as remainingSelfModifyBudget,Bb as renderChangedScope,Ib as renderImpactEstimate,Fb as renderModuleContext,Hb as renderProcessContext,Ed as renderPromptSections,yb as renderRepoOverview,ec as renderRetrievalResult,Gb as renderSymbolContext,Oc as resetBudget,qf as resolveClassifierModel,tc as resolveConstructedAgent,V as resolveModelCapabilities,R as resolveProvider,U as resolveProviderModelDescriptors,Wd as resolveReasoningMode,Lb as resolveRepoIntelligenceMode,Kb as resolveRepoIntelligenceRuntimeConfig,Od as resolveResilienceConfig,Pa as resolveSessionLineageTarget,me as resolveToolCapability,Xc as revoke,Ua as rewindSessionLineage,dd as rollbackSelfModify,Ec as runAstRules,he as runKodaX,Ic as runLlmReview,Be as runManagedTask,Ee as runOrchestration,i as saveReasoningOverride,Aa as searchMcpCatalog,gd as setActiveExtensionRuntime,ra as setAgentConfigHome,Qa as setSessionLineageActiveEntry,xf as speculativeRace,Tc as stage,je as startKodaX,cf as stripAssistantText,ac as stripHtmlToText,Uc as testArtifact,vb as toolAskUserQuestion,rb as toolBash,Eb as toolChangedDiff,Db as toolChangedScope,ic as toolCodeSearch,nb as toolEdit,sb as toolGlob,tb as toolGrep,Zb as toolImpactEstimate,qb as toolInsertAfterAnchor,Wb as toolModuleContext,ne as toolPermission,Yb as toolProcessContext,lb as toolRead,Cb as toolRepoOverview,jc as toolSemanticLookup,Xb as toolSymbolContext,ub as toolUndo,hc as toolWebFetch,gc as toolWebSearch,mb as toolWrite,hb as truncateHead,jb as truncateLine,ib as truncateTail,$e as trustProjectRules,va as validateAndFixToolHistory,B as validateCustomProviderConfig,Ie as validateSubtaskIndependence,Fc as validateToolSchemaForProvider,Nb as warmRepoIntelligenceRuntime,xc as webhook,rc as workerAgent};
@@ -0,0 +1,2 @@
1
+ // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
+ import{$,A,Aa,B,Ba,C,Ca,D,Da,E,Ea,F,Fa,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,a,aa,b,ba,c,ca,d,da,e,ea,f,fa,g,ga,h,ha,i,ia,j,ja,k,ka,l,la,m,ma,n,na,o,oa,p,pa,q,qa,r,ra,s,sa,t,ta,u,ua,v,va,w,wa,x,xa,y,ya,z,za}from"./chunk-K75O2CAE.js";import"./chunk-V4WSBIXB.js";export{wa as DEFAULT_COST_RATES,i as KODAX_API_MIN_INTERVAL,g as KODAX_CAPPED_MAX_OUTPUT_TOKENS,Q as KODAX_DEFAULT_PROVIDER,k as KODAX_DEFAULT_THINKING_BUDGETS,h as KODAX_ESCALATED_MAX_OUTPUT_TOKENS,f as KODAX_MAX_TOKENS,P as KODAX_PROVIDERS,O as KODAX_PROVIDER_SNAPSHOTS,j as KODAX_REASONING_MODE_SEQUENCE,l as KODAX_REASONING_SAFETY_RESERVE,I as KodaXAnthropicCompatProvider,C as KodaXBaseProvider,a as KodaXError,d as KodaXNetworkError,J as KodaXOpenAICompatProvider,b as KodaXProviderError,c as KodaXRateLimitError,e as KodaXToolCallIdError,v as buildReasoningOverrideKey,ya as calculateCost,r as clampThinkingBudget,y as clearReasoningOverride,pa as clearRuntimeModelProviders,za as createCostTracker,ba as createCustomProvider,A as extractHeadersFromError,Da as formatCost,Ea as formatCostReport,sa as getAvailableProviderNames,K as getCodexCliDefaultModel,M as getCodexCliKnownModels,xa as getCostRate,ja as getCustomModelCapabilities,da as getCustomProvider,ga as getCustomProviderList,ia as getCustomProviderModelDescriptors,ha as getCustomProviderModels,fa as getCustomProviderNames,p as getDefaultThinkingDepthForMode,L as getGeminiCliDefaultModel,N as getGeminiCliKnownModels,_ as getModelCapabilities,R as getProvider,V as getProviderConfiguredCapabilityProfile,U as getProviderConfiguredReasoningCapability,W as getProviderList,T as getProviderModel,Z as getProviderModelDescriptors,X as getProviderModels,m as getReasoningCapability,ma as getRuntimeModelProvider,oa as getRuntimeModelProviderNames,Ca as getSummary,E as insertCacheBoundary,F as isCacheBoundary,ea as isCustomProviderName,ra as isKnownProvider,S as isProviderConfigured,Y as isProviderName,n as isReasoningEnabled,na as isRuntimeModelProviderName,va as listAllModelCapabilities,$ as listBuiltinModelCapabilities,ka as listCustomProviderModelCapabilities,w as loadReasoningOverride,G as lowerCacheBoundaries,s as mapDepthToOpenAIReasoningEffort,B as normalizeCapabilityProfile,o as normalizeReasoningRequest,z as parseRetryAfter,D as parseToolInputWithSalvage,t as reasoningCapabilityToOverride,u as reasoningOverrideToCapability,Aa as recordRetry,Ba as recordUsage,ca as registerCustomProviders,la as registerModelProvider,ua as resolveModelCapabilities,qa as resolveProvider,ta as resolveProviderModelDescriptors,q as resolveThinkingBudget,x as saveReasoningOverride,Fa as sideQuery,H as stripCacheBoundaries,aa as validateCustomProviderConfig};
@@ -0,0 +1,2 @@
1
+ // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
+ import{A as z,B as A,C as B,D as C,b as a,c as b,d as c,e as d,f as e,g as f,h as g,i as h,j as i,k as j,l as k,m as l,n as m,o as n,p as o,q as p,r as q,s as r,t as s,u as t,v as u,w as v,x as w,y as x,z as y}from"./chunk-YMRZBS4G.js";import"./chunk-7G5PSL6C.js";import"./chunk-K75O2CAE.js";import"./chunk-VHKAJDQD.js";import"./chunk-V4WSBIXB.js";export{c as KODAX_CONFIG_FILE,a as KODAX_DIR,b as KODAX_SESSIONS_DIR,i as KODAX_VERSION,d as PREVIEW_MAX_LENGTH,p as describeProviderCapabilitySummary,r as describeReasoningCapabilityControl,s as describeReasoningExecution,A as formatProviderCapabilityDetailLines,z as formatProviderSourceKind,q as formatReasoningCapabilityShort,y as getGitRoot,k as getProviderAvailableModels,m as getProviderCapabilityProfile,n as getProviderCapabilitySnapshot,B as getProviderCommonPolicyScenarios,t as getProviderList,j as getProviderModel,o as getProviderPolicyDecision,l as getProviderReasoningCapability,h as getVersion,e as hydrateProcessEnvFromShell,u as isProviderConfigured,v as loadConfig,w as prepareRuntimeConfig,C as rateLimitedCall,g as registerConfiguredCustomProviders,f as resetShellEnvironmentHydrationForTesting,x as saveConfig};
package/dist/index.d.ts CHANGED
@@ -1,16 +1,21 @@
1
- import { G as KodaXReasoningMode } from './types-chunks/capability.d-BxNgd1-c.js';
2
- export { C as CapabilityKind, a as CapabilityProvider, b as CapabilityResult, K as KodaXAmaControllerDecision, c as KodaXAmaFanoutClass, d as KodaXAmaFanoutPolicy, e as KodaXAmaProfile, f as KodaXAmaTactic, i as KodaXContentBlock, j as KodaXCustomProviderConfig, k as KodaXExecutionMode, n as KodaXImageBlock, o as KodaXMessage, p as KodaXModelDescriptor, r as KodaXProtocolFamily, s as KodaXProviderCapabilityProfile, t as KodaXProviderConfig, v as KodaXProviderConversationSemantics, y as KodaXProviderMcpSupport, B as KodaXProviderStreamOptions, E as KodaXProviderTransport, F as KodaXReasoningCapability, H as KodaXReasoningOverride, I as KodaXReasoningRequest, J as KodaXRedactedThinkingBlock, L as KodaXReviewScale, M as KodaXRiskLevel, N as KodaXStreamResult, P as KodaXTaskBudgetOverrides, S as KodaXTaskRoutingDecision, T as KodaXTaskType, V as KodaXTextBlock, W as KodaXThinkingBlock, X as KodaXThinkingBudgetMap, Y as KodaXThinkingDepth, Z as KodaXTokenUsage, _ as KodaXToolDefinition, $ as KodaXToolResultBlock, a0 as KodaXToolUseBlock } from './types-chunks/capability.d-BxNgd1-c.js';
3
- export { K as KODAX_DEFAULT_PROVIDER, b as KODAX_PROVIDERS, c as KODAX_PROVIDER_SNAPSHOTS, d as KODAX_REASONING_MODE_SEQUENCE, f as KodaXAnthropicCompatProvider, g as KodaXError, i as KodaXOpenAICompatProvider, j as KodaXProviderError, k as KodaXRateLimitError, P as ProviderName, m as buildReasoningOverrideKey, o as clearReasoningOverride, p as clearRuntimeModelProviders, q as createCustomProvider, r as getAvailableProviderNames, s as getCustomProvider, t as getCustomProviderList, u as getCustomProviderModels, v as getCustomProviderNames, x as getProvider, y as getProviderConfiguredCapabilityProfile, z as getProviderConfiguredReasoningCapability, C as getProviderModels, E as getRuntimeModelProvider, F as getRuntimeModelProviderNames, G as isCustomProviderName, H as isKnownProvider, J as isProviderName, M as isRuntimeModelProviderName, N as loadReasoningOverride, R as reasoningCapabilityToOverride, S as reasoningOverrideToCapability, T as registerCustomProviders, U as registerModelProvider, V as resolveProvider, X as saveReasoningOverride } from './types-chunks/resolver.d-BwD6TKz7.js';
4
- export { K as KodaXBaseProvider } from './types-chunks/cost-tracker.d-C4dMlQuV.js';
5
- export { C as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD, n as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD, A as AgentsFile, a as AskUserMultiOptions, b as AskUserQuestionItem, c as AskUserQuestionOptions, d as AutoModeAskUser, e as AutoModeAskUserVerdict, D as AutoModeDenialTracker, f as AutoModeEngine, g as AutoModeGuardrailConfig, h as AutoModeSharedState, i as AutoModeStats, j as AutoModeToolGuardrail, k as AutoRules, B as BASH_POLICY_SPEC, E as BREAKER_ERROR_THRESHOLD, aU as BREAKER_WINDOW_MS, l as BashPrefixExtractor, m as BashPrefixResult, o as CircuitBreaker, p as CompactionAnchor, r as CompactionResult, s as CompactionUpdate, t as CreateBashPrefixExtractorOptions, v as ExtractCommandPrefixOptions, F as FailureStage, K as KodaXAgentMode, w as KodaXBudgetDisclosureZone, x as KodaXBudgetExtensionRequest, y as KodaXChildAgentResult, z as KodaXChildContextBundle, G as KodaXContextOptions, H as KodaXContextTokenSnapshot, I as KodaXEvents, J as KodaXFanoutBranchLifecycle, L as KodaXFanoutBranchRecord, M as KodaXFanoutBranchTransition, N as KodaXFanoutSchedulerInput, O as KodaXFanoutSchedulerPlan, P as KodaXInputArtifact, Q as KodaXManagedBudgetSnapshot, S as KodaXManagedTask, T as KodaXManagedTaskRuntimeState, U as KodaXManagedTaskStatusEvent, V as KodaXMcpConnectMode, W as KodaXMcpServerConfig, X as KodaXMcpServersConfig, Y as KodaXMcpTransport, Z as KodaXMemoryStrategy, _ as KodaXOptions, $ as KodaXOrchestrationVerdict, a0 as KodaXParentReductionContract, a1 as KodaXProviderPolicyHints, a2 as KodaXRepoIntelligenceCapability, a3 as KodaXRepoIntelligenceMode, a4 as KodaXRepoIntelligenceResolvedMode, a5 as KodaXRepoIntelligenceTrace, a6 as KodaXRepoIntelligenceTraceEvent, a7 as KodaXRepoRoutingSignals, a8 as KodaXResult, a9 as KodaXRoleRoundSummary, aa as KodaXRuntimeVerificationContract, ab as KodaXSessionOptions, ac as KodaXSkillInvocationContext, ad as KodaXSkillMap, ae as KodaXSkillProjectionConfidence, af as KodaXTaskCapabilityHint, ag as KodaXTaskContract, ah as KodaXTaskEvidenceArtifact, ai as KodaXTaskEvidenceBundle, aj as KodaXTaskEvidenceEntry, ak as KodaXTaskRole, al as KodaXTaskRoleAssignment, am as KodaXTaskStatus, an as KodaXTaskSurface, ao as KodaXTaskToolPolicy, ap as KodaXTaskVerificationContract, aq as KodaXTaskVerificationCriterion, ar as KodaXTaskWorkItem, as as KodaXToolExecutionContext, at as KodaXVerificationScorecard, au as KodaXVerificationScorecardCriterion, av as LoadAgentsOptions, aw as LoadedRulesSource, ax as McpConnectMode, ay as McpServerConfig, az as McpServersConfig, aA as McpTransportKind, aB as ProviderExecutionState, aC as ProviderRecoveryEvent, aD as ProviderResilienceConfig, aE as ProviderResiliencePolicy, aF as RecoveryAction, aG as RecoveryDecision, aH as RecoveryLadderStep, aI as RecoveryResult, aJ as ResilienceClassification, aK as ResilienceErrorClass, aL as RulesLoadError, aM as RulesLoadResult, aN as SignalCollector, aO as SkippedRulesSource, aP as TodoItem, aQ as TodoList, aR as TodoStatus, aS as ToolCallSignal, aT as TrustState, b9 as autoModeDenialShouldFallback, ba as breakerShouldFallback, aV as collectAllSignals, aW as computeRulesFingerprint, a_ as createAutoModeDenialTracker, aX as createAutoModeToolGuardrail, aY as createBashPrefixExtractor, aZ as createCircuitBreaker, a$ as extractCommandPrefix, b0 as formatAgentsForPrompt, b1 as getKodaxGlobalDir, b2 as loadAgentsFiles, b3 as loadAutoRules, b4 as parseAutoRules, b5 as readTrustState, b6 as recordAutoModeAllow, b7 as recordAutoModeBlock, b8 as recordBreakerError, bb as trustProjectRules } from './types-chunks/bash-prefix-extractor.d-B2iliwdi.js';
6
- export { AbsoluteDenyMatch, AbsoluteDenyMiss, AbsoluteDenyResult, AgentArtifact, ArtifactStatus, AstCheckResult, AstRuleId, AstRuleViolation, AuditEntry, AuditEventKind, BashClassificationResult, BashClassifierConfig, BashRiskLevel, BudgetState, BuildClassifierPromptInput, BuildPromptInput, CANCELLED_TOOL_RESULT_MESSAGE, CANCELLED_TOOL_RESULT_PREFIX, CODING_AGENTS, CODING_AGENT_MARKER, CODING_INVARIANTS, CODING_SUMMARY_PROMPT, CODING_UPDATE_SUMMARY_PROMPT, Capabilities, CapabilityDeniedError, ChangedFileEntry, ChangedFileStatus, ChangedScopeAreaSummary, ChangedScopeReport, ClassifierDecision, ClassifierPrompt, ClassifyDecision, ClassifyOptions, Client, ConstructionArtifact, ConstructionManifestError, ConstructionPolicy, ConstructionPolicyVerdict, CreateCtxProxyOptions, CreateKodaXTaskRunnerOptions, DEFAULT_CODING_AGENT_NAME, DEFAULT_DANGEROUS_PATTERNS, DEFAULT_HANDLER_TIMEOUT_MS, DEFAULT_RESILIENCE_CONFIG, DEFAULT_SAFE_PATTERNS, DEFAULT_SELF_MODIFY_BUDGET, DEFAULT_SPECULATIVE_WINDOW_MS, DEFAULT_TOOL_OUTPUT_MAX_BYTES, DEFAULT_TOOL_OUTPUT_MAX_LINES, DenialRecord, DenialTracker, DisableState, EMIT_CONTRACT_TOOL_NAME, EMIT_HANDOFF_TOOL_NAME, EMIT_SCOUT_VERDICT_TOOL_NAME, EMIT_VERDICT_TOOL_NAME, EVALUATOR_AGENT_NAME, EditRecoveryDiagnostic, EditToolErrorCode, ErrorCategory, ErrorClassification, ExecOptions, ExecResult, ExtensionCommandContext, ExtensionCommandDefinition, ExtensionCommandInvocation, ExtensionCommandResult, ExtensionContributionSource, ExtensionEventMap, ExtensionFailureDiagnostic, ExtensionFailureStage, ExtensionHookMap, ExtensionLoadSource, ExtensionLogger, ExtensionRuntimeController, ExtensionRuntimeDiagnostics, ExtensionToolBeforeHookContext, GENERATOR_AGENT_NAME, ImpactEstimateResult, KODAX_TOOLS, KodaXAgentWorkerSpec, Client as KodaXClient, KodaXExtensionAPI, KodaXExtensionActivationResult, KodaXExtensionModule, KodaXExtensionRuntime, KodaXPromptSection, KodaXPromptSectionDefinition, KodaXPromptSectionSlot, KodaXPromptSectionStability, KodaXPromptSnapshot, KodaXPromptSnapshotMetadata, KodaXProviderCapabilitySnapshot, KodaXProviderPolicyDecision, KodaXProviderPolicyIssue, KodaXProviderPolicyIssueSeverity, KodaXProviderSourceKind, KodaXRetrievalArtifact, KodaXRetrievalFreshness, KodaXRetrievalItem, KodaXRetrievalResult, KodaXRetrievalScope, KodaXRetrievalToolName, KodaXRetrievalTrust, KodaXSessionError, KodaXTerminalError, KodaXToolError, LINEAGE_ENTRY_TYPES, LanguageCapabilityTier, LineageArtifactLedgerPayload, LineageCompaction, LineageCompactionDelegates, LineageEntryType, LineageExtension, LineageLabelPayload, LineageTreeNode, LlmReviewClient, LlmReviewResult, LlmReviewVerdict, LoadHandlerOptions, LoadHandlerScope, LoadedExtensionDiagnostic, LocalToolDefinition, McpCapabilityDescriptor, McpCapabilityKind, McpCapabilityProvider, McpCapabilityRisk, McpCatalogItem, McpProviderOptions, McpServerCatalogSnapshot, McpServerRuntime, McpServerRuntimeDiagnostics, McpTransport, McpTransportEvents, ModelProviderRegistration, ModuleCapsule, ModuleContextResult, OfficialSandboxMode, OfficialSandboxOptions, OrchestrationArtifact, OrchestrationCompletedTask, OrchestrationRunEvents, OrchestrationRunOptions, OrchestrationRunResult, OrchestrationTaskBudget, OrchestrationTaskContext, OrchestrationTaskExecution, OrchestrationTaskStatus, OrchestrationTraceEvent, OrchestrationWorkerResult, OrchestrationWorkerRunner, OrchestrationWorkerSpec, PLANNER_AGENT_NAME, PROMPT_SECTION_REGISTRY, PROTOCOL_EMITTER_TOOLS, ParallelDispatchDirective, ParallelDispatchResult, ParallelSubtask, ParsedModelSpec, ProcessCapsule, ProcessContextResult, ProcessStep, ProtocolEmitterMetadata, ProviderRecoveryCoordinator, READ_DEFAULT_LIMIT, READ_MAX_LINE_CHARS, READ_PREFLIGHT_SIZE_BYTES, REPOINTEL_DEFAULT_ENDPOINT, RegisteredCapabilityProviderDiagnostic, RegisteredCommandDiagnostic, RegisteredHookDiagnostic, RegisteredToolDefinition, RegisteredToolDiagnostic, RepoAreaKind, RepoAreaOverview, RepoIntelligenceIndex, RepoIntelligenceRuntimeInspection, RepoIntelligenceRuntimeWarmResult, RepoLanguageId, RepoLanguageSupport, RepoOverview, RepoSymbolKind, RepoSymbolRecord, RepoSymbolReference, ResolveClassifierModelOptions, ResolveSource, ResolvedClassifierModel, RollbackResult, SCOUT_AGENT_NAME, SYSTEM_PROMPT, SchemaProvider, SchemaValidationResult, ScriptSource, SelfModifyAskUser, SelfModifyAskUserInput, SelfModifyDiffSeverity, SelfModifyDiffSummary, SpeculativeResult, StableBoundaryTracker, StagedHandle, StripOptions, SymbolContextResult, TASK_ENGINE_ROLE_AGENTS, TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME, TestArtifactOptions, TestResult, TierZeroPatternId, ToolContent, ToolDefinitionSource, ToolHandler, ToolRegistrationOptions, ToolRegistry, WebhookOptions, WebhookResult, _resetRuntimeForTesting, activate, analyzeChangedScope, appendAuditEntry, appendSessionLineageLabel, applyFanoutBranchTransition, applySessionCompaction, applyToolResultGuardrail, archiveOldIslands, assignFanoutBranchWorker, bashSignalCollector, boundedRevise, budgetCeiling, buildAmaControllerDecision, buildCapabilityContextSections, buildClassifierPrompt, buildFallbackRoutingDecision, buildFanoutSchedulerPlan, buildLlmReviewPrompt, buildPromptMessageContent, buildPromptOverlay, buildPromptSnapshot, buildProviderCapabilitySnapshot, buildProviderPolicyHintsForDecision, buildProviderPolicyPromptNotes, buildRepoIntelligenceContext, buildRepoIntelligenceIndex, buildRepoOverview, buildSessionTree, buildSystemPrompt, buildSystemPromptSnapshot, checkAbsoluteDeny, checkIncompleteToolCalls, checkPromiseSignal, classify, classifyBashCommand, classifyError, classifyResilienceError, computeInputSignature, configureRuntime, convertCapabilityReadResult, convertProviderSearchResults, countActiveFanoutBranches, countActiveLineageMessages, createBashClassifierConfig, createBuiltinToolDefinition, createCtxProxy, createDefaultCodingAgent, createDenialTracker, createExtensionRuntime, createFanoutSchedulerInput, createKodaXTaskRunner, createMcpCapabilityId, createMcpTransport, createPromptSection, createReasoningPlan, createSessionLineage, createToolResultTruncationGuardrail, defaultMcpCacheDir, defaultPolicy, disableSelfModify, drainPendingSwaps, emitContract, emitHandoff, emitScoutVerdict, emitVerdict, evaluateProviderPolicy, evaluatorAgent, evaluatorCodingAgent, exec, executeTool, extractArtifactLedger, extractComparableUserMessageText, extractHtmlTitle, extractPromptComparableText, extractTitleFromMessages, fileSignalCollector, finalizeRetrievalResult, findByVersion, findPreviousUserEntryId, forkSessionLineage, formatParallelDispatchResult, formatSize, generateSessionId, generatorAgent, generatorCodingAgent, getActiveExtensionRuntime, getBuiltinRegisteredToolDefinition, getBuiltinToolDefinition, getDenialContext, getFanoutBranch, getImpactEstimate, getMcpCachePaths, getModuleContext, getProcessContext, getRegisteredToolDefinition, getRepoIntelligenceIndex, getRepoOverview, getRepoRoutingSignals, getRequiredToolParams, getSessionLineagePath, getSessionMessagesFromLineage, getSymbolContext, getTool, getToolDefinition, getToolRegistrations, getToolResultPolicy, hasPendingSwap, independentReview, inferTaskType, inspectEditFailure, inspectRepoIntelligenceRuntime, isDeniedRecently, isParallelDispatchDirective, listAll, listArtifacts, listBuiltinToolDefinitions, listConstructed, listToolDefinitions, listTools, loadHandler, markFanoutBranchCancelled, markFanoutBranchCompleted, mergeArtifactLedger, orderPromptSections, parseClassifierOutput, parseEditToolError, parseLlmReviewVerdict, parseMcpCapabilityId, parseModelSpec, persistToolOutput, plannerAgent, plannerCodingAgent, prewarmRepoIntelligenceCaches, readArtifact, readAuditEntries, readBudget, readDisableState, readSpeculativeWindowFromEnv, reasoningModeToDepth, reconstructMessagesWithToolGuard, recordDenial, registerCodingInvariants, registerConfiguredMcpCapabilityProvider, registerOfficialSandboxExtension, registerTool, rehydrateActiveArtifacts, remainingSelfModifyBudget, renderChangedScope, renderImpactEstimate, renderModuleContext, renderProcessContext, renderPromptSections, renderRepoOverview, renderRetrievalResult, renderSymbolContext, resetBudget, resolveClassifierModel, resolveConstructedAgent, resolveReasoningMode, resolveRepoIntelligenceMode, resolveRepoIntelligenceRuntimeConfig, resolveResilienceConfig, resolveSessionLineageTarget, resolveToolCapability, revoke, rewindSessionLineage, rollbackSelfModify, runAstRules, runKodaX, runLlmReview, runManagedTask, runOrchestration, scoutAgent, scoutCodingAgent, searchMcpCatalog, setActiveExtensionRuntime, setSessionLineageActiveEntry, speculativeRace, stage, stripAssistantText, stripHtmlToText, testArtifact, toolAskUserQuestion, toolBash, toolChangedDiff, toolChangedScope, toolCodeSearch, toolEdit, toolGlob, toolGrep, toolImpactEstimate, toolInsertAfterAnchor, toolModuleContext, toolPermission, toolProcessContext, toolRead, toolRepoOverview, toolSemanticLookup, toolSymbolContext, toolUndo, toolWebFetch, toolWebSearch, toolWrite, truncateHead, truncateLine, truncateTail, validateSubtaskIndependence, validateToolSchemaForProvider, warmRepoIntelligenceRuntime, webhook } from './sdk-coding.js';
7
- export { A as Agent, a as AgentMessage, c as AgentReasoningProfile, d as AgentTool, G as Guardrail, H as Handoff, K as KodaXCompactMemoryProgress, l as KodaXCompactMemorySeed, m as KodaXExtensionSessionRecord, n as KodaXExtensionSessionState, q as KodaXJsonValue, s as KodaXSessionArtifactLedgerEntry, t as KodaXSessionBranchSummaryEntry, u as KodaXSessionCompactionEntry, v as KodaXSessionData, w as KodaXSessionEntry, x as KodaXSessionEntryBase, y as KodaXSessionLabelEntry, z as KodaXSessionLineage, B as KodaXSessionMessageEntry, E as KodaXSessionMeta, F as KodaXSessionNavigationOptions, J as KodaXSessionRuntimeInfo, L as KodaXSessionScope, M as KodaXSessionStorage, N as KodaXSessionTreeNode, O as KodaXSessionUiHistoryItem, P as KodaXSessionUiHistoryItemType, Q as KodaXSessionWorkspaceKind, U as ReasoningDepth, a3 as SessionErrorMetadata, ai as createAgent, aj as createHandoff } from './types-chunks/instance-discovery.d-DZhp77vb.js';
8
- export { C as CompactionContext, e as CompactionEntry, f as CompactionEntryPayload, g as CompactionPolicy, h as DefaultSummaryCompaction, i as DefaultSummaryCompactionOptions, I as InMemorySessionOptions, K as KODAX_API_MIN_INTERVAL, n as KODAX_DEFAULT_TIMEOUT, o as KODAX_HARD_TIMEOUT, p as KODAX_MAX_INCOMPLETE_RETRIES, r as KODAX_MAX_RETRIES, s as KODAX_MAX_TOKENS, t as KODAX_RETRY_BASE_DELAY, u as KODAX_STAGGER_DELAY, v as MessageEntry, P as PROMISE_PATTERN, x as PresetDispatcher, B as RunEvent, E as RunOptions, F as RunResult, G as Runner, S as Session, L as SessionEntry, N as SessionExtension, T as SessionForkOptions, $ as cleanupIncompleteToolCalls, a0 as countTokens, a1 as createInMemorySession, a4 as estimateTokens, a7 as registerPresetDispatcher, aa as validateAndFixToolHistory } from './types-chunks/history-cleanup.d-q1vAvCss.js';
1
+ import { D as KodaXReasoningMode } from './types-chunks/types.d-B1uGoVTE.js';
2
+ export { K as KodaXAmaControllerDecision, a as KodaXAmaFanoutClass, b as KodaXAmaFanoutPolicy, c as KodaXAmaProfile, d as KodaXAmaTactic, g as KodaXContentBlock, h as KodaXCustomProviderConfig, i as KodaXExecutionMode, l as KodaXImageBlock, m as KodaXMessage, n as KodaXModelDescriptor, p as KodaXProtocolFamily, q as KodaXProviderCapabilityProfile, r as KodaXProviderConfig, t as KodaXProviderConversationSemantics, w as KodaXProviderMcpSupport, z as KodaXProviderStreamOptions, B as KodaXProviderTransport, C as KodaXReasoningCapability, E as KodaXReasoningOverride, F as KodaXReasoningRequest, G as KodaXRedactedThinkingBlock, H as KodaXReviewScale, I as KodaXRiskLevel, J as KodaXStreamResult, M as KodaXTaskBudgetOverrides, P as KodaXTaskRoutingDecision, Q as KodaXTaskType, S as KodaXTextBlock, T as KodaXThinkingBlock, U as KodaXThinkingBudgetMap, V as KodaXThinkingDepth, W as KodaXTokenUsage, X as KodaXToolDefinition, Y as KodaXToolResultBlock, a0 as KodaXToolUseBlock } from './types-chunks/types.d-B1uGoVTE.js';
3
+ export { K as KODAX_DEFAULT_PROVIDER, b as KODAX_PROVIDERS, c as KODAX_PROVIDER_SNAPSHOTS, d as KODAX_REASONING_MODE_SEQUENCE, f as KodaXAnthropicCompatProvider, g as KodaXError, h as KodaXModelCapabilities, j as KodaXOpenAICompatProvider, k as KodaXProviderError, l as KodaXRateLimitError, P as ProviderName, n as buildReasoningOverrideKey, p as clearReasoningOverride, q as clearRuntimeModelProviders, r as createCustomProvider, s as getAvailableProviderNames, t as getCustomModelCapabilities, u as getCustomProvider, v as getCustomProviderList, w as getCustomProviderModelDescriptors, x as getCustomProviderModels, y as getCustomProviderNames, A as getModelCapabilities, B as getProvider, C as getProviderConfiguredCapabilityProfile, D as getProviderConfiguredReasoningCapability, G as getProviderModelDescriptors, H as getProviderModels, J as getRuntimeModelProvider, L as getRuntimeModelProviderNames, M as isCustomProviderName, N as isKnownProvider, Q as isProviderName, S as isRuntimeModelProviderName, T as listAllModelCapabilities, U as listBuiltinModelCapabilities, V as listCustomProviderModelCapabilities, W as loadReasoningOverride, Z as reasoningCapabilityToOverride, _ as reasoningOverrideToCapability, $ as registerCustomProviders, a0 as registerModelProvider, a1 as resolveModelCapabilities, a2 as resolveProvider, a3 as resolveProviderModelDescriptors, a5 as saveReasoningOverride, a6 as validateCustomProviderConfig } from './types-chunks/resolver.d-CA68_NeH.js';
4
+ export { K as KodaXBaseProvider } from './types-chunks/base.d-FUJahC0i.js';
5
+ export { C as CapabilityKind, a as CapabilityProvider, b as CapabilityResult } from './types-chunks/capability.d-3C62G8Eq.js';
6
+ export { C as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD, n as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD, A as AgentsFile, a as AskUserMultiOptions, b as AskUserQuestionItem, c as AskUserQuestionOptions, d as AutoModeAskUser, e as AutoModeAskUserVerdict, D as AutoModeDenialTracker, f as AutoModeEngine, g as AutoModeGuardrailConfig, h as AutoModeSharedState, i as AutoModeStats, j as AutoModeToolGuardrail, k as AutoRules, B as BASH_POLICY_SPEC, E as BREAKER_ERROR_THRESHOLD, aO as BREAKER_WINDOW_MS, l as BashPrefixExtractor, m as BashPrefixResult, o as CircuitBreaker, p as CreateBashPrefixExtractorOptions, r as ExtractCommandPrefixOptions, F as FailureStage, K as KodaXAgentMode, s as KodaXBudgetDisclosureZone, t as KodaXBudgetExtensionRequest, u as KodaXChildAgentResult, v as KodaXChildContextBundle, w as KodaXContextOptions, x as KodaXContextTokenSnapshot, y as KodaXEvents, z as KodaXFanoutBranchLifecycle, G as KodaXFanoutBranchRecord, H as KodaXFanoutBranchTransition, I as KodaXFanoutSchedulerInput, J as KodaXFanoutSchedulerPlan, L as KodaXInputArtifact, M as KodaXManagedBudgetSnapshot, O as KodaXManagedTask, P as KodaXManagedTaskRuntimeState, Q as KodaXManagedTaskStatusEvent, R as KodaXMcpConnectMode, S as KodaXMcpServerConfig, T as KodaXMcpServersConfig, U as KodaXMcpTransport, V as KodaXMemoryStrategy, W as KodaXOptions, X as KodaXOrchestrationVerdict, Y as KodaXParentReductionContract, Z as KodaXProviderPolicyHints, _ as KodaXRepoIntelligenceCapability, $ as KodaXRepoIntelligenceMode, a0 as KodaXRepoIntelligenceResolvedMode, a1 as KodaXRepoIntelligenceTrace, a2 as KodaXRepoIntelligenceTraceEvent, a3 as KodaXRepoRoutingSignals, a4 as KodaXResult, a5 as KodaXRoleRoundSummary, a6 as KodaXRuntimeVerificationContract, a7 as KodaXSessionControl, a8 as KodaXSessionMutators, a9 as KodaXSessionOptions, aa as KodaXSkillInvocationContext, ab as KodaXSkillMap, ac as KodaXSkillProjectionConfidence, ad as KodaXTaskCapabilityHint, ae as KodaXTaskContract, af as KodaXTaskEvidenceArtifact, ag as KodaXTaskEvidenceBundle, ah as KodaXTaskEvidenceEntry, ai as KodaXTaskRole, aj as KodaXTaskRoleAssignment, ak as KodaXTaskStatus, al as KodaXTaskSurface, am as KodaXTaskToolPolicy, an as KodaXTaskVerificationContract, ao as KodaXTaskVerificationCriterion, ap as KodaXTaskWorkItem, aq as KodaXToolExecutionContext, ar as KodaXVerificationScorecard, as as KodaXVerificationScorecardCriterion, at as LoadAgentsOptions, au as LoadedRulesSource, av as ProviderExecutionState, aw as ProviderRecoveryEvent, ax as ProviderResilienceConfig, ay as ProviderResiliencePolicy, az as RecoveryAction, aA as RecoveryDecision, aB as RecoveryLadderStep, aC as RecoveryResult, aD as ResilienceClassification, aE as ResilienceErrorClass, aF as RulesLoadError, aG as RulesLoadResult, aH as SignalCollector, aI as SkippedRulesSource, aJ as TodoItem, aK as TodoList, aL as TodoStatus, aM as ToolCallSignal, aN as TrustState, b3 as autoModeDenialShouldFallback, b4 as breakerShouldFallback, aP as collectAllSignals, aQ as computeRulesFingerprint, aU as createAutoModeDenialTracker, aR as createAutoModeToolGuardrail, aS as createBashPrefixExtractor, aT as createCircuitBreaker, aV as extractCommandPrefix, aW as formatAgentsForPrompt, aX as getKodaxGlobalDir, aY as loadAgentsFiles, aZ as loadAutoRules, a_ as parseAutoRules, a$ as readTrustState, b0 as recordAutoModeAllow, b1 as recordAutoModeBlock, b2 as recordBreakerError, b5 as trustProjectRules } from './types-chunks/bash-prefix-extractor.d-DMrGImMl.js';
7
+ export { AbsoluteDenyMatch, AbsoluteDenyMiss, AbsoluteDenyResult, AgentArtifact, ArtifactStatus, AstCheckResult, AstRuleId, AstRuleViolation, AuditEntry, AuditEventKind, BashClassificationResult, BashClassifierConfig, BashRiskLevel, BudgetState, BuildClassifierPromptInput, BuildPromptInput, CANCELLED_TOOL_RESULT_MESSAGE, CANCELLED_TOOL_RESULT_PREFIX, CODING_AGENT_MARKER, CODING_INVARIANTS, CODING_SUMMARY_PROMPT, CODING_UPDATE_SUMMARY_PROMPT, Capabilities, CapabilityDeniedError, ChangedFileEntry, ChangedFileStatus, ChangedScopeAreaSummary, ChangedScopeReport, ClassifierDecision, ClassifierPrompt, ClassifyDecision, ClassifyOptions, Client, ConstructionArtifact, ConstructionManifestError, ConstructionPolicy, ConstructionPolicyVerdict, CreateCtxProxyOptions, CreateKodaXTaskRunnerOptions, DEFAULT_CODING_AGENT_NAME, DEFAULT_DANGEROUS_PATTERNS, DEFAULT_HANDLER_TIMEOUT_MS, DEFAULT_RESILIENCE_CONFIG, DEFAULT_SAFE_PATTERNS, DEFAULT_SELF_MODIFY_BUDGET, DEFAULT_SPECULATIVE_WINDOW_MS, DEFAULT_TOOL_OUTPUT_MAX_BYTES, DEFAULT_TOOL_OUTPUT_MAX_LINES, DenialRecord, DenialTracker, DisableState, DiscoverMarkdownAgentsResult, DiscoveredMarkdownAgent, EMIT_VERDICT_TOOL_NAME, EditRecoveryDiagnostic, EditToolErrorCode, ErrorCategory, ErrorClassification, ExecOptions, ExecResult, ExtensionCommandContext, ExtensionCommandDefinition, ExtensionCommandInvocation, ExtensionCommandResult, ExtensionContributionSource, ExtensionEventMap, ExtensionFailureDiagnostic, ExtensionFailureStage, ExtensionHookMap, ExtensionLoadSource, ExtensionLogger, ExtensionRuntimeController, ExtensionRuntimeDiagnostics, ExtensionToolBeforeHookContext, GENERATOR_AGENT_NAME, ImpactEstimateResult, KODAX_TOOLS, KodaXAgentWorkerSpec, Client as KodaXClient, KodaXExtensionAPI, KodaXExtensionActivationResult, KodaXExtensionModule, KodaXExtensionRuntime, KodaXPromptSection, KodaXPromptSectionDefinition, KodaXPromptSectionSlot, KodaXPromptSectionStability, KodaXPromptSnapshot, KodaXPromptSnapshotMetadata, KodaXProviderCapabilitySnapshot, KodaXProviderPolicyDecision, KodaXProviderPolicyIssue, KodaXProviderPolicyIssueSeverity, KodaXProviderSourceKind, KodaXRetrievalArtifact, KodaXRetrievalFreshness, KodaXRetrievalItem, KodaXRetrievalResult, KodaXRetrievalScope, KodaXRetrievalToolName, KodaXRetrievalTrust, KodaXSessionError, KodaXTerminalError, KodaXToolError, LanguageCapabilityTier, LlmReviewClient, LlmReviewResult, LlmReviewVerdict, LoadAgentsFromMarkdownOptions, LoadAgentsFromMarkdownResult, LoadHandlerOptions, LoadHandlerScope, LoadedExtensionDiagnostic, LocalToolDefinition, MarkdownLoadFailure, ModelProviderRegistration, ModuleCapsule, ModuleContextResult, OfficialSandboxMode, OfficialSandboxOptions, OrchestrationArtifact, OrchestrationCompletedTask, OrchestrationRunEvents, OrchestrationRunOptions, OrchestrationRunResult, OrchestrationTaskBudget, OrchestrationTaskContext, OrchestrationTaskExecution, OrchestrationTaskStatus, OrchestrationTraceEvent, OrchestrationWorkerResult, OrchestrationWorkerRunner, OrchestrationWorkerSpec, PLANNER_AGENT_NAME, PROMPT_SECTION_REGISTRY, PROTOCOL_EMITTER_TOOLS, ParallelDispatchDirective, ParallelDispatchResult, ParallelSubtask, ParsedModelSpec, ProcessCapsule, ProcessContextResult, ProcessStep, ProtocolEmitterMetadata, ProviderRecoveryCoordinator, READ_DEFAULT_LIMIT, READ_MAX_LINE_CHARS, READ_PREFLIGHT_SIZE_BYTES, REPOINTEL_DEFAULT_ENDPOINT, RegisteredCapabilityProviderDiagnostic, RegisteredCommandDiagnostic, RegisteredHookDiagnostic, RegisteredToolDefinition, RegisteredToolDiagnostic, RepoAreaKind, RepoAreaOverview, RepoIntelligenceIndex, RepoIntelligenceRuntimeInspection, RepoIntelligenceRuntimeWarmResult, RepoLanguageId, RepoLanguageSupport, RepoOverview, RepoSymbolKind, RepoSymbolRecord, RepoSymbolReference, ResolveClassifierModelOptions, ResolveSource, ResolvedClassifierModel, RollbackResult, RunningSession, SCOUT_AGENT_NAME, SYSTEM_PROMPT, SchemaProvider, SchemaValidationResult, ScriptSource, SelfModifyAskUser, SelfModifyAskUserInput, SelfModifyDiffSeverity, SelfModifyDiffSummary, SpeculativeResult, StableBoundaryTracker, StagedHandle, StripOptions, SymbolContextResult, TASK_ENGINE_ROLE_AGENTS, TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME, TestArtifactOptions, TestResult, TierZeroPatternId, ToolContent, ToolDefinitionSource, ToolHandler, ToolRegistrationOptions, ToolRegistry, ToolSideEffect, WORKER_AGENT_NAME, WebhookOptions, WebhookResult, _resetRuntimeForTesting, activate, analyzeChangedScope, appendAuditEntry, applyFanoutBranchTransition, applyToolResultGuardrail, assignFanoutBranchWorker, bashSignalCollector, boundedRevise, budgetCeiling, buildAmaControllerDecision, buildCapabilityContextSections, buildClassifierPrompt, buildFallbackRoutingDecision, buildFanoutSchedulerPlan, buildLlmReviewPrompt, buildPromptMessageContent, buildPromptOverlay, buildPromptSnapshot, buildProviderCapabilitySnapshot, buildProviderPolicyHintsForDecision, buildProviderPolicyPromptNotes, buildRepoIntelligenceContext, buildRepoIntelligenceIndex, buildRepoOverview, buildSystemPrompt, buildSystemPromptSnapshot, checkAbsoluteDeny, checkIncompleteToolCalls, checkPromiseSignal, classify, classifyBashCommand, classifyError, classifyResilienceError, computeInputSignature, configureRuntime, convertCapabilityReadResult, convertProviderSearchResults, countActiveFanoutBranches, createBashClassifierConfig, createBuiltinToolDefinition, createCtxProxy, createDefaultCodingAgent, createDenialTracker, createExtensionRuntime, createFanoutSchedulerInput, createKodaXTaskRunner, createPromptSection, createReasoningPlan, createSessionControl, createToolResultTruncationGuardrail, defaultPolicy, disableSelfModify, discoverMarkdownAgents, drainPendingSwaps, emitVerdict, evaluateProviderPolicy, exec, executeTool, extractComparableUserMessageText, extractHtmlTitle, extractPromptComparableText, fileSignalCollector, finalizeRetrievalResult, findByVersion, formatParallelDispatchResult, formatSize, getActiveExtensionRuntime, getAllRegisteredTools, getBuiltinRegisteredToolDefinition, getBuiltinToolDefinition, getDenialContext, getFanoutBranch, getImpactEstimate, getModuleContext, getProcessContext, getRegisteredToolDefinition, getRepoIntelligenceIndex, getRepoOverview, getRepoRoutingSignals, getRequiredToolParams, getSymbolContext, getTool, getToolDefinition, getToolRegistrations, getToolResultPolicy, hasPendingSwap, inferTaskType, inspectEditFailure, inspectRepoIntelligenceRuntime, isDeniedRecently, isParallelDispatchDirective, isToolFileMutation, isToolMutation, isToolPlanModeAllowed, listAll, listArtifacts, listBuiltinToolDefinitions, listConstructed, listToolDefinitions, listTools, loadAgentsFromMarkdown, loadHandler, markFanoutBranchCancelled, markFanoutBranchCompleted, orderPromptSections, parseClassifierOutput, parseEditToolError, parseLlmReviewVerdict, parseModelSpec, persistToolOutput, prewarmRepoIntelligenceCaches, readArtifact, readAuditEntries, readBudget, readDisableState, readSpeculativeWindowFromEnv, reasoningModeToDepth, reconstructMessagesWithToolGuard, recordDenial, registerCodingInvariants, registerConfiguredMcpCapabilityProvider, registerOfficialSandboxExtension, registerTool, rehydrateActiveArtifacts, remainingSelfModifyBudget, renderChangedScope, renderImpactEstimate, renderModuleContext, renderProcessContext, renderPromptSections, renderRepoOverview, renderRetrievalResult, renderSymbolContext, resetBudget, resolveClassifierModel, resolveConstructedAgent, resolveReasoningMode, resolveRepoIntelligenceMode, resolveRepoIntelligenceRuntimeConfig, resolveResilienceConfig, resolveToolCapability, revoke, rollbackSelfModify, runAstRules, runKodaX, runLlmReview, runManagedTask, runOrchestration, setActiveExtensionRuntime, speculativeRace, stage, startKodaX, stripAssistantText, stripHtmlToText, testArtifact, toolAskUserQuestion, toolBash, toolChangedDiff, toolChangedScope, toolCodeSearch, toolEdit, toolGlob, toolGrep, toolImpactEstimate, toolInsertAfterAnchor, toolModuleContext, toolPermission, toolProcessContext, toolRead, toolRepoOverview, toolSemanticLookup, toolSymbolContext, toolUndo, toolWebFetch, toolWebSearch, toolWrite, truncateHead, truncateLine, truncateTail, validateSubtaskIndependence, validateToolSchemaForProvider, warmRepoIntelligenceRuntime, webhook, workerAgent } from './sdk-coding.js';
8
+ export { K as KodaXCompactMemoryProgress, a as KodaXCompactMemorySeed, b as KodaXExtensionSessionRecord, c as KodaXExtensionSessionState, f as KodaXJsonValue, h as KodaXSessionArtifactLedgerEntry, i as KodaXSessionBranchSummaryEntry, j as KodaXSessionCompactionEntry, k as KodaXSessionData, l as KodaXSessionEntry, m as KodaXSessionEntryBase, n as KodaXSessionLabelEntry, o as KodaXSessionLineage, p as KodaXSessionMessageEntry, q as KodaXSessionMeta, r as KodaXSessionNavigationOptions, s as KodaXSessionRuntimeInfo, t as KodaXSessionScope, u as KodaXSessionStorage, v as KodaXSessionTreeNode, w as KodaXSessionUiHistoryItem, x as KodaXSessionUiHistoryItemType, y as KodaXSessionWorkspaceKind, S as SessionErrorMetadata } from './types-chunks/types.d-mM8vqvhT.js';
9
+ export { C as CompactionContext, e as CompactionEntry, f as CompactionEntryPayload, g as CompactionPolicy, h as DefaultSummaryCompaction, i as DefaultSummaryCompactionOptions, I as InMemorySessionOptions, K as KODAX_API_MIN_INTERVAL, n as KODAX_DEFAULT_TIMEOUT, o as KODAX_HARD_TIMEOUT, p as KODAX_MAX_INCOMPLETE_RETRIES, r as KODAX_MAX_RETRIES, s as KODAX_MAX_TOKENS, t as KODAX_RETRY_BASE_DELAY, u as KODAX_STAGGER_DELAY, L as LINEAGE_ENTRY_TYPES, v as LineageArtifactLedgerPayload, w as LineageCompaction, x as LineageCompactionDelegates, y as LineageEntryType, z as LineageExtension, B as LineageLabelPayload, E as LineageTreeNode, F as MessageEntry, P as PROMISE_PATTERN, H as PresetDispatcher, S as RunEvent, T as RunOptions, U as RunResult, V as Runner, X as Session, Z as SessionEntry, _ as SessionExtension, $ as SessionForkOptions, ae as appendSessionLineageLabel, ag as applySessionCompaction, ah as archiveOldIslands, ai as buildSessionTree, ak as cleanupIncompleteToolCalls, al as countActiveLineageMessages, am as countTokens, an as createInMemorySession, ap as createSessionLineage, at as estimateTokens, au as extractArtifactLedger, ax as extractTitleFromMessages, ay as findPreviousUserEntryId, az as forkSessionLineage, aA as generateSessionId, aC as getAgentConfigHome, aD as getAgentConfigPath, aE as getAppDataDir, aF as getSessionLineagePath, aG as getSessionMessagesFromLineage, aH as mergeArtifactLedger, aJ as registerPresetDispatcher, aK as resolveSessionLineageTarget, aL as rewindSessionLineage, aO as setAgentConfigHome, aP as setSessionLineageActiveEntry, aQ as validateAndFixToolHistory } from './types-chunks/file-tracker.d-zaLZeNBK.js';
10
+ export { A as Agent, a as AgentMessage, c as AgentReasoningProfile, e as AgentTool, f as CompactionAnchor, i as CompactionResult, k as CompactionUpdate, o as Guardrail, H as Handoff, R as ReasoningDepth, a8 as createAgent, a9 as createHandoff } from './types-chunks/types.d-CKJtjo-6.js';
11
+ export { M as McpConnectMode, a as McpServerConfig, b as McpServersConfig, c as McpTransportKind } from './types-chunks/config.d-BfJUXxC0.js';
12
+ export { M as McpCapabilityDescriptor, a as McpCapabilityKind, b as McpCapabilityProvider, c as McpCapabilityRisk, d as McpCatalogItem, e as McpManager, f as McpProviderOptions, g as McpServerCatalog, h as McpServerCatalogSnapshot, i as McpServerLogs, j as McpServerRuntime, k as McpServerRuntimeDiagnostics, l as McpServerStatus, m as McpServerToolList, n as McpTransport, o as McpTransportEvents, p as createMcpCapabilityId, q as createMcpManager, r as createMcpTransport, s as defaultMcpCacheDir, t as getMcpCachePaths, u as parseMcpCapabilityId, v as searchMcpCatalog } from './types-chunks/manager.d-87belpiS.js';
9
13
  import { Agent, AgentSideConnection, InitializeRequest, InitializeResponse, NewSessionRequest, NewSessionResponse, SetSessionModeRequest, SetSessionModeResponse, PromptRequest, PromptResponse } from '@agentclientprotocol/sdk';
10
- import { F as FileSessionStorage } from './types-chunks/storage.d-Bv9T99Qu.js';
11
- export { B as BUILTIN_COMMANDS, C as Command, a as CommandCallbacks, c as CurrentConfig, I as InkREPLOptions, d as InteractiveContext, K as KODAX_CONFIG_FILE, f as KODAX_DIR, g as KODAX_SESSIONS_DIR, h as KODAX_VERSION, R as RepLOptions, n as createInteractiveContext, p as executeCommand, q as getGitRoot, r as getProviderList, s as getProviderModel, t as getVersion, u as hydrateProcessEnvFromShell, w as isProviderConfigured, x as loadConfig, z as parseCommand, D as prepareRuntimeConfig, E as processSpecialSyntax, G as rateLimitedCall, H as registerConfiguredCustomProviders, J as runInkInteractiveMode, L as runInteractiveMode, N as saveConfig, O as touchContext } from './types-chunks/storage.d-Bv9T99Qu.js';
14
+ import { F as FileSessionStorage } from './types-chunks/storage.d-DPAEX7zS.js';
15
+ export { B as BUILTIN_COMMANDS, C as Command, a as CommandCallbacks, c as CurrentConfig, I as InkREPLOptions, d as InteractiveContext, K as KODAX_CONFIG_FILE, f as KODAX_DIR, g as KODAX_SESSIONS_DIR, h as KODAX_VERSION, R as RepLOptions, m as createInteractiveContext, n as executeCommand, o as getGitRoot, p as getProviderList, q as getProviderModel, r as getVersion, s as hydrateProcessEnvFromShell, u as isProviderConfigured, v as loadConfig, x as parseCommand, z as prepareRuntimeConfig, A as processSpecialSyntax, D as rateLimitedCall, E as registerConfiguredCustomProviders, F as runInkInteractiveMode, G as runInteractiveMode, H as saveConfig, J as touchContext } from './types-chunks/utils.d-DkLZD_wa.js';
12
16
  import '@anthropic-ai/sdk';
13
17
  import 'openai';
18
+ import './types-chunks/cost-tracker.d-wRtyEW9d.js';
14
19
  import 'readline';
15
20
  import 'child_process';
16
21
 
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{Qb as me,Rb as ge,Sb as w,X as x,_ as E,aa as L,ba as T,ca as O,da as q,ea as F,fa as K,ga as D,ka as ae,la as de,ma as le,nb as ce,ob as pe,yb as ue}from"./chunks/chunk-ZPJPNLBK.js";import{D as re,b as W,c as G,d as Q,f as H,h as J,i as Y,j as Z,k as ee,u as te,v as se,w as oe,x as A,y as ne,z as ie}from"./chunks/chunk-5TFLMGER.js";import"./chunks/chunk-6OB4AJOM.js";import"./chunks/chunk-EVIDQWMF.js";import{$ as Ls,$a as Eo,$b as Ln,$c as Ei,$d as xr,A as is,Aa as io,Ab as nn,Ac as ii,Ad as or,B as rs,Ba as ro,Bb as rn,Bc as ri,Bd as nr,C as as,Ca as ao,Cb as an,Cc as ai,Cd as ir,D as ds,Da as lo,Db as dn,Dc as di,Dd as rr,E as ls,Ea as co,Eb as ln,Ec as li,Ed as ar,F as cs,Fa as po,Fb as cn,Fc as M,Fd as dr,G as ps,Ga as uo,Gb as pn,Gc as ci,Gd as lr,H as us,Ha as mo,Hb as un,Hc as pi,Hd as cr,I as ms,Ia as go,Ib as mn,Ic as ui,Id as pr,J as gs,Ja as fo,Jb as gn,Jc as mi,Jd as ur,K as fs,Ka as ho,Kb as fn,Kc as gi,Kd as mr,L as hs,La as vo,Lb as hn,Lc as fi,Ld as gr,M as vs,Ma as yo,Mb as vn,Mc as hi,Md as fr,N as ys,Na as _o,Nb as yn,Nc as vi,Nd as hr,O as _s,Oa as Io,Ob as _n,Oc as yi,Od as vr,P as Is,Pb as In,Pc as _i,Pd as yr,Q as As,Qa as Ao,Qb as An,Qc as Ii,Qd as _r,R as ws,Ra as _,Rb as wn,Rc as Ai,Rd as Ir,S as Ss,Sa as wo,Sb as Sn,Sc as wi,Sd as Ar,T as Cs,Ta as So,Tb as Cn,Tc as Si,Td as wr,U as Ps,Ua as Co,Ub as Pn,Uc as Ci,Ud as Sr,V as bs,Va as Po,Vb as bn,Vc as Pi,Vd as Cr,W as ks,Wa as bo,Wb as kn,Wc as bi,Wd as Pr,X as Ms,Xa as ko,Xb as Mn,Xc as ki,Xd as br,Y as Rs,Ya as Mo,Yb as Rn,Yc as Mi,Yd as kr,Z as xs,Za as Ro,Zb as xn,Zc as Ri,Zd as Mr,_ as Es,_a as xo,_b as En,_c as xi,_d as Rr,a as gt,aa as Ts,ab as Lo,ac as Tn,ad as Li,ae as Er,b as ft,ba as Os,bb as To,bc as On,bd as Ti,be as Lr,c as ht,ca as qs,cb as Oo,cc as qn,cd as Oi,ce as Tr,d as vt,da as Fs,db as qo,dc as Fn,dd as qi,de as Or,e as yt,ea as Ks,eb as Fo,ec as Kn,ed as Fi,ee as qr,f as Dt,fa as Ds,fb as Ko,fc as Dn,fd as Ki,fe as Fr,g as Xt,ga as Xs,gb as Do,gc as Xn,gd as Di,ge as Kr,h as jt,ha as js,hb as Xo,hc as jn,hd as Xi,he as Dr,i as Ut,ia as Us,ib as jo,ic as Un,id as ji,ie as Xr,j as Vt,ja as Vs,jb as Uo,jc as Vn,jd as Ui,je as jr,k as $t,ka as $s,kb as Vo,kc as $n,kd as Vi,ke as Ur,l as zt,la as zs,lb as $o,lc as zn,ld as $i,le as Vr,m as Bt,ma as Bs,mb as zo,mc as Bn,md as zi,me as $r,n as Nt,na as Ns,nb as Bo,nc as Nn,nd as Bi,ne as zr,o as Wt,oa as Ws,ob as No,oc as Wn,od as I,oe as R,p as Gt,pa as Gs,pb as Wo,pc as Gn,pd as Ni,q as Qt,qa as Qs,qb as Go,qc as Qn,qd as Wi,r as Ht,ra as Hs,rb as Qo,rc as Hn,rd as Gi,s as Jt,sa as Js,sb as Ho,sc as Jn,sd as Qi,t as Yt,ta as Ys,tb as Jo,tc as Yn,td as Hi,u as Zt,ua as Zs,ub as Yo,uc as Zn,ud as Ji,v as es,va as eo,vb as Zo,vc as ei,vd as Yi,w as ts,wa as to,wb as en,wc as ti,wd as Zi,x as ss,xa as so,xb as tn,xc as si,xd as er,y as os,ya as oo,yb as sn,yc as oi,yd as tr,z as ns,za as no,zb as on,zc as ni,zd as sr}from"./chunks/chunk-HYWVRTFA.js";import{Ka as Ft,La as Kt,Z as Ot,a as _t,aa as qt,b as It,c as At,d as wt,e as St,f as Ct,h as Pt,i as bt,j as kt,k as Mt,l as Rt,m as xt,n as Et,o as Lt,p as Tt}from"./chunks/chunk-SX2IS5JP.js";import"./chunks/chunk-EQ5DGS2W.js";import{$ as st,C as ze,I as Be,J as Ne,O as We,P as Ge,Q as b,R as Qe,U as He,V as Je,X as Ye,Y as Ze,Z as et,_ as tt,a as Oe,aa as ot,b as qe,ba as nt,c as Fe,ca as it,da as rt,ea as at,fa as dt,ga as lt,ha as ct,ia as pt,j as Ke,ja as k,ka as ut,la as mt,t as De,u as Xe,v as je,w as Ue,x as Ve,y as $e}from"./chunks/chunk-6QO6HWGU.js";import{a as r}from"./chunks/chunk-V4WSBIXB.js";import fe from"node:process";var j=["off","error","info","debug"],X={off:0,error:1,info:2,debug:3};function S(o,e="info"){if(!o)return e;let t=o.trim().toLowerCase();return j.includes(t)?t:e}r(S,"resolveAcpLogLevel");var m=class{static{r(this,"AcpLogger")}level;sink;constructor(e={}){this.level=e.level??"info",this.sink=e.sink??(t=>{fe.stderr.write(`${t}
3
- `)})}handleEvent(e){let t=he(e);t&&this.log(t.level,t.message,t.fields)}error(e,t){this.log("error",e,t)}info(e,t){this.log("info",e,t)}debug(e,t){this.log("debug",e,t)}log(e,t,s){if(X[this.level]<X[e])return;let n=new Date().toISOString(),i=s?ye(s):"",a=i?` ${i}`:"";this.sink(`[ACP][${e.toUpperCase()}][${n}] ${t}${a}`)}};function he(o){switch(o.type){case"server_attached":return{level:"info",message:"ACP server attached",fields:c(o)};case"connection_closed":return{level:"info",message:"ACP connection closed",fields:c(o)};case"initialize_completed":return{level:"info",message:"ACP initialize completed",fields:c(o)};case"session_created":return{level:"info",message:"ACP session created",fields:c(o)};case"session_mode_changed":return{level:"info",message:"ACP session mode changed",fields:c(o)};case"prompt_skipped":return{level:"info",message:"ACP prompt skipped because session was already aborted",fields:c(o)};case"prompt_started":return{level:"info",message:"ACP prompt started",fields:c(o)};case"prompt_preview":return{level:"debug",message:"ACP prompt preview",fields:c(o)};case"prompt_finished":return{level:"info",message:"ACP prompt finished",fields:c(o)};case"prompt_cancelled":return{level:"info",message:"ACP prompt cancelled during execution",fields:c(o)};case"prompt_failed":return{level:"error",message:"ACP prompt failed",fields:c(o)};case"cancel_requested":return{level:"info",message:"ACP cancel requested",fields:c(o)};case"tool_permission_evaluated":return{level:"debug",message:"ACP evaluating tool permission",fields:c(o)};case"tool_permission_resolved":return ve(o);case"permission_requested":return{level:"info",message:"ACP permission requested",fields:c(o)};case"notification_failed":return{level:"error",message:`Failed to send ${o.label}`,fields:{sessionId:o.sessionId,error:o.error}};case"repo_intelligence_trace":return{level:"debug",message:"ACP repo intelligence trace",fields:c(o)};default:return null}}r(he,"mapEventToLogEntry");function c(o){let{type:e,...t}=o;return t}r(c,"toLogFields");function ve(o){let e={sessionId:o.sessionId,tool:o.tool,toolId:o.toolId};switch(o.outcome){case"auto_allowed_read_only_bash":return{level:"debug",message:"ACP tool permission auto-allowed for read-only bash",fields:e};case"auto_allowed_remembered":return{level:"info",message:"ACP tool permission reused remembered allowance",fields:e};case"blocked_plan_mode":return{level:"info",message:"ACP tool blocked by plan mode",fields:e};case"auto_allowed_plan_mode":return{level:"debug",message:"ACP tool auto-allowed in plan mode",fields:e};case"auto_allowed_policy":return{level:"debug",message:"ACP tool auto-allowed by permission policy",fields:e};case"request_failed_disconnected":return{level:"error",message:"ACP permission request failed because client is disconnected",fields:e};case"request_failed_incomplete":return{level:"error",message:"ACP permission request did not complete",fields:e};case"request_dismissed":return{level:"info",message:"ACP permission request dismissed",fields:e};case"request_rejected":return{level:"info",message:"ACP permission rejected",fields:e};case"request_granted":return{level:"info",message:"ACP permission granted",fields:{...e,remember:o.remember??!1}}}}r(ve,"mapPermissionOutcomeToLogEntry");function ye(o){return Object.entries(o).flatMap(([e,t])=>t===void 0?[]:`${e}=${_e(t)}`).join(" ")}r(ye,"formatFields");function _e(o){return o===null?"null":typeof o=="string"?JSON.stringify(o.length>160?`${o.slice(0,157)}...`:o):String(o)}r(_e,"formatFieldValue");var g=class{static{r(this,"AcpEventEmitter")}sinks;constructor(e={}){this.sinks=[...e.sinks??[]]}emit(e){for(let t of this.sinks)try{t.handleEvent(e)}catch{}}};import{randomUUID as U}from"node:crypto";import f from"node:path";import v from"node:process";import{Readable as Ie,Writable as Ae}from"node:stream";import{AgentSideConnection as we,PROTOCOL_VERSION as V,RequestError as h,ndJsonStream as Se}from"@agentclientprotocol/sdk";var N=["plan","accept-edits","auto-in-project"],C=new Set(["write","edit"]),Ce={read:"read",write:"edit",edit:"edit",undo:"edit",bash:"execute",grep:"search",glob:"search",think:"think",fetch:"fetch"},Pe=[{id:"plan",name:"Plan",description:"Read-only planning mode. File modifications are blocked except the plan-mode whitelist."},{id:"accept-edits",name:"Accept Edits",description:"File edits are auto-approved. Shell commands still require confirmation unless explicitly remembered."},{id:"auto-in-project",name:"Auto In Project",description:"Project-scoped changes are auto-approved. Protected paths and risky out-of-project operations still require confirmation."}];function be(o){let e={};for(let t of o)if("command"in t){let s={};for(let n of t.env??[])s[n.name]=n.value;e[t.name]={type:"stdio",command:t.command,args:t.args??[],env:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="sse"){let s={};for(let n of t.headers??[])s[n.name]=n.value;e[t.name]={type:"sse",url:t.url,headers:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="http"){let s={};for(let n of t.headers??[])s[n.name]=n.value;e[t.name]={type:"streamable-http",url:t.url,headers:Object.keys(s).length>0?s:void 0}}return e}r(be,"convertAcpMcpServers");function ke(o,e="accept-edits"){return o&&N.includes(o)?o:e}r(ke,"normalizeAcpPermissionMode");function Me(o){if(o&&N.includes(o))return o;throw h.invalidParams({modeId:o},"Invalid session mode. Expected one of: plan, accept-edits, auto-in-project.")}r(Me,"parseSessionMode");function Re(o){return{availableModes:Pe,currentModeId:o}}r(Re,"buildModeState");function $(o){return Ce[o]??"other"}r($,"inferToolKind");function z(o,e){if(C.has(o)){let t=typeof e.path=="string"?e.path:void 0;return t?[{path:t}]:void 0}if(o==="bash"){let t=typeof e.command=="string"?e.command:"",s=F(t);if(s.length>0)return s.map(n=>({path:n}))}}r(z,"inferToolLocations");function xe(o){let e=[];for(let t of o){let s=t,n=typeof s.type=="string"?s.type:"";if(n==="text"&&typeof s.text=="string"){e.push(s.text);continue}if(n==="resource_link"&&typeof s.uri=="string"){e.push(`[Resource] ${s.uri}`);continue}if(n==="resource"&&s.resource&&typeof s.resource=="object"){let i=s.resource;if(typeof i.text=="string"){e.push(i.text);continue}typeof i.uri=="string"&&e.push(`[Resource] ${i.uri}`)}}return e.join(`
2
+ import{Rb as ge,Sb as fe,X as E,_ as L,aa as T,ac as w,ba as O,ca as q,da as F,ea as K,fa as D,ga as X,ka as de,la as le,ma as ce,nb as pe,ob as ue,zb as me}from"./chunks/chunk-UG4262JI.js";import{D as ae,b as G,c as Q,d as H,f as J,h as Y,i as Z,j as ee,k as te,u as se,v as oe,w as ne,x as A,y as ie,z as re}from"./chunks/chunk-YMRZBS4G.js";import"./chunks/chunk-IYSK7LUK.js";import"./chunks/chunk-EVIDQWMF.js";import{$ as bo,$a as Pn,$b as Si,$c as Ar,A as Hs,Aa as Jo,Ab as M,Ac as Qi,Ad as Gr,B as Js,Ba as Yo,Bb as Jn,Bc as Hi,Bd as Qr,C as Ys,Ca as Zo,Cb as Yn,Cc as Ji,Cd as Hr,D as Zs,Da as en,Db as Zn,Dc as Yi,Dd as Jr,E as eo,Ea as tn,Eb as ei,Ec as Zi,Ed as Yr,F as to,Fa as sn,Fb as ti,Fc as er,Fd as Zr,G as so,Ga as on,Gb as si,Gc as tr,Gd as x,H as oo,Ha as nn,Hb as oi,Hc as sr,I as no,Ia as rn,Ib as ni,Ic as I,J as io,Ja as an,Jb as ii,Jc as or,K as ro,Ka as dn,Kb as ri,Kc as nr,L as ao,La as ln,Lb as ai,Lc as ir,M as lo,Ma as cn,Mb as di,Mc as rr,N as co,Na as pn,Nb as li,Nc as ar,O as po,Oa as un,Ob as ci,Oc as dr,P as uo,Pa as mn,Pb as pi,Pc as lr,Q as mo,Qa as gn,Qb as ui,Qc as cr,R as go,Ra as fn,Rb as mi,Rc as pr,S as fo,Sa as hn,Sb as gi,Sc as ur,T as ho,Ta as vn,Tb as fi,Tc as mr,U as vo,Ua as yn,Ub as hi,Uc as gr,V as yo,Va as _n,Vb as vi,Vc as fr,W as _o,Wa as In,Wb as yi,Wc as hr,X as Io,Xa as An,Xb as _i,Xc as vr,Y as Ao,Ya as wn,Yb as Ii,Yc as yr,Z as wo,Za as Sn,Zb as Ai,Zc as _r,_ as So,_a as bn,_b as wi,_c as Ir,a as Pt,aa as Po,ab as Cn,ac as bi,ad as wr,b as Ct,ba as Co,bb as kn,bc as Pi,bd as Sr,c as kt,ca as ko,cb as Mn,cc as Ci,cd as br,d as Mt,da as Mo,db as Rn,dc as ki,dd as Pr,e as Rt,ea as Ro,eb as xn,ec as Mi,ed as Cr,f as Rs,fa as xo,fb as En,fc as Ri,fd as kr,g as xs,ga as Eo,gb as Ln,gc as xi,gd as Mr,h as Es,ha as Lo,hb as Tn,hc as Ei,hd as Rr,i as Ls,ia as To,ib as On,ic as Li,id as xr,j as Ts,ja as Oo,jb as qn,jc as Ti,jd as Er,k as Os,ka as qo,kb as Fn,kc as Oi,kd as Lr,l as qs,la as Fo,lb as _,lc as qi,ld as Tr,m as Fs,ma as Ko,mb as Kn,mc as Fi,md as Or,n as Ks,na as Do,nb as Dn,nc as R,nd as qr,o as Ds,oa as Xo,ob as Xn,oc as Ki,od as Fr,p as Xs,pa as jo,pb as jn,pc as Di,pd as Kr,q as js,qa as Uo,qb as Un,qc as Xi,qd as Dr,r as Us,ra as Vo,rb as Vn,rc as ji,rd as Xr,s as Vs,sa as $o,sb as $n,sc as Ui,sd as jr,t as $s,ta as zo,tb as zn,tc as Vi,td as Ur,u as zs,ua as Bo,ub as Bn,uc as $i,ud as Vr,v as Bs,va as Wo,vb as Wn,vc as zi,vd as $r,w as Ws,wa as No,wb as Nn,wc as Bi,wd as zr,x as Ns,xa as Go,xb as Gn,xc as Wi,xd as Br,y as Gs,ya as Qo,yb as Qn,yc as Ni,yd as Wr,z as Qs,za as Ho,zb as Hn,zc as Gi,zd as Nr}from"./chunks/chunk-7G5PSL6C.js";import{$ as ot,C as Be,I as We,J as Ne,O as Ge,P as Qe,Q as C,R as He,U as Je,V as Ye,X as Ze,Y as et,Z as tt,_ as st,a as qe,aa as nt,b as Fe,ba as it,c as Ke,ca as rt,da as at,ea as dt,fa as lt,ga as ct,ha as pt,ia as ut,j as De,ja as mt,ka as gt,la as ft,ma as ht,na as vt,oa as yt,pa as _t,qa as k,ra as It,sa as At,t as Xe,ta as wt,u as je,ua as St,v as Ue,va as bt,w as Ve,x as $e,y as ze}from"./chunks/chunk-K75O2CAE.js";import{$b as us,Xa as Jt,Ya as Yt,Yb as ls,Zb as cs,_b as ps,a as xt,ac as ms,b as Et,c as Lt,d as Tt,e as Ot,f as qt,h as Ft,hc as gs,i as Kt,ic as fs,j as Dt,jc as hs,k as Xt,ka as Bt,kb as Zt,kc as vs,l as jt,lb as es,lc as ys,m as Ut,mb as ts,mc as _s,n as Vt,na as Wt,nb as ss,nc as Is,o as $t,ob as os,p as zt,pb as ns,pc as As,qb as is,qc as ws,rb as rs,rc as Ss,sb as as,sc as bs,tb as ds,tc as Ps,ua as Nt,uc as Cs,va as Gt,wa as Qt,xa as Ht,xc as ks,yc as Ms}from"./chunks/chunk-VHKAJDQD.js";import{a as i}from"./chunks/chunk-V4WSBIXB.js";import he from"node:process";var U=["off","error","info","debug"],j={off:0,error:1,info:2,debug:3};function S(o,e="info"){if(!o)return e;let t=o.trim().toLowerCase();return U.includes(t)?t:e}i(S,"resolveAcpLogLevel");var m=class{static{i(this,"AcpLogger")}level;sink;constructor(e={}){this.level=e.level??"info",this.sink=e.sink??(t=>{he.stderr.write(`${t}
3
+ `)})}handleEvent(e){let t=ve(e);t&&this.log(t.level,t.message,t.fields)}error(e,t){this.log("error",e,t)}info(e,t){this.log("info",e,t)}debug(e,t){this.log("debug",e,t)}log(e,t,s){if(j[this.level]<j[e])return;let n=new Date().toISOString(),r=s?_e(s):"",a=r?` ${r}`:"";this.sink(`[ACP][${e.toUpperCase()}][${n}] ${t}${a}`)}};function ve(o){switch(o.type){case"server_attached":return{level:"info",message:"ACP server attached",fields:c(o)};case"connection_closed":return{level:"info",message:"ACP connection closed",fields:c(o)};case"initialize_completed":return{level:"info",message:"ACP initialize completed",fields:c(o)};case"session_created":return{level:"info",message:"ACP session created",fields:c(o)};case"session_mode_changed":return{level:"info",message:"ACP session mode changed",fields:c(o)};case"prompt_skipped":return{level:"info",message:"ACP prompt skipped because session was already aborted",fields:c(o)};case"prompt_started":return{level:"info",message:"ACP prompt started",fields:c(o)};case"prompt_preview":return{level:"debug",message:"ACP prompt preview",fields:c(o)};case"prompt_finished":return{level:"info",message:"ACP prompt finished",fields:c(o)};case"prompt_cancelled":return{level:"info",message:"ACP prompt cancelled during execution",fields:c(o)};case"prompt_failed":return{level:"error",message:"ACP prompt failed",fields:c(o)};case"cancel_requested":return{level:"info",message:"ACP cancel requested",fields:c(o)};case"tool_permission_evaluated":return{level:"debug",message:"ACP evaluating tool permission",fields:c(o)};case"tool_permission_resolved":return ye(o);case"permission_requested":return{level:"info",message:"ACP permission requested",fields:c(o)};case"notification_failed":return{level:"error",message:`Failed to send ${o.label}`,fields:{sessionId:o.sessionId,error:o.error}};case"repo_intelligence_trace":return{level:"debug",message:"ACP repo intelligence trace",fields:c(o)};default:return null}}i(ve,"mapEventToLogEntry");function c(o){let{type:e,...t}=o;return t}i(c,"toLogFields");function ye(o){let e={sessionId:o.sessionId,tool:o.tool,toolId:o.toolId};switch(o.outcome){case"auto_allowed_read_only_bash":return{level:"debug",message:"ACP tool permission auto-allowed for read-only bash",fields:e};case"auto_allowed_remembered":return{level:"info",message:"ACP tool permission reused remembered allowance",fields:e};case"blocked_plan_mode":return{level:"info",message:"ACP tool blocked by plan mode",fields:e};case"auto_allowed_plan_mode":return{level:"debug",message:"ACP tool auto-allowed in plan mode",fields:e};case"auto_allowed_policy":return{level:"debug",message:"ACP tool auto-allowed by permission policy",fields:e};case"request_failed_disconnected":return{level:"error",message:"ACP permission request failed because client is disconnected",fields:e};case"request_failed_incomplete":return{level:"error",message:"ACP permission request did not complete",fields:e};case"request_dismissed":return{level:"info",message:"ACP permission request dismissed",fields:e};case"request_rejected":return{level:"info",message:"ACP permission rejected",fields:e};case"request_granted":return{level:"info",message:"ACP permission granted",fields:{...e,remember:o.remember??!1}}}}i(ye,"mapPermissionOutcomeToLogEntry");function _e(o){return Object.entries(o).flatMap(([e,t])=>t===void 0?[]:`${e}=${Ie(t)}`).join(" ")}i(_e,"formatFields");function Ie(o){return o===null?"null":typeof o=="string"?JSON.stringify(o.length>160?`${o.slice(0,157)}...`:o):String(o)}i(Ie,"formatFieldValue");var g=class{static{i(this,"AcpEventEmitter")}sinks;constructor(e={}){this.sinks=[...e.sinks??[]]}emit(e){for(let t of this.sinks)try{t.handleEvent(e)}catch{}}};import{randomUUID as V}from"node:crypto";import f from"node:path";import v from"node:process";import{Readable as Ae,Writable as we}from"node:stream";import{AgentSideConnection as Se,PROTOCOL_VERSION as $,RequestError as h,ndJsonStream as be}from"@agentclientprotocol/sdk";var N=["plan","accept-edits","auto-in-project"];function b(o){return M(o)}i(b,"acpIsFileModificationTool");var Pe={read:"read",write:"edit",edit:"edit",undo:"edit",bash:"execute",grep:"search",glob:"search",think:"think",fetch:"fetch"},Ce=[{id:"plan",name:"Plan",description:"Read-only planning mode. File modifications are blocked except the plan-mode whitelist."},{id:"accept-edits",name:"Accept Edits",description:"File edits are auto-approved. Shell commands still require confirmation unless explicitly remembered."},{id:"auto-in-project",name:"Auto In Project",description:"Project-scoped changes are auto-approved. Protected paths and risky out-of-project operations still require confirmation."}];function ke(o){let e={};for(let t of o)if("command"in t){let s={};for(let n of t.env??[])s[n.name]=n.value;e[t.name]={type:"stdio",command:t.command,args:t.args??[],env:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="sse"){let s={};for(let n of t.headers??[])s[n.name]=n.value;e[t.name]={type:"sse",url:t.url,headers:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="http"){let s={};for(let n of t.headers??[])s[n.name]=n.value;e[t.name]={type:"streamable-http",url:t.url,headers:Object.keys(s).length>0?s:void 0}}return e}i(ke,"convertAcpMcpServers");function Me(o,e="accept-edits"){return o&&N.includes(o)?o:e}i(Me,"normalizeAcpPermissionMode");function Re(o){if(o&&N.includes(o))return o;throw h.invalidParams({modeId:o},"Invalid session mode. Expected one of: plan, accept-edits, auto-in-project.")}i(Re,"parseSessionMode");function xe(o){return{availableModes:Ce,currentModeId:o}}i(xe,"buildModeState");function z(o){return Pe[o]??"other"}i(z,"inferToolKind");function B(o,e){if(b(o)){let t=typeof e.path=="string"?e.path:void 0;return t?[{path:t}]:void 0}if(o==="bash"){let t=typeof e.command=="string"?e.command:"",s=K(t);if(s.length>0)return s.map(n=>({path:n}))}}i(B,"inferToolLocations");function Ee(o){let e=[];for(let t of o){let s=t,n=typeof s.type=="string"?s.type:"";if(n==="text"&&typeof s.text=="string"){e.push(s.text);continue}if(n==="resource_link"&&typeof s.uri=="string"){e.push(`[Resource] ${s.uri}`);continue}if(n==="resource"&&s.resource&&typeof s.resource=="object"){let r=s.resource;if(typeof r.text=="string"){e.push(r.text);continue}typeof r.uri=="string"&&e.push(`[Resource] ${r.uri}`)}}return e.join(`
4
4
 
5
- `).trim()}r(xe,"extractPromptText");function Ee(o){return/^\[(?:Tool Error|Cancelled|Blocked|Error)\]/.test(o)}r(Ee,"isToolResultFailure");function Le(o){return o instanceof Error?o.name==="AbortError"||o.message.includes("aborted")||o.message.includes("ABORTED"):!1}r(Le,"isAbortLikeError");function B(o){let e=o?.usage;if(e)return{inputTokens:e.inputTokens,outputTokens:e.outputTokens,totalTokens:e.totalTokens,...e.cachedReadTokens!==void 0?{cachedReadTokens:e.cachedReadTokens}:{},...e.cachedWriteTokens!==void 0?{cachedWriteTokens:e.cachedWriteTokens}:{},...e.thoughtTokens!==void 0?{thoughtTokens:e.thoughtTokens}:{}}}r(B,"toAcpUsage");var y=class{static{r(this,"KodaXAcpServer")}provider;model;thinking;reasoningMode;defaultPermissionMode;defaultCwd;hasFixedCwd;agentName;agentVersion;storage;events;bashPrefixExtractor;connection=null;sessions=new Map;promptQueue=Promise.resolve();extensionRuntime;extensionRuntimeReady;constructor(e={}){let t=A();this.provider=e.provider??t.provider??b,this.model=e.model,this.thinking=e.thinking??t.thinking??!1,this.reasoningMode=e.reasoningMode??t.reasoningMode??"auto",this.defaultPermissionMode=ke(e.permissionMode??t.permissionMode,"accept-edits"),this.defaultCwd=f.resolve(e.cwd??v.cwd()),this.hasFixedCwd=e.cwd!==void 0,this.agentName=e.agentName??"kodax-acp-server",this.agentVersion=e.agentVersion??"0.0.0",this.storage=e.storage??new w,this.events=new g({sinks:[...e.eventSinks??[],new m({level:S(e.logLevel??v.env.KODAX_ACP_LOG,"info")})]}),this.bashPrefixExtractor=R({getProvider:r(()=>k(this.provider),"getProvider"),getModel:r(()=>this.model??"","getModel")});let s=t.mcpServers;if(s&&Object.values(s).some(i=>(i.connect??"lazy")!=="disabled")){let i=_({config:t});this.extensionRuntimeReady=I(i,s).then(()=>{i.activate(),this.extensionRuntime=i}).catch(a=>{let d=a instanceof Error?a.message:String(a);console.warn(`[kodax:acp] MCP initialization failed: ${d}`)})}}attach(e,t){let s=Se(t,e),n=new we(()=>this,s);return this.connection=n,this.events.emit({type:"server_attached",agent:this.agentName,version:this.agentVersion,provider:this.provider,model:this.model??"(default)",cwd:this.defaultCwd,permissionMode:this.defaultPermissionMode,reasoningMode:this.reasoningMode,thinking:this.thinking,fixedCwd:this.hasFixedCwd}),n.signal.addEventListener("abort",()=>{this.sessions.forEach(i=>{i.activeController?.abort(),i.extensionRuntime?.dispose()}),this.events.emit({type:"connection_closed",activeSessions:this.sessions.size}),this.sessions.clear(),this.connection=null,this.extensionRuntime?.dispose(),this.extensionRuntime=void 0}),n}async waitForClose(){await this.connection?.closed}async initialize(e){return this.events.emit({type:"initialize_completed",protocolVersion:V}),{protocolVersion:V,agentInfo:{name:this.agentName,version:this.agentVersion},agentCapabilities:{promptCapabilities:{embeddedContext:!0,image:!1,audio:!1},sessionCapabilities:{}}}}async newSession(e){let t=this.hasFixedCwd?this.defaultCwd:e.cwd??this.defaultCwd;if(!f.isAbsolute(t))throw h.invalidParams({cwd:t},"Session cwd must be an absolute path.");let s=U(),n=e.mcpServers??[],i={sessionId:s,cwd:f.resolve(t),permissionMode:this.defaultPermissionMode,mcpServers:n,alwaysAllowTools:[],activeController:null};if(n.length>0){let a=be(n),d=_({});await I(d,a).catch(p=>{let l=p instanceof Error?p.message:String(p);console.warn(`[kodax:acp] Per-session MCP init failed for ${s}: ${l}`)}),d.activate(),i.extensionRuntime=d}return this.sessions.set(s,i),this.events.emit({type:"session_created",sessionId:s,cwd:i.cwd,permissionMode:i.permissionMode,mcpServers:i.mcpServers.length}),{sessionId:s,modes:Re(i.permissionMode)}}async authenticate(){}async setSessionMode(e){let t=this.requireSession(e.sessionId),s=t.permissionMode,n=Me(e.modeId);return t.permissionMode=n,this.events.emit({type:"session_mode_changed",sessionId:t.sessionId,from:s,to:n}),await this.sendSessionUpdate({sessionId:t.sessionId,update:{sessionUpdate:"current_mode_update",currentModeId:n}}),{}}async prompt(e){let t=this.requireSession(e.sessionId),s=xe(e.prompt);if(!s)throw h.invalidParams({prompt:e.prompt},"Prompt must include at least one text or resource block with content.");let n=new AbortController;t.activeController=n;let i=Date.now(),a=r(async()=>{if(n.signal.aborted)return this.events.emit({type:"prompt_skipped",sessionId:t.sessionId}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};let p=Date.now();this.events.emit({type:"prompt_started",sessionId:t.sessionId,messageId:e.messageId??null,chars:s.length,cwd:t.cwd,queueDelayMs:p-i}),this.events.emit({type:"prompt_preview",sessionId:t.sessionId,prompt:s});try{this.extensionRuntimeReady&&await this.extensionRuntimeReady;let l=await M(this.buildKodaXOptions(t,n.signal),s);t.contextTokenSnapshot=l.contextTokenSnapshot;let u=!!l.interrupted,P=n.signal.aborted||u?"cancelled":"end_turn";return this.events.emit({type:"prompt_finished",sessionId:t.sessionId,stopReason:P,interrupted:u,durationMs:Date.now()-p}),{stopReason:P,userMessageId:e.messageId??void 0,...B(l.contextTokenSnapshot)?{usage:B(l.contextTokenSnapshot)}:{}}}catch(l){if(n.signal.aborted||Le(l))return this.events.emit({type:"prompt_cancelled",sessionId:t.sessionId,durationMs:Date.now()-p}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};let u=l instanceof Error?l.message:String(l);return this.events.emit({type:"prompt_failed",sessionId:t.sessionId,durationMs:Date.now()-p,error:u}),await this.sendTextChunk(t.sessionId,`
5
+ `).trim()}i(Ee,"extractPromptText");function Le(o){return/^\[(?:Tool Error|Cancelled|Blocked|Error)\]/.test(o)}i(Le,"isToolResultFailure");function Te(o){return o instanceof Error?o.name==="AbortError"||o.message.includes("aborted")||o.message.includes("ABORTED"):!1}i(Te,"isAbortLikeError");function W(o){let e=o?.usage;if(e)return{inputTokens:e.inputTokens,outputTokens:e.outputTokens,totalTokens:e.totalTokens,...e.cachedReadTokens!==void 0?{cachedReadTokens:e.cachedReadTokens}:{},...e.cachedWriteTokens!==void 0?{cachedWriteTokens:e.cachedWriteTokens}:{},...e.thoughtTokens!==void 0?{thoughtTokens:e.thoughtTokens}:{}}}i(W,"toAcpUsage");var y=class{static{i(this,"KodaXAcpServer")}provider;model;thinking;reasoningMode;defaultPermissionMode;defaultCwd;hasFixedCwd;agentName;agentVersion;storage;events;bashPrefixExtractor;connection=null;sessions=new Map;promptQueue=Promise.resolve();extensionRuntime;extensionRuntimeReady;constructor(e={}){let t=A();this.provider=e.provider??t.provider??C,this.model=e.model,this.thinking=e.thinking??t.thinking??!1,this.reasoningMode=e.reasoningMode??t.reasoningMode??"auto",this.defaultPermissionMode=Me(e.permissionMode??t.permissionMode,"accept-edits"),this.defaultCwd=f.resolve(e.cwd??v.cwd()),this.hasFixedCwd=e.cwd!==void 0,this.agentName=e.agentName??"kodax-acp-server",this.agentVersion=e.agentVersion??"0.0.0",this.storage=e.storage??new w,this.events=new g({sinks:[...e.eventSinks??[],new m({level:S(e.logLevel??v.env.KODAX_ACP_LOG,"info")})]}),this.bashPrefixExtractor=x({getProvider:i(()=>k(this.provider),"getProvider"),getModel:i(()=>this.model??"","getModel")});let s=t.mcpServers;if(s&&Object.values(s).some(r=>(r.connect??"lazy")!=="disabled")){let r=_({config:t});this.extensionRuntimeReady=I(r,s).then(()=>{r.activate(),this.extensionRuntime=r}).catch(a=>{let d=a instanceof Error?a.message:String(a);console.warn(`[kodax:acp] MCP initialization failed: ${d}`)})}}attach(e,t){let s=be(t,e),n=new Se(()=>this,s);return this.connection=n,this.events.emit({type:"server_attached",agent:this.agentName,version:this.agentVersion,provider:this.provider,model:this.model??"(default)",cwd:this.defaultCwd,permissionMode:this.defaultPermissionMode,reasoningMode:this.reasoningMode,thinking:this.thinking,fixedCwd:this.hasFixedCwd}),n.signal.addEventListener("abort",()=>{this.sessions.forEach(r=>{r.activeController?.abort(),r.extensionRuntime?.dispose()}),this.events.emit({type:"connection_closed",activeSessions:this.sessions.size}),this.sessions.clear(),this.connection=null,this.extensionRuntime?.dispose(),this.extensionRuntime=void 0}),n}async waitForClose(){await this.connection?.closed}async initialize(e){return this.events.emit({type:"initialize_completed",protocolVersion:$}),{protocolVersion:$,agentInfo:{name:this.agentName,version:this.agentVersion},agentCapabilities:{promptCapabilities:{embeddedContext:!0,image:!1,audio:!1},sessionCapabilities:{}}}}async newSession(e){let t=this.hasFixedCwd?this.defaultCwd:e.cwd??this.defaultCwd;if(!f.isAbsolute(t))throw h.invalidParams({cwd:t},"Session cwd must be an absolute path.");let s=V(),n=e.mcpServers??[],r={sessionId:s,cwd:f.resolve(t),permissionMode:this.defaultPermissionMode,mcpServers:n,alwaysAllowTools:[],activeController:null};if(n.length>0){let a=ke(n),d=_({});await I(d,a).catch(p=>{let l=p instanceof Error?p.message:String(p);console.warn(`[kodax:acp] Per-session MCP init failed for ${s}: ${l}`)}),d.activate(),r.extensionRuntime=d}return this.sessions.set(s,r),this.events.emit({type:"session_created",sessionId:s,cwd:r.cwd,permissionMode:r.permissionMode,mcpServers:r.mcpServers.length}),{sessionId:s,modes:xe(r.permissionMode)}}async authenticate(){}async setSessionMode(e){let t=this.requireSession(e.sessionId),s=t.permissionMode,n=Re(e.modeId);return t.permissionMode=n,this.events.emit({type:"session_mode_changed",sessionId:t.sessionId,from:s,to:n}),await this.sendSessionUpdate({sessionId:t.sessionId,update:{sessionUpdate:"current_mode_update",currentModeId:n}}),{}}async prompt(e){let t=this.requireSession(e.sessionId),s=Ee(e.prompt);if(!s)throw h.invalidParams({prompt:e.prompt},"Prompt must include at least one text or resource block with content.");let n=new AbortController;t.activeController=n;let r=Date.now(),a=i(async()=>{if(n.signal.aborted)return this.events.emit({type:"prompt_skipped",sessionId:t.sessionId}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};let p=Date.now();this.events.emit({type:"prompt_started",sessionId:t.sessionId,messageId:e.messageId??null,chars:s.length,cwd:t.cwd,queueDelayMs:p-r}),this.events.emit({type:"prompt_preview",sessionId:t.sessionId,prompt:s});try{this.extensionRuntimeReady&&await this.extensionRuntimeReady;let l=await R(this.buildKodaXOptions(t,n.signal),s);t.contextTokenSnapshot=l.contextTokenSnapshot;let u=!!l.interrupted,P=n.signal.aborted||u?"cancelled":"end_turn";return this.events.emit({type:"prompt_finished",sessionId:t.sessionId,stopReason:P,interrupted:u,durationMs:Date.now()-p}),{stopReason:P,userMessageId:e.messageId??void 0,...W(l.contextTokenSnapshot)?{usage:W(l.contextTokenSnapshot)}:{}}}catch(l){if(n.signal.aborted||Te(l))return this.events.emit({type:"prompt_cancelled",sessionId:t.sessionId,durationMs:Date.now()-p}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};let u=l instanceof Error?l.message:String(l);return this.events.emit({type:"prompt_failed",sessionId:t.sessionId,durationMs:Date.now()-p,error:u}),await this.sendTextChunk(t.sessionId,`
6
6
  [ACP Server Error] ${u}
7
- `),{stopReason:n.signal.aborted?"cancelled":"end_turn",userMessageId:e.messageId??void 0}}finally{t.activeController=null}},"task"),d=this.promptQueue.then(a,a);return this.promptQueue=d.then(()=>{},()=>{}),d}async cancel(e){let t=this.sessions.get(e.sessionId);this.events.emit({type:"cancel_requested",sessionId:e.sessionId,active:!!t?.activeController}),t?.activeController?.abort()}requireSession(e){let t=this.sessions.get(e);if(!t)throw h.resourceNotFound(e);return t}buildKodaXOptions(e,t){return{provider:this.provider,model:this.model,thinking:this.thinking,reasoningMode:this.reasoningMode,abortSignal:t,extensionRuntime:e.extensionRuntime??this.extensionRuntime,session:{id:e.sessionId,storage:this.storage},context:{gitRoot:e.cwd,executionCwd:e.cwd,contextTokenSnapshot:e.contextTokenSnapshot},events:{onTextDelta:r(s=>{this.dispatchNotification("assistant text chunk",e.sessionId,this.sendTextChunk(e.sessionId,s))},"onTextDelta"),onThinkingDelta:r(s=>{this.dispatchNotification("thinking chunk",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"agent_thought_chunk",content:{type:"text",text:s}}}))},"onThinkingDelta"),onToolUseStart:r(s=>{this.dispatchNotification("tool call start",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call",toolCallId:s.id,title:s.name,kind:$(s.name),rawInput:s.input,locations:z(s.name,s.input??{}),status:"pending"}}))},"onToolUseStart"),onToolResult:r(s=>{this.dispatchNotification("tool call update",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call_update",toolCallId:s.id,title:s.name,status:Ee(s.content)?"failed":"completed",rawOutput:s.content}}))},"onToolResult"),onRepoIntelligenceTrace:r(s=>{this.events.emit({type:"repo_intelligence_trace",sessionId:e.sessionId,stage:s.stage,summary:s.summary,mode:s.capability?.mode,engine:s.capability?.engine,bridge:s.capability?.bridge,status:s.capability?.status,daemonLatencyMs:s.trace?.daemonLatencyMs,cliLatencyMs:s.trace?.cliLatencyMs,cacheHit:s.trace?.cacheHit,capsuleEstimatedTokens:s.trace?.capsuleEstimatedTokens})},"onRepoIntelligenceTrace"),onError:r(s=>{this.dispatchNotification("error text chunk",e.sessionId,this.sendTextChunk(e.sessionId,`
7
+ `),{stopReason:n.signal.aborted?"cancelled":"end_turn",userMessageId:e.messageId??void 0}}finally{t.activeController=null}},"task"),d=this.promptQueue.then(a,a);return this.promptQueue=d.then(()=>{},()=>{}),d}async cancel(e){let t=this.sessions.get(e.sessionId);this.events.emit({type:"cancel_requested",sessionId:e.sessionId,active:!!t?.activeController}),t?.activeController?.abort()}requireSession(e){let t=this.sessions.get(e);if(!t)throw h.resourceNotFound(e);return t}buildKodaXOptions(e,t){return{provider:this.provider,model:this.model,thinking:this.thinking,reasoningMode:this.reasoningMode,abortSignal:t,extensionRuntime:e.extensionRuntime??this.extensionRuntime,session:{id:e.sessionId,storage:this.storage},context:{gitRoot:e.cwd,executionCwd:e.cwd,contextTokenSnapshot:e.contextTokenSnapshot},events:{onTextDelta:i(s=>{this.dispatchNotification("assistant text chunk",e.sessionId,this.sendTextChunk(e.sessionId,s))},"onTextDelta"),onThinkingDelta:i(s=>{this.dispatchNotification("thinking chunk",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"agent_thought_chunk",content:{type:"text",text:s}}}))},"onThinkingDelta"),onToolUseStart:i(s=>{this.dispatchNotification("tool call start",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call",toolCallId:s.id,title:s.name,kind:z(s.name),rawInput:s.input,locations:B(s.name,s.input??{}),status:"pending"}}))},"onToolUseStart"),onToolResult:i(s=>{this.dispatchNotification("tool call update",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call_update",toolCallId:s.id,title:s.name,status:Le(s.content)?"failed":"completed",rawOutput:s.content}}))},"onToolResult"),onRepoIntelligenceTrace:i(s=>{this.events.emit({type:"repo_intelligence_trace",sessionId:e.sessionId,stage:s.stage,summary:s.summary,mode:s.capability?.mode,engine:s.capability?.engine,bridge:s.capability?.bridge,status:s.capability?.status,daemonLatencyMs:s.trace?.daemonLatencyMs,cliLatencyMs:s.trace?.cliLatencyMs,cacheHit:s.trace?.cacheHit,capsuleEstimatedTokens:s.trace?.capsuleEstimatedTokens})},"onRepoIntelligenceTrace"),onError:i(s=>{this.dispatchNotification("error text chunk",e.sessionId,this.sendTextChunk(e.sessionId,`
8
8
  [Error] ${s.message}
9
- `))},"onError"),beforeToolExecute:r(async(s,n,i)=>{let a=await this.evaluateToolPermission(e,s,n,i?.toolId);return a.allowed?!0:a.override??!1},"beforeToolExecute")}}}async evaluateToolPermission(e,t,s,n){if(this.events.emit({type:"tool_permission_evaluated",sessionId:e.sessionId,tool:t,toolId:n??null,permissionMode:e.permissionMode}),t==="bash"){let l=typeof s.command=="string"?s.command:"";if(E(l))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_read_only_bash"}),{allowed:!0};if(await L(t,s,e.alwaysAllowTools,this.bashPrefixExtractor))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_remembered"}),{allowed:!0}}if(e.permissionMode==="plan"){let l=D(t,s,e.cwd);return l?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"blocked_plan_mode"}),{allowed:!1,override:`${l} Do not try to modify files while planning. Finish the plan first, then hand off to a writable mode.`}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_plan_mode"}),{allowed:!0})}let i=C.has(t)&&typeof s.path=="string"&&O(f.resolve(e.cwd,s.path),e.cwd),a=x(e.permissionMode).has(t),d=e.permissionMode==="auto-in-project"&&(C.has(t)&&typeof s.path=="string"&&!q(s.path,e.cwd)||t==="bash"&&typeof s.command=="string"&&K(s.command,e.cwd).dangerous);return!i&&!a&&!d?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_policy"}),{allowed:!0}):await this.requestPermissionFromClient(e,t,s,n)}async requestPermissionFromClient(e,t,s,n){if(!this.connection)return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"request_failed_disconnected"}),{allowed:!1,override:"[Cancelled] ACP client is disconnected, so the permission request could not be completed."};let i=[{optionId:"allow_once",kind:"allow_once",name:"Allow once"},{optionId:"allow_always",kind:"allow_always",name:"Always allow"},{optionId:"reject_once",kind:"reject_once",name:"Reject"}],a={toolCallId:n??U(),title:t,kind:$(t),rawInput:s,locations:z(t,s),status:"pending"},d;this.events.emit({type:"permission_requested",sessionId:e.sessionId,tool:t,toolId:a.toolCallId});try{d=await this.connection.requestPermission({sessionId:e.sessionId,toolCall:a,options:i})}catch{return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_failed_incomplete"}),{allowed:!1,override:"[Cancelled] ACP client did not complete the permission request. Operation failed closed."}}return d.outcome.outcome!=="selected"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_dismissed"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(d.outcome.optionId==="allow_always"&&t==="bash"&&(e.alwaysAllowTools=Array.from(new Set([...e.alwaysAllowTools,T(t,s,!1)])).filter(Boolean)),d.outcome.optionId==="reject_once"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_rejected"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_granted",remember:d.outcome.optionId==="allow_always"}),{allowed:!0}))}async sendTextChunk(e,t){await this.sendSessionUpdate({sessionId:e,update:{sessionUpdate:"agent_message_chunk",content:{type:"text",text:t}}})}async sendSessionUpdate(e){!this.connection||this.connection.signal.aborted||await this.connection.sessionUpdate(e)}dispatchNotification(e,t,s){s.catch(n=>{if(!this.connection||this.connection.signal.aborted)return;let i=n instanceof Error?n.message:String(n);this.events.emit({type:"notification_failed",sessionId:t,label:e,error:i})})}};async function Te(o={}){let e=new y(o),t=Ie.toWeb(v.stdin),s=Ae.toWeb(v.stdout);e.attach(t,s),await e.waitForClose()}r(Te,"runAcpServer");export{j as ACP_LOG_LEVELS,wr as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD,Sr as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD,g as AcpEventEmitter,m as AcpLogger,$r as BASH_POLICY_SPEC,Mr as BREAKER_ERROR_THRESHOLD,Rr as BREAKER_WINDOW_MS,ae as BUILTIN_COMMANDS,Xt as CANCELLED_TOOL_RESULT_MESSAGE,Dt as CANCELLED_TOOL_RESULT_PREFIX,ur as CODING_AGENTS,ar as CODING_AGENT_MARKER,fi as CODING_INVARIANTS,ri as CODING_SUMMARY_PROMPT,ai as CODING_UPDATE_SUMMARY_PROMPT,bo as CapabilityDeniedError,vi as Client,ko as ConstructionManifestError,di as DEFAULT_CODING_AGENT_NAME,Zi as DEFAULT_DANGEROUS_PATTERNS,Co as DEFAULT_HANDLER_TIMEOUT_MS,Vn as DEFAULT_RESILIENCE_CONFIG,Yi as DEFAULT_SAFE_PATTERNS,Qo as DEFAULT_SELF_MODIFY_BUDGET,Xr as DEFAULT_SPECULATIVE_WINDOW_MS,Ut as DEFAULT_TOOL_OUTPUT_MAX_BYTES,jt as DEFAULT_TOOL_OUTPUT_MAX_LINES,Tt as DefaultSummaryCompaction,Ri as EMIT_CONTRACT_TOOL_NAME,xi as EMIT_HANDOFF_TOOL_NAME,Mi as EMIT_SCOUT_VERDICT_TOOL_NAME,Ei as EMIT_VERDICT_TOOL_NAME,Eo as EVALUATOR_AGENT_NAME,vt as ErrorCategory,w as FileSessionStorage,xo as GENERATOR_AGENT_NAME,bt as KODAX_API_MIN_INTERVAL,Q as KODAX_CONFIG_FILE,b as KODAX_DEFAULT_PROVIDER,It as KODAX_DEFAULT_TIMEOUT,W as KODAX_DIR,At as KODAX_HARD_TIMEOUT,Ct as KODAX_MAX_INCOMPLETE_RETRIES,wt as KODAX_MAX_RETRIES,_t as KODAX_MAX_TOKENS,Ge as KODAX_PROVIDERS,We as KODAX_PROVIDER_SNAPSHOTS,Ke as KODAX_REASONING_MODE_SEQUENCE,St as KODAX_RETRY_BASE_DELAY,G as KODAX_SESSIONS_DIR,Pt as KODAX_STAGGER_DELAY,fn as KODAX_TOOLS,Z as KODAX_VERSION,y as KodaXAcpServer,Be as KodaXAnthropicCompatProvider,ze as KodaXBaseProvider,vi as KodaXClient,Oe as KodaXError,Ao as KodaXExtensionRuntime,Ne as KodaXOpenAICompatProvider,qe as KodaXProviderError,Fe as KodaXRateLimitError,ft as KodaXSessionError,ht as KodaXTerminalError,gt as KodaXToolError,eo as LINEAGE_ENTRY_TYPES,so as LineageCompaction,to as LineageExtension,Bi as McpCapabilityProvider,zi as McpServerRuntime,Ro as PLANNER_AGENT_NAME,kt as PROMISE_PATTERN,xn as PROMPT_SECTION_REGISTRY,Fi as PROTOCOL_EMITTER_TOOLS,Wn as ProviderRecoveryCoordinator,Vt as READ_DEFAULT_LIMIT,zt as READ_MAX_LINE_CHARS,$t as READ_PREFLIGHT_SIZE_BYTES,Is as REPOINTEL_DEFAULT_ENDPOINT,qt as Runner,Mo as SCOUT_AGENT_NAME,Rn as SYSTEM_PROMPT,Bn as StableBoundaryTracker,Fo as TASK_ENGINE_ROLE_AGENTS,bi as TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME,sn as _resetRuntimeForTesting,rn as activate,ps as analyzeChangedScope,Wo as appendAuditEntry,po as appendSessionLineageLabel,wi as applyFanoutBranchTransition,uo as applySessionCompaction,Ds as applyToolResultGuardrail,yo as archiveOldIslands,Si as assignFanoutBranchWorker,kr as autoModeDenialShouldFallback,Fr as bashSignalCollector,ci as boundedRevise,Lr as breakerShouldFallback,pi as budgetCeiling,si as buildAmaControllerDecision,qn as buildCapabilityContextSections,mr as buildClassifierPrompt,ei as buildFallbackRoutingDecision,_i as buildFanoutSchedulerPlan,zo as buildLlmReviewPrompt,Xn as buildPromptMessageContent,oi as buildPromptOverlay,On as buildPromptSnapshot,Gn as buildProviderCapabilitySnapshot,ti as buildProviderPolicyHintsForDecision,Qn as buildProviderPolicyPromptNotes,je as buildReasoningOverrideKey,cs as buildRepoIntelligenceContext,Ps as buildRepoIntelligenceIndex,as as buildRepoOverview,ho as buildSessionTree,Kn as buildSystemPrompt,Fn as buildSystemPromptSnapshot,qr as checkAbsoluteDeny,Dn as checkIncompleteToolCalls,ii as checkPromiseSignal,fr as classify,tr as classifyBashCommand,yt as classifyError,zn as classifyResilienceError,Kt as cleanupIncompleteToolCalls,$e as clearReasoningOverride,pt as clearRuntimeModelProviders,Dr as collectAllSignals,or as computeInputSignature,hr as computeRulesFingerprint,tn as configureRuntime,Vs as convertCapabilityReadResult,Us as convertProviderSearchResults,Ai as countActiveFanoutBranches,vo as countActiveLineageMessages,Rt as countTokens,xt as createAgent,Cr as createAutoModeDenialTracker,Vr as createAutoModeToolGuardrail,er as createBashClassifierConfig,R as createBashPrefixExtractor,Sn as createBuiltinToolDefinition,xr as createCircuitBreaker,jo as createCtxProxy,et as createCustomProvider,li as createDefaultCodingAgent,sr as createDenialTracker,_ as createExtensionRuntime,yi as createFanoutSchedulerInput,Et as createHandoff,Lt as createInMemorySession,ce as createInteractiveContext,Gi as createKodaXTaskRunner,Xi as createMcpCapabilityId,$i as createMcpTransport,En as createPromptSection,ni as createReasoningPlan,io as createSessionLineage,ki as createToolResultTruncationGuardrail,Di as defaultMcpCacheDir,Po as defaultPolicy,en as disableSelfModify,Xo as drainPendingSwaps,Ti as emitContract,Oi as emitHandoff,Li as emitScoutVerdict,qi as emitVerdict,Mt as estimateTokens,Hn as evaluateProviderPolicy,qo as evaluatorAgent,pr as evaluatorCodingAgent,Ys as exec,le as executeCommand,Mn as executeTool,_o as extractArtifactLedger,zr as extractCommandPrefix,Un as extractComparableUserMessageText,js as extractHtmlTitle,jn as extractPromptComparableText,no as extractTitleFromMessages,Kr as fileSignalCollector,zs as finalizeRetrievalResult,un as findByVersion,mo as findPreviousUserEntryId,fo as forkSessionLineage,Js as formatAgentsForPrompt,Hi as formatParallelDispatchResult,Bt as formatSize,oo as generateSessionId,Oo as generatorAgent,cr as generatorCodingAgent,So as getActiveExtensionRuntime,mt as getAvailableProviderNames,wn as getBuiltinRegisteredToolDefinition,An as getBuiltinToolDefinition,st as getCustomProvider,it as getCustomProviderList,rt as getCustomProviderModels,nt as getCustomProviderNames,rr as getDenialContext,Ii as getFanoutBranch,ie as getGitRoot,xs as getImpactEstimate,Qs as getKodaxGlobalDir,Vi as getMcpCachePaths,ks as getModuleContext,Rs as getProcessContext,Qe as getProvider,Je as getProviderConfiguredCapabilityProfile,He as getProviderConfiguredReasoningCapability,te as getProviderList,ee as getProviderModel,Ye as getProviderModels,_n as getRegisteredToolDefinition,bs as getRepoIntelligenceIndex,ds as getRepoOverview,Es as getRepoRoutingSignals,Pn as getRequiredToolParams,dt as getRuntimeModelProvider,ct as getRuntimeModelProviderNames,ro as getSessionLineagePath,ao as getSessionMessagesFromLineage,Ms as getSymbolContext,vn as getTool,yn as getToolDefinition,In as getToolRegistrations,Ks as getToolResultPolicy,Y as getVersion,Do as hasPendingSwap,H as hydrateProcessEnvFromShell,ui as independentReview,Zn as inferTaskType,es as inspectEditFailure,Ss as inspectRepoIntelligenceRuntime,ot as isCustomProviderName,ir as isDeniedRecently,ut as isKnownProvider,Qi as isParallelDispatchDirective,se as isProviderConfigured,Ze as isProviderName,lt as isRuntimeModelProviderName,mn as listAll,ln as listArtifacts,Cn as listBuiltinToolDefinitions,pn as listConstructed,kn as listToolDefinitions,bn as listTools,Hs as loadAgentsFiles,Ir as loadAutoRules,oe as loadConfig,Uo as loadHandler,Ue as loadReasoningOverride,Pi as markFanoutBranchCancelled,Ci as markFanoutBranchCompleted,Io as mergeArtifactLedger,Ln as orderPromptSections,_r as parseAutoRules,gr as parseClassifierOutput,de as parseCommand,Zt as parseEditToolError,Bo as parseLlmReviewVerdict,ji as parseMcpCapabilityId,Tr as parseModelSpec,Qt as persistToolOutput,To as plannerAgent,lr as plannerCodingAgent,A as prepareRuntimeConfig,Ls as prewarmRepoIntelligenceCaches,ge as processSpecialSyntax,re as rateLimitedCall,cn as readArtifact,Go as readAuditEntries,Ho as readBudget,Zo as readDisableState,jr as readSpeculativeWindowFromEnv,vr as readTrustState,De as reasoningCapabilityToOverride,Yn as reasoningModeToDepth,Xe as reasoningOverrideToCapability,Nn as reconstructMessagesWithToolGuard,br as recordAutoModeAllow,Pr as recordAutoModeBlock,Er as recordBreakerError,nr as recordDenial,hi as registerCodingInvariants,J as registerConfiguredCustomProviders,I as registerConfiguredMcpCapabilityProvider,tt as registerCustomProviders,at as registerModelProvider,Ni as registerOfficialSandboxExtension,Ot as registerPresetDispatcher,hn as registerTool,an as rehydrateActiveArtifacts,Jo as remainingSelfModifyBudget,us as renderChangedScope,_s as renderImpactEstimate,hs as renderModuleContext,ys as renderProcessContext,Tn as renderPromptSections,ls as renderRepoOverview,$s as renderRetrievalResult,vs as renderSymbolContext,Yo as resetBudget,S as resolveAcpLogLevel,Or as resolveClassifierModel,Ko as resolveConstructedAgent,k as resolveProvider,Jn as resolveReasoningMode,ws as resolveRepoIntelligenceMode,As as resolveRepoIntelligenceRuntimeConfig,$n as resolveResilienceConfig,lo as resolveSessionLineageTarget,mi as resolveToolCapability,dn as revoke,go as rewindSessionLineage,gn as rollbackSelfModify,Te as runAcpServer,Vo as runAstRules,ue as runInkInteractiveMode,me as runInteractiveMode,M as runKodaX,No as runLlmReview,Ki as runManagedTask,Wi as runOrchestration,ne as saveConfig,Ve as saveReasoningOverride,Lo as scoutAgent,dr as scoutCodingAgent,Ui as searchMcpCatalog,wo as setActiveExtensionRuntime,co as setSessionLineageActiveEntry,Ur as speculativeRace,on as stage,Ar as stripAssistantText,Xs as stripHtmlToText,nn as testArtifact,rs as toolAskUserQuestion,ss as toolBash,fs as toolChangedDiff,gs as toolChangedScope,Ws as toolCodeSearch,Yt as toolEdit,os as toolGlob,ns as toolGrep,Fs as toolImpactEstimate,ts as toolInsertAfterAnchor,Ts as toolModuleContext,gi as toolPermission,qs as toolProcessContext,Ht as toolRead,ms as toolRepoOverview,Gs as toolSemanticLookup,Os as toolSymbolContext,is as toolUndo,Ns as toolWebFetch,Bs as toolWebSearch,Jt as toolWrite,pe as touchContext,Nt as truncateHead,Gt as truncateLine,Wt as truncateTail,yr as trustProjectRules,Ft as validateAndFixToolHistory,Ji as validateSubtaskIndependence,$o as validateToolSchemaForProvider,Cs as warmRepoIntelligenceRuntime,Zs as webhook};
9
+ `))},"onError"),beforeToolExecute:i(async(s,n,r)=>{let a=await this.evaluateToolPermission(e,s,n,r?.toolId);return a.allowed?!0:a.override??!1},"beforeToolExecute")}}}async evaluateToolPermission(e,t,s,n){if(this.events.emit({type:"tool_permission_evaluated",sessionId:e.sessionId,tool:t,toolId:n??null,permissionMode:e.permissionMode}),t==="bash"){let l=typeof s.command=="string"?s.command:"";if(L(l))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_read_only_bash"}),{allowed:!0};if(await T(t,s,e.alwaysAllowTools,this.bashPrefixExtractor))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_remembered"}),{allowed:!0}}if(e.permissionMode==="plan"){let l=X(t,s,e.cwd);return l?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"blocked_plan_mode"}),{allowed:!1,override:`${l} Do not try to modify files while planning. Finish the plan first, then hand off to a writable mode.`}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_plan_mode"}),{allowed:!0})}let r=b(t)&&typeof s.path=="string"&&q(f.resolve(e.cwd,s.path),e.cwd),a=E(e.permissionMode).has(t),d=e.permissionMode==="auto-in-project"&&(b(t)&&typeof s.path=="string"&&!F(s.path,e.cwd)||t==="bash"&&typeof s.command=="string"&&D(s.command,e.cwd).dangerous);return!r&&!a&&!d?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"auto_allowed_policy"}),{allowed:!0}):await this.requestPermissionFromClient(e,t,s,n)}async requestPermissionFromClient(e,t,s,n){if(!this.connection)return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:n??null,outcome:"request_failed_disconnected"}),{allowed:!1,override:"[Cancelled] ACP client is disconnected, so the permission request could not be completed."};let r=[{optionId:"allow_once",kind:"allow_once",name:"Allow once"},{optionId:"allow_always",kind:"allow_always",name:"Always allow"},{optionId:"reject_once",kind:"reject_once",name:"Reject"}],a={toolCallId:n??V(),title:t,kind:z(t),rawInput:s,locations:B(t,s),status:"pending"},d;this.events.emit({type:"permission_requested",sessionId:e.sessionId,tool:t,toolId:a.toolCallId});try{d=await this.connection.requestPermission({sessionId:e.sessionId,toolCall:a,options:r})}catch{return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_failed_incomplete"}),{allowed:!1,override:"[Cancelled] ACP client did not complete the permission request. Operation failed closed."}}return d.outcome.outcome!=="selected"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_dismissed"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(d.outcome.optionId==="allow_always"&&t==="bash"&&(e.alwaysAllowTools=Array.from(new Set([...e.alwaysAllowTools,O(t,s,!1)])).filter(Boolean)),d.outcome.optionId==="reject_once"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_rejected"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_granted",remember:d.outcome.optionId==="allow_always"}),{allowed:!0}))}async sendTextChunk(e,t){await this.sendSessionUpdate({sessionId:e,update:{sessionUpdate:"agent_message_chunk",content:{type:"text",text:t}}})}async sendSessionUpdate(e){!this.connection||this.connection.signal.aborted||await this.connection.sessionUpdate(e)}dispatchNotification(e,t,s){s.catch(n=>{if(!this.connection||this.connection.signal.aborted)return;let r=n instanceof Error?n.message:String(n);this.events.emit({type:"notification_failed",sessionId:t,label:e,error:r})})}};async function Oe(o={}){let e=new y(o),t=Ae.toWeb(v.stdin),s=we.toWeb(v.stdout);e.attach(t,s),await e.waitForClose()}i(Oe,"runAcpServer");export{U as ACP_LOG_LEVELS,Er as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD,Lr as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD,g as AcpEventEmitter,m as AcpLogger,Yr as BASH_POLICY_SPEC,Kr as BREAKER_ERROR_THRESHOLD,Dr as BREAKER_WINDOW_MS,de as BUILTIN_COMMANDS,xs as CANCELLED_TOOL_RESULT_MESSAGE,Rs as CANCELLED_TOOL_RESULT_PREFIX,Ar as CODING_AGENT_MARKER,$i as CODING_INVARIANTS,Ti as CODING_SUMMARY_PROMPT,Oi as CODING_UPDATE_SUMMARY_PROMPT,on as CapabilityDeniedError,Bi as Client,nn as ConstructionManifestError,qi as DEFAULT_CODING_AGENT_NAME,cr as DEFAULT_DANGEROUS_PATTERNS,tn as DEFAULT_HANDLER_TIMEOUT_MS,fi as DEFAULT_RESILIENCE_CONFIG,lr as DEFAULT_SAFE_PATTERNS,fn as DEFAULT_SELF_MODIFY_BUDGET,Gr as DEFAULT_SPECULATIVE_WINDOW_MS,Ls as DEFAULT_TOOL_OUTPUT_MAX_BYTES,Es as DEFAULT_TOOL_OUTPUT_MAX_LINES,zt as DefaultSummaryCompaction,yr as EMIT_VERDICT_TOOL_NAME,Mt as ErrorCategory,w as FileSessionStorage,Wo as GENERATOR_AGENT_NAME,Kt as KODAX_API_MIN_INTERVAL,H as KODAX_CONFIG_FILE,C as KODAX_DEFAULT_PROVIDER,Et as KODAX_DEFAULT_TIMEOUT,G as KODAX_DIR,Lt as KODAX_HARD_TIMEOUT,qt as KODAX_MAX_INCOMPLETE_RETRIES,Tt as KODAX_MAX_RETRIES,xt as KODAX_MAX_TOKENS,Qe as KODAX_PROVIDERS,Ge as KODAX_PROVIDER_SNAPSHOTS,De as KODAX_REASONING_MODE_SEQUENCE,Ot as KODAX_RETRY_BASE_DELAY,Q as KODAX_SESSIONS_DIR,Ft as KODAX_STAGGER_DELAY,Xn as KODAX_TOOLS,ee as KODAX_VERSION,y as KodaXAcpServer,We as KodaXAnthropicCompatProvider,Be as KodaXBaseProvider,Bi as KodaXClient,qe as KodaXError,Fn as KodaXExtensionRuntime,Ne as KodaXOpenAICompatProvider,Fe as KodaXProviderError,Ke as KodaXRateLimitError,Ct as KodaXSessionError,kt as KodaXTerminalError,Pt as KodaXToolError,ls as LINEAGE_ENTRY_TYPES,ps as LineageCompaction,cs as LineageExtension,rs as McpCapabilityProvider,as as McpManager,is as McpServerRuntime,Bo as PLANNER_AGENT_NAME,Dt as PROMISE_PATTERN,oi as PROMPT_SECTION_REGISTRY,Ir as PROTOCOL_EMITTER_TOOLS,Ii as ProviderRecoveryCoordinator,Ts as READ_DEFAULT_LIMIT,qs as READ_MAX_LINE_CHARS,Os as READ_PREFLIGHT_SIZE_BYTES,uo as REPOINTEL_DEFAULT_ENDPOINT,Wt as Runner,zo as SCOUT_AGENT_NAME,si as SYSTEM_PROMPT,yi as StableBoundaryTracker,Qo as TASK_ENGINE_ROLE_AGENTS,er as TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME,No as WORKER_AGENT_NAME,wn as _resetRuntimeForTesting,Pn as activate,so as analyzeChangedScope,mn as appendAuditEntry,_s as appendSessionLineageLabel,Hi as applyFanoutBranchTransition,Is as applySessionCompaction,xo as applyToolResultGuardrail,Cs as archiveOldIslands,Ji as assignFanoutBranchWorker,Fr as autoModeDenialShouldFallback,Br as bashSignalCollector,Xi as boundedRevise,Ur as breakerShouldFallback,ji as budgetCeiling,Ri as buildAmaControllerDecision,di as buildCapabilityContextSections,wr as buildClassifierPrompt,ki as buildFallbackRoutingDecision,Ni as buildFanoutSchedulerPlan,cn as buildLlmReviewPrompt,ui as buildPromptMessageContent,xi as buildPromptOverlay,ai as buildPromptSnapshot,Ai as buildProviderCapabilitySnapshot,Mi as buildProviderPolicyHintsForDecision,wi as buildProviderPolicyPromptNotes,Ue as buildReasoningOverrideKey,to as buildRepoIntelligenceContext,vo as buildRepoIntelligenceIndex,Ys as buildRepoOverview,bs as buildSessionTree,ci as buildSystemPrompt,li as buildSystemPromptSnapshot,zr as checkAbsoluteDeny,pi as checkIncompleteToolCalls,Li as checkPromiseSignal,br as classify,ur as classifyBashCommand,Rt as classifyError,vi as classifyResilienceError,Yt as cleanupIncompleteToolCalls,ze as clearReasoningOverride,_t as clearRuntimeModelProviders,Nr as collectAllSignals,gr as computeInputSignature,Pr as computeRulesFingerprint,An as configureRuntime,Oo as convertCapabilityReadResult,To as convertProviderSearchResults,Qi as countActiveFanoutBranches,Ps as countActiveLineageMessages,jt as countTokens,Ut as createAgent,Tr as createAutoModeDenialTracker,Jr as createAutoModeToolGuardrail,pr as createBashClassifierConfig,x as createBashPrefixExtractor,Nn as createBuiltinToolDefinition,Xr as createCircuitBreaker,rn as createCtxProxy,it as createCustomProvider,Fi as createDefaultCodingAgent,mr as createDenialTracker,_ as createExtensionRuntime,Wi as createFanoutSchedulerInput,Vt as createHandoff,$t as createInMemorySession,pe as createInteractiveContext,ir as createKodaXTaskRunner,es as createMcpCapabilityId,ds as createMcpManager,ns as createMcpTransport,ni as createPromptSection,Ei as createReasoningPlan,Ki as createSessionControl,gs as createSessionLineage,tr as createToolResultTruncationGuardrail,Zt as defaultMcpCacheDir,sn as defaultPolicy,In as disableSelfModify,On as discoverMarkdownAgents,Yo as drainPendingSwaps,_r as emitVerdict,Xt as estimateTokens,Si as evaluateProviderPolicy,Zo as exec,ce as executeCommand,ti as executeTool,ks as extractArtifactLedger,Zr as extractCommandPrefix,gi as extractComparableUserMessageText,Lo as extractHtmlTitle,mi as extractPromptComparableText,ms as extractTitleFromMessages,Wr as fileSignalCollector,Fo as finalizeRetrievalResult,En as findByVersion,As as findPreviousUserEntryId,Ss as forkSessionLineage,$o as formatAgentsForPrompt,ar as formatParallelDispatchResult,Fs as formatSize,us as generateSessionId,Dn as getActiveExtensionRuntime,Gt as getAgentConfigHome,Qt as getAgentConfigPath,Qn as getAllRegisteredTools,Ht as getAppDataDir,At as getAvailableProviderNames,Wn as getBuiltinRegisteredToolDefinition,Bn as getBuiltinToolDefinition,mt as getCustomModelCapabilities,at as getCustomProvider,ct as getCustomProviderList,ut as getCustomProviderModelDescriptors,pt as getCustomProviderModels,lt as getCustomProviderNames,vr as getDenialContext,Gi as getFanoutBranch,re as getGitRoot,wo as getImpactEstimate,Uo as getKodaxGlobalDir,os as getMcpCachePaths,st as getModelCapabilities,_o as getModuleContext,Ao as getProcessContext,He as getProvider,Ye as getProviderConfiguredCapabilityProfile,Je as getProviderConfiguredReasoningCapability,se as getProviderList,te as getProviderModel,tt as getProviderModelDescriptors,Ze as getProviderModels,$n as getRegisteredToolDefinition,yo as getRepoIntelligenceIndex,Zs as getRepoOverview,So as getRepoRoutingSignals,Yn as getRequiredToolParams,ht as getRuntimeModelProvider,yt as getRuntimeModelProviderNames,fs as getSessionLineagePath,hs as getSessionMessagesFromLineage,Io as getSymbolContext,Un as getTool,Vn as getToolDefinition,zn as getToolRegistrations,Ro as getToolResultPolicy,Z as getVersion,Jo as hasPendingSwap,J as hydrateProcessEnvFromShell,Ci as inferTaskType,Bs as inspectEditFailure,fo as inspectRepoIntelligenceRuntime,dt as isCustomProviderName,hr as isDeniedRecently,It as isKnownProvider,rr as isParallelDispatchDirective,oe as isProviderConfigured,et as isProviderName,vt as isRuntimeModelProviderName,M as isToolFileMutation,Jn as isToolMutation,Hn as isToolPlanModeAllowed,Ln as listAll,bt as listAllModelCapabilities,Mn as listArtifacts,ot as listBuiltinModelCapabilities,Gn as listBuiltinToolDefinitions,xn as listConstructed,gt as listCustomProviderModelCapabilities,ei as listToolDefinitions,Zn as listTools,Vo as loadAgentsFiles,Tn as loadAgentsFromMarkdown,Rr as loadAutoRules,ne as loadConfig,an as loadHandler,Ve as loadReasoningOverride,Zi as markFanoutBranchCancelled,Yi as markFanoutBranchCompleted,Ms as mergeArtifactLedger,ii as orderPromptSections,Mr as parseAutoRules,Sr as parseClassifierOutput,le as parseCommand,zs as parseEditToolError,pn as parseLlmReviewVerdict,ts as parseMcpCapabilityId,Vr as parseModelSpec,js as persistToolOutput,A as prepareRuntimeConfig,bo as prewarmRepoIntelligenceCaches,fe as processSpecialSyntax,ae as rateLimitedCall,Rn as readArtifact,gn as readAuditEntries,hn as readBudget,_n as readDisableState,Qr as readSpeculativeWindowFromEnv,Cr as readTrustState,Xe as reasoningCapabilityToOverride,Pi as reasoningModeToDepth,je as reasoningOverrideToCapability,_i as reconstructMessagesWithToolGuard,qr as recordAutoModeAllow,Or as recordAutoModeBlock,jr as recordBreakerError,fr as recordDenial,zi as registerCodingInvariants,Y as registerConfiguredCustomProviders,I as registerConfiguredMcpCapabilityProvider,rt as registerCustomProviders,ft as registerModelProvider,or as registerOfficialSandboxExtension,Bt as registerPresetDispatcher,jn as registerTool,Cn as rehydrateActiveArtifacts,vn as remainingSelfModifyBudget,oo as renderChangedScope,po as renderImpactEstimate,ao as renderModuleContext,co as renderProcessContext,ri as renderPromptSections,eo as renderRepoOverview,qo as renderRetrievalResult,lo as renderSymbolContext,yn as resetBudget,S as resolveAcpLogLevel,$r as resolveClassifierModel,Ho as resolveConstructedAgent,St as resolveModelCapabilities,k as resolveProvider,wt as resolveProviderModelDescriptors,bi as resolveReasoningMode,go as resolveRepoIntelligenceMode,mo as resolveRepoIntelligenceRuntimeConfig,hi as resolveResilienceConfig,vs as resolveSessionLineageTarget,Ui as resolveToolCapability,kn as revoke,ws as rewindSessionLineage,qn as rollbackSelfModify,Oe as runAcpServer,dn as runAstRules,me as runInkInteractiveMode,ge as runInteractiveMode,R as runKodaX,un as runLlmReview,sr as runManagedTask,nr as runOrchestration,ie as saveConfig,$e as saveReasoningOverride,ss as searchMcpCatalog,Kn as setActiveExtensionRuntime,Nt as setAgentConfigHome,ys as setSessionLineageActiveEntry,Hr as speculativeRace,Sn as stage,Di as startKodaX,xr as stripAssistantText,Eo as stripHtmlToText,bn as testArtifact,Js as toolAskUserQuestion,Ns as toolBash,ro as toolChangedDiff,io as toolChangedScope,Xo as toolCodeSearch,$s as toolEdit,Gs as toolGlob,Qs as toolGrep,Mo as toolImpactEstimate,Ws as toolInsertAfterAnchor,Po as toolModuleContext,Vi as toolPermission,ko as toolProcessContext,Us as toolRead,no as toolRepoOverview,jo as toolSemanticLookup,Co as toolSymbolContext,Hs as toolUndo,Do as toolWebFetch,Ko as toolWebSearch,Vs as toolWrite,ue as touchContext,Ks as truncateHead,Xs as truncateLine,Ds as truncateTail,kr as trustProjectRules,Jt as validateAndFixToolHistory,nt as validateCustomProviderConfig,dr as validateSubtaskIndependence,ln as validateToolSchemaForProvider,ho as warmRepoIntelligenceRuntime,en as webhook,Go as workerAgent};