@agentica/chat 0.34.1 → 0.34.2

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.
@@ -1537,7 +1537,7 @@ You have been provided with \`IValidation.IError[][]\` containing **previous his
1537
1537
  **Success means: the error path never appears in future correction cycles.**`};var sBn={};const oBn=new dOe(()=>{var s;return JIe()?((s=sBn.LANG)==null?void 0:s.split(".")[0])??"en-US":navigator.language}),cBn=new dOe(()=>Intl.DateTimeFormat().resolvedOptions().timeZone);function uBn(s){var y;if(((y=s==null?void 0:s.systemPrompt)==null?void 0:y.common)!==void 0)return s.systemPrompt.common(s);const o=(s==null?void 0:s.locale)??oBn.get(),d=(s==null?void 0:s.timezone)??cBn.get();return O6.COMMON.replace("${locale}",o).replace("${timezone}",d).replace("${datetime}",new Date().toISOString())}const s$={write:uBn};function lBn(s){return typeof s.initialize=="function"}function pOe(s){const o=async(d,y,C=0)=>{try{return await d(y)}catch(O){if(C>=s-1)throw O;return o(d,O,C+1)}};return o}class KQ extends Error{constructor(){super();const o=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,o):this.__proto__=o}}class Cmt extends KQ{constructor(o){super(),this.reasoning=o}}var hFt;(s=>{function o(d){return new TextDecoder().decode(d)}s.toUtf8=o})(hFt||(hFt={}));function gOe(s,o){return{accepted_prediction_tokens:(s.accepted_prediction_tokens??0)+(o.accepted_prediction_tokens??0),reasoning_tokens:(s.reasoning_tokens??0)+(o.reasoning_tokens??0),rejected_prediction_tokens:(s.rejected_prediction_tokens??0)+(o.rejected_prediction_tokens??0)}}function bOe(s,o){return{audio_tokens:(s.audio_tokens??0)+(o.audio_tokens??0),cached_tokens:(s.cached_tokens??0)+(o.cached_tokens??0)}}function hBn(s,o){return{prompt_tokens:(s.prompt_tokens??0)+(o.prompt_tokens??0),completion_tokens:(s.completion_tokens??0)+(o.completion_tokens??0),total_tokens:(s.total_tokens??0)+(o.total_tokens??0),completion_tokens_details:gOe(s.completion_tokens_details??{accepted_prediction_tokens:0,reasoning_tokens:0,rejected_prediction_tokens:0},o.completion_tokens_details??{accepted_prediction_tokens:0,reasoning_tokens:0,rejected_prediction_tokens:0}),prompt_tokens_details:bOe(s.prompt_tokens_details??{audio_tokens:0,cached_tokens:0},o.prompt_tokens_details??{audio_tokens:0,cached_tokens:0})}}const fBn={sum:hBn,sumCompletionTokenDetail:gOe,sumPromptTokenDetail:bOe};var zbt={},mOe={},c$t={};Object.defineProperty(c$t,"__esModule",{value:!0});c$t.addMissingBraces=dBn;function dBn(s){const o={s:"OUT",stack:[],line:1,col:0,edits:[]},d=Array.from(s).reduce((C,O,P)=>{var H;const et=O===`
1538
1538
  `?Object.assign(Object.assign({},C),{line:C.line+1,col:0}):Object.assign(Object.assign({},C),{col:C.col+1}),U=bBn(O),nt=(H=mBn[et.s])===null||H===void 0?void 0:H[U];return nt?nt(et,O,P):et},o);if(d.s!=="OUT")return s;const y=d.stack.length===0?d:(()=>{const C=d.stack.slice().reverse().map(O=>yOe[O.type]).join("");return Object.assign(Object.assign({},d),{edits:[...d.edits,{op:"insert",index:s.length,text:C}],stack:[]})})();return pBn(s,y.edits)}function pBn(s,o){const y=[...o].sort((C,O)=>C.index-O.index).reduce((C,O)=>{const P=s.slice(C.cursor,O.index),H={out:C.out+P,cursor:O.index};return O.op==="delete"?{out:H.out,cursor:H.cursor+1}:O.op==="replace"?{out:H.out+O.text,cursor:H.cursor+1}:{out:H.out+O.text,cursor:H.cursor}},{out:"",cursor:0});return y.out+s.slice(y.cursor)}const gBn=Object.freeze({"}":"{","]":"["}),yOe=Object.freeze({"{":"}","[":"]"}),bBn=s=>{switch(s){case'"':return"DQUOTE";case"\\":return"BSLASH";case"{":return"OCB";case"[":return"OSB";case"}":return"CCB";case"]":return"CSB";case`
1539
1539
  `:return"NEWLINE";default:return"CHAR"}},o9e=(s,o,d)=>Object.assign(Object.assign({},s),{stack:[...s.stack,{type:o,index:d}]}),c9e=(s,o)=>Object.assign(Object.assign({},s),{edits:[...s.edits,o]}),u9e=(s,o,d)=>(()=>{if(s.stack.length===0)return c9e(s,{op:"delete",index:d});const y=s.stack[s.stack.length-1];if(y!==void 0&&y.type!==gBn[o]){const C=yOe[y.type];return c9e(Object.assign(Object.assign({},s),{stack:s.stack.slice(0,-1)}),{op:"replace",index:d,text:C})}return Object.assign(Object.assign({},s),{stack:s.stack.slice(0,-1)})})(),mBn={OUT:{DQUOTE:s=>Object.assign(Object.assign({},s),{s:"IN"}),OCB:(s,o,d)=>o9e(s,"{",d),OSB:(s,o,d)=>o9e(s,"[",d),CCB:(s,o,d)=>u9e(s,"}",d),CSB:(s,o,d)=>u9e(s,"]",d)},IN:{BSLASH:s=>Object.assign(Object.assign({},s),{s:"ESC"}),DQUOTE:s=>Object.assign(Object.assign({},s),{s:"OUT"})},ESC:{DQUOTE:s=>Object.assign(Object.assign({},s),{s:"IN"}),BSLASH:s=>Object.assign(Object.assign({},s),{s:"IN"}),OCB:s=>Object.assign(Object.assign({},s),{s:"IN"}),OSB:s=>Object.assign(Object.assign({},s),{s:"IN"}),CCB:s=>Object.assign(Object.assign({},s),{s:"IN"}),CSB:s=>Object.assign(Object.assign({},s),{s:"IN"}),CHAR:s=>Object.assign(Object.assign({},s),{s:"IN"}),NEWLINE:s=>Object.assign(Object.assign({},s),{s:"IN"})}};var u$t={};Object.defineProperty(u$t,"__esModule",{value:!0});u$t.removeEmptyObjectPrefix=yBn;function yBn(s){return RegExp("^{}.").test(s)===!0?s.substring(2):s}var l$t={};Object.defineProperty(l$t,"__esModule",{value:!0});l$t.removeTrailingCommas=wBn;function wBn(s){const o=Array.from(s),d=U=>U==='"',y=U=>U==="\\",C=U=>/\s/.test(U),O=U=>U==="]"||U==="}",P=(U,nt)=>nt>=U.length||U[nt]===void 0?null:C(U[nt])||U[nt]===","?P(U,nt+1):U[nt],H={out:"",inString:!1,escaping:!1,skippingTrailingCommas:!1};return o.reduce((U,nt,W,Y)=>{if(U.inString){const at=U.out+nt;return y(nt)?Object.assign(Object.assign({},U),{out:at,escaping:!U.escaping}):d(nt)&&!U.escaping?Object.assign(Object.assign({},U),{out:at,inString:!1,escaping:!1}):Object.assign(Object.assign({},U),{out:at,escaping:!1})}if(U.skippingTrailingCommas){if(nt===",")return U;if(C(nt)){const at=P(Y,W+1);return O(at)?Object.assign(Object.assign({},U),{out:U.out+nt}):U}return O(nt)?Object.assign(Object.assign({},U),{out:U.out+nt,skippingTrailingCommas:!1}):Object.assign(Object.assign({},U),{out:U.out+nt,skippingTrailingCommas:!1})}if(d(nt))return Object.assign(Object.assign({},U),{out:U.out+nt,inString:!0,escaping:!1});if(nt===","){const at=P(Y,W+1);if(O(at))return Object.assign(Object.assign({},U),{skippingTrailingCommas:!0})}return Object.assign(Object.assign({},U),{out:U.out+nt})},H).out}(function(s){var o=O1&&O1.__createBinding||(Object.create?function(y,C,O,P){P===void 0&&(P=O);var H=Object.getOwnPropertyDescriptor(C,O);(!H||("get"in H?!C.__esModule:H.writable||H.configurable))&&(H={enumerable:!0,get:function(){return C[O]}}),Object.defineProperty(y,P,H)}:function(y,C,O,P){P===void 0&&(P=O),y[P]=C[O]}),d=O1&&O1.__exportStar||function(y,C){for(var O in y)O!=="default"&&!Object.prototype.hasOwnProperty.call(C,O)&&o(C,y,O)};Object.defineProperty(s,"__esModule",{value:!0}),d(c$t,s),d(u$t,s),d(l$t,s)})(mOe);(function(s){var o=O1&&O1.__createBinding||(Object.create?function(y,C,O,P){P===void 0&&(P=O);var H=Object.getOwnPropertyDescriptor(C,O);(!H||("get"in H?!C.__esModule:H.writable||H.configurable))&&(H={enumerable:!0,get:function(){return C[O]}}),Object.defineProperty(y,P,H)}:function(y,C,O,P){P===void 0&&(P=O),y[P]=C[O]}),d=O1&&O1.__exportStar||function(y,C){for(var O in y)O!=="default"&&!Object.prototype.hasOwnProperty.call(C,O)&&o(C,y,O)};Object.defineProperty(s,"__esModule",{value:!0}),d(mOe,s)})(zbt);const r2t={parse:_Bn},vBn=(...s)=>o=>s.reduce((d,y)=>y(d),o);function _Bn(s){const o=vBn(zbt.removeEmptyObjectPrefix,zbt.addMissingBraces,zbt.removeTrailingCommas)(s);return JSON.parse(o)}function xBn(s){const o=s instanceof Uint8Array?hFt.toUtf8(s):s;return r2t.parse(o)}function wOe(s,o){const d=s.choices;o.choices.forEach(C=>{const O=d[C.index];if(O!=null){d[C.index]=vOe(O,C);return}d[C.index]={index:C.index,finish_reason:C.finish_reason??null,logprobs:C.logprobs??null,message:{tool_calls:C.delta.tool_calls!==void 0?C.delta.tool_calls.reduce((P,H)=>{var et,U;return P[H.index]={id:H.id??"",type:"function",function:{name:((et=H.function)==null?void 0:et.name)??"",arguments:((U=H.function)==null?void 0:U.arguments)??""}},P},[]):void 0,content:C.delta.content??null,refusal:C.delta.refusal??null,role:"assistant",reasoning:C.delta.reasoning??null}}});const y=o.usage==null?s.usage:s.usage==null?o.usage:fBn.sum(s.usage,o.usage);return{...s,choices:d,usage:y}}function EBn(s){const o=s[0];if(o===void 0)throw new Error("No chunks received");const d=s.reduce(wOe,{id:o.id,choices:[],created:o.created,model:o.model,object:"chat.completion",usage:void 0,service_tier:o.service_tier,system_fingerprint:o.system_fingerprint});return d.choices.forEach(y=>{var C;(C=y.message.tool_calls)==null||C.filter(O=>O.type==="function").forEach(O=>{O.function.arguments===""&&(O.function.arguments="{}")})}),d}function vOe(s,o){var d;if(s.finish_reason==null&&o.finish_reason!=null&&(s.finish_reason=o.finish_reason),s.logprobs==null&&o.logprobs!=null&&(s.logprobs=o.logprobs),o.delta.content!=null&&(s.message.content==null?s.message.content=o.delta.content:s.message.content+=o.delta.content),o.delta.refusal!=null&&(s.message.refusal==null?s.message.refusal=o.delta.refusal:s.message.refusal+=o.delta.refusal),o.delta.reasoning!=null&&(s.message.reasoning==null?s.message.reasoning=o.delta.reasoning:s.message.reasoning+=o.delta.reasoning),o.delta.tool_calls!=null){(d=s.message).tool_calls??(d.tool_calls=[]);const y=s.message.tool_calls;o.delta.tool_calls.forEach(C=>{var P,H;const O=y[C.index];if(O!=null&&O.type==="function"){y[C.index]=_Oe(O,C);return}y[C.index]={id:C.id??"",type:"function",function:{name:((P=C.function)==null?void 0:P.name)??"",arguments:((H=C.function)==null?void 0:H.arguments)??""}}})}return s}function _Oe(s,o){return o.function!=null&&(s.function.arguments+=o.function.arguments??"",s.function.name+=o.function.name??""),s.id+=o.id??"",s}const hP={transformCompletionChunk:xBn,accumulate:wOe,merge:EBn,mergeChoice:vOe,mergeToolCalls:_Oe};class TBn extends Error{constructor(o){super(o),this.name="AsyncQueueClosedError"}}class kBn{constructor(){this.queue=[],this.resolvers=[],this.closeResolvers=[],this.emptyResolvers=[],this.closed=!1}enqueue(o){var d;if(this.closed){console.error(new TBn("Cannot enqueue item: queue is closed."));return}this.queue.push(o),this.resolvers.length>0&&((d=this.resolvers.shift())==null||d({value:this.queue.shift(),done:!1}))}async dequeue(){const o=this.isEmpty()?this.isClosed()?{value:void 0,done:!0}:null:{value:this.queue.shift(),done:!1};return this.isEmpty()&&this.emptyResolvers.length!==0&&(this.emptyResolvers.forEach(d=>d()),this.emptyResolvers=[]),o!==null?o:new Promise(d=>this.resolvers.push(d))}isEmpty(){return this.queue.length===0}isClosed(){return this.closed}done(){return this.isClosed()&&this.isEmpty()}close(){var o;for(this.closed=!0;this.resolvers.length>0;)(o=this.resolvers.shift())==null||o({value:void 0,done:!0});this.closeResolvers.forEach(d=>d())}async waitUntilEmpty(){return this.isEmpty()?Promise.resolve():new Promise(o=>{this.emptyResolvers.push(o)})}async waitClosed(){return this.isClosed()?Promise.resolve():new Promise(o=>{this.closeResolvers.push(o)})}}class SBn{constructor(){this.queue=new kBn,this.consumer=new ReadableStream({start:async o=>{for(;;){const{value:d,done:y}=await this.queue.dequeue();if(y===!0){o.close();return}o.enqueue(d)}}})}produce(o){this.queue.enqueue(o)}close(){this.queue.close()}done(){return this.queue.done()}async waitClosed(){await this.queue.waitClosed()}async waitUntilEmpty(){await this.queue.waitUntilEmpty()}}async function CBn(s,o){const d=s.getReader(),y=[];for(;;){const{done:C,value:O}=await d.read();if(C||(o==null?void 0:o.aborted)===!0)break;y.push(O)}return y}async function ABn(s,o,d){var P;const y=s.getReader(),C=f$t(y);let O=d.initial??null;for await(const H of C){if(((P=d.abortSignal)==null?void 0:P.aborted)===!0)break;if(O===null){O=H;continue}O=o(O,H)}return O}function IBn(...s){return new ReadableStream({start:d=>{s.forEach(y=>d.enqueue(y)),d.close()}})}async function*h$t(s){yield s}async function*f$t(s,o){for(;;){const{done:d,value:y}=await s.read();if(d||(o==null?void 0:o.aborted)===!0)break;yield y}}function OBn(s,o,d){const y=s.getReader();return new ReadableStream({pull:async C=>{const{done:O,value:P}=await y.read();if(O===!0||(d==null?void 0:d.aborted)===!0){C.close();return}C.enqueue(o(P))}})}const GQ={readAll:CBn,reduce:ABn,from:IBn,transform:OBn};async function i2t(s,o,d){const y=new Map,C=await GQ.reduce(s,async(O,P)=>{const H=await O,et=U=>{for(const nt of U){if(nt.delta.content!=null&&nt.delta.content!=="")if(y.has(nt.index)){const W=y.get(nt.index);W.content+=nt.delta.content,W.mpsc.produce(nt.delta.content)}else{const W=new SBn;y.set(nt.index,{content:nt.delta.content,mpsc:W}),W.produce(nt.delta.content),o({stream:f$t(W.consumer.getReader()),done:()=>W.done(),get:()=>{var Y;return((Y=y.get(nt.index))==null?void 0:Y.content)??""},join:async()=>(await W.waitClosed(),y.get(nt.index).content)})}if(nt.finish_reason!=null){const W=y.get(nt.index);W!=null&&W.mpsc.close()}}};return H.object==="chat.completion.chunk"?(et([H,P].flatMap(U=>U.choices)),hP.merge([H,P])):(et(P.choices),hP.accumulate(H,P))},{abortSignal:d});if(C==null)throw new Error(`StreamUtil.reduce did not produce a ChatCompletion. Possible causes: the input stream was empty, invalid, or closed prematurely. To debug: check that the stream is properly initialized and contains valid ChatCompletionChunk data. You may also enable verbose logging upstream to inspect the stream contents. Stream locked: ${s.locked}.`);if(C.object==="chat.completion.chunk"){const O=hP.merge([C]);return O.choices.forEach(P=>{P.message.content!=null&&P.message.content!==""&&o({stream:h$t(P.message.content),done:()=>!0,get:()=>P.message.content,join:async()=>P.message.content})}),O}return C}function a2t(s){return{operation:s.operation,reason:s.reason,toJSON:()=>({operation:s.operation.toJSON(),reason:s.reason})}}function xOe(s,o){const d=s.stack.findIndex(O=>O.operation.name===o.name);if(d===-1)return;const y=s.stack[d];s.stack.splice(d,1);const C=URn({selection:a2t({operation:y.operation,reason:o.reason})});s.dispatch(C).catch(()=>{})}async function NBn(s,o){var H;const d=pOe(1),C=await(async et=>d(et).catch(U=>{if(U instanceof KQ)return Symbol("emptyAssistantMessage");throw U}))(async et=>{var Y,at,dt,Lt,Mt,It,oe;const U=await s.request("call",{messages:[{role:"system",content:s$.write(s.config)},...s.histories.map(i$).flat(),{role:"user",content:s.prompt.contents.map(a$)},...et instanceof Cmt?[{role:"assistant",content:et.reasoning}]:[],...((at=(Y=s.config)==null?void 0:Y.systemPrompt)==null?void 0:at.execute)===null?[]:[{role:"system",content:((Mt=(Lt=(dt=s.config)==null?void 0:dt.systemPrompt)==null?void 0:Lt.execute)==null?void 0:Mt.call(Lt,s.histories))??O6.EXECUTE}]],tools:o.map(ie=>({type:"function",function:{name:ie.name,description:ie.function.description,parameters:"separated"in ie.function&&ie.function.separated!==void 0?ie.function.separated.llm??{type:"object",properties:{},required:[],additionalProperties:!1,$defs:{}}:ie.function.parameters}})),tool_choice:"auto"}),nt=await i2t(U,ie=>{const Ce=WQ(ie);s.dispatch(Ce).catch(()=>{})});if(nt.choices.every(ie=>ie.message.tool_calls==null&&ie.message.content==="")){const ie=nt.choices.at(0);throw((It=ie==null?void 0:ie.message)==null?void 0:It.reasoning)!=null?new Cmt(((oe=ie==null?void 0:ie.message)==null?void 0:oe.reasoning)??""):new KQ}return nt});if(typeof C=="symbol"){const et=WQ({stream:h$t(""),done:()=>!0,get:()=>"",join:async()=>""});return s.dispatch(et).catch(()=>{}),[]}const O=[],P=((H=s.config)==null?void 0:H.retry)??vk.RETRY;for(const et of C.choices)for(const U of et.message.tool_calls??[])if(U.type==="function"){const nt=o.find(Y=>Y.name===U.function.name);if(nt===void 0)continue;const W=await EOe(s,nt,U,[],P);await s.dispatch(W),O.push(W),lBn(s)&&xOe(s,{name:W.operation.name,reason:"completed"})}return O}async function EOe(s,o,d,y,C){const O=MBn(o,d,C);if(await s.dispatch(O),O.type==="jsonParseError")return LBn(s,d,O,y,C-1);const P=o.function.validate(O.arguments);if(P.success===!1){const H=KRn({call_id:d.id,operation:o,result:P,life:C});return await s.dispatch(H),PBn(s,O,H,[...y,H],C-1)}return RBn(O,o)}async function PBn(s,o,d,y,C){var O,P,H;return TOe(s,{giveUp:()=>vmt({call_id:o.id,operation:o.operation,arguments:o.arguments,value:{name:"ValidationError",message:`Invalid arguments. The validation failed after ${vk.RETRY} retries.`,errors:d.result.errors},success:!1}),operation:o.operation,toolCall:{id:o.id,arguments:JSON.stringify(o.arguments),result:JSON.stringify(d.result.errors)},systemPrompt:((H=(P=(O=s.config)==null?void 0:O.systemPrompt)==null?void 0:P.validate)==null?void 0:H.call(P,y.slice(0,-1)))??[O6.VALIDATE,...y.length>1?["",O6.VALIDATE_REPEATED.replace("${{HISTORICAL_ERRORS}}",JSON.stringify(y.slice(0,-1).map(et=>et.result.errors)))]:[]].join(`
1540
- `),life:C,previousValidationErrors:y})}async function LBn(s,o,d,y,C){var O,P,H;return TOe(s,{giveUp:()=>vmt({call_id:o.id,operation:d.operation,arguments:{},value:{name:"JsonParseError",message:`Invalid JSON format. The parsing failed after ${vk.RETRY} retries.`,arguments:d.arguments,errorMessage:d.errorMessage},success:!1}),operation:d.operation,toolCall:{id:d.id,arguments:d.arguments,result:d.errorMessage},systemPrompt:((H=(P=(O=s.config)==null?void 0:O.systemPrompt)==null?void 0:P.jsonParseError)==null?void 0:H.call(P,d))??O6.JSON_PARSE_ERROR.replace("${{ERROR_MESSAGE}}",d.errorMessage),life:C,previousValidationErrors:y})}function MBn(s,o,d){try{const y=r2t.parse(o.function.arguments);return qRn({id:o.id,operation:s,arguments:y})}catch(y){return WRn({call_id:o.id,operation:s,arguments:o.function.arguments,errorMessage:y instanceof Error?y.message:String(y),life:d})}}async function TOe(s,o){var P,H,et,U,nt,W;if(o.life<=0)return o.giveUp();const d=await s.request("call",{messages:[{role:"system",content:s$.write(s.config)},...s.histories.map(i$).flat(),{role:"user",content:s.prompt.contents.map(a$)},{role:"system",content:((et=(H=(P=s.config)==null?void 0:P.systemPrompt)==null?void 0:H.execute)==null?void 0:et.call(H,s.histories))??O6.EXECUTE},{role:"assistant",tool_calls:[{type:"function",id:o.toolCall.id,function:{name:o.operation.name,arguments:o.toolCall.arguments}}]},{role:"tool",content:o.toolCall.result,tool_call_id:o.toolCall.id},{role:"system",content:o.systemPrompt}],tools:[{type:"function",function:{name:o.operation.name,description:o.operation.function.description,parameters:"separated"in o.operation.function&&o.operation.function.separated!==void 0?((U=o.operation.function.separated)==null?void 0:U.llm)??{$defs:{},type:"object",properties:{},additionalProperties:!1,required:[]}:o.operation.function.parameters}}],tool_choice:"required"}),y=await GQ.readAll(d),O=(W=(nt=hP.merge(y).choices[0])==null?void 0:nt.message.tool_calls)==null?void 0:W.filter(Y=>Y.type==="function").find(Y=>Y.function.name===o.operation.name);return O===void 0?o.giveUp():EOe(s,o.operation,O,o.previousValidationErrors,o.life)}async function RBn(s,o){try{const d=await(async()=>{switch(o.protocol){case"class":return DBn(s,o);case"http":return BBn(s,o);case"mcp":return FBn(s,o);default:throw new Error("Unknown protocol")}})();return vmt({call_id:s.id,operation:s.operation,arguments:s.arguments,value:d,success:!0})}catch(d){return vmt({call_id:s.id,operation:s.operation,arguments:s.arguments,value:d instanceof Error?{...d,name:d.name,message:d.message}:d,success:!1})}}async function DBn(s,o){const d=o.controller.execute;return typeof d=="function"?await d({application:o.controller.application,function:o.function,arguments:s.arguments}):await d[o.function.name](s.arguments)}async function BBn(s,o){const d=o.controller.execute;return typeof d=="function"?await d({connection:o.controller.connection,application:o.controller.application,function:o.function,arguments:s.arguments}):await lFt.propagate({connection:o.controller.connection,application:o.controller.application,function:o.function,input:s.arguments})}async function FBn(s,o){return o.controller.client.callTool({method:o.function.name,name:o.function.name,arguments:s.arguments}).then(d=>d.content)}var d$t={};Object.defineProperty(d$t,"__esModule",{value:!0});var o$=d$t._validateReport=void 0;const $Bn=s=>{const o=d=>{if(s.length===0)return!0;const y=s[s.length-1].path;return d.length>y.length||y.substring(0,d.length)!==d};return(d,y)=>{var C;return d&&o(y.path)&&(y.value===void 0&&((C=y.description)!==null&&C!==void 0||(y.description=["The value at this path is `undefined`.","",`Please fill the \`${y.expected}\` typed value next time.`].join(`
1540
+ `),life:C,previousValidationErrors:y})}async function LBn(s,o,d,y,C){var O,P,H;return TOe(s,{giveUp:()=>vmt({call_id:o.id,operation:d.operation,arguments:{},value:{name:"JsonParseError",message:`Invalid JSON format. The parsing failed after ${vk.RETRY} retries.`,arguments:d.arguments,errorMessage:d.errorMessage},success:!1}),operation:d.operation,toolCall:{id:d.id,arguments:d.arguments,result:d.errorMessage},systemPrompt:((H=(P=(O=s.config)==null?void 0:O.systemPrompt)==null?void 0:P.jsonParseError)==null?void 0:H.call(P,d))??O6.JSON_PARSE_ERROR.replace("${{ERROR_MESSAGE}}",d.errorMessage),life:C,previousValidationErrors:y})}function MBn(s,o,d){try{const y=r2t.parse(o.function.arguments);return qRn({id:o.id,operation:s,arguments:y})}catch(y){return WRn({call_id:o.id,operation:s,arguments:o.function.arguments,errorMessage:y instanceof Error?y.message:String(y),life:d})}}async function TOe(s,o){var P,H,et,U,nt,W;if(o.life<=0)return o.giveUp();const d=await s.request("call",{messages:[{role:"system",content:s$.write(s.config)},...s.histories.map(i$).flat(),{role:"user",content:s.prompt.contents.map(a$)},{role:"system",content:((et=(H=(P=s.config)==null?void 0:P.systemPrompt)==null?void 0:H.execute)==null?void 0:et.call(H,s.histories))??O6.EXECUTE},{role:"assistant",tool_calls:[{type:"function",id:o.toolCall.id,function:{name:o.operation.name,arguments:o.toolCall.arguments}}]},{role:"tool",content:o.toolCall.result,tool_call_id:o.toolCall.id},{role:"system",content:o.systemPrompt}],tools:[{type:"function",function:{name:o.operation.name,description:o.operation.function.description,parameters:"separated"in o.operation.function&&o.operation.function.separated!==void 0?((U=o.operation.function.separated)==null?void 0:U.llm)??{$defs:{},type:"object",properties:{},additionalProperties:!1,required:[]}:o.operation.function.parameters}}],tool_choice:"required"}),y=await GQ.readAll(d),O=(W=(nt=hP.merge(y).choices[0])==null?void 0:nt.message.tool_calls)==null?void 0:W.filter(Y=>Y.type==="function").find(Y=>Y.function.name===o.operation.name);return O===void 0?o.giveUp():EOe(s,o.operation,O,o.previousValidationErrors,o.life)}async function RBn(s,o){try{const d=await(async()=>{switch(o.protocol){case"class":return DBn(s,o);case"http":return BBn(s,o);case"mcp":return FBn(s,o);default:throw new Error("Unknown protocol")}})();return vmt({call_id:s.id,operation:s.operation,arguments:s.arguments,value:d,success:!0})}catch(d){return vmt({call_id:s.id,operation:s.operation,arguments:s.arguments,value:d instanceof Error?{...d,name:d.name,message:d.message,stack:d.stack}:d,success:!1})}}async function DBn(s,o){const d=o.controller.execute;return typeof d=="function"?await d({application:o.controller.application,function:o.function,arguments:s.arguments}):await d[o.function.name](s.arguments)}async function BBn(s,o){const d=o.controller.execute;return typeof d=="function"?await d({connection:o.controller.connection,application:o.controller.application,function:o.function,arguments:s.arguments}):await lFt.propagate({connection:o.controller.connection,application:o.controller.application,function:o.function,input:s.arguments})}async function FBn(s,o){return o.controller.client.callTool({method:o.function.name,name:o.function.name,arguments:s.arguments}).then(d=>d.content)}var d$t={};Object.defineProperty(d$t,"__esModule",{value:!0});var o$=d$t._validateReport=void 0;const $Bn=s=>{const o=d=>{if(s.length===0)return!0;const y=s[s.length-1].path;return d.length>y.length||y.substring(0,d.length)!==d};return(d,y)=>{var C;return d&&o(y.path)&&(y.value===void 0&&((C=y.description)!==null&&C!==void 0||(y.description=["The value at this path is `undefined`.","",`Please fill the \`${y.expected}\` typed value next time.`].join(`
1541
1541
  `))),s.push(y)),!1}};o$=d$t._validateReport=$Bn;const eBt={functions:[{name:"cancelFunctions",parameters:{description:` Properties of the function
1542
1542
 
1543
1543
  ------------------------------
@@ -1,4 +1,4 @@
1
- import{j as m,o as j,r as b,T as g}from"../client-B3aq8qpT.js";import{q as T,t as _,r as v,s as x,w as $,x as P,y as U,z as R,E as F,v as k,d as M,_ as y,V as w,c as S,F as q,T as D,B as O}from"../VendorConfigurationMovie-tzKQJFG0.js";import{D as L}from"../Divider-DX1xhf0M.js";class I{constructor(o){this.props=o,this.operations_=T.compose({controllers:o.controllers,config:o.config}),this.histories_=(o.histories??[]).map(s=>_({operations:this.operations_.group,history:s})),this.token_usage_=this.props.tokenUsage!==void 0?this.props.tokenUsage instanceof v?this.props.tokenUsage:new v(this.props.tokenUsage):v.zero(),this.listeners_=new Map,this.semaphore_=o.vendor.semaphore!=null?typeof o.vendor.semaphore=="object"?o.vendor.semaphore:new x(o.vendor.semaphore):null}clone(){var o;return new I({...this.props,histories:(o=this.props.histories)==null?void 0:o.slice()})}async conversate(o,s={}){var i,n,f,C;const l=[],c=async h=>{try{await this.dispatch(h),"toHistory"in h&&("join"in h?l.push(async()=>(await h.join(),h.toHistory())):l.push(async()=>h.toHistory()))}catch{}},a=$({contents:Array.isArray(o)?o:typeof o=="string"?[{type:"text",text:o}]:[o]});c(a).catch(()=>{});const r=this.getContext({prompt:a,dispatch:c,usage:this.token_usage_,abortSignal:s.abortSignal}),e=await P(r,this.operations_.array);e.length&&((n=(i=this.props.config)==null?void 0:i.executor)==null?void 0:n.describe)!==null&&((C=(f=this.props.config)==null?void 0:f.executor)==null?void 0:C.describe)!==!1&&await U(r,e);const t=await Promise.all(l.map(async h=>h()));return this.histories_.push(...t),t}getConfig(){return this.props.config}getVendor(){return this.props.vendor}getOperations(){return this.operations_.array}getControllers(){return this.props.controllers}getHistories(){return this.histories_}getTokenUsage(){return this.token_usage_}getContext(o){const s=R({vendor:this.props.vendor,config:this.props.config,dispatch:o.dispatch,abortSignal:o.abortSignal,usage:this.token_usage_});return{operations:this.operations_,config:this.props.config,histories:this.histories_,prompt:o.prompt,dispatch:o.dispatch,request:this.semaphore_===null?s:async(l,c)=>{await this.semaphore_.acquire();try{return await s(l,c)}finally{this.semaphore_.release().catch(()=>{})}}}}on(o,s){return F(this.listeners_,o,()=>new Set).add(s),this}off(o,s){const l=this.listeners_.get(o);return l!==void 0&&(l.delete(s),l.size===0&&this.listeners_.delete(o)),this}async dispatch(o){const s=this.listeners_.get(o.type);s!==void 0&&await Promise.all(Array.from(s).map(async l=>{try{await l(o)}catch{}}))}}var B={};Object.defineProperty(B,"__esModule",{value:!0});var u=B._isFormatUri=void 0;const E=d=>z.test(d)&&K.test(d);u=B._isFormatUri=E;const z=/\/|:/,K=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;var A={};Object.defineProperty(A,"__esModule",{value:!0});var p=A._isFormatUuid=void 0;const N=d=>W.test(d);p=A._isFormatUuid=N;const W=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;class G{constructor(){this.articles=[]}index(){return this.articles}create(o){const s={id:k(),title:o.input.title,body:o.input.body,thumbnail:o.input.thumbnail,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return this.articles.push(s),s}update(o){const s=this.articles.find(l=>l.id===o.id);if(s===void 0)throw new Error("Unable to find the matched article.");o.input.title!==void 0&&(s.title=o.input.title),o.input.body!==void 0&&(s.body=o.input.body),o.input.thumbnail!==void 0&&(s.thumbnail=o.input.thumbnail),s.updated_at=new Date().toISOString()}erase(o){const s=this.articles.findIndex(l=>l.id===o.id);if(s===-1)throw new Error("Unable to find the matched article.");this.articles.splice(s,1)}}const H={chatgpt:{model:"chatgpt",options:{reference:!0,strict:!1,separate:null},functions:[{name:"index",parameters:{type:"object",properties:{},additionalProperties:!1,required:[],$defs:{IBbsArticle:{description:"Article entity.\n\n`IBbsArticle` is an entity representing an article in the BBS (Bulletin Board System).",type:"object",properties:{id:{description:`Primary Key.
1
+ import{j as m,o as j,r as b,T as g}from"../client-B3aq8qpT.js";import{q as T,t as _,r as v,s as x,w as $,x as P,y as U,z as R,E as F,v as k,d as M,_ as y,V as w,c as S,F as q,T as D,B as O}from"../VendorConfigurationMovie-RyNqJgVh.js";import{D as L}from"../Divider-DX1xhf0M.js";class I{constructor(o){this.props=o,this.operations_=T.compose({controllers:o.controllers,config:o.config}),this.histories_=(o.histories??[]).map(s=>_({operations:this.operations_.group,history:s})),this.token_usage_=this.props.tokenUsage!==void 0?this.props.tokenUsage instanceof v?this.props.tokenUsage:new v(this.props.tokenUsage):v.zero(),this.listeners_=new Map,this.semaphore_=o.vendor.semaphore!=null?typeof o.vendor.semaphore=="object"?o.vendor.semaphore:new x(o.vendor.semaphore):null}clone(){var o;return new I({...this.props,histories:(o=this.props.histories)==null?void 0:o.slice()})}async conversate(o,s={}){var i,n,f,C;const l=[],c=async h=>{try{await this.dispatch(h),"toHistory"in h&&("join"in h?l.push(async()=>(await h.join(),h.toHistory())):l.push(async()=>h.toHistory()))}catch{}},a=$({contents:Array.isArray(o)?o:typeof o=="string"?[{type:"text",text:o}]:[o]});c(a).catch(()=>{});const r=this.getContext({prompt:a,dispatch:c,usage:this.token_usage_,abortSignal:s.abortSignal}),e=await P(r,this.operations_.array);e.length&&((n=(i=this.props.config)==null?void 0:i.executor)==null?void 0:n.describe)!==null&&((C=(f=this.props.config)==null?void 0:f.executor)==null?void 0:C.describe)!==!1&&await U(r,e);const t=await Promise.all(l.map(async h=>h()));return this.histories_.push(...t),t}getConfig(){return this.props.config}getVendor(){return this.props.vendor}getOperations(){return this.operations_.array}getControllers(){return this.props.controllers}getHistories(){return this.histories_}getTokenUsage(){return this.token_usage_}getContext(o){const s=R({vendor:this.props.vendor,config:this.props.config,dispatch:o.dispatch,abortSignal:o.abortSignal,usage:this.token_usage_});return{operations:this.operations_,config:this.props.config,histories:this.histories_,prompt:o.prompt,dispatch:o.dispatch,request:this.semaphore_===null?s:async(l,c)=>{await this.semaphore_.acquire();try{return await s(l,c)}finally{this.semaphore_.release().catch(()=>{})}}}}on(o,s){return F(this.listeners_,o,()=>new Set).add(s),this}off(o,s){const l=this.listeners_.get(o);return l!==void 0&&(l.delete(s),l.size===0&&this.listeners_.delete(o)),this}async dispatch(o){const s=this.listeners_.get(o.type);s!==void 0&&await Promise.all(Array.from(s).map(async l=>{try{await l(o)}catch{}}))}}var B={};Object.defineProperty(B,"__esModule",{value:!0});var u=B._isFormatUri=void 0;const E=d=>z.test(d)&&K.test(d);u=B._isFormatUri=E;const z=/\/|:/,K=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;var A={};Object.defineProperty(A,"__esModule",{value:!0});var p=A._isFormatUuid=void 0;const N=d=>W.test(d);p=A._isFormatUuid=N;const W=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;class G{constructor(){this.articles=[]}index(){return this.articles}create(o){const s={id:k(),title:o.input.title,body:o.input.body,thumbnail:o.input.thumbnail,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return this.articles.push(s),s}update(o){const s=this.articles.find(l=>l.id===o.id);if(s===void 0)throw new Error("Unable to find the matched article.");o.input.title!==void 0&&(s.title=o.input.title),o.input.body!==void 0&&(s.body=o.input.body),o.input.thumbnail!==void 0&&(s.thumbnail=o.input.thumbnail),s.updated_at=new Date().toISOString()}erase(o){const s=this.articles.findIndex(l=>l.id===o.id);if(s===-1)throw new Error("Unable to find the matched article.");this.articles.splice(s,1)}}const H={chatgpt:{model:"chatgpt",options:{reference:!0,strict:!1,separate:null},functions:[{name:"index",parameters:{type:"object",properties:{},additionalProperties:!1,required:[],$defs:{IBbsArticle:{description:"Article entity.\n\n`IBbsArticle` is an entity representing an article in the BBS (Bulletin Board System).",type:"object",properties:{id:{description:`Primary Key.
2
2
 
3
3
 
4
4
  @format uuid`,type:"string"},created_at:{description:`Creation time of the article.