@blueking/chat-x 2.4.0 → 3.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ag-ui/types/messages.d.ts +1 -1
- package/dist/components/chat-content/flow-agent-content/flow-agent-state.d.ts +24 -7
- package/dist/components/chat-content/flow-agent-content/use-flow-agent.d.ts +6 -1
- package/dist/components/chat-input/chat-input.vue.d.ts +5 -2
- package/dist/components/chat-message/user-message/user-message.vue.d.ts +1 -0
- package/dist/components/image-preview/image.vue.d.ts +2 -2
- package/dist/composables/use-global-config.d.ts +8 -0
- package/dist/composables/use-message-group.d.ts +3 -3
- package/dist/icons/execution.d.ts +4 -0
- package/dist/index.css +1 -1
- package/dist/index.js +2464 -2386
- package/dist/index.js.map +1 -1
- package/dist/lang/lang.d.ts +2 -1
- package/dist/mcp/generated/docs/activity-message.md +15 -13
- package/dist/mcp/generated/docs/assistant-message.md +3 -2
- package/dist/mcp/generated/docs/chat-container.md +4 -4
- package/dist/mcp/generated/docs/chat-input.md +4 -3
- package/dist/mcp/generated/docs/flow-agent-content.md +19 -14
- package/dist/mcp/generated/docs/messages.md +1 -1
- package/dist/mcp/generated/docs/toolcall-render.md +9 -9
- package/dist/mcp/generated/docs/use-global-config.md +14 -5
- package/dist/mcp/generated/docs/user-message.md +7 -4
- package/dist/mcp/generated/index.json +3 -3
- package/package.json +2 -2
- package/skills/blueking-chat-x/references/components/activity-message.md +15 -13
- package/skills/blueking-chat-x/references/components/assistant-message.md +3 -2
- package/skills/blueking-chat-x/references/components/flow-agent-content.md +14 -10
- package/skills/blueking-chat-x/references/components/toolcall-render.md +9 -9
- package/skills/blueking-chat-x/references/types/messages.md +1 -1
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
## 核心能力
|
|
25
25
|
|
|
26
|
-
- **状态聚合统计**:汇总所有任务的 `statistics.state_counts`,在标题栏按「执行中 / 成功 / 失败 / 挂起 /
|
|
26
|
+
- **状态聚合统计**:汇总所有任务的 `statistics.state_counts`,在标题栏按「执行中 / 成功 / 失败 / 挂起 / 已终止 / 待执行 / 跳过」分类展示带颜色的计数(超过 99 显示 `99+`)
|
|
27
|
+
- **已终止整体覆盖**:任一任务 `task_state === REVOKED` 时,标题栏在统计前展示橙红色「已终止」,并用括号包裹统计:`执行情况:已终止(…)`;任务行使用终止图标,叶子节点使用已终止圆点(`#F55B0E` 描边 / `#FEE8DD` 浅底)
|
|
27
28
|
- **两级折叠**:任务整体由 `ActivityLayout` 折叠;每个任务节点列表可单独展开/收起
|
|
28
29
|
- **耗时格式化**:节点耗时与任务总耗时按 `d/h/m/s` 紧凑展示,小于 1 秒显示 `<1s`
|
|
29
30
|
- **节点行尾操作**:hover 失败节点行显示「重试 / 跳过 / 详情」按钮组(间距 12px);成功 / 运行中等非失败节点仅显示「详情」。重试 / 跳过依赖节点 `retryable` / `skippable` 能力位,通过 `onInterruptResume` 回传 Agent
|
|
@@ -34,15 +35,17 @@
|
|
|
34
35
|
|
|
35
36
|
## 状态映射
|
|
36
37
|
|
|
37
|
-
组件将后端原始 `state` / `task_state`
|
|
38
|
+
组件将后端原始 `state` / `task_state` 归一为收敛状态(`getConvergedState`),用于图标、颜色与统计分类。配置源为 `STATE_DEFS`:
|
|
38
39
|
|
|
39
|
-
| 收敛状态
|
|
40
|
-
|
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `
|
|
45
|
-
| `
|
|
40
|
+
| 收敛状态 | 颜色 | 原始状态 | 统计 | 整体 header |
|
|
41
|
+
| ------------- | ----------- | --------------------------------------------------------------------------------- | ---- | ----------- |
|
|
42
|
+
| `running` | `#3A84FF` | `CREATED`、`LOOP_READY`、`READY`、`RUNNING`、`BLOCKED`、`ROLLING_BACK`、`ROLL_BACK_SUCCESS` 及未知状态(兜底) | 是 | 否 |
|
|
43
|
+
| `success` | `#65C389` | `FINISHED` | 是 | 否 |
|
|
44
|
+
| `failed` | `#EA3636` | `FAILED`、`ROLL_BACK_FAILED` | 是 | 否 |
|
|
45
|
+
| `suspended` | `#F59500` | `SUSPENDED` | 是 | 否 |
|
|
46
|
+
| `terminated` | `#F55B0E` | `REVOKED` | 是 | 是 |
|
|
47
|
+
| `pending` | `#4D4F56` | `PENDING` | 是 | 否 |
|
|
48
|
+
| `skipped` | `#5B7290` | `SKIPPED` | 是 | 否 |
|
|
46
49
|
|
|
47
50
|
## 基础用法
|
|
48
51
|
|
|
@@ -160,7 +163,8 @@ addCustomTab?.({
|
|
|
160
163
|
ActivityLayout(activity-type=flow_agent,v-model:collapsed)
|
|
161
164
|
├── #title(执行情况统计栏)
|
|
162
165
|
│ ├── AiLoading / ArrowRightIcon(加载态 / 折叠箭头)
|
|
163
|
-
│
|
|
166
|
+
│ ├── flow-agent-flow-header(任一任务 REVOKED 时展示「已终止」)
|
|
167
|
+
│ └── flow-agent-stat-item × N(按收敛状态分类的计数,含 terminated)
|
|
164
168
|
└── flow-agent-task-group × N(任务)
|
|
165
169
|
├── flow-agent-task-header(点击折叠当前任务)
|
|
166
170
|
│ ├── task-arrow(任务展开箭头)
|
|
@@ -101,20 +101,20 @@ isPending = !isSuccess && !isError; // 其余(含 pending / streaming / stop /
|
|
|
101
101
|
|
|
102
102
|
## 调用类型前缀
|
|
103
103
|
|
|
104
|
-
非进行中态的前缀由 `function.
|
|
104
|
+
非进行中态的前缀由 `function.function_type` 决定;进行中态工具 / MCP 显示「正在调用」,Skill 显示「正在读取」:
|
|
105
105
|
|
|
106
|
-
| `function.
|
|
106
|
+
| `function.function_type` | 前缀 | 说明 |
|
|
107
107
|
| ------------------------ | ----------- | ---------------------------------------- |
|
|
108
108
|
| `'function'` / 不传 | 调用工具 | 普通函数调用 |
|
|
109
109
|
| `'mcp'` | 调用 MCP | MCP 调用,通常同时带 `mcpName` |
|
|
110
110
|
| `'skill'` | 读取 Skill | Skill 读取 |
|
|
111
111
|
|
|
112
112
|
```typescript
|
|
113
|
-
const callType = fn?.
|
|
113
|
+
const callType = fn?.function_type ?? (fn?.mcpName ? 'mcp' : 'function');
|
|
114
114
|
```
|
|
115
115
|
|
|
116
|
-
- **旧数据兼容**:未下发 `
|
|
117
|
-
- **`
|
|
116
|
+
- **旧数据兼容**:未下发 `function_type` 时,有 `mcpName` 仍按 MCP 判定,历史消息展示不变
|
|
117
|
+
- **`function_type` 优先**:显式 `function_type: 'function'` 不会被 `mcpName` 覆盖回 MCP,但标题仍是 `{mcpName} / {name}`
|
|
118
118
|
|
|
119
119
|
**三种前缀对比**
|
|
120
120
|
|
|
@@ -191,14 +191,14 @@ const toolCallWithDuration: ToolCall = {
|
|
|
191
191
|
|
|
192
192
|
## MCP 调用
|
|
193
193
|
|
|
194
|
-
`function.
|
|
194
|
+
`function.function_type` 为 `'mcp'`(或旧数据仅有 `mcpName`)时,前缀为「调用 MCP」,标题格式变为 `{mcpName} / {functionName}`:
|
|
195
195
|
|
|
196
196
|
```typescript
|
|
197
197
|
const mcpToolCall: ToolCall = {
|
|
198
198
|
id: 'call_mcp_1',
|
|
199
199
|
type: 'function',
|
|
200
200
|
function: {
|
|
201
|
-
|
|
201
|
+
function_type: 'mcp', // ← 前缀显示「调用 MCP」;缺省时有 mcpName 也会兼容判定为 MCP
|
|
202
202
|
name: 'query_table',
|
|
203
203
|
arguments: JSON.stringify({ table: 'events', limit: 50 }),
|
|
204
204
|
description: '通过 MCP 协议查询蓝鲸数据平台中的事件数据',
|
|
@@ -326,8 +326,8 @@ type FunctionCall = {
|
|
|
326
326
|
name: string; // 函数名;为空时标题 fallback 为 toolCall.id
|
|
327
327
|
arguments: string; // 调用参数(通常为 JSON 字符串)
|
|
328
328
|
description?: string; // 工具描述;为空时"描述"区块保留但内容为空白
|
|
329
|
-
mcpName?: string; // MCP 服务名;有值时标题格式变为 "{mcpName} / {name}",缺省
|
|
330
|
-
|
|
329
|
+
mcpName?: string; // MCP 服务名;有值时标题格式变为 "{mcpName} / {name}",缺省 function_type 时兼容判定为 MCP
|
|
330
|
+
function_type?: FunctionCallType; // 调用类型,决定头部前缀;不传按 mcpName 兼容判定
|
|
331
331
|
};
|
|
332
332
|
|
|
333
333
|
// ToolMessage —— 工具返回消息
|