返回市场
赛基克

赛基克

作者:truffle-ai547 星标更新:2025-11-22

项目介绍

<a href="https://dexto.ai"> <img src="https://raw.githubusercontent.com/truffle-ai/dexto/main/.github/assets/dexto-logo.svg" alt="Dexto" width="100%" style="max-width: 1000px" /> </a> <p align="center"> <img src="https://img.shields.io/badge/状态-Beta黄色"> <img src="https://img.shields.io/badge/许可证-Elastic%202.0蓝色.svg"> <a href="https://discord.gg/GFzWFAAZcm"><img src="https://img.shields.io/badge/Discord-加入聊天-7289da?logo=discord&logoColor=白色"></a> <a href="https://deepwiki.com/truffle-ai/dexto"><img src="https://deepwiki.com/badge.svg"></a> </p>

一个集成工具包,用于构建将自然语言转化为实际操作的应用程序。

<div align="center"> <img src="https://github.com/user-attachments/assets/89d30349-0cb1-4160-85db-d99a80a71d7a" alt="Dexto 演示" width="700" /> </div>

Dexto 是什么?

Dexto 是一个通用智能层,用于构建协作式、上下文感知的 AI 代理及代理应用程序。它协调大型语言模型(LLMs)、工具和数据,形成具有记忆功能的持久、有状态系统,因此你可以快速创建思考、行动并感觉像活生生的 AI 助手、数字伴侣和副驾。

Dexto 结合了基于配置的框架、强大的运行时环境以及无缝的开发者体验,使你可以轻松地构建、部署和迭代你的代理。

  • 框架 – 在 YAML 中定义代理行为。无需修改代码即可即时更换模型和工具。
  • 运行时 – 执行协调、会话管理、对话记忆和多模态支持。
  • 接口与工具 – 原生支持 CLI、Web、API 和 TypeScript SDK。

使用 Dexto,你可以构建:

  • 自主代理 – 能够规划、执行并适应用户目标的代理。
  • 数字伴侣 – 记住上下文并预测需求的 AI 助手和副驾。
  • MCP 客户端 – 通过 MCP 服务器连接多个工具、文件、API 和数据。
  • MCP 服务器 – Dexto Web UI 和 MCP 实验室帮助你轻松测试自己的 MCP 服务器。
  • 多代理系统 – 构建能够协作、委托并共同解决复杂任务的代理架构。
  • 代理即服务 – 将现有的 SaaS 产品和 API 转变为动态、对话式的体验。
  • 代理应用程序 – 将 Dexto 作为推理引擎集成到互动、多模态、AI 原生应用程序中。

你将获得

  • 内置功能 – 会话管理、工具协调、多模态支持和生产就绪的可观测性。
  • 50 多种 LLMs – 即时在 OpenAI、Anthropic、Google、Groq、本地模型或自定义模型之间切换。
  • 随处运行 – 本地运行以保护隐私,云上运行以扩大覆盖范围,或混合使用。同一代理,任意部署。
  • 原生多模态 – 文本、图像、文件和工具在一个对话中。上传截图、提问、采取行动。
  • 持久会话 – 对话、上下文和记忆被保存,并可以在不同环境中导出、导入或共享。
  • 灵活的接口 – 同一代理,无数交互方式:现成的 CLI、WebUI、API 或与您自己的 UI 集成。
  • 30 多种工具及 MCP – 集成工具并通过模型上下文协议(MCP)连接外部服务器,或使用我们的内部工具。
  • 可插拔存储 – 使用 Redis、PostgreSQL、SQLite、内存、S3 等进行缓存、数据库和 Blob 后端。
  • 人类在循环中 – 配置工具执行的审批策略,代理还可以记住每个会话中哪些工具是安全的。
  • 可观测性 – 内置 OpenTelemetry 分布式追踪、令牌使用监控和错误处理。

安装

# 全局安装 NPM
npm install -g dexto

# —或— 从源码构建
# 这将从克隆的代码设置 dexto CLI
git clone https://github.com/truffle-ai/dexto.git
cd dexto && pnpm install && pnpm install-cli

快速开始

# 1. 运行设置工作流 - 这将提示你选择首选的 LLM 和 API 密钥,并打开 Web UI
dexto

# 2. 在 Web UI 中尝试一个多步骤任务:
"创建一个 HTML/CSS/JS 的贪吃蛇游戏,然后在浏览器中打开它"

# 3. 开始交互式 CLI 模式而不是 Web UI
dexto --mode cli

在 2 -> Dexto 将使用文件系统工具编写代码,并使用浏览器工具打开它——所有这些都来自一个提示。默认模式(Web UI)允许你在之前的对话中导航并实验不同的模型、工具等。

交互式 CLI(3)允许你在终端中与代理进行交互。

参见 CLI 指南 获取更多详情。

在原型设计时跳过工具提示

dexto --auto-approve "使用文件系统和浏览器工具重构我的项目"

使用 --auto-approve 标志来绕过工具执行确认提示——当你信任调用的工具时,这非常适合快速本地迭代。当你需要显式批准时,请移除该标志。

日志

日志默认存储在 ~/.dexto/logs 目录中。

使用 DEXTO_LOG_TO_CONSOLE=true 当运行 dexto 时将日志输出到控制台。

使用 DEXTO_LOG_LEVEL=debug 来获取调试日志。

代理配方

Dexto 提供了一些预构建的代理配方,适用于常见用例。立即安装并使用它们:

# 列出可用代理
dexto list-agents

# 安装特定代理
dexto install nano-banana-agent podcast-agent coding-agent

# 使用单次提示的代理
dexto --agent nano-banana-agent --mode cli "创建一个带有飞行汽车的未来城市景观"
dexto --agent podcast-agent --mode cli "生成一个由两位主持人讨论人工智能的播客开头"
dexto --agent coding-agent --mode cli "为一个受星球大战启发的咖啡品牌创建一个登陆页面"

# 或者,在 Web UI 中启动代理并自己输入提示
dexto --agent nano-banana-agent

可用代理:

  • 编码代理 – 代码生成、重构、调试
  • 纳米香蕉代理 – 使用谷歌的纳米香蕉(Gemini 2.5 Flash 图像)进行高级图像生成和编辑
  • 播客代理 – 使用谷歌 Gemini TTS 进行多说话人音频内容的高级播客生成
  • Sora 视频代理 – 使用 OpenAI 的 Sora 进行 AI 视频生成,支持自定义设置、混音和参考支持
  • 数据库代理 – SQL 查询和数据库操作演示代理
  • GitHub 代理 – GitHub 操作、PR 分析和仓库管理
  • 图像编辑代理 – 图像编辑和操作
  • 音乐代理 – 音乐创作和音频处理
  • Talk2PDF 代理 – 文档分析和对话
  • 产品研究员 – 产品命名和品牌研究
  • 分诊代理 – 多代理客户支持路由系统演示

每个代理都预先配置了正确的工具、提示和 LLM 设置,以适应其领域。无需设置——只需安装并开始构建。

📚 查看完整的 代理注册表 获取有关所有代理、其能力、用例和要求的详细信息。

更多现成的配方位于 agents/

示例与演示

🎙️ 播客代理:生成 AI 播客

任务: 生成关于最新人工智能的播客开头。

dexto --agent podcast-agent
<img src="https://gips1.baidu.com/it/u=580706796,3435749170&fm=3081&app=3_081&f=GIF?w=900&h=506" alt="播客代理演示" width="600"/>

👁️ 计算机视觉代理:使用 OpenCV 进行人脸检测与标注

任务: 检测此图像中的所有人脸并在它们周围绘制边界框。

dexto --agent image-editor-agent
<img src="https://gips0.baidu.com/it/u=3924558359,3707577727&fm=3081&app=3081&f=GIF?w=900&h=_06" alt="人脸检测演示" width="600">

🎮 编码代理:按需创建应用

使用 AI 驱动的编码代理构建全栈应用程序、网站和互动游戏。自定义它们以创建自己的编码代理。

任务: 你能在一个新文件夹中创建一个贪吃蛇游戏并在完成后打开吗?

dexto --agent coding-agent
<img src=".github/assets/coding_agent_demo.gif" alt="贪吃蛇游戏开发演示" width="600"/>

📧 可移植代理:从 Cursor 使用代理

Dexto 代理设计为模块化、可组合且可移植,允许你从任何地方运行它们。在这个例子中,我们通过 Cursor 连接到 dexto 作为 MCP 服务器,以使用上面的播客代理。

<img src="https://github.com/user-attachments/assets/fd75a63f-4d29-447a-be24-6943e34c387f" alt="电子邮件到 Slack 演示" width="600">

🎯 分诊代理:多代理客户支持

创建多代理系统,根据用户查询智能协调和分配任务。

dexto --agent triage-agent
<img src=".github/assets/triage_agent_demo.gif" alt="分诊代理演示" width="600">

🛠️ 添加自定义 MCP 服务器

你可以添加自己的模型上下文协议(MCP)服务器,以扩展 Dexto 的功能,包括新的工具或数据源。只需编辑代理 YAML 或直接在 WebUI 中添加。

<img src="https://github.com/user-attachments/assets/1a3ca1fd-31a0-4e1d-ba93-23e1772b1e79" alt="添加 MCP 服务器示例" width="600"/>

🧠 记忆:持久上下文与学习

创建并保存记忆。您的代理会自动使用它来创建个性化的体验。

<img src=".github/assets/memory_demo.gif" alt="记忆演示" width="600"/>

🛒 MCP 商店:工具发现与集成

从 20 多个 MCP 服务器中装备你的代理,并通过聊天立即开始使用它们。

<img src=".github/assets/mcp_store_demo.gif" alt="MCP 商店演示" width="600"/>

📝 人类在循环中:动态表单生成

当代理需要额外的数据时,可以生成结构化的表单,以便更容易地收集额外信息和用户的批准。

<img src=".github/assets/user_form_demo.gif" alt="用户表单演示" width="600"/>

更多示例:

<details> <summary><strong>🛒 浏览器代理:亚马逊购物助手</strong></summary>

任务: 能去亚马逊并添加一些零食到我的购物车吗?我喜欢混合坚果、奇多,也许再给我惊喜一下?

# 默认代理具有浏览器工具
dexto
<a href="https://youtu.be/C-Z0aVbl4Ik"> <img src="https://gips2.baidu.com/it/u=3318091746,609869871&fm=3081&app=3081&f=GIF?w=900&h=506" alt="Dexto:亚马逊购物代理演示" width="600"/> </a> </details> <details> <summary><strong>🎮 游戏场:互动开发环境</strong></summary>

一个测试游乐场,查看你的 MCP 服务器中的工具,然后再将它们连接到 LLM,以查看详细的响应结构。

<img src=".github/assets/playground_demo.gif" alt="游乐场演示" width="600"> </details> <details> <summary><strong>📧 电子邮件到 Slack:自动化电子邮件摘要</strong></summary>

任务: 总结电子邮件并将亮点发送到 Slack

dexto --agent ./agents/examples/email_slack.yml
<img src="assets/email_slack_demo.gif" alt="电子邮件到 Slack 演示" width="600"> </details> <details> <summary><strong>🖼️ Hugging Face:图像生成</strong></summary>

任务: 生成一张熊猫宝宝的照片。

<img src="https://github.com/user-attachments/assets/570cbd3a-6990-43c5-b355-2b549a4ee6b3" alt="Hugging Face 图像生成演示" width="600"/> </details>

运行模式

模式命令最适合
Web UIdexto友好的聊天界面,支持图像(默认)
交互式 CLIdexto --mode cli日常自动化和快速任务
无头服务器dexto --mode server用于代理交互的 REST 和 SSE 流式传输 API
MCP 服务器(代理)dexto --mode mcp通过标准输入输出暴露你的代理作为工具
MCP 服务器(聚合器)dexto mcp --group-servers通过标准输入输出重新暴露多个 MCP 服务器中的工具
Discord 机器人dexto --mode discord社区服务器和频道(需要设置
Telegram 机器人dexto --mode telegram移动聊天(需要设置

运行 dexto --help 获取 所有标志、子命令和环境变量

配置

代理配置

Dexto 将每个配置视为一个独特的代理,允许你根据需要定义和保存 LLM、服务器、存储选项等的组合,便于移植。在受版本控制的 YAML 中定义代理。更改文件,重新加载并聊天——状态、记忆和工具会自动更新。

示例配置:

# agents/my-agent.yml
llm:
  provider: openai
  model: gpt-5-mini
  apiKey: $OPENAI_API_KEY

mcpServers:
  filesystem:
    type: stdio
    command: npx
    args: ['-y', '@modelcontextprotocol/server-filesystem', '.']
  web:
    type: stdio
    command: npx
    args: ['-y', '@modelcontextprotocol/server-brave-search']

systemPrompt: |
  你是一个拥有访问文件和网络搜索权限的有用 AI 助手。

LLM 提供商

即时在提供商之间切换——无需更改代码。

提供商模型设置
OpenAIgpt-5.1-chat-latest, gpt-5.1, gpt-5.1-codex, gpt-5.1-codex-mini, gpt-5, gpt-5-mini, gpt-5-nano, gpt-5-pro, gpt-5-codex, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-4o, gpt-4o-mini, gpt-4o-audio-preview, o4-mini, o3, o3-mini, o1在 UI 中更改模型并添加 API 密钥
Anthropicclaude-haiku-4-5-20251001, claude-sonnet-4-5-20250929, claude-opus-4-5-20251101, claude-opus-4-1-20250805, claude-4-opus-20250514, claude-4-sonnet-20250514, claude-3-7-sonnet-2_0250219, claude-3-5-sonnet-20240620, claude-3-5-haiku-20241022在 UI 中更改模型并添加 API 密钥
Googlegemini-3-pro-preview, gemini-3-pro-image-preview, gemini-2.5-pro, gemini-2.5-flash,