Replies: 4 comments 1 reply
|
Chat 是发生在任意 Agent 或渠道中的意图入口,Task 才是 Chat2DB 承接数据库工作的可信执行单元;Chat2DB 不争夺谁来聊天,而将来自 Codex、Claude、IDE、CLI、IM 或自身的意图,统一转化为可调度、可审批、可恢复、可审计的 Task,并安全可靠地执行到底。 |
补充:这不是给 Chat 增加几个能力,而是两种软件形态当前 Chat2DB 的 AI 仍然主要由人驱动:用户发起对话、描述问题,AI 生成 SQL 或返回查询结果,之后还需要人继续判断、复制、整理和交付。它更像一个增强型数据库工具,工作的闭环仍由人完成。 我们希望升级后的 Chat2DB 能拥有自己的 Agent Runtime:接到一个 Task 后,Agent 可以自主读取任务上下文,规划和拆解步骤,定位合适的数据源,调用现有数据库连接、元数据和 SQL 能力获取数据,完成分析,并把最终产物交付出去。人不再负责逐轮驱动执行,只在澄清、审批和 review 等必要节点介入。 可以把完整闭环抽象为:
这里最核心的抽象是 Task,而不是 Chat,也不是 A2A:
产物和交付也不应局限于聊天文本:
同时,产品中需要完整保留每个 Task 的来源、上下文、规划过程、执行步骤、状态变化、审批记录、数据访问记录和最终产物,使任务可以追溯、恢复和审计。 因此真正的产品变化是:
这才是 Chat2DB 作为 AI Native Database Agent 的核心形态:数据库能力是底座,Task 是统一入口,Agent Runtime 负责自主执行,Artifact 是最终交付。 |
|
这个方向挺对。我觉得第一波别铺太大,先把「SQL 写操作审批」这一条竖着跑通:创建 Task → 跑到 DML/DDL 前挂起 → 杀掉 App → 重开 → 审批 → 继续执行 → 留下可审计的结果。这个链路一旦通了,队列、恢复、审批、产物几个最难的底层问题基本都碰到了;定时巡检反而可以后放。 我们做 BitFun 的 Rust Agent Runtime 和 Mini Apps 时,有个坑很明显:别让 Task 状态寄生在聊天记录里。Chat 可以是入口和观察窗,但 Run、approval、tool result、artifact 得各自有稳定 ID,事件最好只追加,工具执行还要有幂等键。否则很容易出现“聊天还在,但这个写操作到底执行过没有”的尴尬场面。 另外数据库任务真的很适合单独的界面,不必把结果都塞回 Markdown。结果集、图表、写入前后的 diff、审批按钮可以直接作为任务自己的 UI,Chat 只负责追问和改目标。这个也是我们做 Agentic Mini Apps 后感觉比纯聊天顺手很多的地方。 |
|
我比较认同从 Chat 往 Task 这个方向走,不过这段看下来还有几个地方没太想明白。 首先是这句: 只要请求符合统一的 Task 契约,Chat2DB Agent 就能够承接并执行。 我感觉这里说得有点满。Task 契约更多解决的是“任务怎么描述”,但一个任务能不能真正执行,还要看当前 Agent 有没有对应能力、调用方有没有数据源权限、这个任务允不允许执行写操作、产物能不能往外发等等。 比如一个任务要求查生产库,然后生成 CSV 发到某个 Webhook。Task 格式本身完全合法,但调用方可能没有生产库权限,Webhook 也可能不允许外发数据。这种情况下,光靠统一 Task Contract 应该还不够。 所以这里是不是还需要有一层 capability / permission / policy 的判断?尤其 Chat2DB 本身管理的是数据库连接,我觉得数据源的“可见”“可用”“当前任务允许使用”最好不要混在一起。 另外,A2A、MCP、API 全部归成“接收任务、传上下文、返回产物的媒介”,我觉得也有点粗。MCP 更偏工具和资源暴露,A2A 本身其实已经有 Task、状态、Artifact 这些概念了。既然后面希望其他 Agent 也可以把任务交给 Chat2DB,那是不是可以先看看内部 Task Model 和这些协议怎么映射,而不是一开始就把 Chat2DB 的 Task Contract 定死? |

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
提议:把 Chat2DB 内置 AI 从「Chat 型」强化为「任务型 Agent Runtime」
背景:当前 AI 能力是「Chat 型」
Chat2DB 内置的 AI 能力(Chat 对话、AI 写 SQL / NL2SQL、外部模型接入)目前是典型的 Chat 型 交互:
提议:升级为「任务型 Agent Runtime」
在 Chat2DB App 自身能力不变(数据库连接、SQL 客户端、数据管理、MCP 工具等原有能力全部保留)的前提下,把产品形态转型为类似 WorkBuddy / Codex App 的任务型 Agent 工作台:数据库能力仍是核心底座,交互升级为"任务驱动",AI 从聊天助手升级为可调度、可审批、可留痕的一等公民。
参考任务驱动型 Agent 工作台(如 WorkBuddy)与 Coding Agent(如 Codex、Claude Code、Hermes)的通用模式,把 Chat2DB 的 AI 升级为以 Task 为一等公民 的 Agent 运行时:
1. UI:从 Chat 升级为 Task 工作台
2. 执行体(runtime)可插拔
run(task) → 流式事件(与 MCP 协议兼容),执行体可插拔切换。3. 通用 Agent 能力
queued → running → waiting_approval / in_review → completed / failed / cancelled;4. 核心定位:以数据库连接能力为底座,本地 Runtime + CLI 做任务强化
架构落地三步
execute_sql写操作挂起等用户批准;支持只读模式。想听大家讨论
欢迎拍砖、补充场景,也欢迎指出这个方向在数据库工具里的坑。
关联
All reactions