transition_task_status
Move a work item to a specified target status in Feishu/Lark projects. Resolves human-readable status names into workflow transitions and submits required fields.
Instructions
将指定工作项流转到目标状态。
该工具用于执行飞书项目工作项的状态流转(Workflow Transition)。
它会根据 target_status(人类可读的状态名称)自动解析出对应的 state_key / transition_id,
并调用后端的 workflow state_change 接口完成流转。
使用建议:
- 在调用本工具前,建议先调用 get_task_transition_requirements 获取必填字段要求。
- fields 参数当前仅支持 list[dict] 透传(最小实现),用于满足流转前的必填字段。
例如:[{"field_key": "field_x", "field_value": "y"}]。
注意:
- 成功时返回 JSON 字符串(success=true)。
- 失败时返回纯文本错误信息(由 with_error_handling 统一处理),不会返回 JSON。
Args:
issue_id: 工作项 ID,必填。
target_status: 目标状态名称(人类可读),必填。
fields: 流转时需要提交的字段列表(可选)。元素为 dict,直接透传给后端。
project: 项目标识符(可选)。可以是项目名称或 project_key;不传则使用环境变量默认项目。
work_item_type: 工作项类型名称(可选)。
mode: 流转模式(可选)。当前仅透传给 Provider,预留未来扩展。
user_key: (可选) 飞书用户标识符 (X-USER-KEY)。
Returns:
JSON 字符串。
成功时(success=true)data 格式至少包含:
{
"issue_id": int,
"target_status": str
}
失败时返回纯文本错误信息(由 with_error_handling 统一处理),常见原因包括:
- target_status 无法匹配(会提示“可选状态”)
- 流转失败(后端返回权限/参数错误等)
Examples:
# 直接流转(无额外字段)
transition_task_status(issue_id=123, target_status="已完成")
# 带必填字段流转
transition_task_status(
issue_id=123,
target_status="已完成",
fields=[{"field_key": "field_resolution", "field_value": "已修复"}],
)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | ||
| fields | No | ||
| project | No | ||
| issue_id | Yes | ||
| user_key | No | ||
| target_status | Yes | ||
| work_item_type | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |