# Workflow Assistant

> 当用户意图涉及跨领域联动、多步骤流程、或需要综合分析报告时，优先触发本技能。典型特征： - 流程性表述：帮我把…都…、审核后出库、查完再…、一键处理、批量…并… - 当前支持的组合场景： 1.批量审核订单（查询待审核订单 → 分批提交审核 → 汇报结果）； 2.创建订单（选择往来单位 → 选商品 → 计价确认 → 提交下单）； 3.订单发货（确认出库单 → 选择发货途径 → 收集物流信息 → 提交发货）； 4.订单签收（查询发货单获取签收单ID → 确认签收方式 → 调用签收接口） 5.数据导出（查询数据 → 生成导出数据任务 → 轮询任务状态 → 获取导出文件地址 → 下载导出文件） 本技能通过编排 site-assistant 的技能能力完成上述复杂任务。 若用户意图不在上述范围内，直接使用 [`../site-assistant/SKILL.md`](../site-assistant/SKILL.md) 技能。

- Skill: `infometa/workflow-assistant` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add infometa/workflow-assistant`
- Raw SKILL.md: https://api.skillmd.com/api/skills/infometa/workflow-assistant/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: infometa (https://skillmd.com/u/infometa)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/infometa/workflow-assistant

---


# workflow-assistant 技能

## 技能职责

本技能负责处理需要**跨领域、多步骤协同**的复杂业务请求。由本技能统筹规划执行路径，通过[`../site-assistant/SKILL.md`](../site-assistant/SKILL.md)技能，完成用户需求，最终以结构化、易读的方式呈现给用户。

> **CRITICAL — ircloud-cli 工具单次并发执行最大5个。

## 触发判断

当用户意图包含以下特征时，优先启用本技能：

- 描述中包含**流程性动词序列**，如"查完再…""然后…""一起…""全部…""批量…并…"
- 涉及**两个以上业务领域**的数据联动，如"员工的业绩和拜访情况"
- 需要将**上一步结果作为下一步输入**，如"找到这个客户的订单再统计金额"
- 用户要求**综合分析报告**，如"给我出一份本月商品销售分析"
- 涉及**状态流转的完整链路**，如订单从审核到签收的全流程

---

## 编排原则

### 1. 先规划，后执行
在开始调用任何接口前，先向用户确认或自行推断完整的执行步骤，避免中途失败导致数据不一致。

### 2. 串联依赖关系
当步骤 B 需要步骤 A 的输出作为参数时，必须等 A 执行成功后再执行 B。

```
示例：批量审核订单
步骤1: customerOrderList（获取待审核订单ID列表）
步骤2: orderAudit（传入步骤1的订单ID列表执行批量审核）
```

### 3. 数据关联计算统计
涉及数据关联与计算统计时，优先使用数据查询接口获取数据，通过 ID 字段进行关联，不得优先使用导出接口。

```
示例：统计客户订货金额
步骤1: customerOrderList（通过 queryPageAll=true 获取订单数据）
步骤2: 通过客户 ID 关联汇总各客户订货金额
✗ 不可：使用 customerConditionsExport 导出后再统计
```

### 4. 并联无依赖步骤
当多个步骤之间无数据依赖时，可同时发起，提升响应效率。

### 5. 错误中断与提示
任意步骤失败时，停止后续流程，向用户说明当前进度及失败原因，不得跳过强制继续。

### 6. 结果整合输出
所有步骤完成后，将各步骤结果合并为统一的结构化视图，而非逐条原始输出。

---

## 脚本编写原则

编排过程中需要编写 Python/Node.js/Shell 脚本处理数据时，遵循以下原则：

1. 禁止硬编码时间戳，必须使用明确时间计算时间戳。
2. 时间范围（如本月起止日期、近 N 天、时间戳等）必须由计算工具得出。

**时间戳计算示例（Python）：**
```python
from datetime import datetime, timedelta

# 本月第一天 00:00:00
month_start = datetime.now().replace(day=1, hour=0, minute=0, second=0, microsecond=0)
month_start_s = int(month_start.timestamp())  # 秒级时间戳
month_start_ts = int(month_start.timestamp() * 1000)  # 毫秒级时间戳

# 当前时间
now_ts = int(datetime.now().timestamp() * 1000)

# 近N天
n = 7
recent_n_days_ts = int((datetime.now() - timedelta(days=n)).timestamp() * 1000)
```

**错误示例（禁止）：**
```python
# ❌ 禁止硬编码
start_ts = 1719100800000
end_ts = 1721692800000
```

---

## 场景路由表

| 用户意图关键词 | 场景 | 参考文档 |
|---|---|---|
| 帮我审核订单、批量审核、审核后出库、自动审核、把待审核订单全部通过 | 批量审核订单 | references/订单/批量审核订单.md |
| 帮我下单、给XX客户下单、创建订单、我要下单、帮我买、创建一笔订单 | 创建订单 | references/订单/创建订单.md |
| 帮我发货、订单发货、出库后发货、填写物流信息、快递发货、自有物流发货 | 订单发货 | references/订单/发货.md |
| 帮我签收、订单签收、确认收货、签收发货单、整单签收、部分签收 | 订单签收 | references/订单/订单签收.md |
| 帮我导出、导出数据、导出客户、导出商品、导出订单、下载数据 | 数据导出 | references/导出/数据导出.md |

---

## 输出规范

### 多步骤进度提示
执行多步骤流程时，应在每个关键步骤前后给出简短进度说明：
```
正在查询待审核订单... ✓ 找到 12 笔待审核订单
正在批量审核... ✓ 审核成功 12 笔
正在发起出库... ✓ 出库完成 10 笔，失败 2 笔（库存不足）
```

### 综合分析报告格式
```
## [主题] 综合分析报告

### 核心指标
| 指标 | 数值 | 环比 |
...

### 详细数据
...

### 风险提示
...
```

### 异常处理说明
若中间步骤出现异常，明确告知用户已完成的步骤和未完成的步骤，以及失败原因。

