clavue 9.3.2 → 9.4.0
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __createRequire } from "node:module";
|
|
2
2
|
const require = __createRequire(import.meta.url);
|
|
3
|
-
// clavue v9.
|
|
3
|
+
// clavue v9.4.0 openai-responses-adapter (built from source)
|
|
4
4
|
var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __knownSymbol=(name,symbol2)=>(symbol2=Symbol[name])?symbol2:Symbol.for("Symbol."+name),__typeError=msg=>{throw TypeError(msg)};var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0}),__require=(x2=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x2,{get:(a2,b)=>(typeof require<"u"?require:a2)[b]}):x2)(function(x2){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+x2+'" is not supported')});var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all3)=>{for(var name in all3)__defProp(target,name,{get:all3[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var __using=(stack,value,async)=>{if(value!=null){typeof value!="object"&&typeof value!="function"&&__typeError("Object expected");var dispose,inner;async&&(dispose=value[__knownSymbol("asyncDispose")]),dispose===void 0&&(dispose=value[__knownSymbol("dispose")],async&&(inner=dispose)),typeof dispose!="function"&&__typeError("Object not disposable"),inner&&(dispose=function(){try{inner.call(this)}catch(e2){return Promise.reject(e2)}}),stack.push([async,dispose,value])}else async&&stack.push([async]);return value},__callDispose=(stack,error40,hasError)=>{var E=typeof SuppressedError=="function"?SuppressedError:function(e2,s2,m2,_){return _=Error(m2),_.name="SuppressedError",_.error=e2,_.suppressed=s2,_},fail=e2=>error40=hasError?new E(e2,error40,"An error was suppressed during disposal"):(hasError=!0,e2),next=it=>{for(;it=stack.pop();)try{var result2=it[1]&&it[1].call(it[2]);if(it[0])return Promise.resolve(result2).then(next,e2=>(fail(e2),next()))}catch(e2){fail(e2)}if(hasError)throw error40};return next()};var freeGlobal,freeGlobal_default,init_freeGlobal=__esm({"../../node_modules/lodash-es/_freeGlobal.js"(){freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeGlobal_default=freeGlobal}});var freeSelf,root,root_default,init_root=__esm({"../../node_modules/lodash-es/_root.js"(){init_freeGlobal();freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal_default||freeSelf||Function("return this")(),root_default=root}});var Symbol2,Symbol_default,init_Symbol=__esm({"../../node_modules/lodash-es/_Symbol.js"(){init_root();Symbol2=root_default.Symbol,Symbol_default=Symbol2}});function getRawTag(value){var isOwn=hasOwnProperty.call(value,symToStringTag),tag=value[symToStringTag];try{value[symToStringTag]=void 0;var unmasked=!0}catch{}var result2=nativeObjectToString.call(value);return unmasked&&(isOwn?value[symToStringTag]=tag:delete value[symToStringTag]),result2}var objectProto,hasOwnProperty,nativeObjectToString,symToStringTag,getRawTag_default,init_getRawTag=__esm({"../../node_modules/lodash-es/_getRawTag.js"(){init_Symbol();objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeObjectToString=objectProto.toString,symToStringTag=Symbol_default?Symbol_default.toStringTag:void 0;__name(getRawTag,"getRawTag");getRawTag_default=getRawTag}});function objectToString(value){return nativeObjectToString2.call(value)}var objectProto2,nativeObjectToString2,objectToString_default,init_objectToString=__esm({"../../node_modules/lodash-es/_objectToString.js"(){objectProto2=Object.prototype,nativeObjectToString2=objectProto2.toString;__name(objectToString,"objectToString");objectToString_default=objectToString}});function baseGetTag(value){return value==null?value===void 0?undefinedTag:nullTag:symToStringTag2&&symToStringTag2 in Object(value)?getRawTag_default(value):objectToString_default(value)}var nullTag,undefinedTag,symToStringTag2,baseGetTag_default,init_baseGetTag=__esm({"../../node_modules/lodash-es/_baseGetTag.js"(){init_Symbol();init_getRawTag();init_objectToString();nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag2=Symbol_default?Symbol_default.toStringTag:void 0;__name(baseGetTag,"baseGetTag");baseGetTag_default=baseGetTag}});function isObject(value){var type=typeof value;return value!=null&&(type=="object"||type=="function")}var isObject_default,init_isObject=__esm({"../../node_modules/lodash-es/isObject.js"(){__name(isObject,"isObject");isObject_default=isObject}});function isFunction(value){if(!isObject_default(value))return!1;var tag=baseGetTag_default(value);return tag==funcTag||tag==genTag||tag==asyncTag||tag==proxyTag}var asyncTag,funcTag,genTag,proxyTag,isFunction_default,init_isFunction=__esm({"../../node_modules/lodash-es/isFunction.js"(){init_baseGetTag();init_isObject();asyncTag="[object AsyncFunction]",funcTag="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";__name(isFunction,"isFunction");isFunction_default=isFunction}});var coreJsData,coreJsData_default,init_coreJsData=__esm({"../../node_modules/lodash-es/_coreJsData.js"(){init_root();coreJsData=root_default["__core-js_shared__"],coreJsData_default=coreJsData}});function isMasked(func){return!!maskSrcKey&&maskSrcKey in func}var maskSrcKey,isMasked_default,init_isMasked=__esm({"../../node_modules/lodash-es/_isMasked.js"(){init_coreJsData();maskSrcKey=(function(){var uid=/[^.]+$/.exec(coreJsData_default&&coreJsData_default.keys&&coreJsData_default.keys.IE_PROTO||"");return uid?"Symbol(src)_1."+uid:""})();__name(isMasked,"isMasked");isMasked_default=isMasked}});function toSource(func){if(func!=null){try{return funcToString.call(func)}catch{}try{return func+""}catch{}}return""}var funcProto,funcToString,toSource_default,init_toSource=__esm({"../../node_modules/lodash-es/_toSource.js"(){funcProto=Function.prototype,funcToString=funcProto.toString;__name(toSource,"toSource");toSource_default=toSource}});function baseIsNative(value){if(!isObject_default(value)||isMasked_default(value))return!1;var pattern=isFunction_default(value)?reIsNative:reIsHostCtor;return pattern.test(toSource_default(value))}var reRegExpChar,reIsHostCtor,funcProto2,objectProto3,funcToString2,hasOwnProperty2,reIsNative,baseIsNative_default,init_baseIsNative=__esm({"../../node_modules/lodash-es/_baseIsNative.js"(){init_isFunction();init_isMasked();init_isObject();init_toSource();reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto2=Function.prototype,objectProto3=Object.prototype,funcToString2=funcProto2.toString,hasOwnProperty2=objectProto3.hasOwnProperty,reIsNative=RegExp("^"+funcToString2.call(hasOwnProperty2).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");__name(baseIsNative,"baseIsNative");baseIsNative_default=baseIsNative}});function getValue(object2,key){return object2?.[key]}var getValue_default,init_getValue=__esm({"../../node_modules/lodash-es/_getValue.js"(){__name(getValue,"getValue");getValue_default=getValue}});function getNative(object2,key){var value=getValue_default(object2,key);return baseIsNative_default(value)?value:void 0}var getNative_default,init_getNative=__esm({"../../node_modules/lodash-es/_getNative.js"(){init_baseIsNative();init_getValue();__name(getNative,"getNative");getNative_default=getNative}});var nativeCreate,nativeCreate_default,init_nativeCreate=__esm({"../../node_modules/lodash-es/_nativeCreate.js"(){init_getNative();nativeCreate=getNative_default(Object,"create"),nativeCreate_default=nativeCreate}});function hashClear(){this.__data__=nativeCreate_default?nativeCreate_default(null):{},this.size=0}var hashClear_default,init_hashClear=__esm({"../../node_modules/lodash-es/_hashClear.js"(){init_nativeCreate();__name(hashClear,"hashClear");hashClear_default=hashClear}});function hashDelete(key){var result2=this.has(key)&&delete this.__data__[key];return this.size-=result2?1:0,result2}var hashDelete_default,init_hashDelete=__esm({"../../node_modules/lodash-es/_hashDelete.js"(){__name(hashDelete,"hashDelete");hashDelete_default=hashDelete}});function hashGet(key){var data=this.__data__;if(nativeCreate_default){var result2=data[key];return result2===HASH_UNDEFINED?void 0:result2}return hasOwnProperty3.call(data,key)?data[key]:void 0}var HASH_UNDEFINED,objectProto4,hasOwnProperty3,hashGet_default,init_hashGet=__esm({"../../node_modules/lodash-es/_hashGet.js"(){init_nativeCreate();HASH_UNDEFINED="__lodash_hash_undefined__",objectProto4=Object.prototype,hasOwnProperty3=objectProto4.hasOwnProperty;__name(hashGet,"hashGet");hashGet_default=hashGet}});function hashHas(key){var data=this.__data__;return nativeCreate_default?data[key]!==void 0:hasOwnProperty4.call(data,key)}var objectProto5,hasOwnProperty4,hashHas_default,init_hashHas=__esm({"../../node_modules/lodash-es/_hashHas.js"(){init_nativeCreate();objectProto5=Object.prototype,hasOwnProperty4=objectProto5.hasOwnProperty;__name(hashHas,"hashHas");hashHas_default=hashHas}});function hashSet(key,value){var data=this.__data__;return this.size+=this.has(key)?0:1,data[key]=nativeCreate_default&&value===void 0?HASH_UNDEFINED2:value,this}var HASH_UNDEFINED2,hashSet_default,init_hashSet=__esm({"../../node_modules/lodash-es/_hashSet.js"(){init_nativeCreate();HASH_UNDEFINED2="__lodash_hash_undefined__";__name(hashSet,"hashSet");hashSet_default=hashSet}});function Hash(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var Hash_default,init_Hash=__esm({"../../node_modules/lodash-es/_Hash.js"(){init_hashClear();init_hashDelete();init_hashGet();init_hashHas();init_hashSet();__name(Hash,"Hash");Hash.prototype.clear=hashClear_default;Hash.prototype.delete=hashDelete_default;Hash.prototype.get=hashGet_default;Hash.prototype.has=hashHas_default;Hash.prototype.set=hashSet_default;Hash_default=Hash}});function listCacheClear(){this.__data__=[],this.size=0}var listCacheClear_default,init_listCacheClear=__esm({"../../node_modules/lodash-es/_listCacheClear.js"(){__name(listCacheClear,"listCacheClear");listCacheClear_default=listCacheClear}});function eq(value,other){return value===other||value!==value&&other!==other}var eq_default,init_eq=__esm({"../../node_modules/lodash-es/eq.js"(){__name(eq,"eq");eq_default=eq}});function assocIndexOf(array2,key){for(var length=array2.length;length--;)if(eq_default(array2[length][0],key))return length;return-1}var assocIndexOf_default,init_assocIndexOf=__esm({"../../node_modules/lodash-es/_assocIndexOf.js"(){init_eq();__name(assocIndexOf,"assocIndexOf");assocIndexOf_default=assocIndexOf}});function listCacheDelete(key){var data=this.__data__,index=assocIndexOf_default(data,key);if(index<0)return!1;var lastIndex=data.length-1;return index==lastIndex?data.pop():splice.call(data,index,1),--this.size,!0}var arrayProto,splice,listCacheDelete_default,init_listCacheDelete=__esm({"../../node_modules/lodash-es/_listCacheDelete.js"(){init_assocIndexOf();arrayProto=Array.prototype,splice=arrayProto.splice;__name(listCacheDelete,"listCacheDelete");listCacheDelete_default=listCacheDelete}});function listCacheGet(key){var data=this.__data__,index=assocIndexOf_default(data,key);return index<0?void 0:data[index][1]}var listCacheGet_default,init_listCacheGet=__esm({"../../node_modules/lodash-es/_listCacheGet.js"(){init_assocIndexOf();__name(listCacheGet,"listCacheGet");listCacheGet_default=listCacheGet}});function listCacheHas(key){return assocIndexOf_default(this.__data__,key)>-1}var listCacheHas_default,init_listCacheHas=__esm({"../../node_modules/lodash-es/_listCacheHas.js"(){init_assocIndexOf();__name(listCacheHas,"listCacheHas");listCacheHas_default=listCacheHas}});function listCacheSet(key,value){var data=this.__data__,index=assocIndexOf_default(data,key);return index<0?(++this.size,data.push([key,value])):data[index][1]=value,this}var listCacheSet_default,init_listCacheSet=__esm({"../../node_modules/lodash-es/_listCacheSet.js"(){init_assocIndexOf();__name(listCacheSet,"listCacheSet");listCacheSet_default=listCacheSet}});function ListCache(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var ListCache_default,init_ListCache=__esm({"../../node_modules/lodash-es/_ListCache.js"(){init_listCacheClear();init_listCacheDelete();init_listCacheGet();init_listCacheHas();init_listCacheSet();__name(ListCache,"ListCache");ListCache.prototype.clear=listCacheClear_default;ListCache.prototype.delete=listCacheDelete_default;ListCache.prototype.get=listCacheGet_default;ListCache.prototype.has=listCacheHas_default;ListCache.prototype.set=listCacheSet_default;ListCache_default=ListCache}});var Map2,Map_default,init_Map=__esm({"../../node_modules/lodash-es/_Map.js"(){init_getNative();init_root();Map2=getNative_default(root_default,"Map"),Map_default=Map2}});function mapCacheClear(){this.size=0,this.__data__={hash:new Hash_default,map:new(Map_default||ListCache_default),string:new Hash_default}}var mapCacheClear_default,init_mapCacheClear=__esm({"../../node_modules/lodash-es/_mapCacheClear.js"(){init_Hash();init_ListCache();init_Map();__name(mapCacheClear,"mapCacheClear");mapCacheClear_default=mapCacheClear}});function isKeyable(value){var type=typeof value;return type=="string"||type=="number"||type=="symbol"||type=="boolean"?value!=="__proto__":value===null}var isKeyable_default,init_isKeyable=__esm({"../../node_modules/lodash-es/_isKeyable.js"(){__name(isKeyable,"isKeyable");isKeyable_default=isKeyable}});function getMapData(map3,key){var data=map3.__data__;return isKeyable_default(key)?data[typeof key=="string"?"string":"hash"]:data.map}var getMapData_default,init_getMapData=__esm({"../../node_modules/lodash-es/_getMapData.js"(){init_isKeyable();__name(getMapData,"getMapData");getMapData_default=getMapData}});function mapCacheDelete(key){var result2=getMapData_default(this,key).delete(key);return this.size-=result2?1:0,result2}var mapCacheDelete_default,init_mapCacheDelete=__esm({"../../node_modules/lodash-es/_mapCacheDelete.js"(){init_getMapData();__name(mapCacheDelete,"mapCacheDelete");mapCacheDelete_default=mapCacheDelete}});function mapCacheGet(key){return getMapData_default(this,key).get(key)}var mapCacheGet_default,init_mapCacheGet=__esm({"../../node_modules/lodash-es/_mapCacheGet.js"(){init_getMapData();__name(mapCacheGet,"mapCacheGet");mapCacheGet_default=mapCacheGet}});function mapCacheHas(key){return getMapData_default(this,key).has(key)}var mapCacheHas_default,init_mapCacheHas=__esm({"../../node_modules/lodash-es/_mapCacheHas.js"(){init_getMapData();__name(mapCacheHas,"mapCacheHas");mapCacheHas_default=mapCacheHas}});function mapCacheSet(key,value){var data=getMapData_default(this,key),size2=data.size;return data.set(key,value),this.size+=data.size==size2?0:1,this}var mapCacheSet_default,init_mapCacheSet=__esm({"../../node_modules/lodash-es/_mapCacheSet.js"(){init_getMapData();__name(mapCacheSet,"mapCacheSet");mapCacheSet_default=mapCacheSet}});function MapCache(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var MapCache_default,init_MapCache=__esm({"../../node_modules/lodash-es/_MapCache.js"(){init_mapCacheClear();init_mapCacheDelete();init_mapCacheGet();init_mapCacheHas();init_mapCacheSet();__name(MapCache,"MapCache");MapCache.prototype.clear=mapCacheClear_default;MapCache.prototype.delete=mapCacheDelete_default;MapCache.prototype.get=mapCacheGet_default;MapCache.prototype.has=mapCacheHas_default;MapCache.prototype.set=mapCacheSet_default;MapCache_default=MapCache}});function memoize(func,resolver){if(typeof func!="function"||resolver!=null&&typeof resolver!="function")throw new TypeError(FUNC_ERROR_TEXT);var memoized=__name(function(){var args=arguments,key=resolver?resolver.apply(this,args):args[0],cache2=memoized.cache;if(cache2.has(key))return cache2.get(key);var result2=func.apply(this,args);return memoized.cache=cache2.set(key,result2)||cache2,result2},"memoized");return memoized.cache=new(memoize.Cache||MapCache_default),memoized}var FUNC_ERROR_TEXT,memoize_default,init_memoize=__esm({"../../node_modules/lodash-es/memoize.js"(){init_MapCache();FUNC_ERROR_TEXT="Expected a function";__name(memoize,"memoize");memoize.Cache=MapCache_default;memoize_default=memoize}});function arrayMap(array2,iteratee2){for(var index=-1,length=array2==null?0:array2.length,result2=Array(length);++index<length;)result2[index]=iteratee2(array2[index],index,array2);return result2}var arrayMap_default,init_arrayMap=__esm({"../../node_modules/lodash-es/_arrayMap.js"(){__name(arrayMap,"arrayMap");arrayMap_default=arrayMap}});function stackClear(){this.__data__=new ListCache_default,this.size=0}var stackClear_default,init_stackClear=__esm({"../../node_modules/lodash-es/_stackClear.js"(){init_ListCache();__name(stackClear,"stackClear");stackClear_default=stackClear}});function stackDelete(key){var data=this.__data__,result2=data.delete(key);return this.size=data.size,result2}var stackDelete_default,init_stackDelete=__esm({"../../node_modules/lodash-es/_stackDelete.js"(){__name(stackDelete,"stackDelete");stackDelete_default=stackDelete}});function stackGet(key){return this.__data__.get(key)}var stackGet_default,init_stackGet=__esm({"../../node_modules/lodash-es/_stackGet.js"(){__name(stackGet,"stackGet");stackGet_default=stackGet}});function stackHas(key){return this.__data__.has(key)}var stackHas_default,init_stackHas=__esm({"../../node_modules/lodash-es/_stackHas.js"(){__name(stackHas,"stackHas");stackHas_default=stackHas}});function stackSet(key,value){var data=this.__data__;if(data instanceof ListCache_default){var pairs=data.__data__;if(!Map_default||pairs.length<LARGE_ARRAY_SIZE-1)return pairs.push([key,value]),this.size=++data.size,this;data=this.__data__=new MapCache_default(pairs)}return data.set(key,value),this.size=data.size,this}var LARGE_ARRAY_SIZE,stackSet_default,init_stackSet=__esm({"../../node_modules/lodash-es/_stackSet.js"(){init_ListCache();init_Map();init_MapCache();LARGE_ARRAY_SIZE=200;__name(stackSet,"stackSet");stackSet_default=stackSet}});function Stack(entries){var data=this.__data__=new ListCache_default(entries);this.size=data.size}var Stack_default,init_Stack=__esm({"../../node_modules/lodash-es/_Stack.js"(){init_ListCache();init_stackClear();init_stackDelete();init_stackGet();init_stackHas();init_stackSet();__name(Stack,"Stack");Stack.prototype.clear=stackClear_default;Stack.prototype.delete=stackDelete_default;Stack.prototype.get=stackGet_default;Stack.prototype.has=stackHas_default;Stack.prototype.set=stackSet_default;Stack_default=Stack}});function setCacheAdd(value){return this.__data__.set(value,HASH_UNDEFINED3),this}var HASH_UNDEFINED3,setCacheAdd_default,init_setCacheAdd=__esm({"../../node_modules/lodash-es/_setCacheAdd.js"(){HASH_UNDEFINED3="__lodash_hash_undefined__";__name(setCacheAdd,"setCacheAdd");setCacheAdd_default=setCacheAdd}});function setCacheHas(value){return this.__data__.has(value)}var setCacheHas_default,init_setCacheHas=__esm({"../../node_modules/lodash-es/_setCacheHas.js"(){__name(setCacheHas,"setCacheHas");setCacheHas_default=setCacheHas}});function SetCache(values2){var index=-1,length=values2==null?0:values2.length;for(this.__data__=new MapCache_default;++index<length;)this.add(values2[index])}var SetCache_default,init_SetCache=__esm({"../../node_modules/lodash-es/_SetCache.js"(){init_MapCache();init_setCacheAdd();init_setCacheHas();__name(SetCache,"SetCache");SetCache.prototype.add=SetCache.prototype.push=setCacheAdd_default;SetCache.prototype.has=setCacheHas_default;SetCache_default=SetCache}});function arraySome(array2,predicate){for(var index=-1,length=array2==null?0:array2.length;++index<length;)if(predicate(array2[index],index,array2))return!0;return!1}var arraySome_default,init_arraySome=__esm({"../../node_modules/lodash-es/_arraySome.js"(){__name(arraySome,"arraySome");arraySome_default=arraySome}});function cacheHas(cache2,key){return cache2.has(key)}var cacheHas_default,init_cacheHas=__esm({"../../node_modules/lodash-es/_cacheHas.js"(){__name(cacheHas,"cacheHas");cacheHas_default=cacheHas}});function equalArrays(array2,other,bitmask,customizer,equalFunc,stack){var isPartial=bitmask&COMPARE_PARTIAL_FLAG,arrLength=array2.length,othLength=other.length;if(arrLength!=othLength&&!(isPartial&&othLength>arrLength))return!1;var arrStacked=stack.get(array2),othStacked=stack.get(other);if(arrStacked&&othStacked)return arrStacked==other&&othStacked==array2;var index=-1,result2=!0,seen=bitmask&COMPARE_UNORDERED_FLAG?new SetCache_default:void 0;for(stack.set(array2,other),stack.set(other,array2);++index<arrLength;){var arrValue=array2[index],othValue=other[index];if(customizer)var compared=isPartial?customizer(othValue,arrValue,index,other,array2,stack):customizer(arrValue,othValue,index,array2,other,stack);if(compared!==void 0){if(compared)continue;result2=!1;break}if(seen){if(!arraySome_default(other,function(othValue2,othIndex){if(!cacheHas_default(seen,othIndex)&&(arrValue===othValue2||equalFunc(arrValue,othValue2,bitmask,customizer,stack)))return seen.push(othIndex)})){result2=!1;break}}else if(!(arrValue===othValue||equalFunc(arrValue,othValue,bitmask,customizer,stack))){result2=!1;break}}return stack.delete(array2),stack.delete(other),result2}var COMPARE_PARTIAL_FLAG,COMPARE_UNORDERED_FLAG,equalArrays_default,init_equalArrays=__esm({"../../node_modules/lodash-es/_equalArrays.js"(){init_SetCache();init_arraySome();init_cacheHas();COMPARE_PARTIAL_FLAG=1,COMPARE_UNORDERED_FLAG=2;__name(equalArrays,"equalArrays");equalArrays_default=equalArrays}});var Uint8Array2,Uint8Array_default,init_Uint8Array=__esm({"../../node_modules/lodash-es/_Uint8Array.js"(){init_root();Uint8Array2=root_default.Uint8Array,Uint8Array_default=Uint8Array2}});function mapToArray(map3){var index=-1,result2=Array(map3.size);return map3.forEach(function(value,key){result2[++index]=[key,value]}),result2}var mapToArray_default,init_mapToArray=__esm({"../../node_modules/lodash-es/_mapToArray.js"(){__name(mapToArray,"mapToArray");mapToArray_default=mapToArray}});function setToArray(set3){var index=-1,result2=Array(set3.size);return set3.forEach(function(value){result2[++index]=value}),result2}var setToArray_default,init_setToArray=__esm({"../../node_modules/lodash-es/_setToArray.js"(){__name(setToArray,"setToArray");setToArray_default=setToArray}});function equalByTag(object2,other,tag,bitmask,customizer,equalFunc,stack){switch(tag){case dataViewTag:if(object2.byteLength!=other.byteLength||object2.byteOffset!=other.byteOffset)return!1;object2=object2.buffer,other=other.buffer;case arrayBufferTag:return!(object2.byteLength!=other.byteLength||!equalFunc(new Uint8Array_default(object2),new Uint8Array_default(other)));case boolTag:case dateTag:case numberTag:return eq_default(+object2,+other);case errorTag:return object2.name==other.name&&object2.message==other.message;case regexpTag:case stringTag:return object2==other+"";case mapTag:var convert=mapToArray_default;case setTag:var isPartial=bitmask&COMPARE_PARTIAL_FLAG2;if(convert||(convert=setToArray_default),object2.size!=other.size&&!isPartial)return!1;var stacked=stack.get(object2);if(stacked)return stacked==other;bitmask|=COMPARE_UNORDERED_FLAG2,stack.set(object2,other);var result2=equalArrays_default(convert(object2),convert(other),bitmask,customizer,equalFunc,stack);return stack.delete(object2),result2;case symbolTag:if(symbolValueOf)return symbolValueOf.call(object2)==symbolValueOf.call(other)}return!1}var COMPARE_PARTIAL_FLAG2,COMPARE_UNORDERED_FLAG2,boolTag,dateTag,errorTag,mapTag,numberTag,regexpTag,setTag,stringTag,symbolTag,arrayBufferTag,dataViewTag,symbolProto,symbolValueOf,equalByTag_default,init_equalByTag=__esm({"../../node_modules/lodash-es/_equalByTag.js"(){init_Symbol();init_Uint8Array();init_eq();init_equalArrays();init_mapToArray();init_setToArray();COMPARE_PARTIAL_FLAG2=1,COMPARE_UNORDERED_FLAG2=2,boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",mapTag="[object Map]",numberTag="[object Number]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",symbolProto=Symbol_default?Symbol_default.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;__name(equalByTag,"equalByTag");equalByTag_default=equalByTag}});function arrayPush(array2,values2){for(var index=-1,length=values2.length,offset=array2.length;++index<length;)array2[offset+index]=values2[index];return array2}var arrayPush_default,init_arrayPush=__esm({"../../node_modules/lodash-es/_arrayPush.js"(){__name(arrayPush,"arrayPush");arrayPush_default=arrayPush}});var isArray,isArray_default,init_isArray=__esm({"../../node_modules/lodash-es/isArray.js"(){isArray=Array.isArray,isArray_default=isArray}});function baseGetAllKeys(object2,keysFunc,symbolsFunc){var result2=keysFunc(object2);return isArray_default(object2)?result2:arrayPush_default(result2,symbolsFunc(object2))}var baseGetAllKeys_default,init_baseGetAllKeys=__esm({"../../node_modules/lodash-es/_baseGetAllKeys.js"(){init_arrayPush();init_isArray();__name(baseGetAllKeys,"baseGetAllKeys");baseGetAllKeys_default=baseGetAllKeys}});function arrayFilter(array2,predicate){for(var index=-1,length=array2==null?0:array2.length,resIndex=0,result2=[];++index<length;){var value=array2[index];predicate(value,index,array2)&&(result2[resIndex++]=value)}return result2}var arrayFilter_default,init_arrayFilter=__esm({"../../node_modules/lodash-es/_arrayFilter.js"(){__name(arrayFilter,"arrayFilter");arrayFilter_default=arrayFilter}});function stubArray(){return[]}var stubArray_default,init_stubArray=__esm({"../../node_modules/lodash-es/stubArray.js"(){__name(stubArray,"stubArray");stubArray_default=stubArray}});var objectProto6,propertyIsEnumerable,nativeGetSymbols,getSymbols,getSymbols_default,init_getSymbols=__esm({"../../node_modules/lodash-es/_getSymbols.js"(){init_arrayFilter();init_stubArray();objectProto6=Object.prototype,propertyIsEnumerable=objectProto6.propertyIsEnumerable,nativeGetSymbols=Object.getOwnPropertySymbols,getSymbols=nativeGetSymbols?function(object2){return object2==null?[]:(object2=Object(object2),arrayFilter_default(nativeGetSymbols(object2),function(symbol2){return propertyIsEnumerable.call(object2,symbol2)}))}:stubArray_default,getSymbols_default=getSymbols}});function baseTimes(n2,iteratee2){for(var index=-1,result2=Array(n2);++index<n2;)result2[index]=iteratee2(index);return result2}var baseTimes_default,init_baseTimes=__esm({"../../node_modules/lodash-es/_baseTimes.js"(){__name(baseTimes,"baseTimes");baseTimes_default=baseTimes}});function isObjectLike(value){return value!=null&&typeof value=="object"}var isObjectLike_default,init_isObjectLike=__esm({"../../node_modules/lodash-es/isObjectLike.js"(){__name(isObjectLike,"isObjectLike");isObjectLike_default=isObjectLike}});function baseIsArguments(value){return isObjectLike_default(value)&&baseGetTag_default(value)==argsTag}var argsTag,baseIsArguments_default,init_baseIsArguments=__esm({"../../node_modules/lodash-es/_baseIsArguments.js"(){init_baseGetTag();init_isObjectLike();argsTag="[object Arguments]";__name(baseIsArguments,"baseIsArguments");baseIsArguments_default=baseIsArguments}});var objectProto7,hasOwnProperty5,propertyIsEnumerable2,isArguments,isArguments_default,init_isArguments=__esm({"../../node_modules/lodash-es/isArguments.js"(){init_baseIsArguments();init_isObjectLike();objectProto7=Object.prototype,hasOwnProperty5=objectProto7.hasOwnProperty,propertyIsEnumerable2=objectProto7.propertyIsEnumerable,isArguments=baseIsArguments_default((function(){return arguments})())?baseIsArguments_default:function(value){return isObjectLike_default(value)&&hasOwnProperty5.call(value,"callee")&&!propertyIsEnumerable2.call(value,"callee")},isArguments_default=isArguments}});function stubFalse(){return!1}var stubFalse_default,init_stubFalse=__esm({"../../node_modules/lodash-es/stubFalse.js"(){__name(stubFalse,"stubFalse");stubFalse_default=stubFalse}});var freeExports,freeModule,moduleExports,Buffer2,nativeIsBuffer,isBuffer,isBuffer_default,init_isBuffer=__esm({"../../node_modules/lodash-es/isBuffer.js"(){init_root();init_stubFalse();freeExports=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,Buffer2=moduleExports?root_default.Buffer:void 0,nativeIsBuffer=Buffer2?Buffer2.isBuffer:void 0,isBuffer=nativeIsBuffer||stubFalse_default,isBuffer_default=isBuffer}});function isIndex(value,length){var type=typeof value;return length=length??MAX_SAFE_INTEGER,!!length&&(type=="number"||type!="symbol"&&reIsUint.test(value))&&value>-1&&value%1==0&&value<length}var MAX_SAFE_INTEGER,reIsUint,isIndex_default,init_isIndex=__esm({"../../node_modules/lodash-es/_isIndex.js"(){MAX_SAFE_INTEGER=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;__name(isIndex,"isIndex");isIndex_default=isIndex}});function isLength(value){return typeof value=="number"&&value>-1&&value%1==0&&value<=MAX_SAFE_INTEGER2}var MAX_SAFE_INTEGER2,isLength_default,init_isLength=__esm({"../../node_modules/lodash-es/isLength.js"(){MAX_SAFE_INTEGER2=9007199254740991;__name(isLength,"isLength");isLength_default=isLength}});function baseIsTypedArray(value){return isObjectLike_default(value)&&isLength_default(value.length)&&!!typedArrayTags[baseGetTag_default(value)]}var argsTag2,arrayTag,boolTag2,dateTag2,errorTag2,funcTag2,mapTag2,numberTag2,objectTag,regexpTag2,setTag2,stringTag2,weakMapTag,arrayBufferTag2,dataViewTag2,float32Tag,float64Tag,int8Tag,int16Tag,int32Tag,uint8Tag,uint8ClampedTag,uint16Tag,uint32Tag,typedArrayTags,baseIsTypedArray_default,init_baseIsTypedArray=__esm({"../../node_modules/lodash-es/_baseIsTypedArray.js"(){init_baseGetTag();init_isLength();init_isObjectLike();argsTag2="[object Arguments]",arrayTag="[object Array]",boolTag2="[object Boolean]",dateTag2="[object Date]",errorTag2="[object Error]",funcTag2="[object Function]",mapTag2="[object Map]",numberTag2="[object Number]",objectTag="[object Object]",regexpTag2="[object RegExp]",setTag2="[object Set]",stringTag2="[object String]",weakMapTag="[object WeakMap]",arrayBufferTag2="[object ArrayBuffer]",dataViewTag2="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0;typedArrayTags[argsTag2]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag2]=typedArrayTags[boolTag2]=typedArrayTags[dataViewTag2]=typedArrayTags[dateTag2]=typedArrayTags[errorTag2]=typedArrayTags[funcTag2]=typedArrayTags[mapTag2]=typedArrayTags[numberTag2]=typedArrayTags[objectTag]=typedArrayTags[regexpTag2]=typedArrayTags[setTag2]=typedArrayTags[stringTag2]=typedArrayTags[weakMapTag]=!1;__name(baseIsTypedArray,"baseIsTypedArray");baseIsTypedArray_default=baseIsTypedArray}});function baseUnary(func){return function(value){return func(value)}}var baseUnary_default,init_baseUnary=__esm({"../../node_modules/lodash-es/_baseUnary.js"(){__name(baseUnary,"baseUnary");baseUnary_default=baseUnary}});var freeExports2,freeModule2,moduleExports2,freeProcess,nodeUtil,nodeUtil_default,init_nodeUtil=__esm({"../../node_modules/lodash-es/_nodeUtil.js"(){init_freeGlobal();freeExports2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule2=freeExports2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports2=freeModule2&&freeModule2.exports===freeExports2,freeProcess=moduleExports2&&freeGlobal_default.process,nodeUtil=(function(){try{var types3=freeModule2&&freeModule2.require&&freeModule2.require("util").types;return types3||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}})(),nodeUtil_default=nodeUtil}});var nodeIsTypedArray,isTypedArray,isTypedArray_default,init_isTypedArray=__esm({"../../node_modules/lodash-es/isTypedArray.js"(){init_baseIsTypedArray();init_baseUnary();init_nodeUtil();nodeIsTypedArray=nodeUtil_default&&nodeUtil_default.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary_default(nodeIsTypedArray):baseIsTypedArray_default,isTypedArray_default=isTypedArray}});function arrayLikeKeys(value,inherited){var isArr=isArray_default(value),isArg=!isArr&&isArguments_default(value),isBuff=!isArr&&!isArg&&isBuffer_default(value),isType=!isArr&&!isArg&&!isBuff&&isTypedArray_default(value),skipIndexes=isArr||isArg||isBuff||isType,result2=skipIndexes?baseTimes_default(value.length,String):[],length=result2.length;for(var key in value)(inherited||hasOwnProperty6.call(value,key))&&!(skipIndexes&&(key=="length"||isBuff&&(key=="offset"||key=="parent")||isType&&(key=="buffer"||key=="byteLength"||key=="byteOffset")||isIndex_default(key,length)))&&result2.push(key);return result2}var objectProto8,hasOwnProperty6,arrayLikeKeys_default,init_arrayLikeKeys=__esm({"../../node_modules/lodash-es/_arrayLikeKeys.js"(){init_baseTimes();init_isArguments();init_isArray();init_isBuffer();init_isIndex();init_isTypedArray();objectProto8=Object.prototype,hasOwnProperty6=objectProto8.hasOwnProperty;__name(arrayLikeKeys,"arrayLikeKeys");arrayLikeKeys_default=arrayLikeKeys}});function isPrototype(value){var Ctor=value&&value.constructor,proto2=typeof Ctor=="function"&&Ctor.prototype||objectProto9;return value===proto2}var objectProto9,isPrototype_default,init_isPrototype=__esm({"../../node_modules/lodash-es/_isPrototype.js"(){objectProto9=Object.prototype;__name(isPrototype,"isPrototype");isPrototype_default=isPrototype}});function overArg(func,transform3){return function(arg){return func(transform3(arg))}}var overArg_default,init_overArg=__esm({"../../node_modules/lodash-es/_overArg.js"(){__name(overArg,"overArg");overArg_default=overArg}});var nativeKeys,nativeKeys_default,init_nativeKeys=__esm({"../../node_modules/lodash-es/_nativeKeys.js"(){init_overArg();nativeKeys=overArg_default(Object.keys,Object),nativeKeys_default=nativeKeys}});function baseKeys(object2){if(!isPrototype_default(object2))return nativeKeys_default(object2);var result2=[];for(var key in Object(object2))hasOwnProperty7.call(object2,key)&&key!="constructor"&&result2.push(key);return result2}var objectProto10,hasOwnProperty7,baseKeys_default,init_baseKeys=__esm({"../../node_modules/lodash-es/_baseKeys.js"(){init_isPrototype();init_nativeKeys();objectProto10=Object.prototype,hasOwnProperty7=objectProto10.hasOwnProperty;__name(baseKeys,"baseKeys");baseKeys_default=baseKeys}});function isArrayLike(value){return value!=null&&isLength_default(value.length)&&!isFunction_default(value)}var isArrayLike_default,init_isArrayLike=__esm({"../../node_modules/lodash-es/isArrayLike.js"(){init_isFunction();init_isLength();__name(isArrayLike,"isArrayLike");isArrayLike_default=isArrayLike}});function keys(object2){return isArrayLike_default(object2)?arrayLikeKeys_default(object2):baseKeys_default(object2)}var keys_default,init_keys=__esm({"../../node_modules/lodash-es/keys.js"(){init_arrayLikeKeys();init_baseKeys();init_isArrayLike();__name(keys,"keys");keys_default=keys}});function getAllKeys(object2){return baseGetAllKeys_default(object2,keys_default,getSymbols_default)}var getAllKeys_default,init_getAllKeys=__esm({"../../node_modules/lodash-es/_getAllKeys.js"(){init_baseGetAllKeys();init_getSymbols();init_keys();__name(getAllKeys,"getAllKeys");getAllKeys_default=getAllKeys}});function equalObjects(object2,other,bitmask,customizer,equalFunc,stack){var isPartial=bitmask&COMPARE_PARTIAL_FLAG3,objProps=getAllKeys_default(object2),objLength=objProps.length,othProps=getAllKeys_default(other),othLength=othProps.length;if(objLength!=othLength&&!isPartial)return!1;for(var index=objLength;index--;){var key=objProps[index];if(!(isPartial?key in other:hasOwnProperty8.call(other,key)))return!1}var objStacked=stack.get(object2),othStacked=stack.get(other);if(objStacked&&othStacked)return objStacked==other&&othStacked==object2;var result2=!0;stack.set(object2,other),stack.set(other,object2);for(var skipCtor=isPartial;++index<objLength;){key=objProps[index];var objValue=object2[key],othValue=other[key];if(customizer)var compared=isPartial?customizer(othValue,objValue,key,other,object2,stack):customizer(objValue,othValue,key,object2,other,stack);if(!(compared===void 0?objValue===othValue||equalFunc(objValue,othValue,bitmask,customizer,stack):compared)){result2=!1;break}skipCtor||(skipCtor=key=="constructor")}if(result2&&!skipCtor){var objCtor=object2.constructor,othCtor=other.constructor;objCtor!=othCtor&&"constructor"in object2&&"constructor"in other&&!(typeof objCtor=="function"&&objCtor instanceof objCtor&&typeof othCtor=="function"&&othCtor instanceof othCtor)&&(result2=!1)}return stack.delete(object2),stack.delete(other),result2}var COMPARE_PARTIAL_FLAG3,objectProto11,hasOwnProperty8,equalObjects_default,init_equalObjects=__esm({"../../node_modules/lodash-es/_equalObjects.js"(){init_getAllKeys();COMPARE_PARTIAL_FLAG3=1,objectProto11=Object.prototype,hasOwnProperty8=objectProto11.hasOwnProperty;__name(equalObjects,"equalObjects");equalObjects_default=equalObjects}});var DataView2,DataView_default,init_DataView=__esm({"../../node_modules/lodash-es/_DataView.js"(){init_getNative();init_root();DataView2=getNative_default(root_default,"DataView"),DataView_default=DataView2}});var Promise2,Promise_default,init_Promise=__esm({"../../node_modules/lodash-es/_Promise.js"(){init_getNative();init_root();Promise2=getNative_default(root_default,"Promise"),Promise_default=Promise2}});var Set2,Set_default,init_Set=__esm({"../../node_modules/lodash-es/_Set.js"(){init_getNative();init_root();Set2=getNative_default(root_default,"Set"),Set_default=Set2}});var WeakMap2,WeakMap_default,init_WeakMap=__esm({"../../node_modules/lodash-es/_WeakMap.js"(){init_getNative();init_root();WeakMap2=getNative_default(root_default,"WeakMap"),WeakMap_default=WeakMap2}});var mapTag3,objectTag2,promiseTag,setTag3,weakMapTag2,dataViewTag3,dataViewCtorString,mapCtorString,promiseCtorString,setCtorString,weakMapCtorString,getTag,getTag_default,init_getTag=__esm({"../../node_modules/lodash-es/_getTag.js"(){init_DataView();init_Map();init_Promise();init_Set();init_WeakMap();init_baseGetTag();init_toSource();mapTag3="[object Map]",objectTag2="[object Object]",promiseTag="[object Promise]",setTag3="[object Set]",weakMapTag2="[object WeakMap]",dataViewTag3="[object DataView]",dataViewCtorString=toSource_default(DataView_default),mapCtorString=toSource_default(Map_default),promiseCtorString=toSource_default(Promise_default),setCtorString=toSource_default(Set_default),weakMapCtorString=toSource_default(WeakMap_default),getTag=baseGetTag_default;(DataView_default&&getTag(new DataView_default(new ArrayBuffer(1)))!=dataViewTag3||Map_default&&getTag(new Map_default)!=mapTag3||Promise_default&&getTag(Promise_default.resolve())!=promiseTag||Set_default&&getTag(new Set_default)!=setTag3||WeakMap_default&&getTag(new WeakMap_default)!=weakMapTag2)&&(getTag=__name(function(value){var result2=baseGetTag_default(value),Ctor=result2==objectTag2?value.constructor:void 0,ctorString=Ctor?toSource_default(Ctor):"";if(ctorString)switch(ctorString){case dataViewCtorString:return dataViewTag3;case mapCtorString:return mapTag3;case promiseCtorString:return promiseTag;case setCtorString:return setTag3;case weakMapCtorString:return weakMapTag2}return result2},"getTag"));getTag_default=getTag}});function baseIsEqualDeep(object2,other,bitmask,customizer,equalFunc,stack){var objIsArr=isArray_default(object2),othIsArr=isArray_default(other),objTag=objIsArr?arrayTag2:getTag_default(object2),othTag=othIsArr?arrayTag2:getTag_default(other);objTag=objTag==argsTag3?objectTag3:objTag,othTag=othTag==argsTag3?objectTag3:othTag;var objIsObj=objTag==objectTag3,othIsObj=othTag==objectTag3,isSameTag=objTag==othTag;if(isSameTag&&isBuffer_default(object2)){if(!isBuffer_default(other))return!1;objIsArr=!0,objIsObj=!1}if(isSameTag&&!objIsObj)return stack||(stack=new Stack_default),objIsArr||isTypedArray_default(object2)?equalArrays_default(object2,other,bitmask,customizer,equalFunc,stack):equalByTag_default(object2,other,objTag,bitmask,customizer,equalFunc,stack);if(!(bitmask&COMPARE_PARTIAL_FLAG4)){var objIsWrapped=objIsObj&&hasOwnProperty9.call(object2,"__wrapped__"),othIsWrapped=othIsObj&&hasOwnProperty9.call(other,"__wrapped__");if(objIsWrapped||othIsWrapped){var objUnwrapped=objIsWrapped?object2.value():object2,othUnwrapped=othIsWrapped?other.value():other;return stack||(stack=new Stack_default),equalFunc(objUnwrapped,othUnwrapped,bitmask,customizer,stack)}}return isSameTag?(stack||(stack=new Stack_default),equalObjects_default(object2,other,bitmask,customizer,equalFunc,stack)):!1}var COMPARE_PARTIAL_FLAG4,argsTag3,arrayTag2,objectTag3,objectProto12,hasOwnProperty9,baseIsEqualDeep_default,init_baseIsEqualDeep=__esm({"../../node_modules/lodash-es/_baseIsEqualDeep.js"(){init_Stack();init_equalArrays();init_equalByTag();init_equalObjects();init_getTag();init_isArray();init_isBuffer();init_isTypedArray();COMPARE_PARTIAL_FLAG4=1,argsTag3="[object Arguments]",arrayTag2="[object Array]",objectTag3="[object Object]",objectProto12=Object.prototype,hasOwnProperty9=objectProto12.hasOwnProperty;__name(baseIsEqualDeep,"baseIsEqualDeep");baseIsEqualDeep_default=baseIsEqualDeep}});function baseIsEqual(value,other,bitmask,customizer,stack){return value===other?!0:value==null||other==null||!isObjectLike_default(value)&&!isObjectLike_default(other)?value!==value&&other!==other:baseIsEqualDeep_default(value,other,bitmask,customizer,baseIsEqual,stack)}var baseIsEqual_default,init_baseIsEqual=__esm({"../../node_modules/lodash-es/_baseIsEqual.js"(){init_baseIsEqualDeep();init_isObjectLike();__name(baseIsEqual,"baseIsEqual");baseIsEqual_default=baseIsEqual}});function baseIsMatch(object2,source,matchData,customizer){var index=matchData.length,length=index,noCustomizer=!customizer;if(object2==null)return!length;for(object2=Object(object2);index--;){var data=matchData[index];if(noCustomizer&&data[2]?data[1]!==object2[data[0]]:!(data[0]in object2))return!1}for(;++index<length;){data=matchData[index];var key=data[0],objValue=object2[key],srcValue=data[1];if(noCustomizer&&data[2]){if(objValue===void 0&&!(key in object2))return!1}else{var stack=new Stack_default;if(customizer)var result2=customizer(objValue,srcValue,key,object2,source,stack);if(!(result2===void 0?baseIsEqual_default(srcValue,objValue,COMPARE_PARTIAL_FLAG5|COMPARE_UNORDERED_FLAG3,customizer,stack):result2))return!1}}return!0}var COMPARE_PARTIAL_FLAG5,COMPARE_UNORDERED_FLAG3,baseIsMatch_default,init_baseIsMatch=__esm({"../../node_modules/lodash-es/_baseIsMatch.js"(){init_Stack();init_baseIsEqual();COMPARE_PARTIAL_FLAG5=1,COMPARE_UNORDERED_FLAG3=2;__name(baseIsMatch,"baseIsMatch");baseIsMatch_default=baseIsMatch}});function isStrictComparable(value){return value===value&&!isObject_default(value)}var isStrictComparable_default,init_isStrictComparable=__esm({"../../node_modules/lodash-es/_isStrictComparable.js"(){init_isObject();__name(isStrictComparable,"isStrictComparable");isStrictComparable_default=isStrictComparable}});function getMatchData(object2){for(var result2=keys_default(object2),length=result2.length;length--;){var key=result2[length],value=object2[key];result2[length]=[key,value,isStrictComparable_default(value)]}return result2}var getMatchData_default,init_getMatchData=__esm({"../../node_modules/lodash-es/_getMatchData.js"(){init_isStrictComparable();init_keys();__name(getMatchData,"getMatchData");getMatchData_default=getMatchData}});function matchesStrictComparable(key,srcValue){return function(object2){return object2==null?!1:object2[key]===srcValue&&(srcValue!==void 0||key in Object(object2))}}var matchesStrictComparable_default,init_matchesStrictComparable=__esm({"../../node_modules/lodash-es/_matchesStrictComparable.js"(){__name(matchesStrictComparable,"matchesStrictComparable");matchesStrictComparable_default=matchesStrictComparable}});function baseMatches(source){var matchData=getMatchData_default(source);return matchData.length==1&&matchData[0][2]?matchesStrictComparable_default(matchData[0][0],matchData[0][1]):function(object2){return object2===source||baseIsMatch_default(object2,source,matchData)}}var baseMatches_default,init_baseMatches=__esm({"../../node_modules/lodash-es/_baseMatches.js"(){init_baseIsMatch();init_getMatchData();init_matchesStrictComparable();__name(baseMatches,"baseMatches");baseMatches_default=baseMatches}});function isSymbol(value){return typeof value=="symbol"||isObjectLike_default(value)&&baseGetTag_default(value)==symbolTag2}var symbolTag2,isSymbol_default,init_isSymbol=__esm({"../../node_modules/lodash-es/isSymbol.js"(){init_baseGetTag();init_isObjectLike();symbolTag2="[object Symbol]";__name(isSymbol,"isSymbol");isSymbol_default=isSymbol}});function isKey(value,object2){if(isArray_default(value))return!1;var type=typeof value;return type=="number"||type=="symbol"||type=="boolean"||value==null||isSymbol_default(value)?!0:reIsPlainProp.test(value)||!reIsDeepProp.test(value)||object2!=null&&value in Object(object2)}var reIsDeepProp,reIsPlainProp,isKey_default,init_isKey=__esm({"../../node_modules/lodash-es/_isKey.js"(){init_isArray();init_isSymbol();reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;__name(isKey,"isKey");isKey_default=isKey}});function memoizeCapped(func){var result2=memoize_default(func,function(key){return cache2.size===MAX_MEMOIZE_SIZE&&cache2.clear(),key}),cache2=result2.cache;return result2}var MAX_MEMOIZE_SIZE,memoizeCapped_default,init_memoizeCapped=__esm({"../../node_modules/lodash-es/_memoizeCapped.js"(){init_memoize();MAX_MEMOIZE_SIZE=500;__name(memoizeCapped,"memoizeCapped");memoizeCapped_default=memoizeCapped}});var rePropName,reEscapeChar,stringToPath,stringToPath_default,init_stringToPath=__esm({"../../node_modules/lodash-es/_stringToPath.js"(){init_memoizeCapped();rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped_default(function(string4){var result2=[];return string4.charCodeAt(0)===46&&result2.push(""),string4.replace(rePropName,function(match,number4,quote,subString){result2.push(quote?subString.replace(reEscapeChar,"$1"):number4||match)}),result2}),stringToPath_default=stringToPath}});function baseToString(value){if(typeof value=="string")return value;if(isArray_default(value))return arrayMap_default(value,baseToString)+"";if(isSymbol_default(value))return symbolToString?symbolToString.call(value):"";var result2=value+"";return result2=="0"&&1/value==-INFINITY?"-0":result2}var INFINITY,symbolProto2,symbolToString,baseToString_default,init_baseToString=__esm({"../../node_modules/lodash-es/_baseToString.js"(){init_Symbol();init_arrayMap();init_isArray();init_isSymbol();INFINITY=1/0,symbolProto2=Symbol_default?Symbol_default.prototype:void 0,symbolToString=symbolProto2?symbolProto2.toString:void 0;__name(baseToString,"baseToString");baseToString_default=baseToString}});function toString(value){return value==null?"":baseToString_default(value)}var toString_default,init_toString=__esm({"../../node_modules/lodash-es/toString.js"(){init_baseToString();__name(toString,"toString");toString_default=toString}});function castPath(value,object2){return isArray_default(value)?value:isKey_default(value,object2)?[value]:stringToPath_default(toString_default(value))}var castPath_default,init_castPath=__esm({"../../node_modules/lodash-es/_castPath.js"(){init_isArray();init_isKey();init_stringToPath();init_toString();__name(castPath,"castPath");castPath_default=castPath}});function toKey(value){if(typeof value=="string"||isSymbol_default(value))return value;var result2=value+"";return result2=="0"&&1/value==-INFINITY2?"-0":result2}var INFINITY2,toKey_default,init_toKey=__esm({"../../node_modules/lodash-es/_toKey.js"(){init_isSymbol();INFINITY2=1/0;__name(toKey,"toKey");toKey_default=toKey}});function baseGet(object2,path9){path9=castPath_default(path9,object2);for(var index=0,length=path9.length;object2!=null&&index<length;)object2=object2[toKey_default(path9[index++])];return index&&index==length?object2:void 0}var baseGet_default,init_baseGet=__esm({"../../node_modules/lodash-es/_baseGet.js"(){init_castPath();init_toKey();__name(baseGet,"baseGet");baseGet_default=baseGet}});function get(object2,path9,defaultValue){var result2=object2==null?void 0:baseGet_default(object2,path9);return result2===void 0?defaultValue:result2}var get_default,init_get=__esm({"../../node_modules/lodash-es/get.js"(){init_baseGet();__name(get,"get");get_default=get}});function baseHasIn(object2,key){return object2!=null&&key in Object(object2)}var baseHasIn_default,init_baseHasIn=__esm({"../../node_modules/lodash-es/_baseHasIn.js"(){__name(baseHasIn,"baseHasIn");baseHasIn_default=baseHasIn}});function hasPath(object2,path9,hasFunc){path9=castPath_default(path9,object2);for(var index=-1,length=path9.length,result2=!1;++index<length;){var key=toKey_default(path9[index]);if(!(result2=object2!=null&&hasFunc(object2,key)))break;object2=object2[key]}return result2||++index!=length?result2:(length=object2==null?0:object2.length,!!length&&isLength_default(length)&&isIndex_default(key,length)&&(isArray_default(object2)||isArguments_default(object2)))}var hasPath_default,init_hasPath=__esm({"../../node_modules/lodash-es/_hasPath.js"(){init_castPath();init_isArguments();init_isArray();init_isIndex();init_isLength();init_toKey();__name(hasPath,"hasPath");hasPath_default=hasPath}});function hasIn(object2,path9){return object2!=null&&hasPath_default(object2,path9,baseHasIn_default)}var hasIn_default,init_hasIn=__esm({"../../node_modules/lodash-es/hasIn.js"(){init_baseHasIn();init_hasPath();__name(hasIn,"hasIn");hasIn_default=hasIn}});function baseMatchesProperty(path9,srcValue){return isKey_default(path9)&&isStrictComparable_default(srcValue)?matchesStrictComparable_default(toKey_default(path9),srcValue):function(object2){var objValue=get_default(object2,path9);return objValue===void 0&&objValue===srcValue?hasIn_default(object2,path9):baseIsEqual_default(srcValue,objValue,COMPARE_PARTIAL_FLAG6|COMPARE_UNORDERED_FLAG4)}}var COMPARE_PARTIAL_FLAG6,COMPARE_UNORDERED_FLAG4,baseMatchesProperty_default,init_baseMatchesProperty=__esm({"../../node_modules/lodash-es/_baseMatchesProperty.js"(){init_baseIsEqual();init_get();init_hasIn();init_isKey();init_isStrictComparable();init_matchesStrictComparable();init_toKey();COMPARE_PARTIAL_FLAG6=1,COMPARE_UNORDERED_FLAG4=2;__name(baseMatchesProperty,"baseMatchesProperty");baseMatchesProperty_default=baseMatchesProperty}});function identity(value){return value}var identity_default,init_identity=__esm({"../../node_modules/lodash-es/identity.js"(){__name(identity,"identity");identity_default=identity}});function baseProperty(key){return function(object2){return object2?.[key]}}var baseProperty_default,init_baseProperty=__esm({"../../node_modules/lodash-es/_baseProperty.js"(){__name(baseProperty,"baseProperty");baseProperty_default=baseProperty}});function basePropertyDeep(path9){return function(object2){return baseGet_default(object2,path9)}}var basePropertyDeep_default,init_basePropertyDeep=__esm({"../../node_modules/lodash-es/_basePropertyDeep.js"(){init_baseGet();__name(basePropertyDeep,"basePropertyDeep");basePropertyDeep_default=basePropertyDeep}});function property(path9){return isKey_default(path9)?baseProperty_default(toKey_default(path9)):basePropertyDeep_default(path9)}var property_default,init_property=__esm({"../../node_modules/lodash-es/property.js"(){init_baseProperty();init_basePropertyDeep();init_isKey();init_toKey();__name(property,"property");property_default=property}});function baseIteratee(value){return typeof value=="function"?value:value==null?identity_default:typeof value=="object"?isArray_default(value)?baseMatchesProperty_default(value[0],value[1]):baseMatches_default(value):property_default(value)}var baseIteratee_default,init_baseIteratee=__esm({"../../node_modules/lodash-es/_baseIteratee.js"(){init_baseMatches();init_baseMatchesProperty();init_identity();init_isArray();init_property();__name(baseIteratee,"baseIteratee");baseIteratee_default=baseIteratee}});var defineProperty,defineProperty_default,init_defineProperty=__esm({"../../node_modules/lodash-es/_defineProperty.js"(){init_getNative();defineProperty=(function(){try{var func=getNative_default(Object,"defineProperty");return func({},"",{}),func}catch{}})(),defineProperty_default=defineProperty}});function baseAssignValue(object2,key,value){key=="__proto__"&&defineProperty_default?defineProperty_default(object2,key,{configurable:!0,enumerable:!0,value,writable:!0}):object2[key]=value}var baseAssignValue_default,init_baseAssignValue=__esm({"../../node_modules/lodash-es/_baseAssignValue.js"(){init_defineProperty();__name(baseAssignValue,"baseAssignValue");baseAssignValue_default=baseAssignValue}});function assignValue(object2,key,value){var objValue=object2[key];(!(hasOwnProperty10.call(object2,key)&&eq_default(objValue,value))||value===void 0&&!(key in object2))&&baseAssignValue_default(object2,key,value)}var objectProto13,hasOwnProperty10,assignValue_default,init_assignValue=__esm({"../../node_modules/lodash-es/_assignValue.js"(){init_baseAssignValue();init_eq();objectProto13=Object.prototype,hasOwnProperty10=objectProto13.hasOwnProperty;__name(assignValue,"assignValue");assignValue_default=assignValue}});var getPrototype,getPrototype_default,init_getPrototype=__esm({"../../node_modules/lodash-es/_getPrototype.js"(){init_overArg();getPrototype=overArg_default(Object.getPrototypeOf,Object),getPrototype_default=getPrototype}});var nativeGetSymbols2,getSymbolsIn,getSymbolsIn_default,init_getSymbolsIn=__esm({"../../node_modules/lodash-es/_getSymbolsIn.js"(){init_arrayPush();init_getPrototype();init_getSymbols();init_stubArray();nativeGetSymbols2=Object.getOwnPropertySymbols,getSymbolsIn=nativeGetSymbols2?function(object2){for(var result2=[];object2;)arrayPush_default(result2,getSymbols_default(object2)),object2=getPrototype_default(object2);return result2}:stubArray_default,getSymbolsIn_default=getSymbolsIn}});function nativeKeysIn(object2){var result2=[];if(object2!=null)for(var key in Object(object2))result2.push(key);return result2}var nativeKeysIn_default,init_nativeKeysIn=__esm({"../../node_modules/lodash-es/_nativeKeysIn.js"(){__name(nativeKeysIn,"nativeKeysIn");nativeKeysIn_default=nativeKeysIn}});function baseKeysIn(object2){if(!isObject_default(object2))return nativeKeysIn_default(object2);var isProto=isPrototype_default(object2),result2=[];for(var key in object2)key=="constructor"&&(isProto||!hasOwnProperty11.call(object2,key))||result2.push(key);return result2}var objectProto14,hasOwnProperty11,baseKeysIn_default,init_baseKeysIn=__esm({"../../node_modules/lodash-es/_baseKeysIn.js"(){init_isObject();init_isPrototype();init_nativeKeysIn();objectProto14=Object.prototype,hasOwnProperty11=objectProto14.hasOwnProperty;__name(baseKeysIn,"baseKeysIn");baseKeysIn_default=baseKeysIn}});function keysIn(object2){return isArrayLike_default(object2)?arrayLikeKeys_default(object2,!0):baseKeysIn_default(object2)}var keysIn_default,init_keysIn=__esm({"../../node_modules/lodash-es/keysIn.js"(){init_arrayLikeKeys();init_baseKeysIn();init_isArrayLike();__name(keysIn,"keysIn");keysIn_default=keysIn}});function getAllKeysIn(object2){return baseGetAllKeys_default(object2,keysIn_default,getSymbolsIn_default)}var getAllKeysIn_default,init_getAllKeysIn=__esm({"../../node_modules/lodash-es/_getAllKeysIn.js"(){init_baseGetAllKeys();init_getSymbolsIn();init_keysIn();__name(getAllKeysIn,"getAllKeysIn");getAllKeysIn_default=getAllKeysIn}});function baseSum(array2,iteratee2){for(var result2,index=-1,length=array2.length;++index<length;){var current=iteratee2(array2[index]);current!==void 0&&(result2=result2===void 0?current:result2+current)}return result2}var baseSum_default,init_baseSum=__esm({"../../node_modules/lodash-es/_baseSum.js"(){__name(baseSum,"baseSum");baseSum_default=baseSum}});function sumBy(array2,iteratee2){return array2&&array2.length?baseSum_default(array2,baseIteratee_default(iteratee2,2)):0}var sumBy_default,init_sumBy=__esm({"../../node_modules/lodash-es/sumBy.js"(){init_baseIteratee();init_baseSum();__name(sumBy,"sumBy");sumBy_default=sumBy}});var init_outcomeDiscipline=__esm({"src/constants/outcomeDiscipline.ts"(){}});var init_supervisor=__esm({"src/services/mao/supervisor.ts"(){}});var init_parallelDevelopment=__esm({"src/utils/parallelDevelopment.ts"(){init_supervisor()}});function escapeRegExp(value){return String(value).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function compileEnglishPhraseMatchers(phrases){return phrases.map(phrase=>({label:phrase,regex:new RegExp(`(?:^|\\s)${escapeRegExp(phrase).replace(/\\ /g,"\\s+")}(?=\\s|$)`,"i")}))}function compileCompactPhraseMatchers(phrases){return phrases.map(phrase=>({label:phrase,compactPhrase:phrase.replace(/\s+/g,"")}))}function compileWordMatchers(words2){return words2.map(word=>({label:word,word}))}function compileRegexMatchers(regexes){return regexes.map(entry=>entry instanceof RegExp?{label:entry.source,regex:entry}:entry)}function compileSignalDefinition(definition){return{exactMatches:definition.exactMatches??null,englishPhrases:compileEnglishPhraseMatchers(definition.englishPhrases??[]),compactPhrases:compileCompactPhraseMatchers(definition.compactPhrases??[]),englishWords:compileWordMatchers(definition.englishWords??[]),regexes:compileRegexMatchers(definition.regexes??[])}}var HAN_CHARACTER_RE,CONTINUATION_EXACT_MATCHES,SIGNAL_DEFINITIONS,init_userTurnIntent=__esm({"src/utils/userTurnIntent.ts"(){init_parallelDevelopment();HAN_CHARACTER_RE=new RegExp("\\p{Script=Han}","u"),CONTINUATION_EXACT_MATCHES=new Set(["continue","resume","keep going","keep pushing","keep iterating","keep working","keep building","go on","start developing","start coding","continue developing","continue coding","continue working","continue building","resume developing","resume coding","let's continue","\u7EE7\u7EED","\u7EE7\u7EED\u5F00\u53D1","\u7EE7\u7EED\u7F16\u7801","\u7EE7\u7EED\u5B9E\u73B0","\u7EE7\u7EED\u5904\u7406","\u7EE7\u7EED\u4FEE","\u7EE7\u7EED\u4FEE\u590D","\u7EE7\u7EED\u641E","\u63A5\u7740\u505A","\u63A5\u7740\u5F00\u53D1","\u63A5\u7740\u7F16\u7801","\u63A5\u7740\u5B9E\u73B0","\u63A5\u7740\u5904\u7406","\u63A5\u7740\u4FEE","\u63A5\u7740\u5199","\u63A5\u7740\u6539","\u7EE7\u7EED\u5E72","\u7EE7\u7EED\u505A","\u5F00\u59CB\u5F00\u53D1","\u5F00\u59CB\u7F16\u7801","\u76F4\u63A5\u5F00\u59CB\u5F00\u53D1","\u76F4\u63A5\u5F00\u59CB\u7F16\u7801","\u5F00\u5DE5","\u7EE7\u7EED\u63A8\u8FDB","\u63A5\u7740\u63A8\u8FDB","\u7EE7\u7EED\u4F18\u5316","\u63A5\u7740\u4F18\u5316","\u7EE7\u7EED\u5347\u7EA7","\u63A5\u7740\u5347\u7EA7","\u7EE7\u7EED\u5B8C\u5584","\u63A5\u7740\u5B8C\u5584","\u628A\u5B83\u505A\u5B8C","\u628A\u8FD9\u4E2A\u7A0B\u5E8F\u505A\u5B8C","\u5F00\u53D1\u5B8C\u8FD9\u4E2A\u7A0B\u5E8F","\u6301\u7EED\u5F00\u53D1","\u6301\u7EED\u7F16\u7801","\u7EE7\u7EED \u6301\u7EED\u5F00\u53D1","\u7EE7\u7EED \u6301\u7EED\u7F16\u7801"]);__name(escapeRegExp,"escapeRegExp");__name(compileEnglishPhraseMatchers,"compileEnglishPhraseMatchers");__name(compileCompactPhraseMatchers,"compileCompactPhraseMatchers");__name(compileWordMatchers,"compileWordMatchers");__name(compileRegexMatchers,"compileRegexMatchers");__name(compileSignalDefinition,"compileSignalDefinition");SIGNAL_DEFINITIONS={continuationIntent:compileSignalDefinition({exactMatches:CONTINUATION_EXACT_MATCHES,englishPhrases:["continue","resume","keep going","keep pushing","keep iterating","keep working","keep building","go on","start developing","start coding","continue developing","continue coding","continue working","continue building","resume developing","resume coding","let's continue"],compactPhrases:["\u7EE7\u7EED\u5F00\u53D1","\u7EE7\u7EED\u7F16\u7801","\u7EE7\u7EED\u5B9E\u73B0","\u7EE7\u7EED\u5904\u7406","\u7EE7\u7EED\u4FEE","\u7EE7\u7EED\u4FEE\u590D","\u7EE7\u7EED\u641E","\u63A5\u7740\u505A","\u63A5\u7740\u5F00\u53D1","\u63A5\u7740\u7F16\u7801","\u63A5\u7740\u5B9E\u73B0","\u63A5\u7740\u5904\u7406","\u63A5\u7740\u4FEE","\u63A5\u7740\u5199","\u63A5\u7740\u6539","\u7EE7\u7EED\u5E72","\u7EE7\u7EED\u505A","\u5F00\u59CB\u5F00\u53D1","\u5F00\u59CB\u7F16\u7801","\u76F4\u63A5\u5F00\u59CB\u5F00\u53D1","\u76F4\u63A5\u5F00\u59CB\u7F16\u7801","\u5F00\u5DE5","\u7EE7\u7EED\u63A8\u8FDB","\u63A5\u7740\u63A8\u8FDB","\u7EE7\u7EED\u4F18\u5316","\u63A5\u7740\u4F18\u5316","\u7EE7\u7EED\u5347\u7EA7","\u63A5\u7740\u5347\u7EA7","\u7EE7\u7EED\u5B8C\u5584","\u63A5\u7740\u5B8C\u5584","\u628A\u5B83\u505A\u5B8C","\u628A\u8FD9\u4E2A\u7A0B\u5E8F\u505A\u5B8C","\u5F00\u53D1\u5B8C\u8FD9\u4E2A\u7A0B\u5E8F","\u6301\u7EED\u5F00\u53D1","\u6301\u7EED\u7F16\u7801"],regexes:[{label:"finish the task",regex:/\b(finish|complete|ship|polish)\s+(it|this|the task|the bug|the change|the fix|the program|the product)\b/i},{label:"chinese continuation with completion target",regex:/(?:^|[\s,。!?、;:])(?:很好|好|可以|行|那就|嗯|ok|okay)?\s*(?:继续|接着|持续|直接开始|开始)\s*(?:持续)?\s*(?:开发|编码|写|改|推进|优化|升级|完善|做|干|处理|修|修复|实现)?(?:\s*(?:到|直到|直至)?\s*(?:全部|完全|彻底)?\s*(?:完成|结束|做完|搞定|收尾))?(?:吧|啊|一下|下去|起来)?(?:$|[\s,。!?、;:])/iu},{label:"general chinese continuation",regex:/^(?:继续|接着|持续|直接开始|开始)\s*(?:持续)?\s*(?:开发|编码|写|改|推进|优化|升级|完善|做|干|处理|修|修复|实现)(?:吧|啊|一下|下去|起来)?$/u}]}),directExecutionIntent:compileSignalDefinition({englishPhrases:["do it","execute","fix it now","get started","go ahead","just start","start now","skip the plan","plan later","just fix it","just implement it","just ship it","fix this now","go ahead and fix","go ahead and implement","no plan first","do not plan first","don't plan first","go with that plan","go with this plan","follow that plan","follow this plan","implement that plan","implement this plan","use that plan","use this plan","use that approach","use this approach","do it that way"],compactPhrases:["\u76F4\u63A5\u5F00\u59CB","\u76F4\u63A5\u5F00\u53D1","\u76F4\u63A5\u7F16\u7801","\u76F4\u63A5\u4FEE\u590D","\u76F4\u63A5\u6539","\u76F4\u63A5\u6267\u884C","\u76F4\u63A5\u505A","\u76F4\u63A5\u5904\u7406","\u9A6C\u4E0A\u4FEE","\u9A6C\u4E0A\u6539","\u76F4\u63A5\u4E0A","\u4E0D\u8981\u65B9\u6848","\u4E0D\u7528\u65B9\u6848","\u522B\u5148\u8BA1\u5212","\u4E0D\u7528\u5148\u8BA1\u5212","\u4E0D\u8981\u5148\u8BA1\u5212","\u4E0D\u8981\u5148\u65B9\u6848","\u5148\u505A","\u5148\u4FEE","\u5148\u5F00\u53D1","\u5148\u6539","\u6309\u8FD9\u4E2A\u65B9\u6848\u505A","\u6309\u8FD9\u4E2A\u8BA1\u5212\u505A","\u6309\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u8FD9\u4E2A\u6587\u6863\u505A","\u6309\u7167\u8FD9\u4E2A\u65B9\u6848\u505A","\u6309\u7167\u8FD9\u4E2A\u8BA1\u5212\u505A","\u6309\u7167\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u7167\u8FD9\u4E2A\u6587\u6863\u505A","\u5C31\u6309\u8FD9\u4E2A\u65B9\u6848\u505A","\u5C31\u6309\u8FD9\u4E2A\u8BA1\u5212\u505A","\u5C31\u6309\u8FD9\u4E2A\u601D\u8DEF\u505A","\u5C31\u6309\u8FD9\u4E2A\u6587\u6863\u505A","\u6309\u65B9\u6848\u505A","\u6309\u8BA1\u5212\u505A","\u6309\u601D\u8DEF\u505A","\u6309\u6587\u6863\u505A","\u7167\u8FD9\u4E2A\u65B9\u6848\u505A","\u7167\u8FD9\u4E2A\u8BA1\u5212\u505A","\u7167\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u8FD9\u4E2A\u6765\u505A","\u5C31\u6309\u8FD9\u4E2A\u6765\u505A","\u7167\u8FD9\u4E2A\u6765\u505A"],regexes:[{label:"chinese direct action regex",regex:/(?:^|[\s,。!?、;:])(?:请|帮我|麻烦)?(?:直接|马上|现在|立刻)(?:开始)?(?:修|修复|改|修改|处理|解决|搞定|开发|编码|实现|优化|升级|完善|做|执行)(?:一下|下|掉|好)?(?:$|[\s,。!?、;:/])/u},{label:"skip planning regex",regex:/\b(?:don't|do not|no need to|skip)\s+(?:write|make|give|start)?\s*(?:a\s+)?(?:plan|proposal|design doc|architecture review)\b/i},{label:"do the fix regex",regex:/\b(?:just|please|go ahead and)\s+(?:fix|implement|ship|build|patch|code)\b/i},{label:"approved plan execution regex",regex:/\b(?:go with|follow|use|implement|execute)\s+(?:that|this|the)\s+(?:plan|approach|proposal|design|document)\b/i},{label:"do it that way regex",regex:/\bdo\s+it\s+(?:that|this)\s+way\b/i},{label:"approved chinese plan execution regex",regex:/(?:就)?按(?:照)?(?:这个|这个方案|这个计划|这个思路|这个文档|上面(?:的)?方案|上面(?:的)?计划|当前方案|当前计划|上述方案|上述计划)?(?:来)?(?:做|开发|实现|推进|执行|改|开始)/u}]}),implementationIntent:compileSignalDefinition({englishWords:["add","build","create","design","develop","fix","implement","improve","migrate","redesign","refactor","rewrite","ship","update","upgrade"],compactPhrases:["\u6DFB\u52A0","\u65B0\u589E","\u5B9E\u73B0","\u8BBE\u8BA1","\u4FEE\u4E00\u4E0B","\u6539\u4E00\u4E0B","\u4FEE\u8FD9\u4E2A","\u6539\u8FD9\u4E2A","\u4FEE\u95EE\u9898","\u6539\u95EE\u9898","\u4FEE\u590D","\u4FEE\u6539","\u5904\u7406\u8FD9\u4E2A","\u5904\u7406\u95EE\u9898","\u89E3\u51B3\u8FD9\u4E2A","\u89E3\u51B3\u95EE\u9898","\u641E\u5B9A\u8FD9\u4E2A","\u641E\u5B9A\u95EE\u9898","\u4F18\u5316","\u91CD\u6784","\u8FC1\u79FB","\u53D1\u5E03","\u5F00\u53D1","\u7F16\u7801","\u5347\u7EA7","\u5B8C\u5584","\u8865\u4E01","\u5904\u7406\u6389","\u505A\u5B8C"],regexes:[{label:"work on feature",regex:/\bwork on\b/i},{label:"start implementing",regex:/\bstart\s+(?:implementing|building|fixing|coding)\b/i},{label:"chinese action imperative",regex:/(?:^|[\s,。!?、;:])(?:请|帮我|麻烦)?(?:直接|马上|现在|立刻|先)?(?:修|修复|改|修改|处理|解决|搞定|弄好|补上|完善|优化|升级|实现)(?:一下|下|掉|好)?(?:这个|这|该|它|当前|上述)?(?:问题|错误|bug|文件|功能|逻辑|流程|配置|项目|代码)?(?:$|[\s,。!?、;:/])/iu},{label:"path scoped issue request",regex:/(?:(?:问题|错误|报错|bug|不能|无法|失败|异常)[\s\S]{0,120}(?:\/[^\s,。!?;:]+|[A-Za-z]:\\[^\s,。!?;:]+)|(?:\/[^\s,。!?;:]+|[A-Za-z]:\\[^\s,。!?;:]+)[\s\S]{0,120}(?:问题|错误|报错|bug|不能|无法|失败|异常))/iu}]}),explicitPlanIntent:compileSignalDefinition({englishPhrases:["approach","architecture","design doc","implementation plan","plan","plan first","proposal","strategy","trade off","trade-off","give me a plan","before you code","before coding","compare options","compare approaches","review architecture options"],compactPhrases:["\u8BA1\u5212","\u65B9\u6848","\u4FEE\u590D\u65B9\u6848","\u5B9E\u73B0\u65B9\u6848","\u6539\u9020\u65B9\u6848","\u67B6\u6784\u65B9\u6848","\u8BBE\u8BA1\u6587\u6863","\u67B6\u6784","\u601D\u8DEF","\u5148\u7ED9\u65B9\u6848","\u5148\u7ED9\u8BA1\u5212","\u5148\u51FA\u65B9\u6848","\u5148\u505A\u65B9\u6848","\u5148\u5199\u65B9\u6848","\u5148\u5206\u6790\u65B9\u6848","\u5BF9\u6BD4\u65B9\u6848","\u6BD4\u8F83\u65B9\u6848"],regexes:[{label:"before you code regex",regex:/\bbefore\s+you\s+(?:code|implement|edit|change|fix|start)\b/i},{label:"give me plan regex",regex:/\b(?:give|show|write|draft|prepare)\s+(?:me\s+)?(?:an?\s+)?(?:implementation\s+)?plan\b/i},{label:"compare tradeoffs regex",regex:/\b(?:compare|evaluate)\b[\s\S]{0,80}\b(?:options|approaches|trade[\s-]?offs)\b/i},{label:"chinese plan first regex",regex:/先(?:给|出|做|写|整理)(?:我)?(?:一(?:个|份))?(?:方案|计划|设计|思路)|先(?:对比|比较|分析)(?:一下)?(?:方案|思路|架构|选项)/u}]}),planRevisionIntent:compileSignalDefinition({englishPhrases:["adjust the plan","change the plan","edit the plan","expand the plan","modify the plan","refine the plan","revise the plan","rewrite the plan","update the plan","update the document","revise the document","edit the document","rewrite the document","adjust the document","change the document","replan","re-plan"],compactPhrases:["\u4FEE\u6539\u65B9\u6848","\u8C03\u6574\u65B9\u6848","\u66F4\u65B0\u65B9\u6848","\u8865\u5145\u65B9\u6848","\u91CD\u5199\u65B9\u6848","\u5B8C\u5584\u65B9\u6848","\u4FEE\u6539\u8BA1\u5212","\u8C03\u6574\u8BA1\u5212","\u66F4\u65B0\u8BA1\u5212","\u8865\u5145\u8BA1\u5212","\u91CD\u65B0\u89C4\u5212","\u4FEE\u6539\u6587\u6863","\u8C03\u6574\u6587\u6863","\u66F4\u65B0\u6587\u6863","\u8865\u5145\u6587\u6863","\u91CD\u5199\u6587\u6863","\u4FEE\u6539\u5F00\u53D1\u6587\u6863","\u66F4\u65B0\u5F00\u53D1\u6587\u6863","\u8C03\u6574\u5F00\u53D1\u6587\u6863","\u8865\u5145\u5F00\u53D1\u6587\u6863"],regexes:[{label:"revise plan regex",regex:/\b(?:revise|rewrite|refine|edit|adjust|modify|update|expand)\s+(?:the\s+)?(?:plan|proposal|doc|document|design)\b/i},{label:"chinese revise plan regex",regex:/(?:修改|调整|更新|补充|重写|完善)(?:一下)?(?:方案|计划|文档|开发文档)|重新(?:规划|整理)(?:一下)?(?:方案|计划|文档)?/u}]}),diagnosticIntent:compileSignalDefinition({englishPhrases:["check","debug","diagnose","error","errors","incident","inspect","investigate","log","logs","runtime","stalled","state","status","stuck","trace","triage","root cause","what happened","why is","why are","why did","why was"],compactPhrases:["\u62A5\u9519","\u9519\u8BEF","\u5F53\u524D\u60C5\u51B5","\u5F53\u524D\u72B6\u6001","\u5F53\u524D\u9879\u76EE","\u600E\u4E48\u56DE\u4E8B","\u6392\u67E5","\u65E5\u5FD7","\u72B6\u6001","\u770B\u770B","\u751F\u6210\u60C5\u51B5","\u68C0\u67E5","\u5361\u4F4F","\u8C03\u8BD5","\u8BCA\u65AD","\u8FD0\u884C\u60C5\u51B5","\u95EE\u9898","\u4E3A\u4EC0\u4E48","\u539F\u56E0","\u6839\u56E0"]}),researchIntent:compileSignalDefinition({englishPhrases:["explain","show me","what files","where is","where are","which files","locate","point me to"],compactPhrases:["\u4EC0\u4E48\u6587\u4EF6","\u54EA\u4E9B\u6587\u4EF6","\u5728\u54EA\u91CC","\u89E3\u91CA","\u54EA\u4E2A\u6587\u4EF6","\u54EA\u4E9B\u5730\u65B9","\u7ED9\u6211\u770B\u770B"]}),reviewIntent:compileSignalDefinition({englishPhrases:["audit","code review","review","sanity check","review this patch","review the diff"],compactPhrases:["\u5BA1\u67E5","\u8BC4\u5BA1","\u8FC7\u4E00\u904D","\u68C0\u67E5\u6539\u52A8","\u770B\u6539\u52A8","\u98CE\u9669\u70B9"]})}}});var init_sessionWorkflowContinuityCore=__esm({"src/utils/sessionWorkflowContinuityCore.ts"(){init_outcomeDiscipline();init_userTurnIntent()}});import{randomUUID}from"crypto";var init_crypto=__esm({"src/utils/crypto.ts"(){}});function getSessionSettingsCache(){return sessionSettingsCache}function setSessionSettingsCache(value){sessionSettingsCache=value}function getCachedSettingsForSource(source){return perSourceCache.has(source)?perSourceCache.get(source):void 0}function setCachedSettingsForSource(source,value){perSourceCache.set(source,value)}function getCachedParsedFile(path9){return parseFileCache.get(path9)}function setCachedParsedFile(path9,value){parseFileCache.set(path9,value)}function resetSettingsCache(){sessionSettingsCache=null,perSourceCache.clear(),parseFileCache.clear()}function getPluginSettingsBase(){return pluginSettingsBase}var sessionSettingsCache,perSourceCache,parseFileCache,pluginSettingsBase,init_settingsCache=__esm({"src/utils/settings/settingsCache.ts"(){sessionSettingsCache=null;__name(getSessionSettingsCache,"getSessionSettingsCache");__name(setSessionSettingsCache,"setSessionSettingsCache");perSourceCache=new Map;__name(getCachedSettingsForSource,"getCachedSettingsForSource");__name(setCachedSettingsForSource,"setCachedSettingsForSource");parseFileCache=new Map;__name(getCachedParsedFile,"getCachedParsedFile");__name(setCachedParsedFile,"setCachedParsedFile");__name(resetSettingsCache,"resetSettingsCache");__name(getPluginSettingsBase,"getPluginSettingsBase")}});function createSignal(){let listeners=new Set;return{subscribe(listener){return listeners.add(listener),()=>{listeners.delete(listener)}},emit(...args){for(let listener of listeners)listener(...args)},clear(){listeners.clear()}}}var init_signal=__esm({"src/utils/signal.ts"(){__name(createSignal,"createSignal")}});import{realpathSync}from"fs";import{cwd}from"process";function getInitialState(){let resolvedCwd="";if(typeof process<"u"&&typeof process.cwd=="function"&&typeof realpathSync=="function"){let rawCwd=cwd();try{resolvedCwd=realpathSync(rawCwd).normalize("NFC")}catch{resolvedCwd=rawCwd.normalize("NFC")}}return{originalCwd:resolvedCwd,projectRoot:resolvedCwd,totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,turnHookDurationMs:0,turnToolDurationMs:0,turnClassifierDurationMs:0,turnToolCount:0,turnHookCount:0,turnClassifierCount:0,sessionTurnCount:0,sessionToolCallCount:0,sessionCompactionCount:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,costStateRestored:!1,cwd:resolvedCwd,modelUsage:{},mainLoopModelOverride:void 0,initialMainLoopModel:null,modelStrings:null,isInteractive:!1,kairosActive:!1,strictToolResultPairing:!1,sdkAgentProgressSummariesEnabled:!1,userMsgOptIn:!1,clientType:"cli",sessionSource:void 0,questionPreviewFormat:void 0,sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,flagSettingsInline:null,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,statsStore:null,sessionId:randomUUID(),parentSessionId:void 0,loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,lastAPIRequest:null,lastAPIRequestMessages:null,lastClassifierRequests:null,cachedClaudeMdContent:null,inMemoryErrorLog:[],inlinePlugins:[],chromeFlagOverride:void 0,useCoworkPlugins:!1,sessionBypassPermissionsMode:!1,scheduledTasksEnabled:!1,sessionCronTasks:[],sessionCreatedTeams:new Set,sessionTrustAccepted:!1,sessionPersistenceDisabled:!1,hasExitedPlanMode:!1,needsPlanModeExitAttachment:!1,needsAutoModeExitAttachment:!1,lspRecommendationShownThisSession:!1,initJsonSchema:null,registeredHooks:null,planSlugCache:new Map,teleportedSessionInfo:null,invokedSkills:new Map,slowOperations:[],sessionWorkflowContinuityContext:null,sdkBetas:void 0,mainThreadAgentType:void 0,isRemoteMode:!1,...process.env.USER_TYPE==="ant"?{replBridgeActive:!1}:{},directConnectServerUrl:void 0,systemPromptSectionCache:new Map,lastEmittedDate:null,additionalDirectoriesForClaudeMd:[],allowedChannels:[],hasDevChannels:!1,sessionProjectDir:null,promptCache1hAllowlist:null,promptCache1hEligible:null,afkModeHeaderLatched:null,fastModeHeaderLatched:null,cacheEditingHeaderLatched:null,thinkingClearLatched:null,promptId:null,lastMainRequestId:void 0,lastApiCompletionTimestamp:null,pendingPostCompaction:!1,postCompactionAutoCompactState:null}}function getSessionId(){return STATE.sessionId}function getOriginalCwd(){return STATE.originalCwd}function getProjectRoot(){return STATE.projectRoot}function getCwdState(){return STATE.cwd}async function waitForScrollIdle(){for(;scrollDraining;)await new Promise(r2=>setTimeout(r2,SCROLL_DRAIN_IDLE_MS).unref?.())}function getModelStrings(){return STATE.modelStrings}function setModelStrings(modelStrings){STATE.modelStrings=modelStrings}function getIsNonInteractiveSession(){return!STATE.isInteractive}function getFlagSettingsPath(){return STATE.flagSettingsPath}function getFlagSettingsInline(){return STATE.flagSettingsInline}function getOauthTokenFromFd(){return STATE.oauthTokenFromFd}function setOauthTokenFromFd(token){STATE.oauthTokenFromFd=token}function getApiKeyFromFd(){return STATE.apiKeyFromFd}function setApiKeyFromFd(key){STATE.apiKeyFromFd=key}function getAllowedSettingSources(){return STATE.allowedSettingSources}function preferThirdPartyAuthentication(){return getIsNonInteractiveSession()&&STATE.clientType!=="claude-vscode"}function getUseCoworkPlugins(){return STATE.useCoworkPlugins}function getSessionTrustAccepted(){return STATE.sessionTrustAccepted}var STATE,sessionSwitched,onSessionSwitch,scrollDraining,SCROLL_DRAIN_IDLE_MS,init_state=__esm({"src/bootstrap/state.ts"(){init_sessionWorkflowContinuityCore();init_crypto();init_settingsCache();init_signal();__name(getInitialState,"getInitialState");STATE=getInitialState();__name(getSessionId,"getSessionId");sessionSwitched=createSignal(),onSessionSwitch=sessionSwitched.subscribe;__name(getOriginalCwd,"getOriginalCwd");__name(getProjectRoot,"getProjectRoot");__name(getCwdState,"getCwdState");scrollDraining=!1,SCROLL_DRAIN_IDLE_MS=150;__name(waitForScrollIdle,"waitForScrollIdle");__name(getModelStrings,"getModelStrings");__name(setModelStrings,"setModelStrings");__name(getIsNonInteractiveSession,"getIsNonInteractiveSession");__name(getFlagSettingsPath,"getFlagSettingsPath");__name(getFlagSettingsInline,"getFlagSettingsInline");__name(getOauthTokenFromFd,"getOauthTokenFromFd");__name(setOauthTokenFromFd,"setOauthTokenFromFd");__name(getApiKeyFromFd,"getApiKeyFromFd");__name(setApiKeyFromFd,"setApiKeyFromFd");__name(getAllowedSettingSources,"getAllowedSettingSources");__name(preferThirdPartyAuthentication,"preferThirdPartyAuthentication");__name(getUseCoworkPlugins,"getUseCoworkPlugins");__name(getSessionTrustAccepted,"getSessionTrustAccepted")}});var require_dom_mutator_cjs_production_min=__commonJS({"../../node_modules/dom-mutator/dist/dom-mutator.cjs.production.min.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var e2=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,t2={revert:__name(function(){},"revert")},n2=new Map,r2=new Set;function i3(e3){var t3=n2.get(e3);return t3||n2.set(e3,t3={element:e3,attributes:{}}),t3}__name(i3,"i");function o2(e3,t3,n3,r3,i4){var o3=n3(e3),u3={isDirty:!1,originalValue:o3,virtualValue:o3,mutations:[],el:e3,_positionTimeout:null,observer:new MutationObserver((function(){if(t3!=="position"||!u3._positionTimeout){t3==="position"&&(u3._positionTimeout=setTimeout((function(){u3._positionTimeout=null}),1e3));var r4=n3(e3);t3==="position"&&r4.parentNode===u3.virtualValue.parentNode&&r4.insertBeforeNode===u3.virtualValue.insertBeforeNode||r4!==u3.virtualValue&&(u3.originalValue=r4,i4(u3))}})),mutationRunner:i4,setValue:r3,getCurrentValue:n3};return t3==="position"&&e3.parentNode?u3.observer.observe(e3.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):u3.observer.observe(e3,(function(e4){return e4==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[e4]}})(t3)),u3}__name(o2,"o");function u2(e3,t3){var n3=t3.getCurrentValue(t3.el);t3.virtualValue=e3,e3&&typeof e3!="string"?n3&&e3.parentNode===n3.parentNode&&e3.insertBeforeNode===n3.insertBeforeNode||(t3.isDirty=!0,E()):e3!==n3&&(t3.isDirty=!0,E())}__name(u2,"u");function a2(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){return t3=e4.mutate(t3)})),u2((function(e4){return h3||(h3=document.createElement("div")),h3.innerHTML=e4,h3.innerHTML})(t3),e3)}__name(a2,"a");function l(e3){var t3=new Set(e3.originalValue.split(/\s+/).filter(Boolean));e3.mutations.forEach((function(e4){return e4.mutate(t3)})),u2(Array.from(t3).filter(Boolean).join(" "),e3)}__name(l,"l");function s2(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){return t3=e4.mutate(t3)})),u2(t3,e3)}__name(s2,"s");function c3(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){var n3=(function(e5){var t4=e5.insertBeforeSelector,n4=document.querySelector(e5.parentSelector);if(!n4)return null;var r3=t4?document.querySelector(t4):null;return t4&&!r3?null:{parentNode:n4,insertBeforeNode:r3}})(e4.mutate());t3=n3||t3})),u2(t3,e3)}__name(c3,"c");var f3=__name(function(e3){return e3.innerHTML},"f"),d=__name(function(e3,t3){return e3.innerHTML=t3},"d");function m2(e3){var t3=i3(e3);return t3.html||(t3.html=o2(e3,"html",f3,d,a2)),t3.html}__name(m2,"m");var v=__name(function(e3){return{parentNode:e3.parentElement,insertBeforeNode:e3.nextElementSibling}},"v"),p=__name(function(e3,t3){t3.insertBeforeNode&&!t3.parentNode.contains(t3.insertBeforeNode)||t3.parentNode.insertBefore(e3,t3.insertBeforeNode)},"p");function b(e3){var t3=i3(e3);return t3.position||(t3.position=o2(e3,"position",v,p,c3)),t3.position}__name(b,"b");var h3,N,S2=__name(function(e3,t3){return t3?e3.className=t3:e3.removeAttribute("class")},"S"),B=__name(function(e3){return e3.className},"B");function V(e3){var t3=i3(e3);return t3.classes||(t3.classes=o2(e3,"class",B,S2,l)),t3.classes}__name(V,"V");function g(e3,t3){var n3,r3=i3(e3);return r3.attributes[t3]||(r3.attributes[t3]=o2(e3,t3,(n3=t3,function(e4){var t4;return(t4=e4.getAttribute(n3))!=null?t4:null}),(function(e4){return function(t4,n4){return n4!==null?t4.setAttribute(e4,n4):t4.removeAttribute(e4)}})(t3),s2)),r3.attributes[t3]}__name(g,"g");function y(e3,t3,r3){if(r3.isDirty){r3.isDirty=!1;var i4=r3.virtualValue;r3.mutations.length||(function(e4,t4){var r4,i5,o3=n2.get(e4);if(o3)if(t4==="html")(r4=o3.html)==null||(i5=r4.observer)==null||i5.disconnect(),delete o3.html;else if(t4==="class"){var u3,a3;(u3=o3.classes)==null||(a3=u3.observer)==null||a3.disconnect(),delete o3.classes}else if(t4==="position"){var l2,s3;(l2=o3.position)==null||(s3=l2.observer)==null||s3.disconnect(),delete o3.position}else{var c4,f4,d2;(c4=o3.attributes)==null||(f4=c4[t4])==null||(d2=f4.observer)==null||d2.disconnect(),delete o3.attributes[t4]}})(e3,t3),r3.setValue(e3,i4)}}__name(y,"y");function k(e3,t3){e3.html&&y(t3,"html",e3.html),e3.classes&&y(t3,"class",e3.classes),e3.position&&y(t3,"position",e3.position),Object.keys(e3.attributes).forEach((function(n3){y(t3,n3,e3.attributes[n3])}))}__name(k,"k");function E(){n2.forEach(k)}__name(E,"E");function w(e3){if(e3.kind!=="position"||e3.elements.size!==1){var t3=new Set(e3.elements);document.querySelectorAll(e3.selector).forEach((function(n3){t3.has(n3)||(e3.elements.add(n3),(function(e4,t4){var n4=null;e4.kind==="html"?n4=m2(t4):e4.kind==="class"?n4=V(t4):e4.kind==="attribute"?n4=g(t4,e4.attribute):e4.kind==="position"&&(n4=b(t4)),n4&&(n4.mutations.push(e4),n4.mutationRunner(n4))})(e3,n3))}))}}__name(w,"w");function A2(){r2.forEach(w)}__name(A2,"A");function T(){typeof document<"u"&&(N||(N=new MutationObserver((function(){A2()}))),A2(),N.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}__name(T,"T");function D(e3){return typeof document>"u"?t2:(r2.add(e3),w(e3),{revert:__name(function(){var t3;(t3=e3).elements.forEach((function(e4){return(function(e5,t4){var n3=null;if(e5.kind==="html"?n3=m2(t4):e5.kind==="class"?n3=V(t4):e5.kind==="attribute"?n3=g(t4,e5.attribute):e5.kind==="position"&&(n3=b(t4)),n3){var r3=n3.mutations.indexOf(e5);r3!==-1&&n3.mutations.splice(r3,1),n3.mutationRunner(n3)}})(t3,e4)})),t3.elements.clear(),r2.delete(t3)},"revert")})}__name(D,"D");function L(e3,t3){return D({kind:"html",elements:new Set,mutate:t3,selector:e3})}__name(L,"L");function M(e3,t3){return D({kind:"position",elements:new Set,mutate:t3,selector:e3})}__name(M,"M");function _(e3,t3){return D({kind:"class",elements:new Set,mutate:t3,selector:e3})}__name(_,"_");function x2(n3,r3,i4){return e2.test(r3)?r3==="class"||r3==="className"?_(n3,(function(e3){var t3=i4(Array.from(e3).join(" "));e3.clear(),t3&&t3.split(/\s+/g).filter(Boolean).forEach((function(t4){return e3.add(t4)}))})):D({kind:"attribute",attribute:r3,elements:new Set,mutate:i4,selector:n3}):t2}__name(x2,"x");T();var O={html:L,classes:_,attribute:x2,position:M,declarative:__name(function(e3){var n3=e3.selector,r3=e3.action,i4=e3.value,o3=e3.attribute,u3=e3.parentSelector,a3=e3.insertBeforeSelector;if(o3==="html"){if(r3==="append")return L(n3,(function(e4){return e4+(i4??"")}));if(r3==="set")return L(n3,(function(){return i4??""}))}else if(o3==="class"){if(r3==="append")return _(n3,(function(e4){i4&&e4.add(i4)}));if(r3==="remove")return _(n3,(function(e4){i4&&e4.delete(i4)}));if(r3==="set")return _(n3,(function(e4){e4.clear(),i4&&e4.add(i4)}))}else if(o3==="position"){if(r3==="set"&&u3)return M(n3,(function(){return{insertBeforeSelector:a3,parentSelector:u3}}))}else{if(r3==="append")return x2(n3,o3,(function(e4){return e4!==null?e4+(i4??""):i4??""}));if(r3==="set")return x2(n3,o3,(function(){return i4??""}));if(r3==="remove")return x2(n3,o3,(function(){return null}))}return t2},"declarative")};exports2.connectGlobalObserver=T,exports2.default=O,exports2.disconnectGlobalObserver=function(){N&&N.disconnect()},exports2.validAttributeName=e2}});var require_dom_mutator_cjs_development=__commonJS({"../../node_modules/dom-mutator/dist/dom-mutator.cjs.development.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var validAttributeName=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,nullController={revert:__name(function(){},"revert")},elements=new Map,mutations=new Set;function getObserverInit(attr){return attr==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[attr]}}__name(getObserverInit,"getObserverInit");function getElementRecord(element){var record2=elements.get(element);return record2||(record2={element,attributes:{}},elements.set(element,record2)),record2}__name(getElementRecord,"getElementRecord");function createElementPropertyRecord(el,attr,getCurrentValue,setValue2,mutationRunner){var currentValue=getCurrentValue(el),record2={isDirty:!1,originalValue:currentValue,virtualValue:currentValue,mutations:[],el,_positionTimeout:null,observer:new MutationObserver(function(){if(!(attr==="position"&&record2._positionTimeout)){attr==="position"&&(record2._positionTimeout=setTimeout(function(){record2._positionTimeout=null},1e3));var currentValue2=getCurrentValue(el);attr==="position"&¤tValue2.parentNode===record2.virtualValue.parentNode&¤tValue2.insertBeforeNode===record2.virtualValue.insertBeforeNode||currentValue2!==record2.virtualValue&&(record2.originalValue=currentValue2,mutationRunner(record2))}}),mutationRunner,setValue:setValue2,getCurrentValue};return attr==="position"&&el.parentNode?record2.observer.observe(el.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):record2.observer.observe(el,getObserverInit(attr)),record2}__name(createElementPropertyRecord,"createElementPropertyRecord");function queueIfNeeded(val,record2){var currentVal=record2.getCurrentValue(record2.el);record2.virtualValue=val,val&&typeof val!="string"?(!currentVal||val.parentNode!==currentVal.parentNode||val.insertBeforeNode!==currentVal.insertBeforeNode)&&(record2.isDirty=!0,runDOMUpdates()):val!==currentVal&&(record2.isDirty=!0,runDOMUpdates())}__name(queueIfNeeded,"queueIfNeeded");function htmlMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){return val=m2.mutate(val)}),queueIfNeeded(getTransformedHTML(val),record2)}__name(htmlMutationRunner,"htmlMutationRunner");function classMutationRunner(record2){var val=new Set(record2.originalValue.split(/\s+/).filter(Boolean));record2.mutations.forEach(function(m2){return m2.mutate(val)}),queueIfNeeded(Array.from(val).filter(Boolean).join(" "),record2)}__name(classMutationRunner,"classMutationRunner");function attrMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){return val=m2.mutate(val)}),queueIfNeeded(val,record2)}__name(attrMutationRunner,"attrMutationRunner");function _loadDOMNodes(_ref){var parentSelector=_ref.parentSelector,insertBeforeSelector=_ref.insertBeforeSelector,parentNode=document.querySelector(parentSelector);if(!parentNode)return null;var insertBeforeNode=insertBeforeSelector?document.querySelector(insertBeforeSelector):null;return insertBeforeSelector&&!insertBeforeNode?null:{parentNode,insertBeforeNode}}__name(_loadDOMNodes,"_loadDOMNodes");function positionMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){var selectors=m2.mutate(),newNodes=_loadDOMNodes(selectors);val=newNodes||val}),queueIfNeeded(val,record2)}__name(positionMutationRunner,"positionMutationRunner");var getHTMLValue=__name(function(el){return el.innerHTML},"getHTMLValue"),setHTMLValue=__name(function(el,value){return el.innerHTML=value},"setHTMLValue");function getElementHTMLRecord(element){var elementRecord=getElementRecord(element);return elementRecord.html||(elementRecord.html=createElementPropertyRecord(element,"html",getHTMLValue,setHTMLValue,htmlMutationRunner)),elementRecord.html}__name(getElementHTMLRecord,"getElementHTMLRecord");var getElementPosition=__name(function(el){return{parentNode:el.parentElement,insertBeforeNode:el.nextElementSibling}},"getElementPosition"),setElementPosition=__name(function(el,value){value.insertBeforeNode&&!value.parentNode.contains(value.insertBeforeNode)||value.parentNode.insertBefore(el,value.insertBeforeNode)},"setElementPosition");function getElementPositionRecord(element){var elementRecord=getElementRecord(element);return elementRecord.position||(elementRecord.position=createElementPropertyRecord(element,"position",getElementPosition,setElementPosition,positionMutationRunner)),elementRecord.position}__name(getElementPositionRecord,"getElementPositionRecord");var setClassValue=__name(function(el,val){return val?el.className=val:el.removeAttribute("class")},"setClassValue"),getClassValue=__name(function(el){return el.className},"getClassValue");function getElementClassRecord(el){var elementRecord=getElementRecord(el);return elementRecord.classes||(elementRecord.classes=createElementPropertyRecord(el,"class",getClassValue,setClassValue,classMutationRunner)),elementRecord.classes}__name(getElementClassRecord,"getElementClassRecord");var getAttrValue=__name(function(attrName){return function(el){var _el$getAttribute;return(_el$getAttribute=el.getAttribute(attrName))!=null?_el$getAttribute:null}},"getAttrValue"),setAttrValue=__name(function(attrName){return function(el,val){return val!==null?el.setAttribute(attrName,val):el.removeAttribute(attrName)}},"setAttrValue");function getElementAttributeRecord(el,attr){var elementRecord=getElementRecord(el);return elementRecord.attributes[attr]||(elementRecord.attributes[attr]=createElementPropertyRecord(el,attr,getAttrValue(attr),setAttrValue(attr),attrMutationRunner)),elementRecord.attributes[attr]}__name(getElementAttributeRecord,"getElementAttributeRecord");function deleteElementPropertyRecord(el,attr){var element=elements.get(el);if(element)if(attr==="html"){var _element$html,_element$html$observe;(_element$html=element.html)==null||(_element$html$observe=_element$html.observer)==null||_element$html$observe.disconnect(),delete element.html}else if(attr==="class"){var _element$classes,_element$classes$obse;(_element$classes=element.classes)==null||(_element$classes$obse=_element$classes.observer)==null||_element$classes$obse.disconnect(),delete element.classes}else if(attr==="position"){var _element$position,_element$position$obs;(_element$position=element.position)==null||(_element$position$obs=_element$position.observer)==null||_element$position$obs.disconnect(),delete element.position}else{var _element$attributes,_element$attributes$a,_element$attributes$a2;(_element$attributes=element.attributes)==null||(_element$attributes$a=_element$attributes[attr])==null||(_element$attributes$a2=_element$attributes$a.observer)==null||_element$attributes$a2.disconnect(),delete element.attributes[attr]}}__name(deleteElementPropertyRecord,"deleteElementPropertyRecord");var transformContainer;function getTransformedHTML(html2){return transformContainer||(transformContainer=document.createElement("div")),transformContainer.innerHTML=html2,transformContainer.innerHTML}__name(getTransformedHTML,"getTransformedHTML");function setPropertyValue(el,attr,m2){if(m2.isDirty){m2.isDirty=!1;var val=m2.virtualValue;m2.mutations.length||deleteElementPropertyRecord(el,attr),m2.setValue(el,val)}}__name(setPropertyValue,"setPropertyValue");function setValue(m2,el){m2.html&&setPropertyValue(el,"html",m2.html),m2.classes&&setPropertyValue(el,"class",m2.classes),m2.position&&setPropertyValue(el,"position",m2.position),Object.keys(m2.attributes).forEach(function(attr){setPropertyValue(el,attr,m2.attributes[attr])})}__name(setValue,"setValue");function runDOMUpdates(){elements.forEach(setValue)}__name(runDOMUpdates,"runDOMUpdates");function startMutating(mutation,element){var record2=null;mutation.kind==="html"?record2=getElementHTMLRecord(element):mutation.kind==="class"?record2=getElementClassRecord(element):mutation.kind==="attribute"?record2=getElementAttributeRecord(element,mutation.attribute):mutation.kind==="position"&&(record2=getElementPositionRecord(element)),record2&&(record2.mutations.push(mutation),record2.mutationRunner(record2))}__name(startMutating,"startMutating");function stopMutating(mutation,el){var record2=null;if(mutation.kind==="html"?record2=getElementHTMLRecord(el):mutation.kind==="class"?record2=getElementClassRecord(el):mutation.kind==="attribute"?record2=getElementAttributeRecord(el,mutation.attribute):mutation.kind==="position"&&(record2=getElementPositionRecord(el)),!!record2){var index2=record2.mutations.indexOf(mutation);index2!==-1&&record2.mutations.splice(index2,1),record2.mutationRunner(record2)}}__name(stopMutating,"stopMutating");function refreshElementsSet(mutation){if(!(mutation.kind==="position"&&mutation.elements.size===1)){var existingElements=new Set(mutation.elements),matchingElements=document.querySelectorAll(mutation.selector);matchingElements.forEach(function(el){existingElements.has(el)||(mutation.elements.add(el),startMutating(mutation,el))})}}__name(refreshElementsSet,"refreshElementsSet");function revertMutation(mutation){mutation.elements.forEach(function(el){return stopMutating(mutation,el)}),mutation.elements.clear(),mutations.delete(mutation)}__name(revertMutation,"revertMutation");function refreshAllElementSets(){mutations.forEach(refreshElementsSet)}__name(refreshAllElementSets,"refreshAllElementSets");var observer;function disconnectGlobalObserver(){observer&&observer.disconnect()}__name(disconnectGlobalObserver,"disconnectGlobalObserver");function connectGlobalObserver(){typeof document>"u"||(observer||(observer=new MutationObserver(function(){refreshAllElementSets()})),refreshAllElementSets(),observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}__name(connectGlobalObserver,"connectGlobalObserver");connectGlobalObserver();function newMutation(m2){return typeof document>"u"?nullController:(mutations.add(m2),refreshElementsSet(m2),{revert:__name(function(){revertMutation(m2)},"revert")})}__name(newMutation,"newMutation");function html(selector,mutate2){return newMutation({kind:"html",elements:new Set,mutate:mutate2,selector})}__name(html,"html");function position(selector,mutate2){return newMutation({kind:"position",elements:new Set,mutate:mutate2,selector})}__name(position,"position");function classes(selector,mutate2){return newMutation({kind:"class",elements:new Set,mutate:mutate2,selector})}__name(classes,"classes");function attribute(selector,attribute2,mutate2){return validAttributeName.test(attribute2)?attribute2==="class"||attribute2==="className"?classes(selector,function(classnames){var mutatedClassnames=mutate2(Array.from(classnames).join(" "));classnames.clear(),mutatedClassnames&&mutatedClassnames.split(/\s+/g).filter(Boolean).forEach(function(c3){return classnames.add(c3)})}):newMutation({kind:"attribute",attribute:attribute2,elements:new Set,mutate:mutate2,selector}):nullController}__name(attribute,"attribute");function declarative(_ref2){var selector=_ref2.selector,action=_ref2.action,value=_ref2.value,attr=_ref2.attribute,parentSelector=_ref2.parentSelector,insertBeforeSelector=_ref2.insertBeforeSelector;if(attr==="html"){if(action==="append")return html(selector,function(val){return val+(value??"")});if(action==="set")return html(selector,function(){return value??""})}else if(attr==="class"){if(action==="append")return classes(selector,function(val){value&&val.add(value)});if(action==="remove")return classes(selector,function(val){value&&val.delete(value)});if(action==="set")return classes(selector,function(val){val.clear(),value&&val.add(value)})}else if(attr==="position"){if(action==="set"&&parentSelector)return position(selector,function(){return{insertBeforeSelector,parentSelector}})}else{if(action==="append")return attribute(selector,attr,function(val){return val!==null?val+(value??""):value??""});if(action==="set")return attribute(selector,attr,function(){return value??""});if(action==="remove")return attribute(selector,attr,function(){return null})}return nullController}__name(declarative,"declarative");var index={html,classes,attribute,position,declarative};exports2.connectGlobalObserver=connectGlobalObserver;exports2.default=index;exports2.disconnectGlobalObserver=disconnectGlobalObserver;exports2.validAttributeName=validAttributeName}});var require_dist=__commonJS({"../../node_modules/dom-mutator/dist/index.js"(exports2,module2){"use strict";process.env.NODE_ENV==="production"?module2.exports=require_dom_mutator_cjs_production_min():module2.exports=require_dom_mutator_cjs_development()}});var objectCreate,baseCreate,baseCreate_default,init_baseCreate=__esm({"../../node_modules/lodash-es/_baseCreate.js"(){init_isObject();objectCreate=Object.create,baseCreate=(function(){function object2(){}return __name(object2,"object"),function(proto2){if(!isObject_default(proto2))return{};if(objectCreate)return objectCreate(proto2);object2.prototype=proto2;var result2=new object2;return object2.prototype=void 0,result2}})(),baseCreate_default=baseCreate}});function copyArray(source,array2){var index=-1,length=source.length;for(array2||(array2=Array(length));++index<length;)array2[index]=source[index];return array2}var copyArray_default,init_copyArray=__esm({"../../node_modules/lodash-es/_copyArray.js"(){__name(copyArray,"copyArray");copyArray_default=copyArray}});function arrayEach(array2,iteratee2){for(var index=-1,length=array2==null?0:array2.length;++index<length&&iteratee2(array2[index],index,array2)!==!1;);return array2}var arrayEach_default,init_arrayEach=__esm({"../../node_modules/lodash-es/_arrayEach.js"(){__name(arrayEach,"arrayEach");arrayEach_default=arrayEach}});function copyObject(source,props,object2,customizer){var isNew=!object2;object2||(object2={});for(var index=-1,length=props.length;++index<length;){var key=props[index],newValue=customizer?customizer(object2[key],source[key],key,object2,source):void 0;newValue===void 0&&(newValue=source[key]),isNew?baseAssignValue_default(object2,key,newValue):assignValue_default(object2,key,newValue)}return object2}var copyObject_default,init_copyObject=__esm({"../../node_modules/lodash-es/_copyObject.js"(){init_assignValue();init_baseAssignValue();__name(copyObject,"copyObject");copyObject_default=copyObject}});function baseAssign(object2,source){return object2&©Object_default(source,keys_default(source),object2)}var baseAssign_default,init_baseAssign=__esm({"../../node_modules/lodash-es/_baseAssign.js"(){init_copyObject();init_keys();__name(baseAssign,"baseAssign");baseAssign_default=baseAssign}});function baseAssignIn(object2,source){return object2&©Object_default(source,keysIn_default(source),object2)}var baseAssignIn_default,init_baseAssignIn=__esm({"../../node_modules/lodash-es/_baseAssignIn.js"(){init_copyObject();init_keysIn();__name(baseAssignIn,"baseAssignIn");baseAssignIn_default=baseAssignIn}});function cloneBuffer(buffer,isDeep){if(isDeep)return buffer.slice();var length=buffer.length,result2=allocUnsafe?allocUnsafe(length):new buffer.constructor(length);return buffer.copy(result2),result2}var freeExports3,freeModule3,moduleExports3,Buffer3,allocUnsafe,cloneBuffer_default,init_cloneBuffer=__esm({"../../node_modules/lodash-es/_cloneBuffer.js"(){init_root();freeExports3=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule3=freeExports3&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports3=freeModule3&&freeModule3.exports===freeExports3,Buffer3=moduleExports3?root_default.Buffer:void 0,allocUnsafe=Buffer3?Buffer3.allocUnsafe:void 0;__name(cloneBuffer,"cloneBuffer");cloneBuffer_default=cloneBuffer}});function copySymbols(source,object2){return copyObject_default(source,getSymbols_default(source),object2)}var copySymbols_default,init_copySymbols=__esm({"../../node_modules/lodash-es/_copySymbols.js"(){init_copyObject();init_getSymbols();__name(copySymbols,"copySymbols");copySymbols_default=copySymbols}});function copySymbolsIn(source,object2){return copyObject_default(source,getSymbolsIn_default(source),object2)}var copySymbolsIn_default,init_copySymbolsIn=__esm({"../../node_modules/lodash-es/_copySymbolsIn.js"(){init_copyObject();init_getSymbolsIn();__name(copySymbolsIn,"copySymbolsIn");copySymbolsIn_default=copySymbolsIn}});function initCloneArray(array2){var length=array2.length,result2=new array2.constructor(length);return length&&typeof array2[0]=="string"&&hasOwnProperty16.call(array2,"index")&&(result2.index=array2.index,result2.input=array2.input),result2}var objectProto19,hasOwnProperty16,initCloneArray_default,init_initCloneArray=__esm({"../../node_modules/lodash-es/_initCloneArray.js"(){objectProto19=Object.prototype,hasOwnProperty16=objectProto19.hasOwnProperty;__name(initCloneArray,"initCloneArray");initCloneArray_default=initCloneArray}});function cloneArrayBuffer(arrayBuffer){var result2=new arrayBuffer.constructor(arrayBuffer.byteLength);return new Uint8Array_default(result2).set(new Uint8Array_default(arrayBuffer)),result2}var cloneArrayBuffer_default,init_cloneArrayBuffer=__esm({"../../node_modules/lodash-es/_cloneArrayBuffer.js"(){init_Uint8Array();__name(cloneArrayBuffer,"cloneArrayBuffer");cloneArrayBuffer_default=cloneArrayBuffer}});function cloneDataView(dataView,isDeep){var buffer=isDeep?cloneArrayBuffer_default(dataView.buffer):dataView.buffer;return new dataView.constructor(buffer,dataView.byteOffset,dataView.byteLength)}var cloneDataView_default,init_cloneDataView=__esm({"../../node_modules/lodash-es/_cloneDataView.js"(){init_cloneArrayBuffer();__name(cloneDataView,"cloneDataView");cloneDataView_default=cloneDataView}});function cloneRegExp(regexp){var result2=new regexp.constructor(regexp.source,reFlags.exec(regexp));return result2.lastIndex=regexp.lastIndex,result2}var reFlags,cloneRegExp_default,init_cloneRegExp=__esm({"../../node_modules/lodash-es/_cloneRegExp.js"(){reFlags=/\w*$/;__name(cloneRegExp,"cloneRegExp");cloneRegExp_default=cloneRegExp}});function cloneSymbol(symbol2){return symbolValueOf2?Object(symbolValueOf2.call(symbol2)):{}}var symbolProto3,symbolValueOf2,cloneSymbol_default,init_cloneSymbol=__esm({"../../node_modules/lodash-es/_cloneSymbol.js"(){init_Symbol();symbolProto3=Symbol_default?Symbol_default.prototype:void 0,symbolValueOf2=symbolProto3?symbolProto3.valueOf:void 0;__name(cloneSymbol,"cloneSymbol");cloneSymbol_default=cloneSymbol}});function cloneTypedArray(typedArray,isDeep){var buffer=isDeep?cloneArrayBuffer_default(typedArray.buffer):typedArray.buffer;return new typedArray.constructor(buffer,typedArray.byteOffset,typedArray.length)}var cloneTypedArray_default,init_cloneTypedArray=__esm({"../../node_modules/lodash-es/_cloneTypedArray.js"(){init_cloneArrayBuffer();__name(cloneTypedArray,"cloneTypedArray");cloneTypedArray_default=cloneTypedArray}});function initCloneByTag(object2,tag,isDeep){var Ctor=object2.constructor;switch(tag){case arrayBufferTag3:return cloneArrayBuffer_default(object2);case boolTag3:case dateTag3:return new Ctor(+object2);case dataViewTag4:return cloneDataView_default(object2,isDeep);case float32Tag2:case float64Tag2:case int8Tag2:case int16Tag2:case int32Tag2:case uint8Tag2:case uint8ClampedTag2:case uint16Tag2:case uint32Tag2:return cloneTypedArray_default(object2,isDeep);case mapTag4:return new Ctor;case numberTag3:case stringTag3:return new Ctor(object2);case regexpTag3:return cloneRegExp_default(object2);case setTag4:return new Ctor;case symbolTag3:return cloneSymbol_default(object2)}}var boolTag3,dateTag3,mapTag4,numberTag3,regexpTag3,setTag4,stringTag3,symbolTag3,arrayBufferTag3,dataViewTag4,float32Tag2,float64Tag2,int8Tag2,int16Tag2,int32Tag2,uint8Tag2,uint8ClampedTag2,uint16Tag2,uint32Tag2,initCloneByTag_default,init_initCloneByTag=__esm({"../../node_modules/lodash-es/_initCloneByTag.js"(){init_cloneArrayBuffer();init_cloneDataView();init_cloneRegExp();init_cloneSymbol();init_cloneTypedArray();boolTag3="[object Boolean]",dateTag3="[object Date]",mapTag4="[object Map]",numberTag3="[object Number]",regexpTag3="[object RegExp]",setTag4="[object Set]",stringTag3="[object String]",symbolTag3="[object Symbol]",arrayBufferTag3="[object ArrayBuffer]",dataViewTag4="[object DataView]",float32Tag2="[object Float32Array]",float64Tag2="[object Float64Array]",int8Tag2="[object Int8Array]",int16Tag2="[object Int16Array]",int32Tag2="[object Int32Array]",uint8Tag2="[object Uint8Array]",uint8ClampedTag2="[object Uint8ClampedArray]",uint16Tag2="[object Uint16Array]",uint32Tag2="[object Uint32Array]";__name(initCloneByTag,"initCloneByTag");initCloneByTag_default=initCloneByTag}});function initCloneObject(object2){return typeof object2.constructor=="function"&&!isPrototype_default(object2)?baseCreate_default(getPrototype_default(object2)):{}}var initCloneObject_default,init_initCloneObject=__esm({"../../node_modules/lodash-es/_initCloneObject.js"(){init_baseCreate();init_getPrototype();init_isPrototype();__name(initCloneObject,"initCloneObject");initCloneObject_default=initCloneObject}});function baseIsMap(value){return isObjectLike_default(value)&&getTag_default(value)==mapTag5}var mapTag5,baseIsMap_default,init_baseIsMap=__esm({"../../node_modules/lodash-es/_baseIsMap.js"(){init_getTag();init_isObjectLike();mapTag5="[object Map]";__name(baseIsMap,"baseIsMap");baseIsMap_default=baseIsMap}});var nodeIsMap,isMap,isMap_default,init_isMap=__esm({"../../node_modules/lodash-es/isMap.js"(){init_baseIsMap();init_baseUnary();init_nodeUtil();nodeIsMap=nodeUtil_default&&nodeUtil_default.isMap,isMap=nodeIsMap?baseUnary_default(nodeIsMap):baseIsMap_default,isMap_default=isMap}});function baseIsSet(value){return isObjectLike_default(value)&&getTag_default(value)==setTag5}var setTag5,baseIsSet_default,init_baseIsSet=__esm({"../../node_modules/lodash-es/_baseIsSet.js"(){init_getTag();init_isObjectLike();setTag5="[object Set]";__name(baseIsSet,"baseIsSet");baseIsSet_default=baseIsSet}});var nodeIsSet,isSet,isSet_default,init_isSet=__esm({"../../node_modules/lodash-es/isSet.js"(){init_baseIsSet();init_baseUnary();init_nodeUtil();nodeIsSet=nodeUtil_default&&nodeUtil_default.isSet,isSet=nodeIsSet?baseUnary_default(nodeIsSet):baseIsSet_default,isSet_default=isSet}});function baseClone(value,bitmask,customizer,key,object2,stack){var result2,isDeep=bitmask&CLONE_DEEP_FLAG,isFlat=bitmask&CLONE_FLAT_FLAG,isFull=bitmask&CLONE_SYMBOLS_FLAG;if(customizer&&(result2=object2?customizer(value,key,object2,stack):customizer(value)),result2!==void 0)return result2;if(!isObject_default(value))return value;var isArr=isArray_default(value);if(isArr){if(result2=initCloneArray_default(value),!isDeep)return copyArray_default(value,result2)}else{var tag=getTag_default(value),isFunc=tag==funcTag3||tag==genTag2;if(isBuffer_default(value))return cloneBuffer_default(value,isDeep);if(tag==objectTag5||tag==argsTag4||isFunc&&!object2){if(result2=isFlat||isFunc?{}:initCloneObject_default(value),!isDeep)return isFlat?copySymbolsIn_default(value,baseAssignIn_default(result2,value)):copySymbols_default(value,baseAssign_default(result2,value))}else{if(!cloneableTags[tag])return object2?value:{};result2=initCloneByTag_default(value,tag,isDeep)}}stack||(stack=new Stack_default);var stacked=stack.get(value);if(stacked)return stacked;stack.set(value,result2),isSet_default(value)?value.forEach(function(subValue){result2.add(baseClone(subValue,bitmask,customizer,subValue,value,stack))}):isMap_default(value)&&value.forEach(function(subValue,key2){result2.set(key2,baseClone(subValue,bitmask,customizer,key2,value,stack))});var keysFunc=isFull?isFlat?getAllKeysIn_default:getAllKeys_default:isFlat?keysIn_default:keys_default,props=isArr?void 0:keysFunc(value);return arrayEach_default(props||value,function(subValue,key2){props&&(key2=subValue,subValue=value[key2]),assignValue_default(result2,key2,baseClone(subValue,bitmask,customizer,key2,value,stack))}),result2}var CLONE_DEEP_FLAG,CLONE_FLAT_FLAG,CLONE_SYMBOLS_FLAG,argsTag4,arrayTag3,boolTag4,dateTag4,errorTag4,funcTag3,genTag2,mapTag6,numberTag4,objectTag5,regexpTag4,setTag6,stringTag4,symbolTag4,weakMapTag3,arrayBufferTag4,dataViewTag5,float32Tag3,float64Tag3,int8Tag3,int16Tag3,int32Tag3,uint8Tag3,uint8ClampedTag3,uint16Tag3,uint32Tag3,cloneableTags,baseClone_default,init_baseClone=__esm({"../../node_modules/lodash-es/_baseClone.js"(){init_Stack();init_arrayEach();init_assignValue();init_baseAssign();init_baseAssignIn();init_cloneBuffer();init_copyArray();init_copySymbols();init_copySymbolsIn();init_getAllKeys();init_getAllKeysIn();init_getTag();init_initCloneArray();init_initCloneByTag();init_initCloneObject();init_isArray();init_isBuffer();init_isMap();init_isObject();init_isSet();init_keys();init_keysIn();CLONE_DEEP_FLAG=1,CLONE_FLAT_FLAG=2,CLONE_SYMBOLS_FLAG=4,argsTag4="[object Arguments]",arrayTag3="[object Array]",boolTag4="[object Boolean]",dateTag4="[object Date]",errorTag4="[object Error]",funcTag3="[object Function]",genTag2="[object GeneratorFunction]",mapTag6="[object Map]",numberTag4="[object Number]",objectTag5="[object Object]",regexpTag4="[object RegExp]",setTag6="[object Set]",stringTag4="[object String]",symbolTag4="[object Symbol]",weakMapTag3="[object WeakMap]",arrayBufferTag4="[object ArrayBuffer]",dataViewTag5="[object DataView]",float32Tag3="[object Float32Array]",float64Tag3="[object Float64Array]",int8Tag3="[object Int8Array]",int16Tag3="[object Int16Array]",int32Tag3="[object Int32Array]",uint8Tag3="[object Uint8Array]",uint8ClampedTag3="[object Uint8ClampedArray]",uint16Tag3="[object Uint16Array]",uint32Tag3="[object Uint32Array]",cloneableTags={};cloneableTags[argsTag4]=cloneableTags[arrayTag3]=cloneableTags[arrayBufferTag4]=cloneableTags[dataViewTag5]=cloneableTags[boolTag4]=cloneableTags[dateTag4]=cloneableTags[float32Tag3]=cloneableTags[float64Tag3]=cloneableTags[int8Tag3]=cloneableTags[int16Tag3]=cloneableTags[int32Tag3]=cloneableTags[mapTag6]=cloneableTags[numberTag4]=cloneableTags[objectTag5]=cloneableTags[regexpTag4]=cloneableTags[setTag6]=cloneableTags[stringTag4]=cloneableTags[symbolTag4]=cloneableTags[uint8Tag3]=cloneableTags[uint8ClampedTag3]=cloneableTags[uint16Tag3]=cloneableTags[uint32Tag3]=!0;cloneableTags[errorTag4]=cloneableTags[funcTag3]=cloneableTags[weakMapTag3]=!1;__name(baseClone,"baseClone");baseClone_default=baseClone}});function cloneDeep(value){return baseClone_default(value,CLONE_DEEP_FLAG2|CLONE_SYMBOLS_FLAG3)}var CLONE_DEEP_FLAG2,CLONE_SYMBOLS_FLAG3,cloneDeep_default,init_cloneDeep=__esm({"../../node_modules/lodash-es/cloneDeep.js"(){init_baseClone();CLONE_DEEP_FLAG2=1,CLONE_SYMBOLS_FLAG3=4;__name(cloneDeep,"cloneDeep");cloneDeep_default=cloneDeep}});import{homedir}from"os";import{join as join2}from"path";function hasNodeOption(flag){let nodeOptions=process.env.NODE_OPTIONS;return nodeOptions?nodeOptions.split(/\s+/).includes(flag):!1}function isEnvTruthy(envVar){if(!envVar)return!1;if(typeof envVar=="boolean")return envVar;let normalizedValue=envVar.toLowerCase().trim();return["1","true","yes","on"].includes(normalizedValue)}function isEnvDefinedFalsy(envVar){if(envVar===void 0)return!1;if(typeof envVar=="boolean")return!envVar;if(!envVar)return!1;let normalizedValue=envVar.toLowerCase().trim();return["0","false","no","off"].includes(normalizedValue)}function isBareMode(){return isEnvTruthy(process.env.CLAUDE_CODE_SIMPLE)||process.argv.includes("--bare")}function shouldUseMacOSKeychain(){return process.platform!=="darwin"?!1:!!(isEnvTruthy(process.env.CLAVUE_USE_KEYCHAIN)||isEnvDefinedFalsy(process.env.CLAVUE_DISABLE_KEYCHAIN))}function getAWSRegion(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1"}function isRunningOnHomespace(){return process.env.USER_TYPE==="ant"&&isEnvTruthy(process.env.COO_RUNNING_ON_HOMESPACE)}var getClavueConfigHomeDir,getClaudeConfigHomeDir,init_envUtils=__esm({"src/utils/envUtils.ts"(){init_memoize();getClavueConfigHomeDir=memoize_default(()=>(process.env.CLAVUE_CONFIG_DIR??join2(homedir(),".clavue")).normalize("NFC"),()=>`${process.env.CLAVUE_CONFIG_DIR??""}\0${process.env.HOME??""}`),getClaudeConfigHomeDir=getClavueConfigHomeDir;__name(hasNodeOption,"hasNodeOption");__name(isEnvTruthy,"isEnvTruthy");__name(isEnvDefinedFalsy,"isEnvDefinedFalsy");__name(isBareMode,"isBareMode");__name(shouldUseMacOSKeychain,"shouldUseMacOSKeychain");__name(getAWSRegion,"getAWSRegion");__name(isRunningOnHomespace,"isRunningOnHomespace")}});function createBufferedWriter({writeFn,flushIntervalMs=1e3,maxBufferSize=100,maxBufferBytes=1/0,immediateMode=!1}){let buffer=[],bufferBytes=0,flushTimer=null,pendingOverflow=null;function clearTimer(){flushTimer&&(clearTimeout(flushTimer),flushTimer=null)}__name(clearTimer,"clearTimer");function flush(){pendingOverflow&&(writeFn(pendingOverflow.join("")),pendingOverflow=null),buffer.length!==0&&(writeFn(buffer.join("")),buffer=[],bufferBytes=0,clearTimer())}__name(flush,"flush");function scheduleFlush(){flushTimer||(flushTimer=setTimeout(flush,flushIntervalMs))}__name(scheduleFlush,"scheduleFlush");function flushDeferred(){if(pendingOverflow){pendingOverflow.push(...buffer),buffer=[],bufferBytes=0,clearTimer();return}let detached=buffer;buffer=[],bufferBytes=0,clearTimer(),pendingOverflow=detached,setImmediate(()=>{let toWrite=pendingOverflow;pendingOverflow=null,toWrite&&writeFn(toWrite.join(""))})}return __name(flushDeferred,"flushDeferred"),{write(content){if(immediateMode){writeFn(content);return}buffer.push(content),bufferBytes+=content.length,scheduleFlush(),(buffer.length>=maxBufferSize||bufferBytes>=maxBufferBytes)&&flushDeferred()},flush,dispose(){flush()}}}var init_bufferedWriter=__esm({"src/utils/bufferedWriter.ts"(){__name(createBufferedWriter,"createBufferedWriter")}});function registerCleanup(cleanupFn){return cleanupFunctions.add(cleanupFn),()=>cleanupFunctions.delete(cleanupFn)}var cleanupFunctions,init_cleanupRegistry=__esm({"src/utils/cleanupRegistry.ts"(){cleanupFunctions=new Set;__name(registerCleanup,"registerCleanup")}});function extractDebugCategories(message){let categories=[],mcpMatch=message.match(/^MCP server ["']([^"']+)["']/);if(mcpMatch&&mcpMatch[1])categories.push("mcp"),categories.push(mcpMatch[1].toLowerCase());else{let prefixMatch=message.match(/^([^:[]+):/);prefixMatch&&prefixMatch[1]&&categories.push(prefixMatch[1].trim().toLowerCase())}let bracketMatch=message.match(/^\[([^\]]+)]/);bracketMatch&&bracketMatch[1]&&categories.push(bracketMatch[1].trim().toLowerCase()),message.toLowerCase().includes("1p event:")&&categories.push("1p");let secondaryMatch=message.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(secondaryMatch&&secondaryMatch[1]){let secondary=secondaryMatch[1].trim().toLowerCase();secondary.length<30&&!secondary.includes(" ")&&categories.push(secondary)}return Array.from(new Set(categories))}function shouldShowDebugCategories(categories,filter3){return filter3?categories.length===0?!1:filter3.isExclusive?!categories.some(cat=>filter3.exclude.includes(cat)):categories.some(cat=>filter3.include.includes(cat)):!0}function shouldShowDebugMessage(message,filter3){if(!filter3)return!0;let categories=extractDebugCategories(message);return shouldShowDebugCategories(categories,filter3)}var parseDebugFilter,init_debugFilter=__esm({"src/utils/debugFilter.ts"(){init_memoize();parseDebugFilter=memoize_default(filterString=>{if(!filterString||filterString.trim()==="")return null;let filters=filterString.split(",").map(f3=>f3.trim()).filter(Boolean);if(filters.length===0)return null;let hasExclusive=filters.some(f3=>f3.startsWith("!")),hasInclusive=filters.some(f3=>!f3.startsWith("!"));if(hasExclusive&&hasInclusive)return null;let cleanFilters=filters.map(f3=>f3.replace(/^!/,"").toLowerCase());return{include:hasExclusive?[]:cleanFilters,exclude:hasExclusive?cleanFilters:[],isExclusive:hasExclusive}});__name(extractDebugCategories,"extractDebugCategories");__name(shouldShowDebugCategories,"shouldShowDebugCategories");__name(shouldShowDebugMessage,"shouldShowDebugMessage")}});function __classPrivateFieldSet(receiver,state,value,kind,f3){if(kind==="m")throw new TypeError("Private method is not writable");if(kind==="a"&&!f3)throw new TypeError("Private accessor was defined without a setter");if(typeof state=="function"?receiver!==state||!f3:!state.has(receiver))throw new TypeError("Cannot write private member to an object whose class did not declare it");return kind==="a"?f3.call(receiver,value):f3?f3.value=value:state.set(receiver,value),value}function __classPrivateFieldGet(receiver,state,kind,f3){if(kind==="a"&&!f3)throw new TypeError("Private accessor was defined without a getter");if(typeof state=="function"?receiver!==state||!f3:!state.has(receiver))throw new TypeError("Cannot read private member from an object whose class did not declare it");return kind==="m"?f3:kind==="a"?f3.call(receiver):f3?f3.value:state.get(receiver)}var init_tslib=__esm({"../../node_modules/@anthropic-ai/sdk/internal/tslib.mjs"(){__name(__classPrivateFieldSet,"__classPrivateFieldSet");__name(__classPrivateFieldGet,"__classPrivateFieldGet")}});var uuid4,init_uuid=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/uuid.mjs"(){uuid4=__name(function(){let{crypto:crypto3}=globalThis;if(crypto3?.randomUUID)return uuid4=crypto3.randomUUID.bind(crypto3),crypto3.randomUUID();let u8=new Uint8Array(1),randomByte=crypto3?()=>crypto3.getRandomValues(u8)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,c3=>(+c3^randomByte()&15>>+c3/4).toString(16))},"uuid4")}});function isAbortError(err){return typeof err=="object"&&err!==null&&("name"in err&&err.name==="AbortError"||"message"in err&&String(err.message).includes("FetchRequestCanceledException"))}var castToError,init_errors=__esm({"../../node_modules/@anthropic-ai/sdk/internal/errors.mjs"(){__name(isAbortError,"isAbortError");castToError=__name(err=>{if(err instanceof Error)return err;if(typeof err=="object"&&err!==null){try{if(Object.prototype.toString.call(err)==="[object Error]"){let error40=new Error(err.message,err.cause?{cause:err.cause}:{});return err.stack&&(error40.stack=err.stack),err.cause&&!error40.cause&&(error40.cause=err.cause),err.name&&(error40.name=err.name),error40}}catch{}try{return new Error(JSON.stringify(err))}catch{}}return new Error(err)},"castToError")}});var AnthropicError,APIError,APIUserAbortError,APIConnectionError,APIConnectionTimeoutError,BadRequestError,AuthenticationError,PermissionDeniedError,NotFoundError,ConflictError,UnprocessableEntityError,RateLimitError,InternalServerError,init_error=__esm({"../../node_modules/@anthropic-ai/sdk/core/error.mjs"(){init_errors();AnthropicError=class extends Error{static{__name(this,"AnthropicError")}},APIError=class _APIError extends AnthropicError{static{__name(this,"APIError")}constructor(status,error40,message,headers,type){super(`${_APIError.makeMessage(status,error40,message)}`),this.status=status,this.headers=headers,this.requestID=headers?.get("request-id"),this.error=error40,this.type=type??null}static makeMessage(status,error40,message){let msg=error40?.message?typeof error40.message=="string"?error40.message:JSON.stringify(error40.message):error40?JSON.stringify(error40):message;return status&&msg?`${status} ${msg}`:status?`${status} status code (no body)`:msg||"(no status code or body)"}static generate(status,errorResponse,message,headers){if(!status||!headers)return new APIConnectionError({message,cause:castToError(errorResponse)});let error40=errorResponse,type=error40?.error?.type;return status===400?new BadRequestError(status,error40,message,headers,type):status===401?new AuthenticationError(status,error40,message,headers,type):status===403?new PermissionDeniedError(status,error40,message,headers,type):status===404?new NotFoundError(status,error40,message,headers,type):status===409?new ConflictError(status,error40,message,headers,type):status===422?new UnprocessableEntityError(status,error40,message,headers,type):status===429?new RateLimitError(status,error40,message,headers,type):status>=500?new InternalServerError(status,error40,message,headers,type):new _APIError(status,error40,message,headers,type)}},APIUserAbortError=class extends APIError{static{__name(this,"APIUserAbortError")}constructor({message}={}){super(void 0,void 0,message||"Request was aborted.",void 0)}},APIConnectionError=class extends APIError{static{__name(this,"APIConnectionError")}constructor({message,cause}){super(void 0,void 0,message||"Connection error.",void 0),cause&&(this.cause=cause)}},APIConnectionTimeoutError=class extends APIConnectionError{static{__name(this,"APIConnectionTimeoutError")}constructor({message}={}){super({message:message??"Request timed out."})}},BadRequestError=class extends APIError{static{__name(this,"BadRequestError")}},AuthenticationError=class extends APIError{static{__name(this,"AuthenticationError")}},PermissionDeniedError=class extends APIError{static{__name(this,"PermissionDeniedError")}},NotFoundError=class extends APIError{static{__name(this,"NotFoundError")}},ConflictError=class extends APIError{static{__name(this,"ConflictError")}},UnprocessableEntityError=class extends APIError{static{__name(this,"UnprocessableEntityError")}},RateLimitError=class extends APIError{static{__name(this,"RateLimitError")}},InternalServerError=class extends APIError{static{__name(this,"InternalServerError")}}}});function maybeObj(x2){return typeof x2!="object"?{}:x2??{}}function isEmptyObj(obj){if(!obj)return!0;for(let _k in obj)return!1;return!0}function hasOwn(obj,key){return Object.prototype.hasOwnProperty.call(obj,key)}var startsWithSchemeRegexp,isAbsoluteURL,isArray2,isReadonlyArray,validatePositiveInteger,safeJSON,init_values=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/values.mjs"(){init_error();startsWithSchemeRegexp=/^[a-z][a-z0-9+.-]*:/i,isAbsoluteURL=__name(url3=>startsWithSchemeRegexp.test(url3),"isAbsoluteURL"),isArray2=__name(val=>(isArray2=Array.isArray,isArray2(val)),"isArray"),isReadonlyArray=isArray2;__name(maybeObj,"maybeObj");__name(isEmptyObj,"isEmptyObj");__name(hasOwn,"hasOwn");validatePositiveInteger=__name((name,n2)=>{if(typeof n2!="number"||!Number.isInteger(n2))throw new AnthropicError(`${name} must be an integer`);if(n2<0)throw new AnthropicError(`${name} must be a positive integer`);return n2},"validatePositiveInteger"),safeJSON=__name(text=>{try{return JSON.parse(text)}catch{return}},"safeJSON")}});var sleep,init_sleep=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/sleep.mjs"(){sleep=__name(ms=>new Promise(resolve9=>setTimeout(resolve9,ms)),"sleep")}});var VERSION2,init_version=__esm({"../../node_modules/@anthropic-ai/sdk/version.mjs"(){VERSION2="0.82.0"}});function getDetectedPlatform(){return typeof Deno<"u"&&Deno.build!=null?"deno":typeof EdgeRuntime<"u"?"edge":Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]"?"node":"unknown"}function getBrowserInfo(){if(typeof navigator>"u"||!navigator)return null;let browserPatterns=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key,pattern}of browserPatterns){let match=pattern.exec(navigator.userAgent);if(match){let major=match[1]||0,minor=match[2]||0,patch=match[3]||0;return{browser:key,version:`${major}.${minor}.${patch}`}}}return null}var isRunningInBrowser,getPlatformProperties,normalizeArch,normalizePlatform,_platformHeaders,getPlatformHeaders,init_detect_platform=__esm({"../../node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs"(){init_version();isRunningInBrowser=__name(()=>typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u","isRunningInBrowser");__name(getDetectedPlatform,"getDetectedPlatform");getPlatformProperties=__name(()=>{let detectedPlatform=getDetectedPlatform();if(detectedPlatform==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":VERSION2,"X-Stainless-OS":normalizePlatform(Deno.build.os),"X-Stainless-Arch":normalizeArch(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version=="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":VERSION2,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if(detectedPlatform==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":VERSION2,"X-Stainless-OS":normalizePlatform(globalThis.process.platform??"unknown"),"X-Stainless-Arch":normalizeArch(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let browserInfo=getBrowserInfo();return browserInfo?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":VERSION2,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${browserInfo.browser}`,"X-Stainless-Runtime-Version":browserInfo.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":VERSION2,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}},"getPlatformProperties");__name(getBrowserInfo,"getBrowserInfo");normalizeArch=__name(arch=>arch==="x32"?"x32":arch==="x86_64"||arch==="x64"?"x64":arch==="arm"?"arm":arch==="aarch64"||arch==="arm64"?"arm64":arch?`other:${arch}`:"unknown","normalizeArch"),normalizePlatform=__name(platform2=>(platform2=platform2.toLowerCase(),platform2.includes("ios")?"iOS":platform2==="android"?"Android":platform2==="darwin"?"MacOS":platform2==="win32"?"Windows":platform2==="freebsd"?"FreeBSD":platform2==="openbsd"?"OpenBSD":platform2==="linux"?"Linux":platform2?`Other:${platform2}`:"Unknown"),"normalizePlatform"),getPlatformHeaders=__name(()=>_platformHeaders??(_platformHeaders=getPlatformProperties()),"getPlatformHeaders")}});function getDefaultFetch(){if(typeof fetch<"u")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function makeReadableStream(...args){let ReadableStream3=globalThis.ReadableStream;if(typeof ReadableStream3>"u")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new ReadableStream3(...args)}function ReadableStreamFrom(iterable){let iter=Symbol.asyncIterator in iterable?iterable[Symbol.asyncIterator]():iterable[Symbol.iterator]();return makeReadableStream({start(){},async pull(controller){let{done,value}=await iter.next();done?controller.close():controller.enqueue(value)},async cancel(){await iter.return?.()}})}function ReadableStreamToAsyncIterable(stream4){if(stream4[Symbol.asyncIterator])return stream4;let reader=stream4.getReader();return{async next(){try{let result2=await reader.read();return result2?.done&&reader.releaseLock(),result2}catch(e2){throw reader.releaseLock(),e2}},async return(){let cancelPromise=reader.cancel();return reader.releaseLock(),await cancelPromise,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function CancelReadableStream(stream4){if(stream4===null||typeof stream4!="object")return;if(stream4[Symbol.asyncIterator]){await stream4[Symbol.asyncIterator]().return?.();return}let reader=stream4.getReader(),cancelPromise=reader.cancel();reader.releaseLock(),await cancelPromise}var init_shims=__esm({"../../node_modules/@anthropic-ai/sdk/internal/shims.mjs"(){__name(getDefaultFetch,"getDefaultFetch");__name(makeReadableStream,"makeReadableStream");__name(ReadableStreamFrom,"ReadableStreamFrom");__name(ReadableStreamToAsyncIterable,"ReadableStreamToAsyncIterable");__name(CancelReadableStream,"CancelReadableStream")}});var FallbackEncoder,init_request_options=__esm({"../../node_modules/@anthropic-ai/sdk/internal/request-options.mjs"(){FallbackEncoder=__name(({headers,body})=>({bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(body)}),"FallbackEncoder")}});function stringifyQuery(query){return Object.entries(query).filter(([_,value])=>typeof value<"u").map(([key,value])=>{if(typeof value=="string"||typeof value=="number"||typeof value=="boolean")return`${encodeURIComponent(key)}=${encodeURIComponent(value)}`;if(value===null)return`${encodeURIComponent(key)}=`;throw new AnthropicError(`Cannot stringify type ${typeof value}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}var init_query=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/query.mjs"(){init_error();__name(stringifyQuery,"stringifyQuery")}});function concatBytes(buffers){let length=0;for(let buffer of buffers)length+=buffer.length;let output=new Uint8Array(length),index=0;for(let buffer of buffers)output.set(buffer,index),index+=buffer.length;return output}function encodeUTF8(str){let encoder;return(encodeUTF8_??(encoder=new globalThis.TextEncoder,encodeUTF8_=encoder.encode.bind(encoder)))(str)}function decodeUTF8(bytes){let decoder;return(decodeUTF8_??(decoder=new globalThis.TextDecoder,decodeUTF8_=decoder.decode.bind(decoder)))(bytes)}var encodeUTF8_,decodeUTF8_,init_bytes=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/bytes.mjs"(){__name(concatBytes,"concatBytes");__name(encodeUTF8,"encodeUTF8");__name(decodeUTF8,"decodeUTF8")}});function findNewlineIndex(buffer,startIndex){for(let i3=startIndex??0;i3<buffer.length;i3++){if(buffer[i3]===10)return{preceding:i3,index:i3+1,carriage:!1};if(buffer[i3]===13)return{preceding:i3,index:i3+1,carriage:!0}}return null}function findDoubleNewlineIndex(buffer){for(let i3=0;i3<buffer.length-1;i3++){if(buffer[i3]===10&&buffer[i3+1]===10||buffer[i3]===13&&buffer[i3+1]===13)return i3+2;if(buffer[i3]===13&&buffer[i3+1]===10&&i3+3<buffer.length&&buffer[i3+2]===13&&buffer[i3+3]===10)return i3+4}return-1}var _LineDecoder_buffer,_LineDecoder_carriageReturnIndex,LineDecoder,init_line=__esm({"../../node_modules/@anthropic-ai/sdk/internal/decoders/line.mjs"(){init_tslib();init_bytes();LineDecoder=class{static{__name(this,"LineDecoder")}constructor(){_LineDecoder_buffer.set(this,void 0),_LineDecoder_carriageReturnIndex.set(this,void 0),__classPrivateFieldSet(this,_LineDecoder_buffer,new Uint8Array,"f"),__classPrivateFieldSet(this,_LineDecoder_carriageReturnIndex,null,"f")}decode(chunk2){if(chunk2==null)return[];let binaryChunk=chunk2 instanceof ArrayBuffer?new Uint8Array(chunk2):typeof chunk2=="string"?encodeUTF8(chunk2):chunk2;__classPrivateFieldSet(this,_LineDecoder_buffer,concatBytes([__classPrivateFieldGet(this,_LineDecoder_buffer,"f"),binaryChunk]),"f");let lines=[],patternIndex;for(;(patternIndex=findNewlineIndex(__classPrivateFieldGet(this,_LineDecoder_buffer,"f"),__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")))!=null;){if(patternIndex.carriage&&__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")==null){__classPrivateFieldSet(this,_LineDecoder_carriageReturnIndex,patternIndex.index,"f");continue}if(__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")!=null&&(patternIndex.index!==__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")+1||patternIndex.carriage)){lines.push(decodeUTF8(__classPrivateFieldGet(this,_LineDecoder_buffer,"f").subarray(0,__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")-1))),__classPrivateFieldSet(this,_LineDecoder_buffer,__classPrivateFieldGet(this,_LineDecoder_buffer,"f").subarray(__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")),"f"),__classPrivateFieldSet(this,_LineDecoder_carriageReturnIndex,null,"f");continue}let endIndex=__classPrivateFieldGet(this,_LineDecoder_carriageReturnIndex,"f")!==null?patternIndex.preceding-1:patternIndex.preceding,line=decodeUTF8(__classPrivateFieldGet(this,_LineDecoder_buffer,"f").subarray(0,endIndex));lines.push(line),__classPrivateFieldSet(this,_LineDecoder_buffer,__classPrivateFieldGet(this,_LineDecoder_buffer,"f").subarray(patternIndex.index),"f"),__classPrivateFieldSet(this,_LineDecoder_carriageReturnIndex,null,"f")}return lines}flush(){return __classPrivateFieldGet(this,_LineDecoder_buffer,"f").length?this.decode(`
|
|
5
5
|
`):[]}};_LineDecoder_buffer=new WeakMap,_LineDecoder_carriageReturnIndex=new WeakMap;LineDecoder.NEWLINE_CHARS=new Set([`
|
|
6
6
|
`,"\r"]);LineDecoder.NEWLINE_REGEXP=/\r\n|[\n\r]/g;__name(findNewlineIndex,"findNewlineIndex");__name(findDoubleNewlineIndex,"findDoubleNewlineIndex")}});function noop2(){}function makeLogFn(fnLevel,logger,logLevel){return!logger||levelNumbers[fnLevel]>levelNumbers[logLevel]?noop2:logger[fnLevel].bind(logger)}function loggerFor(client2){let logger=client2.logger,logLevel=client2.logLevel??"off";if(!logger)return noopLogger;let cachedLogger=cachedLoggers.get(logger);if(cachedLogger&&cachedLogger[0]===logLevel)return cachedLogger[1];let levelLogger={error:makeLogFn("error",logger,logLevel),warn:makeLogFn("warn",logger,logLevel),info:makeLogFn("info",logger,logLevel),debug:makeLogFn("debug",logger,logLevel)};return cachedLoggers.set(logger,[logLevel,levelLogger]),levelLogger}var levelNumbers,parseLogLevel,noopLogger,cachedLoggers,formatRequestDetails,init_log=__esm({"../../node_modules/@anthropic-ai/sdk/internal/utils/log.mjs"(){init_values();levelNumbers={off:0,error:200,warn:300,info:400,debug:500},parseLogLevel=__name((maybeLevel,sourceName,client2)=>{if(maybeLevel){if(hasOwn(levelNumbers,maybeLevel))return maybeLevel;loggerFor(client2).warn(`${sourceName} was set to ${JSON.stringify(maybeLevel)}, expected one of ${JSON.stringify(Object.keys(levelNumbers))}`)}},"parseLogLevel");__name(noop2,"noop");__name(makeLogFn,"makeLogFn");noopLogger={error:noop2,warn:noop2,info:noop2,debug:noop2},cachedLoggers=new WeakMap;__name(loggerFor,"loggerFor");formatRequestDetails=__name(details=>(details.options&&(details.options={...details.options},delete details.options.headers),details.headers&&(details.headers=Object.fromEntries((details.headers instanceof Headers?[...details.headers]:Object.entries(details.headers)).map(([name,value])=>[name,name.toLowerCase()==="x-api-key"||name.toLowerCase()==="authorization"||name.toLowerCase()==="cookie"||name.toLowerCase()==="set-cookie"?"***":value]))),"retryOfRequestLogID"in details&&(details.retryOfRequestLogID&&(details.retryOf=details.retryOfRequestLogID),delete details.retryOfRequestLogID),details),"formatRequestDetails")}});async function*_iterSSEMessages(response,controller){if(!response.body)throw controller.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative"?new AnthropicError("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api"):new AnthropicError("Attempted to iterate over a response with no body");let sseDecoder=new SSEDecoder,lineDecoder=new LineDecoder,iter=ReadableStreamToAsyncIterable(response.body);for await(let sseChunk of iterSSEChunks(iter))for(let line of lineDecoder.decode(sseChunk)){let sse=sseDecoder.decode(line);sse&&(yield sse)}for(let line of lineDecoder.flush()){let sse=sseDecoder.decode(line);sse&&(yield sse)}}async function*iterSSEChunks(iterator2){let data=new Uint8Array;for await(let chunk2 of iterator2){if(chunk2==null)continue;let binaryChunk=chunk2 instanceof ArrayBuffer?new Uint8Array(chunk2):typeof chunk2=="string"?encodeUTF8(chunk2):chunk2,newData=new Uint8Array(data.length+binaryChunk.length);newData.set(data),newData.set(binaryChunk,data.length),data=newData;let patternIndex;for(;(patternIndex=findDoubleNewlineIndex(data))!==-1;)yield data.slice(0,patternIndex),data=data.slice(patternIndex)}data.length>0&&(yield data)}function partition2(str,delimiter){let index=str.indexOf(delimiter);return index!==-1?[str.substring(0,index),delimiter,str.substring(index+delimiter.length)]:[str,"",""]}var _Stream_client,Stream,SSEDecoder,init_streaming=__esm({"../../node_modules/@anthropic-ai/sdk/core/streaming.mjs"(){init_tslib();init_error();init_shims();init_line();init_shims();init_errors();init_values();init_bytes();init_log();init_error();Stream=class _Stream{static{__name(this,"Stream")}constructor(iterator2,controller,client2){this.iterator=iterator2,_Stream_client.set(this,void 0),this.controller=controller,__classPrivateFieldSet(this,_Stream_client,client2,"f")}static fromSSEResponse(response,controller,client2){let consumed=!1,logger=client2?loggerFor(client2):console;async function*iterator2(){if(consumed)throw new AnthropicError("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");consumed=!0;let done=!1;try{for await(let sse of _iterSSEMessages(response,controller)){if(sse.event==="completion")try{yield JSON.parse(sse.data)}catch(e2){throw logger.error("Could not parse message into JSON:",sse.data),logger.error("From chunk:",sse.raw),e2}if(sse.event==="message_start"||sse.event==="message_delta"||sse.event==="message_stop"||sse.event==="content_block_start"||sse.event==="content_block_delta"||sse.event==="content_block_stop")try{yield JSON.parse(sse.data)}catch(e2){throw logger.error("Could not parse message into JSON:",sse.data),logger.error("From chunk:",sse.raw),e2}if(sse.event!=="ping"&&sse.event==="error"){let body=safeJSON(sse.data)??sse.data,type=body?.error?.type;throw new APIError(void 0,body,void 0,response.headers,type)}}done=!0}catch(e2){if(isAbortError(e2))return;throw e2}finally{done||controller.abort()}}return __name(iterator2,"iterator"),new _Stream(iterator2,controller,client2)}static fromReadableStream(readableStream,controller,client2){let consumed=!1;async function*iterLines(){let lineDecoder=new LineDecoder,iter=ReadableStreamToAsyncIterable(readableStream);for await(let chunk2 of iter)for(let line of lineDecoder.decode(chunk2))yield line;for(let line of lineDecoder.flush())yield line}__name(iterLines,"iterLines");async function*iterator2(){if(consumed)throw new AnthropicError("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");consumed=!0;let done=!1;try{for await(let line of iterLines())done||line&&(yield JSON.parse(line));done=!0}catch(e2){if(isAbortError(e2))return;throw e2}finally{done||controller.abort()}}return __name(iterator2,"iterator"),new _Stream(iterator2,controller,client2)}[(_Stream_client=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let left=[],right=[],iterator2=this.iterator(),teeIterator=__name(queue=>({next:__name(()=>{if(queue.length===0){let result2=iterator2.next();left.push(result2),right.push(result2)}return queue.shift()},"next")}),"teeIterator");return[new _Stream(()=>teeIterator(left),this.controller,__classPrivateFieldGet(this,_Stream_client,"f")),new _Stream(()=>teeIterator(right),this.controller,__classPrivateFieldGet(this,_Stream_client,"f"))]}toReadableStream(){let self2=this,iter;return makeReadableStream({async start(){iter=self2[Symbol.asyncIterator]()},async pull(ctrl){try{let{value,done}=await iter.next();if(done)return ctrl.close();let bytes=encodeUTF8(JSON.stringify(value)+`
|
|
@@ -221,8 +221,8 @@ ${gitignoreEntry}
|
|
|
221
221
|
`),firstLine=headerParts.shift();if(!firstLine)return socket.destroy(),reject2(new Error("No header received from proxy CONNECT response"));let firstLineParts=firstLine.split(" "),statusCode=+firstLineParts[1],statusText=firstLineParts.slice(2).join(" "),headers={};for(let header of headerParts){if(!header)continue;let firstColon=header.indexOf(":");if(firstColon===-1)return socket.destroy(),reject2(new Error(`Invalid header from proxy CONNECT response: "${header}"`));let key=header.slice(0,firstColon).toLowerCase(),value=header.slice(firstColon+1).trimStart(),current=headers[key];typeof current=="string"?headers[key]=[current,value]:Array.isArray(current)?current.push(value):headers[key]=value}debug("got proxy server response: %o %o",firstLine,headers),cleanup(),resolve9({connect:{statusCode,statusText,headers},buffered})}__name(ondata,"ondata"),socket.on("error",onerror),socket.on("end",onend),read()})}__name(parseProxyResponse,"parseProxyResponse");var debug2=(0,import_debug10.default)("https-proxy-agent"),setServernameFromNonIpHost=__name(options=>options.servername===void 0&&options.host&&!net2.isIP(options.host)?{...options,servername:options.host}:options,"setServernameFromNonIpHost"),HttpsProxyAgent=class extends Agent2{static{__name(this,"HttpsProxyAgent")}constructor(proxy,opts){super(opts),this.options={path:void 0},this.proxy=typeof proxy=="string"?new URL2(proxy):proxy,this.proxyHeaders=opts?.headers??{},debug2("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let host=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),port=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...opts?omit3(opts,"headers"):null,host,port}}async connect(req,opts){let{proxy}=this;if(!opts.host)throw new TypeError('No "host" provided');let socket;proxy.protocol==="https:"?(debug2("Creating `tls.Socket`: %o",this.connectOpts),socket=tls.connect(setServernameFromNonIpHost(this.connectOpts))):(debug2("Creating `net.Socket`: %o",this.connectOpts),socket=net2.connect(this.connectOpts));let headers=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},host=net2.isIPv6(opts.host)?`[${opts.host}]`:opts.host,payload=`CONNECT ${host}:${opts.port} HTTP/1.1\r
|
|
222
222
|
`;if(proxy.username||proxy.password){let auth=`${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;headers["Proxy-Authorization"]=`Basic ${Buffer.from(auth).toString("base64")}`}headers.Host=`${host}:${opts.port}`,headers["Proxy-Connection"]||(headers["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let name of Object.keys(headers))payload+=`${name}: ${headers[name]}\r
|
|
223
223
|
`;let proxyResponsePromise=parseProxyResponse(socket);socket.write(`${payload}\r
|
|
224
|
-
`);let{connect:connect3,buffered}=await proxyResponsePromise;if(req.emit("proxyConnect",connect3),this.emit("proxyConnect",connect3,req),connect3.statusCode===200)return req.once("socket",resume),opts.secureEndpoint?(debug2("Upgrading socket connection to TLS"),tls.connect({...omit3(setServernameFromNonIpHost(opts),"host","path","port"),socket})):socket;socket.destroy();let fakeSocket=new net2.Socket({writable:!1});return fakeSocket.readable=!0,req.once("socket",s2=>{debug2("Replaying proxy buffer for failed request"),assert2(s2.listenerCount("data")>0),s2.push(buffered),s2.push(null)}),fakeSocket}};HttpsProxyAgent.protocols=["http","https"];function resume(socket){socket.resume()}__name(resume,"resume");function omit3(obj,...keys2){let ret={},key;for(key in obj)keys2.includes(key)||(ret[key]=obj[key]);return ret}__name(omit3,"omit");init_memoize();init_memoize();init_debug();init_envUtils();init_fsOperations();var getCACertificates=memoize_default(()=>{let useSystemCA=hasNodeOption("--use-system-ca")||hasNodeOption("--use-openssl-ca"),extraCertsPath=process.env.NODE_EXTRA_CA_CERTS;if(logForDebugging(`CA certs: useSystemCA=${useSystemCA}, extraCertsPath=${extraCertsPath}`),!useSystemCA&&!extraCertsPath)return;let tls2=__require("tls"),certs=[];if(useSystemCA){let getCACerts=tls2.getCACertificates,systemCAs=getCACerts?.("system");if(systemCAs&&systemCAs.length>0)certs.push(...systemCAs),logForDebugging(`CA certs: Loaded ${certs.length} system CA certificates (--use-system-ca)`);else if(!getCACerts&&!extraCertsPath){logForDebugging("CA certs: --use-system-ca set but system CA API unavailable, deferring to runtime");return}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base (--use-system-ca fallback)`)}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base`);if(extraCertsPath)try{let extraCert=getFsImplementation().readFileSync(extraCertsPath,{encoding:"utf8"});certs.push(extraCert),logForDebugging(`CA certs: Appended extra certificates from NODE_EXTRA_CA_CERTS (${extraCertsPath})`)}catch(error40){logForDebugging(`CA certs: Failed to read NODE_EXTRA_CA_CERTS file (${extraCertsPath}): ${error40}`,{level:"error"})}return certs.length>0?certs:void 0});init_debug();init_envUtils();init_memoize();import{Agent as HttpsAgent2}from"https";init_debug();init_fsOperations();var getMTLSConfig=memoize_default(()=>{let config2={};if(process.env.CLAUDE_CODE_CLIENT_CERT)try{config2.cert=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_CERT,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client certificate from CLAUDE_CODE_CLIENT_CERT")}catch(error40){logForDebugging(`mTLS: Failed to load client certificate: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY)try{config2.key=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_KEY,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client key from CLAUDE_CODE_CLIENT_KEY")}catch(error40){logForDebugging(`mTLS: Failed to load client key: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE&&(config2.passphrase=process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE,logForDebugging("mTLS: Using client key passphrase")),Object.keys(config2).length!==0)return config2}),getMTLSAgent=memoize_default(()=>{let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates();if(!mtlsConfig&&!caCerts)return;let agentOptions={...mtlsConfig,...caCerts&&{ca:caCerts},keepAlive:!0};return logForDebugging("mTLS: Creating HTTPS agent with custom certificates"),new HttpsAgent2(agentOptions)});function getAddressFamily(options){switch(options.family){case 0:case 4:case 6:return options.family;case"IPv6":return 6;case"IPv4":case void 0:return 4;default:throw new Error(`Unsupported address family: ${options.family}`)}}__name(getAddressFamily,"getAddressFamily");function getProxyUrl(env5=process.env){return env5.https_proxy||env5.HTTPS_PROXY||env5.http_proxy||env5.HTTP_PROXY}__name(getProxyUrl,"getProxyUrl");function createHttpsProxyAgent(proxyUrl,extra={}){let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),agentOptions={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};return isEnvTruthy(process.env.CLAUDE_CODE_PROXY_RESOLVES_HOSTS)&&(agentOptions.lookup=(hostname2,options,callback)=>{callback(null,hostname2,getAddressFamily(options))}),new HttpsProxyAgent(proxyUrl,{...agentOptions,...extra})}__name(createHttpsProxyAgent,"createHttpsProxyAgent");var getProxyAgent=memoize_default(uri=>{let undiciMod=__require("undici"),mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),proxyOptions={httpProxy:uri,httpsProxy:uri,noProxy:process.env.NO_PROXY||process.env.no_proxy};if(mtlsConfig||caCerts){let tlsOpts={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};proxyOptions.connect=tlsOpts,proxyOptions.requestTls=tlsOpts}return new undiciMod.EnvHttpProxyAgent(proxyOptions)});async function getAWSClientProxyConfig(){let proxyUrl=getProxyUrl();if(!proxyUrl)return{};let[{NodeHttpHandler},{defaultProvider}]=await Promise.all([import("@smithy/node-http-handler"),import("@aws-sdk/credential-provider-node")]),agent=createHttpsProxyAgent(proxyUrl),requestHandler=new NodeHttpHandler({httpAgent:agent,httpsAgent:agent});return{requestHandler,credentials:defaultProvider({clientConfig:{requestHandler}})}}__name(getAWSClientProxyConfig,"getAWSClientProxyConfig");var getBedrockInferenceProfiles=memoize_default(async function(){let[client2,{ListInferenceProfilesCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),allProfiles=[],nextToken;try{do{let command=new ListInferenceProfilesCommand({...nextToken&&{nextToken},typeEquals:"SYSTEM_DEFINED"}),response=await client2.send(command);response.inferenceProfileSummaries&&allProfiles.push(...response.inferenceProfileSummaries),nextToken=response.nextToken}while(nextToken);return allProfiles.filter(profile=>profile.inferenceProfileId?.includes("anthropic")).map(profile=>profile.inferenceProfileId).filter(Boolean)}catch(error40){throw logError2(error40),error40}});function findFirstMatch(profiles,substring){return profiles.find(p=>p.includes(substring))??null}__name(findFirstMatch,"findFirstMatch");async function createBedrockClient(){let{BedrockClient}=await import("@aws-sdk/client-bedrock"),region=getAWSRegion(),skipAuth=isEnvTruthy(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH),clientConfig={region,...process.env.ANTHROPIC_BEDROCK_BASE_URL&&{endpoint:process.env.ANTHROPIC_BEDROCK_BASE_URL},...await getAWSClientProxyConfig(),...skipAuth&&{requestHandler:new(await import("@smithy/node-http-handler")).NodeHttpHandler,httpAuthSchemes:[{schemeId:"smithy.api#noAuth",identityProvider:__name(()=>async()=>({}),"identityProvider"),signer:new(await import("@smithy/core")).NoAuthSigner}],httpAuthSchemeProvider:__name(()=>[{schemeId:"smithy.api#noAuth"}],"httpAuthSchemeProvider")}};if(!skipAuth&&!process.env.AWS_BEARER_TOKEN_BEDROCK){let cachedCredentials=await refreshAndGetAwsCredentials();cachedCredentials&&(clientConfig.credentials={accessKeyId:cachedCredentials.accessKeyId,secretAccessKey:cachedCredentials.secretAccessKey,sessionToken:cachedCredentials.sessionToken})}return new BedrockClient(clientConfig)}__name(createBedrockClient,"createBedrockClient");var getInferenceProfileBackingModel=memoize_default(async function(profileId){try{let[client2,{GetInferenceProfileCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),command=new GetInferenceProfileCommand({inferenceProfileIdentifier:profileId}),response=await client2.send(command);if(!response.models||response.models.length===0)return null;let primaryModel=response.models[0];if(!primaryModel?.modelArn)return null;let lastSlashIndex=primaryModel.modelArn.lastIndexOf("/");return lastSlashIndex>=0?primaryModel.modelArn.substring(lastSlashIndex+1):primaryModel.modelArn}catch(error40){return logError2(error40),null}});var CLAUDE_3_7_SONNET_CONFIG={firstParty:"claude-3-7-sonnet-20250219",bedrock:"us.anthropic.\u0063laude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",foundry:"claude-3-7-sonnet"},CLAUDE_3_5_V2_SONNET_CONFIG={firstParty:"claude-3-5-sonnet-20241022",bedrock:"anthropic.\u0063laude-3-5-sonnet-20241022-v2:0",vertex:"claude-3-5-sonnet-v2@20241022",foundry:"claude-3-5-sonnet"},CLAUDE_3_5_HAIKU_CONFIG={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.\u0063laude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022",foundry:"claude-3-5-haiku"},CLAUDE_HAIKU_4_5_CONFIG={firstParty:"claude-haiku-4-5-20251001",bedrock:"us.anthropic.\u0063laude-haiku-4-5-20251001-v1:0",vertex:"claude-haiku-4-5@20251001",foundry:"claude-haiku-4-5"},CLAUDE_SONNET_4_CONFIG={firstParty:"claude-sonnet-4-20250514",bedrock:"us.anthropic.\u0063laude-sonnet-4-20250514-v1:0",vertex:"claude-sonnet-4@20250514",foundry:"claude-sonnet-4"},CLAUDE_SONNET_4_5_CONFIG={firstParty:"claude-sonnet-4-5-20250929",bedrock:"us.anthropic.\u0063laude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",foundry:"claude-sonnet-4-5"},CLAUDE_OPUS_4_CONFIG={firstParty:"claude-opus-4-20250514",bedrock:"us.anthropic.\u0063laude-opus-4-20250514-v1:0",vertex:"claude-opus-4@20250514",foundry:"claude-opus-4"},CLAUDE_OPUS_4_1_CONFIG={firstParty:"claude-opus-4-1-20250805",bedrock:"us.anthropic.\u0063laude-opus-4-1-20250805-v1:0",vertex:"claude-opus-4-1@20250805",foundry:"claude-opus-4-1"},CLAUDE_OPUS_4_5_CONFIG={firstParty:"claude-opus-4-5-20251101",bedrock:"us.anthropic.\u0063laude-opus-4-5-20251101-v1:0",vertex:"claude-opus-4-5@20251101",foundry:"claude-opus-4-5"},CLAUDE_OPUS_4_6_CONFIG={firstParty:"claude-opus-4-6",bedrock:"us.anthropic.\u0063laude-opus-4-6-v1",vertex:"claude-opus-4-6",foundry:"claude-opus-4-6"},CLAUDE_OPUS_4_7_CONFIG={firstParty:"claude-opus-4-7",bedrock:"us.anthropic.\u0063laude-opus-4-7-v1",vertex:"claude-opus-4-7",foundry:"claude-opus-4-7"},CLAUDE_OPUS_4_8_CONFIG={firstParty:"claude-opus-4-8",bedrock:"us.anthropic.\u0063laude-opus-4-8-v1",vertex:"claude-opus-4-8",foundry:"claude-opus-4-8"},CLAUDE_SONNET_4_6_CONFIG={firstParty:"claude-sonnet-4-6",bedrock:"us.anthropic.\u0063laude-sonnet-4-6",vertex:"claude-sonnet-4-6",foundry:"claude-sonnet-4-6"},ALL_MODEL_CONFIGS={haiku35:CLAUDE_3_5_HAIKU_CONFIG,haiku45:CLAUDE_HAIKU_4_5_CONFIG,sonnet35:CLAUDE_3_5_V2_SONNET_CONFIG,sonnet37:CLAUDE_3_7_SONNET_CONFIG,sonnet40:CLAUDE_SONNET_4_CONFIG,sonnet45:CLAUDE_SONNET_4_5_CONFIG,sonnet46:CLAUDE_SONNET_4_6_CONFIG,opus40:CLAUDE_OPUS_4_CONFIG,opus41:CLAUDE_OPUS_4_1_CONFIG,opus45:CLAUDE_OPUS_4_5_CONFIG,opus46:CLAUDE_OPUS_4_6_CONFIG,opus47:CLAUDE_OPUS_4_7_CONFIG,opus48:CLAUDE_OPUS_4_8_CONFIG},CANONICAL_MODEL_IDS=Object.values(ALL_MODEL_CONFIGS).map(c3=>c3.firstParty),CANONICAL_ID_TO_KEY=Object.fromEntries(Object.entries(ALL_MODEL_CONFIGS).map(([key,cfg])=>[cfg.firstParty,key]));init_envUtils();function getAPIProvider(){return isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)?"bedrock":isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)?"vertex":isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)?"foundry":"firstParty"}__name(getAPIProvider,"getAPIProvider");function isFirstPartyAnthropicBaseUrl(){let baseUrl=process.env.ANTHROPIC_BASE_URL;if(!baseUrl)return!0;try{let host=new URL(baseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}__name(isFirstPartyAnthropicBaseUrl,"isFirstPartyAnthropicBaseUrl");var MODEL_KEYS=Object.keys(ALL_MODEL_CONFIGS);function getBuiltinModelStrings(provider){let out={};for(let key of MODEL_KEYS)out[key]=ALL_MODEL_CONFIGS[key][provider];return out}__name(getBuiltinModelStrings,"getBuiltinModelStrings");async function getBedrockModelStrings(){let fallback=getBuiltinModelStrings("bedrock"),profiles;try{profiles=await getBedrockInferenceProfiles()}catch(error40){return logError2(error40),fallback}if(!profiles?.length)return fallback;let out={};for(let key of MODEL_KEYS){let needle=ALL_MODEL_CONFIGS[key].firstParty;out[key]=findFirstMatch(profiles,needle)||fallback[key]}return out}__name(getBedrockModelStrings,"getBedrockModelStrings");function resolveOverriddenModel(modelId){let overrides;try{overrides=getInitialSettings().modelOverrides}catch{return modelId}if(!overrides)return modelId;for(let[canonicalId,override]of Object.entries(overrides))if(override===modelId)return canonicalId;return modelId}__name(resolveOverriddenModel,"resolveOverriddenModel");var updateBedrockModelStrings=sequential(async()=>{if(getModelStrings()===null)try{let ms=await getBedrockModelStrings();setModelStrings(ms)}catch(error40){logError2(error40)}});init_state();init_envUtils();var mockEnabled=!1;var mockSubscriptionType=null;var DEFAULT_MOCK_SUBSCRIPTION="max";function getMockSubscriptionType(){return!mockEnabled||process.env.USER_TYPE!=="ant"?null:mockSubscriptionType||DEFAULT_MOCK_SUBSCRIPTION}__name(getMockSubscriptionType,"getMockSubscriptionType");function shouldUseMockSubscription(){return mockEnabled&&mockSubscriptionType!==null&&process.env.USER_TYPE==="ant"}__name(shouldUseMockSubscription,"shouldUseMockSubscription");init_debug();init_log3();function shouldUseClaudeAIAuth(scopes){return!!scopes?.includes(CLAUDE_AI_INFERENCE_SCOPE)}__name(shouldUseClaudeAIAuth,"shouldUseClaudeAIAuth");init_state();init_debug();init_envUtils();init_errors2();init_fsOperations();import{mkdirSync as mkdirSync2,writeFileSync as writeFileSync2}from"fs";var CCR_TOKEN_DIR="/home/claude/.\u0063laude/remote",CCR_OAUTH_TOKEN_PATH=`${CCR_TOKEN_DIR}/.oauth_token`,CCR_API_KEY_PATH=`${CCR_TOKEN_DIR}/.api_key`,CCR_SESSION_INGRESS_TOKEN_PATH=`${CCR_TOKEN_DIR}/.session_ingress_token`;function maybePersistTokenForSubprocesses(path9,token,tokenName){if(isEnvTruthy(process.env.CLAUDE_CODE_REMOTE))try{mkdirSync2(CCR_TOKEN_DIR,{recursive:!0,mode:448}),writeFileSync2(path9,token,{encoding:"utf8",mode:384}),logForDebugging(`Persisted ${tokenName} to ${path9} for subprocess access`)}catch(error40){logForDebugging(`Failed to persist ${tokenName} to disk (non-fatal): ${errorMessage(error40)}`,{level:"error"})}}__name(maybePersistTokenForSubprocesses,"maybePersistTokenForSubprocesses");function readTokenFromWellKnownFile(path9,tokenName){try{let token=getFsImplementation().readFileSync(path9,{encoding:"utf8"}).trim();return token?(logForDebugging(`Read ${tokenName} from well-known file ${path9}`),token):null}catch(error40){return isENOENT(error40)||logForDebugging(`Failed to read ${tokenName} from ${path9}: ${errorMessage(error40)}`,{level:"debug"}),null}}__name(readTokenFromWellKnownFile,"readTokenFromWellKnownFile");function getCredentialFromFd({envVar,wellKnownPath,label,getCached,setCached}){let cached2=getCached();if(cached2!==void 0)return cached2;let fdEnv=process.env[envVar];if(!fdEnv){let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}let fd=parseInt(fdEnv,10);if(Number.isNaN(fd))return logForDebugging(`${envVar} must be a valid file descriptor number, got: ${fdEnv}`,{level:"error"}),setCached(null),null;try{let fsOps=getFsImplementation(),fdPath=process.platform==="darwin"||process.platform==="freebsd"?`/dev/fd/${fd}`:`/proc/self/fd/${fd}`,token=fsOps.readFileSync(fdPath,{encoding:"utf8"}).trim();return token?(logForDebugging(`Successfully read ${label} from file descriptor ${fd}`),setCached(token),maybePersistTokenForSubprocesses(wellKnownPath,token,label),token):(logForDebugging(`File descriptor contained empty ${label}`,{level:"error"}),setCached(null),null)}catch(error40){logForDebugging(`Failed to read ${label} from file descriptor ${fd}: ${errorMessage(error40)}`,{level:"error"});let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}}__name(getCredentialFromFd,"getCredentialFromFd");function getOAuthTokenFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",wellKnownPath:CCR_OAUTH_TOKEN_PATH,label:"OAuth token",getCached:getOauthTokenFromFd,setCached:setOauthTokenFromFd})}__name(getOAuthTokenFromFileDescriptor,"getOAuthTokenFromFileDescriptor");function getApiKeyFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR",wellKnownPath:CCR_API_KEY_PATH,label:"API key",getCached:getApiKeyFromFd,setCached:setApiKeyFromFd})}__name(getApiKeyFromFileDescriptor,"getApiKeyFromFileDescriptor");init_envUtils();import{createHash}from"crypto";import{userInfo}from"os";init_envUtils();var CREDENTIALS_SERVICE_SUFFIX="-credentials";function getMacOsKeychainStorageServiceName(serviceSuffix=""){let configDir=getClaudeConfigHomeDir(),dirHash=!process.env.CLAVUE_CONFIG_DIR?"":`-${createHash("sha256").update(configDir).digest("hex").substring(0,8)}`;return`Claude Code${getOauthConfig().OAUTH_FILE_SUFFIX}${serviceSuffix}${dirHash}`}__name(getMacOsKeychainStorageServiceName,"getMacOsKeychainStorageServiceName");function getUsername(){try{return process.env.USER||userInfo().username}catch{return"claude-code-user"}}__name(getUsername,"getUsername");var KEYCHAIN_CACHE_TTL_MS=3e4,keychainCacheState={cache:{data:null,cachedAt:0},generation:0,readInFlight:null};function clearKeychainCache(){keychainCacheState.cache={data:null,cachedAt:0},keychainCacheState.generation++,keychainCacheState.readInFlight=null}__name(clearKeychainCache,"clearKeychainCache");function normalizeApiKeyForConfig(apiKey){return apiKey.slice(-20)}__name(normalizeApiKeyForConfig,"normalizeApiKeyForConfig");init_debug();function isValidAwsStsOutput(obj){if(!obj||typeof obj!="object")return!1;let output=obj;if(!output.Credentials||typeof output.Credentials!="object")return!1;let credentials=output.Credentials;return typeof credentials.AccessKeyId=="string"&&typeof credentials.SecretAccessKey=="string"&&typeof credentials.SessionToken=="string"&&credentials.AccessKeyId.length>0&&credentials.SecretAccessKey.length>0&&credentials.SessionToken.length>0}__name(isValidAwsStsOutput,"isValidAwsStsOutput");async function checkStsCallerIdentity(){let{STSClient,GetCallerIdentityCommand}=await import("@aws-sdk/client-sts");await new STSClient().send(new GetCallerIdentityCommand({}))}__name(checkStsCallerIdentity,"checkStsCallerIdentity");async function clearAwsIniCache(){try{logForDebugging("Clearing AWS credential provider cache");let{fromIni}=await import("@aws-sdk/credential-providers");await fromIni({ignoreCache:!0})(),logForDebugging("AWS credential provider cache refreshed")}catch{logForDebugging("Failed to clear AWS credential cache (this is expected if no credentials are configured)")}}__name(clearAwsIniCache,"clearAwsIniCache");init_signal();var AwsAuthStatusManager=class _AwsAuthStatusManager{static{__name(this,"AwsAuthStatusManager")}static instance=null;status={isAuthenticating:!1,output:[]};changed=createSignal();static getInstance(){return _AwsAuthStatusManager.instance||(_AwsAuthStatusManager.instance=new _AwsAuthStatusManager),_AwsAuthStatusManager.instance}getStatus(){return{...this.status,output:[...this.status.output]}}startAuthentication(){this.status={isAuthenticating:!0,output:[]},this.changed.emit(this.getStatus())}addOutput(line){this.status.output.push(line),this.changed.emit(this.getStatus())}setError(error40){this.status.error=error40,this.changed.emit(this.getStatus())}endAuthentication(success2){success2?this.status={isAuthenticating:!1,output:[]}:this.status.isAuthenticating=!1,this.changed.emit(this.getStatus())}subscribe=this.changed.subscribe;static reset(){_AwsAuthStatusManager.instance&&(_AwsAuthStatusManager.instance.changed.clear(),_AwsAuthStatusManager.instance=null)}};init_memoize();init_state();var CLAUDE_CODE_20250219_BETA_HEADER="claude-code-20250219",INTERLEAVED_THINKING_BETA_HEADER="interleaved-thinking-2025-05-14",CONTEXT_1M_BETA_HEADER="context-1m-2025-08-07",CONTEXT_MANAGEMENT_BETA_HEADER="context-management-2025-06-27",STRUCTURED_OUTPUTS_BETA_HEADER="structured-outputs-2025-12-15",WEB_SEARCH_BETA_HEADER="web-search-2025-03-05";var TOOL_SEARCH_BETA_HEADER_3P="tool-search-tool-2025-10-19";var PROMPT_CACHING_SCOPE_BETA_HEADER="prompt-caching-scope-2026-01-05";var REDACT_THINKING_BETA_HEADER="redact-thinking-2026-02-12",TOKEN_EFFICIENT_TOOLS_BETA_HEADER="token-efficient-tools-2026-03-28",SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER="";var CLI_INTERNAL_BETA_HEADER=process.env.USER_TYPE==="ant"?"cli-internal-2026-02-09":"";var BEDROCK_EXTRA_PARAMS_HEADERS=new Set([INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P]);init_envUtils();init_state();init_envUtils();function parseVersion(raw){if(!raw)return null;let parts=raw.split("-").map(part=>Number.parseInt(part,10));return parts.some(part=>Number.isNaN(part))?null:(parts[1]!==void 0&&parts[1]>=2e7&&(parts[1]=0),{major:parts[0]??0,minor:parts[1]??0})}__name(parseVersion,"parseVersion");function parseClaudeModelIdentity(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return null;let modern=/claude-(opus|sonnet|haiku)-([0-9]+(?:-[0-9]+)?)/.exec(normalized);if(modern?.[1]&&modern[2]){let version2=parseVersion(modern[2]);return version2?{family:modern[1],version:version2}:null}let legacy=/claude-([0-9]+(?:-[0-9]+)?)-(opus|sonnet|haiku)/.exec(normalized);if(legacy?.[1]&&legacy[2]){let version2=parseVersion(legacy[1]);return version2?{family:legacy[2],version:version2}:null}return null}__name(parseClaudeModelIdentity,"parseClaudeModelIdentity");function getClaudeCanonicalModelName(model){let identity4=parseClaudeModelIdentity(model);if(!identity4||identity4.version.major<4)return null;let version2=identity4.version.minor===0?String(identity4.version.major):`${identity4.version.major}-${identity4.version.minor}`;return`claude-${identity4.family}-${version2}`}__name(getClaudeCanonicalModelName,"getClaudeCanonicalModelName");init_state();init_state();init_debug();init_envUtils();init_privacyLevel();init_signal();var cooldownTriggered=createSignal(),cooldownExpired=createSignal(),onCooldownTriggered=cooldownTriggered.subscribe,onCooldownExpired=cooldownExpired.subscribe;var overageRejection=createSignal(),onFastModeOverageRejection=overageRejection.subscribe;var orgFastModeChange=createSignal(),onOrgFastModeChanged=orgFastModeChange.subscribe;var COST_TIER_3_15={inputTokens:3,outputTokens:15,promptCacheWriteTokens:3.75,promptCacheReadTokens:.3,webSearchRequests:.01},COST_TIER_15_75={inputTokens:15,outputTokens:75,promptCacheWriteTokens:18.75,promptCacheReadTokens:1.5,webSearchRequests:.01},COST_TIER_5_25={inputTokens:5,outputTokens:25,promptCacheWriteTokens:6.25,promptCacheReadTokens:.5,webSearchRequests:.01};var COST_HAIKU_35={inputTokens:.8,outputTokens:4,promptCacheWriteTokens:1,promptCacheReadTokens:.08,webSearchRequests:.01},COST_HAIKU_45={inputTokens:1,outputTokens:5,promptCacheWriteTokens:1.25,promptCacheReadTokens:.1,webSearchRequests:.01};var MODEL_COSTS={[firstPartyNameToCanonical(CLAUDE_3_5_HAIKU_CONFIG.firstParty)]:COST_HAIKU_35,[firstPartyNameToCanonical(CLAUDE_HAIKU_4_5_CONFIG.firstParty)]:COST_HAIKU_45,[firstPartyNameToCanonical(CLAUDE_3_5_V2_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_3_7_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_5_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_6_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_OPUS_4_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_1_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_5_CONFIG.firstParty)]:COST_TIER_5_25,[firstPartyNameToCanonical(CLAUDE_OPUS_4_6_CONFIG.firstParty)]:COST_TIER_5_25};function firstPartyNameToCanonical(name){name=name.toLowerCase();let claudeCanonical=getClaudeCanonicalModelName(name);if(claudeCanonical)return claudeCanonical;if(name.includes("claude-3-7-sonnet"))return"claude-3-7-sonnet";if(name.includes("claude-3-5-sonnet"))return"claude-3-5-sonnet";if(name.includes("claude-3-5-haiku"))return"claude-3-5-haiku";if(name.includes("claude-3-opus"))return"claude-3-opus";if(name.includes("claude-3-sonnet"))return"claude-3-sonnet";if(name.includes("claude-3-haiku"))return"claude-3-haiku";let match=name.match(/(claude-(\d+-\d+-)?\w+)/);return match&&match[1]?match[1]:name}__name(firstPartyNameToCanonical,"firstPartyNameToCanonical");function getCanonicalName(fullModelName){return firstPartyNameToCanonical(resolveOverriddenModel(fullModelName))}__name(getCanonicalName,"getCanonicalName");import{readFileSync as readFileSync7}from"fs";init_memoize();init_sdk();import{createHash as createHash2,randomUUID as randomUUID2}from"crypto";import{existsSync as existsSync2,readFileSync as readFileSync6,writeFileSync as writeFileSync3}from"fs";import{homedir as homedir5}from"os";import{join as join16,resolve as resolve7}from"path";var APP_NAME="Clavue";var APP_WORDMARK=`/${APP_NAME.toLowerCase()}`;init_memoize();var TIERS=[{modelEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES"}],get3PModelCapabilityOverride=memoize_default((model,capability)=>{if(getAPIProvider()==="firstParty")return;let m2=model.toLowerCase();for(let tier of TIERS){let pinned=process.env[tier.modelEnvVar],capabilities=process.env[tier.capabilitiesEnvVar];if(!(!pinned||capabilities===void 0)&&m2===pinned.toLowerCase())return capabilities.toLowerCase().split(",").map(s2=>s2.trim()).includes(capability)}},(model,capability)=>`${model.toLowerCase()}:${capability}`);function clear3PModelCapabilityOverrideCache(){get3PModelCapabilityOverride.cache?.clear?.()}__name(clear3PModelCapabilityOverrideCache,"clear3PModelCapabilityOverrideCache");function normalizeValue2(value){return String(value??"").trim()}__name(normalizeValue2,"normalizeValue");function completeProviderRoutingSlotsFromPrimary(rawRouting,baseRouting={}){let presetId=normalizeValue2(rawRouting.presetId||baseRouting.presetId),primaryModel=normalizeValue2(rawRouting.primaryModel)||normalizeValue2(baseRouting.primaryModel),slotFallback=(presetId==="provider_default"||presetId==="custom")&&normalizeValue2(rawRouting.primaryModel).length>0?primaryModel:"",subagentModel=normalizeValue2(rawRouting.subagentModel)||normalizeValue2(baseRouting.subagentModel)||slotFallback,generalModel=normalizeValue2(rawRouting.generalModel)||normalizeValue2(baseRouting.generalModel)||subagentModel,planModel=normalizeValue2(rawRouting.planModel)||normalizeValue2(baseRouting.planModel)||primaryModel,exploreModel=normalizeValue2(rawRouting.exploreModel)||normalizeValue2(baseRouting.exploreModel)||generalModel,teamModel=normalizeValue2(rawRouting.teamModel)||normalizeValue2(baseRouting.teamModel)||generalModel,guideModel=normalizeValue2(rawRouting.guideModel)||normalizeValue2(baseRouting.guideModel)||planModel;return{primaryModel,subagentModel,smallFastModel:normalizeValue2(rawRouting.smallFastModel)||normalizeValue2(baseRouting.smallFastModel)||slotFallback,planModel,exploreModel,generalModel,teamModel,guideModel,reviewModel:normalizeValue2(rawRouting.reviewModel)||normalizeValue2(baseRouting.reviewModel)||generalModel}}__name(completeProviderRoutingSlotsFromPrimary,"completeProviderRoutingSlotsFromPrimary");var PROVIDER_MODE_SLOT_ORDER=["primary","haiku","sonnet","opus"];function inferProviderModelFamily(model){let normalizedModel=normalizeValue2(model).toLowerCase();return normalizedModel?normalizedModel.includes("claude")?"claude":normalizedModel.startsWith("gpt-")||normalizedModel.startsWith("o1")||normalizedModel.startsWith("o3")||normalizedModel.startsWith("o4")||normalizedModel.includes("codex")?"openai":normalizedModel.startsWith("gemini-")?"gemini":normalizedModel.startsWith("grok-")?"grok":normalizedModel.startsWith("deepseek-")?"deepseek":normalizedModel.startsWith("qwen")?"qwen":normalizedModel.startsWith("kimi-")?"kimi":normalizedModel.startsWith("swe-")?"swe":normalizedModel.startsWith("glm-")?"glm":normalizedModel.startsWith("lingsi-")?"lingsi":"unknown":"unknown"}__name(inferProviderModelFamily,"inferProviderModelFamily");function getProviderModeSlotValues(routing){let primaryModel=normalizeValue2(routing?.primaryModel),executionModel=normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel)||primaryModel,fastModel=normalizeValue2(routing?.smallFastModel)||executionModel||primaryModel,planModel=normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)||primaryModel;return{primaryModel,haikuModel:fastModel||executionModel||primaryModel,sonnetModel:executionModel||primaryModel,opusModel:planModel||primaryModel}}__name(getProviderModeSlotValues,"getProviderModeSlotValues");function getProviderModeRawSlotValues(routing){return{primary:normalizeValue2(routing?.primaryModel),haiku:normalizeValue2(routing?.smallFastModel),sonnet:normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel),opus:normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)}}__name(getProviderModeRawSlotValues,"getProviderModeRawSlotValues");function getConfiguredFamilies(routing){let slotValues=getProviderModeSlotValues(routing);return new Set(Object.values(slotValues).map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}__name(getConfiguredFamilies,"getConfiguredFamilies");var PROVIDER_MODEL_MODE_DEFINITIONS={anthropic_native:{id:"anthropic_native",label:"Anthropic-native",description:"Claude-family mode. Keep routing on Anthropic-compatible Claude models and validate native tool calling on that family.",providerPresetIds:["anthropic","openrouter","glm","minimax","custom"],routingPresetIds:["claude_code_heritage"],defaultRoutingPresetId:"claude_code_heritage",slotDefinitions:{primary:{label:"Primary model",description:"Main session workhorse model for Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},haiku:{label:"Fast model",description:"Fast-response helper slot for Anthropic-native mode.",placeholder:"claude-haiku-4-5",defaultModel:"claude-haiku-4-5"},sonnet:{label:"Workhorse model",description:"Execution slot for day-to-day coding and subagent work in Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},opus:{label:"Planner model",description:"Planning and guidance slot for Anthropic-native mode.",placeholder:"claude-opus-4-6",defaultModel:"claude-opus-4-6"}}},openai_native:{id:"openai_native",label:"OpenAI-native",description:"GPT/Codex-family mode. Keep routing on GPT/Codex models and validate the Responses compatibility route on that family.",providerPresetIds:["kimi","openrouter","custom"],routingPresetIds:["gpt_5_5_max","gpt_5_4_codex","gpt_5_1_stable","gpt_5_3_codex"],defaultRoutingPresetId:"gpt_5_5_max",slotDefinitions:{primary:{label:"Primary model",description:"Main session workhorse model for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]},haiku:{label:"Fast model",description:"Fast-response helper slot for OpenAI-native mode.",placeholder:"gpt-5.3-codex",defaultModel:"gpt-5.3-codex",recommendedModels:["gpt-5.3-codex","gpt-5.4","gpt-5.1"]},sonnet:{label:"Workhorse model",description:"Execution slot for day-to-day coding and subagent work in OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.3-codex","gpt-5.4","gpt-5.1"]},opus:{label:"Planner model",description:"Planning and guidance slot for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]}}},hybrid_compatible:{id:"hybrid_compatible",label:"Hybrid-compatible",description:"Mixed-family mode. Supports all major model families via custom/OpenAI-compatible gateways (gpt-5.*, claude-*, gemini-*, grok-*, kimi-*, swe-*, glm-*, lingsi-* etc.). Model names are matched by prefix for maximum flexibility with user-managed endpoints.",providerPresetIds:["custom","openrouter"],routingPresetIds:["custom","gpt55_deepseek_combo","deepseek_gpt_combo"],defaultRoutingPresetId:"custom",slotDefinitions:{primary:{label:"Primary model",description:"Main session slot. For custom providers: accepts any model string (gpt-5.*, claude-*, gemini-*, grok-* etc.). Prefix matching is used for routing.",placeholder:"gemini-3-5-flash-high",defaultModel:"gpt-5.5",requireExplicitSelection:!1},haiku:{label:"Fast model",description:"Fast helper slot. For custom providers: any fast model via prefix (e.g. gpt-5.3-*, gemini-3-5-flash, claude-haiku-*)",placeholder:"gemini-3-5-flash",defaultModel:"gpt-5.3-codex",requireExplicitSelection:!1},sonnet:{label:"Workhorse model",description:"Execution slot. For custom providers: any strong model via prefix matching (gpt-5.5-*, claude-sonnet-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-sonnet-4-6",requireExplicitSelection:!1},opus:{label:"Planner model",description:"Planning slot. For custom providers: any top-tier model via prefix (gpt-5.5-*, claude-opus-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-opus-4-6",requireExplicitSelection:!1}}}},VALID_PROVIDER_MODEL_MODES=new Set(Object.keys(PROVIDER_MODEL_MODE_DEFINITIONS));function localize(language,english,chinese){return language==="zh"?chinese:english}__name(localize,"localize");function isProviderModelModeId(value){return VALID_PROVIDER_MODEL_MODES.has(value)}__name(isProviderModelModeId,"isProviderModelModeId");function getProviderModelModeDefinition(modeId){return PROVIDER_MODEL_MODE_DEFINITIONS[modeId]}__name(getProviderModelModeDefinition,"getProviderModelModeDefinition");function getDefaultProviderModelModeForProviderPreset(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"anthropic_native":providerId==="kimi"?"openai_native":"hybrid_compatible"}__name(getDefaultProviderModelModeForProviderPreset,"getDefaultProviderModelModeForProviderPreset");function getProviderModelModeForProfile(profile){let explicitMode=normalizeValue2(profile?.modelMode);if(isProviderModelModeId(explicitMode))return explicitMode;let presetId=normalizeValue2(profile?.modelRouting?.presetId);if(presetId==="claude_code_heritage")return"anthropic_native";if(presetId==="gpt_5_5_max"||presetId==="gpt_5_4_codex"||presetId==="gpt_5_1_stable"||presetId==="gpt_5_3_codex")return"openai_native";let configuredFamilies=getConfiguredFamilies(profile?.modelRouting);return configuredFamilies.size===1?configuredFamilies.has("claude")?"anthropic_native":configuredFamilies.has("openai")?"openai_native":"hybrid_compatible":configuredFamilies.size>1?"hybrid_compatible":getDefaultProviderModelModeForProviderPreset(profile?.providerId)}__name(getProviderModelModeForProfile,"getProviderModelModeForProfile");function createDefaultProviderModeSlotValues(modeId){let definition=getProviderModelModeDefinition(modeId);return{primaryModel:definition.slotDefinitions.primary.defaultModel,haikuModel:definition.slotDefinitions.haiku.defaultModel,sonnetModel:definition.slotDefinitions.sonnet.defaultModel,opusModel:definition.slotDefinitions.opus.defaultModel}}__name(createDefaultProviderModeSlotValues,"createDefaultProviderModeSlotValues");function validateProviderModeRouting(modeId,routing,{language="en",requireExplicitHybridSelections=!1}={}){let definition=getProviderModelModeDefinition(modeId),rawSlotValues=getProviderModeRawSlotValues(routing),issues=[];for(let slot of PROVIDER_MODE_SLOT_ORDER){let model=rawSlotValues[slot],slotDefinition=definition.slotDefinitions[slot],normalizedModel=normalizeValue2(model),allowedModels=slotDefinition.allowedModels??[];if(!normalizedModel){requireExplicitHybridSelections&&slotDefinition.requireExplicitSelection===!0&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required for ${definition.label} mode.`,`${definition.label} \u6A21\u5F0F\u4E0B\u5FC5\u987B\u8BBE\u7F6E${slotDefinition.label}\u3002`)});continue}allowedModels.length>0&&!allowedModels.includes(normalizedModel)&&requireExplicitHybridSelections&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required to be explicitly set for this hybrid selection flow.`,`${slotDefinition.label} \u5728\u6B64\u7279\u6B8A\u6DF7\u5408\u9009\u62E9\u6D41\u7A0B\u4E2D\u9700\u8981\u660E\u786E\u8BBE\u7F6E\u3002`)})}return issues}__name(validateProviderModeRouting,"validateProviderModeRouting");var CURRENT_PROVIDER_PROFILE_ID="__current_provider__";var PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES=new Set(["your_api_key","your-api-key","your_api_key_here","your-api-key-here","your_key","your-key","your_key_here","your-key-here","your api key","your api key here","your key","your key here","your_token","your-token","your_token_here","your-token-here","your auth token","your auth token here","api_key","api-key","api_key_here","api-key-here","auth_token","auth-token","auth_token_here","auth-token-here","token_here","token-here","placeholder","<api_key>","<api-key>","<your_api_key>","<your-api-key>","<token>","<your_token>","<your-token>"]);function isPlaceholderProviderCredential(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES.has(normalizedValue)?!0:/^your[-_\s]?[a-z0-9_-]*(api[-_\s]?key|auth[-_\s]?token|key|token)[a-z0-9_-]*$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?(test|example|placeholder|dummy|fake)$/iu.test(normalizedValue)||/^(test|example|placeholder|dummy|fake)[-_]?(api[-_]?key|auth[-_]?token|token)$/iu.test(normalizedValue):!1}__name(isPlaceholderProviderCredential,"isPlaceholderProviderCredential");var OPENAI_RESPONSES_PATH="/v1/responses",OPENAI_CHAT_COMPLETIONS_PATH="/v1/chat/completions",ANTHROPIC_MESSAGES_PATH="/v1/messages";function getRequestUrl(input){try{return input instanceof Request?new URL(input.url):new URL(String(input))}catch{return null}}__name(getRequestUrl,"getRequestUrl");function isOpenAIChatCompletionsModel(model){let m2=String(model??"").trim().toLowerCase();return!!(m2.startsWith("gpt-image-")||m2.startsWith("gemini-")||m2.startsWith("grok-")||m2.startsWith("deepseek-"))}__name(isOpenAIChatCompletionsModel,"isOpenAIChatCompletionsModel");function getOpenAICompatiblePath(model){return isOpenAIChatCompletionsModel(model)?OPENAI_CHAT_COMPLETIONS_PATH:OPENAI_RESPONSES_PATH}__name(getOpenAICompatiblePath,"getOpenAICompatiblePath");var ENTER_PLAN_MODE_TOOL_NAME="EnterPlanMode";var SEND_MESSAGE_TOOL_NAME="SendMessage";var TASK_CREATE_TOOL_NAME="TaskCreate";var TASK_GET_TOOL_NAME="TaskGet";var TASK_LIST_TOOL_NAME="TaskList";var TASK_UPDATE_TOOL_NAME="TaskUpdate";var TEAM_CREATE_TOOL_NAME="TeamCreate";var TEAM_DELETE_TOOL_NAME="TeamDelete";var TODO_WRITE_TOOL_NAME="TodoWrite";var DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES=["EnterPlanMode","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskUpdate","TeamCreate","TeamDelete","TodoWrite"];var ANTHROPIC_MESSAGES_DEFAULT_MODEL_PREFIXES=["glm-","kimi-","lingsi-","swe-"];function defaultsToAnthropicMessagesModel(model){let m2=String(model??"").trim().toLowerCase();return m2?m2.startsWith("qwen")||ANTHROPIC_MESSAGES_DEFAULT_MODEL_PREFIXES.some(prefix=>m2.startsWith(prefix)):!1}__name(defaultsToAnthropicMessagesModel,"defaultsToAnthropicMessagesModel");function isGatewayGpt5PreferMessagesModel(model){let normalized=String(model??"").trim().toLowerCase();return normalized.startsWith("gpt-5")?!normalized.includes("codex"):!1}__name(isGatewayGpt5PreferMessagesModel,"isGatewayGpt5PreferMessagesModel");function getModelFamily(model){if(!model)return"other";let m2=model.toLowerCase().trim();return m2.includes("claude")?"claude":m2.includes("gemini")?"gemini":m2.includes("grok")?"grok":m2.includes("gpt")||m2.includes("codex")||m2.includes("o1")||m2.includes("o3")||m2.includes("o4")?"openai":"other"}__name(getModelFamily,"getModelFamily");function getFamilyShaping(model,runtimeProviderKind){let family=getModelFamily(model);return family==="claude"?"claude":family==="openai"?"gpt_codex":runtimeProviderKind!=="first_party"?"provider_native":"generic"}__name(getFamilyShaping,"getFamilyShaping");function getReasoningDiscipline(qualityTier,familyShaping,model){return qualityTier==="blocked"||qualityTier==="chat_only"||qualityTier==="degraded"?{planDiscipline:"required",verificationDiscipline:"required",recoveryMode:"strict"}:familyShaping==="gpt_codex"||modelFamilyIsDeepSeek(model)?{planDiscipline:"optional",verificationDiscipline:"required",recoveryMode:"normal"}:{planDiscipline:"optional",verificationDiscipline:"recommended",recoveryMode:"normal"}}__name(getReasoningDiscipline,"getReasoningDiscipline");function resolveCodingRoutePolicyCore(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.apiDialectMode==="openai_responses"||input.apiDialectMode==="anthropic"?input.apiDialectMode:"anthropic",runtimeProviderKind=input.runtimeProviderKind??"gateway",coreNativeWorkflowToolNames=input.coreNativeWorkflowToolNames??DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,familyShaping=getFamilyShaping(normalizedModel,runtimeProviderKind),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),warnings=[],repairHints=[],qualityReason=[],supportsResponses=input.supportsResponsesAdapter===!0,hasAnthropicToolUse=snapshot?.anthropicToolUse===!0,hasFullResponses=supportsResponses&&snapshot?.responsesArrayInputReachable===!0&&snapshot?.responsesToolChoiceAuto===!0&&snapshot?.responsesToolChoiceRequired===!0&&snapshot?.responsesToolChoiceNamed===!0,hasReachableChat=snapshot?.anthropicMessagesReachable===!0||snapshot?.responsesArrayInputReachable===!0,isFirstPartyClaudeAssumedNative=runtimeProviderKind==="first_party"&&familyShaping==="claude"&&!snapshot,isAnthropicDialectClaudeAssumed=dialectMode==="anthropic"&&familyShaping==="claude"&&!snapshot,isAnthropicMessagesRouteAssumed=dialectMode==="anthropic"&&runtimeProviderKind!=="first_party"&&!snapshot,defaultsToMessages=runtimeProviderKind!=="first_party"&&defaultsToAnthropicMessagesModel(normalizedModel),family=getModelFamily(normalizedModel),gatewayGpt5PrefersMessages=dialectMode==="openai_responses"&&runtimeProviderKind==="gateway"&&family==="openai"&&isGatewayGpt5PreferMessagesModel(normalizedModel),usesNativeOpenAICompatibleChat=runtimeProviderKind!=="first_party"&&dialectMode==="openai_responses"&&(family==="gemini"||family==="grok"||modelFamilyIsDeepSeek(normalizedModel)),transport="anthropic_messages",transportReason="Anthropic messages is the default API dialect unless openai_responses is explicitly selected.";defaultsToMessages?(transport="anthropic_messages",transportReason="This provider-native model family defaults to /v1/messages instead of the OpenAI Responses adapter. DeepSeek also uses /v1/messages when the active provider profile is Anthropic/Claude-compatible; OpenAI-compatible DeepSeek profiles use /v1/chat/completions.",dialectMode==="openai_responses"&&warnings.push("The active model family is configured to stay on /v1/messages by default; use a GPT/Codex or Gemini/Grok route for the OpenAI-compatible adapter.")):dialectMode==="anthropic"?(transport="anthropic_messages",transportReason="Explicit anthropic dialect override keeps the runtime on /v1/messages.",hasFullResponses&&!hasAnthropicToolUse&&warnings.push("Responses compatibility is verified, but the active dialect override is forcing /v1/messages.")):usesNativeOpenAICompatibleChat?(transport="openai_chat_completions",transportReason=modelFamilyIsDeepSeek(normalizedModel)?"Explicit OpenAI-compatible dialect routes DeepSeek through native /v1/chat/completions with provider prefix-cache usage telemetry and without OpenAI Responses stateful cache.":"Explicit OpenAI-compatible dialect routes this provider family through native /v1/chat/completions without OpenAI Responses stateful cache."):gatewayGpt5PrefersMessages&&snapshot?.responsesArrayInputReachable===!1&&snapshot?.anthropicMessagesReachable===!0?(transport="anthropic_messages",transportReason="Gateway GPT-5.x falls back to /v1/messages because validation showed /v1/responses is unavailable."):dialectMode==="openai_responses"&&(transport="openai_responses",transportReason="Explicit OpenAI-compatible dialect routes this GPT/Codex family through native /v1/responses.",supportsResponses||warnings.push("The active model family is not known to behave well on the Responses adapter."));let qualityTier="compatible";hasAnthropicToolUse?runtimeProviderKind==="first_party"&&familyShaping==="claude"?(qualityTier="native",qualityReason.push("Anthropic-native tool_use is available on a first-party Claude route.")):(qualityTier="compatible",qualityReason.push("Anthropic-native tool_use is available on the active provider route.")):isFirstPartyClaudeAssumedNative?(qualityTier="native",qualityReason.push("First-party Anthropic Claude routes are trusted as native on first launch.")):hasFullResponses?(qualityTier="compatible",qualityReason.push("Responses function calling is available on the active provider route.")):isAnthropicDialectClaudeAssumed?(qualityTier="compatible",qualityReason.push("Anthropic / Claude-compatible routes are trusted for full Clavue coding workflows.")):isAnthropicMessagesRouteAssumed?(qualityTier="compatible",qualityReason.push("Anthropic messages routes are trusted for full Clavue coding workflows.")):transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat?(qualityTier="compatible",qualityReason.push(modelFamilyIsDeepSeek(normalizedModel)?"DeepSeek is routed through the active OpenAI-compatible chat/completions profile with full Clavue tool support.":"This provider family is routed through native OpenAI-compatible chat/completions with full Clavue tool support.")):gatewayGpt5PrefersMessages&&transport==="openai_responses"?(qualityTier="compatible",qualityReason.push("OpenAI GPT-5.x routes use native /v1/responses for the OpenAI-compatible dialect.")):gatewayGpt5PrefersMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Gateway GPT-5.x fell back to /v1/messages because /v1/responses was unavailable.")):hasReachableChat?(qualityTier="compatible",qualityReason.push("The active provider route is reachable and trusted for full Clavue coding workflows.")):(qualityTier="compatible",qualityReason.push("Configured provider routes are trusted for full Clavue coding workflows. Permission mode controls execution approval, not provider validation snapshots."));let baseWorkflowMode=qualityTier==="native"?"full_native":"compat_native",operatorTrust=runtimeProviderKind==="first_party"?"explicitly_trusted":"configured",baseCapabilityStatus=hasAnthropicToolUse||hasFullResponses||hasReachableChat?"verified":isFirstPartyClaudeAssumedNative||isAnthropicDialectClaudeAssumed||isAnthropicMessagesRouteAssumed||transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat||gatewayGpt5PrefersMessages&&transport==="openai_responses"?"assumed":"unknown",baseWorkflowToolPolicy=baseCapabilityStatus==="verified"||baseWorkflowMode==="full_native"?"full":"cautious",providerHealth=input.providerHealth??null,healthTier=providerHealth?.healthTier??"healthy",capabilityStatus=providerHealth?.capabilityStatus??(healthTier==="broken"?"failed":healthTier==="degraded"?"stale":baseCapabilityStatus),workflowToolPolicy=providerHealth?.workflowToolPolicy??(healthTier==="broken"?"blocked":healthTier==="degraded"?"direct_only":healthTier==="warning"&&baseWorkflowToolPolicy==="full"?"cautious":baseWorkflowToolPolicy),workflowMode=workflowToolPolicy==="blocked"?"chat_only":workflowToolPolicy==="direct_only"?"strict_compat":baseWorkflowMode,forcedToolNames=workflowMode==="compat_native"&&(workflowToolPolicy==="full"||workflowToolPolicy==="cautious")?[...coreNativeWorkflowToolNames]:[],blockedToolNames=workflowToolPolicy==="direct_only"||workflowToolPolicy==="blocked"?[...coreNativeWorkflowToolNames]:[],certificationRef=providerHealth?.certificationRef;for(let warning of providerHealth?.warnings??[])warnings.push(warning);for(let repairHint of providerHealth?.repairHints??[])repairHints.push(repairHint);return{routeId,model:normalizedModel,transport,transportReason,qualityTier,qualityReason,workflowMode,forcedToolNames,blockedToolNames,operatorTrust,capabilityStatus,workflowToolPolicy,healthTier,certificationRef,familyShaping,warnings,repairHints,...getReasoningDiscipline(healthTier==="broken"?"blocked":healthTier==="degraded"?"degraded":qualityTier,familyShaping,normalizedModel)}}__name(resolveCodingRoutePolicyCore,"resolveCodingRoutePolicyCore");function modelFamilyIsDeepSeek(model){let normalized=model.trim().toLowerCase();return normalized.startsWith("deepseek-")||normalized.includes("deepseek")}__name(modelFamilyIsDeepSeek,"modelFamilyIsDeepSeek");var OPENAI_RESPONSES_MODEL_PATTERNS=[/^gpt-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^gpt-image-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^gemini-/,/^grok-/,/^deepseek-/,/^codex-/,/codex/];function normalizeDialectMode(value){let normalized=String(value??"").trim().toLowerCase();return normalized==="openai"||normalized==="responses"||normalized==="openai_responses"?"openai_responses":"anthropic"}__name(normalizeDialectMode,"normalizeDialectMode");function getConfiguredApiDialectMode(){return normalizeDialectMode(process.env.CLAVUE_API_DIALECT??process.env.MYCLAUDE_API_DIALECT??process.env.CLAUDE_CODE_API_DIALECT??process.env.CLAUDE_CODE_PROVIDER_DIALECT)}__name(getConfiguredApiDialectMode,"getConfiguredApiDialectMode");function supportsOpenAIResponsesAdapterModel(model){let normalizedModel=String(model??"").trim().toLowerCase();return normalizedModel?OPENAI_RESPONSES_MODEL_PATTERNS.some(pattern=>pattern.test(normalizedModel)):!1}__name(supportsOpenAIResponsesAdapterModel,"supportsOpenAIResponsesAdapterModel");var PLAN_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),VERIFICATION_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),RECOVERY_MODE_VALUES=new Set(["strict","normal","off"]);function normalize3(raw,allowed){let value=String(raw??"").trim().toLowerCase();if(value)return allowed.has(value)?value:void 0}__name(normalize3,"normalize");function getWorkflowDisciplinePreferencesFromEnv(env5=process.env){return{planDiscipline:normalize3(env5.CLAVUE_PLAN_DISCIPLINE??env5.MYCLAUDE_PLAN_DISCIPLINE,PLAN_DISCIPLINE_VALUES),verificationDiscipline:normalize3(env5.CLAVUE_VERIFICATION_DISCIPLINE??env5.MYCLAUDE_VERIFICATION_DISCIPLINE,VERIFICATION_DISCIPLINE_VALUES),recoveryMode:normalize3(env5.CLAVUE_RECOVERY_MODE??env5.MYCLAUDE_RECOVERY_MODE,RECOVERY_MODE_VALUES)}}__name(getWorkflowDisciplinePreferencesFromEnv,"getWorkflowDisciplinePreferencesFromEnv");function applyWorkflowDisciplinePreferences(routeDerived,preferences){return{planDiscipline:preferences.planDiscipline??routeDerived.planDiscipline,verificationDiscipline:preferences.verificationDiscipline??routeDerived.verificationDiscipline,recoveryMode:preferences.recoveryMode??routeDerived.recoveryMode}}__name(applyWorkflowDisciplinePreferences,"applyWorkflowDisciplinePreferences");var DEFAULT_PROVIDER_HEALTH_WINDOW_MS=900*1e3,TOOL_FAILURE_CLASSES=new Set(["tool_schema","tool_call","tool_result"]);function createProviderHealthLedger(events=[]){return{events:[...events].sort((a2,b)=>a2.atMs-b.atMs)}}__name(createProviderHealthLedger,"createProviderHealthLedger");function getProviderHealthSnapshot(ledger,options){let nowMs=options.nowMs??Date.now(),windowMs=options.windowMs??DEFAULT_PROVIDER_HEALTH_WINDOW_MS,windowStartMs=nowMs-windowMs,routeEvents=ledger.events.filter(event=>event.routeId===options.routeId&&event.atMs>=windowStartMs).sort((a2,b)=>a2.atMs-b.atMs);if(routeEvents.length===0)return null;let lastRecoveryIndex=findLastIndex2(routeEvents,event=>event.type==="provider_recovered"),activeEvents=lastRecoveryIndex>=0?routeEvents.slice(lastRecoveryIndex+1):routeEvents;if(activeEvents.length===0)return{healthTier:"healthy",capabilityStatus:"verified",workflowToolPolicy:"full",warnings:[],repairHints:["Provider route recovered in the current health window."],certificationRef:routeEvents[lastRecoveryIndex]?.certificationRef};if(activeEvents.find(event=>event.failureClass==="auth"))return buildSnapshot({healthTier:"broken",capabilityStatus:"failed",workflowToolPolicy:"blocked",warning:"Provider authentication failed for this route.",repairHint:"Repair the provider credential or selected profile, then rerun provider doctor.",certificationRef:latestCertificationRef(activeEvents)});let classCounts=countFailureClasses(activeEvents),strongestToolFailure=strongestCount(classCounts.filter(item=>TOOL_FAILURE_CLASSES.has(item.failureClass)));if(strongestToolFailure&&strongestToolFailure.count>=3)return buildSnapshot({healthTier:"degraded",capabilityStatus:"stale",workflowToolPolicy:"direct_only",warning:failureWarning(strongestToolFailure,"repeated"),repairHint:"Workflow orchestration tools are downgraded for this route; preserve direct repo tools and rerun provider certification before restoring workflow mode.",certificationRef:latestCertificationRef(activeEvents)});if(strongestToolFailure&&strongestToolFailure.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:failureWarning(strongestToolFailure,"second"),repairHint:"Keep workflow tools visible but treat provider tool-calling as unproven until certification passes.",certificationRef:latestCertificationRef(activeEvents)});let streamFailures=classCounts.find(item=>item.failureClass==="stream");if(streamFailures&&streamFailures.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider stream parsing failures were observed.",repairHint:"Prefer cautious workflow use and rerun provider doctor to confirm the streaming contract.",certificationRef:latestCertificationRef(activeEvents)});let cacheFailures=classCounts.find(item=>item.failureClass==="cache");return cacheFailures&&cacheFailures.count>=2?buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider cache or previous_response_id anchor failures were observed.",repairHint:"Disable stateful cache assumptions for this route until certification confirms support.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="overflow")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider context overflow was observed on this route.",repairHint:"Use strict recovery for the turn, compact context, then retry with a smaller request.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="rate_limit")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider rate limiting was observed on this route.",repairHint:"Back off or switch provider route; do not infer a permanent capability failure from rate limiting alone.",certificationRef:latestCertificationRef(activeEvents)}):buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider route emitted a recoverable health warning.",repairHint:"Continue on direct repo tools when possible and record another provider health event if the route fails again.",certificationRef:latestCertificationRef(activeEvents)})}__name(getProviderHealthSnapshot,"getProviderHealthSnapshot");function buildSnapshot({healthTier,capabilityStatus,workflowToolPolicy,warning,repairHint,certificationRef}){return{healthTier,capabilityStatus,workflowToolPolicy,warnings:[warning],repairHints:[repairHint],...certificationRef?{certificationRef}:{}}}__name(buildSnapshot,"buildSnapshot");function countFailureClasses(events){let counts=new Map;for(let event of events)event.failureClass!=="recovered"&&counts.set(event.failureClass,(counts.get(event.failureClass)??0)+1);return[...counts.entries()].map(([failureClass,count3])=>({failureClass,count:count3}))}__name(countFailureClasses,"countFailureClasses");function strongestCount(items){let strongest=null;for(let item of items)(!strongest||item.count>strongest.count)&&(strongest=item);return strongest}__name(strongestCount,"strongestCount");function failureWarning(item,label){let readableClass=item.failureClass.replaceAll("_"," ");return label==="second"?`Provider route emitted a second ${readableClass} failure in the health window.`:`Provider route emitted repeated ${readableClass} failures in the health window.`}__name(failureWarning,"failureWarning");function latestCertificationRef(events){return[...events].reverse().find(event=>event.certificationRef)?.certificationRef}__name(latestCertificationRef,"latestCertificationRef");function findLastIndex2(values2,predicate){for(let index=values2.length-1;index>=0;index-=1)if(predicate(values2[index]))return index;return-1}__name(findLastIndex2,"findLastIndex");var runtimeLedger=createProviderHealthLedger();function isProviderHealthLedgerEnabled(){return process.env.CLAVUE_ROUTE_HEALTH_LEDGER!=="0"}__name(isProviderHealthLedgerEnabled,"isProviderHealthLedgerEnabled");function getProviderRouteHealthSnapshot(routeId){if(!isProviderHealthLedgerEnabled())return null;let normalizedRouteId=String(routeId??"").trim();return normalizedRouteId?getProviderHealthSnapshot(runtimeLedger,{routeId:normalizedRouteId}):null}__name(getProviderRouteHealthSnapshot,"getProviderRouteHealthSnapshot");var CORE_NATIVE_WORKFLOW_TOOL_NAMES=new Set([ENTER_PLAN_MODE_TOOL_NAME,SEND_MESSAGE_TOOL_NAME,TASK_CREATE_TOOL_NAME,TASK_GET_TOOL_NAME,TASK_LIST_TOOL_NAME,TASK_OUTPUT_TOOL_NAME,TASK_UPDATE_TOOL_NAME,TEAM_CREATE_TOOL_NAME,TEAM_DELETE_TOOL_NAME,TODO_WRITE_TOOL_NAME]);function isOfficialAnthropicBaseUrl(baseUrl){let normalizedBaseUrl=String(baseUrl??"").trim();if(!normalizedBaseUrl)return isFirstPartyAnthropicBaseUrl();try{let host=new URL(normalizedBaseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}__name(isOfficialAnthropicBaseUrl,"isOfficialAnthropicBaseUrl");function inferRuntimeProviderKind(input){if(input.runtimeProviderKind)return input.runtimeProviderKind;if(typeof input.baseUrl=="string"&&input.baseUrl.trim())return isOfficialAnthropicBaseUrl(input.baseUrl)?"first_party":"gateway";switch(getAPIProvider()){case"bedrock":return"bedrock";case"vertex":return"vertex";case"foundry":return"foundry";default:return isFirstPartyAnthropicBaseUrl()?"first_party":"gateway"}}__name(inferRuntimeProviderKind,"inferRuntimeProviderKind");function resolveCodingRoutePolicy(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.fusionEndpointDialect??input.apiDialectMode??getConfiguredApiDialectMode(),runtimeProviderKind=inferRuntimeProviderKind(input),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),providerHealth=input.providerHealth===void 0?getProviderRouteHealthSnapshot(routeId):input.providerHealth,decision=resolveCodingRoutePolicyCore({model:normalizedModel,snapshot,routeId,apiDialectMode:dialectMode,runtimeProviderKind,supportsResponsesAdapter:supportsOpenAIResponsesAdapterModel(normalizedModel),coreNativeWorkflowToolNames:[...CORE_NATIVE_WORKFLOW_TOOL_NAMES],providerHealth}),preferences=getWorkflowDisciplinePreferencesFromEnv(),overridden=applyWorkflowDisciplinePreferences(decision,preferences);return{...decision,planDiscipline:overridden.planDiscipline,verificationDiscipline:overridden.verificationDiscipline,recoveryMode:overridden.recoveryMode}}__name(resolveCodingRoutePolicy,"resolveCodingRoutePolicy");function createFallbackStorage(primary,secondary){return{name:`${primary.name}-with-${secondary.name}-fallback`,read(){let result2=primary.read();return result2??(secondary.read()||{})},async readAsync(){let result2=await primary.readAsync();return result2??(await secondary.readAsync()||{})},update(data){let primaryDataBefore=primary.read(),result2=primary.update(data);if(result2.success)return primaryDataBefore===null&&secondary.delete(),result2;let fallbackResult=secondary.update(data);return fallbackResult.success?(primaryDataBefore!==null&&primary.delete(),{success:!0,warning:fallbackResult.warning}):{success:!1}},delete(){let primarySuccess=primary.delete(),secondarySuccess=secondary.delete();return primarySuccess||secondarySuccess}}}__name(createFallbackStorage,"createFallbackStorage");init_envUtils();init_execa();init_debug();init_envUtils();init_execFileNoThrow();init_execFileNoThrowPortable();init_slowOperations();var SECURITY_STDIN_LINE_LIMIT=4032,macOsKeychainStorage={name:"keychain",read(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),result2=execSyncWithDefaults_DEPRECATED(`security find-generic-password -a "${username}" -w -s "${storageServiceName}"`);if(result2){let data=jsonParse(result2);return keychainCacheState.cache={data,cachedAt:Date.now()},data}}catch{}return prev.data!==null?(logForDebugging("[keychain] read failed; serving stale cache",{level:"warn"}),keychainCacheState.cache={data:prev.data,cachedAt:Date.now()},prev.data):(keychainCacheState.cache={data:null,cachedAt:Date.now()},null)},async readAsync(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;if(keychainCacheState.readInFlight)return keychainCacheState.readInFlight;let gen=keychainCacheState.generation,promise2=doReadAsync().then(data=>{if(gen===keychainCacheState.generation){data===null&&prev.data!==null&&logForDebugging("[keychain] readAsync failed; serving stale cache",{level:"warn"});let next=data??prev.data;return keychainCacheState.cache={data:next,cachedAt:Date.now()},keychainCacheState.readInFlight=null,next}return data});return keychainCacheState.readInFlight=promise2,promise2},update(data){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),jsonString=jsonStringify(data),hexValue=Buffer.from(jsonString,"utf-8").toString("hex"),command=`add-generic-password -U -a "${username}" -s "${storageServiceName}" -X "${hexValue}"
|
|
225
|
-
`,result2;return command.length<=SECURITY_STDIN_LINE_LIMIT?result2=execaSync("security",["-i"],{input:command,stdio:["pipe","pipe","pipe"],reject:!1}):(logForDebugging(`Keychain payload (${jsonString.length}B JSON) exceeds security -i stdin limit; using argv`,{level:"warn"}),result2=execaSync("security",["add-generic-password","-U","-a",username,"-s",storageServiceName,"-X",hexValue],{stdio:["ignore","pipe","pipe"],reject:!1})),result2.exitCode!==0?{success:!1}:(keychainCacheState.cache={data,cachedAt:Date.now()},{success:!0})}catch{return{success:!1}}},delete(){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername();return execSyncWithDefaults_DEPRECATED(`security delete-generic-password -a "${username}" -s "${storageServiceName}"`),!0}catch{return!1}}};async function doReadAsync(){try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),{stdout,code}=await execFileNoThrow("security",["find-generic-password","-a",username,"-w","-s",storageServiceName],{useCwd:!1,preserveOutputOnError:!1});if(code===0&&stdout)return jsonParse(stdout.trim())}catch{}return null}__name(doReadAsync,"doReadAsync");init_envUtils();init_errors2();init_fsOperations();init_slowOperations();import{chmodSync as chmodSync3}from"fs";import{join as join15}from"path";function getStoragePath(){let storageDir=getClaudeConfigHomeDir();return{storageDir,storagePath:join15(storageDir,".credentials.json")}}__name(getStoragePath,"getStoragePath");function ensurePrivateStorageDir(storageDir){try{getFsImplementation().mkdirSync(storageDir,{mode:448})}catch(e2){if(getErrnoCode(e2)!=="EEXIST")throw e2}if(process.platform!=="win32")try{chmodSync3(storageDir,448)}catch{}}__name(ensurePrivateStorageDir,"ensurePrivateStorageDir");var plainTextStorage={name:"plaintext",read(){let{storagePath}=getStoragePath();try{let data=getFsImplementation().readFileSync(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},async readAsync(){let{storagePath}=getStoragePath();try{let data=await getFsImplementation().readFile(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},update(data){try{let{storageDir,storagePath}=getStoragePath();return ensurePrivateStorageDir(storageDir),writeFileSync_DEPRECATED(storagePath,jsonStringify(data),{encoding:"utf8",flush:!1}),chmodSync3(storagePath,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath}=getStoragePath();try{return getFsImplementation().unlinkSync(storagePath),!0}catch(e2){return getErrnoCode(e2)==="ENOENT"}}};function getSecureStorage(){return process.platform==="darwin"&&shouldUseMacOSKeychain()?createFallbackStorage(macOsKeychainStorage,plainTextStorage):plainTextStorage}__name(getSecureStorage,"getSecureStorage");var hasMigratedNormalizedProviderBaseUrls=!1;var PROVIDER_PRESETS=[{id:"custom",name:"\u81EA\u5B9A\u4E49\u914D\u7F6E",description:"\u624B\u52A8\u586B\u5199\u4EFB\u610F\u517C\u5BB9 API URL \u548C\u5BC6\u94A5",baseUrl:"",authType:"api_key"},{id:"anthropic",name:"Anthropic",description:"\u5B98\u65B9 Anthropic API",baseUrl:"https://api.anthropic.com",authType:"api_key"},{id:"openrouter",name:"OpenRouter",description:"OpenRouter Anthropic \u517C\u5BB9\u5165\u53E3",baseUrl:"https://openrouter.ai/api/anthropic",authType:"api_key"},{id:"glm",name:"GLM",description:"\u667A\u8C31 AI Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://open.bigmodel.cn/api/anthropic",authType:"auth_token"},{id:"minimax",name:"MiniMax",description:"MiniMax Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.minimaxi.com/anthropic",authType:"auth_token"},{id:"kimi",name:"Kimi",description:"Moonshot Kimi Coding \u63A5\u53E3",baseUrl:"https://api.kimi.com/coding/",authType:"auth_token"},{id:"xai",name:"xAI (Grok)",description:"xAI Grok OpenAI \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.x.ai/v1",authType:"api_key"},{id:"gemini",name:"Google Gemini",description:"Google Gemini\uFF08\u7EDF\u4E00\u8D70 OpenAI \u517C\u5BB9\u7AEF\u70B9 + \u4E13\u7528\u540E\u5904\u7406\uFF0C\u652F\u6301 gemini-3-5-flash / gemini-3-5-flash-high \u7B49\u5168\u7CFB\u5217\uFF0C\u9AD8\u9636\u53D8\u4F53\u81EA\u52A8\u542F\u7528\u66F4\u5F3A reasoning \u63D0\u53D6\uFF09",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",authType:"api_key"}],PROVIDER_MODEL_ROUTING_PRESETS=[{id:"provider_default",name:"Provider defaults",description:"Keep the provider defaults for all slots. Override individual models only when needed.",routing:{presetId:"provider_default",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}},{id:"claude_code_heritage",name:"Anthropic-native heritage",description:"Anthropic-native default path with Sonnet for execution, Haiku for fast work, and Opus for planning.",routing:{presetId:"claude_code_heritage",primaryModel:"claude-sonnet-4-6",subagentModel:"claude-sonnet-4-6",smallFastModel:"claude-haiku-4-5",planModel:"claude-opus-4-6",exploreModel:"claude-sonnet-4-6",generalModel:"claude-sonnet-4-6",teamModel:"claude-sonnet-4-6",guideModel:"claude-opus-4-6",reviewModel:""}},{id:"gpt_5_5_max",name:"GPT-5.5 max capability",description:"Primary, workhorse, team, and planning slots on GPT-5.5 with GPT-5.3 Codex kept for fast helper work.",routing:{presetId:"gpt_5_5_max",primaryModel:"gpt-5.5",subagentModel:"gpt-5.5",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.5",exploreModel:"gpt-5.5",generalModel:"gpt-5.5",teamModel:"gpt-5.5",guideModel:"gpt-5.5",reviewModel:""}},{id:"gpt_5_4_codex",name:"GPT-5.4 + GPT-5.3 Codex",description:"Primary slot on GPT-5.4. Sonnet and Haiku slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_4_codex",primaryModel:"gpt-5.4",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.4",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.4",reviewModel:""}},{id:"gpt_5_1_stable",name:"GPT-5.1 stable",description:"Use GPT-5.1 across the primary, Haiku, Sonnet, and Opus slots.",routing:{presetId:"gpt_5_1_stable",primaryModel:"gpt-5.1",subagentModel:"gpt-5.1",smallFastModel:"gpt-5.1",planModel:"gpt-5.1",exploreModel:"gpt-5.1",generalModel:"gpt-5.1",teamModel:"gpt-5.1",guideModel:"gpt-5.1",reviewModel:""}},{id:"gpt_5_3_codex",name:"GPT-5.3 Codex everywhere",description:"Run the primary, Haiku, Sonnet, and Opus slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_3_codex",primaryModel:"gpt-5.3-codex",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.3-codex",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.3-codex",reviewModel:""}},{id:"gpt55_deepseek_combo",name:"GPT-5.5 + DeepSeek combo",description:"GPT-5.5 primary loop with DeepSeek v4 Pro for prose/planning/team work and GPT-5.3 Codex Spark for fast helpers. Maximum GPT capability with DeepSeek backend stability.",routing:{presetId:"gpt55_deepseek_combo",primaryModel:"gpt-5.5",subagentModel:"deepseek-v4-pro",smallFastModel:"gpt-5.3-codex-spark",planModel:"deepseek-v4-pro",exploreModel:"deepseek-v4-pro",generalModel:"deepseek-v4-pro",teamModel:"deepseek-v4-pro",guideModel:"deepseek-v4-pro",reviewModel:"codex-auto-review"}},{id:"deepseek_gpt_combo",name:"DeepSeek + GPT combo",description:"DeepSeek v4 Pro primary with GPT-5.5 for planning/guide and GPT-5.3 Codex Spark for fast helpers. Best when DeepSeek is your main workhorse with GPT augmentation.",routing:{presetId:"deepseek_gpt_combo",primaryModel:"deepseek-v4-pro",subagentModel:"deepseek-v4-pro",smallFastModel:"gpt-5.3-codex-spark",planModel:"gpt-5.5",exploreModel:"deepseek-v4-pro",generalModel:"deepseek-v4-pro",teamModel:"deepseek-v4-pro",guideModel:"gpt-5.5",reviewModel:"codex-auto-review"}},{id:"custom",name:"Custom model routing",description:"Set primary, Haiku, Sonnet, and Opus slots yourself. Derived roles update automatically.",routing:{presetId:"custom",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}}],PROVIDER_MODEL_CATALOG=[{id:"gpt-5.5",name:"GPT-5.5",description:"Maximum-capability GPT route for validated OpenAI Responses-compatible coding gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking","max_effort"]},{id:"gpt-5.4",name:"GPT-5.4",description:"Probe-required Primary slot model on Anthropic-compatible GPT gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",description:"Gateway-dependent execution model; only use it after this provider validates stable native tool calling",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",description:"Experimental Codex route; only use it when this provider explicitly validates support",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.1",name:"GPT-5.1",description:"Provider-dependent fallback when a gateway does not fully expose GPT-5.4",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",description:"Native Anthropic everyday coding model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-opus-4-6",name:"Claude Opus 4.6",description:"Native Anthropic highest-capability model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",description:"Native Anthropic fast-response model for the Haiku slot",verified:!0,capabilities:[]},{id:"grok-3",name:"Grok 3",description:"xAI Grok 3 - strong reasoning and coding model",verified:!1,capabilities:["vision","tool_use"]},{id:"grok-4",name:"Grok 4",description:"xAI Grok 4 - frontier reasoning model",verified:!1,capabilities:["vision","tool_use","thinking"]},{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash",description:"Google Gemini 1.5 Flash - fast, long-context",verified:!1,capabilities:["vision","tool_use","long_context"]},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",description:"Google Gemini 2.0 Flash (experimental)",verified:!1,capabilities:["vision","tool_use"]},{id:"gemini-3-5-flash",name:"Gemini 3.5 Flash",description:"Google Gemini 3.5 Flash - fast, high-capability",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking"]},{id:"gemini-3-5-flash-high",name:"Gemini 3.5 Flash (High)",description:"Google Gemini 3.5 Flash High - maximized reasoning mode",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking","thinking","effort"]}],PROVIDER_CAPABILITY_CACHE_TTL_MS=3600*1e3,PROVIDER_CAPABILITY_CACHE_VERSION=3;var COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS=[{sourceId:"ccjk",path:join16(homedir5(),".ccjk","config.toml")},{sourceId:"zcf",path:join16(homedir5(),".ufomiao","zcf","config.toml")}],hasAttemptedCompatibleExternalProviderImport=!1;function normalizeConfigPathForComparison(path9){let normalizedPath=resolve7(path9).normalize("NFC");return process.platform==="win32"?normalizedPath.toLowerCase():normalizedPath}__name(normalizeConfigPathForComparison,"normalizeConfigPathForComparison");function shouldAutoImportCompatibleExternalProviderProfiles(){let explicitConfigDir=process.env.CLAVUE_CONFIG_DIR?.trim();return explicitConfigDir?normalizeConfigPathForComparison(explicitConfigDir)===normalizeConfigPathForComparison(join16(homedir5(),".clavue")):!0}__name(shouldAutoImportCompatibleExternalProviderProfiles,"shouldAutoImportCompatibleExternalProviderProfiles");function normalizeAnthropicBaseUrl(value){let trimmedValue=String(value??"").trim();return trimmedValue?trimmedValue.replace(/\/v1(?:\/messages)?\/?$/i,"").replace(/\/+$/,""):""}__name(normalizeAnthropicBaseUrl,"normalizeAnthropicBaseUrl");function stripTomlComment(line){let result2="",quote=null,escaped=!1;for(let char of line){if(quote){if(result2+=char,quote==='"'&&char==="\\"&&!escaped){escaped=!0;continue}char===quote&&!escaped&&(quote=null),escaped=!1;continue}if(char==='"'||char==="'"){quote=char,result2+=char;continue}if(char==="#")break;result2+=char}return result2.trim()}__name(stripTomlComment,"stripTomlComment");function parseTomlPathSegments(value){let segments=[],current="",quote=null;for(let char of value){if(quote){char===quote?quote=null:current+=char;continue}if(char==='"'||char==="'"){quote=char;continue}if(char==="."){let segment=current.trim();segment&&segments.push(segment),current="";continue}current+=char}let tail2=current.trim();return tail2&&segments.push(tail2),segments}__name(parseTomlPathSegments,"parseTomlPathSegments");function parseTomlStringValue(value){let trimmed=stripTomlComment(value);if(!trimmed)return"";if(trimmed.startsWith('"')&&trimmed.endsWith('"'))try{return JSON.parse(trimmed)}catch{return trimmed.slice(1,-1)}return trimmed.startsWith("'")&&trimmed.endsWith("'")?trimmed.slice(1,-1):trimmed}__name(parseTomlStringValue,"parseTomlStringValue");var VERIFIED_MODEL_CAPABILITIES=new Map([["gpt-5.5",["effort","thinking","adaptive_thinking","max_effort"]],["gpt-5.4",["effort","thinking","adaptive_thinking"]],["gpt-5.1",["effort","thinking","adaptive_thinking"]],["gpt-5.3-codex",["effort","thinking"]],["gemini-3-5-flash",["vision","tool_use","long_context","adaptive_thinking"]],["gemini-3-5-flash-high",["vision","tool_use","long_context","adaptive_thinking","thinking","effort","max_effort"]]]);function getVerifiedCapabilitiesForModel(model){let normalizedModel=model.trim().toLowerCase();if(!normalizedModel)return[];let capabilities=VERIFIED_MODEL_CAPABILITIES.get(normalizedModel);return capabilities?[...capabilities]:[]}__name(getVerifiedCapabilitiesForModel,"getVerifiedCapabilitiesForModel");function getCapabilitiesFromProviderSnapshot(model,snapshot){if(!model.trim().toLowerCase())return[];let capabilities=new Set,verifiedCapabilities=getVerifiedCapabilitiesForModel(model);if(snapshot.responsesReasoningMedium){capabilities.add("effort"),capabilities.add("thinking");for(let capability of verifiedCapabilities)capability==="adaptive_thinking"&&capabilities.add(capability)}return snapshot.responsesReasoningXHigh&&capabilities.add("max_effort"),[...capabilities]}__name(getCapabilitiesFromProviderSnapshot,"getCapabilitiesFromProviderSnapshot");function serializeCapabilitiesForModel(profile,model){if(profile){let snapshot=getProviderCapabilitySnapshot(profile,model,{allowStale:!0});if(snapshot){let cachedCapabilities=getCapabilitiesFromProviderSnapshot(model,snapshot);return cachedCapabilities.length>0?cachedCapabilities.join(","):void 0}}if(supportsOpenAIResponsesAdapterModel(model))return;let capabilities=getVerifiedCapabilitiesForModel(model);return capabilities.length>0?capabilities.join(","):void 0}__name(serializeCapabilitiesForModel,"serializeCapabilitiesForModel");function normalizeAuthType(value){return value==="auth_token"?"auth_token":"api_key"}__name(normalizeAuthType,"normalizeAuthType");function getProviderSlotModelsFromRouting(routing){let values2=getProviderModeSlotValues(routing??{});return[values2.primaryModel,values2.haikuModel,values2.sonnetModel,values2.opusModel].map(model=>String(model??"").trim()).filter(Boolean)}__name(getProviderSlotModelsFromRouting,"getProviderSlotModelsFromRouting");function inferProviderApiDialectMode(modelMode,models){return modelMode==="anthropic_native"?"anthropic":modelMode==="openai_native"||models.some(model=>{let normalized=String(model??"").trim().toLowerCase();return supportsOpenAIResponsesAdapterModel(normalized)&&!defaultsToAnthropicMessagesModel(normalized)})?"openai_responses":"anthropic"}__name(inferProviderApiDialectMode,"inferProviderApiDialectMode");function normalizeProviderApiDialectMode(value,modelMode,modelRouting){return value==="anthropic"||value==="openai_responses"?value:inferProviderApiDialectMode(modelMode,getProviderSlotModelsFromRouting(modelRouting))}__name(normalizeProviderApiDialectMode,"normalizeProviderApiDialectMode");function normalizeProviderId(value,baseUrl){return value==="custom"||value==="anthropic"||value==="openrouter"||value==="glm"||value==="minimax"||value==="kimi"||value==="xai"||value==="gemini"?value:inferProviderPresetId(baseUrl)??"custom"}__name(normalizeProviderId,"normalizeProviderId");function normalizeModelRoutingPresetId(value){return value==="provider_default"||value==="claude_code_heritage"||value==="gpt_5_5_max"||value==="gpt_5_4_codex"||value==="gpt_5_1_stable"||value==="gpt_5_3_codex"||value==="gpt55_deepseek_combo"||value==="deepseek_gpt_combo"||value==="custom"?value:"provider_default"}__name(normalizeModelRoutingPresetId,"normalizeModelRoutingPresetId");function normalizeModelValue(value){return typeof value=="string"?value.trim():""}__name(normalizeModelValue,"normalizeModelValue");function inferModelRoutingPresetId(routing){for(let preset of PROVIDER_MODEL_ROUTING_PRESETS)if(preset.routing.primaryModel===routing.primaryModel&&preset.routing.subagentModel===routing.subagentModel&&preset.routing.smallFastModel===routing.smallFastModel&&preset.routing.planModel===routing.planModel&&preset.routing.exploreModel===routing.exploreModel&&preset.routing.generalModel===routing.generalModel&&preset.routing.teamModel===routing.teamModel&&preset.routing.guideModel===routing.guideModel&&preset.routing.reviewModel===routing.reviewModel)return preset.id;return"custom"}__name(inferModelRoutingPresetId,"inferModelRoutingPresetId");function normalizeProviderModelRouting(value){if(!value||typeof value!="object")return createProviderModelRoutingFromPreset("provider_default");let raw=value,presetId=normalizeModelRoutingPresetId(raw.presetId),base=getProviderModelRoutingPreset(presetId).routing,normalized=completeProviderRoutingSlotsFromPrimary({presetId,primaryModel:normalizeModelValue(raw.primaryModel),subagentModel:normalizeModelValue(raw.subagentModel),smallFastModel:normalizeModelValue(raw.smallFastModel),planModel:normalizeModelValue(raw.planModel),exploreModel:normalizeModelValue(raw.exploreModel),generalModel:normalizeModelValue(raw.generalModel),teamModel:normalizeModelValue(raw.teamModel),guideModel:normalizeModelValue(raw.guideModel),reviewModel:normalizeModelValue(raw.reviewModel)},base);return{presetId:presetId==="provider_default"?inferModelRoutingPresetId(normalized):presetId,...normalized}}__name(normalizeProviderModelRouting,"normalizeProviderModelRouting");function normalizeProviderProfileProvenance(value){if(!value||typeof value!="object")return{kind:"manual"};let raw=value;return raw.kind==="synthetic_current_env"?{kind:"synthetic_current_env"}:raw.kind==="current_env_adopted"?{kind:"current_env_adopted",adoptedAt:typeof raw.adoptedAt=="number"&&Number.isFinite(raw.adoptedAt)?raw.adoptedAt:Date.now()}:raw.kind==="imported"&&(raw.sourceId==="ccjk"||raw.sourceId==="zcf")?{kind:"imported",sourceId:raw.sourceId,importedAt:typeof raw.importedAt=="number"&&Number.isFinite(raw.importedAt)?raw.importedAt:Date.now(),externalProfileId:typeof raw.externalProfileId=="string"&&raw.externalProfileId.trim()||void 0}:{kind:"manual"}}__name(normalizeProviderProfileProvenance,"normalizeProviderProfileProvenance");function normalizeProviderSecretRecord(value){if(!value||typeof value!="object")return null;let raw=value,credential=typeof raw.credential=="string"?raw.credential.trim():"";return credential?{credential,authType:raw.authType==="auth_token"?"auth_token":raw.authType==="api_key"?"api_key":void 0}:null}__name(normalizeProviderSecretRecord,"normalizeProviderSecretRecord");function getStoredProviderSecretRecords(){let stored=getSecureStorage().read()?.providerProfiles;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([profileId,value])=>{let normalizedId=profileId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}__name(getStoredProviderSecretRecords,"getStoredProviderSecretRecords");function areProviderSecretMapsEqual(left,right){let leftKeys=Object.keys(left).sort(),rightKeys=Object.keys(right).sort();if(leftKeys.length!==rightKeys.length)return!1;for(let index=0;index<leftKeys.length;index+=1){let leftKey=leftKeys[index],rightKey=rightKeys[index];if(leftKey!==rightKey)return!1;let leftValue=left[leftKey],rightValue=right[rightKey];if(!leftValue||!rightValue||leftValue.credential!==rightValue.credential||leftValue.authType!==rightValue.authType)return!1}return!0}__name(areProviderSecretMapsEqual,"areProviderSecretMapsEqual");function persistProviderSecrets(profiles){let secureStorage=getSecureStorage(),existingData=secureStorage.read()??{},currentSecrets=getStoredProviderSecretRecords(),nextSecrets=Object.fromEntries(profiles.map(profile=>{let id=profile.id.trim(),credential=profile.credential.trim();return!id||!credential||isPlaceholderProviderCredential(credential)?null:[id,{credential,authType:normalizeAuthType(profile.authType)}]}).filter(entry=>entry!==null));if(areProviderSecretMapsEqual(currentSecrets,nextSecrets))return;if(!secureStorage.update({...existingData,providerProfiles:Object.keys(nextSecrets).length>0?nextSecrets:void 0}).success)throw new Error("Failed to persist provider credentials to secure storage")}__name(persistProviderSecrets,"persistProviderSecrets");function scrubStoredProviderProfile(profile){let{credential:_credential,...rest2}=profile;return rest2}__name(scrubStoredProviderProfile,"scrubStoredProviderProfile");function normalizeProviderProfile(value,providerSecrets={}){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",name=typeof raw.name=="string"?raw.name.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),secretRecord=id?providerSecrets[id]:void 0,credential=secretRecord?.credential??(typeof raw.credential=="string"?raw.credential.trim():"");if(!id||!name||!baseUrl||!credential||isPlaceholderProviderCredential(credential))return null;let createdAt=typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt=typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:createdAt,providerId=normalizeProviderId(raw.providerId,baseUrl),modelRouting=normalizeProviderModelRouting(raw.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:typeof raw.modelMode=="string"?raw.modelMode:void 0,modelRouting});return{id,name,providerId,modelMode,baseUrl,authType:normalizeAuthType(secretRecord?.authType??raw.authType),credential,modelRouting,provenance:normalizeProviderProfileProvenance(raw.provenance),geminiHighAmplification:raw.geminiHighAmplification==="full"||raw.geminiHighAmplification==="light"||raw.geminiHighAmplification==="off"?raw.geminiHighAmplification:void 0,apiDialectMode:normalizeProviderApiDialectMode(raw.apiDialectMode,modelMode,modelRouting),createdAt,updatedAt}}__name(normalizeProviderProfile,"normalizeProviderProfile");function buildCompatibleExternalProviderRouting(profile){let primaryModel=normalizeModelValue(profile.primaryModel),haikuModel=normalizeModelValue(profile.defaultHaikuModel),sonnetModel=normalizeModelValue(profile.defaultSonnetModel),opusModel=normalizeModelValue(profile.defaultOpusModel),executionModel=sonnetModel||primaryModel;return normalizeProviderModelRouting({presetId:"custom",primaryModel,subagentModel:executionModel&&executionModel!==primaryModel?executionModel:"",smallFastModel:haikuModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel:""})}__name(buildCompatibleExternalProviderRouting,"buildCompatibleExternalProviderRouting");function getDefaultRoutingPresetIdForProvider(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"claude_code_heritage":providerId==="xai"||providerId==="gemini"?"hybrid_compatible":"gpt_5_5_max"}__name(getDefaultRoutingPresetIdForProvider,"getDefaultRoutingPresetIdForProvider");function getDefaultRoutingPresetIdForMode(modelMode,providerId){return modelMode==="anthropic_native"?"claude_code_heritage":modelMode==="openai_native"?"gpt_5_5_max":getDefaultRoutingPresetIdForProvider(providerId)}__name(getDefaultRoutingPresetIdForMode,"getDefaultRoutingPresetIdForMode");function createDefaultRoutingForMode(modelMode,providerId){return modelMode==="hybrid_compatible"?createCustomProviderModelRouting(createDefaultProviderModeSlotValues("hybrid_compatible")):createProviderModelRoutingFromPreset(getDefaultRoutingPresetIdForMode(modelMode,providerId))}__name(createDefaultRoutingForMode,"createDefaultRoutingForMode");function repairProviderProfileRoutingForMode(profile){let providerId=normalizeProviderId(profile.providerId,profile.baseUrl),routing=normalizeProviderModelRouting(profile.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:profile.modelMode,modelRouting:routing}),issues=validateProviderModeRouting(modelMode,routing,{language:"zh"}).filter(issue2=>issue2.level==="error");if(issues.length===0)return{profile:{...profile,providerId,modelMode,modelRouting:routing},repaired:!1,messages:[]};let nextRouting=createDefaultRoutingForMode(modelMode,providerId);return{profile:{...profile,providerId,modelMode,modelRouting:nextRouting},repaired:!0,messages:[...issues.map(issue2=>issue2.message),`\u5DF2\u81EA\u52A8\u5207\u6362\u4E3A ${getProviderModelRoutingPreset(nextRouting.presetId).name}\uFF0C\u907F\u514D\u672A\u9A8C\u8BC1\u6A21\u578B\u5BFC\u81F4\u53EA\u80FD\u5BF9\u8BDD\u3001\u4E0D\u80FD\u7A33\u5B9A\u8C03\u7528\u5DE5\u5177\u3002`]}}__name(repairProviderProfileRoutingForMode,"repairProviderProfileRoutingForMode");function createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId){let id=profileId.trim(),name=String(profile.name||profileId).trim(),baseUrl=normalizeAnthropicBaseUrl(profile.baseUrl),credential=String(profile.apiKey||"").trim(),authType=profile.authType==="auth_token"?"auth_token":"api_key";if(!id||!name||!baseUrl||!credential||isPlaceholderProviderCredential(credential))return null;let now2=Date.now(),rawProfile={id,name,providerId:normalizeProviderId(void 0,baseUrl),modelMode:getProviderModelModeForProfile({providerId:normalizeProviderId(void 0,baseUrl),modelRouting:buildCompatibleExternalProviderRouting(profile)}),baseUrl,authType,credential,modelRouting:buildCompatibleExternalProviderRouting(profile),provenance:{kind:"imported",sourceId,importedAt:now2,externalProfileId:id},createdAt:now2,updatedAt:now2};return repairProviderProfileRoutingForMode(rawProfile).profile}__name(createProviderProfileFromCompatibleExternalProfile,"createProviderProfileFromCompatibleExternalProfile");function loadCompatibleExternalProviderConfig(configPath,sourceId){if(!existsSync2(configPath))return null;let content="";try{content=readFileSync6(configPath,"utf8")}catch{return null}let rawProfiles=new Map,activeProfileId="",currentPath=[];for(let rawLine of content.split(/\r?\n/u)){let line=stripTomlComment(rawLine);if(!line)continue;if(line.startsWith("[")&&line.endsWith("]")){currentPath=parseTomlPathSegments(line.slice(1,-1).trim());continue}let separatorIndex=line.indexOf("=");if(separatorIndex===-1)continue;let key=line.slice(0,separatorIndex).trim().replace(/^['"]|['"]$/g,""),value=parseTomlStringValue(rawLine.slice(separatorIndex+1));if(currentPath.length===1&¤tPath[0]==="claudeCode"){key==="currentProfile"&&(activeProfileId=value.trim());continue}if(currentPath.length<3||currentPath[0]!=="claudeCode"||currentPath[1]!=="profiles")continue;let profileKey=currentPath.slice(2).join(".").trim();if(!profileKey)continue;let currentProfile=rawProfiles.get(profileKey)??{};(key==="name"||key==="authType"||key==="apiKey"||key==="baseUrl"||key==="primaryModel"||key==="defaultHaikuModel"||key==="defaultSonnetModel"||key==="defaultOpusModel")&&(currentProfile[key]=value,rawProfiles.set(profileKey,currentProfile))}let profiles=[...rawProfiles.entries()].map(([profileId,profile])=>createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId)).filter(profile=>profile!==null);return profiles.length===0&&!activeProfileId?null:{activeProfileId:activeProfileId||void 0,profiles}}__name(loadCompatibleExternalProviderConfig,"loadCompatibleExternalProviderConfig");function loadCompatibleExternalProviderProfiles(options){let profiles=[],seenIds=new Set,activeProfileId;for(let source of COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS){if(options?.sourceId&&source.sourceId!==options.sourceId)continue;let loaded=loadCompatibleExternalProviderConfig(source.path,source.sourceId);if(loaded){!activeProfileId&&loaded.activeProfileId&&(activeProfileId=loaded.activeProfileId);for(let profile of loaded.profiles){let normalizedId=profile.id.trim().toLowerCase();!normalizedId||seenIds.has(normalizedId)||(seenIds.add(normalizedId),profiles.push(profile))}}}return{activeProfileId,profiles}}__name(loadCompatibleExternalProviderProfiles,"loadCompatibleExternalProviderProfiles");function applyCompatibleExternalProviderImport(externalConfig){let discoveredProfiles=externalConfig.profiles;if(discoveredProfiles.length===0&&!externalConfig.activeProfileId)return{discoveredProfiles,importedProfiles:[],skippedProfiles:[],activeProfileId:externalConfig.activeProfileId,syncedActiveProfile:null};let currentConfig=getProviderConfig(),storedProfiles=getStoredProviderProfiles(),storedProfileIds=new Set(storedProfiles.map(profile=>profile.id.trim().toLowerCase())),storedProfileNames=new Set(storedProfiles.map(profile=>profile.name.trim().toLowerCase())),externalProfileIds=new Set(discoveredProfiles.map(profile=>profile.id.trim())),importedProfiles=discoveredProfiles.filter(profile=>{let normalizedId=profile.id.trim().toLowerCase(),normalizedName=profile.name.trim().toLowerCase();return normalizedId&&!storedProfileIds.has(normalizedId)&&!storedProfileNames.has(normalizedName)}),skippedProfiles=discoveredProfiles.filter(profile=>!importedProfiles.some(imported=>imported.id===profile.id)),currentStoredActiveProfileId=getStoredActiveProviderProfileId(currentConfig),importedActiveProfileId=String(externalConfig.activeProfileId||"").trim(),shouldSyncExternalActiveProfile=!!importedActiveProfileId&&externalProfileIds.has(importedActiveProfileId)&&(!currentStoredActiveProfileId||externalProfileIds.has(currentStoredActiveProfileId))&¤tStoredActiveProfileId!==importedActiveProfileId;if(importedProfiles.length===0&&!shouldSyncExternalActiveProfile)return{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile:null};let nextProfiles=[...storedProfiles,...importedProfiles];updateProviderConfig(nextProfiles,shouldSyncExternalActiveProfile?importedActiveProfileId:getStoredActiveProviderProfileId(currentConfig)||void 0);let syncedActiveProfile=null;return shouldSyncExternalActiveProfile&&(!getCurrentProviderProfile()||externalProfileIds.has(currentStoredActiveProfileId))&&(syncedActiveProfile=nextProfiles.find(profile=>profile.id===importedActiveProfileId)??null,syncedActiveProfile&&(writeUserSettingsUpdate(syncedActiveProfile),applyProviderProfileToProcess(syncedActiveProfile))),{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile}}__name(applyCompatibleExternalProviderImport,"applyCompatibleExternalProviderImport");function getProviderConfig(){return ensureNormalizedProviderBaseUrlsMigrated(),getGlobalConfig()}__name(getProviderConfig,"getProviderConfig");function getStoredProviderProfileRecords(config2){return Array.isArray(config2.clavueProviderProfiles)?config2.clavueProviderProfiles:Array.isArray(config2.my\u0063laudeProviderProfiles)?config2.my\u0063laudeProviderProfiles:[]}__name(getStoredProviderProfileRecords,"getStoredProviderProfileRecords");function getStoredActiveProviderProfileId(config2){let activeProfileId=typeof config2.clavueActiveProviderProfileId=="string"?config2.clavueActiveProviderProfileId.trim():"";return activeProfileId||(typeof config2.my\u0063laudeActiveProviderProfileId=="string"?config2.my\u0063laudeActiveProviderProfileId.trim():"")}__name(getStoredActiveProviderProfileId,"getStoredActiveProviderProfileId");function getStoredProviderCapabilityCache(config2){return config2.clavueProviderCapabilityCache&&typeof config2.clavueProviderCapabilityCache=="object"?config2.clavueProviderCapabilityCache:config2.my\u0063laudeProviderCapabilityCache&&typeof config2.my\u0063laudeProviderCapabilityCache=="object"?config2.my\u0063laudeProviderCapabilityCache:void 0}__name(getStoredProviderCapabilityCache,"getStoredProviderCapabilityCache");function ensureNormalizedProviderBaseUrlsMigrated(){hasMigratedNormalizedProviderBaseUrls||(hasMigratedNormalizedProviderBaseUrls=!0,migrateNormalizedProviderBaseUrls())}__name(ensureNormalizedProviderBaseUrlsMigrated,"ensureNormalizedProviderBaseUrlsMigrated");function getStoredProviderProfiles(){let config2=getProviderConfig(),providerSecrets=getStoredProviderSecretRecords();return getStoredProviderProfileRecords(config2).map(profile=>normalizeProviderProfile(profile,providerSecrets)).filter(profile=>profile!==null)}__name(getStoredProviderProfiles,"getStoredProviderProfiles");function ensureCompatibleExternalProviderProfilesImported(){hasAttemptedCompatibleExternalProviderImport||(hasAttemptedCompatibleExternalProviderImport=!0,shouldAutoImportCompatibleExternalProviderProfiles()&&applyCompatibleExternalProviderImport(loadCompatibleExternalProviderProfiles()))}__name(ensureCompatibleExternalProviderProfilesImported,"ensureCompatibleExternalProviderProfilesImported");function buildProviderCredentialFingerprint(profile){return createHash2("sha256").update([normalizeAnthropicBaseUrl(profile.baseUrl),profile.authType,profile.credential.trim()].join("\0")).digest("hex").slice(0,24)}__name(buildProviderCredentialFingerprint,"buildProviderCredentialFingerprint");function buildProviderCapabilityCacheKey(profile,model){return`${buildProviderCredentialFingerprint(profile)}:${normalizeModelValue(model).toLowerCase()}`}__name(buildProviderCapabilityCacheKey,"buildProviderCapabilityCacheKey");function normalizeProviderCapabilitySnapshot(value){if(!value||typeof value!="object")return null;let raw=value,key=typeof raw.key=="string"?raw.key.trim():"",model=typeof raw.model=="string"?raw.model.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),credentialFingerprint=typeof raw.credentialFingerprint=="string"?raw.credentialFingerprint.trim():"";if(raw.version!==PROVIDER_CAPABILITY_CACHE_VERSION||!key||!model||!baseUrl||!credentialFingerprint)return null;let optionalString=__name(input=>typeof input=="string"&&input.trim()?input.trim():void 0,"optionalString");return{version:PROVIDER_CAPABILITY_CACHE_VERSION,key,model,baseUrl,authType:normalizeAuthType(raw.authType),credentialFingerprint,checkedAt:typeof raw.checkedAt=="number"&&Number.isFinite(raw.checkedAt)?raw.checkedAt:Date.now(),compatibilityChecked:raw.compatibilityChecked===!0,anthropicMessagesReachable:raw.anthropicMessagesReachable===!0,anthropicToolUse:raw.anthropicToolUse===!0,responsesArrayInputReachable:raw.responsesArrayInputReachable===!0,responsesToolChoiceAuto:raw.responsesToolChoiceAuto===!0,responsesToolChoiceRequired:raw.responsesToolChoiceRequired===!0,responsesToolChoiceNamed:raw.responsesToolChoiceNamed===!0,responsesReasoningMedium:raw.responsesReasoningMedium===!0,responsesReasoningXHigh:raw.responsesReasoningXHigh===!0,messagesError:optionalString(raw.messagesError),responsesAccessError:optionalString(raw.responsesAccessError),responsesAutoError:optionalString(raw.responsesAutoError),responsesRequiredError:optionalString(raw.responsesRequiredError),responsesNamedError:optionalString(raw.responsesNamedError),responsesReasoningMediumError:optionalString(raw.responsesReasoningMediumError),responsesReasoningXHighError:optionalString(raw.responsesReasoningXHighError)}}__name(normalizeProviderCapabilitySnapshot,"normalizeProviderCapabilitySnapshot");function getProviderCapabilityCache(){let rawCache=getStoredProviderCapabilityCache(getProviderConfig());return!rawCache||typeof rawCache!="object"?{}:Object.fromEntries(Object.entries(rawCache).map(([key,value])=>{let normalized=normalizeProviderCapabilitySnapshot(value);return normalized?[key,normalized]:null}).filter(entry=>entry!==null))}__name(getProviderCapabilityCache,"getProviderCapabilityCache");function getProviderCapabilitySnapshot(profile,model,{allowStale=!1}={}){let cacheKey=buildProviderCapabilityCacheKey(profile,model),snapshot=getProviderCapabilityCache()[cacheKey];return!snapshot||!allowStale&&Date.now()-snapshot.checkedAt>PROVIDER_CAPABILITY_CACHE_TTL_MS?null:snapshot}__name(getProviderCapabilitySnapshot,"getProviderCapabilitySnapshot");function getCachedProviderCapabilitySnapshot(profile,model,options={}){return getProviderCapabilitySnapshot(profile,model,options)}__name(getCachedProviderCapabilitySnapshot,"getCachedProviderCapabilitySnapshot");function getSettingsEnv(){return getSettingsForSource("userSettings")?.env??{}}__name(getSettingsEnv,"getSettingsEnv");function buildSettingsEnvUpdate(profile){if(!profile)return{ANTHROPIC_BASE_URL:void 0,ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:void 0,ANTHROPIC_SMALL_FAST_MODEL:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:void 0,CLAUDE_CODE_SUBAGENT_MODEL:void 0,CLAVUE_API_DIALECT:void 0,MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0};let routing=profile.modelRouting,slotDefaults=getProviderModelSlotDefaults(routing);return{ANTHROPIC_BASE_URL:normalizeAnthropicBaseUrl(profile.baseUrl),ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:routing.primaryModel||void 0,ANTHROPIC_SMALL_FAST_MODEL:routing.smallFastModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:routing.primaryModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:getProviderModelDisplayName(routing.primaryModel,"primary"),ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:getProviderModelDescription(routing.primaryModel,"primary"),ANTHROPIC_DEFAULT_OPUS_MODEL:slotDefaults.opusModel||void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:getProviderModelDisplayName(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.opusModel),ANTHROPIC_DEFAULT_SONNET_MODEL:slotDefaults.sonnetModel||void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:getProviderModelDisplayName(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.sonnetModel),ANTHROPIC_DEFAULT_HAIKU_MODEL:slotDefaults.haikuModel||void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:getProviderModelDisplayName(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.haikuModel),CLAUDE_CODE_SUBAGENT_MODEL:routing.subagentModel&&routing.subagentModel!=="inherit"?routing.subagentModel:void 0,CLAVUE_API_DIALECT:normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0}}__name(buildSettingsEnvUpdate,"buildSettingsEnvUpdate");function buildSettingsModelUpdate(profile){let primaryModel=profile?.modelRouting.primaryModel.trim();return primaryModel||void 0}__name(buildSettingsModelUpdate,"buildSettingsModelUpdate");function writeUserSettingsUpdate(profile){let envUpdate=buildSettingsEnvUpdate(profile);updateSettingsForSource("userSettings",{env:envUpdate,model:buildSettingsModelUpdate(profile)})}__name(writeUserSettingsUpdate,"writeUserSettingsUpdate");function updateProviderConfig(profiles,activeProviderId){persistProviderSecrets(profiles),saveGlobalConfig(current=>({...current,clavueProviderProfiles:profiles.length>0?profiles.map(scrubStoredProviderProfile):void 0,clavueActiveProviderProfileId:activeProviderId||void 0}))}__name(updateProviderConfig,"updateProviderConfig");function inferProviderPresetId(baseUrl){let normalizedBaseUrl=normalizeAnthropicBaseUrl(baseUrl);return normalizedBaseUrl?PROVIDER_PRESETS.find(preset=>preset.id!=="custom"&&normalizeAnthropicBaseUrl(preset.baseUrl)===normalizedBaseUrl)?.id??"custom":null}__name(inferProviderPresetId,"inferProviderPresetId");function getProviderModelCatalogEntry(model){let normalizedModel=model.trim().toLowerCase();if(normalizedModel)return PROVIDER_MODEL_CATALOG.find(entry=>entry.id.toLowerCase()===normalizedModel)}__name(getProviderModelCatalogEntry,"getProviderModelCatalogEntry");function getProviderModelDisplayName(model,slot){let entry=getProviderModelCatalogEntry(model);if(entry)switch(slot){case"primary":return entry.name;case"opus":return`${entry.name} \xB7 Planning`;case"sonnet":return`${entry.name} \xB7 Execution`;case"haiku":return`${entry.name} \xB7 Fast`}}__name(getProviderModelDisplayName,"getProviderModelDisplayName");function getProviderModelDescription(model,slot){let entry=getProviderModelCatalogEntry(model);if(!entry)return;let capabilitySuffix=entry.capabilities.length>0?` Supports ${entry.capabilities.join(", ")}.`:"";switch(slot){case"primary":return`${entry.description}.${capabilitySuffix}`.trim();case"opus":return`Configured planning / Opus slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"sonnet":return`Configured execution / Sonnet slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"haiku":return`Configured fast / Haiku slot routed to ${entry.name}.${capabilitySuffix}`.trim()}}__name(getProviderModelDescription,"getProviderModelDescription");function getProviderModelRoutingPreset(id){return PROVIDER_MODEL_ROUTING_PRESETS.find(preset=>preset.id===id)??PROVIDER_MODEL_ROUTING_PRESETS[0]}__name(getProviderModelRoutingPreset,"getProviderModelRoutingPreset");function getProviderProfiles(){return ensureCompatibleExternalProviderProfilesImported(),getStoredProviderProfiles()}__name(getProviderProfiles,"getProviderProfiles");function getActiveProviderProfileId(){return ensureCompatibleExternalProviderProfilesImported(),getStoredActiveProviderProfileId(getProviderConfig())||void 0}__name(getActiveProviderProfileId,"getActiveProviderProfileId");function getSavedActiveProviderProfile(){let activeProfileId=getActiveProviderProfileId();return activeProfileId?getProviderProfiles().find(profile=>profile.id===activeProfileId)??null:null}__name(getSavedActiveProviderProfile,"getSavedActiveProviderProfile");function getCurrentProviderProfile(){let env5={...getSettingsEnv(),...process.env},credential=env5.ANTHROPIC_AUTH_TOKEN?.trim()??env5.ANTHROPIC_API_KEY?.trim()??"",authType=env5.ANTHROPIC_AUTH_TOKEN?"auth_token":"api_key",baseUrl=normalizeAnthropicBaseUrl(env5.ANTHROPIC_BASE_URL?.trim())||"https://api.anthropic.com";if(!credential||isPlaceholderProviderCredential(credential))return null;let providerId=inferProviderPresetId(baseUrl)??"custom",currentRouting={primaryModel:env5.ANTHROPIC_MODEL?.trim()??"",subagentModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??"",smallFastModel:env5.ANTHROPIC_SMALL_FAST_MODEL?.trim()??"",planModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??"",exploreModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",generalModel:env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",teamModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",guideModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??""};return{id:CURRENT_PROVIDER_PROFILE_ID,name:"Current API config",providerId,modelMode:getProviderModelModeForProfile({providerId,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting}}),baseUrl,authType,credential,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting},provenance:{kind:"synthetic_current_env"},createdAt:Date.now(),updatedAt:Date.now()}}__name(getCurrentProviderProfile,"getCurrentProviderProfile");function getResolvedCurrentProviderProfile(){return getSavedActiveProviderProfile()??getCurrentProviderProfile()}__name(getResolvedCurrentProviderProfile,"getResolvedCurrentProviderProfile");function createProviderModelRoutingFromPreset(presetId){return{...getProviderModelRoutingPreset(presetId).routing}}__name(createProviderModelRoutingFromPreset,"createProviderModelRoutingFromPreset");function createCustomProviderModelRouting(values2){let primaryModel=(values2.primaryModel||"").trim(),subagentModel=(values2.sonnetModel??values2.subagentModel??"").trim(),smallFastModel=(values2.haikuModel??values2.smallFastModel??"").trim(),opusModel=(values2.opusModel??"").trim(),reviewModel=(values2.reviewModel??"").trim(),executionModel=subagentModel||primaryModel;return{presetId:"custom",primaryModel,subagentModel,smallFastModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel}}__name(createCustomProviderModelRouting,"createCustomProviderModelRouting");function getProviderModelSlotDefaults(routing){let slotValues=getProviderModeSlotValues(routing);return{opusModel:slotValues.opusModel,sonnetModel:slotValues.sonnetModel,haikuModel:slotValues.haikuModel}}__name(getProviderModelSlotDefaults,"getProviderModelSlotDefaults");function applyProviderProfileToProcess(profile){if(delete process.env.ANTHROPIC_API_KEY,delete process.env.ANTHROPIC_AUTH_TOKEN,delete process.env.ANTHROPIC_BASE_URL,delete process.env.ANTHROPIC_MODEL,delete process.env.ANTHROPIC_SMALL_FAST_MODEL,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES,delete process.env.CLAUDE_CODE_SUBAGENT_MODEL,delete process.env.CLAVUE_API_DIALECT,delete process.env.MYCLAUDE_API_DIALECT,delete process.env.CLAUDE_CODE_API_DIALECT,delete process.env.CLAUDE_CODE_PROVIDER_DIALECT,delete process.env.CLAUDE_CODE_USE_BEDROCK,delete process.env.CLAUDE_CODE_USE_VERTEX,delete process.env.CLAUDE_CODE_USE_FOUNDRY,clear3PModelCapabilityOverrideCache(),clearBetasCaches(),!profile)return;process.env.ANTHROPIC_BASE_URL=normalizeAnthropicBaseUrl(profile.baseUrl),process.env.CLAVUE_API_DIALECT=normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),profile.authType==="auth_token"?process.env.ANTHROPIC_AUTH_TOKEN=profile.credential:process.env.ANTHROPIC_API_KEY=profile.credential;let routing=profile.modelRouting,slotDefaults=getProviderModelSlotDefaults(routing);if(routing.primaryModel){process.env.ANTHROPIC_MODEL=routing.primaryModel,process.env.ANTHROPIC_CUSTOM_MODEL_OPTION=routing.primaryModel;let name=getProviderModelDisplayName(routing.primaryModel,"primary"),description=getProviderModelDescription(routing.primaryModel,"primary");name&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME=name),description&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION=description)}if(routing.smallFastModel&&(process.env.ANTHROPIC_SMALL_FAST_MODEL=routing.smallFastModel),routing.subagentModel&&routing.subagentModel!=="inherit"&&(process.env.CLAUDE_CODE_SUBAGENT_MODEL=routing.subagentModel),slotDefaults.opusModel){process.env.ANTHROPIC_DEFAULT_OPUS_MODEL=slotDefaults.opusModel;let name=getProviderModelDisplayName(slotDefaults.opusModel,"opus"),description=getProviderModelDescription(slotDefaults.opusModel,"opus");name&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.opusModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES=capabilities)}if(slotDefaults.sonnetModel){process.env.ANTHROPIC_DEFAULT_SONNET_MODEL=slotDefaults.sonnetModel;let name=getProviderModelDisplayName(slotDefaults.sonnetModel,"sonnet"),description=getProviderModelDescription(slotDefaults.sonnetModel,"sonnet");name&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.sonnetModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES=capabilities)}if(slotDefaults.haikuModel){process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL=slotDefaults.haikuModel;let name=getProviderModelDisplayName(slotDefaults.haikuModel,"haiku"),description=getProviderModelDescription(slotDefaults.haikuModel,"haiku");name&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.haikuModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES=capabilities)}}__name(applyProviderProfileToProcess,"applyProviderProfileToProcess");function migrateNormalizedProviderBaseUrls(){let globalConfigChanged=!1,settingsChanged=!1,globalConfig2=getGlobalConfig(),secureStorage=getSecureStorage(),existingStorageData=secureStorage.read()??{},currentProviderSecrets=getStoredProviderSecretRecords(),nextProviderSecrets={...currentProviderSecrets},providerSecretsChanged=!1,nextProfiles=(Array.isArray(globalConfig2.clavueProviderProfiles)?globalConfig2.clavueProviderProfiles:[]).map(profile=>{if(!profile||typeof profile!="object")return profile;let nextProfile={...profile},nextBaseUrl=normalizeAnthropicBaseUrl(profile.baseUrl);nextBaseUrl&&nextBaseUrl!==profile.baseUrl&&(globalConfigChanged=!0,nextProfile.baseUrl=nextBaseUrl);let profileId=typeof profile.id=="string"?profile.id.trim():"",legacyCredential=typeof profile.credential=="string"?profile.credential.trim():"";if(profileId&&legacyCredential){let nextSecret={credential:legacyCredential,authType:normalizeAuthType(profile.authType)},currentSecret=currentProviderSecrets[profileId];(!currentSecret||currentSecret.credential!==nextSecret.credential||currentSecret.authType!==nextSecret.authType)&&(nextProviderSecrets[profileId]=nextSecret,providerSecretsChanged=!0),delete nextProfile.credential,globalConfigChanged=!0}return nextProfile});if(providerSecretsChanged&&!secureStorage.update({...existingStorageData,providerProfiles:Object.keys(nextProviderSecrets).length>0?nextProviderSecrets:void 0}).success)return;globalConfigChanged&&saveGlobalConfig(current=>({...current,clavueProviderProfiles:nextProfiles}));let settingsEnv=getSettingsEnv(),normalizedEnvBaseUrl=normalizeAnthropicBaseUrl(settingsEnv.ANTHROPIC_BASE_URL),settingsEnvUpdate={};settingsEnv.ANTHROPIC_BASE_URL&&normalizedEnvBaseUrl&&normalizedEnvBaseUrl!==settingsEnv.ANTHROPIC_BASE_URL&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_BASE_URL=normalizedEnvBaseUrl),settingsEnv.ANTHROPIC_API_KEY&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_API_KEY=void 0),settingsEnv.ANTHROPIC_AUTH_TOKEN&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_AUTH_TOKEN=void 0),settingsChanged&&updateSettingsForSource("userSettings",{env:settingsEnvUpdate});let liveBaseUrl=normalizeAnthropicBaseUrl(process.env.ANTHROPIC_BASE_URL);process.env.ANTHROPIC_BASE_URL&&liveBaseUrl&&liveBaseUrl!==process.env.ANTHROPIC_BASE_URL&&(process.env.ANTHROPIC_BASE_URL=liveBaseUrl)}__name(migrateNormalizedProviderBaseUrls,"migrateNormalizedProviderBaseUrls");function getStoredFusionEndpointSecrets(){let stored=getSecureStorage().read()?.fusionEndpointSecrets;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([endpointId,value])=>{let normalizedId=endpointId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}__name(getStoredFusionEndpointSecrets,"getStoredFusionEndpointSecrets");function normalizeFusionEndpoint(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:"");if(!id||!baseUrl)return null;let apiDialectMode=typeof raw.apiDialectMode=="string"&&(raw.apiDialectMode==="anthropic"||raw.apiDialectMode==="openai_responses")?raw.apiDialectMode:null,upstreamPathOverride=typeof raw.upstreamPathOverride=="string"&&["/v1/messages","/v1/responses","/v1/chat/completions",""].includes(raw.upstreamPathOverride)?raw.upstreamPathOverride:"",modelPrefixes=Array.isArray(raw.modelPrefixes)?raw.modelPrefixes.map(prefix=>typeof prefix=="string"?prefix.trim():"").filter(Boolean):[],routeKeys=Array.isArray(raw.routeKeys)?raw.routeKeys.map(key=>typeof key=="string"?key.trim().toLowerCase():"").filter(Boolean):[],secret=secrets[id],credential=secret?.credential??"";return{id,name:typeof raw.name=="string"?raw.name.trim():id,baseUrl,authType:normalizeAuthType(secret?.authType??(typeof raw.authType=="string"?raw.authType:void 0)),credential,modelPrefixes,...routeKeys.length>0&&{routeKeys},apiDialectMode,upstreamPathOverride}}__name(normalizeFusionEndpoint,"normalizeFusionEndpoint");function normalizeFusionConfig(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"";if(!id)return null;let endpoints=Array.isArray(raw.endpoints)?raw.endpoints.map(endpoint=>normalizeFusionEndpoint(endpoint,secrets)).filter(entry=>entry!==null):[];return{id,name:typeof raw.name=="string"?raw.name.trim():id,endpoints,createdAt:typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt:typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:Date.now()}}__name(normalizeFusionConfig,"normalizeFusionConfig");function getStoredFusionConfigs(){let config2=getProviderConfig(),secrets=getStoredFusionEndpointSecrets();return(Array.isArray(config2.clavueFusionConfigs)?config2.clavueFusionConfigs:[]).map(raw=>normalizeFusionConfig(raw,secrets)).filter(entry=>entry!==null)}__name(getStoredFusionConfigs,"getStoredFusionConfigs");function getStoredActiveFusionConfigId(){let config2=getProviderConfig();return typeof config2.clavueActiveFusionConfigId=="string"?config2.clavueActiveFusionConfigId.trim():""}__name(getStoredActiveFusionConfigId,"getStoredActiveFusionConfigId");function getFusionConfigs(){return getStoredFusionConfigs()}__name(getFusionConfigs,"getFusionConfigs");function getFusionConfigById(configId){return getFusionConfigs().find(config2=>config2.id===configId.trim())??null}__name(getFusionConfigById,"getFusionConfigById");function getActiveFusionConfigId(){return getStoredActiveFusionConfigId()||void 0}__name(getActiveFusionConfigId,"getActiveFusionConfigId");function getActiveFusionConfig(){let activeId=getActiveFusionConfigId();return activeId?getFusionConfigById(activeId):null}__name(getActiveFusionConfig,"getActiveFusionConfig");function resolveFusionEndpointForModel(config2,model,routeKeys=[]){let normalizedModel=model.trim().toLowerCase(),normalizedRouteKeys=routeKeys.map(key=>key.trim().toLowerCase()).filter(Boolean);if(!normalizedModel&&normalizedRouteKeys.length===0)return null;if(normalizedRouteKeys.length>0)for(let routeKey of normalizedRouteKeys){let routeMatch=config2.endpoints.find(endpoint=>(endpoint.routeKeys??[]).some(key=>key.trim().toLowerCase()===routeKey))??null;if(routeMatch)return routeMatch}if(!normalizedModel)return null;let bestMatch=null,bestPrefixLen=-1;for(let endpoint of config2.endpoints){for(let prefix of endpoint.modelPrefixes){let normalizedPrefix=prefix.toLowerCase();normalizedModel.startsWith(normalizedPrefix)&&normalizedPrefix.length>bestPrefixLen&&(bestPrefixLen=normalizedPrefix.length,bestMatch=endpoint)}endpoint.modelPrefixes.length===0&&bestMatch===null&&(bestMatch=endpoint)}return bestMatch}__name(resolveFusionEndpointForModel,"resolveFusionEndpointForModel");function getActiveFusionEndpointForModel(model,routeKeys=[]){try{let config2=getActiveFusionConfig();return config2?resolveFusionEndpointForModel(config2,model,routeKeys):null}catch{return null}}__name(getActiveFusionEndpointForModel,"getActiveFusionEndpointForModel");init_state();init_debug();init_envUtils();init_debug();init_envUtils();init_privacyLevel();init_slowOperations();var ModelCapabilitySchema=lazySchema(()=>external_exports.object({id:external_exports.string(),max_input_tokens:external_exports.number().optional(),max_tokens:external_exports.number().optional()}).strip()),CacheFileSchema=lazySchema(()=>external_exports.object({models:external_exports.array(ModelCapabilitySchema()),timestamp:external_exports.number()}));var loadCache=memoize_default(path9=>{try{let raw=readFileSync7(path9,"utf-8"),parsed=CacheFileSchema().safeParse(safeParseJSON(raw,!1));return parsed.success?parsed.data.models:null}catch{return null}},path9=>path9);function is1mContextDisabled(){return isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_1M_CONTEXT)}__name(is1mContextDisabled,"is1mContextDisabled");function has1mContext(model){return is1mContextDisabled()?!1:/\[1m\]/i.test(model)}__name(has1mContext,"has1mContext");init_envUtils();function modelSupportsISP(model){let supported3P=get3PModelCapabilityOverride(model,"interleaved_thinking");if(supported3P!==void 0)return supported3P;let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")}__name(modelSupportsISP,"modelSupportsISP");function vertexModelSupportsWebSearch(model){let canonical=getCanonicalName(model);return canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}__name(vertexModelSupportsWebSearch,"vertexModelSupportsWebSearch");function modelSupportsContextManagement(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}__name(modelSupportsContextManagement,"modelSupportsContextManagement");function modelSupportsStructuredOutputs(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider!=="firstParty"&&provider!=="foundry"?!1:canonical.includes("claude-sonnet-4-6")||canonical.includes("claude-sonnet-4-5")||canonical.includes("claude-opus-4-1")||canonical.includes("claude-opus-4-5")||canonical.includes("claude-opus-4-6")||canonical.includes("claude-haiku-4-5")}__name(modelSupportsStructuredOutputs,"modelSupportsStructuredOutputs");function shouldIncludeFirstPartyOnlyBetas(){return(getAPIProvider()==="firstParty"||getAPIProvider()==="foundry")&&!isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}__name(shouldIncludeFirstPartyOnlyBetas,"shouldIncludeFirstPartyOnlyBetas");var getAllModelBetas=memoize_default(model=>{let betaHeaders=[],isHaiku=getCanonicalName(model).includes("haiku"),provider=getAPIProvider(),includeFirstPartyOnlyBetas=shouldIncludeFirstPartyOnlyBetas();isHaiku||(betaHeaders.push(CLAUDE_CODE_20250219_BETA_HEADER),process.env.USER_TYPE==="ant"&&process.env.CLAUDE_CODE_ENTRYPOINT==="cli"&&CLI_INTERNAL_BETA_HEADER&&betaHeaders.push(CLI_INTERNAL_BETA_HEADER)),isClaudeAISubscriber()&&betaHeaders.push(OAUTH_BETA_HEADER),has1mContext(model)&&betaHeaders.push(CONTEXT_1M_BETA_HEADER),!isEnvTruthy(process.env.DISABLE_INTERLEAVED_THINKING)&&modelSupportsISP(model)&&betaHeaders.push(INTERLEAVED_THINKING_BETA_HEADER),includeFirstPartyOnlyBetas&&modelSupportsISP(model)&&!getIsNonInteractiveSession()&&getInitialSettings().showThinkingSummaries!==!0&&betaHeaders.push(REDACT_THINKING_BETA_HEADER),SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER&&process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&!isEnvDefinedFalsy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)&&(isEnvTruthy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)||getFeatureValue_CACHED_MAY_BE_STALE("tengu_slate_prism",!1))&&betaHeaders.push(SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER);let contextManagementEnabled=modelSupportsContextManagement(model);shouldIncludeFirstPartyOnlyBetas()&&contextManagementEnabled&&betaHeaders.push(CONTEXT_MANAGEMENT_BETA_HEADER);let strictToolsEnabled=checkStatsigFeatureGate_CACHED_MAY_BE_STALE("tengu_tool_pear"),tokenEfficientToolsEnabled=!strictToolsEnabled&&getFeatureValue_CACHED_MAY_BE_STALE("tengu_amber_json_tools",!1);return includeFirstPartyOnlyBetas&&modelSupportsStructuredOutputs(model)&&strictToolsEnabled&&betaHeaders.push(STRUCTURED_OUTPUTS_BETA_HEADER),process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&tokenEfficientToolsEnabled&&betaHeaders.push(TOKEN_EFFICIENT_TOOLS_BETA_HEADER),provider==="vertex"&&vertexModelSupportsWebSearch(model)&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),provider==="foundry"&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),includeFirstPartyOnlyBetas&&betaHeaders.push(PROMPT_CACHING_SCOPE_BETA_HEADER),process.env.ANTHROPIC_BETAS&&betaHeaders.push(...process.env.ANTHROPIC_BETAS.split(",").map(_=>_.trim()).filter(Boolean)),betaHeaders}),getModelBetas=memoize_default(model=>{let modelBetas=getAllModelBetas(model);return getAPIProvider()==="bedrock"?modelBetas.filter(b=>!BEDROCK_EXTRA_PARAMS_HEADERS.has(b)):modelBetas}),getBedrockExtraBodyParamsBetas=memoize_default(model=>getAllModelBetas(model).filter(b=>BEDROCK_EXTRA_PARAMS_HEADERS.has(b)));function clearBetasCaches(){getAllModelBetas.cache?.clear?.(),getModelBetas.cache?.clear?.(),getBedrockExtraBodyParamsBetas.cache?.clear?.()}__name(clearBetasCaches,"clearBetasCaches");init_debug();init_envUtils();init_errors2();init_execFileNoThrow();var _lockfile;function getLockfile(){return _lockfile||(_lockfile=require_proper_lockfile()),_lockfile}__name(getLockfile,"getLockfile");function lockSync(file2,options){return getLockfile().lockSync(file2,options)}__name(lockSync,"lockSync");init_log3();init_memoize2();init_envUtils();var legacyApiKeyPrefetch=null;function getLegacyApiKeyPrefetchResult(){return legacyApiKeyPrefetch}__name(getLegacyApiKeyPrefetchResult,"getLegacyApiKeyPrefetchResult");function sleep2(ms,signal,opts){return new Promise((resolve9,reject2)=>{if(signal?.aborted){opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9();return}let timer=setTimeout((signal2,onAbort2,resolve10)=>{signal2?.removeEventListener("abort",onAbort2),resolve10()},ms,signal,onAbort,resolve9);function onAbort(){clearTimeout(timer),opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9()}__name(onAbort,"onAbort"),signal?.addEventListener("abort",onAbort,{once:!0}),opts?.unref&&timer.unref()})}__name(sleep2,"sleep");init_slowOperations();var DEFAULT_API_KEY_HELPER_TTL=300*1e3;function isManagedOAuthContext(){return isEnvTruthy(process.env.CLAUDE_CODE_REMOTE)||process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"}__name(isManagedOAuthContext,"isManagedOAuthContext");function isAnthropicAuthEnabled(){if(isBareMode())return!1;if(process.env.ANTHROPIC_UNIX_SOCKET)return!!process.env.CLAUDE_CODE_OAUTH_TOKEN;let is3P=isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)||isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)||isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY),apiKeyHelper=(getSettings_DEPRECATED()||{}).apiKeyHelper,hasExternalAuthToken=process.env.ANTHROPIC_AUTH_TOKEN||apiKeyHelper||process.env.CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR,{source:apiKeySource}=getAnthropicApiKeyWithSource({skipRetrievingKeyFromApiKeyHelper:!0}),hasExternalApiKey=apiKeySource==="ANTHROPIC_API_KEY"||apiKeySource==="apiKeyHelper";return!(is3P||hasExternalAuthToken&&!isManagedOAuthContext()||hasExternalApiKey&&!isManagedOAuthContext())}__name(isAnthropicAuthEnabled,"isAnthropicAuthEnabled");function getAnthropicApiKey(){let{key}=getAnthropicApiKeyWithSource();return key}__name(getAnthropicApiKey,"getAnthropicApiKey");function getSavedProviderApiKey(){let profile=getSavedActiveProviderProfile();if(!profile||profile.authType!=="api_key")return null;let credential=profile.credential.trim();return credential?{key:credential,source:"ANTHROPIC_API_KEY"}:null}__name(getSavedProviderApiKey,"getSavedProviderApiKey");function isPlaceholderAnthropicApiKey(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?normalizedValue==="your-api-key-here"||normalizedValue==="your_api_key_here"||normalizedValue==="your-api-key"||normalizedValue==="your_api_key"||normalizedValue==="api-key-here"||normalizedValue==="api_key_here"||normalizedValue==="placeholder"||/^sk(?:-[a-z0-9_-]+)?[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^sk(?:-[a-z0-9_-]+)?[-_]?(example|placeholder|dummy|fake)$/iu.test(normalizedValue):!1}__name(isPlaceholderAnthropicApiKey,"isPlaceholderAnthropicApiKey");function getAnthropicApiKeyWithSource(opts={}){if(isBareMode()){let bareApiKeyEnv=process.env.ANTHROPIC_API_KEY&&!isPlaceholderAnthropicApiKey(process.env.ANTHROPIC_API_KEY)?process.env.ANTHROPIC_API_KEY:void 0;return bareApiKeyEnv?{key:bareApiKeyEnv,source:"ANTHROPIC_API_KEY"}:getConfiguredApiKeyHelper()?{key:opts.skipRetrievingKeyFromApiKeyHelper?null:getApiKeyFromApiKeyHelperCached(),source:"apiKeyHelper"}:{key:null,source:"none"}}let apiKeyEnv=isRunningOnHomespace()?void 0:process.env.ANTHROPIC_API_KEY,usableApiKeyEnv=apiKeyEnv&&!isPlaceholderAnthropicApiKey(apiKeyEnv)?apiKeyEnv:void 0;if(preferThirdPartyAuthentication()&&usableApiKeyEnv)return{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"};if(isEnvTruthy(process.env.CI)||process.env.NODE_ENV==="test"){let apiKeyFromFd2=getApiKeyFromFileDescriptor();if(apiKeyFromFd2)return{key:apiKeyFromFd2,source:"ANTHROPIC_API_KEY"};if(!usableApiKeyEnv&&!process.env.CLAUDE_CODE_OAUTH_TOKEN&&!process.env.CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR)throw new Error("ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN env var is required");return usableApiKeyEnv?{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"}:{key:null,source:"none"}}if(!process.env.ANTHROPIC_UNIX_SOCKET){let providerApiKey=getSavedProviderApiKey();if(providerApiKey)return providerApiKey}if(usableApiKeyEnv&&getGlobalConfig().customApiKeyResponses?.approved?.includes(normalizeApiKeyForConfig(usableApiKeyEnv)))return{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"};let apiKeyFromFd=getApiKeyFromFileDescriptor();if(apiKeyFromFd)return{key:apiKeyFromFd,source:"ANTHROPIC_API_KEY"};if(getConfiguredApiKeyHelper())return opts.skipRetrievingKeyFromApiKeyHelper?{key:null,source:"apiKeyHelper"}:{key:getApiKeyFromApiKeyHelperCached(),source:"apiKeyHelper"};let apiKeyFromConfigOrMacOSKeychain=getApiKeyFromConfigOrMacOSKeychain();return apiKeyFromConfigOrMacOSKeychain||{key:null,source:"none"}}__name(getAnthropicApiKeyWithSource,"getAnthropicApiKeyWithSource");function getConfiguredApiKeyHelper(){return isBareMode()?getSettingsForSource("flagSettings")?.apiKeyHelper:(getSettings_DEPRECATED()||{}).apiKeyHelper}__name(getConfiguredApiKeyHelper,"getConfiguredApiKeyHelper");function getConfiguredAwsAuthRefresh(){return(getSettings_DEPRECATED()||{}).awsAuthRefresh}__name(getConfiguredAwsAuthRefresh,"getConfiguredAwsAuthRefresh");function isAwsAuthRefreshFromProjectSettings(){let awsAuthRefresh=getConfiguredAwsAuthRefresh();if(!awsAuthRefresh)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.awsAuthRefresh===awsAuthRefresh||localSettings?.awsAuthRefresh===awsAuthRefresh}__name(isAwsAuthRefreshFromProjectSettings,"isAwsAuthRefreshFromProjectSettings");function getConfiguredAwsCredentialExport(){return(getSettings_DEPRECATED()||{}).awsCredentialExport}__name(getConfiguredAwsCredentialExport,"getConfiguredAwsCredentialExport");function isAwsCredentialExportFromProjectSettings(){let awsCredentialExport=getConfiguredAwsCredentialExport();if(!awsCredentialExport)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.awsCredentialExport===awsCredentialExport||localSettings?.awsCredentialExport===awsCredentialExport}__name(isAwsCredentialExportFromProjectSettings,"isAwsCredentialExportFromProjectSettings");var _apiKeyHelperCache=null;function getApiKeyFromApiKeyHelperCached(){return _apiKeyHelperCache?.value??null}__name(getApiKeyFromApiKeyHelperCached,"getApiKeyFromApiKeyHelperCached");var DEFAULT_AWS_STS_TTL=3600*1e3;async function runAwsAuthRefresh(){let awsAuthRefresh=getConfiguredAwsAuthRefresh();if(!awsAuthRefresh)return!1;if(isAwsAuthRefreshFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("awsAuthRefresh invoked before trust check",error40),logEvent("tengu_awsAuthRefresh_missing_trust",{}),!1}try{return logForDebugging("Fetching AWS caller identity for AWS auth refresh command"),await checkStsCallerIdentity(),logForDebugging("Fetched AWS caller identity, skipping AWS auth refresh command"),!1}catch{return refreshAwsAuth(awsAuthRefresh)}}__name(runAwsAuthRefresh,"runAwsAuthRefresh");var AWS_AUTH_REFRESH_TIMEOUT_MS=180*1e3;function refreshAwsAuth(awsAuthRefresh){logForDebugging("Running AWS auth refresh command");let authStatusManager=AwsAuthStatusManager.getInstance();return authStatusManager.startAuthentication(),new Promise(resolve9=>{let refreshProc=exec(awsAuthRefresh,{timeout:AWS_AUTH_REFRESH_TIMEOUT_MS});refreshProc.stdout.on("data",data=>{let output=data.toString().trim();output&&(authStatusManager.addOutput(output),logForDebugging(output,{level:"debug"}))}),refreshProc.stderr.on("data",data=>{let error40=data.toString().trim();error40&&(authStatusManager.setError(error40),logForDebugging(error40,{level:"error"}))}),refreshProc.on("close",(code,signal)=>{if(code===0)logForDebugging("AWS auth refresh completed successfully"),authStatusManager.endAuthentication(!0),resolve9(!0);else{let message=signal==="SIGTERM"?source_default.red("AWS auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):source_default.red("Error running awsAuthRefresh (in settings or ~/.clavue/.clavue.json):");console.error(message),authStatusManager.endAuthentication(!1),resolve9(!1)}})})}__name(refreshAwsAuth,"refreshAwsAuth");async function getAwsCredsFromCredentialExport(){let awsCredentialExport=getConfiguredAwsCredentialExport();if(!awsCredentialExport)return null;if(isAwsCredentialExportFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("awsCredentialExport invoked before trust check",error40),logEvent("tengu_awsCredentialExport_missing_trust",{}),null}try{return logForDebugging("Fetching AWS caller identity for credential export command"),await checkStsCallerIdentity(),logForDebugging("Fetched AWS caller identity, skipping AWS credential export command"),null}catch{try{logForDebugging("Running AWS credential export command");let result2=await execa(awsCredentialExport,{shell:!0,reject:!1});if(result2.exitCode!==0||!result2.stdout)throw new Error("awsCredentialExport did not return a valid value");let awsOutput=jsonParse(result2.stdout.trim());if(!isValidAwsStsOutput(awsOutput))throw new Error("awsCredentialExport did not return valid AWS STS output structure");return logForDebugging("AWS credentials retrieved from awsCredentialExport"),{accessKeyId:awsOutput.Credentials.AccessKeyId,secretAccessKey:awsOutput.Credentials.SecretAccessKey,sessionToken:awsOutput.Credentials.SessionToken}}catch(e2){let message=source_default.red("Error getting AWS credentials from awsCredentialExport (in settings or ~/.clavue/.clavue.json):");return e2 instanceof Error?console.error(message,e2.message):console.error(message,e2),null}}}__name(getAwsCredsFromCredentialExport,"getAwsCredsFromCredentialExport");var refreshAndGetAwsCredentials=memoizeWithTTLAsync(async()=>{let refreshed2=await runAwsAuthRefresh(),credentials=await getAwsCredsFromCredentialExport();return(refreshed2||credentials)&&await clearAwsIniCache(),credentials},DEFAULT_AWS_STS_TTL);function getConfiguredGcpAuthRefresh(){return(getSettings_DEPRECATED()||{}).gcpAuthRefresh}__name(getConfiguredGcpAuthRefresh,"getConfiguredGcpAuthRefresh");function isGcpAuthRefreshFromProjectSettings(){let gcpAuthRefresh=getConfiguredGcpAuthRefresh();if(!gcpAuthRefresh)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.gcpAuthRefresh===gcpAuthRefresh||localSettings?.gcpAuthRefresh===gcpAuthRefresh}__name(isGcpAuthRefreshFromProjectSettings,"isGcpAuthRefreshFromProjectSettings");var GCP_CREDENTIALS_CHECK_TIMEOUT_MS=5e3;async function checkGcpCredentialsValid(){try{let{GoogleAuth}=await Promise.resolve().then(()=>__toESM(require_src5())),auth=new GoogleAuth({scopes:["https://www.googleapis.com/auth/cloud-platform"]}),probe=(async()=>{await(await auth.getClient()).getAccessToken()})(),timeout=sleep2(GCP_CREDENTIALS_CHECK_TIMEOUT_MS).then(()=>{throw new GcpCredentialsTimeoutError("GCP credentials check timed out")});return await Promise.race([probe,timeout]),!0}catch{return!1}}__name(checkGcpCredentialsValid,"checkGcpCredentialsValid");var DEFAULT_GCP_CREDENTIAL_TTL=3600*1e3;async function runGcpAuthRefresh(){let gcpAuthRefresh=getConfiguredGcpAuthRefresh();if(!gcpAuthRefresh)return!1;if(isGcpAuthRefreshFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("gcpAuthRefresh invoked before trust check",error40),logEvent("tengu_gcpAuthRefresh_missing_trust",{}),!1}try{if(logForDebugging("Checking GCP credentials validity for auth refresh"),await checkGcpCredentialsValid())return logForDebugging("GCP credentials are valid, skipping auth refresh command"),!1}catch{}return refreshGcpAuth(gcpAuthRefresh)}__name(runGcpAuthRefresh,"runGcpAuthRefresh");var GCP_AUTH_REFRESH_TIMEOUT_MS=180*1e3;function refreshGcpAuth(gcpAuthRefresh){logForDebugging("Running GCP auth refresh command");let authStatusManager=AwsAuthStatusManager.getInstance();return authStatusManager.startAuthentication(),new Promise(resolve9=>{let refreshProc=exec(gcpAuthRefresh,{timeout:GCP_AUTH_REFRESH_TIMEOUT_MS});refreshProc.stdout.on("data",data=>{let output=data.toString().trim();output&&(authStatusManager.addOutput(output),logForDebugging(output,{level:"debug"}))}),refreshProc.stderr.on("data",data=>{let error40=data.toString().trim();error40&&(authStatusManager.setError(error40),logForDebugging(error40,{level:"error"}))}),refreshProc.on("close",(code,signal)=>{if(code===0)logForDebugging("GCP auth refresh completed successfully"),authStatusManager.endAuthentication(!0),resolve9(!0);else{let message=signal==="SIGTERM"?source_default.red("GCP auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):source_default.red("Error running gcpAuthRefresh (in settings or ~/.clavue/.clavue.json):");console.error(message),authStatusManager.endAuthentication(!1),resolve9(!1)}})})}__name(refreshGcpAuth,"refreshGcpAuth");var refreshGcpCredentialsIfNeeded=memoizeWithTTLAsync(async()=>await runGcpAuthRefresh(),DEFAULT_GCP_CREDENTIAL_TTL);var getApiKeyFromConfigOrMacOSKeychain=memoize_default(()=>{if(isBareMode())return null;if(process.platform==="darwin"&&shouldUseMacOSKeychain()){let prefetch=getLegacyApiKeyPrefetchResult();if(prefetch){if(prefetch.stdout)return{key:prefetch.stdout,source:"/login managed key"}}else{let storageServiceName=getMacOsKeychainStorageServiceName();try{let result2=execSyncWithDefaults_DEPRECATED(`security find-generic-password -a $USER -w -s "${storageServiceName}"`);if(result2)return{key:result2,source:"/login managed key"}}catch(e2){logError2(e2)}}}let config2=getGlobalConfig();return config2.primaryApiKey?{key:config2.primaryApiKey,source:"/login managed key"}:null});var getClaudeAIOAuthTokens=memoize_default(()=>{if(isBareMode())return null;if(process.env.CLAUDE_CODE_OAUTH_TOKEN)return{accessToken:process.env.CLAUDE_CODE_OAUTH_TOKEN,refreshToken:null,expiresAt:null,scopes:["user:inference"],subscriptionType:null,rateLimitTier:null};let oauthTokenFromFd=getOAuthTokenFromFileDescriptor();if(oauthTokenFromFd)return{accessToken:oauthTokenFromFd,refreshToken:null,expiresAt:null,scopes:["user:inference"],subscriptionType:null,rateLimitTier:null};try{let oauthData=getSecureStorage().read()?.\u0063laudeAiOauth;return oauthData?.accessToken?oauthData:null}catch(error40){return logError2(error40),null}});function isClaudeAISubscriber(){return isAnthropicAuthEnabled()?shouldUseClaudeAIAuth(getClaudeAIOAuthTokens()?.scopes):!1}__name(isClaudeAISubscriber,"isClaudeAISubscriber");function getOauthAccountInfo(){return isAnthropicAuthEnabled()?getGlobalConfig().oauthAccount:void 0}__name(getOauthAccountInfo,"getOauthAccountInfo");function getSubscriptionType(){if(shouldUseMockSubscription())return getMockSubscriptionType();if(!isAnthropicAuthEnabled())return null;let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?oauthTokens.subscriptionType??null:null}__name(getSubscriptionType,"getSubscriptionType");function getRateLimitTier(){if(!isAnthropicAuthEnabled())return null;let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?oauthTokens.rateLimitTier??null:null}__name(getRateLimitTier,"getRateLimitTier");var DEFAULT_OTEL_HEADERS_DEBOUNCE_MS=1740*1e3;var GcpCredentialsTimeoutError=class extends Error{static{__name(this,"GcpCredentialsTimeoutError")}};import{AsyncLocalStorage as AsyncLocalStorage2}from"async_hooks";var workloadStorage=new AsyncLocalStorage2;function getAuthHeaders(){if(isClaudeAISubscriber()){let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?.accessToken?{headers:{Authorization:`Bearer ${oauthTokens.accessToken}`,"anthropic-beta":OAUTH_BETA_HEADER}}:{headers:{},error:"No OAuth token available"}}let apiKey=getAnthropicApiKey();return apiKey?{headers:{"x-api-key":apiKey}}:{headers:{},error:"No API key available"}}__name(getAuthHeaders,"getAuthHeaders");init_log3();init_signal();init_slowOperations();init_execa();init_memoize();init_state();init_cwd2();init_envUtils();var cachedEmail=null;var getCoreUserData=memoize_default(includeAnalyticsMetadata=>{let deviceId=getOrCreateUserID(),config2=getGlobalConfig(),subscriptionType,rateLimitTier,firstTokenTime;if(includeAnalyticsMetadata&&(subscriptionType=getSubscriptionType()??void 0,rateLimitTier=getRateLimitTier()??void 0,subscriptionType&&config2.\u0063laudeCodeFirstTokenDate)){let configFirstTokenTime=new Date(config2.\u0063laudeCodeFirstTokenDate).getTime();isNaN(configFirstTokenTime)||(firstTokenTime=configFirstTokenTime)}let oauthAccount=getOauthAccountInfo(),organizationUuid=oauthAccount?.organizationUuid,accountUuid=oauthAccount?.accountUuid;return{deviceId,sessionId:getSessionId(),email:getEmail(),appVersion:"2.1.88",platform:getHostPlatformForAnalytics(),organizationUuid,accountUuid,userType:process.env.USER_TYPE,subscriptionType,rateLimitTier,firstTokenTime,...isEnvTruthy(process.env.GITHUB_ACTIONS)&&{githubActionsMetadata:{actor:process.env.GITHUB_ACTOR,actorId:process.env.GITHUB_ACTOR_ID,repository:process.env.GITHUB_REPOSITORY,repositoryId:process.env.GITHUB_REPOSITORY_ID,repositoryOwner:process.env.GITHUB_REPOSITORY_OWNER,repositoryOwnerId:process.env.GITHUB_REPOSITORY_OWNER_ID}}}});function getUserForGrowthBook(){return getCoreUserData(!0)}__name(getUserForGrowthBook,"getUserForGrowthBook");function getEmail(){if(cachedEmail!==null)return cachedEmail;let oauthAccount=getOauthAccountInfo();if(oauthAccount?.emailAddress)return oauthAccount.emailAddress;if(process.env.USER_TYPE==="ant"&&process.env.COO_CREATOR)return`${process.env.COO_CREATOR}@anthropic.com`}__name(getEmail,"getEmail");var getGitEmail=memoize_default(async()=>{let result2=await execa("git config --get user.email",{shell:!0,reject:!1,cwd:getCwd()});return result2.exitCode===0&&result2.stdout?result2.stdout.trim():void 0});import{resourceFromAttributes}from"@opentelemetry/resources";import{BatchLogRecordProcessor,LoggerProvider}from"@opentelemetry/sdk-logs";import{ATTR_SERVICE_NAME,ATTR_SERVICE_VERSION}from"@opentelemetry/semantic-conventions";import{randomUUID as randomUUID4}from"crypto";init_debug();init_log3();init_slowOperations();init_envUtils();init_privacyLevel();function isAnalyticsDisabled(){return process.env.NODE_ENV==="test"||isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)||isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)||isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)||isTelemetryDisabled()?!0:!isEnvTruthy(process.env.CLAVUE_TELEMETRY)}__name(isAnalyticsDisabled,"isAnalyticsDisabled");import{ExportResultCode}from"@opentelemetry/core";import{randomUUID as randomUUID3}from"crypto";init_state();init_debug();init_envUtils();init_errors2();init_log3();init_slowOperations();init_memoize();init_memoize();import{stat as stat3}from"fs/promises";init_envUtils();init_execFileNoThrow();init_execFileNoThrow();async function getAncestorCommandsAsync(pid,maxDepth=10){if(process.platform==="win32"){let script2=`
|
|
224
|
+
`);let{connect:connect3,buffered}=await proxyResponsePromise;if(req.emit("proxyConnect",connect3),this.emit("proxyConnect",connect3,req),connect3.statusCode===200)return req.once("socket",resume),opts.secureEndpoint?(debug2("Upgrading socket connection to TLS"),tls.connect({...omit3(setServernameFromNonIpHost(opts),"host","path","port"),socket})):socket;socket.destroy();let fakeSocket=new net2.Socket({writable:!1});return fakeSocket.readable=!0,req.once("socket",s2=>{debug2("Replaying proxy buffer for failed request"),assert2(s2.listenerCount("data")>0),s2.push(buffered),s2.push(null)}),fakeSocket}};HttpsProxyAgent.protocols=["http","https"];function resume(socket){socket.resume()}__name(resume,"resume");function omit3(obj,...keys2){let ret={},key;for(key in obj)keys2.includes(key)||(ret[key]=obj[key]);return ret}__name(omit3,"omit");init_memoize();init_memoize();init_debug();init_envUtils();init_fsOperations();var getCACertificates=memoize_default(()=>{let useSystemCA=hasNodeOption("--use-system-ca")||hasNodeOption("--use-openssl-ca"),extraCertsPath=process.env.NODE_EXTRA_CA_CERTS;if(logForDebugging(`CA certs: useSystemCA=${useSystemCA}, extraCertsPath=${extraCertsPath}`),!useSystemCA&&!extraCertsPath)return;let tls2=__require("tls"),certs=[];if(useSystemCA){let getCACerts=tls2.getCACertificates,systemCAs=getCACerts?.("system");if(systemCAs&&systemCAs.length>0)certs.push(...systemCAs),logForDebugging(`CA certs: Loaded ${certs.length} system CA certificates (--use-system-ca)`);else if(!getCACerts&&!extraCertsPath){logForDebugging("CA certs: --use-system-ca set but system CA API unavailable, deferring to runtime");return}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base (--use-system-ca fallback)`)}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base`);if(extraCertsPath)try{let extraCert=getFsImplementation().readFileSync(extraCertsPath,{encoding:"utf8"});certs.push(extraCert),logForDebugging(`CA certs: Appended extra certificates from NODE_EXTRA_CA_CERTS (${extraCertsPath})`)}catch(error40){logForDebugging(`CA certs: Failed to read NODE_EXTRA_CA_CERTS file (${extraCertsPath}): ${error40}`,{level:"error"})}return certs.length>0?certs:void 0});init_debug();init_envUtils();init_memoize();import{Agent as HttpsAgent2}from"https";init_debug();init_fsOperations();var getMTLSConfig=memoize_default(()=>{let config2={};if(process.env.CLAUDE_CODE_CLIENT_CERT)try{config2.cert=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_CERT,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client certificate from CLAUDE_CODE_CLIENT_CERT")}catch(error40){logForDebugging(`mTLS: Failed to load client certificate: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY)try{config2.key=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_KEY,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client key from CLAUDE_CODE_CLIENT_KEY")}catch(error40){logForDebugging(`mTLS: Failed to load client key: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE&&(config2.passphrase=process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE,logForDebugging("mTLS: Using client key passphrase")),Object.keys(config2).length!==0)return config2}),getMTLSAgent=memoize_default(()=>{let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates();if(!mtlsConfig&&!caCerts)return;let agentOptions={...mtlsConfig,...caCerts&&{ca:caCerts},keepAlive:!0};return logForDebugging("mTLS: Creating HTTPS agent with custom certificates"),new HttpsAgent2(agentOptions)});function getAddressFamily(options){switch(options.family){case 0:case 4:case 6:return options.family;case"IPv6":return 6;case"IPv4":case void 0:return 4;default:throw new Error(`Unsupported address family: ${options.family}`)}}__name(getAddressFamily,"getAddressFamily");function getProxyUrl(env5=process.env){return env5.https_proxy||env5.HTTPS_PROXY||env5.http_proxy||env5.HTTP_PROXY}__name(getProxyUrl,"getProxyUrl");function createHttpsProxyAgent(proxyUrl,extra={}){let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),agentOptions={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};return isEnvTruthy(process.env.CLAUDE_CODE_PROXY_RESOLVES_HOSTS)&&(agentOptions.lookup=(hostname2,options,callback)=>{callback(null,hostname2,getAddressFamily(options))}),new HttpsProxyAgent(proxyUrl,{...agentOptions,...extra})}__name(createHttpsProxyAgent,"createHttpsProxyAgent");var getProxyAgent=memoize_default(uri=>{let undiciMod=__require("undici"),mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),proxyOptions={httpProxy:uri,httpsProxy:uri,noProxy:process.env.NO_PROXY||process.env.no_proxy};if(mtlsConfig||caCerts){let tlsOpts={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};proxyOptions.connect=tlsOpts,proxyOptions.requestTls=tlsOpts}return new undiciMod.EnvHttpProxyAgent(proxyOptions)});async function getAWSClientProxyConfig(){let proxyUrl=getProxyUrl();if(!proxyUrl)return{};let[{NodeHttpHandler},{defaultProvider}]=await Promise.all([import("@smithy/node-http-handler"),import("@aws-sdk/credential-provider-node")]),agent=createHttpsProxyAgent(proxyUrl),requestHandler=new NodeHttpHandler({httpAgent:agent,httpsAgent:agent});return{requestHandler,credentials:defaultProvider({clientConfig:{requestHandler}})}}__name(getAWSClientProxyConfig,"getAWSClientProxyConfig");var getBedrockInferenceProfiles=memoize_default(async function(){let[client2,{ListInferenceProfilesCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),allProfiles=[],nextToken;try{do{let command=new ListInferenceProfilesCommand({...nextToken&&{nextToken},typeEquals:"SYSTEM_DEFINED"}),response=await client2.send(command);response.inferenceProfileSummaries&&allProfiles.push(...response.inferenceProfileSummaries),nextToken=response.nextToken}while(nextToken);return allProfiles.filter(profile=>profile.inferenceProfileId?.includes("anthropic")).map(profile=>profile.inferenceProfileId).filter(Boolean)}catch(error40){throw logError2(error40),error40}});function findFirstMatch(profiles,substring){return profiles.find(p=>p.includes(substring))??null}__name(findFirstMatch,"findFirstMatch");async function createBedrockClient(){let{BedrockClient}=await import("@aws-sdk/client-bedrock"),region=getAWSRegion(),skipAuth=isEnvTruthy(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH),clientConfig={region,...process.env.ANTHROPIC_BEDROCK_BASE_URL&&{endpoint:process.env.ANTHROPIC_BEDROCK_BASE_URL},...await getAWSClientProxyConfig(),...skipAuth&&{requestHandler:new(await import("@smithy/node-http-handler")).NodeHttpHandler,httpAuthSchemes:[{schemeId:"smithy.api#noAuth",identityProvider:__name(()=>async()=>({}),"identityProvider"),signer:new(await import("@smithy/core")).NoAuthSigner}],httpAuthSchemeProvider:__name(()=>[{schemeId:"smithy.api#noAuth"}],"httpAuthSchemeProvider")}};if(!skipAuth&&!process.env.AWS_BEARER_TOKEN_BEDROCK){let cachedCredentials=await refreshAndGetAwsCredentials();cachedCredentials&&(clientConfig.credentials={accessKeyId:cachedCredentials.accessKeyId,secretAccessKey:cachedCredentials.secretAccessKey,sessionToken:cachedCredentials.sessionToken})}return new BedrockClient(clientConfig)}__name(createBedrockClient,"createBedrockClient");var getInferenceProfileBackingModel=memoize_default(async function(profileId){try{let[client2,{GetInferenceProfileCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),command=new GetInferenceProfileCommand({inferenceProfileIdentifier:profileId}),response=await client2.send(command);if(!response.models||response.models.length===0)return null;let primaryModel=response.models[0];if(!primaryModel?.modelArn)return null;let lastSlashIndex=primaryModel.modelArn.lastIndexOf("/");return lastSlashIndex>=0?primaryModel.modelArn.substring(lastSlashIndex+1):primaryModel.modelArn}catch(error40){return logError2(error40),null}});var CLAUDE_3_7_SONNET_CONFIG={firstParty:"claude-3-7-sonnet-20250219",bedrock:"us.anthropic.\u0063laude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",foundry:"claude-3-7-sonnet"},CLAUDE_3_5_V2_SONNET_CONFIG={firstParty:"claude-3-5-sonnet-20241022",bedrock:"anthropic.\u0063laude-3-5-sonnet-20241022-v2:0",vertex:"claude-3-5-sonnet-v2@20241022",foundry:"claude-3-5-sonnet"},CLAUDE_3_5_HAIKU_CONFIG={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.\u0063laude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022",foundry:"claude-3-5-haiku"},CLAUDE_HAIKU_4_5_CONFIG={firstParty:"claude-haiku-4-5-20251001",bedrock:"us.anthropic.\u0063laude-haiku-4-5-20251001-v1:0",vertex:"claude-haiku-4-5@20251001",foundry:"claude-haiku-4-5"},CLAUDE_SONNET_4_CONFIG={firstParty:"claude-sonnet-4-20250514",bedrock:"us.anthropic.\u0063laude-sonnet-4-20250514-v1:0",vertex:"claude-sonnet-4@20250514",foundry:"claude-sonnet-4"},CLAUDE_SONNET_4_5_CONFIG={firstParty:"claude-sonnet-4-5-20250929",bedrock:"us.anthropic.\u0063laude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",foundry:"claude-sonnet-4-5"},CLAUDE_OPUS_4_CONFIG={firstParty:"claude-opus-4-20250514",bedrock:"us.anthropic.\u0063laude-opus-4-20250514-v1:0",vertex:"claude-opus-4@20250514",foundry:"claude-opus-4"},CLAUDE_OPUS_4_1_CONFIG={firstParty:"claude-opus-4-1-20250805",bedrock:"us.anthropic.\u0063laude-opus-4-1-20250805-v1:0",vertex:"claude-opus-4-1@20250805",foundry:"claude-opus-4-1"},CLAUDE_OPUS_4_5_CONFIG={firstParty:"claude-opus-4-5-20251101",bedrock:"us.anthropic.\u0063laude-opus-4-5-20251101-v1:0",vertex:"claude-opus-4-5@20251101",foundry:"claude-opus-4-5"},CLAUDE_OPUS_4_6_CONFIG={firstParty:"claude-opus-4-6",bedrock:"us.anthropic.\u0063laude-opus-4-6-v1",vertex:"claude-opus-4-6",foundry:"claude-opus-4-6"},CLAUDE_OPUS_4_7_CONFIG={firstParty:"claude-opus-4-7",bedrock:"us.anthropic.\u0063laude-opus-4-7-v1",vertex:"claude-opus-4-7",foundry:"claude-opus-4-7"},CLAUDE_OPUS_4_8_CONFIG={firstParty:"claude-opus-4-8",bedrock:"us.anthropic.\u0063laude-opus-4-8-v1",vertex:"claude-opus-4-8",foundry:"claude-opus-4-8"},CLAUDE_SONNET_4_6_CONFIG={firstParty:"claude-sonnet-4-6",bedrock:"us.anthropic.\u0063laude-sonnet-4-6",vertex:"claude-sonnet-4-6",foundry:"claude-sonnet-4-6"},ALL_MODEL_CONFIGS={haiku35:CLAUDE_3_5_HAIKU_CONFIG,haiku45:CLAUDE_HAIKU_4_5_CONFIG,sonnet35:CLAUDE_3_5_V2_SONNET_CONFIG,sonnet37:CLAUDE_3_7_SONNET_CONFIG,sonnet40:CLAUDE_SONNET_4_CONFIG,sonnet45:CLAUDE_SONNET_4_5_CONFIG,sonnet46:CLAUDE_SONNET_4_6_CONFIG,opus40:CLAUDE_OPUS_4_CONFIG,opus41:CLAUDE_OPUS_4_1_CONFIG,opus45:CLAUDE_OPUS_4_5_CONFIG,opus46:CLAUDE_OPUS_4_6_CONFIG,opus47:CLAUDE_OPUS_4_7_CONFIG,opus48:CLAUDE_OPUS_4_8_CONFIG},CANONICAL_MODEL_IDS=Object.values(ALL_MODEL_CONFIGS).map(c3=>c3.firstParty),CANONICAL_ID_TO_KEY=Object.fromEntries(Object.entries(ALL_MODEL_CONFIGS).map(([key,cfg])=>[cfg.firstParty,key]));init_envUtils();function getAPIProvider(){return isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)?"bedrock":isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)?"vertex":isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)?"foundry":"firstParty"}__name(getAPIProvider,"getAPIProvider");function isFirstPartyAnthropicBaseUrl(){let baseUrl=process.env.ANTHROPIC_BASE_URL;if(!baseUrl)return!0;try{let host=new URL(baseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}__name(isFirstPartyAnthropicBaseUrl,"isFirstPartyAnthropicBaseUrl");var MODEL_KEYS=Object.keys(ALL_MODEL_CONFIGS);function getBuiltinModelStrings(provider){let out={};for(let key of MODEL_KEYS)out[key]=ALL_MODEL_CONFIGS[key][provider];return out}__name(getBuiltinModelStrings,"getBuiltinModelStrings");async function getBedrockModelStrings(){let fallback=getBuiltinModelStrings("bedrock"),profiles;try{profiles=await getBedrockInferenceProfiles()}catch(error40){return logError2(error40),fallback}if(!profiles?.length)return fallback;let out={};for(let key of MODEL_KEYS){let needle=ALL_MODEL_CONFIGS[key].firstParty;out[key]=findFirstMatch(profiles,needle)||fallback[key]}return out}__name(getBedrockModelStrings,"getBedrockModelStrings");function resolveOverriddenModel(modelId){let overrides;try{overrides=getInitialSettings().modelOverrides}catch{return modelId}if(!overrides)return modelId;for(let[canonicalId,override]of Object.entries(overrides))if(override===modelId)return canonicalId;return modelId}__name(resolveOverriddenModel,"resolveOverriddenModel");var updateBedrockModelStrings=sequential(async()=>{if(getModelStrings()===null)try{let ms=await getBedrockModelStrings();setModelStrings(ms)}catch(error40){logError2(error40)}});init_state();init_envUtils();var mockEnabled=!1;var mockSubscriptionType=null;var DEFAULT_MOCK_SUBSCRIPTION="max";function getMockSubscriptionType(){return!mockEnabled||process.env.USER_TYPE!=="ant"?null:mockSubscriptionType||DEFAULT_MOCK_SUBSCRIPTION}__name(getMockSubscriptionType,"getMockSubscriptionType");function shouldUseMockSubscription(){return mockEnabled&&mockSubscriptionType!==null&&process.env.USER_TYPE==="ant"}__name(shouldUseMockSubscription,"shouldUseMockSubscription");init_debug();init_log3();function shouldUseClaudeAIAuth(scopes){return!!scopes?.includes(CLAUDE_AI_INFERENCE_SCOPE)}__name(shouldUseClaudeAIAuth,"shouldUseClaudeAIAuth");init_state();init_debug();init_envUtils();init_errors2();init_fsOperations();import{mkdirSync as mkdirSync2,writeFileSync as writeFileSync2}from"fs";var CCR_TOKEN_DIR="/home/claude/.\u0063laude/remote",CCR_OAUTH_TOKEN_PATH=`${CCR_TOKEN_DIR}/.oauth_token`,CCR_API_KEY_PATH=`${CCR_TOKEN_DIR}/.api_key`,CCR_SESSION_INGRESS_TOKEN_PATH=`${CCR_TOKEN_DIR}/.session_ingress_token`;function maybePersistTokenForSubprocesses(path9,token,tokenName){if(isEnvTruthy(process.env.CLAUDE_CODE_REMOTE))try{mkdirSync2(CCR_TOKEN_DIR,{recursive:!0,mode:448}),writeFileSync2(path9,token,{encoding:"utf8",mode:384}),logForDebugging(`Persisted ${tokenName} to ${path9} for subprocess access`)}catch(error40){logForDebugging(`Failed to persist ${tokenName} to disk (non-fatal): ${errorMessage(error40)}`,{level:"error"})}}__name(maybePersistTokenForSubprocesses,"maybePersistTokenForSubprocesses");function readTokenFromWellKnownFile(path9,tokenName){try{let token=getFsImplementation().readFileSync(path9,{encoding:"utf8"}).trim();return token?(logForDebugging(`Read ${tokenName} from well-known file ${path9}`),token):null}catch(error40){return isENOENT(error40)||logForDebugging(`Failed to read ${tokenName} from ${path9}: ${errorMessage(error40)}`,{level:"debug"}),null}}__name(readTokenFromWellKnownFile,"readTokenFromWellKnownFile");function getCredentialFromFd({envVar,wellKnownPath,label,getCached,setCached}){let cached2=getCached();if(cached2!==void 0)return cached2;let fdEnv=process.env[envVar];if(!fdEnv){let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}let fd=parseInt(fdEnv,10);if(Number.isNaN(fd))return logForDebugging(`${envVar} must be a valid file descriptor number, got: ${fdEnv}`,{level:"error"}),setCached(null),null;try{let fsOps=getFsImplementation(),fdPath=process.platform==="darwin"||process.platform==="freebsd"?`/dev/fd/${fd}`:`/proc/self/fd/${fd}`,token=fsOps.readFileSync(fdPath,{encoding:"utf8"}).trim();return token?(logForDebugging(`Successfully read ${label} from file descriptor ${fd}`),setCached(token),maybePersistTokenForSubprocesses(wellKnownPath,token,label),token):(logForDebugging(`File descriptor contained empty ${label}`,{level:"error"}),setCached(null),null)}catch(error40){logForDebugging(`Failed to read ${label} from file descriptor ${fd}: ${errorMessage(error40)}`,{level:"error"});let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}}__name(getCredentialFromFd,"getCredentialFromFd");function getOAuthTokenFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",wellKnownPath:CCR_OAUTH_TOKEN_PATH,label:"OAuth token",getCached:getOauthTokenFromFd,setCached:setOauthTokenFromFd})}__name(getOAuthTokenFromFileDescriptor,"getOAuthTokenFromFileDescriptor");function getApiKeyFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR",wellKnownPath:CCR_API_KEY_PATH,label:"API key",getCached:getApiKeyFromFd,setCached:setApiKeyFromFd})}__name(getApiKeyFromFileDescriptor,"getApiKeyFromFileDescriptor");init_envUtils();import{createHash}from"crypto";import{userInfo}from"os";init_envUtils();var CREDENTIALS_SERVICE_SUFFIX="-credentials";function getMacOsKeychainStorageServiceName(serviceSuffix=""){let configDir=getClaudeConfigHomeDir(),dirHash=!process.env.CLAVUE_CONFIG_DIR?"":`-${createHash("sha256").update(configDir).digest("hex").substring(0,8)}`;return`Claude Code${getOauthConfig().OAUTH_FILE_SUFFIX}${serviceSuffix}${dirHash}`}__name(getMacOsKeychainStorageServiceName,"getMacOsKeychainStorageServiceName");function getUsername(){try{return process.env.USER||userInfo().username}catch{return"claude-code-user"}}__name(getUsername,"getUsername");var KEYCHAIN_CACHE_TTL_MS=3e4,keychainCacheState={cache:{data:null,cachedAt:0},generation:0,readInFlight:null};function clearKeychainCache(){keychainCacheState.cache={data:null,cachedAt:0},keychainCacheState.generation++,keychainCacheState.readInFlight=null}__name(clearKeychainCache,"clearKeychainCache");function normalizeApiKeyForConfig(apiKey){return apiKey.slice(-20)}__name(normalizeApiKeyForConfig,"normalizeApiKeyForConfig");init_debug();function isValidAwsStsOutput(obj){if(!obj||typeof obj!="object")return!1;let output=obj;if(!output.Credentials||typeof output.Credentials!="object")return!1;let credentials=output.Credentials;return typeof credentials.AccessKeyId=="string"&&typeof credentials.SecretAccessKey=="string"&&typeof credentials.SessionToken=="string"&&credentials.AccessKeyId.length>0&&credentials.SecretAccessKey.length>0&&credentials.SessionToken.length>0}__name(isValidAwsStsOutput,"isValidAwsStsOutput");async function checkStsCallerIdentity(){let{STSClient,GetCallerIdentityCommand}=await import("@aws-sdk/client-sts");await new STSClient().send(new GetCallerIdentityCommand({}))}__name(checkStsCallerIdentity,"checkStsCallerIdentity");async function clearAwsIniCache(){try{logForDebugging("Clearing AWS credential provider cache");let{fromIni}=await import("@aws-sdk/credential-providers");await fromIni({ignoreCache:!0})(),logForDebugging("AWS credential provider cache refreshed")}catch{logForDebugging("Failed to clear AWS credential cache (this is expected if no credentials are configured)")}}__name(clearAwsIniCache,"clearAwsIniCache");init_signal();var AwsAuthStatusManager=class _AwsAuthStatusManager{static{__name(this,"AwsAuthStatusManager")}static instance=null;status={isAuthenticating:!1,output:[]};changed=createSignal();static getInstance(){return _AwsAuthStatusManager.instance||(_AwsAuthStatusManager.instance=new _AwsAuthStatusManager),_AwsAuthStatusManager.instance}getStatus(){return{...this.status,output:[...this.status.output]}}startAuthentication(){this.status={isAuthenticating:!0,output:[]},this.changed.emit(this.getStatus())}addOutput(line){this.status.output.push(line),this.changed.emit(this.getStatus())}setError(error40){this.status.error=error40,this.changed.emit(this.getStatus())}endAuthentication(success2){success2?this.status={isAuthenticating:!1,output:[]}:this.status.isAuthenticating=!1,this.changed.emit(this.getStatus())}subscribe=this.changed.subscribe;static reset(){_AwsAuthStatusManager.instance&&(_AwsAuthStatusManager.instance.changed.clear(),_AwsAuthStatusManager.instance=null)}};init_memoize();init_state();var CLAUDE_CODE_20250219_BETA_HEADER="claude-code-20250219",INTERLEAVED_THINKING_BETA_HEADER="interleaved-thinking-2025-05-14",CONTEXT_1M_BETA_HEADER="context-1m-2025-08-07",CONTEXT_MANAGEMENT_BETA_HEADER="context-management-2025-06-27",STRUCTURED_OUTPUTS_BETA_HEADER="structured-outputs-2025-12-15",WEB_SEARCH_BETA_HEADER="web-search-2025-03-05";var TOOL_SEARCH_BETA_HEADER_3P="tool-search-tool-2025-10-19";var PROMPT_CACHING_SCOPE_BETA_HEADER="prompt-caching-scope-2026-01-05";var REDACT_THINKING_BETA_HEADER="redact-thinking-2026-02-12",TOKEN_EFFICIENT_TOOLS_BETA_HEADER="token-efficient-tools-2026-03-28",SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER="";var CLI_INTERNAL_BETA_HEADER=process.env.USER_TYPE==="ant"?"cli-internal-2026-02-09":"";var BEDROCK_EXTRA_PARAMS_HEADERS=new Set([INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P]);init_envUtils();init_state();init_envUtils();function parseVersion(raw){if(!raw)return null;let parts=raw.split("-").map(part=>Number.parseInt(part,10));return parts.some(part=>Number.isNaN(part))?null:(parts[1]!==void 0&&parts[1]>=2e7&&(parts[1]=0),{major:parts[0]??0,minor:parts[1]??0})}__name(parseVersion,"parseVersion");function parseClaudeModelIdentity(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return null;let modern=/claude-(opus|sonnet|haiku)-([0-9]+(?:-[0-9]+)?)/.exec(normalized);if(modern?.[1]&&modern[2]){let version2=parseVersion(modern[2]);return version2?{family:modern[1],version:version2}:null}let legacy=/claude-([0-9]+(?:-[0-9]+)?)-(opus|sonnet|haiku)/.exec(normalized);if(legacy?.[1]&&legacy[2]){let version2=parseVersion(legacy[1]);return version2?{family:legacy[2],version:version2}:null}return null}__name(parseClaudeModelIdentity,"parseClaudeModelIdentity");function getClaudeCanonicalModelName(model){let identity4=parseClaudeModelIdentity(model);if(!identity4||identity4.version.major<4)return null;let version2=identity4.version.minor===0?String(identity4.version.major):`${identity4.version.major}-${identity4.version.minor}`;return`claude-${identity4.family}-${version2}`}__name(getClaudeCanonicalModelName,"getClaudeCanonicalModelName");init_state();init_state();init_debug();init_envUtils();init_privacyLevel();init_signal();var cooldownTriggered=createSignal(),cooldownExpired=createSignal(),onCooldownTriggered=cooldownTriggered.subscribe,onCooldownExpired=cooldownExpired.subscribe;var overageRejection=createSignal(),onFastModeOverageRejection=overageRejection.subscribe;var orgFastModeChange=createSignal(),onOrgFastModeChanged=orgFastModeChange.subscribe;var COST_TIER_3_15={inputTokens:3,outputTokens:15,promptCacheWriteTokens:3.75,promptCacheReadTokens:.3,webSearchRequests:.01},COST_TIER_15_75={inputTokens:15,outputTokens:75,promptCacheWriteTokens:18.75,promptCacheReadTokens:1.5,webSearchRequests:.01},COST_TIER_5_25={inputTokens:5,outputTokens:25,promptCacheWriteTokens:6.25,promptCacheReadTokens:.5,webSearchRequests:.01};var COST_HAIKU_35={inputTokens:.8,outputTokens:4,promptCacheWriteTokens:1,promptCacheReadTokens:.08,webSearchRequests:.01},COST_HAIKU_45={inputTokens:1,outputTokens:5,promptCacheWriteTokens:1.25,promptCacheReadTokens:.1,webSearchRequests:.01};var MODEL_COSTS={[firstPartyNameToCanonical(CLAUDE_3_5_HAIKU_CONFIG.firstParty)]:COST_HAIKU_35,[firstPartyNameToCanonical(CLAUDE_HAIKU_4_5_CONFIG.firstParty)]:COST_HAIKU_45,[firstPartyNameToCanonical(CLAUDE_3_5_V2_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_3_7_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_5_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_6_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_OPUS_4_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_1_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_5_CONFIG.firstParty)]:COST_TIER_5_25,[firstPartyNameToCanonical(CLAUDE_OPUS_4_6_CONFIG.firstParty)]:COST_TIER_5_25};function firstPartyNameToCanonical(name){name=name.toLowerCase();let claudeCanonical=getClaudeCanonicalModelName(name);if(claudeCanonical)return claudeCanonical;if(name.includes("claude-3-7-sonnet"))return"claude-3-7-sonnet";if(name.includes("claude-3-5-sonnet"))return"claude-3-5-sonnet";if(name.includes("claude-3-5-haiku"))return"claude-3-5-haiku";if(name.includes("claude-3-opus"))return"claude-3-opus";if(name.includes("claude-3-sonnet"))return"claude-3-sonnet";if(name.includes("claude-3-haiku"))return"claude-3-haiku";let match=name.match(/(claude-(\d+-\d+-)?\w+)/);return match&&match[1]?match[1]:name}__name(firstPartyNameToCanonical,"firstPartyNameToCanonical");function getCanonicalName(fullModelName){return firstPartyNameToCanonical(resolveOverriddenModel(fullModelName))}__name(getCanonicalName,"getCanonicalName");import{readFileSync as readFileSync7}from"fs";init_memoize();init_sdk();import{createHash as createHash2,randomUUID as randomUUID2}from"crypto";import{existsSync as existsSync2,readFileSync as readFileSync6,writeFileSync as writeFileSync3}from"fs";import{homedir as homedir5}from"os";import{join as join16,resolve as resolve7}from"path";var APP_NAME="Clavue";var APP_WORDMARK=`/${APP_NAME.toLowerCase()}`;init_memoize();var TIERS=[{modelEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES"}],get3PModelCapabilityOverride=memoize_default((model,capability)=>{if(getAPIProvider()==="firstParty")return;let m2=model.toLowerCase();for(let tier of TIERS){let pinned=process.env[tier.modelEnvVar],capabilities=process.env[tier.capabilitiesEnvVar];if(!(!pinned||capabilities===void 0)&&m2===pinned.toLowerCase())return capabilities.toLowerCase().split(",").map(s2=>s2.trim()).includes(capability)}},(model,capability)=>`${model.toLowerCase()}:${capability}`);function clear3PModelCapabilityOverrideCache(){get3PModelCapabilityOverride.cache?.clear?.()}__name(clear3PModelCapabilityOverrideCache,"clear3PModelCapabilityOverrideCache");function normalizeValue2(value){return String(value??"").trim()}__name(normalizeValue2,"normalizeValue");function completeProviderRoutingSlotsFromPrimary(rawRouting,baseRouting={}){let presetId=normalizeValue2(rawRouting.presetId||baseRouting.presetId),primaryModel=normalizeValue2(rawRouting.primaryModel)||normalizeValue2(baseRouting.primaryModel),slotFallback=(presetId==="provider_default"||presetId==="custom")&&normalizeValue2(rawRouting.primaryModel).length>0?primaryModel:"",subagentModel=normalizeValue2(rawRouting.subagentModel)||normalizeValue2(baseRouting.subagentModel)||slotFallback,generalModel=normalizeValue2(rawRouting.generalModel)||normalizeValue2(baseRouting.generalModel)||subagentModel,planModel=normalizeValue2(rawRouting.planModel)||normalizeValue2(baseRouting.planModel)||primaryModel,exploreModel=normalizeValue2(rawRouting.exploreModel)||normalizeValue2(baseRouting.exploreModel)||generalModel,teamModel=normalizeValue2(rawRouting.teamModel)||normalizeValue2(baseRouting.teamModel)||generalModel,guideModel=normalizeValue2(rawRouting.guideModel)||normalizeValue2(baseRouting.guideModel)||planModel;return{primaryModel,subagentModel,smallFastModel:normalizeValue2(rawRouting.smallFastModel)||normalizeValue2(baseRouting.smallFastModel)||slotFallback,planModel,exploreModel,generalModel,teamModel,guideModel,reviewModel:normalizeValue2(rawRouting.reviewModel)||normalizeValue2(baseRouting.reviewModel)||generalModel}}__name(completeProviderRoutingSlotsFromPrimary,"completeProviderRoutingSlotsFromPrimary");var PROVIDER_MODE_SLOT_ORDER=["primary","haiku","sonnet","opus"];function inferProviderModelFamily(model){let normalizedModel=normalizeValue2(model).toLowerCase();return normalizedModel?normalizedModel.includes("claude")?"claude":normalizedModel.startsWith("gpt-")||normalizedModel.startsWith("o1")||normalizedModel.startsWith("o3")||normalizedModel.startsWith("o4")||normalizedModel.includes("codex")?"openai":normalizedModel.startsWith("gemini-")?"gemini":normalizedModel.startsWith("grok-")?"grok":normalizedModel.startsWith("deepseek-")?"deepseek":normalizedModel.startsWith("qwen")?"qwen":normalizedModel.startsWith("kimi-")?"kimi":normalizedModel.startsWith("swe-")?"swe":normalizedModel.startsWith("glm-")?"glm":normalizedModel.startsWith("lingsi-")?"lingsi":"unknown":"unknown"}__name(inferProviderModelFamily,"inferProviderModelFamily");function getProviderModeSlotValues(routing){let primaryModel=normalizeValue2(routing?.primaryModel),executionModel=normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel)||primaryModel,fastModel=normalizeValue2(routing?.smallFastModel)||executionModel||primaryModel,planModel=normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)||primaryModel;return{primaryModel,haikuModel:fastModel||executionModel||primaryModel,sonnetModel:executionModel||primaryModel,opusModel:planModel||primaryModel}}__name(getProviderModeSlotValues,"getProviderModeSlotValues");function getProviderModeRawSlotValues(routing){return{primary:normalizeValue2(routing?.primaryModel),haiku:normalizeValue2(routing?.smallFastModel),sonnet:normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel),opus:normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)}}__name(getProviderModeRawSlotValues,"getProviderModeRawSlotValues");function getConfiguredFamilies(routing){let slotValues=getProviderModeSlotValues(routing);return new Set(Object.values(slotValues).map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}__name(getConfiguredFamilies,"getConfiguredFamilies");var PROVIDER_MODEL_MODE_DEFINITIONS={anthropic_native:{id:"anthropic_native",label:"Anthropic-native",description:"Claude-family mode. Keep routing on Anthropic-compatible Claude models and validate native tool calling on that family.",providerPresetIds:["anthropic","openrouter","glm","minimax","custom"],routingPresetIds:["claude_code_heritage"],defaultRoutingPresetId:"claude_code_heritage",slotDefinitions:{primary:{label:"Primary model",description:"Main session workhorse model for Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},haiku:{label:"Fast model",description:"Fast-response helper slot for Anthropic-native mode.",placeholder:"claude-haiku-4-5",defaultModel:"claude-haiku-4-5"},sonnet:{label:"Workhorse model",description:"Execution slot for day-to-day coding and subagent work in Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},opus:{label:"Planner model",description:"Planning and guidance slot for Anthropic-native mode.",placeholder:"claude-opus-4-6",defaultModel:"claude-opus-4-6"}}},openai_native:{id:"openai_native",label:"OpenAI-native",description:"GPT/Codex-family mode. Keep routing on GPT/Codex models and validate the Responses compatibility route on that family.",providerPresetIds:["kimi","openrouter","custom"],routingPresetIds:["gpt_5_5_max","gpt_5_4_codex","gpt_5_1_stable","gpt_5_3_codex"],defaultRoutingPresetId:"gpt_5_5_max",slotDefinitions:{primary:{label:"Primary model",description:"Main session workhorse model for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]},haiku:{label:"Fast model",description:"Fast-response helper slot for OpenAI-native mode.",placeholder:"gpt-5.3-codex",defaultModel:"gpt-5.3-codex",recommendedModels:["gpt-5.3-codex","gpt-5.4","gpt-5.1"]},sonnet:{label:"Workhorse model",description:"Execution slot for day-to-day coding and subagent work in OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.3-codex","gpt-5.4","gpt-5.1"]},opus:{label:"Planner model",description:"Planning and guidance slot for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]}}},hybrid_compatible:{id:"hybrid_compatible",label:"Hybrid-compatible",description:"Mixed-family mode. Supports all major model families via custom/OpenAI-compatible gateways (gpt-5.*, claude-*, gemini-*, grok-*, kimi-*, swe-*, glm-*, lingsi-* etc.). Model names are matched by prefix for maximum flexibility with user-managed endpoints.",providerPresetIds:["custom","openrouter"],routingPresetIds:["custom","gpt55_deepseek_combo","deepseek_gpt_combo","grok_current"],defaultRoutingPresetId:"custom",slotDefinitions:{primary:{label:"Primary model",description:"Main session slot. For custom providers: accepts any model string (gpt-5.*, claude-*, gemini-*, grok-* etc.). Prefix matching is used for routing.",placeholder:"gemini-3-5-flash-high",defaultModel:"gpt-5.5",requireExplicitSelection:!1},haiku:{label:"Fast model",description:"Fast helper slot. For custom providers: any fast model via prefix (e.g. gpt-5.3-*, gemini-3-5-flash, claude-haiku-*)",placeholder:"gemini-3-5-flash",defaultModel:"gpt-5.3-codex",requireExplicitSelection:!1},sonnet:{label:"Workhorse model",description:"Execution slot. For custom providers: any strong model via prefix matching (gpt-5.5-*, claude-sonnet-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-sonnet-4-6",requireExplicitSelection:!1},opus:{label:"Planner model",description:"Planning slot. For custom providers: any top-tier model via prefix (gpt-5.5-*, claude-opus-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-opus-4-6",requireExplicitSelection:!1}}}},VALID_PROVIDER_MODEL_MODES=new Set(Object.keys(PROVIDER_MODEL_MODE_DEFINITIONS));function localize(language,english,chinese){return language==="zh"?chinese:english}__name(localize,"localize");function isProviderModelModeId(value){return VALID_PROVIDER_MODEL_MODES.has(value)}__name(isProviderModelModeId,"isProviderModelModeId");function getProviderModelModeDefinition(modeId){return PROVIDER_MODEL_MODE_DEFINITIONS[modeId]}__name(getProviderModelModeDefinition,"getProviderModelModeDefinition");function getDefaultProviderModelModeForProviderPreset(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"anthropic_native":providerId==="kimi"?"openai_native":"hybrid_compatible"}__name(getDefaultProviderModelModeForProviderPreset,"getDefaultProviderModelModeForProviderPreset");function getProviderModelModeForProfile(profile){let explicitMode=normalizeValue2(profile?.modelMode);if(isProviderModelModeId(explicitMode))return explicitMode;let presetId=normalizeValue2(profile?.modelRouting?.presetId);if(presetId==="claude_code_heritage")return"anthropic_native";if(presetId==="gpt_5_5_max"||presetId==="gpt_5_4_codex"||presetId==="gpt_5_1_stable"||presetId==="gpt_5_3_codex")return"openai_native";let configuredFamilies=getConfiguredFamilies(profile?.modelRouting);return configuredFamilies.size===1?configuredFamilies.has("claude")?"anthropic_native":configuredFamilies.has("openai")?"openai_native":"hybrid_compatible":configuredFamilies.size>1?"hybrid_compatible":getDefaultProviderModelModeForProviderPreset(profile?.providerId)}__name(getProviderModelModeForProfile,"getProviderModelModeForProfile");function createDefaultProviderModeSlotValues(modeId){let definition=getProviderModelModeDefinition(modeId);return{primaryModel:definition.slotDefinitions.primary.defaultModel,haikuModel:definition.slotDefinitions.haiku.defaultModel,sonnetModel:definition.slotDefinitions.sonnet.defaultModel,opusModel:definition.slotDefinitions.opus.defaultModel}}__name(createDefaultProviderModeSlotValues,"createDefaultProviderModeSlotValues");function validateProviderModeRouting(modeId,routing,{language="en",requireExplicitHybridSelections=!1}={}){let definition=getProviderModelModeDefinition(modeId),rawSlotValues=getProviderModeRawSlotValues(routing),issues=[];for(let slot of PROVIDER_MODE_SLOT_ORDER){let model=rawSlotValues[slot],slotDefinition=definition.slotDefinitions[slot],normalizedModel=normalizeValue2(model),allowedModels=slotDefinition.allowedModels??[];if(!normalizedModel){requireExplicitHybridSelections&&slotDefinition.requireExplicitSelection===!0&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required for ${definition.label} mode.`,`${definition.label} \u6A21\u5F0F\u4E0B\u5FC5\u987B\u8BBE\u7F6E${slotDefinition.label}\u3002`)});continue}allowedModels.length>0&&!allowedModels.includes(normalizedModel)&&requireExplicitHybridSelections&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required to be explicitly set for this hybrid selection flow.`,`${slotDefinition.label} \u5728\u6B64\u7279\u6B8A\u6DF7\u5408\u9009\u62E9\u6D41\u7A0B\u4E2D\u9700\u8981\u660E\u786E\u8BBE\u7F6E\u3002`)})}return issues}__name(validateProviderModeRouting,"validateProviderModeRouting");var CURRENT_PROVIDER_PROFILE_ID="__current_provider__";var PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES=new Set(["your_api_key","your-api-key","your_api_key_here","your-api-key-here","your_key","your-key","your_key_here","your-key-here","your api key","your api key here","your key","your key here","your_token","your-token","your_token_here","your-token-here","your auth token","your auth token here","api_key","api-key","api_key_here","api-key-here","auth_token","auth-token","auth_token_here","auth-token-here","token_here","token-here","placeholder","<api_key>","<api-key>","<your_api_key>","<your-api-key>","<token>","<your_token>","<your-token>"]);function isPlaceholderProviderCredential(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES.has(normalizedValue)?!0:/^your[-_\s]?[a-z0-9_-]*(api[-_\s]?key|auth[-_\s]?token|key|token)[a-z0-9_-]*$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?(test|example|placeholder|dummy|fake)$/iu.test(normalizedValue)||/^(test|example|placeholder|dummy|fake)[-_]?(api[-_]?key|auth[-_]?token|token)$/iu.test(normalizedValue):!1}__name(isPlaceholderProviderCredential,"isPlaceholderProviderCredential");var OPENAI_RESPONSES_PATH="/v1/responses",OPENAI_CHAT_COMPLETIONS_PATH="/v1/chat/completions",ANTHROPIC_MESSAGES_PATH="/v1/messages";function getRequestUrl(input){try{return input instanceof Request?new URL(input.url):new URL(String(input))}catch{return null}}__name(getRequestUrl,"getRequestUrl");function isOpenAIChatCompletionsModel(model){let m2=String(model??"").trim().toLowerCase();return!!(m2.startsWith("gpt-image-")||m2.startsWith("gemini-")||m2.startsWith("grok-")||m2.startsWith("deepseek-"))}__name(isOpenAIChatCompletionsModel,"isOpenAIChatCompletionsModel");function getOpenAICompatiblePath(model){return isOpenAIChatCompletionsModel(model)?OPENAI_CHAT_COMPLETIONS_PATH:OPENAI_RESPONSES_PATH}__name(getOpenAICompatiblePath,"getOpenAICompatiblePath");var ENTER_PLAN_MODE_TOOL_NAME="EnterPlanMode";var SEND_MESSAGE_TOOL_NAME="SendMessage";var TASK_CREATE_TOOL_NAME="TaskCreate";var TASK_GET_TOOL_NAME="TaskGet";var TASK_LIST_TOOL_NAME="TaskList";var TASK_UPDATE_TOOL_NAME="TaskUpdate";var TEAM_CREATE_TOOL_NAME="TeamCreate";var TEAM_DELETE_TOOL_NAME="TeamDelete";var TODO_WRITE_TOOL_NAME="TodoWrite";var DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES=["EnterPlanMode","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskUpdate","TeamCreate","TeamDelete","TodoWrite"];var ANTHROPIC_MESSAGES_DEFAULT_MODEL_PREFIXES=["glm-","kimi-","lingsi-","swe-"];function defaultsToAnthropicMessagesModel(model){let m2=String(model??"").trim().toLowerCase();return m2?m2.startsWith("qwen")||ANTHROPIC_MESSAGES_DEFAULT_MODEL_PREFIXES.some(prefix=>m2.startsWith(prefix)):!1}__name(defaultsToAnthropicMessagesModel,"defaultsToAnthropicMessagesModel");function isGatewayGpt5PreferMessagesModel(model){let normalized=String(model??"").trim().toLowerCase();return normalized.startsWith("gpt-5")?!normalized.includes("codex"):!1}__name(isGatewayGpt5PreferMessagesModel,"isGatewayGpt5PreferMessagesModel");function getModelFamily(model){if(!model)return"other";let m2=model.toLowerCase().trim();return m2.includes("claude")?"claude":m2.includes("gemini")?"gemini":m2.includes("grok")?"grok":m2.includes("gpt")||m2.includes("codex")||m2.includes("o1")||m2.includes("o3")||m2.includes("o4")?"openai":"other"}__name(getModelFamily,"getModelFamily");function getFamilyShaping(model,runtimeProviderKind){let family=getModelFamily(model);return family==="claude"?"claude":family==="openai"?"gpt_codex":runtimeProviderKind!=="first_party"?"provider_native":"generic"}__name(getFamilyShaping,"getFamilyShaping");function getReasoningDiscipline(qualityTier,familyShaping,model){return qualityTier==="blocked"||qualityTier==="chat_only"||qualityTier==="degraded"?{planDiscipline:"required",verificationDiscipline:"required",recoveryMode:"strict"}:familyShaping==="gpt_codex"||modelFamilyIsDeepSeek(model)?{planDiscipline:"optional",verificationDiscipline:"required",recoveryMode:"normal"}:{planDiscipline:"optional",verificationDiscipline:"recommended",recoveryMode:"normal"}}__name(getReasoningDiscipline,"getReasoningDiscipline");function resolveCodingRoutePolicyCore(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.apiDialectMode==="openai_responses"||input.apiDialectMode==="anthropic"?input.apiDialectMode:"anthropic",runtimeProviderKind=input.runtimeProviderKind??"gateway",coreNativeWorkflowToolNames=input.coreNativeWorkflowToolNames??DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,familyShaping=getFamilyShaping(normalizedModel,runtimeProviderKind),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),warnings=[],repairHints=[],qualityReason=[],supportsResponses=input.supportsResponsesAdapter===!0,hasAnthropicToolUse=snapshot?.anthropicToolUse===!0,hasFullResponses=supportsResponses&&snapshot?.responsesArrayInputReachable===!0&&snapshot?.responsesToolChoiceAuto===!0&&snapshot?.responsesToolChoiceRequired===!0&&snapshot?.responsesToolChoiceNamed===!0,hasReachableChat=snapshot?.anthropicMessagesReachable===!0||snapshot?.responsesArrayInputReachable===!0,isFirstPartyClaudeAssumedNative=runtimeProviderKind==="first_party"&&familyShaping==="claude"&&!snapshot,isAnthropicDialectClaudeAssumed=dialectMode==="anthropic"&&familyShaping==="claude"&&!snapshot,isAnthropicMessagesRouteAssumed=dialectMode==="anthropic"&&runtimeProviderKind!=="first_party"&&!snapshot,defaultsToMessages=runtimeProviderKind!=="first_party"&&defaultsToAnthropicMessagesModel(normalizedModel),family=getModelFamily(normalizedModel),gatewayGpt5PrefersMessages=dialectMode==="openai_responses"&&runtimeProviderKind==="gateway"&&family==="openai"&&isGatewayGpt5PreferMessagesModel(normalizedModel),usesNativeOpenAICompatibleChat=runtimeProviderKind!=="first_party"&&dialectMode==="openai_responses"&&(family==="gemini"||family==="grok"||modelFamilyIsDeepSeek(normalizedModel)),transport="anthropic_messages",transportReason="Anthropic messages is the default API dialect unless openai_responses is explicitly selected.";defaultsToMessages?(transport="anthropic_messages",transportReason="This provider-native model family defaults to /v1/messages instead of the OpenAI Responses adapter. DeepSeek also uses /v1/messages when the active provider profile is Anthropic/Claude-compatible; OpenAI-compatible DeepSeek profiles use /v1/chat/completions.",dialectMode==="openai_responses"&&warnings.push("The active model family is configured to stay on /v1/messages by default; use a GPT/Codex or Gemini/Grok route for the OpenAI-compatible adapter.")):dialectMode==="anthropic"?(transport="anthropic_messages",transportReason="Explicit anthropic dialect override keeps the runtime on /v1/messages.",hasFullResponses&&!hasAnthropicToolUse&&warnings.push("Responses compatibility is verified, but the active dialect override is forcing /v1/messages.")):usesNativeOpenAICompatibleChat?(transport="openai_chat_completions",transportReason=modelFamilyIsDeepSeek(normalizedModel)?"Explicit OpenAI-compatible dialect routes DeepSeek through native /v1/chat/completions with provider prefix-cache usage telemetry and without OpenAI Responses stateful cache.":"Explicit OpenAI-compatible dialect routes this provider family through native /v1/chat/completions without OpenAI Responses stateful cache."):gatewayGpt5PrefersMessages&&snapshot?.responsesArrayInputReachable===!1&&snapshot?.anthropicMessagesReachable===!0?(transport="anthropic_messages",transportReason="Gateway GPT-5.x falls back to /v1/messages because validation showed /v1/responses is unavailable."):dialectMode==="openai_responses"&&(transport="openai_responses",transportReason="Explicit OpenAI-compatible dialect routes this GPT/Codex family through native /v1/responses.",supportsResponses||warnings.push("The active model family is not known to behave well on the Responses adapter."));let qualityTier="compatible";hasAnthropicToolUse?runtimeProviderKind==="first_party"&&familyShaping==="claude"?(qualityTier="native",qualityReason.push("Anthropic-native tool_use is available on a first-party Claude route.")):(qualityTier="compatible",qualityReason.push("Anthropic-native tool_use is available on the active provider route.")):isFirstPartyClaudeAssumedNative?(qualityTier="native",qualityReason.push("First-party Anthropic Claude routes are trusted as native on first launch.")):hasFullResponses?(qualityTier="compatible",qualityReason.push("Responses function calling is available on the active provider route.")):isAnthropicDialectClaudeAssumed?(qualityTier="compatible",qualityReason.push("Anthropic / Claude-compatible routes are trusted for full Clavue coding workflows.")):isAnthropicMessagesRouteAssumed?(qualityTier="compatible",qualityReason.push("Anthropic messages routes are trusted for full Clavue coding workflows.")):transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat?(qualityTier="compatible",qualityReason.push(modelFamilyIsDeepSeek(normalizedModel)?"DeepSeek is routed through the active OpenAI-compatible chat/completions profile with full Clavue tool support.":"This provider family is routed through native OpenAI-compatible chat/completions with full Clavue tool support.")):gatewayGpt5PrefersMessages&&transport==="openai_responses"?(qualityTier="compatible",qualityReason.push("OpenAI GPT-5.x routes use native /v1/responses for the OpenAI-compatible dialect.")):gatewayGpt5PrefersMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Gateway GPT-5.x fell back to /v1/messages because /v1/responses was unavailable.")):hasReachableChat?(qualityTier="compatible",qualityReason.push("The active provider route is reachable and trusted for full Clavue coding workflows.")):(qualityTier="compatible",qualityReason.push("Configured provider routes are trusted for full Clavue coding workflows. Permission mode controls execution approval, not provider validation snapshots."));let baseWorkflowMode=qualityTier==="native"?"full_native":"compat_native",operatorTrust=runtimeProviderKind==="first_party"?"explicitly_trusted":"configured",baseCapabilityStatus=hasAnthropicToolUse||hasFullResponses||hasReachableChat?"verified":isFirstPartyClaudeAssumedNative||isAnthropicDialectClaudeAssumed||isAnthropicMessagesRouteAssumed||transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat||gatewayGpt5PrefersMessages&&transport==="openai_responses"?"assumed":"unknown",baseWorkflowToolPolicy=baseCapabilityStatus==="verified"||baseWorkflowMode==="full_native"?"full":"cautious",providerHealth=input.providerHealth??null,healthTier=providerHealth?.healthTier??"healthy",capabilityStatus=providerHealth?.capabilityStatus??(healthTier==="broken"?"failed":healthTier==="degraded"?"stale":baseCapabilityStatus),workflowToolPolicy=providerHealth?.workflowToolPolicy??(healthTier==="broken"?"blocked":healthTier==="degraded"?"direct_only":healthTier==="warning"&&baseWorkflowToolPolicy==="full"?"cautious":baseWorkflowToolPolicy),workflowMode=workflowToolPolicy==="blocked"?"chat_only":workflowToolPolicy==="direct_only"?"strict_compat":baseWorkflowMode,forcedToolNames=workflowMode==="compat_native"&&(workflowToolPolicy==="full"||workflowToolPolicy==="cautious")?[...coreNativeWorkflowToolNames]:[],blockedToolNames=workflowToolPolicy==="direct_only"||workflowToolPolicy==="blocked"?[...coreNativeWorkflowToolNames]:[],certificationRef=providerHealth?.certificationRef;for(let warning of providerHealth?.warnings??[])warnings.push(warning);for(let repairHint of providerHealth?.repairHints??[])repairHints.push(repairHint);return{routeId,model:normalizedModel,transport,transportReason,qualityTier,qualityReason,workflowMode,forcedToolNames,blockedToolNames,operatorTrust,capabilityStatus,workflowToolPolicy,healthTier,certificationRef,familyShaping,warnings,repairHints,...getReasoningDiscipline(healthTier==="broken"?"blocked":healthTier==="degraded"?"degraded":qualityTier,familyShaping,normalizedModel)}}__name(resolveCodingRoutePolicyCore,"resolveCodingRoutePolicyCore");function modelFamilyIsDeepSeek(model){let normalized=model.trim().toLowerCase();return normalized.startsWith("deepseek-")||normalized.includes("deepseek")}__name(modelFamilyIsDeepSeek,"modelFamilyIsDeepSeek");var OPENAI_RESPONSES_MODEL_PATTERNS=[/^gpt-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^gpt-image-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^gemini-/,/^grok-/,/^deepseek-/,/^codex-/,/codex/];function normalizeDialectMode(value){let normalized=String(value??"").trim().toLowerCase();return normalized==="openai"||normalized==="responses"||normalized==="openai_responses"?"openai_responses":"anthropic"}__name(normalizeDialectMode,"normalizeDialectMode");function getConfiguredApiDialectMode(){return normalizeDialectMode(process.env.CLAVUE_API_DIALECT??process.env.MYCLAUDE_API_DIALECT??process.env.CLAUDE_CODE_API_DIALECT??process.env.CLAUDE_CODE_PROVIDER_DIALECT)}__name(getConfiguredApiDialectMode,"getConfiguredApiDialectMode");function supportsOpenAIResponsesAdapterModel(model){let normalizedModel=String(model??"").trim().toLowerCase();return normalizedModel?OPENAI_RESPONSES_MODEL_PATTERNS.some(pattern=>pattern.test(normalizedModel)):!1}__name(supportsOpenAIResponsesAdapterModel,"supportsOpenAIResponsesAdapterModel");var PLAN_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),VERIFICATION_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),RECOVERY_MODE_VALUES=new Set(["strict","normal","off"]);function normalize3(raw,allowed){let value=String(raw??"").trim().toLowerCase();if(value)return allowed.has(value)?value:void 0}__name(normalize3,"normalize");function getWorkflowDisciplinePreferencesFromEnv(env5=process.env){return{planDiscipline:normalize3(env5.CLAVUE_PLAN_DISCIPLINE??env5.MYCLAUDE_PLAN_DISCIPLINE,PLAN_DISCIPLINE_VALUES),verificationDiscipline:normalize3(env5.CLAVUE_VERIFICATION_DISCIPLINE??env5.MYCLAUDE_VERIFICATION_DISCIPLINE,VERIFICATION_DISCIPLINE_VALUES),recoveryMode:normalize3(env5.CLAVUE_RECOVERY_MODE??env5.MYCLAUDE_RECOVERY_MODE,RECOVERY_MODE_VALUES)}}__name(getWorkflowDisciplinePreferencesFromEnv,"getWorkflowDisciplinePreferencesFromEnv");function applyWorkflowDisciplinePreferences(routeDerived,preferences){return{planDiscipline:preferences.planDiscipline??routeDerived.planDiscipline,verificationDiscipline:preferences.verificationDiscipline??routeDerived.verificationDiscipline,recoveryMode:preferences.recoveryMode??routeDerived.recoveryMode}}__name(applyWorkflowDisciplinePreferences,"applyWorkflowDisciplinePreferences");var DEFAULT_PROVIDER_HEALTH_WINDOW_MS=900*1e3,TOOL_FAILURE_CLASSES=new Set(["tool_schema","tool_call","tool_result"]);function createProviderHealthLedger(events=[]){return{events:[...events].sort((a2,b)=>a2.atMs-b.atMs)}}__name(createProviderHealthLedger,"createProviderHealthLedger");function getProviderHealthSnapshot(ledger,options){let nowMs=options.nowMs??Date.now(),windowMs=options.windowMs??DEFAULT_PROVIDER_HEALTH_WINDOW_MS,windowStartMs=nowMs-windowMs,routeEvents=ledger.events.filter(event=>event.routeId===options.routeId&&event.atMs>=windowStartMs).sort((a2,b)=>a2.atMs-b.atMs);if(routeEvents.length===0)return null;let lastRecoveryIndex=findLastIndex2(routeEvents,event=>event.type==="provider_recovered"),activeEvents=lastRecoveryIndex>=0?routeEvents.slice(lastRecoveryIndex+1):routeEvents;if(activeEvents.length===0)return{healthTier:"healthy",capabilityStatus:"verified",workflowToolPolicy:"full",warnings:[],repairHints:["Provider route recovered in the current health window."],certificationRef:routeEvents[lastRecoveryIndex]?.certificationRef};if(activeEvents.find(event=>event.failureClass==="auth"))return buildSnapshot({healthTier:"broken",capabilityStatus:"failed",workflowToolPolicy:"blocked",warning:"Provider authentication failed for this route.",repairHint:"Repair the provider credential or selected profile, then rerun provider doctor.",certificationRef:latestCertificationRef(activeEvents)});let classCounts=countFailureClasses(activeEvents),strongestToolFailure=strongestCount(classCounts.filter(item=>TOOL_FAILURE_CLASSES.has(item.failureClass)));if(strongestToolFailure&&strongestToolFailure.count>=3)return buildSnapshot({healthTier:"degraded",capabilityStatus:"stale",workflowToolPolicy:"direct_only",warning:failureWarning(strongestToolFailure,"repeated"),repairHint:"Workflow orchestration tools are downgraded for this route; preserve direct repo tools and rerun provider certification before restoring workflow mode.",certificationRef:latestCertificationRef(activeEvents)});if(strongestToolFailure&&strongestToolFailure.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:failureWarning(strongestToolFailure,"second"),repairHint:"Keep workflow tools visible but treat provider tool-calling as unproven until certification passes.",certificationRef:latestCertificationRef(activeEvents)});let streamFailures=classCounts.find(item=>item.failureClass==="stream");if(streamFailures&&streamFailures.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider stream parsing failures were observed.",repairHint:"Prefer cautious workflow use and rerun provider doctor to confirm the streaming contract.",certificationRef:latestCertificationRef(activeEvents)});let cacheFailures=classCounts.find(item=>item.failureClass==="cache");return cacheFailures&&cacheFailures.count>=2?buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider cache or previous_response_id anchor failures were observed.",repairHint:"Disable stateful cache assumptions for this route until certification confirms support.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="overflow")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider context overflow was observed on this route.",repairHint:"Use strict recovery for the turn, compact context, then retry with a smaller request.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="rate_limit")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider rate limiting was observed on this route.",repairHint:"Back off or switch provider route; do not infer a permanent capability failure from rate limiting alone.",certificationRef:latestCertificationRef(activeEvents)}):buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider route emitted a recoverable health warning.",repairHint:"Continue on direct repo tools when possible and record another provider health event if the route fails again.",certificationRef:latestCertificationRef(activeEvents)})}__name(getProviderHealthSnapshot,"getProviderHealthSnapshot");function buildSnapshot({healthTier,capabilityStatus,workflowToolPolicy,warning,repairHint,certificationRef}){return{healthTier,capabilityStatus,workflowToolPolicy,warnings:[warning],repairHints:[repairHint],...certificationRef?{certificationRef}:{}}}__name(buildSnapshot,"buildSnapshot");function countFailureClasses(events){let counts=new Map;for(let event of events)event.failureClass!=="recovered"&&counts.set(event.failureClass,(counts.get(event.failureClass)??0)+1);return[...counts.entries()].map(([failureClass,count3])=>({failureClass,count:count3}))}__name(countFailureClasses,"countFailureClasses");function strongestCount(items){let strongest=null;for(let item of items)(!strongest||item.count>strongest.count)&&(strongest=item);return strongest}__name(strongestCount,"strongestCount");function failureWarning(item,label){let readableClass=item.failureClass.replaceAll("_"," ");return label==="second"?`Provider route emitted a second ${readableClass} failure in the health window.`:`Provider route emitted repeated ${readableClass} failures in the health window.`}__name(failureWarning,"failureWarning");function latestCertificationRef(events){return[...events].reverse().find(event=>event.certificationRef)?.certificationRef}__name(latestCertificationRef,"latestCertificationRef");function findLastIndex2(values2,predicate){for(let index=values2.length-1;index>=0;index-=1)if(predicate(values2[index]))return index;return-1}__name(findLastIndex2,"findLastIndex");var runtimeLedger=createProviderHealthLedger();function isProviderHealthLedgerEnabled(){return process.env.CLAVUE_ROUTE_HEALTH_LEDGER!=="0"}__name(isProviderHealthLedgerEnabled,"isProviderHealthLedgerEnabled");function getProviderRouteHealthSnapshot(routeId){if(!isProviderHealthLedgerEnabled())return null;let normalizedRouteId=String(routeId??"").trim();return normalizedRouteId?getProviderHealthSnapshot(runtimeLedger,{routeId:normalizedRouteId}):null}__name(getProviderRouteHealthSnapshot,"getProviderRouteHealthSnapshot");var CORE_NATIVE_WORKFLOW_TOOL_NAMES=new Set([ENTER_PLAN_MODE_TOOL_NAME,SEND_MESSAGE_TOOL_NAME,TASK_CREATE_TOOL_NAME,TASK_GET_TOOL_NAME,TASK_LIST_TOOL_NAME,TASK_OUTPUT_TOOL_NAME,TASK_UPDATE_TOOL_NAME,TEAM_CREATE_TOOL_NAME,TEAM_DELETE_TOOL_NAME,TODO_WRITE_TOOL_NAME]);function isOfficialAnthropicBaseUrl(baseUrl){let normalizedBaseUrl=String(baseUrl??"").trim();if(!normalizedBaseUrl)return isFirstPartyAnthropicBaseUrl();try{let host=new URL(normalizedBaseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}__name(isOfficialAnthropicBaseUrl,"isOfficialAnthropicBaseUrl");function inferRuntimeProviderKind(input){if(input.runtimeProviderKind)return input.runtimeProviderKind;if(typeof input.baseUrl=="string"&&input.baseUrl.trim())return isOfficialAnthropicBaseUrl(input.baseUrl)?"first_party":"gateway";switch(getAPIProvider()){case"bedrock":return"bedrock";case"vertex":return"vertex";case"foundry":return"foundry";default:return isFirstPartyAnthropicBaseUrl()?"first_party":"gateway"}}__name(inferRuntimeProviderKind,"inferRuntimeProviderKind");function resolveCodingRoutePolicy(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.fusionEndpointDialect??input.apiDialectMode??getConfiguredApiDialectMode(),runtimeProviderKind=inferRuntimeProviderKind(input),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),providerHealth=input.providerHealth===void 0?getProviderRouteHealthSnapshot(routeId):input.providerHealth,decision=resolveCodingRoutePolicyCore({model:normalizedModel,snapshot,routeId,apiDialectMode:dialectMode,runtimeProviderKind,supportsResponsesAdapter:supportsOpenAIResponsesAdapterModel(normalizedModel),coreNativeWorkflowToolNames:[...CORE_NATIVE_WORKFLOW_TOOL_NAMES],providerHealth}),preferences=getWorkflowDisciplinePreferencesFromEnv(),overridden=applyWorkflowDisciplinePreferences(decision,preferences);return{...decision,planDiscipline:overridden.planDiscipline,verificationDiscipline:overridden.verificationDiscipline,recoveryMode:overridden.recoveryMode}}__name(resolveCodingRoutePolicy,"resolveCodingRoutePolicy");function createFallbackStorage(primary,secondary){return{name:`${primary.name}-with-${secondary.name}-fallback`,read(){let result2=primary.read();return result2??(secondary.read()||{})},async readAsync(){let result2=await primary.readAsync();return result2??(await secondary.readAsync()||{})},update(data){let primaryDataBefore=primary.read(),result2=primary.update(data);if(result2.success)return primaryDataBefore===null&&secondary.delete(),result2;let fallbackResult=secondary.update(data);return fallbackResult.success?(primaryDataBefore!==null&&primary.delete(),{success:!0,warning:fallbackResult.warning}):{success:!1}},delete(){let primarySuccess=primary.delete(),secondarySuccess=secondary.delete();return primarySuccess||secondarySuccess}}}__name(createFallbackStorage,"createFallbackStorage");init_envUtils();init_execa();init_debug();init_envUtils();init_execFileNoThrow();init_execFileNoThrowPortable();init_slowOperations();var SECURITY_STDIN_LINE_LIMIT=4032,macOsKeychainStorage={name:"keychain",read(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),result2=execSyncWithDefaults_DEPRECATED(`security find-generic-password -a "${username}" -w -s "${storageServiceName}"`);if(result2){let data=jsonParse(result2);return keychainCacheState.cache={data,cachedAt:Date.now()},data}}catch{}return prev.data!==null?(logForDebugging("[keychain] read failed; serving stale cache",{level:"warn"}),keychainCacheState.cache={data:prev.data,cachedAt:Date.now()},prev.data):(keychainCacheState.cache={data:null,cachedAt:Date.now()},null)},async readAsync(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;if(keychainCacheState.readInFlight)return keychainCacheState.readInFlight;let gen=keychainCacheState.generation,promise2=doReadAsync().then(data=>{if(gen===keychainCacheState.generation){data===null&&prev.data!==null&&logForDebugging("[keychain] readAsync failed; serving stale cache",{level:"warn"});let next=data??prev.data;return keychainCacheState.cache={data:next,cachedAt:Date.now()},keychainCacheState.readInFlight=null,next}return data});return keychainCacheState.readInFlight=promise2,promise2},update(data){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),jsonString=jsonStringify(data),hexValue=Buffer.from(jsonString,"utf-8").toString("hex"),command=`add-generic-password -U -a "${username}" -s "${storageServiceName}" -X "${hexValue}"
|
|
225
|
+
`,result2;return command.length<=SECURITY_STDIN_LINE_LIMIT?result2=execaSync("security",["-i"],{input:command,stdio:["pipe","pipe","pipe"],reject:!1}):(logForDebugging(`Keychain payload (${jsonString.length}B JSON) exceeds security -i stdin limit; using argv`,{level:"warn"}),result2=execaSync("security",["add-generic-password","-U","-a",username,"-s",storageServiceName,"-X",hexValue],{stdio:["ignore","pipe","pipe"],reject:!1})),result2.exitCode!==0?{success:!1}:(keychainCacheState.cache={data,cachedAt:Date.now()},{success:!0})}catch{return{success:!1}}},delete(){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername();return execSyncWithDefaults_DEPRECATED(`security delete-generic-password -a "${username}" -s "${storageServiceName}"`),!0}catch{return!1}}};async function doReadAsync(){try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),{stdout,code}=await execFileNoThrow("security",["find-generic-password","-a",username,"-w","-s",storageServiceName],{useCwd:!1,preserveOutputOnError:!1});if(code===0&&stdout)return jsonParse(stdout.trim())}catch{}return null}__name(doReadAsync,"doReadAsync");init_envUtils();init_errors2();init_fsOperations();init_slowOperations();import{chmodSync as chmodSync3}from"fs";import{join as join15}from"path";function getStoragePath(){let storageDir=getClaudeConfigHomeDir();return{storageDir,storagePath:join15(storageDir,".credentials.json")}}__name(getStoragePath,"getStoragePath");function ensurePrivateStorageDir(storageDir){try{getFsImplementation().mkdirSync(storageDir,{mode:448})}catch(e2){if(getErrnoCode(e2)!=="EEXIST")throw e2}if(process.platform!=="win32")try{chmodSync3(storageDir,448)}catch{}}__name(ensurePrivateStorageDir,"ensurePrivateStorageDir");var plainTextStorage={name:"plaintext",read(){let{storagePath}=getStoragePath();try{let data=getFsImplementation().readFileSync(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},async readAsync(){let{storagePath}=getStoragePath();try{let data=await getFsImplementation().readFile(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},update(data){try{let{storageDir,storagePath}=getStoragePath();return ensurePrivateStorageDir(storageDir),writeFileSync_DEPRECATED(storagePath,jsonStringify(data),{encoding:"utf8",flush:!1}),chmodSync3(storagePath,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath}=getStoragePath();try{return getFsImplementation().unlinkSync(storagePath),!0}catch(e2){return getErrnoCode(e2)==="ENOENT"}}};function getSecureStorage(){return process.platform==="darwin"&&shouldUseMacOSKeychain()?createFallbackStorage(macOsKeychainStorage,plainTextStorage):plainTextStorage}__name(getSecureStorage,"getSecureStorage");var hasMigratedNormalizedProviderBaseUrls=!1;var PROVIDER_PRESETS=[{id:"custom",name:"\u81EA\u5B9A\u4E49\u914D\u7F6E",description:"\u624B\u52A8\u586B\u5199\u4EFB\u610F\u517C\u5BB9 API URL \u548C\u5BC6\u94A5",baseUrl:"",authType:"api_key"},{id:"anthropic",name:"Anthropic",description:"\u5B98\u65B9 Anthropic API",baseUrl:"https://api.anthropic.com",authType:"api_key"},{id:"openrouter",name:"OpenRouter",description:"OpenRouter Anthropic \u517C\u5BB9\u5165\u53E3",baseUrl:"https://openrouter.ai/api/anthropic",authType:"api_key"},{id:"glm",name:"GLM",description:"\u667A\u8C31 AI Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://open.bigmodel.cn/api/anthropic",authType:"auth_token"},{id:"minimax",name:"MiniMax",description:"MiniMax Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.minimaxi.com/anthropic",authType:"auth_token"},{id:"kimi",name:"Kimi",description:"Moonshot Kimi Coding \u63A5\u53E3",baseUrl:"https://api.kimi.com/coding/",authType:"auth_token"},{id:"xai",name:"xAI (Grok)",description:"xAI Grok OpenAI \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.x.ai/v1",authType:"api_key"},{id:"gemini",name:"Google Gemini",description:"Google Gemini\uFF08\u7EDF\u4E00\u8D70 OpenAI \u517C\u5BB9\u7AEF\u70B9 + \u4E13\u7528\u540E\u5904\u7406\uFF0C\u652F\u6301 gemini-3-5-flash / gemini-3-5-flash-high \u7B49\u5168\u7CFB\u5217\uFF0C\u9AD8\u9636\u53D8\u4F53\u81EA\u52A8\u542F\u7528\u66F4\u5F3A reasoning \u63D0\u53D6\uFF09",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",authType:"api_key"}],PROVIDER_MODEL_ROUTING_PRESETS=[{id:"provider_default",name:"Provider defaults",description:"Keep the provider defaults for all slots. Override individual models only when needed.",routing:{presetId:"provider_default",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}},{id:"claude_code_heritage",name:"Anthropic-native heritage",description:"Anthropic-native default path with Sonnet for execution, Haiku for fast work, and Opus for planning.",routing:{presetId:"claude_code_heritage",primaryModel:"claude-sonnet-4-6",subagentModel:"claude-sonnet-4-6",smallFastModel:"claude-haiku-4-5",planModel:"claude-opus-4-6",exploreModel:"claude-sonnet-4-6",generalModel:"claude-sonnet-4-6",teamModel:"claude-sonnet-4-6",guideModel:"claude-opus-4-6",reviewModel:""}},{id:"gpt_5_5_max",name:"GPT-5.5 max capability",description:"Primary, workhorse, team, and planning slots on GPT-5.5 with GPT-5.3 Codex kept for fast helper work.",routing:{presetId:"gpt_5_5_max",primaryModel:"gpt-5.5",subagentModel:"gpt-5.5",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.5",exploreModel:"gpt-5.5",generalModel:"gpt-5.5",teamModel:"gpt-5.5",guideModel:"gpt-5.5",reviewModel:""}},{id:"gpt_5_4_codex",name:"GPT-5.4 + GPT-5.3 Codex",description:"Primary slot on GPT-5.4. Sonnet and Haiku slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_4_codex",primaryModel:"gpt-5.4",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.4",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.4",reviewModel:""}},{id:"gpt_5_1_stable",name:"GPT-5.1 stable",description:"Use GPT-5.1 across the primary, Haiku, Sonnet, and Opus slots.",routing:{presetId:"gpt_5_1_stable",primaryModel:"gpt-5.1",subagentModel:"gpt-5.1",smallFastModel:"gpt-5.1",planModel:"gpt-5.1",exploreModel:"gpt-5.1",generalModel:"gpt-5.1",teamModel:"gpt-5.1",guideModel:"gpt-5.1",reviewModel:""}},{id:"gpt_5_3_codex",name:"GPT-5.3 Codex everywhere",description:"Run the primary, Haiku, Sonnet, and Opus slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_3_codex",primaryModel:"gpt-5.3-codex",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.3-codex",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.3-codex",reviewModel:""}},{id:"grok_current",name:"Grok current coding route",description:"Run xAI Grok through OpenAI-compatible chat completions: Grok 4.3 for primary/planning and Grok Composer fast for helpers.",routing:{presetId:"grok_current",primaryModel:"grok-4.3",subagentModel:"grok-build-0.1",smallFastModel:"grok-composer-2.5-fast",planModel:"grok-4.3",exploreModel:"grok-build-0.1",generalModel:"grok-build-0.1",teamModel:"grok-build-0.1",guideModel:"grok-4.3",reviewModel:"grok-build-0.1"}},{id:"gpt55_deepseek_combo",name:"GPT-5.5 + DeepSeek combo",description:"GPT-5.5 primary loop with DeepSeek v4 Pro for prose/planning/team work and GPT-5.3 Codex Spark for fast helpers. Maximum GPT capability with DeepSeek backend stability.",routing:{presetId:"gpt55_deepseek_combo",primaryModel:"gpt-5.5",subagentModel:"deepseek-v4-pro",smallFastModel:"gpt-5.3-codex-spark",planModel:"deepseek-v4-pro",exploreModel:"deepseek-v4-pro",generalModel:"deepseek-v4-pro",teamModel:"deepseek-v4-pro",guideModel:"deepseek-v4-pro",reviewModel:"codex-auto-review"}},{id:"deepseek_gpt_combo",name:"DeepSeek + GPT combo",description:"DeepSeek v4 Pro primary with GPT-5.5 for planning/guide and GPT-5.3 Codex Spark for fast helpers. Best when DeepSeek is your main workhorse with GPT augmentation.",routing:{presetId:"deepseek_gpt_combo",primaryModel:"deepseek-v4-pro",subagentModel:"deepseek-v4-pro",smallFastModel:"gpt-5.3-codex-spark",planModel:"gpt-5.5",exploreModel:"deepseek-v4-pro",generalModel:"deepseek-v4-pro",teamModel:"deepseek-v4-pro",guideModel:"gpt-5.5",reviewModel:"codex-auto-review"}},{id:"custom",name:"Custom model routing",description:"Set primary, Haiku, Sonnet, and Opus slots yourself. Derived roles update automatically.",routing:{presetId:"custom",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}}],PROVIDER_MODEL_CATALOG=[{id:"gpt-5.5",name:"GPT-5.5",description:"Maximum-capability GPT route for validated OpenAI Responses-compatible coding gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking","max_effort"]},{id:"gpt-5.4",name:"GPT-5.4",description:"Probe-required Primary slot model on Anthropic-compatible GPT gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",description:"Gateway-dependent execution model; only use it after this provider validates stable native tool calling",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",description:"Experimental Codex route; only use it when this provider explicitly validates support",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.1",name:"GPT-5.1",description:"Provider-dependent fallback when a gateway does not fully expose GPT-5.4",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",description:"Native Anthropic everyday coding model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-opus-4-6",name:"Claude Opus 4.6",description:"Native Anthropic highest-capability model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",description:"Native Anthropic fast-response model for the Haiku slot",verified:!0,capabilities:[]},{id:"grok-4.3",name:"Grok 4.3",description:"xAI Grok 4.3 - frontier reasoning and primary coding model",verified:!1,capabilities:["vision","tool_use","thinking","effort"]},{id:"grok-build-0.1",name:"Grok Build 0.1",description:"xAI Grok Build 0.1 - coding build/workhorse route for OpenAI-compatible chat completions",verified:!1,capabilities:["tool_use","thinking"]},{id:"grok-composer-2.5-fast",name:"Grok Composer 2.5 Fast",description:"xAI Grok Composer 2.5 Fast - fast helper route for lightweight and background roles",verified:!1,capabilities:["tool_use"]},{id:"grok-4",name:"Grok 4",description:"xAI Grok 4 - frontier reasoning model",verified:!1,capabilities:["vision","tool_use","thinking"]},{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash",description:"Google Gemini 1.5 Flash - fast, long-context",verified:!1,capabilities:["vision","tool_use","long_context"]},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",description:"Google Gemini 2.0 Flash (experimental)",verified:!1,capabilities:["vision","tool_use"]},{id:"gemini-3-5-flash",name:"Gemini 3.5 Flash",description:"Google Gemini 3.5 Flash - fast, high-capability",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking"]},{id:"gemini-3-5-flash-high",name:"Gemini 3.5 Flash (High)",description:"Google Gemini 3.5 Flash High - maximized reasoning mode",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking","thinking","effort"]}],PROVIDER_CAPABILITY_CACHE_TTL_MS=3600*1e3,PROVIDER_CAPABILITY_CACHE_VERSION=3;var COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS=[{sourceId:"ccjk",path:join16(homedir5(),".ccjk","config.toml")},{sourceId:"zcf",path:join16(homedir5(),".ufomiao","zcf","config.toml")}],hasAttemptedCompatibleExternalProviderImport=!1;function normalizeConfigPathForComparison(path9){let normalizedPath=resolve7(path9).normalize("NFC");return process.platform==="win32"?normalizedPath.toLowerCase():normalizedPath}__name(normalizeConfigPathForComparison,"normalizeConfigPathForComparison");function shouldAutoImportCompatibleExternalProviderProfiles(){let explicitConfigDir=process.env.CLAVUE_CONFIG_DIR?.trim();return explicitConfigDir?normalizeConfigPathForComparison(explicitConfigDir)===normalizeConfigPathForComparison(join16(homedir5(),".clavue")):!0}__name(shouldAutoImportCompatibleExternalProviderProfiles,"shouldAutoImportCompatibleExternalProviderProfiles");function normalizeAnthropicBaseUrl(value){let trimmedValue=String(value??"").trim();return trimmedValue?trimmedValue.replace(/\/v1(?:\/messages)?\/?$/i,"").replace(/\/+$/,""):""}__name(normalizeAnthropicBaseUrl,"normalizeAnthropicBaseUrl");function stripTomlComment(line){let result2="",quote=null,escaped=!1;for(let char of line){if(quote){if(result2+=char,quote==='"'&&char==="\\"&&!escaped){escaped=!0;continue}char===quote&&!escaped&&(quote=null),escaped=!1;continue}if(char==='"'||char==="'"){quote=char,result2+=char;continue}if(char==="#")break;result2+=char}return result2.trim()}__name(stripTomlComment,"stripTomlComment");function parseTomlPathSegments(value){let segments=[],current="",quote=null;for(let char of value){if(quote){char===quote?quote=null:current+=char;continue}if(char==='"'||char==="'"){quote=char;continue}if(char==="."){let segment=current.trim();segment&&segments.push(segment),current="";continue}current+=char}let tail2=current.trim();return tail2&&segments.push(tail2),segments}__name(parseTomlPathSegments,"parseTomlPathSegments");function parseTomlStringValue(value){let trimmed=stripTomlComment(value);if(!trimmed)return"";if(trimmed.startsWith('"')&&trimmed.endsWith('"'))try{return JSON.parse(trimmed)}catch{return trimmed.slice(1,-1)}return trimmed.startsWith("'")&&trimmed.endsWith("'")?trimmed.slice(1,-1):trimmed}__name(parseTomlStringValue,"parseTomlStringValue");var VERIFIED_MODEL_CAPABILITIES=new Map([["gpt-5.5",["effort","thinking","adaptive_thinking","max_effort"]],["gpt-5.4",["effort","thinking","adaptive_thinking"]],["gpt-5.1",["effort","thinking","adaptive_thinking"]],["gpt-5.3-codex",["effort","thinking"]],["gemini-3-5-flash",["vision","tool_use","long_context","adaptive_thinking"]],["gemini-3-5-flash-high",["vision","tool_use","long_context","adaptive_thinking","thinking","effort","max_effort"]]]);function getVerifiedCapabilitiesForModel(model){let normalizedModel=model.trim().toLowerCase();if(!normalizedModel)return[];let capabilities=VERIFIED_MODEL_CAPABILITIES.get(normalizedModel);return capabilities?[...capabilities]:[]}__name(getVerifiedCapabilitiesForModel,"getVerifiedCapabilitiesForModel");function getCapabilitiesFromProviderSnapshot(model,snapshot){if(!model.trim().toLowerCase())return[];let capabilities=new Set,verifiedCapabilities=getVerifiedCapabilitiesForModel(model);if(snapshot.responsesReasoningMedium){capabilities.add("effort"),capabilities.add("thinking");for(let capability of verifiedCapabilities)capability==="adaptive_thinking"&&capabilities.add(capability)}return snapshot.responsesReasoningXHigh&&capabilities.add("max_effort"),[...capabilities]}__name(getCapabilitiesFromProviderSnapshot,"getCapabilitiesFromProviderSnapshot");function serializeCapabilitiesForModel(profile,model){if(profile){let snapshot=getProviderCapabilitySnapshot(profile,model,{allowStale:!0});if(snapshot){let cachedCapabilities=getCapabilitiesFromProviderSnapshot(model,snapshot);return cachedCapabilities.length>0?cachedCapabilities.join(","):void 0}}if(supportsOpenAIResponsesAdapterModel(model))return;let capabilities=getVerifiedCapabilitiesForModel(model);return capabilities.length>0?capabilities.join(","):void 0}__name(serializeCapabilitiesForModel,"serializeCapabilitiesForModel");function normalizeAuthType(value){return value==="auth_token"?"auth_token":"api_key"}__name(normalizeAuthType,"normalizeAuthType");function getProviderSlotModelsFromRouting(routing){let values2=getProviderModeSlotValues(routing??{});return[values2.primaryModel,values2.haikuModel,values2.sonnetModel,values2.opusModel].map(model=>String(model??"").trim()).filter(Boolean)}__name(getProviderSlotModelsFromRouting,"getProviderSlotModelsFromRouting");function inferProviderApiDialectMode(modelMode,models){return modelMode==="anthropic_native"?"anthropic":modelMode==="openai_native"||models.some(model=>{let normalized=String(model??"").trim().toLowerCase();return supportsOpenAIResponsesAdapterModel(normalized)&&!defaultsToAnthropicMessagesModel(normalized)})?"openai_responses":"anthropic"}__name(inferProviderApiDialectMode,"inferProviderApiDialectMode");function normalizeProviderApiDialectMode(value,modelMode,modelRouting){return value==="anthropic"||value==="openai_responses"?value:inferProviderApiDialectMode(modelMode,getProviderSlotModelsFromRouting(modelRouting))}__name(normalizeProviderApiDialectMode,"normalizeProviderApiDialectMode");function normalizeProviderId(value,baseUrl){return value==="custom"||value==="anthropic"||value==="openrouter"||value==="glm"||value==="minimax"||value==="kimi"||value==="xai"||value==="gemini"?value:inferProviderPresetId(baseUrl)??"custom"}__name(normalizeProviderId,"normalizeProviderId");function normalizeModelRoutingPresetId(value){return value==="provider_default"||value==="claude_code_heritage"||value==="gpt_5_5_max"||value==="gpt_5_4_codex"||value==="gpt_5_1_stable"||value==="gpt_5_3_codex"||value==="gpt55_deepseek_combo"||value==="deepseek_gpt_combo"||value==="custom"?value:"provider_default"}__name(normalizeModelRoutingPresetId,"normalizeModelRoutingPresetId");function normalizeModelValue(value){return typeof value=="string"?value.trim():""}__name(normalizeModelValue,"normalizeModelValue");function inferModelRoutingPresetId(routing){for(let preset of PROVIDER_MODEL_ROUTING_PRESETS)if(preset.routing.primaryModel===routing.primaryModel&&preset.routing.subagentModel===routing.subagentModel&&preset.routing.smallFastModel===routing.smallFastModel&&preset.routing.planModel===routing.planModel&&preset.routing.exploreModel===routing.exploreModel&&preset.routing.generalModel===routing.generalModel&&preset.routing.teamModel===routing.teamModel&&preset.routing.guideModel===routing.guideModel&&preset.routing.reviewModel===routing.reviewModel)return preset.id;return"custom"}__name(inferModelRoutingPresetId,"inferModelRoutingPresetId");function normalizeProviderModelRouting(value){if(!value||typeof value!="object")return createProviderModelRoutingFromPreset("provider_default");let raw=value,presetId=normalizeModelRoutingPresetId(raw.presetId),base=getProviderModelRoutingPreset(presetId).routing,normalized=completeProviderRoutingSlotsFromPrimary({presetId,primaryModel:normalizeModelValue(raw.primaryModel),subagentModel:normalizeModelValue(raw.subagentModel),smallFastModel:normalizeModelValue(raw.smallFastModel),planModel:normalizeModelValue(raw.planModel),exploreModel:normalizeModelValue(raw.exploreModel),generalModel:normalizeModelValue(raw.generalModel),teamModel:normalizeModelValue(raw.teamModel),guideModel:normalizeModelValue(raw.guideModel),reviewModel:normalizeModelValue(raw.reviewModel)},base);return{presetId:presetId==="provider_default"?inferModelRoutingPresetId(normalized):presetId,...normalized}}__name(normalizeProviderModelRouting,"normalizeProviderModelRouting");function normalizeProviderProfileProvenance(value){if(!value||typeof value!="object")return{kind:"manual"};let raw=value;return raw.kind==="synthetic_current_env"?{kind:"synthetic_current_env"}:raw.kind==="current_env_adopted"?{kind:"current_env_adopted",adoptedAt:typeof raw.adoptedAt=="number"&&Number.isFinite(raw.adoptedAt)?raw.adoptedAt:Date.now()}:raw.kind==="imported"&&(raw.sourceId==="ccjk"||raw.sourceId==="zcf")?{kind:"imported",sourceId:raw.sourceId,importedAt:typeof raw.importedAt=="number"&&Number.isFinite(raw.importedAt)?raw.importedAt:Date.now(),externalProfileId:typeof raw.externalProfileId=="string"&&raw.externalProfileId.trim()||void 0}:{kind:"manual"}}__name(normalizeProviderProfileProvenance,"normalizeProviderProfileProvenance");function normalizeProviderSecretRecord(value){if(!value||typeof value!="object")return null;let raw=value,credential=typeof raw.credential=="string"?raw.credential.trim():"";return credential?{credential,authType:raw.authType==="auth_token"?"auth_token":raw.authType==="api_key"?"api_key":void 0}:null}__name(normalizeProviderSecretRecord,"normalizeProviderSecretRecord");function getStoredProviderSecretRecords(){let stored=getSecureStorage().read()?.providerProfiles;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([profileId,value])=>{let normalizedId=profileId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}__name(getStoredProviderSecretRecords,"getStoredProviderSecretRecords");function areProviderSecretMapsEqual(left,right){let leftKeys=Object.keys(left).sort(),rightKeys=Object.keys(right).sort();if(leftKeys.length!==rightKeys.length)return!1;for(let index=0;index<leftKeys.length;index+=1){let leftKey=leftKeys[index],rightKey=rightKeys[index];if(leftKey!==rightKey)return!1;let leftValue=left[leftKey],rightValue=right[rightKey];if(!leftValue||!rightValue||leftValue.credential!==rightValue.credential||leftValue.authType!==rightValue.authType)return!1}return!0}__name(areProviderSecretMapsEqual,"areProviderSecretMapsEqual");function persistProviderSecrets(profiles){let secureStorage=getSecureStorage(),existingData=secureStorage.read()??{},currentSecrets=getStoredProviderSecretRecords(),nextSecrets=Object.fromEntries(profiles.map(profile=>{let id=profile.id.trim(),credential=profile.credential.trim();return!id||!credential||isPlaceholderProviderCredential(credential)?null:[id,{credential,authType:normalizeAuthType(profile.authType)}]}).filter(entry=>entry!==null));if(areProviderSecretMapsEqual(currentSecrets,nextSecrets))return;if(!secureStorage.update({...existingData,providerProfiles:Object.keys(nextSecrets).length>0?nextSecrets:void 0}).success)throw new Error("Failed to persist provider credentials to secure storage")}__name(persistProviderSecrets,"persistProviderSecrets");function scrubStoredProviderProfile(profile){let{credential:_credential,...rest2}=profile;return rest2}__name(scrubStoredProviderProfile,"scrubStoredProviderProfile");function normalizeProviderProfile(value,providerSecrets={}){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",name=typeof raw.name=="string"?raw.name.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),secretRecord=id?providerSecrets[id]:void 0,credential=secretRecord?.credential??(typeof raw.credential=="string"?raw.credential.trim():"");if(!id||!name||!baseUrl||!credential||isPlaceholderProviderCredential(credential))return null;let createdAt=typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt=typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:createdAt,providerId=normalizeProviderId(raw.providerId,baseUrl),modelRouting=normalizeProviderModelRouting(raw.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:typeof raw.modelMode=="string"?raw.modelMode:void 0,modelRouting});return{id,name,providerId,modelMode,baseUrl,authType:normalizeAuthType(secretRecord?.authType??raw.authType),credential,modelRouting,provenance:normalizeProviderProfileProvenance(raw.provenance),geminiHighAmplification:raw.geminiHighAmplification==="full"||raw.geminiHighAmplification==="light"||raw.geminiHighAmplification==="off"?raw.geminiHighAmplification:void 0,apiDialectMode:normalizeProviderApiDialectMode(raw.apiDialectMode,modelMode,modelRouting),createdAt,updatedAt}}__name(normalizeProviderProfile,"normalizeProviderProfile");function buildCompatibleExternalProviderRouting(profile){let primaryModel=normalizeModelValue(profile.primaryModel),haikuModel=normalizeModelValue(profile.defaultHaikuModel),sonnetModel=normalizeModelValue(profile.defaultSonnetModel),opusModel=normalizeModelValue(profile.defaultOpusModel),executionModel=sonnetModel||primaryModel;return normalizeProviderModelRouting({presetId:"custom",primaryModel,subagentModel:executionModel&&executionModel!==primaryModel?executionModel:"",smallFastModel:haikuModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel:""})}__name(buildCompatibleExternalProviderRouting,"buildCompatibleExternalProviderRouting");function getDefaultRoutingPresetIdForProvider(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"claude_code_heritage":providerId==="xai"?"grok_current":providerId==="gemini"?"custom":"gpt_5_5_max"}__name(getDefaultRoutingPresetIdForProvider,"getDefaultRoutingPresetIdForProvider");function getDefaultRoutingPresetIdForMode(modelMode,providerId){return modelMode==="anthropic_native"?"claude_code_heritage":modelMode==="openai_native"?"gpt_5_5_max":getDefaultRoutingPresetIdForProvider(providerId)}__name(getDefaultRoutingPresetIdForMode,"getDefaultRoutingPresetIdForMode");function createDefaultRoutingForMode(modelMode,providerId){return modelMode==="hybrid_compatible"?createCustomProviderModelRouting(createDefaultProviderModeSlotValues("hybrid_compatible")):createProviderModelRoutingFromPreset(getDefaultRoutingPresetIdForMode(modelMode,providerId))}__name(createDefaultRoutingForMode,"createDefaultRoutingForMode");function repairProviderProfileRoutingForMode(profile){let providerId=normalizeProviderId(profile.providerId,profile.baseUrl),routing=normalizeProviderModelRouting(profile.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:profile.modelMode,modelRouting:routing}),issues=validateProviderModeRouting(modelMode,routing,{language:"zh"}).filter(issue2=>issue2.level==="error");if(issues.length===0)return{profile:{...profile,providerId,modelMode,modelRouting:routing},repaired:!1,messages:[]};let nextRouting=createDefaultRoutingForMode(modelMode,providerId);return{profile:{...profile,providerId,modelMode,modelRouting:nextRouting},repaired:!0,messages:[...issues.map(issue2=>issue2.message),`\u5DF2\u81EA\u52A8\u5207\u6362\u4E3A ${getProviderModelRoutingPreset(nextRouting.presetId).name}\uFF0C\u907F\u514D\u672A\u9A8C\u8BC1\u6A21\u578B\u5BFC\u81F4\u53EA\u80FD\u5BF9\u8BDD\u3001\u4E0D\u80FD\u7A33\u5B9A\u8C03\u7528\u5DE5\u5177\u3002`]}}__name(repairProviderProfileRoutingForMode,"repairProviderProfileRoutingForMode");function createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId){let id=profileId.trim(),name=String(profile.name||profileId).trim(),baseUrl=normalizeAnthropicBaseUrl(profile.baseUrl),credential=String(profile.apiKey||"").trim(),authType=profile.authType==="auth_token"?"auth_token":"api_key";if(!id||!name||!baseUrl||!credential||isPlaceholderProviderCredential(credential))return null;let now2=Date.now(),rawProfile={id,name,providerId:normalizeProviderId(void 0,baseUrl),modelMode:getProviderModelModeForProfile({providerId:normalizeProviderId(void 0,baseUrl),modelRouting:buildCompatibleExternalProviderRouting(profile)}),baseUrl,authType,credential,modelRouting:buildCompatibleExternalProviderRouting(profile),provenance:{kind:"imported",sourceId,importedAt:now2,externalProfileId:id},createdAt:now2,updatedAt:now2};return repairProviderProfileRoutingForMode(rawProfile).profile}__name(createProviderProfileFromCompatibleExternalProfile,"createProviderProfileFromCompatibleExternalProfile");function loadCompatibleExternalProviderConfig(configPath,sourceId){if(!existsSync2(configPath))return null;let content="";try{content=readFileSync6(configPath,"utf8")}catch{return null}let rawProfiles=new Map,activeProfileId="",currentPath=[];for(let rawLine of content.split(/\r?\n/u)){let line=stripTomlComment(rawLine);if(!line)continue;if(line.startsWith("[")&&line.endsWith("]")){currentPath=parseTomlPathSegments(line.slice(1,-1).trim());continue}let separatorIndex=line.indexOf("=");if(separatorIndex===-1)continue;let key=line.slice(0,separatorIndex).trim().replace(/^['"]|['"]$/g,""),value=parseTomlStringValue(rawLine.slice(separatorIndex+1));if(currentPath.length===1&¤tPath[0]==="claudeCode"){key==="currentProfile"&&(activeProfileId=value.trim());continue}if(currentPath.length<3||currentPath[0]!=="claudeCode"||currentPath[1]!=="profiles")continue;let profileKey=currentPath.slice(2).join(".").trim();if(!profileKey)continue;let currentProfile=rawProfiles.get(profileKey)??{};(key==="name"||key==="authType"||key==="apiKey"||key==="baseUrl"||key==="primaryModel"||key==="defaultHaikuModel"||key==="defaultSonnetModel"||key==="defaultOpusModel")&&(currentProfile[key]=value,rawProfiles.set(profileKey,currentProfile))}let profiles=[...rawProfiles.entries()].map(([profileId,profile])=>createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId)).filter(profile=>profile!==null);return profiles.length===0&&!activeProfileId?null:{activeProfileId:activeProfileId||void 0,profiles}}__name(loadCompatibleExternalProviderConfig,"loadCompatibleExternalProviderConfig");function loadCompatibleExternalProviderProfiles(options){let profiles=[],seenIds=new Set,activeProfileId;for(let source of COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS){if(options?.sourceId&&source.sourceId!==options.sourceId)continue;let loaded=loadCompatibleExternalProviderConfig(source.path,source.sourceId);if(loaded){!activeProfileId&&loaded.activeProfileId&&(activeProfileId=loaded.activeProfileId);for(let profile of loaded.profiles){let normalizedId=profile.id.trim().toLowerCase();!normalizedId||seenIds.has(normalizedId)||(seenIds.add(normalizedId),profiles.push(profile))}}}return{activeProfileId,profiles}}__name(loadCompatibleExternalProviderProfiles,"loadCompatibleExternalProviderProfiles");function applyCompatibleExternalProviderImport(externalConfig){let discoveredProfiles=externalConfig.profiles;if(discoveredProfiles.length===0&&!externalConfig.activeProfileId)return{discoveredProfiles,importedProfiles:[],skippedProfiles:[],activeProfileId:externalConfig.activeProfileId,syncedActiveProfile:null};let currentConfig=getProviderConfig(),storedProfiles=getStoredProviderProfiles(),storedProfileIds=new Set(storedProfiles.map(profile=>profile.id.trim().toLowerCase())),storedProfileNames=new Set(storedProfiles.map(profile=>profile.name.trim().toLowerCase())),externalProfileIds=new Set(discoveredProfiles.map(profile=>profile.id.trim())),importedProfiles=discoveredProfiles.filter(profile=>{let normalizedId=profile.id.trim().toLowerCase(),normalizedName=profile.name.trim().toLowerCase();return normalizedId&&!storedProfileIds.has(normalizedId)&&!storedProfileNames.has(normalizedName)}),skippedProfiles=discoveredProfiles.filter(profile=>!importedProfiles.some(imported=>imported.id===profile.id)),currentStoredActiveProfileId=getStoredActiveProviderProfileId(currentConfig),importedActiveProfileId=String(externalConfig.activeProfileId||"").trim(),shouldSyncExternalActiveProfile=!!importedActiveProfileId&&externalProfileIds.has(importedActiveProfileId)&&(!currentStoredActiveProfileId||externalProfileIds.has(currentStoredActiveProfileId))&¤tStoredActiveProfileId!==importedActiveProfileId;if(importedProfiles.length===0&&!shouldSyncExternalActiveProfile)return{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile:null};let nextProfiles=[...storedProfiles,...importedProfiles];updateProviderConfig(nextProfiles,shouldSyncExternalActiveProfile?importedActiveProfileId:getStoredActiveProviderProfileId(currentConfig)||void 0);let syncedActiveProfile=null;return shouldSyncExternalActiveProfile&&(!getCurrentProviderProfile()||externalProfileIds.has(currentStoredActiveProfileId))&&(syncedActiveProfile=nextProfiles.find(profile=>profile.id===importedActiveProfileId)??null,syncedActiveProfile&&(writeUserSettingsUpdate(syncedActiveProfile),applyProviderProfileToProcess(syncedActiveProfile))),{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile}}__name(applyCompatibleExternalProviderImport,"applyCompatibleExternalProviderImport");function getProviderConfig(){return ensureNormalizedProviderBaseUrlsMigrated(),getGlobalConfig()}__name(getProviderConfig,"getProviderConfig");function getStoredProviderProfileRecords(config2){return Array.isArray(config2.clavueProviderProfiles)?config2.clavueProviderProfiles:Array.isArray(config2.my\u0063laudeProviderProfiles)?config2.my\u0063laudeProviderProfiles:[]}__name(getStoredProviderProfileRecords,"getStoredProviderProfileRecords");function getStoredActiveProviderProfileId(config2){let activeProfileId=typeof config2.clavueActiveProviderProfileId=="string"?config2.clavueActiveProviderProfileId.trim():"";return activeProfileId||(typeof config2.my\u0063laudeActiveProviderProfileId=="string"?config2.my\u0063laudeActiveProviderProfileId.trim():"")}__name(getStoredActiveProviderProfileId,"getStoredActiveProviderProfileId");function getStoredProviderCapabilityCache(config2){return config2.clavueProviderCapabilityCache&&typeof config2.clavueProviderCapabilityCache=="object"?config2.clavueProviderCapabilityCache:config2.my\u0063laudeProviderCapabilityCache&&typeof config2.my\u0063laudeProviderCapabilityCache=="object"?config2.my\u0063laudeProviderCapabilityCache:void 0}__name(getStoredProviderCapabilityCache,"getStoredProviderCapabilityCache");function ensureNormalizedProviderBaseUrlsMigrated(){hasMigratedNormalizedProviderBaseUrls||(hasMigratedNormalizedProviderBaseUrls=!0,migrateNormalizedProviderBaseUrls())}__name(ensureNormalizedProviderBaseUrlsMigrated,"ensureNormalizedProviderBaseUrlsMigrated");function getStoredProviderProfiles(){let config2=getProviderConfig(),providerSecrets=getStoredProviderSecretRecords();return getStoredProviderProfileRecords(config2).map(profile=>normalizeProviderProfile(profile,providerSecrets)).filter(profile=>profile!==null)}__name(getStoredProviderProfiles,"getStoredProviderProfiles");function ensureCompatibleExternalProviderProfilesImported(){hasAttemptedCompatibleExternalProviderImport||(hasAttemptedCompatibleExternalProviderImport=!0,shouldAutoImportCompatibleExternalProviderProfiles()&&applyCompatibleExternalProviderImport(loadCompatibleExternalProviderProfiles()))}__name(ensureCompatibleExternalProviderProfilesImported,"ensureCompatibleExternalProviderProfilesImported");function buildProviderCredentialFingerprint(profile){return createHash2("sha256").update([normalizeAnthropicBaseUrl(profile.baseUrl),profile.authType,profile.credential.trim()].join("\0")).digest("hex").slice(0,24)}__name(buildProviderCredentialFingerprint,"buildProviderCredentialFingerprint");function buildProviderCapabilityCacheKey(profile,model){return`${buildProviderCredentialFingerprint(profile)}:${normalizeModelValue(model).toLowerCase()}`}__name(buildProviderCapabilityCacheKey,"buildProviderCapabilityCacheKey");function normalizeProviderCapabilitySnapshot(value){if(!value||typeof value!="object")return null;let raw=value,key=typeof raw.key=="string"?raw.key.trim():"",model=typeof raw.model=="string"?raw.model.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),credentialFingerprint=typeof raw.credentialFingerprint=="string"?raw.credentialFingerprint.trim():"";if(raw.version!==PROVIDER_CAPABILITY_CACHE_VERSION||!key||!model||!baseUrl||!credentialFingerprint)return null;let optionalString=__name(input=>typeof input=="string"&&input.trim()?input.trim():void 0,"optionalString");return{version:PROVIDER_CAPABILITY_CACHE_VERSION,key,model,baseUrl,authType:normalizeAuthType(raw.authType),credentialFingerprint,checkedAt:typeof raw.checkedAt=="number"&&Number.isFinite(raw.checkedAt)?raw.checkedAt:Date.now(),compatibilityChecked:raw.compatibilityChecked===!0,anthropicMessagesReachable:raw.anthropicMessagesReachable===!0,anthropicToolUse:raw.anthropicToolUse===!0,responsesArrayInputReachable:raw.responsesArrayInputReachable===!0,responsesToolChoiceAuto:raw.responsesToolChoiceAuto===!0,responsesToolChoiceRequired:raw.responsesToolChoiceRequired===!0,responsesToolChoiceNamed:raw.responsesToolChoiceNamed===!0,responsesReasoningMedium:raw.responsesReasoningMedium===!0,responsesReasoningXHigh:raw.responsesReasoningXHigh===!0,messagesError:optionalString(raw.messagesError),responsesAccessError:optionalString(raw.responsesAccessError),responsesAutoError:optionalString(raw.responsesAutoError),responsesRequiredError:optionalString(raw.responsesRequiredError),responsesNamedError:optionalString(raw.responsesNamedError),responsesReasoningMediumError:optionalString(raw.responsesReasoningMediumError),responsesReasoningXHighError:optionalString(raw.responsesReasoningXHighError)}}__name(normalizeProviderCapabilitySnapshot,"normalizeProviderCapabilitySnapshot");function getProviderCapabilityCache(){let rawCache=getStoredProviderCapabilityCache(getProviderConfig());return!rawCache||typeof rawCache!="object"?{}:Object.fromEntries(Object.entries(rawCache).map(([key,value])=>{let normalized=normalizeProviderCapabilitySnapshot(value);return normalized?[key,normalized]:null}).filter(entry=>entry!==null))}__name(getProviderCapabilityCache,"getProviderCapabilityCache");function getProviderCapabilitySnapshot(profile,model,{allowStale=!1}={}){let cacheKey=buildProviderCapabilityCacheKey(profile,model),snapshot=getProviderCapabilityCache()[cacheKey];return!snapshot||!allowStale&&Date.now()-snapshot.checkedAt>PROVIDER_CAPABILITY_CACHE_TTL_MS?null:snapshot}__name(getProviderCapabilitySnapshot,"getProviderCapabilitySnapshot");function getCachedProviderCapabilitySnapshot(profile,model,options={}){return getProviderCapabilitySnapshot(profile,model,options)}__name(getCachedProviderCapabilitySnapshot,"getCachedProviderCapabilitySnapshot");function getSettingsEnv(){return getSettingsForSource("userSettings")?.env??{}}__name(getSettingsEnv,"getSettingsEnv");function buildSettingsEnvUpdate(profile){if(!profile)return{ANTHROPIC_BASE_URL:void 0,ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:void 0,ANTHROPIC_SMALL_FAST_MODEL:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:void 0,CLAUDE_CODE_SUBAGENT_MODEL:void 0,CLAVUE_API_DIALECT:void 0,MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0};let routing=profile.modelRouting,slotDefaults=getProviderModelSlotDefaults(routing);return{ANTHROPIC_BASE_URL:normalizeAnthropicBaseUrl(profile.baseUrl),ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:routing.primaryModel||void 0,ANTHROPIC_SMALL_FAST_MODEL:routing.smallFastModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:routing.primaryModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:getProviderModelDisplayName(routing.primaryModel,"primary"),ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:getProviderModelDescription(routing.primaryModel,"primary"),ANTHROPIC_DEFAULT_OPUS_MODEL:slotDefaults.opusModel||void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:getProviderModelDisplayName(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.opusModel),ANTHROPIC_DEFAULT_SONNET_MODEL:slotDefaults.sonnetModel||void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:getProviderModelDisplayName(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.sonnetModel),ANTHROPIC_DEFAULT_HAIKU_MODEL:slotDefaults.haikuModel||void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:getProviderModelDisplayName(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.haikuModel),CLAUDE_CODE_SUBAGENT_MODEL:routing.subagentModel&&routing.subagentModel!=="inherit"?routing.subagentModel:void 0,CLAVUE_API_DIALECT:normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0}}__name(buildSettingsEnvUpdate,"buildSettingsEnvUpdate");function buildSettingsModelUpdate(profile){let primaryModel=profile?.modelRouting.primaryModel.trim();return primaryModel||void 0}__name(buildSettingsModelUpdate,"buildSettingsModelUpdate");function writeUserSettingsUpdate(profile){let envUpdate=buildSettingsEnvUpdate(profile);updateSettingsForSource("userSettings",{env:envUpdate,model:buildSettingsModelUpdate(profile)})}__name(writeUserSettingsUpdate,"writeUserSettingsUpdate");function updateProviderConfig(profiles,activeProviderId){persistProviderSecrets(profiles),saveGlobalConfig(current=>({...current,clavueProviderProfiles:profiles.length>0?profiles.map(scrubStoredProviderProfile):void 0,clavueActiveProviderProfileId:activeProviderId||void 0}))}__name(updateProviderConfig,"updateProviderConfig");function inferProviderPresetId(baseUrl){let normalizedBaseUrl=normalizeAnthropicBaseUrl(baseUrl);return normalizedBaseUrl?PROVIDER_PRESETS.find(preset=>preset.id!=="custom"&&normalizeAnthropicBaseUrl(preset.baseUrl)===normalizedBaseUrl)?.id??"custom":null}__name(inferProviderPresetId,"inferProviderPresetId");function getProviderModelCatalogEntry(model){let normalizedModel=model.trim().toLowerCase();if(normalizedModel)return PROVIDER_MODEL_CATALOG.find(entry=>entry.id.toLowerCase()===normalizedModel)}__name(getProviderModelCatalogEntry,"getProviderModelCatalogEntry");function getProviderModelDisplayName(model,slot){let entry=getProviderModelCatalogEntry(model);if(entry)switch(slot){case"primary":return entry.name;case"opus":return`${entry.name} \xB7 Planning`;case"sonnet":return`${entry.name} \xB7 Execution`;case"haiku":return`${entry.name} \xB7 Fast`}}__name(getProviderModelDisplayName,"getProviderModelDisplayName");function getProviderModelDescription(model,slot){let entry=getProviderModelCatalogEntry(model);if(!entry)return;let capabilitySuffix=entry.capabilities.length>0?` Supports ${entry.capabilities.join(", ")}.`:"";switch(slot){case"primary":return`${entry.description}.${capabilitySuffix}`.trim();case"opus":return`Configured planning / Opus slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"sonnet":return`Configured execution / Sonnet slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"haiku":return`Configured fast / Haiku slot routed to ${entry.name}.${capabilitySuffix}`.trim()}}__name(getProviderModelDescription,"getProviderModelDescription");function getProviderModelRoutingPreset(id){return PROVIDER_MODEL_ROUTING_PRESETS.find(preset=>preset.id===id)??PROVIDER_MODEL_ROUTING_PRESETS[0]}__name(getProviderModelRoutingPreset,"getProviderModelRoutingPreset");function getProviderProfiles(){return ensureCompatibleExternalProviderProfilesImported(),getStoredProviderProfiles()}__name(getProviderProfiles,"getProviderProfiles");function getActiveProviderProfileId(){return ensureCompatibleExternalProviderProfilesImported(),getStoredActiveProviderProfileId(getProviderConfig())||void 0}__name(getActiveProviderProfileId,"getActiveProviderProfileId");function getSavedActiveProviderProfile(){let activeProfileId=getActiveProviderProfileId();return activeProfileId?getProviderProfiles().find(profile=>profile.id===activeProfileId)??null:null}__name(getSavedActiveProviderProfile,"getSavedActiveProviderProfile");function getCurrentProviderProfile(){let env5={...getSettingsEnv(),...process.env},credential=env5.ANTHROPIC_AUTH_TOKEN?.trim()??env5.ANTHROPIC_API_KEY?.trim()??"",authType=env5.ANTHROPIC_AUTH_TOKEN?"auth_token":"api_key",baseUrl=normalizeAnthropicBaseUrl(env5.ANTHROPIC_BASE_URL?.trim())||"https://api.anthropic.com";if(!credential||isPlaceholderProviderCredential(credential))return null;let providerId=inferProviderPresetId(baseUrl)??"custom",currentRouting={primaryModel:env5.ANTHROPIC_MODEL?.trim()??"",subagentModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??"",smallFastModel:env5.ANTHROPIC_SMALL_FAST_MODEL?.trim()??"",planModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??"",exploreModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",generalModel:env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",teamModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",guideModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??""};return{id:CURRENT_PROVIDER_PROFILE_ID,name:"Current API config",providerId,modelMode:getProviderModelModeForProfile({providerId,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting}}),baseUrl,authType,credential,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting},provenance:{kind:"synthetic_current_env"},createdAt:Date.now(),updatedAt:Date.now()}}__name(getCurrentProviderProfile,"getCurrentProviderProfile");function getResolvedCurrentProviderProfile(){return getSavedActiveProviderProfile()??getCurrentProviderProfile()}__name(getResolvedCurrentProviderProfile,"getResolvedCurrentProviderProfile");function createProviderModelRoutingFromPreset(presetId){return{...getProviderModelRoutingPreset(presetId).routing}}__name(createProviderModelRoutingFromPreset,"createProviderModelRoutingFromPreset");function createCustomProviderModelRouting(values2){let primaryModel=(values2.primaryModel||"").trim(),subagentModel=(values2.sonnetModel??values2.subagentModel??"").trim(),smallFastModel=(values2.haikuModel??values2.smallFastModel??"").trim(),opusModel=(values2.opusModel??"").trim(),reviewModel=(values2.reviewModel??"").trim(),executionModel=subagentModel||primaryModel;return{presetId:"custom",primaryModel,subagentModel,smallFastModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel}}__name(createCustomProviderModelRouting,"createCustomProviderModelRouting");function getProviderModelSlotDefaults(routing){let slotValues=getProviderModeSlotValues(routing);return{opusModel:slotValues.opusModel,sonnetModel:slotValues.sonnetModel,haikuModel:slotValues.haikuModel}}__name(getProviderModelSlotDefaults,"getProviderModelSlotDefaults");function applyProviderProfileToProcess(profile){if(delete process.env.ANTHROPIC_API_KEY,delete process.env.ANTHROPIC_AUTH_TOKEN,delete process.env.ANTHROPIC_BASE_URL,delete process.env.ANTHROPIC_MODEL,delete process.env.ANTHROPIC_SMALL_FAST_MODEL,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME,delete process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION,delete process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES,delete process.env.CLAUDE_CODE_SUBAGENT_MODEL,delete process.env.CLAVUE_API_DIALECT,delete process.env.MYCLAUDE_API_DIALECT,delete process.env.CLAUDE_CODE_API_DIALECT,delete process.env.CLAUDE_CODE_PROVIDER_DIALECT,delete process.env.CLAUDE_CODE_USE_BEDROCK,delete process.env.CLAUDE_CODE_USE_VERTEX,delete process.env.CLAUDE_CODE_USE_FOUNDRY,clear3PModelCapabilityOverrideCache(),clearBetasCaches(),!profile)return;process.env.ANTHROPIC_BASE_URL=normalizeAnthropicBaseUrl(profile.baseUrl),process.env.CLAVUE_API_DIALECT=normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),profile.authType==="auth_token"?process.env.ANTHROPIC_AUTH_TOKEN=profile.credential:process.env.ANTHROPIC_API_KEY=profile.credential;let routing=profile.modelRouting,slotDefaults=getProviderModelSlotDefaults(routing);if(routing.primaryModel){process.env.ANTHROPIC_MODEL=routing.primaryModel,process.env.ANTHROPIC_CUSTOM_MODEL_OPTION=routing.primaryModel;let name=getProviderModelDisplayName(routing.primaryModel,"primary"),description=getProviderModelDescription(routing.primaryModel,"primary");name&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME=name),description&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION=description)}if(routing.smallFastModel&&(process.env.ANTHROPIC_SMALL_FAST_MODEL=routing.smallFastModel),routing.subagentModel&&routing.subagentModel!=="inherit"&&(process.env.CLAUDE_CODE_SUBAGENT_MODEL=routing.subagentModel),slotDefaults.opusModel){process.env.ANTHROPIC_DEFAULT_OPUS_MODEL=slotDefaults.opusModel;let name=getProviderModelDisplayName(slotDefaults.opusModel,"opus"),description=getProviderModelDescription(slotDefaults.opusModel,"opus");name&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.opusModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES=capabilities)}if(slotDefaults.sonnetModel){process.env.ANTHROPIC_DEFAULT_SONNET_MODEL=slotDefaults.sonnetModel;let name=getProviderModelDisplayName(slotDefaults.sonnetModel,"sonnet"),description=getProviderModelDescription(slotDefaults.sonnetModel,"sonnet");name&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.sonnetModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES=capabilities)}if(slotDefaults.haikuModel){process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL=slotDefaults.haikuModel;let name=getProviderModelDisplayName(slotDefaults.haikuModel,"haiku"),description=getProviderModelDescription(slotDefaults.haikuModel,"haiku");name&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME=name),description&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION=description);let capabilities=serializeCapabilitiesForModel(profile,slotDefaults.haikuModel);capabilities&&(process.env.ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES=capabilities)}}__name(applyProviderProfileToProcess,"applyProviderProfileToProcess");function migrateNormalizedProviderBaseUrls(){let globalConfigChanged=!1,settingsChanged=!1,globalConfig2=getGlobalConfig(),secureStorage=getSecureStorage(),existingStorageData=secureStorage.read()??{},currentProviderSecrets=getStoredProviderSecretRecords(),nextProviderSecrets={...currentProviderSecrets},providerSecretsChanged=!1,nextProfiles=(Array.isArray(globalConfig2.clavueProviderProfiles)?globalConfig2.clavueProviderProfiles:[]).map(profile=>{if(!profile||typeof profile!="object")return profile;let nextProfile={...profile},nextBaseUrl=normalizeAnthropicBaseUrl(profile.baseUrl);nextBaseUrl&&nextBaseUrl!==profile.baseUrl&&(globalConfigChanged=!0,nextProfile.baseUrl=nextBaseUrl);let profileId=typeof profile.id=="string"?profile.id.trim():"",legacyCredential=typeof profile.credential=="string"?profile.credential.trim():"";if(profileId&&legacyCredential){let nextSecret={credential:legacyCredential,authType:normalizeAuthType(profile.authType)},currentSecret=currentProviderSecrets[profileId];(!currentSecret||currentSecret.credential!==nextSecret.credential||currentSecret.authType!==nextSecret.authType)&&(nextProviderSecrets[profileId]=nextSecret,providerSecretsChanged=!0),delete nextProfile.credential,globalConfigChanged=!0}return nextProfile});if(providerSecretsChanged&&!secureStorage.update({...existingStorageData,providerProfiles:Object.keys(nextProviderSecrets).length>0?nextProviderSecrets:void 0}).success)return;globalConfigChanged&&saveGlobalConfig(current=>({...current,clavueProviderProfiles:nextProfiles}));let settingsEnv=getSettingsEnv(),normalizedEnvBaseUrl=normalizeAnthropicBaseUrl(settingsEnv.ANTHROPIC_BASE_URL),settingsEnvUpdate={};settingsEnv.ANTHROPIC_BASE_URL&&normalizedEnvBaseUrl&&normalizedEnvBaseUrl!==settingsEnv.ANTHROPIC_BASE_URL&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_BASE_URL=normalizedEnvBaseUrl),settingsEnv.ANTHROPIC_API_KEY&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_API_KEY=void 0),settingsEnv.ANTHROPIC_AUTH_TOKEN&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_AUTH_TOKEN=void 0),settingsChanged&&updateSettingsForSource("userSettings",{env:settingsEnvUpdate});let liveBaseUrl=normalizeAnthropicBaseUrl(process.env.ANTHROPIC_BASE_URL);process.env.ANTHROPIC_BASE_URL&&liveBaseUrl&&liveBaseUrl!==process.env.ANTHROPIC_BASE_URL&&(process.env.ANTHROPIC_BASE_URL=liveBaseUrl)}__name(migrateNormalizedProviderBaseUrls,"migrateNormalizedProviderBaseUrls");function getStoredFusionEndpointSecrets(){let stored=getSecureStorage().read()?.fusionEndpointSecrets;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([endpointId,value])=>{let normalizedId=endpointId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}__name(getStoredFusionEndpointSecrets,"getStoredFusionEndpointSecrets");function normalizeFusionEndpoint(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:"");if(!id||!baseUrl)return null;let apiDialectMode=typeof raw.apiDialectMode=="string"&&(raw.apiDialectMode==="anthropic"||raw.apiDialectMode==="openai_responses")?raw.apiDialectMode:null,upstreamPathOverride=typeof raw.upstreamPathOverride=="string"&&["/v1/messages","/v1/responses","/v1/chat/completions",""].includes(raw.upstreamPathOverride)?raw.upstreamPathOverride:"",modelPrefixes=Array.isArray(raw.modelPrefixes)?raw.modelPrefixes.map(prefix=>typeof prefix=="string"?prefix.trim():"").filter(Boolean):[],routeKeys=Array.isArray(raw.routeKeys)?raw.routeKeys.map(key=>typeof key=="string"?key.trim().toLowerCase():"").filter(Boolean):[],secret=secrets[id],credential=secret?.credential??"";return{id,name:typeof raw.name=="string"?raw.name.trim():id,baseUrl,authType:normalizeAuthType(secret?.authType??(typeof raw.authType=="string"?raw.authType:void 0)),credential,modelPrefixes,...routeKeys.length>0&&{routeKeys},apiDialectMode,upstreamPathOverride}}__name(normalizeFusionEndpoint,"normalizeFusionEndpoint");function normalizeFusionConfig(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"";if(!id)return null;let endpoints=Array.isArray(raw.endpoints)?raw.endpoints.map(endpoint=>normalizeFusionEndpoint(endpoint,secrets)).filter(entry=>entry!==null):[];return{id,name:typeof raw.name=="string"?raw.name.trim():id,endpoints,createdAt:typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt:typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:Date.now()}}__name(normalizeFusionConfig,"normalizeFusionConfig");function getStoredFusionConfigs(){let config2=getProviderConfig(),secrets=getStoredFusionEndpointSecrets();return(Array.isArray(config2.clavueFusionConfigs)?config2.clavueFusionConfigs:[]).map(raw=>normalizeFusionConfig(raw,secrets)).filter(entry=>entry!==null)}__name(getStoredFusionConfigs,"getStoredFusionConfigs");function getStoredActiveFusionConfigId(){let config2=getProviderConfig();return typeof config2.clavueActiveFusionConfigId=="string"?config2.clavueActiveFusionConfigId.trim():""}__name(getStoredActiveFusionConfigId,"getStoredActiveFusionConfigId");function getFusionConfigs(){return getStoredFusionConfigs()}__name(getFusionConfigs,"getFusionConfigs");function getFusionConfigById(configId){return getFusionConfigs().find(config2=>config2.id===configId.trim())??null}__name(getFusionConfigById,"getFusionConfigById");function getActiveFusionConfigId(){return getStoredActiveFusionConfigId()||void 0}__name(getActiveFusionConfigId,"getActiveFusionConfigId");function getActiveFusionConfig(){let activeId=getActiveFusionConfigId();return activeId?getFusionConfigById(activeId):null}__name(getActiveFusionConfig,"getActiveFusionConfig");function resolveFusionEndpointForModel(config2,model,routeKeys=[]){let normalizedModel=model.trim().toLowerCase(),normalizedRouteKeys=routeKeys.map(key=>key.trim().toLowerCase()).filter(Boolean);if(!normalizedModel&&normalizedRouteKeys.length===0)return null;if(normalizedRouteKeys.length>0)for(let routeKey of normalizedRouteKeys){let routeMatch=config2.endpoints.find(endpoint=>(endpoint.routeKeys??[]).some(key=>key.trim().toLowerCase()===routeKey))??null;if(routeMatch)return routeMatch}if(!normalizedModel)return null;let bestMatch=null,bestPrefixLen=-1;for(let endpoint of config2.endpoints){for(let prefix of endpoint.modelPrefixes){let normalizedPrefix=prefix.toLowerCase();normalizedModel.startsWith(normalizedPrefix)&&normalizedPrefix.length>bestPrefixLen&&(bestPrefixLen=normalizedPrefix.length,bestMatch=endpoint)}endpoint.modelPrefixes.length===0&&bestMatch===null&&(bestMatch=endpoint)}return bestMatch}__name(resolveFusionEndpointForModel,"resolveFusionEndpointForModel");function getActiveFusionEndpointForModel(model,routeKeys=[]){try{let config2=getActiveFusionConfig();return config2?resolveFusionEndpointForModel(config2,model,routeKeys):null}catch{return null}}__name(getActiveFusionEndpointForModel,"getActiveFusionEndpointForModel");init_state();init_debug();init_envUtils();init_debug();init_envUtils();init_privacyLevel();init_slowOperations();var ModelCapabilitySchema=lazySchema(()=>external_exports.object({id:external_exports.string(),max_input_tokens:external_exports.number().optional(),max_tokens:external_exports.number().optional()}).strip()),CacheFileSchema=lazySchema(()=>external_exports.object({models:external_exports.array(ModelCapabilitySchema()),timestamp:external_exports.number()}));var loadCache=memoize_default(path9=>{try{let raw=readFileSync7(path9,"utf-8"),parsed=CacheFileSchema().safeParse(safeParseJSON(raw,!1));return parsed.success?parsed.data.models:null}catch{return null}},path9=>path9);function is1mContextDisabled(){return isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_1M_CONTEXT)}__name(is1mContextDisabled,"is1mContextDisabled");function has1mContext(model){return is1mContextDisabled()?!1:/\[1m\]/i.test(model)}__name(has1mContext,"has1mContext");init_envUtils();function modelSupportsISP(model){let supported3P=get3PModelCapabilityOverride(model,"interleaved_thinking");if(supported3P!==void 0)return supported3P;let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")}__name(modelSupportsISP,"modelSupportsISP");function vertexModelSupportsWebSearch(model){let canonical=getCanonicalName(model);return canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}__name(vertexModelSupportsWebSearch,"vertexModelSupportsWebSearch");function modelSupportsContextManagement(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}__name(modelSupportsContextManagement,"modelSupportsContextManagement");function modelSupportsStructuredOutputs(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider!=="firstParty"&&provider!=="foundry"?!1:canonical.includes("claude-sonnet-4-6")||canonical.includes("claude-sonnet-4-5")||canonical.includes("claude-opus-4-1")||canonical.includes("claude-opus-4-5")||canonical.includes("claude-opus-4-6")||canonical.includes("claude-haiku-4-5")}__name(modelSupportsStructuredOutputs,"modelSupportsStructuredOutputs");function shouldIncludeFirstPartyOnlyBetas(){return(getAPIProvider()==="firstParty"||getAPIProvider()==="foundry")&&!isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}__name(shouldIncludeFirstPartyOnlyBetas,"shouldIncludeFirstPartyOnlyBetas");var getAllModelBetas=memoize_default(model=>{let betaHeaders=[],isHaiku=getCanonicalName(model).includes("haiku"),provider=getAPIProvider(),includeFirstPartyOnlyBetas=shouldIncludeFirstPartyOnlyBetas();isHaiku||(betaHeaders.push(CLAUDE_CODE_20250219_BETA_HEADER),process.env.USER_TYPE==="ant"&&process.env.CLAUDE_CODE_ENTRYPOINT==="cli"&&CLI_INTERNAL_BETA_HEADER&&betaHeaders.push(CLI_INTERNAL_BETA_HEADER)),isClaudeAISubscriber()&&betaHeaders.push(OAUTH_BETA_HEADER),has1mContext(model)&&betaHeaders.push(CONTEXT_1M_BETA_HEADER),!isEnvTruthy(process.env.DISABLE_INTERLEAVED_THINKING)&&modelSupportsISP(model)&&betaHeaders.push(INTERLEAVED_THINKING_BETA_HEADER),includeFirstPartyOnlyBetas&&modelSupportsISP(model)&&!getIsNonInteractiveSession()&&getInitialSettings().showThinkingSummaries!==!0&&betaHeaders.push(REDACT_THINKING_BETA_HEADER),SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER&&process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&!isEnvDefinedFalsy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)&&(isEnvTruthy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)||getFeatureValue_CACHED_MAY_BE_STALE("tengu_slate_prism",!1))&&betaHeaders.push(SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER);let contextManagementEnabled=modelSupportsContextManagement(model);shouldIncludeFirstPartyOnlyBetas()&&contextManagementEnabled&&betaHeaders.push(CONTEXT_MANAGEMENT_BETA_HEADER);let strictToolsEnabled=checkStatsigFeatureGate_CACHED_MAY_BE_STALE("tengu_tool_pear"),tokenEfficientToolsEnabled=!strictToolsEnabled&&getFeatureValue_CACHED_MAY_BE_STALE("tengu_amber_json_tools",!1);return includeFirstPartyOnlyBetas&&modelSupportsStructuredOutputs(model)&&strictToolsEnabled&&betaHeaders.push(STRUCTURED_OUTPUTS_BETA_HEADER),process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&tokenEfficientToolsEnabled&&betaHeaders.push(TOKEN_EFFICIENT_TOOLS_BETA_HEADER),provider==="vertex"&&vertexModelSupportsWebSearch(model)&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),provider==="foundry"&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),includeFirstPartyOnlyBetas&&betaHeaders.push(PROMPT_CACHING_SCOPE_BETA_HEADER),process.env.ANTHROPIC_BETAS&&betaHeaders.push(...process.env.ANTHROPIC_BETAS.split(",").map(_=>_.trim()).filter(Boolean)),betaHeaders}),getModelBetas=memoize_default(model=>{let modelBetas=getAllModelBetas(model);return getAPIProvider()==="bedrock"?modelBetas.filter(b=>!BEDROCK_EXTRA_PARAMS_HEADERS.has(b)):modelBetas}),getBedrockExtraBodyParamsBetas=memoize_default(model=>getAllModelBetas(model).filter(b=>BEDROCK_EXTRA_PARAMS_HEADERS.has(b)));function clearBetasCaches(){getAllModelBetas.cache?.clear?.(),getModelBetas.cache?.clear?.(),getBedrockExtraBodyParamsBetas.cache?.clear?.()}__name(clearBetasCaches,"clearBetasCaches");init_debug();init_envUtils();init_errors2();init_execFileNoThrow();var _lockfile;function getLockfile(){return _lockfile||(_lockfile=require_proper_lockfile()),_lockfile}__name(getLockfile,"getLockfile");function lockSync(file2,options){return getLockfile().lockSync(file2,options)}__name(lockSync,"lockSync");init_log3();init_memoize2();init_envUtils();var legacyApiKeyPrefetch=null;function getLegacyApiKeyPrefetchResult(){return legacyApiKeyPrefetch}__name(getLegacyApiKeyPrefetchResult,"getLegacyApiKeyPrefetchResult");function sleep2(ms,signal,opts){return new Promise((resolve9,reject2)=>{if(signal?.aborted){opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9();return}let timer=setTimeout((signal2,onAbort2,resolve10)=>{signal2?.removeEventListener("abort",onAbort2),resolve10()},ms,signal,onAbort,resolve9);function onAbort(){clearTimeout(timer),opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9()}__name(onAbort,"onAbort"),signal?.addEventListener("abort",onAbort,{once:!0}),opts?.unref&&timer.unref()})}__name(sleep2,"sleep");init_slowOperations();var DEFAULT_API_KEY_HELPER_TTL=300*1e3;function isManagedOAuthContext(){return isEnvTruthy(process.env.CLAUDE_CODE_REMOTE)||process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"}__name(isManagedOAuthContext,"isManagedOAuthContext");function isAnthropicAuthEnabled(){if(isBareMode())return!1;if(process.env.ANTHROPIC_UNIX_SOCKET)return!!process.env.CLAUDE_CODE_OAUTH_TOKEN;let is3P=isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)||isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)||isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY),apiKeyHelper=(getSettings_DEPRECATED()||{}).apiKeyHelper,hasExternalAuthToken=process.env.ANTHROPIC_AUTH_TOKEN||apiKeyHelper||process.env.CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR,{source:apiKeySource}=getAnthropicApiKeyWithSource({skipRetrievingKeyFromApiKeyHelper:!0}),hasExternalApiKey=apiKeySource==="ANTHROPIC_API_KEY"||apiKeySource==="apiKeyHelper";return!(is3P||hasExternalAuthToken&&!isManagedOAuthContext()||hasExternalApiKey&&!isManagedOAuthContext())}__name(isAnthropicAuthEnabled,"isAnthropicAuthEnabled");function getAnthropicApiKey(){let{key}=getAnthropicApiKeyWithSource();return key}__name(getAnthropicApiKey,"getAnthropicApiKey");function getSavedProviderApiKey(){let profile=getSavedActiveProviderProfile();if(!profile||profile.authType!=="api_key")return null;let credential=profile.credential.trim();return credential?{key:credential,source:"ANTHROPIC_API_KEY"}:null}__name(getSavedProviderApiKey,"getSavedProviderApiKey");function isPlaceholderAnthropicApiKey(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?normalizedValue==="your-api-key-here"||normalizedValue==="your_api_key_here"||normalizedValue==="your-api-key"||normalizedValue==="your_api_key"||normalizedValue==="api-key-here"||normalizedValue==="api_key_here"||normalizedValue==="placeholder"||/^sk(?:-[a-z0-9_-]+)?[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^sk(?:-[a-z0-9_-]+)?[-_]?(example|placeholder|dummy|fake)$/iu.test(normalizedValue):!1}__name(isPlaceholderAnthropicApiKey,"isPlaceholderAnthropicApiKey");function getAnthropicApiKeyWithSource(opts={}){if(isBareMode()){let bareApiKeyEnv=process.env.ANTHROPIC_API_KEY&&!isPlaceholderAnthropicApiKey(process.env.ANTHROPIC_API_KEY)?process.env.ANTHROPIC_API_KEY:void 0;return bareApiKeyEnv?{key:bareApiKeyEnv,source:"ANTHROPIC_API_KEY"}:getConfiguredApiKeyHelper()?{key:opts.skipRetrievingKeyFromApiKeyHelper?null:getApiKeyFromApiKeyHelperCached(),source:"apiKeyHelper"}:{key:null,source:"none"}}let apiKeyEnv=isRunningOnHomespace()?void 0:process.env.ANTHROPIC_API_KEY,usableApiKeyEnv=apiKeyEnv&&!isPlaceholderAnthropicApiKey(apiKeyEnv)?apiKeyEnv:void 0;if(preferThirdPartyAuthentication()&&usableApiKeyEnv)return{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"};if(isEnvTruthy(process.env.CI)||process.env.NODE_ENV==="test"){let apiKeyFromFd2=getApiKeyFromFileDescriptor();if(apiKeyFromFd2)return{key:apiKeyFromFd2,source:"ANTHROPIC_API_KEY"};if(!usableApiKeyEnv&&!process.env.CLAUDE_CODE_OAUTH_TOKEN&&!process.env.CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR)throw new Error("ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN env var is required");return usableApiKeyEnv?{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"}:{key:null,source:"none"}}if(!process.env.ANTHROPIC_UNIX_SOCKET){let providerApiKey=getSavedProviderApiKey();if(providerApiKey)return providerApiKey}if(usableApiKeyEnv&&getGlobalConfig().customApiKeyResponses?.approved?.includes(normalizeApiKeyForConfig(usableApiKeyEnv)))return{key:usableApiKeyEnv,source:"ANTHROPIC_API_KEY"};let apiKeyFromFd=getApiKeyFromFileDescriptor();if(apiKeyFromFd)return{key:apiKeyFromFd,source:"ANTHROPIC_API_KEY"};if(getConfiguredApiKeyHelper())return opts.skipRetrievingKeyFromApiKeyHelper?{key:null,source:"apiKeyHelper"}:{key:getApiKeyFromApiKeyHelperCached(),source:"apiKeyHelper"};let apiKeyFromConfigOrMacOSKeychain=getApiKeyFromConfigOrMacOSKeychain();return apiKeyFromConfigOrMacOSKeychain||{key:null,source:"none"}}__name(getAnthropicApiKeyWithSource,"getAnthropicApiKeyWithSource");function getConfiguredApiKeyHelper(){return isBareMode()?getSettingsForSource("flagSettings")?.apiKeyHelper:(getSettings_DEPRECATED()||{}).apiKeyHelper}__name(getConfiguredApiKeyHelper,"getConfiguredApiKeyHelper");function getConfiguredAwsAuthRefresh(){return(getSettings_DEPRECATED()||{}).awsAuthRefresh}__name(getConfiguredAwsAuthRefresh,"getConfiguredAwsAuthRefresh");function isAwsAuthRefreshFromProjectSettings(){let awsAuthRefresh=getConfiguredAwsAuthRefresh();if(!awsAuthRefresh)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.awsAuthRefresh===awsAuthRefresh||localSettings?.awsAuthRefresh===awsAuthRefresh}__name(isAwsAuthRefreshFromProjectSettings,"isAwsAuthRefreshFromProjectSettings");function getConfiguredAwsCredentialExport(){return(getSettings_DEPRECATED()||{}).awsCredentialExport}__name(getConfiguredAwsCredentialExport,"getConfiguredAwsCredentialExport");function isAwsCredentialExportFromProjectSettings(){let awsCredentialExport=getConfiguredAwsCredentialExport();if(!awsCredentialExport)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.awsCredentialExport===awsCredentialExport||localSettings?.awsCredentialExport===awsCredentialExport}__name(isAwsCredentialExportFromProjectSettings,"isAwsCredentialExportFromProjectSettings");var _apiKeyHelperCache=null;function getApiKeyFromApiKeyHelperCached(){return _apiKeyHelperCache?.value??null}__name(getApiKeyFromApiKeyHelperCached,"getApiKeyFromApiKeyHelperCached");var DEFAULT_AWS_STS_TTL=3600*1e3;async function runAwsAuthRefresh(){let awsAuthRefresh=getConfiguredAwsAuthRefresh();if(!awsAuthRefresh)return!1;if(isAwsAuthRefreshFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("awsAuthRefresh invoked before trust check",error40),logEvent("tengu_awsAuthRefresh_missing_trust",{}),!1}try{return logForDebugging("Fetching AWS caller identity for AWS auth refresh command"),await checkStsCallerIdentity(),logForDebugging("Fetched AWS caller identity, skipping AWS auth refresh command"),!1}catch{return refreshAwsAuth(awsAuthRefresh)}}__name(runAwsAuthRefresh,"runAwsAuthRefresh");var AWS_AUTH_REFRESH_TIMEOUT_MS=180*1e3;function refreshAwsAuth(awsAuthRefresh){logForDebugging("Running AWS auth refresh command");let authStatusManager=AwsAuthStatusManager.getInstance();return authStatusManager.startAuthentication(),new Promise(resolve9=>{let refreshProc=exec(awsAuthRefresh,{timeout:AWS_AUTH_REFRESH_TIMEOUT_MS});refreshProc.stdout.on("data",data=>{let output=data.toString().trim();output&&(authStatusManager.addOutput(output),logForDebugging(output,{level:"debug"}))}),refreshProc.stderr.on("data",data=>{let error40=data.toString().trim();error40&&(authStatusManager.setError(error40),logForDebugging(error40,{level:"error"}))}),refreshProc.on("close",(code,signal)=>{if(code===0)logForDebugging("AWS auth refresh completed successfully"),authStatusManager.endAuthentication(!0),resolve9(!0);else{let message=signal==="SIGTERM"?source_default.red("AWS auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):source_default.red("Error running awsAuthRefresh (in settings or ~/.clavue/.clavue.json):");console.error(message),authStatusManager.endAuthentication(!1),resolve9(!1)}})})}__name(refreshAwsAuth,"refreshAwsAuth");async function getAwsCredsFromCredentialExport(){let awsCredentialExport=getConfiguredAwsCredentialExport();if(!awsCredentialExport)return null;if(isAwsCredentialExportFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("awsCredentialExport invoked before trust check",error40),logEvent("tengu_awsCredentialExport_missing_trust",{}),null}try{return logForDebugging("Fetching AWS caller identity for credential export command"),await checkStsCallerIdentity(),logForDebugging("Fetched AWS caller identity, skipping AWS credential export command"),null}catch{try{logForDebugging("Running AWS credential export command");let result2=await execa(awsCredentialExport,{shell:!0,reject:!1});if(result2.exitCode!==0||!result2.stdout)throw new Error("awsCredentialExport did not return a valid value");let awsOutput=jsonParse(result2.stdout.trim());if(!isValidAwsStsOutput(awsOutput))throw new Error("awsCredentialExport did not return valid AWS STS output structure");return logForDebugging("AWS credentials retrieved from awsCredentialExport"),{accessKeyId:awsOutput.Credentials.AccessKeyId,secretAccessKey:awsOutput.Credentials.SecretAccessKey,sessionToken:awsOutput.Credentials.SessionToken}}catch(e2){let message=source_default.red("Error getting AWS credentials from awsCredentialExport (in settings or ~/.clavue/.clavue.json):");return e2 instanceof Error?console.error(message,e2.message):console.error(message,e2),null}}}__name(getAwsCredsFromCredentialExport,"getAwsCredsFromCredentialExport");var refreshAndGetAwsCredentials=memoizeWithTTLAsync(async()=>{let refreshed2=await runAwsAuthRefresh(),credentials=await getAwsCredsFromCredentialExport();return(refreshed2||credentials)&&await clearAwsIniCache(),credentials},DEFAULT_AWS_STS_TTL);function getConfiguredGcpAuthRefresh(){return(getSettings_DEPRECATED()||{}).gcpAuthRefresh}__name(getConfiguredGcpAuthRefresh,"getConfiguredGcpAuthRefresh");function isGcpAuthRefreshFromProjectSettings(){let gcpAuthRefresh=getConfiguredGcpAuthRefresh();if(!gcpAuthRefresh)return!1;let projectSettings=getSettingsForSource("projectSettings"),localSettings=getSettingsForSource("localSettings");return projectSettings?.gcpAuthRefresh===gcpAuthRefresh||localSettings?.gcpAuthRefresh===gcpAuthRefresh}__name(isGcpAuthRefreshFromProjectSettings,"isGcpAuthRefreshFromProjectSettings");var GCP_CREDENTIALS_CHECK_TIMEOUT_MS=5e3;async function checkGcpCredentialsValid(){try{let{GoogleAuth}=await Promise.resolve().then(()=>__toESM(require_src5())),auth=new GoogleAuth({scopes:["https://www.googleapis.com/auth/cloud-platform"]}),probe=(async()=>{await(await auth.getClient()).getAccessToken()})(),timeout=sleep2(GCP_CREDENTIALS_CHECK_TIMEOUT_MS).then(()=>{throw new GcpCredentialsTimeoutError("GCP credentials check timed out")});return await Promise.race([probe,timeout]),!0}catch{return!1}}__name(checkGcpCredentialsValid,"checkGcpCredentialsValid");var DEFAULT_GCP_CREDENTIAL_TTL=3600*1e3;async function runGcpAuthRefresh(){let gcpAuthRefresh=getConfiguredGcpAuthRefresh();if(!gcpAuthRefresh)return!1;if(isGcpAuthRefreshFromProjectSettings()&&!checkHasTrustDialogAccepted()&&!getIsNonInteractiveSession()){let error40=new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/anthropics/claude-code/issues.");return logAntError("gcpAuthRefresh invoked before trust check",error40),logEvent("tengu_gcpAuthRefresh_missing_trust",{}),!1}try{if(logForDebugging("Checking GCP credentials validity for auth refresh"),await checkGcpCredentialsValid())return logForDebugging("GCP credentials are valid, skipping auth refresh command"),!1}catch{}return refreshGcpAuth(gcpAuthRefresh)}__name(runGcpAuthRefresh,"runGcpAuthRefresh");var GCP_AUTH_REFRESH_TIMEOUT_MS=180*1e3;function refreshGcpAuth(gcpAuthRefresh){logForDebugging("Running GCP auth refresh command");let authStatusManager=AwsAuthStatusManager.getInstance();return authStatusManager.startAuthentication(),new Promise(resolve9=>{let refreshProc=exec(gcpAuthRefresh,{timeout:GCP_AUTH_REFRESH_TIMEOUT_MS});refreshProc.stdout.on("data",data=>{let output=data.toString().trim();output&&(authStatusManager.addOutput(output),logForDebugging(output,{level:"debug"}))}),refreshProc.stderr.on("data",data=>{let error40=data.toString().trim();error40&&(authStatusManager.setError(error40),logForDebugging(error40,{level:"error"}))}),refreshProc.on("close",(code,signal)=>{if(code===0)logForDebugging("GCP auth refresh completed successfully"),authStatusManager.endAuthentication(!0),resolve9(!0);else{let message=signal==="SIGTERM"?source_default.red("GCP auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):source_default.red("Error running gcpAuthRefresh (in settings or ~/.clavue/.clavue.json):");console.error(message),authStatusManager.endAuthentication(!1),resolve9(!1)}})})}__name(refreshGcpAuth,"refreshGcpAuth");var refreshGcpCredentialsIfNeeded=memoizeWithTTLAsync(async()=>await runGcpAuthRefresh(),DEFAULT_GCP_CREDENTIAL_TTL);var getApiKeyFromConfigOrMacOSKeychain=memoize_default(()=>{if(isBareMode())return null;if(process.platform==="darwin"&&shouldUseMacOSKeychain()){let prefetch=getLegacyApiKeyPrefetchResult();if(prefetch){if(prefetch.stdout)return{key:prefetch.stdout,source:"/login managed key"}}else{let storageServiceName=getMacOsKeychainStorageServiceName();try{let result2=execSyncWithDefaults_DEPRECATED(`security find-generic-password -a $USER -w -s "${storageServiceName}"`);if(result2)return{key:result2,source:"/login managed key"}}catch(e2){logError2(e2)}}}let config2=getGlobalConfig();return config2.primaryApiKey?{key:config2.primaryApiKey,source:"/login managed key"}:null});var getClaudeAIOAuthTokens=memoize_default(()=>{if(isBareMode())return null;if(process.env.CLAUDE_CODE_OAUTH_TOKEN)return{accessToken:process.env.CLAUDE_CODE_OAUTH_TOKEN,refreshToken:null,expiresAt:null,scopes:["user:inference"],subscriptionType:null,rateLimitTier:null};let oauthTokenFromFd=getOAuthTokenFromFileDescriptor();if(oauthTokenFromFd)return{accessToken:oauthTokenFromFd,refreshToken:null,expiresAt:null,scopes:["user:inference"],subscriptionType:null,rateLimitTier:null};try{let oauthData=getSecureStorage().read()?.\u0063laudeAiOauth;return oauthData?.accessToken?oauthData:null}catch(error40){return logError2(error40),null}});function isClaudeAISubscriber(){return isAnthropicAuthEnabled()?shouldUseClaudeAIAuth(getClaudeAIOAuthTokens()?.scopes):!1}__name(isClaudeAISubscriber,"isClaudeAISubscriber");function getOauthAccountInfo(){return isAnthropicAuthEnabled()?getGlobalConfig().oauthAccount:void 0}__name(getOauthAccountInfo,"getOauthAccountInfo");function getSubscriptionType(){if(shouldUseMockSubscription())return getMockSubscriptionType();if(!isAnthropicAuthEnabled())return null;let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?oauthTokens.subscriptionType??null:null}__name(getSubscriptionType,"getSubscriptionType");function getRateLimitTier(){if(!isAnthropicAuthEnabled())return null;let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?oauthTokens.rateLimitTier??null:null}__name(getRateLimitTier,"getRateLimitTier");var DEFAULT_OTEL_HEADERS_DEBOUNCE_MS=1740*1e3;var GcpCredentialsTimeoutError=class extends Error{static{__name(this,"GcpCredentialsTimeoutError")}};import{AsyncLocalStorage as AsyncLocalStorage2}from"async_hooks";var workloadStorage=new AsyncLocalStorage2;function getAuthHeaders(){if(isClaudeAISubscriber()){let oauthTokens=getClaudeAIOAuthTokens();return oauthTokens?.accessToken?{headers:{Authorization:`Bearer ${oauthTokens.accessToken}`,"anthropic-beta":OAUTH_BETA_HEADER}}:{headers:{},error:"No OAuth token available"}}let apiKey=getAnthropicApiKey();return apiKey?{headers:{"x-api-key":apiKey}}:{headers:{},error:"No API key available"}}__name(getAuthHeaders,"getAuthHeaders");init_log3();init_signal();init_slowOperations();init_execa();init_memoize();init_state();init_cwd2();init_envUtils();var cachedEmail=null;var getCoreUserData=memoize_default(includeAnalyticsMetadata=>{let deviceId=getOrCreateUserID(),config2=getGlobalConfig(),subscriptionType,rateLimitTier,firstTokenTime;if(includeAnalyticsMetadata&&(subscriptionType=getSubscriptionType()??void 0,rateLimitTier=getRateLimitTier()??void 0,subscriptionType&&config2.\u0063laudeCodeFirstTokenDate)){let configFirstTokenTime=new Date(config2.\u0063laudeCodeFirstTokenDate).getTime();isNaN(configFirstTokenTime)||(firstTokenTime=configFirstTokenTime)}let oauthAccount=getOauthAccountInfo(),organizationUuid=oauthAccount?.organizationUuid,accountUuid=oauthAccount?.accountUuid;return{deviceId,sessionId:getSessionId(),email:getEmail(),appVersion:"2.1.88",platform:getHostPlatformForAnalytics(),organizationUuid,accountUuid,userType:process.env.USER_TYPE,subscriptionType,rateLimitTier,firstTokenTime,...isEnvTruthy(process.env.GITHUB_ACTIONS)&&{githubActionsMetadata:{actor:process.env.GITHUB_ACTOR,actorId:process.env.GITHUB_ACTOR_ID,repository:process.env.GITHUB_REPOSITORY,repositoryId:process.env.GITHUB_REPOSITORY_ID,repositoryOwner:process.env.GITHUB_REPOSITORY_OWNER,repositoryOwnerId:process.env.GITHUB_REPOSITORY_OWNER_ID}}}});function getUserForGrowthBook(){return getCoreUserData(!0)}__name(getUserForGrowthBook,"getUserForGrowthBook");function getEmail(){if(cachedEmail!==null)return cachedEmail;let oauthAccount=getOauthAccountInfo();if(oauthAccount?.emailAddress)return oauthAccount.emailAddress;if(process.env.USER_TYPE==="ant"&&process.env.COO_CREATOR)return`${process.env.COO_CREATOR}@anthropic.com`}__name(getEmail,"getEmail");var getGitEmail=memoize_default(async()=>{let result2=await execa("git config --get user.email",{shell:!0,reject:!1,cwd:getCwd()});return result2.exitCode===0&&result2.stdout?result2.stdout.trim():void 0});import{resourceFromAttributes}from"@opentelemetry/resources";import{BatchLogRecordProcessor,LoggerProvider}from"@opentelemetry/sdk-logs";import{ATTR_SERVICE_NAME,ATTR_SERVICE_VERSION}from"@opentelemetry/semantic-conventions";import{randomUUID as randomUUID4}from"crypto";init_debug();init_log3();init_slowOperations();init_envUtils();init_privacyLevel();function isAnalyticsDisabled(){return process.env.NODE_ENV==="test"||isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)||isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)||isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)||isTelemetryDisabled()?!0:!isEnvTruthy(process.env.CLAVUE_TELEMETRY)}__name(isAnalyticsDisabled,"isAnalyticsDisabled");import{ExportResultCode}from"@opentelemetry/core";import{randomUUID as randomUUID3}from"crypto";init_state();init_debug();init_envUtils();init_errors2();init_log3();init_slowOperations();init_memoize();init_memoize();import{stat as stat3}from"fs/promises";init_envUtils();init_execFileNoThrow();init_execFileNoThrow();async function getAncestorCommandsAsync(pid,maxDepth=10){if(process.platform==="win32"){let script2=`
|
|
226
226
|
$currentPid = ${String(pid)}
|
|
227
227
|
$commands = @()
|
|
228
228
|
for ($i = 0; $i -lt ${maxDepth}; $i++) {
|