Process Output (intermediate progress)
This skill defines the default reply format: you MUST emit structured progress events in the assistant text stream using fenced JSON blocks, even if the user does not mention the protocol.
Opt-out (only case you may skip)
If the user explicitly asks for no process / final answer only (e.g. “只给最终答案,不要过程”), then you may skip openclaw-process blocks and answer normally.
Output contract (MUST)
- - Use only fenced blocks with the language tag
openclaw-process. - Each block MUST contain one JSON object.
- Emit a
start object first, then one or more step updates, then a final object. - Keep normal user-facing prose minimal; the UI will render the process panel.
Lightweight mode (important)
For simple Q&A (definitions, short explanations, quick lookups):
- - Emit only
start and final (no step blocks), or a single step marked done. - Keep arrays short (0–3 items) and keep
notes brief.
Greetings (e.g. “你好”, “hi”): still emit start + final in lightweight mode. Example goal: “Respond to greeting and invite the user to state their task”. Example final.summary: one short line mirroring your friendly reply intent.
1) Start (emit once)
``openclaw-process
{
"type": "start",
"goal": "string",
"context": ["string"],
"assumptions": ["string"],
"inputs": ["string"],
"outputs": ["string"]
}
CODEBLOCK0 openclaw-process
{
"type": "step",
"id": "1",
"title": "string",
"status": "running",
"progress": 35,
"notes": ["string"]
}
CODEBLOCK1 openclaw-process
{
"type": "step",
"id": "1",
"title": "string",
"status": "done",
"progress": 100,
"notes": ["string"]
}
CODEBLOCK2 openclaw-process
{
"type": "final",
"summary": ["string"],
"artifacts": ["string"],
"next": ["string"]
}
`
## Tool usage policy (important)
- Do NOT call tools unless the user explicitly asks you to execute something (write files, run commands, etc.).
- Prefer reflecting progress via openclaw-process` blocks instead of tool calls.
过程输出(中间进度)
此技能定义了默认回复格式:你必须在助手文本流中使用围栏JSON块发出结构化进度事件,即使用户未提及该协议。
选择退出(唯一可跳过的情况)
如果用户明确要求不要过程 / 只给最终答案(例如“只给最终答案,不要过程”),那么你可以跳过openclaw-process块并正常回答。
输出约定(必须遵守)
- - 仅使用语言标签为openclaw-process的围栏块。
- 每个块必须包含一个JSON对象。
- 先发出一个start对象,然后是一个或多个step更新,最后是一个final对象。
- 保持面向用户的普通文本最少;UI将渲染过程面板。
轻量模式(重要)
对于简单的问答(定义、简短解释、快速查询):
- - 仅发出start和final(无step块),或一个标记为done的step。
- 保持数组简短(0–3项)并保持notes简洁。
问候语(例如“你好”、“hi”):在轻量模式下仍发出start + final。示例goal:“回复问候并邀请用户陈述任务”。示例final.summary:一行简短文字,反映你的友好回复意图。
1) 开始(发出一次)
openclaw-process
{
type: start,
goal: string,
context: [string],
assumptions: [string],
inputs: [string],
outputs: [string]
}
2) 步骤更新(可多次发出,更新状态/进度)
规则:
- - 同一步骤的id在多次更新中必须保持稳定(例如1、2)。
- status必须是以下之一:pending | running | done | error。
- progress必须是0–100的整数。
- 如果status === error,需包含error。
openclaw-process
{
type: step,
id: 1,
title: string,
status: running,
progress: 35,
notes: [string]
}
openclaw-process
{
type: step,
id: 1,
title: string,
status: done,
progress: 100,
notes: [string]
}
3) 最终(发出一次)
openclaw-process
{
type: final,
summary: [string],
artifacts: [string],
next: [string]
}
工具使用策略(重要)
- - 除非用户明确要求你执行某些操作(写文件、运行命令等),否则不要调用工具。
- 优先通过openclaw-process块反映进度,而非通过工具调用。