@dexto/agent-config
Schema + 解析器工具,用于利用图像将一个代理 YAML 配置变成混凝土 DI 表面.
这个软件包是 产品级胶水页:1@dexto/core保持对DI的友好,以及主机(CLI/服务器/应用程序)
使用情况 @dexto/agent-config 改为:
- 验证代理配置( v)
AgentConfigSchema(中文(简体) ) - 装入图像模块( e)
loadImage()(中文(简体) ) - 将图像默认值合并为原始配置( n)
applyImageDefaults()(中文(简体) ) - 将图像工厂溶入混凝土仓库、工作空间把手、技能、工具、钩子和记录器
实例
resolveServicesFromConfig()(中文(简体) ) - 将结果转换为
DextoAgentOptions(单位:千美元)toDextoAgentOptions()(中文(简体) )
快速实例( apps)
import { DextoAgent } from '@dexto/core';
import { loadAgentConfig } from '@dexto/agent-management';
import {
AgentConfigSchema,
applyImageDefaults,
loadImage,
resolveServicesFromConfig,
setImageImporter,
toDextoAgentOptions,
} from '@dexto/agent-config';
// Under pnpm (strict dependency boundaries), configure image importing at the host entrypoint.
setImageImporter((specifier) => import(specifier));
const raw = await loadAgentConfig('./agents/my-agent.yml');
const image = await loadImage(raw.image ?? '@dexto/image-local');
const merged = applyImageDefaults(raw, image.defaults);
const config = AgentConfigSchema.parse(merged);
const services = await resolveServicesFromConfig(config, image);
const agent = new DextoAgent(toDextoAgentOptions({ config, services }));
await agent.start();
输入的主机上下文
主机运行时间可以通过图像解析对一个被键入的主机上下文进行线程,而无需烘焙 平台特定字段进入上游软件包.
import type { DextoHostContext, DextoImage } from '@dexto/agent-config';
type CloudHostContext = DextoHostContext<
{
dextoCloudflare: {
runtimeContext: {
sessionId: string;
};
};
},
{
workspace: boolean;
}
>;
declare const image: DextoImage<CloudHostContext>;
declare const hostContext: CloudHostContext;
const services = await resolveServicesFromConfig(config, image, hostContext);
const options = toDextoAgentOptions({ config, services, image, hostContext });
图像( 无登记册)
图像是打入的模块(DextoImage出口平地工厂表面.
工具/ hook/compaction 解析仍然使用配置属性访问 type
(例如, image.tools[entry.type]) (中文(简体) ). 存储由图像作为一体解决
createStores(config.storage, ...) 调用, 这样图像可以编译或直接执行
DextoStores 而不暴露下层后端构造细节. 没有全球
登记或副作用.
图像还可提供:
workspace.create(...): 返回 aWorkspaceHandleProvider。本地图像通常返回本地 文件系统控件; 主机图像可以返回由自身工作空间运行时间支持的控件.skills.create(...): 返回一个Skills执行费用DextoAgent技能停留 出自即时配置; 仍只使用即时配置 .