执行岗位动作
canvas_action执行一个岗位动作(如 AICare 的 preflight / list_checks / gen_report / run_detection / resolve_user)。参数:slug、action 必填;params 按 list_actions 的 schema 填;session_id 想让结果落在某次会话里就带;hostUserId 宿主用户标识可选。返回 {ok, mode:"sync", data} 直接用;{ok, mode:"job", jobId, pollSec} 用 get_job 轮询。代价:list_actions 标 paid 的会从岗位出资人余额扣 credits(出报告 5 / 跑检测 2),失败不扣;同键(如同对象同一天)重复调用返回缓存结果(cached 标记)不重复扣,用户催第二次可放心重试。典型编排:list_actions → canvas_action(preflight) 拿背景 → canvas_action(gen_report) → get_job → 用自然语言讲给用户。
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | ||
| action | Yes | 动作 id,见 list_actions | |
| params | No | 按 list_actions 给的 JSON Schema 填 | |
| hostUserId | No | 宿主用户标识,可选 | |
| session_id | No | 可选,open_canvas 给的会话 ID,动作记录会挂到该会话 |