跳至主要内容

任务运行期与 Worklist

翻譯正在進行中本指南目前僅提供簡體中文版本,其他語言版本將在後續補充。

任务设计版本发布后,可以使用 spark worklist 和 spark task 在运行期验证任务。Worklist 命令只读取数据;spark task create 会创建真实任务,因此应先使用 --dry-run 检查请求。

1. App 与环境​

运行期命令必须明确目标 App 和环境:

spark worklist my-pending --app spark-sample --env dev

支持的环境别名:

输入实际环境
dev、developmentDEV
test、uatTEST
prod、productionPROD

也可以设置单次 shell 默认值:

export SPARK_WORKLIST_APP=spark-sample
export SPARK_WORKLIST_ENV=dev
spark worklist my-pending

:::warning 默认环境 没有传参数时,CLI 使用默认 App low-code-app 和 PROD。在开发和验收阶段,建议始终显式传入 --app 与 --env,避免查询或写入错误环境。 :::

2. 三个常用任务视图​

spark worklist my-pending --app spark-sample --env dev
spark worklist my-created --app spark-sample --env dev
spark worklist my-processed --app spark-sample --env dev
spark worklist drafts --app spark-sample --env dev
  • my-pending:当前用户需要办理的任务。
  • my-created:当前用户创建的任务。
  • my-processed:当前用户已经处理过的任务。
  • drafts:当前用户的草稿任务;实际可用性取决于运行期是否已开放完整草稿能力。

3. 列表过滤、排序和分页​

spark worklist my-created \
--app spark-sample \
--env dev \
--keyword Purchase \
--status OPEN \
--page 1 \
--limit 50
spark worklist my-pending \
--app spark-sample \
--env dev \
--task-type PURCHASE \
--step "Department Review" \
--assignee alice \
--sort updatedAt:desc

选择列和格式:

spark worklist my-pending \
--app spark-sample \
--env dev \
--columns key,title,status,assignee,updated \
--format table

spark worklist my-pending --app spark-sample --env dev --json
spark worklist my-pending --app spark-sample --env dev --csv

4. TQL 与保存的 Filter​

运行临时 TQL:

spark worklist search \
'assignee = currentUser() AND status = OPEN ORDER BY updatedAt DESC' \
--app spark-sample \
--env dev

查看并执行保存的 Filter:

spark worklist filters
spark worklist filter "All Open Purchase Requests" \
--app spark-sample \
--env dev

Filter 列表属于当前用户上下文;执行 Filter 时仍应明确目标 App 和环境。

5. Worklist 指标与菜单​

spark worklist metrics --app spark-sample --env dev
spark worklist menus --app spark-sample --env dev

metrics 展示我的待办、我创建的等聚合数量;menus 展示该运行环境提供的 Workbench 菜单及其查询信息。

6. 查看任务详情​

从 Worklist 取得 task key 后:

spark task detail DEV-PURCHASE-18 \
--app spark-sample \
--env dev

其他输出方式:

spark task detail DEV-PURCHASE-18 --app spark-sample --env dev --format table
spark task detail DEV-PURCHASE-18 --app spark-sample --env dev --json
spark task detail DEV-PURCHASE-18 --app spark-sample --env dev --verbose

详情会展示任务摘要、字段、当前处理人、可用操作、日志和运行进度。show、view 是 detail 的别名。

7. 预检查并创建任务​

先读取任务类型和字段,确认当前版本中实际使用的 task type key 与字段 Code。页面中新建字段时 Key 由系统自动生成,不能根据 Amount 等 Label 猜测:

spark-designer task app use spark-sample
spark-designer task type list
spark-designer task field list --json

再使用 --dry-run 解析任务类型、版本、Create Form 和提交值,但不创建任务:

spark task create \
--task-type PURCHASE \
--title "Laptop purchase" \
--app spark-sample \
--env dev \
--dry-run \
--json

确认 dry-run 中的 appId、environment、versionId、taskTypeId、formId 和 values 后,去掉 --dry-run 创建真实任务:

spark task create \
--task-type PURCHASE \
--title "Laptop purchase" \
--app spark-sample \
--env dev

需要提交自定义字段时,使用 field list 返回的真实 Code 组织 JSON。字段较多时,建议从文件读取:

purchase-values.json
{
"<amount-field-code>": 12000,
"<category-field-code>": "Hardware"
}

将占位符替换为当前 App 中的实际字段 Code,再执行:

spark task create \
--task-type PURCHASE \
--values-file purchase-values.json \
--app spark-sample \
--env dev \
--dry-run

:::danger task create 会立即写入 当前命令在没有 --dry-run 时直接创建任务,不需要额外 --yes。在脚本、Codex 或 Claude 中调用时,必须先执行 dry-run,并由用户确认目标 App、环境和字段值。 :::

8. 当前功能边界​

当前 CLI 已支持:

  • 查询 Worklist 内置视图。
  • 运行临时 TQL 和保存的 Filter。
  • 查看 Worklist 指标、菜单和任务详情。
  • dry-run 并创建任务。
  • 查询任务相关 SLA 数据。

当前 CLI 尚未提供通用的任务 transition/operation 执行命令。需要审批、驳回、认领或其他工作流操作时,使用 Spark Runtime 任务工作台。后续开放相应 CLI 后,应同样基于可用操作、表单校验和显式确认实现,不能绕过任务引擎直接修改状态。

9. 与 AI 助手组合​

Codex:

$spark-worklist 查询 spark-sample DEV 环境中我的待办,并打开最近更新任务的详情。只读取。

Claude Code:

/spark-worklist my-pending --app spark-sample --env dev --limit 20

更多说明:Codex 集成 和 Claude Code 集成。