Datus-ai/Datus-agent

The Future of Data Engineering — A CLI SQL client for the modern data stack, enabling AI-native context engineering for data.

Datus · 开源数据工程代理

简介 – Datus 是一个基于 Python 的 AI 增强助手,帮助团队使用现代数据栈。它连接到你的数据仓库、目录、语义层和 BI 工具,并使用大型语言模型(LLM)生成和验证 SQL、构建语义模型、创建 ETL 管道,以及生成报告或仪表板。每次交互都存储在上下文引擎中,使代理随着时间的推移更加准确。

工作原理 – 系统分为三个面向用户的入口点:

  • CLI (datus) – 面向数据工程师的交互式 REPL。
  • Web 聊天 (datus --web) – 可从浏览器、Slack、飞书或 VS Code 访问的 FastAPI + React 聊天机器人。
  • REST / MCP API (datus-api, datus-mcp) – 供其他应用程序通过编程方式访问。

在底层,由子代理(领域特定知识包)和技能(插件工具)组成的核心与上下文引擎通信,该引擎将模式、参考 SQL、业务规则及其他工件存储在嵌入式 LanceDB/SQLite(或团队使用的 PostgreSQL)中。适配器让核心能与 21+ 数据库、10+ 个 LLM 提供商、作业调度器(Airflow)及 BI 平台(Superset、Grafana)通信。名为 Dosi 的独立语义引擎将统一语义模型编译为十多种方言的 SQL。

主要功能

  • 自动化语义建模 – 读取模式和查询历史,无需手写 YAML 即可创建 OSI 兼容的语义模型和指标定义。
  • 指标问答 – 使用指标层回答业务问题,并在指标变化时提供归因。
  • 自我改进上下文 – 更正会写回知识库,改善未来响应。
  • 内置子代理 – 用于跨数据库迁移、ETL 作业生成、宽表构建和仪表板/报告创建。
  • 开放生态系统 – 插件框架(datus-plugin.yml)让你添加新的 CLI 命令、技能或外部集成;市场遵循 agentskills.io 约定。
  • 企业治理 – 基于角色的权限、SQL 预审、操作系统级沙箱和 OTLP 兼容跟踪。

开始使用(Linux/macOS、Python 3.12+)

# 一行安装程序
curl -fsSL https://raw.githubusercontent.com/datus-ai/datus-agent/main/install.sh | sh

# 启动 REPL
datus
# 然后在 REPL 内
/model          # 选择 LLM
/datasource     # 添加快仓库连接
/init           # 可选:扫描当前项目

或者从 PyPI 安装:pip install datus-agent(使用 uv 更快)。文档包含一个在示例“加利福尼亚学校”数据集上构建管道的完整教程。

典型用例

  • 探索新数据仓库、构建可复用语义模型并生成 ETL 作业的数据工程师。
  • 通过聊天提出指标级问题、获得无需 SQL 的答案和可视化仪表板的业务分析师。
  • 通过 REST 或 MCP API 消费数据服务端点的应用程序开发人员。
  • 使用自定义技能或适配器扩展平台而无需修改核心的团队。

许可 – Apache 2.0。


以上所有信息均直接取自仓库的 README;未推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目