切换 · F 全屏 · P 打印
DataClaw
设计思考 · 演示文档
2026
内部技术分享

DataClaw
设计思考

从「对话即取数」的数据助手起步,
最终进化为「洞察即行动」的自主归因引擎
· 业务价值
· 技术架构
· 技术实现
· Roadmap
DataClaw · Data Agent + 自主决策
01 / 22
DataClaw
议程 · Agenda

议程概览

今天我们将一起回答四个问题

从业务出发,理解 DataClaw 的「为什么、怎么做、做到了什么、接下来去哪」。

01

业务价值

它解决了什么真实问题?为什么现在做?带来怎样的业务杠杆?

02

技术架构

DataClaw = Data Agent + 自主决策。Agent Harness 框架与系统分层。

03

技术实现

当前工程落地:前端、Java BFF、Python Harness、SSE 协议、UI Envelope。

04

Roadmap

阶段一 Chat BI(基础底座)→ 阶段二 Data Claw(自主决策)。

24h → 5min
数据获取效率提升
10 / 90
Model / Harness 工程比
3 段式
前端 / Java BFF / Python AI
SSE
事件驱动状态机
议程
02 / 22
DataClaw
一、业务价值 · 愿景

第一部分

DataClaw 的业务定位

从「对话即取数」的数据助手起步,
最终进化为「洞察即行动」的自主归因引擎。
问题

业务现状

  • 数据需求从提交到拿到结果通常需要 24 小时 起步
  • 多数据源散落(数仓、飞书表格、业务库),口径难统一
  • BI 报表可解释性弱,无法主动告诉业务"为什么"
  • 分析师工作 70% 在重复跑数,难以聚焦在洞察本身
DataClaw

我们的解法

  • 对话即取数:自然语言 → 结构化语义 → 即时图表/表格
  • 口径治理:统一指标、维度、画像、埋点的标准定义
  • 自主决策:从被动响应到主动发现异常并归因
  • 结果可信:每一步可追溯到工具输出,不凭空编造
关键词    快  ·  全  ·  准  ·  唯一  ·  可追溯
一、业务价值
03 / 22
DataClaw
一、业务价值 · 效率对比

效率跃迁

把数据获取时间从 24 小时缩短到 5 分钟

这是从"提工单 → 排期 → 跑数 → 校验"到"对话即取数"的范式切换。

现状 · Before

传统数据流程 · ~ 24 小时

提需求 15 min 排期等待 8 hr 取数/写SQL 4 hr 数据校验 2 hr 回传业务 ~10 hr

人介入 4 个环节,等待与排期占大头

未来 · After

DataClaw 流程 · ~ 5 分钟

用户对话提问 10 sec Agent 端到端编排 语义解析·查询·可视化 ~ 4 min 即时图表/结论 SSE 流式 采纳决策 点赞/反馈

用户只在两端介入,中间由 Agent 自动协作完成

×288
效率提升 (24h / 5min)
5 → 2
人工介入环节
0
沟通误解返工
100%
结果可追溯到指标元数据
一、业务价值
04 / 22
DataClaw
一、业务价值 · 快 / 全 / 准

三个关键词

DataClaw 的产品承诺

围绕 快、全、准 三件事建立产品差异化护城河。

SPEED

将数据获取时间从

24h → 5min

借助 LLM + Skill 编排,用户提问到拿到可视化结果之间,全链路压缩为分钟级。

SSE 流式输出 分析步骤可见
SCOPE

覆盖全场景多源数据

数仓 · 飞书 · 业务库

统一面向:埋点、画像、标准指标、数据表、业务库、上传文件等多种数据形态。

埋点 画像 标准指标 数据表 飞书表格
TRUST

让 LLM 输出的结果

唯一且准确

通过统一指标口径 + 工具调用确认 + 结果可追溯,确保每个数字都有出处。

指标治理 维度治理 RAG 召回 工具校验
本质 数据源治理 + LLM 分析处理 = 准确性与效率的乘积。这不是单一模型问题,而是一项工程化命题。
一、业务价值
05 / 22
DataClaw
一、业务价值 · 演进路径

能力演进

从「数据助手」到「自主归因引擎」

两个阶段递进式构建:先做"对话即取数"的可信底座,再做"洞察即行动"的自主决策。

STAGE 01 Chat BI 对话即取数 · 自助化的准确 AI 数据服务 • 元数据治理 • Skill 开发 • 数据查询/分析工具 • 可视化组件 • Agent 基础能力 • 评测体系 STAGE 02 Data Claw 洞察即行动 · 自主认知逻辑与归因决策 • 主动监听异常(如 DAU 跌破阈值) • 自动下钻分析 • 自动归因 • 自动推送报告 现在 中期 远期 被动响应 主动监控 自主决策
核心命题

阶段一是 能不能 的问题——能不能在保证准确性的前提下用对话取数;
阶段二是 用不用 的问题——能不能让 Agent 自主发起分析并交付建议。

一、业务价值
06 / 22
DataClaw
二、技术架构 · 总公式

第二部分

DataClaw = Data Agent + 自主决策

这是 DataClaw 全部技术工作的"第一性原理"。

DATACLAW 完整产品 = DATA AGENT 推理与执行 + AUTONOMOUS LOOP 自主决策 用户对话与异常触发的入口 Model + Harness 的智能体 触发器 / 调度 / 异常归因循环

Data Agent · 解决"怎么算"

用户说一句话,Agent 完成意图识别、语义解析、查询执行、可视化与结论的端到端编排。

自主决策 · 解决"为什么 / 怎么办"

系统主动巡检指标,发现异常时自主下钻、定位归因、生成报告,把 BI 升级为 Decision-as-a-Service。

二、技术架构
07 / 22
DataClaw
二、技术架构 · Agent Harness

工程比例

Data Agent = Model(10%)+ Harness(90%)

Agent 的智能上限取决于模型,但 Agent 的工程上限取决于 Harness。

SHARE 90 / 10 Harness 90% Model 10%

Model · 10% · 「天赋」

大模型决定 Agent 的语言能力、推理深度、上下文理解。是基础设施,可热替换。

Doubao DeepSeek OpenAI Gemini

Harness · 90% · 「肌肉记忆」

除模型之外的全部工程:上下文管理、持久化、流程编排、工具/技能、Hooks 中间件、沙箱执行。

  • System Prompts —— 角色与行为约束
  • Tools / Skills / MCPs —— 调用能力 + 元描述
  • Bundled Infrastructure —— 文件系统、沙箱、浏览器
  • Orchestration Logic —— 子 Agent / 路由 / Handoff
  • Hooks / Middleware —— 上下文压缩、续跑、检查
参考
The Anatomy of an Agent Harness · LangChain  |  Agent Harness Engineering · Addy Osmani
二、技术架构
08 / 22
DataClaw
二、技术架构 · Harness 五大组成

Harness 解剖

90% 工作发生在模型之外

Harness 是 Agent 的"操作系统",决定 Agent 能否在生产环境稳定、可控、可演进。

01

System Prompts

角色约束、行为准则、输出风格。本项目通过 SOUL.md 与 Skill 元数据下沉。

02

Tools · Skills · MCPs

带描述的可调用能力。包括 search_metrics / query_semantic_data / visualize_query_result 等。

03

Bundled Infrastructure

文件系统、沙箱、浏览器。本项目以 Python 沙箱执行 + artifact 引用机制规避大结果污染上下文。

04

Orchestration Logic

子 Agent 派发、Handoff、模型路由。Java BFF 把会话请求映射为 LangGraph 风格的 Run 协议。

05

Hooks / Middleware

上下文压缩、续跑、Lint 检查等确定性中间件。让非确定性的 LLM 在确定性的轨道上跑。

原则

Harness First, Model Second

模型迭代周期 ~ 月级;Harness 工程能力是项目的真护城河。

二、技术架构
09 / 22
DataClaw
二、技术架构 · DataClaw 框架

框架视图

DataClaw 整体框架

前端 / 后端 / Data Flow / Skill & Tool —— 四象限映射 Harness 全部组件。

WEB FRONTEND
对话
执行过程
用户设置
IM CHANNELS
飞书
BACKEND
会话管理
记忆管理
工具 & Skill 管理
数据集
Token 限额
权限管理
DATA FLOW
上下文管理
长期记忆 · 短期记忆
沙箱执行环境
Bash · Python
技能管理
Tool · Skill 管理
流程编排
SKILL & TOOL
Skills
问数 · 查数 · 分析 · 报告
Tools
元数据:指标搜索 · 维度搜索 · 标签搜索
数据查询:表查询 · 标准指标 · 画像 · 埋点
可视化:表格 · Markdown · 图表
分析工具:归因 · 分布 等

Web Frontend

对话 · 执行过程 · 用户设置

IM Channels

飞书等渠道接入,未来扩展 Slack / Telegram

Backend

会话/记忆/工具/数据集/Token/权限管理

Data Flow

上下文管理 · 沙箱执行 · 技能管理 · 流程编排

Skill & Tool

问数 / 查数 / 分析 / 报告 + 元数据/查询/可视化/分析工具

二、技术架构
10 / 22
DataClaw
三、技术实现 · 系统分层

第三部分

三段式分层 · 每层职责清晰

前端纯渲染 · Java BFF 屏蔽差异 · Python 是 DeerFlow Harness 的运行时。

CLIENT · React + Vite 对话视图 · 分析步骤面板 · 数据集选择 · 标准化 UI 渲染 SSE 解析 UI Envelope VChart REST / SSE BFF · Java 17 + Spring Boot 3 面向前端协议 · 会话/运行/消息/步骤持久化 · SSE 编排 · UI Envelope 归一化 /api/agent · /api/chatbi · /api/memory · /api/skills · /api/mcp/config H2 / MySQL JSON-RPC SSE 转发 DeerFlow Run MCP JSON-RPC AI · Python 3.11 + FastAPI + DeerFlow Harness Skills(data_query / data_analysis)· Tools · MCP 客户端 /api/threads · /api/threads/{id}/runs/stream · /api/uploads · /api/models 上下文压缩 · Token 控制 · 沙箱(Bash/Python)· 多 Channel MCP · 工具与图表 vchart-mcp-server streamable HTTP · /mcp · 端口 1122 visualize_query_result · 22+ 图表类型 DATA SOURCES 数仓(埋点/画像/标准指标/数据表) · 飞书表格 · 业务库 · 用户上传 · dataset_fin.json
三、技术实现
11 / 22
DataClaw
三、技术实现 · 流式事件协议

流式架构

事件驱动的分析状态机

前端不是等"一次性大响应",而是实时消费 11 类 SSE 事件,逐步构建对话与结果。

Frontend Java BFF Python AI POST /messages/stream POST /threads/{id}/runs/stream SSE: thread.title.updated SSE: thread.title.updated analysis.step (in-progress) message.delta · 增量文本 analysis.step.completed (output) clarification.required ? result.ui · 标准化页面 schema message.completed · token_usage

11 类 SSE 事件

thread.title.updated analysis.step analysis.step.updated analysis.step.completed message.delta clarification.required result.table(兼容) result.chart(兼容) result.ui(标准) message.completed message.failed

事件特性

  • 每个事件 = event + data JSON
  • stream_order 保证有序回放
  • 支持澄清流程暂停 / 续跑
  • 兼容旧 result.table/result.chart → 自动归一化为 page.components
三、技术实现
12 / 22
DataClaw
三、技术实现 · 标准化 UI 协议

协议合约

UI Envelope · 让 AI 能"画页面"

把 LLM 的非结构化输出,约束到一个稳定的 page → components Schema 上。

{
  "result_type": "success",
  "code": "OK",
  "message": "分析完成",
  "ui_schema_version": "1.0",
  "trace_id": "run_xxx",
  "page": {
    "layout": "vertical",
    "components": [
      {
        "id": "summary_markdown",
        "type": "text.markdown",
        "data": { "content": "## 结论..." }
      },
      {
        "id": "province_table",
        "type": "table.grid",
        "data": { "headers": [...], "rows": [...] }
      },
      {
        "id": "province_chart",
        "type": "chart.bar",
        "data": { "spec": { ... } }
      }
    ]
  },
  "active_view": "bar",
  "token_usage": { "total_tokens": 1432 }
}

组件类型 · 11 种

text.markdown metric.card table.grid chart.line chart.bar chart.area chart.pie file.link action.group layout.grid layout.tabs

result_type 状态机

success partial_success need_user_input retryable_error non_retryable_error policy_blocked system_failure

设计意图

统一渲染层 · 兼容旧 result.* 事件 · 支持版本号 ui_schema_version 演进。前端按 type 路由组件,后端按 type 写入。

三、技术实现
13 / 22
DataClaw
三、技术实现 · 工程结构

代码组织

Monorepo · 三个独立可启动的子工程

/Users/wangchengming/Documents/Codex/DataClaw 当前形态。

FE

frontend/

React 18 · Vite · pnpm · shadcn · 5173

  • 对话视图 · 分析步骤面板 · 数据集选择
  • SSE 解析 · UI Envelope 渲染
  • VChart 图表组件
BE

backend-java/

Java 17 · Spring Boot 3 · H2 · 8080

  • com.dataclaw.bff · 面向前端 API + 服务
  • com.dataclaw.chatbi · 业务模型与响应
  • SSE 编排 · UI Envelope 归一化 · MCP 客户端
AI

backend-python/

Python 3.11+ · FastAPI · uvicorn · 8000

  • app/gateway/routers · /api/threads · /api/runs ...
  • app/channels · 飞书 / Slack / Telegram 抽象
  • packages/harness/deerflow · DeerFlow 内核
  • skills/custom · data_query / data_analysis

外部进程

vchart-mcp-server streamable · 1122 · /mcp

启动顺序 · start.sh

backend-python vchart-mcp backend-java frontend
三、技术实现
14 / 22
DataClaw
三、技术实现 · 数据库设计

持久化模型

分析会话域 · 4 张核心表

H2 文件库(MODE=MySQL)· 后续可平滑迁移 MySQL · 路径 ./data/dataclaw。

dc_thread PK thread_id (varchar 64) title · title_locked · status selected_dataset_id created_at · updated_at dc_thread_run PK run_id · IDX thread_id user_message · mode · model reasoning_effort · skill run_state · awaiting_clarification summary_markdown final_ui_result_json token_usage_json error_message · ts dc_thread_message PK id · IDX thread_id, run_id role: user / assistant content (TEXT) ui_result_json reaction · title status · duration created_at dc_thread_step PK id · UK (run_id, step_id) stream_order · status · time_cost output_json 1—N 1—N 1—N 1—N
用途关键字段
dc_thread会话线程主记录title_locked · selected_dataset_id
dc_thread_run每次提问 = 一次运行final_ui_result_json · token_usage_json
dc_thread_message用户/助手消息ui_result_json · reaction
dc_thread_step分析步骤回放stream_order · output_json

设计要点

  • title_locked:用户改名后 AI 不再覆盖
  • final_ui_result_json:核心扩展点,承载 UI Envelope
  • token_usage_json:模型成本审计
  • step_id + run_id 唯一键:澄清流程稳定定位
三、技术实现
15 / 22
DataClaw
三、技术实现 · 数据生命周期

一次分析全过程

从用户提问到最终 UI 落库

T0 T1 T2 T3 T4 T5 T6 用户操作 POST /threads → 写入 dc_thread status = idle 发起分析 POST .../messages/stream → 写入 dc_thread_run + user 消息 Java BFF 转发 → Python /runs/stream config.configurable subagent_enabled, dataset Skill 编排 search_metrics search_dimensions query_semantic_data 流式步骤 analysis.step.* SSE → 持续写入 dc_thread_step visualize_query_result finalize_ui_result result.ui SSE → assistant 消息落库 + final_ui_result_json 分支 · 澄清流程(clarification.required) 1. SSE clarification.required → 前端弹出问题 2. 用户提交补充 → PATCH /runs/{runId}/steps/{stepId}/clarification-feedback 3. Java 更新 dc_thread_step.output_json 4. 重新发起一轮 SSE 分析(保持 run 上下文) 完成态 message.completed → run_state = completed 前端从 result.ui 渲染 page.components 用户可点赞/点踩 → reaction 回写 用户可切换图表视图 → active_view 落库 失败态 message.failed → run_state = failed → error_message 落库 → 前端展示重试入口
三、技术实现
16 / 22
DataClaw
三、技术实现 · DeerFlow + Skills

AI Harness

基于 DeerFlow 的 Skill 体系

技能(Skill)= Markdown 描述的"工作流剧本",让 LLM 知道"什么场景做什么事"。

Whats New in DeerFlow 2.0

DeerFlow is now evolving from a Deep Research agent into a full-stack Super Agent

Context Engineering
Long/Short-term Memory

Now the agent can better understand you

Long Task Running
Planning and Sub-tasking

Plans ahead, reasons through complexity, then executes sequentially or in parallel

Extensible
Skills and Tools

Plug, play, or even swap built-in tools. Build the agent you want.

Flexible
Multi-Model Support

Doubao, DeepSeek, OpenAI, Gemini, etc.

Persistent
Sandbox with File System

Read, write, run — like a real computer

Free
Open Source

MIT License, self-hosted, full control

当前已落地的 Skill

Skill触发场景核心工具链
data_query 纯查询:查/趋势/排行/分组 search_metrics → search_dimensions → query_semantic_data → visualize_query_result → finalize_ui_result
data_analysis 需要分析、归因、趋势判断 同上 + business_summary 输出 + 分析解读

Skill 关键策略(来自 SKILL.md)

  • 时间策略:用户未给时间默认最近 7 日(不含今日),运行时计算
  • 不轻易澄清:能用 search 兜底就不打断用户
  • finalize_ui_result 仅一次:节省 token,决定最终展示组件
  • 不使用 present_files:结果走 UI Envelope,不走文件展示
  • 纯查询不输出长总结:summaryMarkdown 留空

DeerFlow 2.0 关键能力

Context Engineering Long/Short-term Memory Long Task Running Planning & Sub-tasking Persistent Sandbox Skills & Tools Multi-Model Open Source
三、技术实现
17 / 22
DataClaw
三、技术实现 · Tools / MCP 体系

能力总线

Tools · MCP · 让 Agent 拥有"双手"

元数据工具

  • search_metrics 指标搜索
  • search_dimensions 维度搜索
  • search_tags 标签搜索

基于 RAG · 召回准确度可评测

数据查询工具

  • query_semantic_data 语义查询
  • 覆盖标准指标 / 数据表 / 埋点
  • artifact 引用避免大结果污染

可视化工具

  • visualize_query_result
  • provider = vchart-mcp
  • 22 种图表类型可选
bar/line/area/pie funnel sankey heatmap

分析工具

  • 归因分析 / 分布分析
  • 下钻 / 对比 / 同环比
  • 规划阶段 → 阶段一 1.6

UI 收口工具

  • finalize_ui_result
  • 每次 Run 仅调用一次
  • 显式指定 componentIds 顺序

MCP 协议

  • JSON-RPC 2.0 + mcp-session-id
  • initialize · tools/list · tools/call
  • vchart-mcp 通过 streamable HTTP 暴露

MCP 双角色

作为 Server

Java BFF 暴露 /api/chatbi/mcp,让外部 Agent(含前端 MCP 客户端)调用我们的指标 / 数据集工具

作为 Client

Python Skill 链路通过 MCP 调用 vchart-mcp-server 生成图表 spec,由前端 VChart 渲染

三、技术实现
18 / 22
DataClaw
三、技术实现 · 端到端调用链

实例追踪

「按省份分析销售金额」 · 一次完整调用

把所有抽象拼回一条具体路径,看 Skill / Tool / SSE / DB 是怎么协同工作的。

Frontend Java BFF Python Harness Tools / MCP DB / 数据源 用户输入:按省份分析销售金额(dataset_fin) 写入 dc_thread_run + user 消息 POST /threads/{id}/runs/stream(assistant=lead_agent) search_metrics("销售金额") search_dimensions("省份", "时间") query_semantic_data(semanticQuery, dataset_fin) 数据表 / 业务库查询 artifact rows(按省份汇总) visualize_query_result(rows, chartType=bar) vchart-mcp 返回 chartSpec SSE: analysis.step.completed × N SSE: result.ui · finalize_ui_result 前端按 page.components 渲染图表 + 表格 写 dc_thread_step 写 assistant 消息 final_ui_result_json token_usage_json
三、技术实现
19 / 22
DataClaw
四、Roadmap · 阶段一

第四部分

阶段一 · Chat BI · 八大工作流

目标:落地基础架构、提供自助化的准确的 AI 数据服务。

1.1

元数据治理

标准指标、数据表、画像、埋点 治理与定义

财务赛事消费品经营大盘

指标 · 覆盖度

1.2

Skill 开发

问数 / 查数 / 分析 / 报告 四类核心 Skill

指标 · 准确度

1.3

元数据工具

RAG 推荐合适的指标和维度(基于问题库)

指标 · 召回准确度

1.4

数据查询工具

覆盖标准指标 / 数据表 / 埋点等

指标 · 查询完整度

1.5

可视化工具

前端组件化 · 图表 / 表格 / 反馈 / 报告

指标 · 渲染稳定性

1.6

数据分析工具

归因分析、分布分析、需求拆解

指标 · 准确性

1.7

Agent 基础能力

记忆 / 持久化 / 上下文压缩 / Token 控制 / 流程编排 / 沙箱

指标 · 效率成本 / 准确性

1.8

边界 & 评测

能力范围 / 评测标准 / 数据集 / 评测体系

指标 · 评测覆盖率

阶段目标 用户能用一句话准确拿到一张可解释的图,是阶段一交付的 KPI。
四、Roadmap
20 / 22
DataClaw
四、Roadmap · 阶段二

下一站

阶段二 · Data Claw · 自主决策循环

不再等待用户提问。Agent 主动巡检、主动归因、主动推送。

Autonomous Loop 主动监控 · 触发 · 归因 · 行动 ① Trigger · 触发 定时任务 / 阈值告警 如:DAU 跌破阈值 来源:监控 / 业务事件 ② Diagnose · 归因 自动下钻 · 拆分维度 复用 Skill / Tool 链路 基于 阶段一 1.6 工具 ③ Report · 报告 生成结构化分析报告 按角色推送(IM / 邮件) 飞书 channels.feishu ④ Action · 行动 提出可执行建议 支持人在回路确认 由用户/规则采纳

关键能力依赖

阶段一全部能力 监控接入 事件 → Run 转化器 报告模板系统 推送 Channel 权限 / 数据脱敏
四、Roadmap
21 / 22
DataClaw
Q & A
谢谢

Q & A

DataClaw = Data Agent + 自主决策
Data Agent = Model(10%) + Harness(90%)
让数据从「被请求」走向「被发现」。
3
分层 · FE / BFF / AI
4
核心表 · 会话域
11
SSE 事件类型
2 + ∞
Skill · 可扩展
DataClaw 设计思考
22 / 22 · END
01 / 22