@aggroot-team/aggroot 1.7.2 → 1.7.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/package.json +2 -3
- package/scripts/fix-workspace-deps.mjs +1 -1
package/dist/index.cjs
CHANGED
|
@@ -44406,7 +44406,7 @@ Good skills: trigger conditions, numbered steps with exact commands, pitfalls se
|
|
|
44406
44406
|
[API \u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u7B49\u5F85\u91CD\u8BD5 ${y+1}/${f}...]
|
|
44407
44407
|
`},await new Promise(M=>setTimeout(M,N)),w=!1;break}yield P;return}w=!0,yield P}if(w)return;if(!w&&y<f)continue;return}else{let w=(await this.client.chat.completions.create(a,S)).choices[0]?.message?.content;w&&(yield{type:"content",content:w});return}}catch(S){if(S instanceof Error&&S.name==="AbortError")return;let x=S instanceof Error?S.message:String(S);if(Ad(`API_ERROR model=${a.model} error=${x} attempt=${y}`),this.isRetryableError(x)&&y<f){let w=Math.min(h*(y+1),3e4);yield{type:"content",content:`
|
|
44408
44408
|
[API \u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u7B49\u5F85\u91CD\u8BD5 ${y+1}/${f}...]
|
|
44409
|
-
`},await new Promise(P=>setTimeout(P,w));continue}yield{type:"error",error:x};return}}prepareMessages(e){for(let s of e)s.role==="assistant"&&s.metadata?.reasoningContent&&(s.reasoning_content=s.metadata.reasoningContent);let r=e.some(s=>s.role==="assistant"&&s.reasoning_content);if(r&&e.some(a=>a.role==="assistant"&&!a.reasoning_content))for(let a of e)a.role==="assistant"&&delete a.reasoning_content;if(this.enableThinking&&!r)for(let s of e)s.role==="assistant"&&!s.reasoning_content&&(s.reasoning_content="");for(let s of e)s.role==="assistant"&&(s.content===null||s.content===void 0)&&(s.content="");return e}async*handleStreamResponse(e){let r=new Map,s=0,a=0,u=0,f=0,h=!1,y=null,S;for await(let x of e){if(s++,s===1&&(f=Date.now()),x.usage){let N=x.usage.prompt_cache_hit_tokens??x.usage.cached_tokens??x.usage.prompt_tokens_details?.cached_tokens??void 0;S={promptTokens:x.usage.prompt_tokens??0,completionTokens:x.usage.completion_tokens??0,totalTokens:x.usage.total_tokens??0,cachedTokens:N}}let w=x.choices[0]?.delta,P=x.choices[0]?.finish_reason;if(P&&(h=!0,y=P),!w&&!P)continue;let O=w?.reasoning_content;if(O&&(u++,yield{type:"reasoning",content:O}),w?.content&&(a++,Ad(`CONTENT chunk=${s} text=${JSON.stringify(w.content).slice(0,200)}`),yield{type:"content",content:w.content}),w?.tool_calls&&w.tool_calls.length>0)for(let N of w.tool_calls){let M=N.index??0,V=r.get(M);V||(V={id:"",name:"",arguments:""},r.set(M,V)),N.id&&(V.id=N.id),N.function?.name&&(V.name=V.name||N.function.name),N.function?.arguments&&(V.arguments+=N.function.arguments)}}if(Ad(`STREAM_DONE chunks=${s} contentChunks=${a} reasoningChunks=${u} toolCalls=${r.size} durationMs=${f?Date.now()-f:0}`),s===0||a===0&&u===0&&r.size===0&&!h){yield{type:"error",error:`\u6A21\u578B\u8FD4\u56DE\u7A7A\u54CD\u5E94 (${s} chunks)\u3002\u53EF\u80FD\u662F\u6A21\u578B\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u6216\u5207\u6362\u6A21\u578B\u3002`};return}if(r.size>0){let x=Array.from(r.values()).filter(w=>w.id&&w.name).map(w=>({id:w.id,type:"function",function:{name:w.name,arguments:w.arguments}}));x.length>0&&(yield{type:"tool_call",toolCalls:x})}yield{type:"done",finishReason:y??"stop",usage:S}}}});var y_t={};Zl(y_t,{default:()=>zOe});var g_t,zOe,v_t=Dt(()=>{"use strict";B();Ihn();g_t=[{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextLength:1e6,maxOutput:128e3,description:"MiMo-V2-Pro \u65D7\u8230\u7248\uFF0C1M \u4E0A\u4E0B\u6587\uFF0C\u652F\u6301\u6DF1\u5EA6\u601D\u8003\u6A21\u5F0F\uFF08Token Plan \u7528\u6237\u9996\u9009\uFF09",supportsTools:!0,isReasoningModel:!0,pricing:{input:1,output:2}},{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextLength:1e6,maxOutput:128e3,description:"MiMo-V2.5-Pro \u6700\u65B0\u65D7\u8230\uFF0C1M \u4E0A\u4E0B\u6587\uFF0C\u539F\u751F\u591A\u6A21\u6001\u652F\u6301",supportsTools:!0,isReasoningModel:!0,pricing:{input:1.5,output:3}},{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextLength:256e3,maxOutput:64e3,description:"MiMo-V2-Flash \u8F7B\u91CF\u5FEB\u901F\u7248\uFF08\u4EC5\u6309\u91CF\u8BA1\u8D39\u7528\u6237\u53EF\u7528\uFF0CToken Plan \u4E0D\u652F\u6301\uFF09",supportsTools:!0,isReasoningModel:!1,pricing:{input:.5,output:1}},{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextLength:256e3,maxOutput:128e3,description:"MiMo-V2-Omni \u591A\u6A21\u6001\u6A21\u578B\uFF0C\u652F\u6301\u89C6\u89C9\u7406\u89E3",supportsTools:!0,isReasoningModel:!1,pricing:{input:2,output:4}}],zOe=class{manifest={id:"@aggroot/mimo-model",name:"MiMo Model",version:"1.0.1",description:"Xiaomi MiMo AI model integration for AggRoot",main:"dist/index.js",extensionPoints:[{type:"model",count:g_t.length,description:"Xiaomi MiMo models"}]};async initialize(e){let{models:r,config:s,logger:a}=e,u=s.apiKey??process.env.MIMO_API_KEY;u||a.warn("No API key configured. Set MIMO_API_KEY env var or pass config.apiKey");let f=s.baseUrl??process.env.MIMO_BASE_URL??"https://api.xiaomimimo.com/v1";for(let h of g_t){let y={id:`${this.manifest.id}:${h.id}`,type:"model",pluginId:this.manifest.id,modelId:h.id,name:h.name,description:h.description,provider:"mimo",capabilities:h.supportsTools?["chat","tools","streaming"]:["chat","streaming"],contextLength:h.contextLength,createClient:S=>{let x={apiKey:S.apiKey??u,baseUrl:S.baseUrl??f,modelId:h.id,provider:"mimo",contextLength:h.contextLength,supportsTools:h.supportsTools,isReasoningModel:h.isReasoningModel,pricing:h.pricing?{inputTokens:h.pricing.input,outputTokens:h.pricing.output}:void 0,enableThinking:h.isReasoningModel};return new WOe(x)}};r.register(y)}a.debug(`MiMo model plugin initialized with ${g_t.length} models`)}async activate(){}async deactivate(){}async dispose(){}}});var S_t={};Zl(S_t,{default:()=>BOe});var b_t,BOe,T_t=Dt(()=>{"use strict";B();mP();b_t=[{id:"deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",name:"DeepSeek-R1-0528-Qwen3-8B",contextLength:128e3,description:"\u4ECEDeepSeek-R1-0528\u84B8\u998F\u5230Qwen3 8B\uFF0CAIME 2024\u8D85\u8D8AQwen3 8B 10%",supportsTools:!1,isReasoningModel:!0,supportsVision:!1},{id:"Qwen/Qwen2.5-7B-Instruct",name:"Qwen2.5 7B Instruct",contextLength:32768,description:"\u963F\u91CC\u901A\u4E49\u5343\u95EE2.5\uFF0C\u7F16\u7801/\u6570\u5B66\u589E\u5F3A\uFF0C\u591A\u8BED\u8A00\u652F\u6301",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"Qwen/Qwen3-8B",name:"Qwen3 8B",contextLength:128e3,description:"\u901A\u4E49\u5343\u95EE3\uFF0C8.2B\u53C2\u6570\uFF0C\u601D\u8003/\u975E\u601D\u8003\u6A21\u5F0F\u65E0\u7F1D\u5207\u6362",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"deepseek-ai/DeepSeek-OCR",name:"DeepSeek OCR",contextLength:8192,description:"\u89C6\u89C9\u8BED\u8A00\u6A21\u578B\uFF0C\u4E13\u6CE8OCR\u4E0E\u4E0A\u4E0B\u6587\u7406\u89E3\uFF0C\u6587\u6863\u2192Markdown",supportsTools:!1,isReasoningModel:!1,supportsVision:!0},{id:"THUDM/GLM-4-9B-0414",name:"GLM-4 9B (0414)",contextLength:32768,description:"\u667A\u8C31GLM-4 9B\u8F7B\u91CF\u7248\uFF0C\u4EE3\u7801\u751F\u6210/\u7F51\u9875\u8BBE\u8BA1/SVG/\u641C\u7D22\u5199\u4F5C",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"THUDM/GLM-Z1-9B-0414",name:"GLM-Z1 9B (0414)",contextLength:128e3,description:"\u667A\u8C31GLM-Z1 9B\u63A8\u7406\u6A21\u578B\uFF0C\u6570\u5B66\u63A8\u7406/\u957F\u6587\u672C\u5904\u7406",supportsTools:!1,isReasoningModel:!0,supportsVision:!1}],BOe=class{manifest={id:"@aggroot/siliconflow-model",name:"SiliconFlow Free Models",version:"1.0.0",description:"\u514D\u8D39\u5F00\u6E90\u5927\u6A21\u578B\u96C6\u6210\uFF08Qwen/DeepSeek/GLM\u7B496\u4E2A\u5B8C\u5168\u514D\u8D39\u6A21\u578B\uFF09",main:"dist/index.js",extensionPoints:[{type:"model",count:b_t.length,description:"SiliconFlow free models"}]};async initialize(e){let{models:r,config:s,logger:a}=e,u="sk-egheksyltzgvrzqomgcintadzksmeftbujjluxxbuvmcbfkr",f="https://api.siliconflow.cn/v1";for(let h of b_t){let y=["chat","streaming"];h.supportsTools&&y.push("tools"),h.isReasoningModel&&y.push("reasoning"),h.supportsVision&&y.push("vision");let S={id:`${this.manifest.id}:${h.id.replace(/[\/\.]/g,"-")}`,type:"model",pluginId:this.manifest.id,modelId:h.id,name:h.name,description:h.description,provider:"siliconflow",capabilities:y,contextLength:h.contextLength,createClient:x=>{let w={apiKey:x.apiKey??u,baseUrl:x.baseUrl??f,modelId:h.id,provider:"siliconflow",contextLength:h.contextLength,supportsTools:h.supportsTools,isReasoningModel:h.isReasoningModel,pricing:{inputTokens:0,outputTokens:0}};return new I_(w)}};r.register(S)}a.debug(`SiliconFlow model plugin initialized with ${b_t.length} free models`)}async activate(){}async deactivate(){}async dispose(){}}});function JOe(n,e,r){let s={v:1,id:`msg_${++D$r}_${Date.now()}`,ts:Date.now(),sessionId:e};switch(n.type){case"content":return{...s,type:"stream.content",payload:{content:n.content??"",messageId:r}};case"reasoning":return{...s,type:"stream.reasoning",payload:{content:n.content??"",messageId:r}};case"tool_call":{let u=n.toolCalls?.[0];return{...s,type:"stream.tool_call",payload:{toolCallId:u?.id??n.toolCallId??"",toolName:u?.function?.name??n.toolName??"",argsPreview:n.argsPreview??u?.function?.arguments??"",riskLevel:n.riskLevel??"safe"}}}case"tool_use":return{...s,type:"stream.tool_use",payload:{toolCallId:n.toolCallId??"",toolName:n.toolName??"",args:n.args??{}}};case"tool_result":return{...s,type:"stream.tool_result",payload:{toolCallId:n.toolCallId??"",toolName:n.toolName??"",success:n.success??!0,stdout:n.stdout,stderr:n.stderr,duration:n.duration,data:n.toolData??n.data}};case"status":{let a=n.statusInfo?.message??n.statusInfo?.status??n.content??"";return{...s,type:"stream.status",payload:{content:a}}}case"done":return{...s,type:"stream.done",payload:{messageId:r,usage:n.usage}};case"error":return{...s,type:"stream.error",payload:{content:n.error??n.content??"Unknown error"}};case"loop_complete":return{...s,type:"stream.loop_complete",payload:{iterations:n.iterations??0,totalTokens:n.totalTokens}};default:return null}}var D$r,khn=Dt(()=>{"use strict";B();D$r=0});function A_t(n,e,r,s){let a=`agent:main:${n}:${e}:${r}`;return s?`${a}:${s}`:a}var w_t,C_t,Nhn=Dt(()=>{"use strict";B();w_t={mode:"both",atHour:4,idleMinutes:1440,notify:!0,notifyExcludePlatforms:["api_server","webhook"]},C_t={enabled:!1,transport:"edit",editInterval:1e3,bufferThreshold:40,cursor:" \u2589"}});var k$r,N$r,M$r,Mhn,L$r,O$r,F$r,W$r,z$r,Lhn=Dt(()=>{"use strict";B();Swe();k$r=bo.enum(["safe","moderate","dangerous"]),N$r=bo.enum(["auto","safe_only","always_ask"]),M$r=bo.enum(["auto-safe","deny-all","admin-forward"]),Mhn=bo.enum(["api_server","websocket","telegram","discord","slack","feishu","wecom","wechat","qq","dingtalk","email","webhook"]),L$r=bo.enum(["dm","group","channel","session"]),O$r=bo.object({v:bo.literal(1),id:bo.string().min(1),type:bo.string().min(1),payload:bo.unknown(),ts:bo.number(),sessionId:bo.string().min(1),requestId:bo.string().optional()}),F$r=bo.object({message:bo.string().min(1),attachments:bo.array(bo.object({type:bo.enum(["image","file","url"]),name:bo.string(),content:bo.string()})).optional()}),W$r=bo.object({requestId:bo.string().min(1),approved:bo.boolean(),message:bo.string().optional()}),z$r=bo.object({platformType:Mhn,capabilities:bo.object({streaming:bo.boolean(),richText:bo.boolean(),interactive:bo.boolean(),images:bo.boolean(),files:bo.boolean(),maxMessageSize:bo.number(),editInterval:bo.number()})})});var XOe=Dt(()=>{"use strict";B();khn();Nhn();Lhn()});var Bf=lt(h0=>{"use strict";B();var I_t=Symbol.for("yaml.alias"),Ohn=Symbol.for("yaml.document"),ZOe=Symbol.for("yaml.map"),Fhn=Symbol.for("yaml.pair"),P_t=Symbol.for("yaml.scalar"),YOe=Symbol.for("yaml.seq"),EW=Symbol.for("yaml.node.type"),B$r=n=>!!n&&typeof n=="object"&&n[EW]===I_t,j$r=n=>!!n&&typeof n=="object"&&n[EW]===Ohn,G$r=n=>!!n&&typeof n=="object"&&n[EW]===ZOe,$$r=n=>!!n&&typeof n=="object"&&n[EW]===Fhn,Whn=n=>!!n&&typeof n=="object"&&n[EW]===P_t,U$r=n=>!!n&&typeof n=="object"&&n[EW]===YOe;function zhn(n){if(n&&typeof n=="object")switch(n[EW]){case ZOe:case YOe:return!0}return!1}function V$r(n){if(n&&typeof n=="object")switch(n[EW]){case I_t:case ZOe:case P_t:case YOe:return!0}return!1}var H$r=n=>(Whn(n)||zhn(n))&&!!n.anchor;h0.ALIAS=I_t;h0.DOC=Ohn;h0.MAP=ZOe;h0.NODE_TYPE=EW;h0.PAIR=Fhn;h0.SCALAR=P_t;h0.SEQ=YOe;h0.hasAnchor=H$r;h0.isAlias=B$r;h0.isCollection=zhn;h0.isDocument=j$r;h0.isMap=G$r;h0.isNode=V$r;h0.isPair=$$r;h0.isScalar=Whn;h0.isSeq=U$r});var Zue=lt(R_t=>{"use strict";B();var Sb=Bf(),OA=Symbol("break visit"),Bhn=Symbol("skip children"),rL=Symbol("remove node");function QOe(n,e){let r=jhn(e);Sb.isDocument(n)?HZ(null,n.contents,r,Object.freeze([n]))===rL&&(n.contents=null):HZ(null,n,r,Object.freeze([]))}QOe.BREAK=OA;QOe.SKIP=Bhn;QOe.REMOVE=rL;function HZ(n,e,r,s){let a=Ghn(n,e,r,s);if(Sb.isNode(a)||Sb.isPair(a))return $hn(n,s,a),HZ(n,a,r,s);if(typeof a!="symbol"){if(Sb.isCollection(e)){s=Object.freeze(s.concat(e));for(let u=0;u<e.items.length;++u){let f=HZ(u,e.items[u],r,s);if(typeof f=="number")u=f-1;else{if(f===OA)return OA;f===rL&&(e.items.splice(u,1),u-=1)}}}else if(Sb.isPair(e)){s=Object.freeze(s.concat(e));let u=HZ("key",e.key,r,s);if(u===OA)return OA;u===rL&&(e.key=null);let f=HZ("value",e.value,r,s);if(f===OA)return OA;f===rL&&(e.value=null)}}return a}async function e2e(n,e){let r=jhn(e);Sb.isDocument(n)?await KZ(null,n.contents,r,Object.freeze([n]))===rL&&(n.contents=null):await KZ(null,n,r,Object.freeze([]))}e2e.BREAK=OA;e2e.SKIP=Bhn;e2e.REMOVE=rL;async function KZ(n,e,r,s){let a=await Ghn(n,e,r,s);if(Sb.isNode(a)||Sb.isPair(a))return $hn(n,s,a),KZ(n,a,r,s);if(typeof a!="symbol"){if(Sb.isCollection(e)){s=Object.freeze(s.concat(e));for(let u=0;u<e.items.length;++u){let f=await KZ(u,e.items[u],r,s);if(typeof f=="number")u=f-1;else{if(f===OA)return OA;f===rL&&(e.items.splice(u,1),u-=1)}}}else if(Sb.isPair(e)){s=Object.freeze(s.concat(e));let u=await KZ("key",e.key,r,s);if(u===OA)return OA;u===rL&&(e.key=null);let f=await KZ("value",e.value,r,s);if(f===OA)return OA;f===rL&&(e.value=null)}}return a}function jhn(n){return typeof n=="object"&&(n.Collection||n.Node||n.Value)?Object.assign({Alias:n.Node,Map:n.Node,Scalar:n.Node,Seq:n.Node},n.Value&&{Map:n.Value,Scalar:n.Value,Seq:n.Value},n.Collection&&{Map:n.Collection,Seq:n.Collection},n):n}function Ghn(n,e,r,s){if(typeof r=="function")return r(n,e,s);if(Sb.isMap(e))return r.Map?.(n,e,s);if(Sb.isSeq(e))return r.Seq?.(n,e,s);if(Sb.isPair(e))return r.Pair?.(n,e,s);if(Sb.isScalar(e))return r.Scalar?.(n,e,s);if(Sb.isAlias(e))return r.Alias?.(n,e,s)}function $hn(n,e,r){let s=e[e.length-1];if(Sb.isCollection(s))s.items[n]=r;else if(Sb.isPair(s))n==="key"?s.key=r:s.value=r;else if(Sb.isDocument(s))s.contents=r;else{let a=Sb.isAlias(s)?"alias":"scalar";throw new Error(`Cannot replace node with ${a} parent`)}}R_t.visit=QOe;R_t.visitAsync=e2e});var D_t=lt(Vhn=>{"use strict";B();var Uhn=Bf(),K$r=Zue(),q$r={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},J$r=n=>n.replace(/[!,[\]{}]/g,e=>q$r[e]),Yue=class n{constructor(e,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},n.defaultYaml,e),this.tags=Object.assign({},n.defaultTags,r)}clone(){let e=new n(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new n(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:n.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},n.defaultTags);break}return e}add(e,r){this.atNextDocument&&(this.yaml={explicit:n.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},n.defaultTags),this.atNextDocument=!1);let s=e.trim().split(/[ \t]+/),a=s.shift();switch(a){case"%TAG":{if(s.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;let[u,f]=s;return this.tags[u]=f,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[u]=s;if(u==="1.1"||u==="1.2")return this.yaml.version=u,!0;{let f=/^\d+\.\d+$/.test(u);return r(6,`Unsupported YAML version ${u}`,f),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(e,r){if(e==="!")return"!";if(e[0]!=="!")return r(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let f=e.slice(2,-1);return f==="!"||f==="!!"?(r(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&r("Verbatim tags must end with a >"),f)}let[,s,a]=e.match(/^(.*!)([^!]*)$/s);a||r(`The ${e} tag has no suffix`);let u=this.tags[s];if(u)try{return u+decodeURIComponent(a)}catch(f){return r(String(f)),null}return s==="!"?e:(r(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[r,s]of Object.entries(this.tags))if(e.startsWith(s))return r+J$r(e.substring(s.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),a;if(e&&s.length>0&&Uhn.isNode(e.contents)){let u={};K$r.visit(e.contents,(f,h)=>{Uhn.isNode(h)&&h.tag&&(u[h.tag]=!0)}),a=Object.keys(u)}else a=[];for(let[u,f]of s)u==="!!"&&f==="tag:yaml.org,2002:"||(!e||a.some(h=>h.startsWith(f)))&&r.push(`%TAG ${u} ${f}`);return r.join(`
|
|
44409
|
+
`},await new Promise(P=>setTimeout(P,w));continue}yield{type:"error",error:x};return}}prepareMessages(e){for(let s of e)s.role==="assistant"&&s.metadata?.reasoningContent&&(s.reasoning_content=s.metadata.reasoningContent);let r=e.some(s=>s.role==="assistant"&&s.reasoning_content);if(r&&e.some(a=>a.role==="assistant"&&!a.reasoning_content))for(let a of e)a.role==="assistant"&&delete a.reasoning_content;if(this.enableThinking&&!r)for(let s of e)s.role==="assistant"&&!s.reasoning_content&&(s.reasoning_content="");for(let s of e)s.role==="assistant"&&(s.content===null||s.content===void 0)&&(s.content="");return e}async*handleStreamResponse(e){let r=new Map,s=0,a=0,u=0,f=0,h=!1,y=null,S;for await(let x of e){if(s++,s===1&&(f=Date.now()),x.usage){let N=x.usage.prompt_cache_hit_tokens??x.usage.cached_tokens??x.usage.prompt_tokens_details?.cached_tokens??void 0;S={promptTokens:x.usage.prompt_tokens??0,completionTokens:x.usage.completion_tokens??0,totalTokens:x.usage.total_tokens??0,cachedTokens:N}}let w=x.choices[0]?.delta,P=x.choices[0]?.finish_reason;if(P&&(h=!0,y=P),!w&&!P)continue;let O=w?.reasoning_content;if(O&&(u++,yield{type:"reasoning",content:O}),w?.content&&(a++,Ad(`CONTENT chunk=${s} text=${JSON.stringify(w.content).slice(0,200)}`),yield{type:"content",content:w.content}),w?.tool_calls&&w.tool_calls.length>0)for(let N of w.tool_calls){let M=N.index??0,V=r.get(M);V||(V={id:"",name:"",arguments:""},r.set(M,V)),N.id&&(V.id=N.id),N.function?.name&&(V.name=V.name||N.function.name),N.function?.arguments&&(V.arguments+=N.function.arguments)}}if(Ad(`STREAM_DONE chunks=${s} contentChunks=${a} reasoningChunks=${u} toolCalls=${r.size} durationMs=${f?Date.now()-f:0}`),s===0||a===0&&u===0&&r.size===0&&!h){yield{type:"error",error:`\u6A21\u578B\u8FD4\u56DE\u7A7A\u54CD\u5E94 (${s} chunks)\u3002\u53EF\u80FD\u662F\u6A21\u578B\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u6216\u5207\u6362\u6A21\u578B\u3002`};return}if(r.size>0){let x=Array.from(r.values()).filter(w=>w.id&&w.name).map(w=>({id:w.id,type:"function",function:{name:w.name,arguments:w.arguments}}));x.length>0&&(yield{type:"tool_call",toolCalls:x})}yield{type:"done",finishReason:y??"stop",usage:S}}}});var y_t={};Zl(y_t,{default:()=>zOe});var g_t,zOe,v_t=Dt(()=>{"use strict";B();Ihn();g_t=[{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextLength:1e6,maxOutput:128e3,description:"MiMo-V2-Pro \u65D7\u8230\u7248\uFF0C1M \u4E0A\u4E0B\u6587\uFF0C\u652F\u6301\u6DF1\u5EA6\u601D\u8003\u6A21\u5F0F\uFF08Token Plan \u7528\u6237\u9996\u9009\uFF09",supportsTools:!0,isReasoningModel:!0,pricing:{input:1,output:2}},{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextLength:1e6,maxOutput:128e3,description:"MiMo-V2.5-Pro \u6700\u65B0\u65D7\u8230\uFF0C1M \u4E0A\u4E0B\u6587\uFF0C\u539F\u751F\u591A\u6A21\u6001\u652F\u6301",supportsTools:!0,isReasoningModel:!0,pricing:{input:1.5,output:3}},{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextLength:256e3,maxOutput:64e3,description:"MiMo-V2-Flash \u8F7B\u91CF\u5FEB\u901F\u7248\uFF08\u4EC5\u6309\u91CF\u8BA1\u8D39\u7528\u6237\u53EF\u7528\uFF0CToken Plan \u4E0D\u652F\u6301\uFF09",supportsTools:!0,isReasoningModel:!1,pricing:{input:.5,output:1}},{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextLength:256e3,maxOutput:128e3,description:"MiMo-V2-Omni \u591A\u6A21\u6001\u6A21\u578B\uFF0C\u652F\u6301\u89C6\u89C9\u7406\u89E3",supportsTools:!0,isReasoningModel:!1,pricing:{input:2,output:4}}],zOe=class{manifest={id:"@aggroot/mimo-model",name:"MiMo Model",version:"1.0.1",description:"Xiaomi MiMo AI model integration for AggRoot",main:"dist/index.js",extensionPoints:[{type:"model",count:g_t.length,description:"Xiaomi MiMo models"}]};async initialize(e){let{models:r,config:s,logger:a}=e,u=s.apiKey??process.env.MIMO_API_KEY;u||a.warn("No API key configured. Set MIMO_API_KEY env var or pass config.apiKey");let f=s.baseUrl??process.env.MIMO_BASE_URL??"https://api.xiaomimimo.com/v1";for(let h of g_t){let y={id:`${this.manifest.id}:${h.id}`,type:"model",pluginId:this.manifest.id,modelId:h.id,name:h.name,description:h.description,provider:"mimo",capabilities:h.supportsTools?["chat","tools","streaming"]:["chat","streaming"],contextLength:h.contextLength,createClient:S=>{let x={apiKey:S.apiKey??u,baseUrl:S.baseUrl??f,modelId:h.id,provider:"mimo",contextLength:h.contextLength,supportsTools:h.supportsTools,isReasoningModel:h.isReasoningModel,pricing:h.pricing?{inputTokens:h.pricing.input,outputTokens:h.pricing.output}:void 0,enableThinking:h.isReasoningModel};return new WOe(x)}};r.register(y)}a.debug(`MiMo model plugin initialized with ${g_t.length} models`)}async activate(){}async deactivate(){}async dispose(){}}});var S_t={};Zl(S_t,{default:()=>BOe});var b_t,BOe,T_t=Dt(()=>{"use strict";B();mP();b_t=[{id:"deepseek-ai/DeepSeek-R1-0528-Qwen3-8B",name:"DeepSeek-R1-0528-Qwen3-8B",contextLength:128e3,description:"\u4ECEDeepSeek-R1-0528\u84B8\u998F\u5230Qwen3 8B\uFF0CAIME 2024\u8D85\u8D8AQwen3 8B 10%",supportsTools:!1,isReasoningModel:!0,supportsVision:!1},{id:"Qwen/Qwen2.5-7B-Instruct",name:"Qwen2.5 7B Instruct",contextLength:32768,description:"\u963F\u91CC\u901A\u4E49\u5343\u95EE2.5\uFF0C\u7F16\u7801/\u6570\u5B66\u589E\u5F3A\uFF0C\u591A\u8BED\u8A00\u652F\u6301",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"Qwen/Qwen3-8B",name:"Qwen3 8B",contextLength:128e3,description:"\u901A\u4E49\u5343\u95EE3\uFF0C8.2B\u53C2\u6570\uFF0C\u601D\u8003/\u975E\u601D\u8003\u6A21\u5F0F\u65E0\u7F1D\u5207\u6362",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"deepseek-ai/DeepSeek-OCR",name:"DeepSeek OCR",contextLength:8192,description:"\u89C6\u89C9\u8BED\u8A00\u6A21\u578B\uFF0C\u4E13\u6CE8OCR\u4E0E\u4E0A\u4E0B\u6587\u7406\u89E3\uFF0C\u6587\u6863\u2192Markdown",supportsTools:!1,isReasoningModel:!1,supportsVision:!0},{id:"THUDM/GLM-4-9B-0414",name:"GLM-4 9B (0414)",contextLength:32768,description:"\u667A\u8C31GLM-4 9B\u8F7B\u91CF\u7248\uFF0C\u4EE3\u7801\u751F\u6210/\u7F51\u9875\u8BBE\u8BA1/SVG/\u641C\u7D22\u5199\u4F5C",supportsTools:!0,isReasoningModel:!1,supportsVision:!1},{id:"THUDM/GLM-Z1-9B-0414",name:"GLM-Z1 9B (0414)",contextLength:128e3,description:"\u667A\u8C31GLM-Z1 9B\u63A8\u7406\u6A21\u578B\uFF0C\u6570\u5B66\u63A8\u7406/\u957F\u6587\u672C\u5904\u7406",supportsTools:!1,isReasoningModel:!0,supportsVision:!1}],BOe=class{manifest={id:"@aggroot/siliconflow-model",name:"SiliconFlow Free Models",version:"1.0.0",description:"\u514D\u8D39\u5F00\u6E90\u5927\u6A21\u578B\u96C6\u6210\uFF08Qwen/DeepSeek/GLM\u7B496\u4E2A\u5B8C\u5168\u514D\u8D39\u6A21\u578B\uFF09",main:"dist/index.js",extensionPoints:[{type:"model",count:b_t.length,description:"SiliconFlow free models"}]};async initialize(e){let{models:r,config:s,logger:a}=e,u="sk-egheksyltzgvrzqomgcintadzksmeftbujjluxxbuvmcbfkr",f="https://api.siliconflow.cn/v1";for(let h of b_t){let y=["chat","streaming"];h.supportsTools&&y.push("tools"),h.isReasoningModel&&y.push("reasoning"),h.supportsVision&&y.push("vision");let S={id:`${this.manifest.id}:${h.id.replace(/[\/\.]/g,"-")}`,type:"model",pluginId:this.manifest.id,modelId:h.id,name:h.name,description:h.description,provider:"siliconflow",capabilities:y,contextLength:h.contextLength,createClient:x=>{let w={apiKey:x.apiKey??u,baseUrl:x.baseUrl??f,modelId:h.id,provider:"siliconflow",contextLength:h.contextLength,supportsTools:h.supportsTools,isReasoningModel:h.isReasoningModel,pricing:{inputTokens:0,outputTokens:0}};return new I_(w)}};r.register(S)}a.debug(`SiliconFlow model plugin initialized with ${b_t.length} free models`)}async activate(){}async deactivate(){}async dispose(){}}});function JOe(n,e,r){let s={v:1,id:`msg_${++D$r}_${Date.now()}`,ts:Date.now(),sessionId:e};switch(n.type){case"content":return{...s,type:"stream.content",payload:{content:n.content??"",messageId:r}};case"reasoning":return{...s,type:"stream.reasoning",payload:{content:n.content??"",messageId:r}};case"tool_call":{let u=n.toolCalls?.[0];return{...s,type:"stream.tool_call",payload:{toolCallId:u?.id??n.toolCallId??"",toolName:u?.function?.name??n.toolName??"",argsPreview:n.argsPreview??u?.function?.arguments??"",riskLevel:n.riskLevel??"safe"}}}case"tool_use":return{...s,type:"stream.tool_use",payload:{toolCallId:n.toolCallId??"",toolName:n.toolName??"",args:n.args??{}}};case"tool_result":return{...s,type:"stream.tool_result",payload:{toolCallId:n.toolCallId??"",toolName:n.toolName??"",success:n.success??!0,stdout:n.stdout,stderr:n.stderr,duration:n.duration,data:n.toolData??n.data}};case"status":{let a=n.statusInfo?.message??n.statusInfo?.status??n.content??"";return{...s,type:"stream.status",payload:{content:a}}}case"done":return{...s,type:"stream.done",payload:{messageId:r,usage:n.usage}};case"error":return{...s,type:"stream.error",payload:{content:n.error??n.content??"Unknown error"}};case"loop_complete":return{...s,type:"stream.loop_complete",payload:{iterations:n.iterations??0,totalTokens:n.totalTokens}};default:return null}}var D$r,khn=Dt(()=>{B();D$r=0});function A_t(n,e,r,s){let a=`agent:main:${n}:${e}:${r}`;return s?`${a}:${s}`:a}var w_t,C_t,Nhn=Dt(()=>{B();w_t={mode:"both",atHour:4,idleMinutes:1440,notify:!0,notifyExcludePlatforms:["api_server","webhook"]},C_t={enabled:!1,transport:"edit",editInterval:1e3,bufferThreshold:40,cursor:" \u2589"}});var k$r,N$r,M$r,Mhn,L$r,O$r,F$r,W$r,z$r,Lhn=Dt(()=>{B();Swe();k$r=bo.enum(["safe","moderate","dangerous"]),N$r=bo.enum(["auto","safe_only","always_ask"]),M$r=bo.enum(["auto-safe","deny-all","admin-forward"]),Mhn=bo.enum(["api_server","websocket","telegram","discord","slack","feishu","wecom","wechat","qq","dingtalk","email","webhook"]),L$r=bo.enum(["dm","group","channel","session"]),O$r=bo.object({v:bo.literal(1),id:bo.string().min(1),type:bo.string().min(1),payload:bo.unknown(),ts:bo.number(),sessionId:bo.string().min(1),requestId:bo.string().optional()}),F$r=bo.object({message:bo.string().min(1),attachments:bo.array(bo.object({type:bo.enum(["image","file","url"]),name:bo.string(),content:bo.string()})).optional()}),W$r=bo.object({requestId:bo.string().min(1),approved:bo.boolean(),message:bo.string().optional()}),z$r=bo.object({platformType:Mhn,capabilities:bo.object({streaming:bo.boolean(),richText:bo.boolean(),interactive:bo.boolean(),images:bo.boolean(),files:bo.boolean(),maxMessageSize:bo.number(),editInterval:bo.number()})})});var XOe=Dt(()=>{B();khn();Nhn();Lhn()});var Bf=lt(h0=>{"use strict";B();var I_t=Symbol.for("yaml.alias"),Ohn=Symbol.for("yaml.document"),ZOe=Symbol.for("yaml.map"),Fhn=Symbol.for("yaml.pair"),P_t=Symbol.for("yaml.scalar"),YOe=Symbol.for("yaml.seq"),EW=Symbol.for("yaml.node.type"),B$r=n=>!!n&&typeof n=="object"&&n[EW]===I_t,j$r=n=>!!n&&typeof n=="object"&&n[EW]===Ohn,G$r=n=>!!n&&typeof n=="object"&&n[EW]===ZOe,$$r=n=>!!n&&typeof n=="object"&&n[EW]===Fhn,Whn=n=>!!n&&typeof n=="object"&&n[EW]===P_t,U$r=n=>!!n&&typeof n=="object"&&n[EW]===YOe;function zhn(n){if(n&&typeof n=="object")switch(n[EW]){case ZOe:case YOe:return!0}return!1}function V$r(n){if(n&&typeof n=="object")switch(n[EW]){case I_t:case ZOe:case P_t:case YOe:return!0}return!1}var H$r=n=>(Whn(n)||zhn(n))&&!!n.anchor;h0.ALIAS=I_t;h0.DOC=Ohn;h0.MAP=ZOe;h0.NODE_TYPE=EW;h0.PAIR=Fhn;h0.SCALAR=P_t;h0.SEQ=YOe;h0.hasAnchor=H$r;h0.isAlias=B$r;h0.isCollection=zhn;h0.isDocument=j$r;h0.isMap=G$r;h0.isNode=V$r;h0.isPair=$$r;h0.isScalar=Whn;h0.isSeq=U$r});var Zue=lt(R_t=>{"use strict";B();var Sb=Bf(),OA=Symbol("break visit"),Bhn=Symbol("skip children"),rL=Symbol("remove node");function QOe(n,e){let r=jhn(e);Sb.isDocument(n)?HZ(null,n.contents,r,Object.freeze([n]))===rL&&(n.contents=null):HZ(null,n,r,Object.freeze([]))}QOe.BREAK=OA;QOe.SKIP=Bhn;QOe.REMOVE=rL;function HZ(n,e,r,s){let a=Ghn(n,e,r,s);if(Sb.isNode(a)||Sb.isPair(a))return $hn(n,s,a),HZ(n,a,r,s);if(typeof a!="symbol"){if(Sb.isCollection(e)){s=Object.freeze(s.concat(e));for(let u=0;u<e.items.length;++u){let f=HZ(u,e.items[u],r,s);if(typeof f=="number")u=f-1;else{if(f===OA)return OA;f===rL&&(e.items.splice(u,1),u-=1)}}}else if(Sb.isPair(e)){s=Object.freeze(s.concat(e));let u=HZ("key",e.key,r,s);if(u===OA)return OA;u===rL&&(e.key=null);let f=HZ("value",e.value,r,s);if(f===OA)return OA;f===rL&&(e.value=null)}}return a}async function e2e(n,e){let r=jhn(e);Sb.isDocument(n)?await KZ(null,n.contents,r,Object.freeze([n]))===rL&&(n.contents=null):await KZ(null,n,r,Object.freeze([]))}e2e.BREAK=OA;e2e.SKIP=Bhn;e2e.REMOVE=rL;async function KZ(n,e,r,s){let a=await Ghn(n,e,r,s);if(Sb.isNode(a)||Sb.isPair(a))return $hn(n,s,a),KZ(n,a,r,s);if(typeof a!="symbol"){if(Sb.isCollection(e)){s=Object.freeze(s.concat(e));for(let u=0;u<e.items.length;++u){let f=await KZ(u,e.items[u],r,s);if(typeof f=="number")u=f-1;else{if(f===OA)return OA;f===rL&&(e.items.splice(u,1),u-=1)}}}else if(Sb.isPair(e)){s=Object.freeze(s.concat(e));let u=await KZ("key",e.key,r,s);if(u===OA)return OA;u===rL&&(e.key=null);let f=await KZ("value",e.value,r,s);if(f===OA)return OA;f===rL&&(e.value=null)}}return a}function jhn(n){return typeof n=="object"&&(n.Collection||n.Node||n.Value)?Object.assign({Alias:n.Node,Map:n.Node,Scalar:n.Node,Seq:n.Node},n.Value&&{Map:n.Value,Scalar:n.Value,Seq:n.Value},n.Collection&&{Map:n.Collection,Seq:n.Collection},n):n}function Ghn(n,e,r,s){if(typeof r=="function")return r(n,e,s);if(Sb.isMap(e))return r.Map?.(n,e,s);if(Sb.isSeq(e))return r.Seq?.(n,e,s);if(Sb.isPair(e))return r.Pair?.(n,e,s);if(Sb.isScalar(e))return r.Scalar?.(n,e,s);if(Sb.isAlias(e))return r.Alias?.(n,e,s)}function $hn(n,e,r){let s=e[e.length-1];if(Sb.isCollection(s))s.items[n]=r;else if(Sb.isPair(s))n==="key"?s.key=r:s.value=r;else if(Sb.isDocument(s))s.contents=r;else{let a=Sb.isAlias(s)?"alias":"scalar";throw new Error(`Cannot replace node with ${a} parent`)}}R_t.visit=QOe;R_t.visitAsync=e2e});var D_t=lt(Vhn=>{"use strict";B();var Uhn=Bf(),K$r=Zue(),q$r={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},J$r=n=>n.replace(/[!,[\]{}]/g,e=>q$r[e]),Yue=class n{constructor(e,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},n.defaultYaml,e),this.tags=Object.assign({},n.defaultTags,r)}clone(){let e=new n(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new n(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:n.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},n.defaultTags);break}return e}add(e,r){this.atNextDocument&&(this.yaml={explicit:n.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},n.defaultTags),this.atNextDocument=!1);let s=e.trim().split(/[ \t]+/),a=s.shift();switch(a){case"%TAG":{if(s.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;let[u,f]=s;return this.tags[u]=f,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[u]=s;if(u==="1.1"||u==="1.2")return this.yaml.version=u,!0;{let f=/^\d+\.\d+$/.test(u);return r(6,`Unsupported YAML version ${u}`,f),!1}}default:return r(0,`Unknown directive ${a}`,!0),!1}}tagName(e,r){if(e==="!")return"!";if(e[0]!=="!")return r(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let f=e.slice(2,-1);return f==="!"||f==="!!"?(r(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&r("Verbatim tags must end with a >"),f)}let[,s,a]=e.match(/^(.*!)([^!]*)$/s);a||r(`The ${e} tag has no suffix`);let u=this.tags[s];if(u)try{return u+decodeURIComponent(a)}catch(f){return r(String(f)),null}return s==="!"?e:(r(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[r,s]of Object.entries(this.tags))if(e.startsWith(s))return r+J$r(e.substring(s.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),a;if(e&&s.length>0&&Uhn.isNode(e.contents)){let u={};K$r.visit(e.contents,(f,h)=>{Uhn.isNode(h)&&h.tag&&(u[h.tag]=!0)}),a=Object.keys(u)}else a=[];for(let[u,f]of s)u==="!!"&&f==="tag:yaml.org,2002:"||(!e||a.some(h=>h.startsWith(f)))&&r.push(`%TAG ${u} ${f}`);return r.join(`
|
|
44410
44410
|
`)}};Yue.defaultYaml={explicit:!1,version:"1.2"};Yue.defaultTags={"!!":"tag:yaml.org,2002:"};Vhn.Directives=Yue});var t2e=lt(Que=>{"use strict";B();var Hhn=Bf(),X$r=Zue();function Z$r(n){if(/[\x00-\x19\s,[\]{}]/.test(n)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(n)}`;throw new Error(r)}return!0}function Khn(n){let e=new Set;return X$r.visit(n,{Value(r,s){s.anchor&&e.add(s.anchor)}}),e}function qhn(n,e){for(let r=1;;++r){let s=`${n}${r}`;if(!e.has(s))return s}}function Y$r(n,e){let r=[],s=new Map,a=null;return{onAnchor:u=>{r.push(u),a??(a=Khn(n));let f=qhn(e,a);return a.add(f),f},setAnchors:()=>{for(let u of r){let f=s.get(u);if(typeof f=="object"&&f.anchor&&(Hhn.isScalar(f.node)||Hhn.isCollection(f.node)))f.node.anchor=f.anchor;else{let h=new Error("Failed to resolve repeated object (this should not happen)");throw h.source=u,h}}},sourceObjects:s}}Que.anchorIsValid=Z$r;Que.anchorNames=Khn;Que.createNodeAnchors=Y$r;Que.findNewAnchor=qhn});var k_t=lt(Jhn=>{"use strict";B();function ede(n,e,r,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let a=0,u=s.length;a<u;++a){let f=s[a],h=ede(n,s,String(a),f);h===void 0?delete s[a]:h!==f&&(s[a]=h)}else if(s instanceof Map)for(let a of Array.from(s.keys())){let u=s.get(a),f=ede(n,s,a,u);f===void 0?s.delete(a):f!==u&&s.set(a,f)}else if(s instanceof Set)for(let a of Array.from(s)){let u=ede(n,s,a,a);u===void 0?s.delete(a):u!==a&&(s.delete(a),s.add(u))}else for(let[a,u]of Object.entries(s)){let f=ede(n,s,a,u);f===void 0?delete s[a]:f!==u&&(s[a]=f)}return n.call(e,r,s)}Jhn.applyReviver=ede});var aB=lt(Zhn=>{"use strict";B();var Q$r=Bf();function Xhn(n,e,r){if(Array.isArray(n))return n.map((s,a)=>Xhn(s,String(a),r));if(n&&typeof n.toJSON=="function"){if(!r||!Q$r.hasAnchor(n))return n.toJSON(e,r);let s={aliasCount:0,count:1,res:void 0};r.anchors.set(n,s),r.onCreate=u=>{s.res=u,delete r.onCreate};let a=n.toJSON(e,r);return r.onCreate&&r.onCreate(a),a}return typeof n=="bigint"&&!r?.keep?Number(n):n}Zhn.toJS=Xhn});var n2e=lt(Qhn=>{"use strict";B();var e5r=k_t(),Yhn=Bf(),t5r=aB(),N_t=class{constructor(e){Object.defineProperty(this,Yhn.NODE_TYPE,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:r,maxAliasCount:s,onAnchor:a,reviver:u}={}){if(!Yhn.isDocument(e))throw new TypeError("A document argument is required");let f={anchors:new Map,doc:e,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},h=t5r.toJS(this,"",f);if(typeof a=="function")for(let{count:y,res:S}of f.anchors.values())a(S,y);return typeof u=="function"?e5r.applyReviver(u,{"":h},"",h):h}};Qhn.NodeBase=N_t});var tde=lt(e_n=>{"use strict";B();var n5r=t2e(),r5r=Zue(),qZ=Bf(),i5r=n2e(),o5r=aB(),M_t=class extends i5r.NodeBase{constructor(e){super(qZ.ALIAS),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e,r){if(r?.maxAliasCount===0)throw new ReferenceError("Alias resolution is disabled");let s;r?.aliasResolveCache?s=r.aliasResolveCache:(s=[],r5r.visit(e,{Node:(u,f)=>{(qZ.isAlias(f)||qZ.hasAnchor(f))&&s.push(f)}}),r&&(r.aliasResolveCache=s));let a;for(let u of s){if(u===this)break;u.anchor===this.source&&(a=u)}return a}toJSON(e,r){if(!r)return{source:this.source};let{anchors:s,doc:a,maxAliasCount:u}=r,f=this.resolve(a,r);if(!f){let y=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(y)}let h=s.get(f);if(h||(o5r.toJS(f,null,r),h=s.get(f)),h?.res===void 0){let y="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(y)}if(u>=0&&(h.count+=1,h.aliasCount===0&&(h.aliasCount=r2e(a,f,s)),h.count*h.aliasCount>u)){let y="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(y)}return h.res}toString(e,r,s){let a=`*${this.source}`;if(e){if(n5r.anchorIsValid(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let u=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(u)}if(e.implicitKey)return`${a} `}return a}};function r2e(n,e,r){if(qZ.isAlias(e)){let s=e.resolve(n),a=r&&s&&r.get(s);return a?a.count*a.aliasCount:0}else if(qZ.isCollection(e)){let s=0;for(let a of e.items){let u=r2e(n,a,r);u>s&&(s=u)}return s}else if(qZ.isPair(e)){let s=r2e(n,e.key,r),a=r2e(n,e.value,r);return Math.max(s,a)}return 1}e_n.Alias=M_t});var Ev=lt(L_t=>{"use strict";B();var s5r=Bf(),a5r=n2e(),l5r=aB(),c5r=n=>!n||typeof n!="function"&&typeof n!="object",lB=class extends a5r.NodeBase{constructor(e){super(s5r.SCALAR),this.value=e}toJSON(e,r){return r?.keep?this.value:l5r.toJS(this.value,e,r)}toString(){return String(this.value)}};lB.BLOCK_FOLDED="BLOCK_FOLDED";lB.BLOCK_LITERAL="BLOCK_LITERAL";lB.PLAIN="PLAIN";lB.QUOTE_DOUBLE="QUOTE_DOUBLE";lB.QUOTE_SINGLE="QUOTE_SINGLE";L_t.Scalar=lB;L_t.isScalarValue=c5r});var nde=lt(n_n=>{"use strict";B();var u5r=tde(),MU=Bf(),t_n=Ev(),d5r="tag:yaml.org,2002:";function f5r(n,e,r){if(e){let s=r.filter(u=>u.tag===e),a=s.find(u=>!u.format)??s[0];if(!a)throw new Error(`Tag ${e} not found`);return a}return r.find(s=>s.identify?.(n)&&!s.format)}function p5r(n,e,r){if(MU.isDocument(n)&&(n=n.contents),MU.isNode(n))return n;if(MU.isPair(n)){let w=r.schema[MU.MAP].createNode?.(r.schema,null,r);return w.items.push(n),w}(n instanceof String||n instanceof Number||n instanceof Boolean||typeof BigInt<"u"&&n instanceof BigInt)&&(n=n.valueOf());let{aliasDuplicateObjects:s,onAnchor:a,onTagObj:u,schema:f,sourceObjects:h}=r,y;if(s&&n&&typeof n=="object"){if(y=h.get(n),y)return y.anchor??(y.anchor=a(n)),new u5r.Alias(y.anchor);y={anchor:null,node:null},h.set(n,y)}e?.startsWith("!!")&&(e=d5r+e.slice(2));let S=f5r(n,e,f.tags);if(!S){if(n&&typeof n.toJSON=="function"&&(n=n.toJSON()),!n||typeof n!="object"){let w=new t_n.Scalar(n);return y&&(y.node=w),w}S=n instanceof Map?f[MU.MAP]:Symbol.iterator in Object(n)?f[MU.SEQ]:f[MU.MAP]}u&&(u(S),delete r.onTagObj);let x=S?.createNode?S.createNode(r.schema,n,r):typeof S?.nodeClass?.from=="function"?S.nodeClass.from(r.schema,n,r):new t_n.Scalar(n);return e?x.tag=e:S.default||(x.tag=S.tag),y&&(y.node=x),x}n_n.createNode=p5r});var o2e=lt(i2e=>{"use strict";B();var m5r=nde(),iL=Bf(),h5r=n2e();function O_t(n,e,r){let s=r;for(let a=e.length-1;a>=0;--a){let u=e[a];if(typeof u=="number"&&Number.isInteger(u)&&u>=0){let f=[];f[u]=s,s=f}else s=new Map([[u,s]])}return m5r.createNode(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:n,sourceObjects:new Map})}var r_n=n=>n==null||typeof n=="object"&&!!n[Symbol.iterator]().next().done,F_t=class extends h5r.NodeBase{constructor(e,r){super(e),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(e){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(r.schema=e),r.items=r.items.map(s=>iL.isNode(s)||iL.isPair(s)?s.clone(e):s),this.range&&(r.range=this.range.slice()),r}addIn(e,r){if(r_n(e))this.add(r);else{let[s,...a]=e,u=this.get(s,!0);if(iL.isCollection(u))u.addIn(a,r);else if(u===void 0&&this.schema)this.set(s,O_t(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}deleteIn(e){let[r,...s]=e;if(s.length===0)return this.delete(r);let a=this.get(r,!0);if(iL.isCollection(a))return a.deleteIn(s);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${s}`)}getIn(e,r){let[s,...a]=e,u=this.get(s,!0);return a.length===0?!r&&iL.isScalar(u)?u.value:u:iL.isCollection(u)?u.getIn(a,r):void 0}hasAllNullValues(e){return this.items.every(r=>{if(!iL.isPair(r))return!1;let s=r.value;return s==null||e&&iL.isScalar(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){let[r,...s]=e;if(s.length===0)return this.has(r);let a=this.get(r,!0);return iL.isCollection(a)?a.hasIn(s):!1}setIn(e,r){let[s,...a]=e;if(a.length===0)this.set(s,r);else{let u=this.get(s,!0);if(iL.isCollection(u))u.setIn(a,r);else if(u===void 0&&this.schema)this.set(s,O_t(this.schema,a,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${a}`)}}};i2e.Collection=F_t;i2e.collectionFromPath=O_t;i2e.isEmptyPath=r_n});var rde=lt(s2e=>{"use strict";B();var _5r=n=>n.replace(/^(?!$)(?: $)?/gm,"#");function W_t(n,e){return/^\n+$/.test(n)?n.substring(1):e?n.replace(/^(?! *$)/gm,e):n}var g5r=(n,e,r)=>n.endsWith(`
|
|
44411
44411
|
`)?W_t(r,e):r.includes(`
|
|
44412
44412
|
`)?`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aggroot-team/aggroot",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.4",
|
|
4
4
|
"description": "AggRoot - AI Assistant (Node.js/TypeScript Version)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.build.json && node scripts/obfuscate.mjs && node scripts/verify-no-source.mjs && cd packages/web && npx vite build && cd ../..",
|
|
48
48
|
"build:all": "node scripts/build-all.mjs",
|
|
49
49
|
"build:dev": "tsc",
|
|
50
|
-
"prepack": "npm run build && cd packages/web && npx vite build && cd ../.. && node -e \"const{mkdirSync,readdirSync,copyFileSync,existsSync}=require('fs');const{join}=require('path');function cpR(s,d){mkdirSync(d,{recursive:true});for(const f of readdirSync(s)){const sp=join(s,f),dp=join(d,f);const st=require('fs').statSync(sp);st.isDirectory()?cpR(sp,dp):copyFileSync(sp,dp)}if(!existsSync('share/web'))mkdirSync('share/web',{recursive:true})}if(existsSync('packages/web/dist'))cpR(join('packages','web','dist'),join('share','web','dist'))\"",
|
|
50
|
+
"prepack": "npm run build && cd packages/web && npx vite build && cd ../.. && node scripts/fix-workspace-deps.mjs && node -e \"const{mkdirSync,readdirSync,copyFileSync,existsSync}=require('fs');const{join}=require('path');function cpR(s,d){mkdirSync(d,{recursive:true});for(const f of readdirSync(s)){const sp=join(s,f),dp=join(d,f);const st=require('fs').statSync(sp);st.isDirectory()?cpR(sp,dp):copyFileSync(sp,dp)}if(!existsSync('share/web'))mkdirSync('share/web',{recursive:true})}if(existsSync('packages/web/dist'))cpR(join('packages','web','dist'),join('share','web','dist'))\"",
|
|
51
51
|
"start": "node --no-warnings --max-old-space-size=4096 dist/index.cjs",
|
|
52
52
|
"type-check": "tsc --noEmit",
|
|
53
53
|
"lint": "eslint .",
|
|
@@ -65,7 +65,6 @@
|
|
|
65
65
|
"install:all": "npm install && npm run rebuild-native"
|
|
66
66
|
},
|
|
67
67
|
"dependencies": {
|
|
68
|
-
"@aggroot-team/server": "workspace:*",
|
|
69
68
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
70
69
|
"@sqlite.org/sqlite-wasm": "3.53.0-build1",
|
|
71
70
|
"@vscode/ripgrep": "^1.17.1",
|
|
@@ -15,7 +15,7 @@ import { readFileSync, writeFileSync } from "node:fs";
|
|
|
15
15
|
const rootPkg = JSON.parse(readFileSync("package.json", "utf8"));
|
|
16
16
|
|
|
17
17
|
// Packages that are statically imported → esbuild bundles them → remove from deps
|
|
18
|
-
const BUNDLED_WORKSPACE_PKGS = ["@aggroot/server"];
|
|
18
|
+
const BUNDLED_WORKSPACE_PKGS = ["@aggroot-team/server"];
|
|
19
19
|
|
|
20
20
|
function fixDeps(deps) {
|
|
21
21
|
if (!deps) return;
|