datagallery-lab/datafoundry

GitHub: datagallery-lab/datafoundry

DataFoundry 是一个企业级 AI 数据分析工作台,通过语义感知和受控执行将自然语言分析转化为可审计、可重放的数据任务。

Stars: 137 | Forks: 20

DataFoundry

企业级 Data Agent 工作台 —— 通过统一语义读取业务定义,在只读边界内运行复杂的多表、多步分析,
并保持每一步可审计、可重放,将一个问题转化为值得信赖的分析。

开箱即用支持 28 种数据源 · 企业级语义与上下文 · 自托管 · 多模型 · 全面可审计

English · 简体中文

快速开始 · 文档 · 支持的数据源 · Roadmap · 贡献指南

Apache-2.0 TypeScript Self-hostable PRs welcome Status
Mastra agent runtime AG-UI event stream Ink terminal UI

DataFoundry Web workbench demo

## 🤔 什么是 DataFoundry 当团队让 AI 查询企业数据库时,真正的担忧从来不是“模型能否写出 SQL”。而是:**它理解业务定义吗?它会修改生产数据吗?凭证会泄漏到上下文中吗?结论事后可以验证吗?** 大多数工具将问题简化为 `prompt → SQL → answer` —— 在演示中令人惊叹,在企业中却毫无用武之地。DataFoundry 另辟蹊径:**它将 Agent 置于一个具备语义感知、策略感知和保留凭证的数据任务系统中**,将自然语言分析升级为可控、可信、可验证的数据工作。 ## ✨ 核心能力 - 🗄️ **开箱即用支持 28 种数据源** —— 从 PostgreSQL、MySQL、Snowflake、BigQuery 和 ClickHouse 到 MongoDB、Redis 和 Elasticsearch:快速连接您现有的数据技术栈,降低集成成本,让 Agent 更快投入真实的业务分析。 - 🧠 **企业级语义与上下文组织** —— 集中管理 schema、指标定义和字段关系,使“GMV”和“留存率”等术语解析为企业认可的表、字段和定义 —— 减少字段臆测、错误 JOIN 和定义偏差,从根本上提升准确性。 - 🏠 **支持自托管部署和多模型** —— 在您自己的边界内运行,数据绝不外流;在模型方面,兼容任何 OpenAI 兼容的提供商(Qwen、DeepSeek、GPT 等),让您可以根据场景在安全、成本、延迟和质量之间取得平衡。 - 🔒 **默认安全,全程可审计** —— 默认采用只读查询、凭证隔离、字段脱敏、行数限制和超时控制;SQL、工具调用和事件流均被完整持久化且可回放,确保每个结论都有据可查。 - 🧩 **针对复杂数据任务的深度优化** —— 专为多表、多字段、长线分析和多步推理而构建:复杂问题会被拆解、验证并收敛为可信结论,并物化为团队可复用的表格、图表和报告。 ## 🚀 5 分钟快速运行 无需数据库 —— 内置的 DuckDB 演示数据源开箱即用。 ``` git clone https://github.com/datagallery-lab/datafoundry.git cd datafoundry npm install cp .env.example .env cp apps/web/.env.example apps/web/.env.local npm run dev ``` 在 `.env` 中配置任何兼容 OpenAI 的模型: ``` LLM_PROVIDER=openai-compatible LLM_MODEL=qwen-plus # or deepseek-chat, gpt-4o, ... LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1 LLM_API_KEY=replace-with-your-key ``` 打开 `http://127.0.0.1:3000/data-tasks` 并提问: ``` Show me the tables in this datasource and explain the main fields of each. ``` 您将看到完整链路:schema 检查 → 只读 SQL → SQL 审计 → 表格输出 → 可重放的运行历史。 ## 🆚 与 Coding Agent 和 SQL 聊天机器人的区别 Coding Agent 修改代码,SQL 聊天机器人回答问题,DataFoundry 执行数据任务 —— 三者对应不同的操作对象、风险边界和输出: | | 操作对象 | 主要风险 | 输出 | | --- | --- | --- | --- | | Coding agent | 代码库、测试、PR | 破坏代码 | 补丁、commit、PR | | SQL chatbot | prompt、SQL、答案 | 错误选表、不安全访问、凭证泄漏、无法重放 | SQL 片段或答案 | | **DataFoundry** | 数据源、文件、知识、工具、任务状态 | 生产数据边界、业务语义、审计凭证 | **可重放的数据任务** + SQL 审计 + 表格 / 图表 / 报告 | 具体到数据任务方面,DataFoundry 相比通用 Coding Agent 的核心优势在于: - **准确性,源于数据约束** —— 面向数据库时,Coding Agent 往往会猜测表、字段和定义;DataFoundry 强制执行 schema 优先分析,并通过 Data Gateway 约束查询路径,减少字段臆测和错误 JOIN。 - **安全性,源于受控执行** —— Coding Agent 运行命令并写入文件:虽然强大,但对于企业数据而言风险极高。DataFoundry 默认采用只读 SQL、凭证隔离、字段脱敏、行数限制、超时控制和审计机制 —— 专为真实数据环境打造。 - **速度,源于收敛的任务路径** —— 这不是因为模型推理速度更快,而是因为数据源选择、schema 缓存、上下文预算、工具策略和 artifact pipeline 减少了无效尝试,从而让分析更快地得出结果。 - **复杂任务,源于数据工作流设计** —— Coding Agent 擅长代码工程;DataFoundry 则专为跨多表、多字段、多指标以及结合知识库、文件和报告输出的分析而构建,将“查询、验证、解释、物化”串联为一个完整的流程。 - **应用落地,源于企业级 runtime** —— 这不是一个演示:Web 工作台、TUI、REST API、CopilotKit / AG-UI、Data Gateway、Skills、MCP、Files、Artifacts 和 Metadata 共同构成了数据 Agent 的运行基础。 ## ⚙️ 数据任务的运行方式 ``` Ask → Align semantics → Execute under control → Materialize output → Replay & review ``` 1. **定义任务** —— 选择数据源、文件、知识和工具,然后用自然语言描述业务问题。 2. **对齐含义与结构** —— Agent 会首先检查 schema 和可用上下文,将“GMV”或“留存率”等术语落实到真实的表和字段中。 3. **受控执行** —— Data Gateway 在只读边界内运行查询,并提供 SQL 护栏、行数限制、超时控制和脱敏;每条 SQL 语句都会留下审计记录。 4. **物化输出** —— 结果转化为表格、图表、报告或文件 —— 即团队可引用的资产。 5. **重放与审查** —— Web、TUI 和 API 共享同一运行历史,因此每一步的凭证都只需点击一下即可查看。

DataFoundry runtime flow

## 🖥️ 不仅仅是对话框 **Web 工作台** 适用于日常分析和演示,**TUI** 适用于终端和远程服务器,而 **API / CopilotKit / AG-UI** 路径则允许您将同样值得信赖的 runtime 嵌入到您自己的产品中。

DataFoundry TUI demo

## 🗄️ 接入您的数据技术栈,无需重构 通过 Data Gateway 适配器进行连接:内置的 DuckDB 演示开箱即用;SQLite、CSV、Excel、PostgreSQL 和 MySQL 适用于本地试用;云数仓、搜索引擎和 NoSQL 系统则通过各自的服务和凭证接入。

Supported DataFoundry data sources

请在[支持的数据源](docs/en/reference/supported-datasources.md)中查看完整列表。 ## 🛡️ 安全边界 - 模型仅接收受治理的上下文;数据源凭证、模型 API 密钥和 MCP token 永不进入 `messages`、`context` 或 `forwardedProps`。 - 所有数据源访问均通过 Data Gateway 进行 —— 默认只读,并提供 SQL 护栏、行数限制、超时控制和字段脱敏。 - SQL 审计日志、工具调用记录和事件流均被完整持久化,以供事后审查。 - 生产级的多租户认证、集中式密钥管理、监控和部署运维需要针对您的环境进行专门的设计 —— 详见[安全性](docs/en/security.md)。 ## 🗺️ Roadmap - [x] **受治理的数据任务工作台** —— Web 和 TUI 共享一个 TypeScript agent runtime、CopilotKit / AG-UI 事件流、可重放的运行历史、SQL 审计追踪以及统一的资产层。 - [x] **安全的数据访问基础** —— 数据源注册、连接测试、schema 内省、表预览、只读 SQL、脱敏、知识导入、MCP 资源、Skill 包和模型配置。 - [ ] **统一语义层** —— 持久化的指标、实体、关系、血缘和策略,将 Agent 从“臆测字段”转变为“理解业务定义”,从一次性 SQL 转变为可治理的数据运营层。 - [ ] **自主分析师循环** —— Agent 规划调查、运行受控实验、评估发现结果,并收敛为有证据支撑的结论。 - [ ] **评估与可靠性实验室** —— 具备回归门控和故障取证的 NL2SQL、检索、工具调用以及端到端任务基准测试。 - [ ] **企业控制平面** —— 身份认证、RBAC、审批、审计导出、Policy-as-code 和成本限制。 欢迎在 issues 和 discussions 中讨论 Roadmap。 ## 📚 文档 | 目标 | 阅读 | | --- | --- | | 运行本地演示 | [快速开始](docs/en/quick-start.md) | | 了解定位与范围 | [概述](docs/en/overview.md) · [核心能力](docs/en/capabilities.md) | | 使用 Web / TUI | [Web 工作台指南](docs/en/guides/web-workbench.md) · [TUI 指南](docs/en/guides/tui.md) | | 连接数据源 | [数据源指南](docs/en/guides/data-sources.md) · [支持的数据源](docs/en/reference/supported-datasources.md) | | 通过 API 和 runtime 集成 | [REST API](docs/en/reference/rest-api.md) · [Agent Runtime 与 AG-UI](docs/en/reference/agent-runtime.md) | | 了解架构与安全性 | [架构概述](docs/en/architecture/overview.md) · [安全性](docs/en/security.md) | ## 🙏 鸣谢 DataFoundry 的灵感来源于并借鉴了优秀的开源项目和社区的理念: ## 📄 License Apache License 2.0。详见 [LICENSE](LICENSE)。
标签:DLL 劫持, TypeScript, 人工智能, 代码示例, 大语言模型, 安全插件, 数据分析, 数据治理, 用户模式Hook绕过, 自动化攻击