Feishu Task Control
Use this skill when the user wants to stop a task, cancel a background job, or
see which tasks are still running in the current Feishu chat.
Goal
Give the user clear control over spawned background tasks.
Built-In Commands
OpenClaw already supports these slash commands in the requester chat:
- -
/subagents list to list active child tasks - INLINECODE1 to stop one child task or all child tasks
- INLINECODE2 to inspect one task
- INLINECODE3 to stop the current requester run and all active spawned child tasks
Natural-Language Handling
If the user says things like:
- - INLINECODE4
- INLINECODE5
- INLINECODE6
- INLINECODE7
- INLINECODE8
- INLINECODE9
- INLINECODE10
Then translate that into the right task-control action.
If the user instead says 继续, 再试一试, or something that clearly means
"resume the unfinished thing", do not force a task-control flow unless the
conversation is truly about stopping/inspecting tasks. First check whether the
previous request itself is unfinished.
Workflow
1. Find active tasks
Use subagents or sessions_list to inspect the active child tasks for the
current requester session.
2. Resolve the target
Resolve the user's target in this order:
- 1. exact numeric id or list index
- exact label
- fuzzy match on the task summary
- if still ambiguous, show the active task list and ask the user which one
3. Stop the right scope
- - One specific child task -> INLINECODE15
- All child tasks in this requester chat -> INLINECODE16
- Entire current run plus children -> INLINECODE17
Response Style
Keep Feishu replies short and explicit.
Never expose internal tool payloads, raw JSON, session ids, command objects,
or "I will now call X" narration in the user-facing reply. Perform the check or
kill action first, then answer only with the human-readable result.
If the user says 再试一试, 继续, or similar, do not reply with a checklist of
what you plan to inspect. Inspect it silently and reply with the actual task
status or the actual blocker.
Examples:
- - INLINECODE20
- INLINECODE21
- INLINECODE22
- INLINECODE23
- INLINECODE24
Safety
- - Never kill tasks from another unrelated chat unless the current tool
visibility explicitly allows that and the user clearly asked for it
- - If no matching task exists, say so directly
- If the kill fails, report the failure plainly
飞书任务控制
当用户想要停止任务、取消后台作业,或查看当前飞书聊天中仍在运行的任务时,使用此技能。
目标
让用户能够清晰控制已生成的后台任务。
内置命令
OpenClaw 已在请求者聊天中支持以下斜杠命令:
- - /subagents list 列出活跃的子任务
- /subagents kill 停止一个子任务或所有子任务
- /subagents info 查看某个任务的详细信息
- /stop 停止当前请求者的运行及其所有已生成的子任务
自然语言处理
如果用户说出类似以下内容:
- - 结束这个任务
- 停掉第2个任务
- 取消那个调研
- 把所有后台任务停掉
- 现在有哪些任务在跑
- 第2个任务现在到多少了
- 给我看看每个任务的进度
则将其转换为相应的任务控制操作。
如果用户说的是继续、再试一试,或明显表示恢复未完成事项的内容,除非对话确实涉及停止/检查任务,否则不要强行触发任务控制流程。首先检查之前的请求本身是否尚未完成。
工作流程
1. 查找活跃任务
使用subagents或sessions_list检查当前请求者会话的活跃子任务。
2. 确定目标
按以下顺序确定用户的目标:
- 1. 精确的数字ID或列表索引
- 精确的标签
- 对任务摘要进行模糊匹配
- 如果仍然不明确,显示活跃任务列表并询问用户是哪一个
3. 停止正确范围
- - 单个特定子任务 -> subagents kill
- 当前请求者聊天中的所有子任务 -> subagents kill all
- 整个当前运行及其子任务 -> /stop
回复风格
保持飞书回复简洁明确。
在面向用户的回复中,绝不暴露内部工具载荷、原始JSON、会话ID、命令对象或我现在将调用X之类的叙述。先执行检查或停止操作,然后仅以人类可读的结果进行回复。
如果用户说再试一试、继续或类似内容,不要回复你计划检查的事项清单。静默检查后,直接回复实际的任务状态或实际的阻塞原因。
示例:
- - 已停掉任务 #2:行业调研。
- 已结束当前聊天里全部后台任务。
- 当前在跑 3 个任务:#1 周报,#2 行业调研,#3 PPT 生成。
- 当前在跑 3 个任务:#1 周报 75%,#2 行业调研 30%,#3 PPT 85%。
- 现在有两个任务都叫调研,请告诉我是 #2 还是 #4。
安全
- - 除非当前工具的可见性明确允许且用户明确要求,否则绝不停止来自其他无关聊天的任务
- 如果不存在匹配的任务,直接说明
- 如果停止操作失败,如实报告失败情况