开发与工程 agent-harnesscoding-agentmcp-clientmcp-serversdkcliyaml-configlocal-models

Dexto

开源 AI 智能体运行框架:用 YAML 定义智能体,内置编码智能体,支持 50+ 模型热切换、MCP 工具集成与会话记忆。

FollowAgents 评估 · FARS-2.1
不推荐
51/ 100 五分制 2.6 / 5
1 2 3 4 5 6
1信任安全11 / 29 · 1.9/5

证据显示容器以非 root 用户运行、工作区句柄拒绝越根路径访问('Workspace path escapes root')、进程能力仅在显式请求时开放;这些支持 least_privilege 得 2。但未见用户确认门控、敏感数据(API key)保护/脱敏机制、外部副作用审计或回滚机制的直接证据,均扣分;package. 用 overrides 固定若干有漏洞历史的依赖(tough-cookie、qs、jws 等)属部分缓解而非系统性供应链管理。作者字段为空,署名不完整。

2可靠稳定9 / 14 · 3.2/5

集成测试针对实际契约(打包产物加载、路径越界拒绝、能力协商)编写,自洽性尚可;CI 使用 --frozen-lockfile 与固定 Node 版本支持依赖可用性;测试断言包含具体错误信息。未见主 README 与全部文档,整体文档-代码一致性只能部分确认。

3适用触发10 / 18 · 2.8/5

面向 CLI/SDK/服务器/Docker 多种使用场景,Node>=20 引擎声明明确;能力按 intent(read/process)协商,边界清晰。触发精度缺乏提示词/工具路由层面的证据,扣分。

4规范维护10 / 18 · 2.8/5

monorepo 结构清晰(@dexto/* 命名一致)、有 changesets 版本管理与 CI 构建、Docker 文档完整含 compose 示例,安装说明充分。许可证文件存在但仓库元数据为 NOASSERTION 且 package. 标注为 Elastic-2.0(源码可用限制性许可,非 OSI 开源),对企业采用构成实质约束,扣分;已知局限章节未见。作者字段为空,维护主体只能从组织结构间接推断。

5有效结果7 / 13 · 2.7/5

提供健康检查端点、REST/SSE API、SDK 与 agent image 打包器,输出可用性可评 2;相比直接使用 MCP SDK,其 image/skill/workspace 抽象有增量价值。但成本收益(LLM token 成本控制、审批开销)证据不足,扣分。

6证据核验4 / 8 · 2.5/5

测试直接对应代码声明的行为(越界拒绝、能力门控),主张可追溯到测试;事实与推断基本可分。但本次审阅仅见到部分仓库文件,跨来源(README 主文档、docs/)相互印证不充分,扣分。

证据充分度: 评估于 2026年9月9日 审查版本 a910e0ef36f2
使用前请注意
  • 许可证为 Elastic License 2.0(源码可用而非开源),禁止将其作为托管/托管服务提供给第三方,企业集成前须做合规评估。
  • 内置工具包含文件系统与进程执行(process-tools),且以 .env 明文传入 API key;部署时应限制挂载范围、网络出口并轮换密钥。
  • 未见到系统性的用户确认/审批门控与外部副作用审计证据,生产使用前应自行在宿主侧加沙箱。
  • 依赖安全依赖 pnpm overrides 的点状固定,建议补充 lockfile 审计(如 pnpm audit / Dependabot)。
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Dexto 是 Truffle AI 开发的智能体编排框架(agent harness),将大语言模型变成有状态、可执行操作、可恢复错误的可靠智能体。项目基于 TypeScript 构建,提供 CLI、Web UI、REST/SSE API 服务器和 @dexto/core SDK 四种使用方式。它自带一个生产级编码智能体,可通过命令行或网页界面直接使用,能读写代码、执行 shell 命令、生成子智能体。智能体通过版本化 YAML 文件定义,可随时更换 LLM 提供商(OpenAI、Anthropic、Google、Groq、xAI、Ollama 本地模型等)而无需改动代码。Dexto 既是 MCP 客户端(连接 30+ 工具服务器),也可作为 MCP 服务器暴露给 Claude Code、Cursor 等工具。注意该项目采用 Elastic License 2.0 许可证,并非标准开源协议。

Dexto 读取 YAML 配置(llm、mcpServers、permissions、storage 等字段)来实例化智能体。运行时它调用所配置的 LLM 提供商 API,通过 MCPManager 连接 Model Context Protocol 服务器(如 filesystem、Puppeteer 浏览器),执行工具调用并支持细粒度权限审批(manual 或 auto-approve 模式)。持久化会话与记忆存储在 Redis/PostgreSQL/SQLite 等后端,支持 dexto -c 续聊、dexto -r <id> 恢复会话、dexto search 搜索历史。智能体可通过 agent-spawner 工具生成 explore-agent 等子智能体并行处理任务。运行模式包括 Web UI(默认)、CLI(--mode cli)、服务器(--mode server,暴露 REST/SSE 接口如 POST /api/message)和 MCP 服务器(--mode mcp,通过 stdio 供 Claude Code/Cursor 接入)。SDK 方面通过 npm 安装 @dexto/core,使用 DextoAgent 类进行编程:createSession()、generate()、stream()、switchLLM()、multimodal 输入等。

  1. 开发者想在终端里自主构建、调试和重构整个代码库,可用内置 coding-agent(dexto --agent coding-agent)自动读写代码、跑测试、执行 shell 命令
  2. 团队需要把智能体嵌入自家应用,可用 @dexto/core SDK 以编程方式创建会话、流式生成、切换模型,并通过 startHonoApiServer 暴露 REST/SSE 接口
  3. 使用 Claude Code 或 Cursor 的用户想把 Dexto 智能体作为 MCP 服务器接入(dexto --mode mcp --agent coding-agent --auto-approve --no-elicitation)
  4. 注重隐私的用户可用 Ollama 或 node-llama-cpp 在本地运行 GGUF 模型(自动检测 Metal/CUDA/Vulkan GPU),数据不出机器
  5. 需要多智能体协作的场景(如 triage-agent)可让主智能体通过 agent-spawner 委派 explore-agent 等子智能体处理子任务
  6. 客服或陪伴类应用开发者可利用持久会话、记忆系统和 Discord/Telegram 集成构建跨重启保留上下文的助手

这个 Agent 有哪些优点和局限?

优点
  • 配置驱动:智能体完全由版本化 YAML 定义,换模型、换工具不需改代码,可即时重载
  • 模型无关:内置 OpenAI、Anthropic、Google、Groq、xAI、Cohere、AWS Bedrock、Vertex AI、OpenRouter、LiteLLM 及本地 Ollama/GGUF 支持,会话中可热切换模型
  • MCP 双向支持:既可作为客户端连接 30+ MCP 工具服务器,也可作为 MCP 服务器被 Claude Code/Cursor 调用
  • 开箱即用:会话持久化、记忆、多模态、可观测性、人类审批(manual/auto-approve/toolPolicies)内置于框架
  • 多种交付形态:CLI、Web UI、REST/SSE 服务器、SDK 库、MCP 服务器,以及 Discord/Telegram 集成示例
局限
  • 许可证为 Elastic License 2.0(GitHub 元数据显示 NOASSERTION),限制作为竞品服务提供,不是 OSI 开源协议,商用集成需审查条款
  • 项目标注为 Beta 状态,API 和配置格式可能变动,生产采用存在升级风险
  • 默认收集匿名遥测数据(命令、执行时间、错误、系统信息、所用模型),需手动设置 DEXTO_ANALYTICS_DISABLED=1 关闭
  • MCP 模式必须加 --auto-approve --no-elicitation(因非交互运行),削弱了人工审批的安全控制
  • 从源码构建需要 pnpm 和 Node.js 工具链;生产级存储需要自行配置 Redis/PostgreSQL

如何安装或部署这个 Agent?

推荐原生安装:macOS/Linux/WSL 执行 curl -fsSL https://dexto.ai/install | bash;Windows PowerShell 执行 irm https://dexto.ai/install.ps1 | iex。或从源码构建:git clone https://github.com/truffle-ai/dexto.git && cd dexto && pnpm install && pnpm install-cli(需要 Node.js 和 pnpm)。SDK 方式:npm install @dexto/core。首次运行会启动设置向导(dexto setup)配置 LLM 提供商和 API 密钥(如 OPENAI_API_KEY、ANTHROPIC_API_KEY),或配置本地 Ollama 模型。

如何使用这个 Agent?

安装后运行 dexto 启动默认 Web UI 并进入首次设置向导;dexto --mode cli 进入交互式终端(输入 / 查看命令);dexto -p "create a landing page" 执行一次性任务;dexto --agent coding-agent 启动编码智能体;dexto -m claude-sonnet-4-5-20250929 切换模型;dexto -c 继续上次对话;dexto --mode server --port 3001 启动 REST/SSE 服务器;dexto --mode mcp 作为 MCP 服务器运行。SDK 示例:const agent = new DextoAgent({llm: {provider: 'openai', model: 'gpt-5.2', apiKey: process.env.OPENAI_API_KEY}}); await agent.start(); const session = await agent.createSession(); const response = await agent.generate('What is TypeScript?', session.id);。可通过 dexto agents install <name> 从 Agent Registry 安装预置智能体。日志位于 ~/.dexto/logs/,用 DEXTO_LOG_LEVEL=debug 开启调试。

这个 Agent 与同类方案有什么区别?

README 将 Dexto 类比为'AI 智能体的操作系统'(LLM 是 CPU,上下文窗口是 RAM,Dexto 是操作系统),定位与直接调用 LLM API 的裸方案不同:它提供编排、状态、工具与恢复层。文档明确展示了将 Dexto 作为 MCP 服务器接入 Claude Code 和 Cursor 的用法,可作为这些工具的补充而非替代。

常见问题

使用 Dexto 需要哪些 API 密钥?
取决于所选提供商:OpenAI、Anthropic、Google、Groq、xAI、Cohere 等需要各自的 API 密钥(通过 dexto setup 配置或 YAML 中以 $ENV_VAR 引用);AWS Bedrock/Vertex AI 需要 AWS/GCP 凭证;若用 Ollama 或 node-llama-cpp 本地模型则无需云端密钥。
我的代码和数据会离开本机吗?
使用云端 LLM 提供商时提示会发送到对应 API;若隐私优先,可用 Ollama 或 node-llama-cpp 运行本地 GGUF 模型,数据保留在本机,GPU 自动检测(Metal/CUDA/Vulkan)。另注意默认有匿名遥测,可用 DEXTO_ANALYTICS_DISABLED=1 关闭。
如何控制智能体能执行哪些操作?
在 YAML 中配置 permissions:mode: manual 要求逐个工具审批,mode: auto-approve 为信任模式,toolPolicies.alwaysAllow 可白名单特定工具(如 mcp--filesystem--read_file)。子智能体会将审批请求转发给父智能体,形成统一审批流。
它是什么许可证,可以商用吗?
采用 Elastic License 2.0,允许使用和集成,但限制将其作为托管服务提供给他人。具体商用边界请阅读仓库中的 LICENSE 文件。
如何把它集成到我自己的应用?
两种方式:一是 npm install @dexto/core 后用 DextoAgent 类编程调用(createSession/generate/stream/switchLLM);二是运行 dexto --mode server 启动 Hono HTTP 服务器,通过 POST /api/message、GET /api/sessions 等 REST/SSE 端点交互。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents