Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器clawhub未标认证来源可访问clear审计提醒

heartbeat-cron心跳计划

Agent Skill

heartbeat-cron 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

4,824

周安装

199

GitHub Stars

公开资料未说明

下载量

1,576
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:heartbeat-cron(心跳计划)
来源仓库:https://github.com/wyblhl/heartbeat-cron
安装命令:
openclaw skills install heartbeat-cron
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install heartbeat-cron

简介

创建并优化 murmur CLI 守护进程的 HEARTBEAT.md 配置文件。

  • 支持 cron 或间隔调度,实现定时运行 Claude 提示脚本。
  • 便于自动化任务编排与周期性工作流管理。
  • 安装命令:openclaw skills install heartbeat-cron。
  • 需确保 cron 表达式语法正确,避免冲突或资源占用过高。

SKILL.md

name
heartbeat-cron
description
>
Triggers
heartbeat, murmur, recurring task, scheduled action, cron, monitor,
metadata
author
t0dorakis
version
0.4.4

Heartbeat Creator

Create well-crafted HEARTBEAT.md files for murmur through a structured interview, test run, and refinement loop.

Context

Murmur is a minimal scheduler. It reads a HEARTBEAT.md file, sends its contents to Claude on a schedule, and classifies the response:

  • HEARTBEAT_OK — nothing to report (silent)
  • ATTENTION: ... — needs human attention (logged + surfaced in TUI)

Murmur cannot notify the user. It only runs the prompt and logs the result. If the user wants notifications (Slack, Telegram, push), the HEARTBEAT.md itself must include the delivery step. The heartbeat is the entire pipeline: gather data → decide → act → deliver.

Each heartbeat is stateless. Every run is a fresh Claude session with no memory of previous runs. For workflows that need to track changes over time (price deltas, last-checked timestamps), use files in the workspace as simple state stores (e.g., last-price.txt, tracking-state.json).

Sleep/wake behavior. When the machine sleeps, the daemon freezes — no ticks fire. On wake, overdue jobs run immediately but multiple missed runs collapse into a single catch-up execution (not one per missed interval). This is correct for heartbeat-style tasks: you want to check current state, not replay missed checks. If the user needs reliable scheduling, advise them to disable sleep on their machine (see FAQ in README).

HEARTBEAT.md Format

Every heartbeat is a markdown file with an optional YAML frontmatter block. Frontmatter values take precedence over config.json.

---
interval: 1h # or cron: "0 9 * * 1-5" (pick one)
# tz: America/New_York  # timezone for cron (default: local system tz)
# timeout: 15m          # max run time (default: 5m)
# agent: claude-code    # "claude-code" (default), "codex", or "pi"
# model: opus           # model hint passed to the agent
# maxTurns: 50          # cap agent iterations per run (default: 99)
# name: My Heartbeat
# description: What this heartbeat does
# session: my-session   # pi-specific: reuse a named browser session
# sandbox: workspace-write  # codex-specific: "read-only", "workspace-write", or "danger-full-access"
# networkAccess: false  # codex-specific: allow outbound network in workspace-write sandbox
# permissions: skip      # skip permission checks (only "skip" supported in frontmatter)
---
Your prompt here...

Notes:

  • interval or cron — use one, not both. Intervals: 15m, 1h, 6h, 1d. Cron: standard 5-field expressions.
  • permissions: "skip" is the only permissions value supported in frontmatter. For deny lists, use config.json.
  • murmur init generates a template with these fields pre-filled.

Workflow

0. Preflight

Before starting, verify murmur is installed:

which murmur
  • Found → continue to interview.
  • Not found → install via Homebrew:
  brew install t0dorakis/murmur/murmur

If Homebrew isn't available, install from source:

  git clone https://github.com/t0dorakis/murmur.git
  cd murmur && bun install && bun run build
  # Then add ./murmur to PATH

You can also scaffold a workspace immediately with flags:

murmur init {path} --interval 30m
murmur init {path} --cron "0 9 * * 1-5" --timeout 15m
murmur init {path} --template github-digest   # Use a starter template

Multiple heartbeats per repo — Use --name to create heartbeats in a heartbeats/ directory:

murmur init {path} --name issue-worker --interval 30m
murmur init {path} --name deploy-monitor --cron "0 9 * * 1-5"

This creates heartbeats/<name>/HEARTBEAT.md inside the workspace. All heartbeats share the repo root as CWD. A root HEARTBEAT.md still works alongside named heartbeats.

1. Interview

Conduct a focused interview using AskUserQuestion. Go one or two questions at a time, building on previous answers.

Round 1 — The goal:

Ask what they want automated. If they're unsure or exploring, read references/examples.md for inspiration across categories: code/repos, research/intelligence, ops/infrastructure, personal/creative. Suggest examples that match their context.

Round 1b — Tool discovery:

Before diving into details, check whether the user's goal needs tools beyond what's already installed. Run a web search to find relevant CLIs, MCP servers, or agent skills that could help.

Browser tools — Many valuable heartbeats need to interact with real websites (checking prices, monitoring pages, logging into portals). Claude's built-in WebFetch works for simple static pages, but sites with JavaScript rendering, login flows, or anti-bot measures need a real browser:

  • agent-browser — Headless browser CLI for AI agents. Works with Claude Code out of the box.
  • pi-browser — Browser extension for pi. Use with agent: pi.

Other tools — Search the web for: "{user's goal}" CLI tool or "{user's goal}" MCP server or check skills.sh for community skills. Examples:

  • Calendar access → Google Calendar MCP or pi-google-calendar extension
  • Slack/Discord delivery → webhook skills on skills.sh
  • GitHub operations → ensure gh CLI is installed

Tell the user what you found and recommend installing anything that would make the heartbeat more capable.

Round 2 — The details:

Based on their goal, dig into specifics:

  • What tools/APIs/commands are needed? (gh, curl, specific URLs, API keys)
  • What's the workspace directory?
  • How often should it run? Two options:

- Interval — fixed frequency: 15m, 1h, 6h, 1d - Cron — precise schedule: 0 9 * * 1-5 (weekdays at 9am), */30 * * * * (every 30 min) - If they pick cron, ask about timezone (defaults to local system tz)

  • Does the heartbeat need more than the default 5-minute timeout? (e.g., timeout: 15m for long-running tasks)
  • Any model preference? (default uses whatever the agent defaults to; can set model: opus, model: sonnet, etc.)
  • Agent choice: claude-code (default) runs Claude Code CLI; codex runs OpenAI Codex CLI (uses sandbox policies); pi runs the pi agent (has browser extensions)

Round 3 — Delivery:

This is critical. Ask how they want results delivered. Options:

  • Write to a file in the workspace (simplest — good default)
  • Post to Slack/Discord via webhook
  • Send via Telegram bot API
  • Create a GitHub issue/comment
  • Push notification via ntfy.sh
  • Just use ATTENTION response (user checks TUI/logs)

Remind them: murmur is just a scheduler — it won't forward anything. If they want to be notified, the heartbeat itself must do the notifying.

Round 3b — Credentials (if needed):

If delivery or data sources need tokens/webhooks:

  • Env vars from .env in the workspace are available (Bun auto-loads them)
  • Sensitive values should go in .env, referenced as $VAR_NAME in the heartbeat

2. Draft

Write the HEARTBEAT.md file. Rules:

  • Include a YAML frontmatter block with at least the schedule (interval or cron). Add timeout, model, or other fields as needed based on the interview.
  • Don't include instructions about HEARTBEAT_OK / ATTENTION — the runtime injects those automatically
  • Be explicit about every step — Claude has no memory between heartbeats
  • For change-detection workflows (price drops, new items, status changes), include steps to read/write state files in the workspace (e.g., last-price.txt, tracking-state.json)
  • Include exact commands with real values (no {placeholder} left behind)
  • Include the delivery step if the user wants notifications
  • Keep it focused — one purpose per heartbeat
  • Use $VAR_NAME for secrets

Place the file at {workspace}/HEARTBEAT.md for single-heartbeat workspaces, or {workspace}/heartbeats/{name}/HEARTBEAT.md for multi-heartbeat repos.

3. Test

Run one heartbeat to verify:

murmur beat {workspace_path}
# Or for a named heartbeat:
murmur beat {workspace_path} --name {name}

Show the user the outcome and output.

4. Evaluate

Ask the user: "Did that do what you expected?"

  • No → refine the HEARTBEAT.md based on feedback, test again. Repeat until satisfied.
  • Yes → proceed to register.

5. Register

Register the workspace with murmur so the daemon knows about it:

  1. Run murmur init {absolute_workspace_path} — this auto-registers the workspace in ~/.murmur/config.json (with { path, lastRun: null }). If HEARTBEAT.md already exists, it skips creating it but still registers.
  2. Verify registration: murmur workspaces list
  3. Schedule, timeout, model, and other settings live in the HEARTBEAT.md frontmatter — no need to edit config.json for these.
  4. Only edit ~/.murmur/config.json directly if you need a permissions.deny list (frontmatter only supports permissions: skip).
  5. Tell the user to start the daemon:

- murmur start — foreground with TUI (press q to quit, d to detach) - murmur start --detach — background mode (reattach with murmur watch)

Rules

  • Never leave {placeholder} values in the final HEARTBEAT.md
  • Always test with murmur beat before declaring done
  • Always ask the user to evaluate the test result
  • If a heartbeat needs tools the user doesn't have installed, tell them what to install
  • One heartbeat = one purpose. Multiple automations in the same repo = use heartbeats/ directory with --name.
  • Schedule suggestions: 15m for uptime, 1h for active dev work, 6h1d for digests/research. Use cron when the user wants specific times (e.g., 0 9 * * 1-5 for weekday mornings).

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

76.72%
按下载量换算1,209

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills