gauss-ts 2.0.11 → 2.0.13
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/README.md +10 -1
- package/dist/{agent-5ZP2qaBy.d.ts → agent-CrZrTEuW.d.ts} +14 -1
- package/dist/{agent-Bduw0_vN.d.cts → agent-DNhLvpNL.d.cts} +14 -1
- package/dist/agent.cjs +3 -3
- package/dist/agent.cjs.map +1 -1
- package/dist/agent.d.cts +2 -2
- package/dist/agent.d.ts +2 -2
- package/dist/agent.js +3 -3
- package/dist/agent.js.map +1 -1
- package/dist/index.cjs +17 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10 -4
- package/dist/index.d.ts +10 -4
- package/dist/index.js +18 -18
- package/dist/index.js.map +1 -1
- package/dist/{orchestration-Djddjy3b.d.ts → orchestration-Bo_pk-NT.d.ts} +1 -1
- package/dist/{orchestration-GEPRg6TZ.d.cts → orchestration-DHyULA4G.d.cts} +1 -1
- package/dist/orchestration.cjs +4 -4
- package/dist/orchestration.cjs.map +1 -1
- package/dist/orchestration.d.cts +2 -2
- package/dist/orchestration.d.ts +2 -2
- package/dist/orchestration.js +4 -4
- package/dist/orchestration.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -201,11 +201,19 @@ const routed = c.withRoutingContext({
|
|
|
201
201
|
});
|
|
202
202
|
|
|
203
203
|
// Apply built-in enterprise governance packs
|
|
204
|
-
import { applyGovernancePack } from "gauss-ts";
|
|
204
|
+
import { applyGovernancePack, explainRoutingTarget } from "gauss-ts";
|
|
205
205
|
const hardenedPolicy = applyGovernancePack(
|
|
206
206
|
{ fallbackOrder: ["anthropic", "openai"] },
|
|
207
207
|
"balanced-mix",
|
|
208
208
|
);
|
|
209
|
+
|
|
210
|
+
const explanation = explainRoutingTarget(
|
|
211
|
+
hardenedPolicy,
|
|
212
|
+
"openai",
|
|
213
|
+
"gpt-5.2",
|
|
214
|
+
{ currentHourUtc: 11, governanceTags: ["balanced"] },
|
|
215
|
+
);
|
|
216
|
+
console.log(explanation);
|
|
209
217
|
```
|
|
210
218
|
|
|
211
219
|
### Unified Control Plane (M51 foundation)
|
|
@@ -230,6 +238,7 @@ console.log(`Control Plane: ${url}`);
|
|
|
230
238
|
// hosted ops health -> GET ${url}/api/ops/health
|
|
231
239
|
// hosted ops summary -> GET ${url}/api/ops/summary
|
|
232
240
|
// hosted ops tenant breakdown -> GET ${url}/api/ops/tenants
|
|
241
|
+
// hosted policy explain -> GET ${url}/api/ops/policy/explain?provider=openai&model=gpt-5.2
|
|
233
242
|
// hosted ops dashboard -> GET ${url}/ops
|
|
234
243
|
// hosted tenant dashboard -> GET ${url}/ops/tenants
|
|
235
244
|
```
|
|
@@ -36,6 +36,18 @@ interface ResolvedRoutingTarget {
|
|
|
36
36
|
model: string;
|
|
37
37
|
selectedBy: "direct" | `alias:${string}` | `fallback:${ProviderType}`;
|
|
38
38
|
}
|
|
39
|
+
type RoutingExplainCheckName = "time_window" | "cost_limit" | "rate_limit" | "governance" | "selection";
|
|
40
|
+
interface RoutingExplainCheck {
|
|
41
|
+
check: RoutingExplainCheckName;
|
|
42
|
+
status: "passed" | "failed" | "skipped";
|
|
43
|
+
detail: string;
|
|
44
|
+
}
|
|
45
|
+
interface RoutingDecisionExplanation {
|
|
46
|
+
ok: boolean;
|
|
47
|
+
decision?: ResolvedRoutingTarget;
|
|
48
|
+
checks: RoutingExplainCheck[];
|
|
49
|
+
error?: string;
|
|
50
|
+
}
|
|
39
51
|
interface ResolveRoutingTargetOptions {
|
|
40
52
|
availableProviders?: ProviderType[];
|
|
41
53
|
estimatedCostUsd?: number;
|
|
@@ -51,6 +63,7 @@ declare function enforceRoutingTimeWindow(policy: RoutingPolicy | undefined, hou
|
|
|
51
63
|
declare function enforceRoutingGovernance(policy: RoutingPolicy | undefined, provider: ProviderType, tags?: string[]): void;
|
|
52
64
|
declare function resolveFallbackProvider(policy: RoutingPolicy | undefined, availableProviders: ProviderType[]): ProviderType | null;
|
|
53
65
|
declare function resolveRoutingTarget(policy: RoutingPolicy | undefined, provider: ProviderType, model: string, options?: ResolveRoutingTargetOptions): ResolvedRoutingTarget;
|
|
66
|
+
declare function explainRoutingTarget(policy: RoutingPolicy | undefined, provider: ProviderType, model: string, options?: ResolveRoutingTargetOptions): RoutingDecisionExplanation;
|
|
54
67
|
|
|
55
68
|
/**
|
|
56
69
|
* A single event emitted during agent streaming.
|
|
@@ -908,4 +921,4 @@ declare class Agent implements Disposable {
|
|
|
908
921
|
*/
|
|
909
922
|
declare function gauss(prompt: string, config?: Omit<AgentConfig, "name">): Promise<string>;
|
|
910
923
|
|
|
911
|
-
export { type AgentConfig as A, type GovernancePackName as G, McpClient as M, type
|
|
924
|
+
export { type AgentConfig as A, type GovernancePackName as G, McpClient as M, type RoutingPolicy as R, type StreamEvent as S, type TypedToolDef as T, Agent as a, AgentStream as b, type GovernancePolicyPack as c, type GovernanceRule as d, type McpClientConfig as e, type McpToolDef as f, type McpToolResult as g, type ResolveRoutingTargetOptions as h, type ResolvedRoutingTarget as i, type RoutingCandidate as j, type RoutingDecisionExplanation as k, type RoutingExplainCheck as l, type RoutingExplainCheckName as m, applyGovernancePack as n, createToolExecutor as o, enforceRoutingCostLimit as p, enforceRoutingGovernance as q, enforceRoutingRateLimit as r, enforceRoutingTimeWindow as s, explainRoutingTarget as t, gauss as u, governancePolicyPack as v, isTypedTool as w, resolveFallbackProvider as x, resolveRoutingTarget as y, tool as z };
|
|
@@ -36,6 +36,18 @@ interface ResolvedRoutingTarget {
|
|
|
36
36
|
model: string;
|
|
37
37
|
selectedBy: "direct" | `alias:${string}` | `fallback:${ProviderType}`;
|
|
38
38
|
}
|
|
39
|
+
type RoutingExplainCheckName = "time_window" | "cost_limit" | "rate_limit" | "governance" | "selection";
|
|
40
|
+
interface RoutingExplainCheck {
|
|
41
|
+
check: RoutingExplainCheckName;
|
|
42
|
+
status: "passed" | "failed" | "skipped";
|
|
43
|
+
detail: string;
|
|
44
|
+
}
|
|
45
|
+
interface RoutingDecisionExplanation {
|
|
46
|
+
ok: boolean;
|
|
47
|
+
decision?: ResolvedRoutingTarget;
|
|
48
|
+
checks: RoutingExplainCheck[];
|
|
49
|
+
error?: string;
|
|
50
|
+
}
|
|
39
51
|
interface ResolveRoutingTargetOptions {
|
|
40
52
|
availableProviders?: ProviderType[];
|
|
41
53
|
estimatedCostUsd?: number;
|
|
@@ -51,6 +63,7 @@ declare function enforceRoutingTimeWindow(policy: RoutingPolicy | undefined, hou
|
|
|
51
63
|
declare function enforceRoutingGovernance(policy: RoutingPolicy | undefined, provider: ProviderType, tags?: string[]): void;
|
|
52
64
|
declare function resolveFallbackProvider(policy: RoutingPolicy | undefined, availableProviders: ProviderType[]): ProviderType | null;
|
|
53
65
|
declare function resolveRoutingTarget(policy: RoutingPolicy | undefined, provider: ProviderType, model: string, options?: ResolveRoutingTargetOptions): ResolvedRoutingTarget;
|
|
66
|
+
declare function explainRoutingTarget(policy: RoutingPolicy | undefined, provider: ProviderType, model: string, options?: ResolveRoutingTargetOptions): RoutingDecisionExplanation;
|
|
54
67
|
|
|
55
68
|
/**
|
|
56
69
|
* A single event emitted during agent streaming.
|
|
@@ -908,4 +921,4 @@ declare class Agent implements Disposable {
|
|
|
908
921
|
*/
|
|
909
922
|
declare function gauss(prompt: string, config?: Omit<AgentConfig, "name">): Promise<string>;
|
|
910
923
|
|
|
911
|
-
export { type AgentConfig as A, type GovernancePackName as G, McpClient as M, type
|
|
924
|
+
export { type AgentConfig as A, type GovernancePackName as G, McpClient as M, type RoutingPolicy as R, type StreamEvent as S, type TypedToolDef as T, Agent as a, AgentStream as b, type GovernancePolicyPack as c, type GovernanceRule as d, type McpClientConfig as e, type McpToolDef as f, type McpToolResult as g, type ResolveRoutingTargetOptions as h, type ResolvedRoutingTarget as i, type RoutingCandidate as j, type RoutingDecisionExplanation as k, type RoutingExplainCheck as l, type RoutingExplainCheckName as m, applyGovernancePack as n, createToolExecutor as o, enforceRoutingCostLimit as p, enforceRoutingGovernance as q, enforceRoutingRateLimit as r, enforceRoutingTimeWindow as s, explainRoutingTarget as t, gauss as u, governancePolicyPack as v, isTypedTool as w, resolveFallbackProvider as x, resolveRoutingTarget as y, tool as z };
|
package/dist/agent.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";var P=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var q=Object.getOwnPropertyNames;var
|
|
1
|
+
"use strict";var P=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var q=Object.getOwnPropertyNames;var $=Object.prototype.hasOwnProperty;var j=(r,e)=>{for(var t in e)P(r,t,{get:e[t],enumerable:!0})},Y=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of q(e))!$.call(r,n)&&n!==t&&P(r,n,{get:()=>e[n],enumerable:!(o=L(e,n))||o.enumerable});return r};var F=r=>Y(P({},"__esModule",{value:!0}),r);var ae={};j(ae,{Agent:()=>h,AgentStream:()=>y,availableRuntimes:()=>U,batch:()=>N,executeCode:()=>G,gauss:()=>S,generateImage:()=>H,version:()=>k.version});module.exports=F(ae);var u=require("gauss-napi");var R=class extends Error{code;constructor(e,t){super(t),this.name="GaussError",this.code=e}},f=class extends R{resourceType;resourceName;constructor(e,t){super("RESOURCE_DISPOSED",`${e} "${t}" has been destroyed. Create a new instance.`),this.name="DisposedError",this.resourceType=e,this.resourceName=t}};var b="gpt-5.2";var B="claude-sonnet-4-20250514";var W="gemini-2.5-flash";var J="openai/gpt-5.2",X="deepseek-chat";var V="meta-llama/Llama-3.3-70B-Instruct-Turbo",z="accounts/fireworks/models/llama-v3p1-70b-instruct",Q="mistral-large-latest",Z="sonar-pro",ee="grok-3-beta",C={openai:b,anthropic:B,google:W,openrouter:J,deepseek:X,groq:"llama-3.3-70b-versatile",ollama:"llama3.2",together:V,fireworks:z,mistral:Q,perplexity:Z,xai:ee};var te={openai:"OPENAI_API_KEY",anthropic:"ANTHROPIC_API_KEY",google:"GOOGLE_API_KEY",groq:"GROQ_API_KEY",deepseek:"DEEPSEEK_API_KEY",openrouter:"OPENROUTER_API_KEY",together:"TOGETHER_API_KEY",fireworks:"FIREWORKS_API_KEY",mistral:"MISTRAL_API_KEY",perplexity:"PERPLEXITY_API_KEY",xai:"XAI_API_KEY",ollama:""};function x(r){let e=te[r]??"";return e?(typeof process<"u"?process.env[e]:"")??"":""}function _(){let r=[{env:"OPENAI_API_KEY",provider:"openai"},{env:"ANTHROPIC_API_KEY",provider:"anthropic"},{env:"GOOGLE_API_KEY",provider:"google"},{env:"GROQ_API_KEY",provider:"groq"},{env:"DEEPSEEK_API_KEY",provider:"deepseek"},{env:"OPENROUTER_API_KEY",provider:"openrouter"},{env:"TOGETHER_API_KEY",provider:"together"},{env:"FIREWORKS_API_KEY",provider:"fireworks"},{env:"MISTRAL_API_KEY",provider:"mistral"},{env:"PERPLEXITY_API_KEY",provider:"perplexity"},{env:"XAI_API_KEY",provider:"xai"}];for(let{env:e,provider:t}of r)if(typeof process<"u"&&process.env[e])return{provider:t,model:C[t]}}function re(r,e){if(r?.maxTotalCostUsd!==void 0&&e>r.maxTotalCostUsd)throw new Error(`routing policy rejected cost ${e}`)}function oe(r,e){if(r?.maxRequestsPerMinute!==void 0&&e>r.maxRequestsPerMinute)throw new Error(`routing policy rejected rate ${e}`)}function ne(r,e){let t=r?.allowedHoursUtc;if(!(!t||t.length===0)&&(!Number.isInteger(e)||e<0||e>23||!t.includes(e)))throw new Error(`routing policy rejected hour ${e}`)}function T(r,e,t){let o=r?.governance?.rules??[];if(o.length===0)return;let n=o.filter(s=>s.type==="allow_provider").map(s=>s.provider);if(n.length>0&&!n.includes(e))throw new Error(`routing policy governance rejected provider ${e}`);for(let s of o){if(s.type==="deny_provider"&&s.provider===e)throw new Error(`routing policy governance rejected provider ${e}`);if(s.type==="require_tag"&&t!==void 0&&!t.includes(s.tag))throw new Error(`routing policy governance missing tag ${s.tag}`)}}function se(r,e){let t=r?.fallbackOrder;if(!t||t.length===0||e.length===0)return null;let o=new Set(e);for(let n of t)if(o.has(n))return n;return null}function w(r,e,t,o={}){let n=o.governanceTags,s=o.currentHourUtc??new Date().getUTCHours();ne(r,s),o.estimatedCostUsd!==void 0&&re(r,o.estimatedCostUsd),o.currentRequestsPerMinute!==void 0&&oe(r,o.currentRequestsPerMinute);let i=p=>p.length===1?p[0]:[...p].sort((g,m)=>{let v=r?.providerWeights?.[m.provider]??0,l=r?.providerWeights?.[g.provider]??0;return v!==l?v-l:(m.priority??0)-(g.priority??0)})[0],a=r?.aliases?.[t];if(a&&a.length>0){let p=[...a].sort((l,K)=>(K.priority??0)-(l.priority??0)),g=o.availableProviders;if(!g||g.length===0){let l=i(p);return T(r,l.provider,n),{provider:l.provider,model:l.model,selectedBy:`alias:${t}`}}let m=new Set(g),v=p.filter(l=>m.has(l.provider));if(v.length>0){let l=i(v);return T(r,l.provider,n),{provider:l.provider,model:l.model,selectedBy:`alias:${t}`}}}let d=se(r,o.availableProviders??[]);return d&&d!==e?(T(r,d,n),{provider:d,model:t,selectedBy:`fallback:${d}`}):(T(r,e,n),{provider:e,model:t,selectedBy:"direct"})}var O=require("gauss-napi");function ie(r){return{...r,citations:r.citations?.map(e=>({type:e.citationType??e.type,citedText:e.citedText,documentTitle:e.documentTitle,start:e.start,end:e.end}))}}var y=class{constructor(e,t,o,n,s,i){this.agentName=e;this.providerHandle=t;this.tools=o;this.messages=n;this.options=s;this.toolExecutor=i}_result;get result(){return this._result}async*[Symbol.asyncIterator](){let e=[],t,o=!1,n=i=>{try{e.push(JSON.parse(i))}catch{e.push({type:"raw",text:i})}t?.()},s=(0,O.agent_stream_with_tool_executor)(this.agentName,this.providerHandle,this.tools,this.messages,this.options,n,this.toolExecutor).then(i=>{this._result=ie(i),o=!0,t?.()});for(;!o||e.length>0;)e.length>0?yield e.shift():o||await new Promise(i=>{t=i});await s}};function A(r){return{name:r.name,description:r.description,parameters:r.parameters,execute:r.execute}}function I(r){return typeof r.execute=="function"}function D(r,e){let t=new Map(r.map(o=>[o.name,o]));return async o=>{let n;try{n=JSON.parse(o)}catch{return JSON.stringify({error:"Invalid tool call JSON"})}let s=n.tool??n.name??"",i=t.get(s);if(!i)return e?e(o):JSON.stringify({error:`Unknown tool: ${s}`});try{let a=n.args??n.arguments??{},d=await i.execute(a);return typeof d=="string"?d:JSON.stringify(d)}catch(a){let d=a instanceof Error?a.message:String(a);return JSON.stringify({error:`Tool "${s}" failed: ${d}`})}}}function E(r){return{...r,citations:r.citations?.map(e=>({type:e.citationType??e.type??"unknown",citedText:e.citedText,documentTitle:e.documentTitle,start:e.start,end:e.end}))}}var h=class r{providerHandle;_name;_requestedProvider;_requestedModel;_provider;_model;_routingPolicy;_providerOptions;_instructions;_tools=[];_options={};disposed=!1;_middleware=null;_guardrails=null;_memory=null;_sessionId="";_mcpClients=[];_mcpToolsLoaded=!1;constructor(e={}){let t=_(),o=e.provider??t?.provider??"openai",n=e.model??t?.model??b;this._requestedProvider=o,this._requestedModel=n,this._routingPolicy=e.routingPolicy;let s=w(this._routingPolicy,o,n);this._provider=s.provider,this._model=s.model,this._name=e.name??"agent",this._instructions=e.instructions??"";let i=e.providerOptions?.apiKey??x(this._provider);this._providerOptions={apiKey:i,...e.providerOptions},this.providerHandle=(0,u.create_provider)(this._provider,this._model,this._providerOptions),e.tools&&(this._tools=[...e.tools]),e.middleware&&(this._middleware=e.middleware),e.guardrails&&(this._guardrails=e.guardrails),e.memory&&(this._memory=e.memory),e.sessionId&&(this._sessionId=e.sessionId),e.mcpClients&&(this._mcpClients=[...e.mcpClients]);let a=e.codeExecution,d=a===!0?{python:!0,javascript:!0,bash:!0}:a||void 0;this._options={instructions:this._instructions||void 0,temperature:e.temperature,maxSteps:e.maxSteps,topP:e.topP,maxTokens:e.maxTokens,seed:e.seed,stopOnTool:e.stopOnTool,outputSchema:e.outputSchema,thinkingBudget:e.thinkingBudget,reasoningEffort:e.reasoningEffort,cacheControl:e.cacheControl,codeExecution:d,grounding:e.grounding,nativeCodeExecution:e.nativeCodeExecution,responseModalities:e.responseModalities}}static fromEnv(e={}){return new r(e)}get name(){return this._name}get provider(){return this._provider}get model(){return this._model}get instructions(){return this._instructions}get handle(){return this.providerHandle}get capabilities(){return(0,u.get_provider_capabilities)(this.providerHandle)}addTool(e){return this._tools.push(e),this}addTools(e){return this._tools.push(...e),this}withTool(e,t,o,n){return this._tools.push(A({name:e,description:t,parameters:n??{},execute:o})),this}setOptions(e){return this._options={...this._options,...e},this}withModel(e){return this.assertNotDisposed(),new r({...this.toConfig(),model:e})}withRoutingContext(e){this.assertNotDisposed();let t=w(this._routingPolicy,this._requestedProvider,this._requestedModel,e);return new r({...this.toConfig(),provider:t.provider,model:t.model})}withMiddleware(e){return this._middleware=e,this}withGuardrails(e){return this._guardrails=e,this}withMemory(e,t){return this._memory=e,t&&(this._sessionId=t),this}useMcpServer(e){return this._mcpClients.push(e),this._mcpToolsLoaded=!1,this}async run(e){this.assertNotDisposed(),await this.ensureMcpTools();let t=typeof e=="string"?[{role:"user",content:e}]:[...e];if(this._memory){let i=await this._memory.recall(this._sessionId?{sessionId:this._sessionId}:void 0);i.length>0&&(t=[{role:"system",content:`Previous context:
|
|
2
2
|
${i.map(d=>d.content).join(`
|
|
3
|
-
`)}`},...t])}let{toolDefs:o,executor:n}=this.resolveToolsAndExecutor(),s;if(n?s=E(await(0,
|
|
4
|
-
`);await this._memory.store({id:`${Date.now()}-user`,content:i,entryType:"conversation",timestamp:new Date().toISOString(),sessionId:this._sessionId||void 0}),await this._memory.store({id:`${Date.now()}-assistant`,content:s.text,entryType:"conversation",timestamp:new Date().toISOString(),sessionId:this._sessionId||void 0})}return s}async runWithTools(e,t){this.assertNotDisposed(),await this.ensureMcpTools();let o=typeof e=="string"?[{role:"user",content:e}]:e,{toolDefs:n,executor:s}=this.resolveToolsAndExecutor(),i=async a=>{if(s){let d=await s(a);if(!JSON.parse(d).error?.startsWith("Unknown tool:"))return d}return t(a)};return E(await(0,
|
|
3
|
+
`)}`},...t])}let{toolDefs:o,executor:n}=this.resolveToolsAndExecutor(),s;if(n?s=E(await(0,u.agent_run_with_tool_executor)(this._name,this.providerHandle,o,t,this._options,n)):s=E(await(0,u.agent_run)(this._name,this.providerHandle,o,t,this._options)),this._memory){let i=typeof e=="string"?e:e.map(a=>a.content).join(`
|
|
4
|
+
`);await this._memory.store({id:`${Date.now()}-user`,content:i,entryType:"conversation",timestamp:new Date().toISOString(),sessionId:this._sessionId||void 0}),await this._memory.store({id:`${Date.now()}-assistant`,content:s.text,entryType:"conversation",timestamp:new Date().toISOString(),sessionId:this._sessionId||void 0})}return s}async runWithTools(e,t){this.assertNotDisposed(),await this.ensureMcpTools();let o=typeof e=="string"?[{role:"user",content:e}]:e,{toolDefs:n,executor:s}=this.resolveToolsAndExecutor(),i=async a=>{if(s){let d=await s(a);if(!JSON.parse(d).error?.startsWith("Unknown tool:"))return d}return t(a)};return E(await(0,u.agent_run_with_tool_executor)(this._name,this.providerHandle,n,o,this._options,i))}async stream(e,t,o){this.assertNotDisposed(),await this.ensureMcpTools();let n=typeof e=="string"?[{role:"user",content:e}]:e,{toolDefs:s,executor:i}=this.resolveToolsAndExecutor(),a=o??i??M;return E(await(0,u.agent_stream_with_tool_executor)(this._name,this.providerHandle,s,n,this._options,t,a))}streamIter(e,t){this.assertNotDisposed();let o=typeof e=="string"?[{role:"user",content:e}]:e,{toolDefs:n,executor:s}=this.resolveToolsAndExecutor(),i=t??s??M;return new y(this._name,this.providerHandle,n,o,this._options,i)}async streamText(e,t,o){this.assertNotDisposed();let n=this.streamIter(e,o),s="";for await(let i of n){if(i.type!=="text_delta")continue;let a=typeof i.text=="string"?i.text:typeof i.delta=="string"?i.delta:"";a&&(s+=a,t?.(a))}return n.result?.text??s}async generate(e,t){this.assertNotDisposed();let o=typeof e=="string"?[{role:"user",content:e}]:e;return(0,u.generate)(this.providerHandle,o,t?.temperature,t?.maxTokens)}async generateWithTools(e,t,o){this.assertNotDisposed();let n=typeof e=="string"?[{role:"user",content:e}]:e;return(0,u.generate_with_tools)(this.providerHandle,n,t,o?.temperature,o?.maxTokens)}destroy(){if(!this.disposed){this.disposed=!0;for(let e of this._mcpClients)try{e.close()}catch{}try{(0,u.destroy_provider)(this.providerHandle)}catch{}}}[Symbol.dispose](){this.destroy()}assertNotDisposed(){if(this.disposed)throw new f("Agent",this._name)}resolveToolsAndExecutor(){let e=this._tools.filter(I),t=this._tools.map(n=>({name:n.name,description:n.description,parameters:n.parameters})),o=e.length>0?D(e):null;return{toolDefs:t,executor:o}}async ensureMcpTools(){if(!(this._mcpToolsLoaded||this._mcpClients.length===0)){for(let e of this._mcpClients){let{tools:t,executor:o}=await e.getToolsWithExecutor();for(let n of t){let s={...n,execute:async i=>{let a=JSON.stringify({tool:n.name,args:i}),d=await o(a);return JSON.parse(d)}};this._tools.push(s)}}this._mcpToolsLoaded=!0}}toConfig(){return{name:this._name,provider:this._requestedProvider,model:this._requestedModel,routingPolicy:this._routingPolicy,providerOptions:{...this._providerOptions},instructions:this._instructions||void 0,tools:[...this._tools],middleware:this._middleware??void 0,guardrails:this._guardrails??void 0,memory:this._memory??void 0,sessionId:this._sessionId||void 0,mcpClients:[...this._mcpClients],temperature:this._options.temperature,maxSteps:this._options.maxSteps,topP:this._options.topP,maxTokens:this._options.maxTokens,seed:this._options.seed,stopOnTool:this._options.stopOnTool,outputSchema:this._options.outputSchema,thinkingBudget:this._options.thinkingBudget,reasoningEffort:this._options.reasoningEffort,cacheControl:this._options.cacheControl,codeExecution:this._options.codeExecution,grounding:this._options.grounding,nativeCodeExecution:this._options.nativeCodeExecution,responseModalities:this._options.responseModalities}}},M=async()=>"{}";async function S(r,e){let t=new h({name:"gauss",...e});try{return(await t.run(r)).text}finally{t.destroy()}}async function N(r,e){let{concurrency:t=5,...o}=e??{},n=r.map(i=>({input:i})),s=new h({name:"batch",...o});try{let i=[...n.entries()],a=Array.from({length:Math.min(t,i.length)},async()=>{for(;i.length>0;){let d=i.shift();if(!d)break;let[p,g]=d;try{n[p].result=await s.run(g.input)}catch(m){n[p].error=m instanceof Error?m:new Error(String(m))}}});await Promise.all(a)}finally{s.destroy()}return n}var c=require("gauss-napi");var k=require("gauss-napi");async function G(r,e,t){return(0,c.execute_code)(r,e,t?.timeoutSecs,t?.workingDir,t?.sandbox)}async function U(){return(0,c.available_runtimes)()}async function H(r,e={}){let t=_(),o=e.provider??t?.provider??"openai",n=e.model??t?.model??"dall-e-3",s=e.providerOptions?.apiKey??x(o),i=(0,c.create_provider)(o,n,{apiKey:s,...e.providerOptions});try{return await(0,c.generate_image)(i,r,e.model,e.size,e.quality,e.style,e.aspectRatio,e.n,e.responseFormat)}finally{(0,c.destroy_provider)(i)}}0&&(module.exports={Agent,AgentStream,availableRuntimes,batch,executeCode,gauss,generateImage,version});
|
|
5
5
|
//# sourceMappingURL=agent.cjs.map
|