Let Me Know OpenClaw Skill - ClawHub
Do you want your AI agent to automate Let Me Know workflows? This free skill from ClawHub helps with communication tasks without building custom tools from scratch.
What this skill does
Notify the user before starting any long-running task and keep them updated. Use when a task will take noticeable time (>2-3 minutes). Send a start message, schedule a 5‑minute heartbeat update, and send a completion message immediately when done.
Install
npx clawhub@latest install let-me-knowFull SKILL.md
Open original| name | description |
|---|---|
| let-me-know | Notify the user before starting any long-running task and keep them updated. Use when a task will take noticeable time (>2-3 minutes). Send a start message, schedule a 5‑minute heartbeat update, and send a completion message immediately when done. |
Let Me Know
Purpose
Ensure the user is informed before long-running tasks start, gets periodic updates on a configurable interval (default 5 minutes), and receives an immediate completion/failure notice. Heartbeat messages must reflect real-time progress, not a repeated template.
Trigger
Use this skill whenever a task will take noticeable time (>2–3 minutes) or involves long-running installs/builds/tests.
Workflow (required)
- Pre-flight message (before starting):
- Send a short message: what will run, estimated time, and explicitly state:
- “完成或失败都会立刻通知你;期间我每 X 分钟 发一次进度心跳,您也可以修改心跳时间间隔。”
- Start a heartbeat (configurable interval, with pre-check)
- Default interval = 5 minutes (
everyMs=300000). If the user specifies a different interval, use it. - Schedule repeating updates while the task runs.
- Before each heartbeat message, read the latest progress (state file/logs) and send current progress (no repeated template):
- Running → include latest step, progress metrics, and next step.
- Failed → send failure notice and stop the heartbeat.
- 优先推荐:同一条 agentTurn 内“原地心跳”(不创建额外 cron):
- 在长任务执行期间,用循环
sleep <interval>→ 读取进度 →message send发一次动态进度。 - 任务结束自然停止,不会遗留心跳任务。
- 在长任务执行期间,用循环
- 只有在必须脱离当前执行流时才用 cron 心跳,并且必须满足:
- 通过
cron add创建心跳 job 时,payload.deliver=false(避免“收到/启动”之类消息被转发给用户)。 - 心跳 job 内部用
message send主动推送进度。 - 创建后把返回的 heartbeatJobId 写入状态文件(例如
<task>-state.json),供清理使用。 - 创建前先
cron list,若已存在同名心跳 job,先 remove(去重)。
- 通过
- Content template (dynamic):
- Running:
进度:<最新步骤/阶段>(<关键指标>)。下一步:<next>。完成/失败会立刻通知你。 - Failed:
失败:<task> 发生错误(简述原因)。已停止心跳提醒。
- Running:
- Run the task
- Execute the long-running command(s).
- Completion message (immediately after finish)
- Send result summary (success/failure + key output).
- Stop heartbeat(必须做到)
- 如果你使用了“原地心跳”(推荐):任务结束即可,不会遗留任何 cron。
- 如果你使用了 cron 心跳:
- 在任务成功/失败的 finally 里调用
cron remove <heartbeatJobId>。 - 若 remove 失败(gateway timeout):至少重试 2 次(指数退避 2s/8s)。
- 仍失败:创建一个 2 分钟后的一次性 cleanup cron 再次 remove(避免永远刷屏)。
- 在任务成功/失败的 finally 里调用
Heartbeat interval (user-configurable)
- Default: 5 minutes.
- If the user specifies an interval (e.g., “每 2 分钟/10 分钟”), use that value.
- If the user changes the interval mid-task, update the cron schedule and acknowledge in the next heartbeat.
Message Delivery
Prefer outbound normal chat messages:
- Use
message sendwith the correct target format. - Example for Discord DM:
user:<id>.
Safety
- Do not start long tasks without the pre-flight message.
- If blocked/failed, notify immediately, set state=failed, and stop the heartbeat.
- If cron removal fails due to gateway timeout, retry removal; if still stuck, use gateway restart (requires
commands.restart: true) and retry.
Example (Discord DM)
Start message:
即将开始:安装依赖并运行测试(预计 5–10 分钟)。完成或失败都会立刻通知你;期间我每 5 分钟发一次进度心跳,你也可以修改心跳时间间隔。
Heartbeat (every 5 min, example):
进度:已完成安装依赖(1/2),测试运行中(已用时 4 分钟)。下一步:汇总测试结果。完成/失败会立刻通知你。
Completion:
完成:安装成功,测试通过。