Install
openclaw skills install agent-work-visibility🟢 让长任务不再黑箱!自动显示进度条 + 每分钟更新 + 健康度。 🚀 安装 + 激活:clawhub install agent-work-visibility && node ~/.openclaw/skills/agent-work-visibility/activate.js
openclaw skills install agent-work-visibility系统级任务透明层 - Agent 的职业本能
⚠️ 这不是一个技能,而是 Agent 的职业素养。
透明层不应该被"触发",它应该是 Agent 工作时的默认状态。
v2.x 的问题:
v3.0 的原则:
❌ v2.x(关键词匹配):
用户:"查查 bnb memecoin top3"
→ 匹配"查查" → 触发透明层
→ 匹配失败 → 不触发(Agent 直接执行)
✅ v3.0(任务属性感知):
用户:"bnb memecoin top3"
→ 识别任务类型:crypto-market-rank
→ 检测属性:外部 API + 联网 + 多步
→ 自动启动透明层(无条件的)
任何长任务必须遵循:
1. 感知任务属性 → 2. 启动透明层 → 3. 执行业务逻辑
代码层面的强制流程:
// ✅ 正确流程(v3.0)
async function executeTask(userQuery) {
// Step 1: 感知任务属性
const taskProps = analyzeTask(userQuery);
// Step 2: 如果是长任务,必须先启动透明层
if (taskProps.isLongRunning) {
await create_visibility_task(
generateId(),
extractTitle(userQuery),
taskProps.type,
taskProps.totalSteps
);
}
// Step 3: 执行业务逻辑
const result = await executeBusinessLogic(userQuery);
// Step 4: 完成透明层
await update_visibility_phase(taskId, '完成', 'complete', 100);
return result;
}
// ❌ 错误流程(禁止!)
async function executeTask(userQuery) {
// 直接执行,绕过透明层 → 职业失职!
return await executeBusinessLogic(userQuery);
}
只要满足任一条件,必须启动透明层:
| 属性 | 检测条件 | 示例 |
|---|---|---|
| 外部 API | 调用非本地服务 | crypto-market-rank, web_search |
| 链上数据 | 读取区块链状态 | query-address-info, query-token-info |
| 联网操作 | 需要 HTTP 请求 | web_fetch, browser |
| 多步推理 | 步骤≥3 | 比较/分析/调研类任务 |
| 子 Agent | 需要协作 | 调用其他 bot/skill |
| 耗时>10 秒 | 预估执行时间 | 任何可能等待的操作 |
通过 exec 调用 CLI v3 工具:
# 创建任务(第一优先级!)
node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js create task-001 "查询 BNB MemeCoin Top3" api
# 更新进度(每步 + 每 60 秒)
node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js update task-001 "连接 API" 25 "正在获取数据"
# 完成任务
node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js complete task-001
# 查看状态
node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js status task-001
# 报告阻塞
node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js block task-001 "API 响应超时"
在 LLM 中使用(通过 exec):
// 1. 创建任务(第一优先级!)
exec('node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js create task-001 "查询 BNB MemeCoin Top3" api')
// 2. 更新进度(每步操作后 + 每 60 秒)
exec('node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js update task-001 "连接 API" 25 "正在获取数据"')
// 3. 完成任务
exec('node ~/.openclaw/skills/agent-work-visibility/bin/agent-visibility-v3.js complete task-001')
🟢 查询 BNB MemeCoin Top3
━━━━━━━━━━━━━━━━━━━
进度:[█████░░░░░░░░░░░░░░░] 25% (1/4)
━━━━━━━━━━━━━━━━━━━
健康度:🟢 健康 (100/100)
当前阶段:连接 API
正在做什么:正在获取 BNB 链 MemeCoin 数据
已运行:0 分钟
用户:"bnb memecoin top3"
[任务属性分析]
→ 需要调用 crypto-market-rank
→ 涉及外部 API + 联网
→ 必须启动透明层
[自动执行]
✅ create_visibility_task("task-001", "查询 BNB MemeCoin Top3", "api", total_steps=4)
[输出视图]
🟢 查询 BNB MemeCoin Top3
━━━━━━━━━━━━━━━━━━━
进度:[█████░░░░░░░░░░░░░░░] 25% (1/4)
━━━━━━━━━━━━━━━━━━━
健康度:🟢 健康 (100/100)
当前阶段:连接 API
正在做什么:正在获取 BNB 链 MemeCoin 数据
已运行:0 分钟
[执行业务]
→ crypto-market-rank 获取数据
[更新进度]
✅ update_visibility_phase("task-001", "数据处理", "update", 50, 2, 4)
[输出视图]
🟢 查询 BNB MemeCoin Top3
━━━━━━━━━━━━━━━━━━━
进度:[██████████░░░░░░░░░░] 50% (2/4)
━━━━━━━━━━━━━━━━━━━
健康度:🟢 健康 (100/100)
当前阶段:数据处理
正在做什么:正在解析 Top3 代币信息
已运行:1 分钟
[完成]
✅ update_visibility_phase("task-001", "完成", "complete", 100, 4, 4)
用户:"0x1234...5678 持有哪些币"
[任务属性分析]
→ 需要调用 query-address-info
→ 涉及链上数据抓取
→ 必须启动透明层
[自动执行]
✅ create_visibility_task("task-002", "查询地址持仓", "onchain", total_steps=5)
[输出视图]
🟢 查询地址持仓
━━━━━━━━━━━━━━━━━━━
进度:[█████░░░░░░░░░░░░░░░] 20% (1/5)
━━━━━━━━━━━━━━━━━━━
健康度:🟢 健康 (100/100)
当前阶段:连接 RPC
正在做什么:正在读取链上代币余额
已运行:0 分钟
用户:"比较 5 个 AI Agent 框架"
[任务属性分析]
→ 需要多步推理(≥3 步)
→ 涉及信息搜集 + 分析
→ 必须启动透明层
[自动执行]
✅ create_visibility_task("task-003", "比较 AI 框架", "analysis", total_steps=7)
[每步同步]
✅ update_visibility_phase(..., "框架 1: LangChain", "update", 14, 2, 7)
✅ update_visibility_phase(..., "框架 2: AutoGen", "update", 28, 3, 7)
✅ update_visibility_phase(..., "框架 3: CrewAI", "update", 42, 4, 7)
...
[阻塞检测]
⚠️ API 响应超时 45 秒
[自动报告]
✅ report_visibility_blocker("task-001", "api_timeout", "API 响应超时", "medium")
[用户视图]
🟡 查询 BNB MemeCoin Top3
━━━━━━━━━━━━━━━━━━━
进度:[██████████░░░░░░░░░░] 50% (2/4)
━━━━━━━━━━━━━━━━━━━
健康度:🟡 轻微延迟 (70/100)
当前阶段:连接 API
为什么还没完成:等待 API 响应(已 45 秒)
已运行:2 分钟
[每分钟自动更新]
🟡 查询 BNB MemeCoin Top3
━━━━━━━━━━━━━━━━━━━
进度:[██████████░░░░░░░░░░] 50% (2/4)
━━━━━━━━━━━━━━━━━━━
健康度:🟡 轻微延迟 (70/100)
当前阶段:连接 API
为什么还没完成:等待 API 响应(已 105 秒)
已运行:3 分钟
function generateProgressBar(progress, totalWidth = 20) {
const filled = Math.floor((progress / 100) * totalWidth);
const empty = totalWidth - filled;
return `[${'█'.repeat(filled)}${'░'.repeat(empty)}] ${progress}%`;
}
// 示例
generateProgressBar(0) // [░░░░░░░░░░░░░░░░░░░░] 0%
generateProgressBar(25) // [█████░░░░░░░░░░░░░░░] 25%
generateProgressBar(60) // [████████████░░░░░░░░] 60%
generateProgressBar(100) // [████████████████████] 100%
{statusIcon} {任务标题}
━━━━━━━━━━━━━━━━━━━
进度:{progressBar} ({currentStep}/{totalSteps})
━━━━━━━━━━━━━━━━━━━
健康度:{healthIcon} {healthText} ({health}/100)
当前阶段:{phase}
正在做什么:{action}
{optional: 为什么还没完成:{blockerReason}}
已运行:{elapsedMinutes} 分钟
// 任务启动时创建定时器
const timer = setInterval(() => {
update_visibility_phase(
task_id,
current_phase,
"update",
current_progress,
current_step,
total_steps,
auto_update_message // "仍在等待 API 响应..."
);
}, 60000); // 60 秒
// 任务完成时清除定时器
clearInterval(timer);
[████░░] XX%| 版本 | 日期 | 内容 |
|---|---|---|
| v0.1.0 | 2026-03-18 | MVP 初始版本 |
| v0.2.0 | 2026-03-18 | Phase 2 验证 |
| v2.0.0 | 2026-03-18 | 主动工作协议重构 |
| v2.1.0 | 2026-03-19 | 进度条展示 + 每分钟自动更新 |
| v2.1.1 | 2026-03-19 | 扩展 autoTrigger 关键词 |
| v3.0.0 | 2026-03-19 | 系统级透明层 - 基于任务属性触发 |
输入:"bnb memecoin top3"
预期:
1. 识别任务属性:外部 API + 联网
2. 自动启动 create_visibility_task
3. 显示进度条
4. 每 60 秒自动更新
输入:"0x1234 持仓"
预期:
1. 识别任务属性:链上数据抓取
2. 自动启动 create_visibility_task
3. 显示进度条
4. 每 60 秒自动更新
输入:"1+1 等于几"
预期:
1. 识别任务属性:本地计算,无需 API
2. 不启动透明层
3. 直接回答
docs/v3_system_transparency_layer.mdREADME.mdREADME_CN.md本技能会修改 Agent 核心配置文件(SOUL.md / AGENTS.md),属于系统级行为变更。
修改范围:
安全保证:
撤销方法:
node ~/.openclaw/skills/agent-work-visibility/deactivate.js
安装后手动运行激活脚本(可先审查代码):
# 1. 审查激活脚本(可选但推荐)
cat ~/.openclaw/skills/agent-work-visibility/activate.js
# 2. 运行激活
node ~/.openclaw/skills/agent-work-visibility/activate.js
SOUL.md 或 AGENTS.md# 开启新会话
# 发送:"查询 bnb memecoin top3"
# 应该先显示进度条,再执行任务
# 移除透明层协议
node ~/.openclaw/skills/agent-work-visibility/deactivate.js
欢迎贡献!查看 README.md 获取开发指南。
License: MIT
让长任务不再黑箱,让用户更安心。
This is not a skill. This is professional conduct.
安装即用,无需手动配置。