Persistent task ledger for agent coordination. Plan multi-step work, checkpoint progress across session boundaries, and coordinate across multiple agents wit...
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install hzl或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install hzl⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/hzl/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: hzl description: Persistent task ledger for agent coordination. Plan multi-step work, checkpoint progress across session boundaries, and coordinate across multiple agents with project pool routing. metadata: { "openclaw": { "emoji": "🧾", "homepage": "https://github.com/tmchow/hzl", "requires": { "bins": ["hzl"] }, "install": [ { "id": "brew", "kind": "brew", "package": "hzl", "bins": ["hzl"], "label": "Install HZL (Homebrew)" }, { "id": "node", "kind": "node", "package": "hzl-cli", "bins": ["hzl"], "label": "Install HZL (npm)" } ] } } ---
HZL (https://hzl-tasks.com) is a local-first task ledger that agents use to:
This skill teaches an agent how to use the hzl CLI.
OpenClaw has no native task tracking. Unlike Claude Code (which has TodoWrite) or Codex (which has update_plan), OpenClaw relies on memory and markdown files for tracking work. HZL fills this gap.
Use HZL for:
Skip HZL for:
Rule of thumb: If you feel tempted to make a multi-step plan, or there is any chance you will not finish in this session, use HZL.
---
| Command | Effect | |---------|--------| | hzl init --force | DELETES ALL DATA. Prompts for confirmation. | | hzl init --force --yes | DELETES ALL DATA WITHOUT CONFIRMATION. | | hzl task prune ... --yes | PERMANENTLY DELETES old done/archived tasks and history. |
Never run these unless the user explicitly asks you to delete data. There is no undo.
---
--parent ). Max 1 level of nesting. Parent tasks are never returned by hzl task claim --next.---
Use one shared project. Requests and initiatives become parent tasks, not new projects.
hzl project list # Check first — only create if missing
hzl project create openclaw
Everything goes into openclaw. hzl task claim --next -P openclaw always works.
Use one project per agent role. Tasks assigned to a project (not a specific agent) can be claimed by any agent monitoring that pool. This is the correct pattern when a role may scale to multiple agents.
hzl project create research
hzl project create writing
hzl project create coding
hzl project create marketing
hzl project create coordination # for cross-agent work
Pool routing rule: assign tasks to a project without --agent. Any eligible agent claims with --next.
# Assigning work to the research pool (no --agent)
hzl task add "Research competitor pricing" -P research -s ready
# Kenji (or any researcher) claims it
hzl task claim --next -P research --agent kenji
Agent routing: when --agent is set at task creation, only that agent (or agents with no assignment) can claim it via --next. Tasks with no agent are available to everyone.
# Pre-route a task to a specific agent
hzl task add "Review Clara's PR" -P coding -s ready --agent kenji
# Kenji claims it (matches agent)
hzl task claim --next -P coding --agent kenji # ✓ returns it
# Ada tries — skipped because it's assigned to kenji
hzl task claim --next -P coding --agent ada # ✗ skips it
Use --agent on task creation when you specifically want one person. Omit it when any eligible agent in the pool should pick it up.
---
hzl workflow run start --agent <agent-id> --project <project> --json
--project is required — agents must scope to their assigned pool. Use --any-project to intentionally scan all projects (e.g. coordination agents).
This handles expired-lease recovery and new-task claiming in one command. If a task is returned, work on it. If nothing is returned, the queue is empty. Agent routing applies: tasks assigned to other agents are skipped.
hzl agent status # Who's active? What's running?
hzl task list -P <project> --available # What's ready?
hzl task stuck # Any expired leases?
hzl task stuck --stale # Also check for stale tasks (no checkpoints)
# If stuck tasks exist, read their state before claiming
hzl task show <stuck-id> --view standard --json
hzl task steal <stuck-id> --if-expired --agent <agent-id> --lease 30
hzl task show <stuck-id> --view standard --json | jq '.checkpoints[-1]'
# Otherwise claim next available
hzl task claim --next -P <project> --agent <agent-id>
---
hzl task add "Feature X" -P openclaw -s ready # Single-agent
hzl task add "Research topic Y" -P research -s ready # Pool-routed (multi-agent)
hzl task add "Subtask A" --parent <id> # Subtask
hzl task add "Subtask B" --parent <id> --depends-on <a-id> # With dependency
hzl task claim <id> # Claim specific task
hzl task claim --next -P <project> # Claim next available
hzl task checkpoint <id> "milestone X" # Checkpoint progress
hzl task complete <id> # Finish
hzl task set-status <id> ready # Make claimable
hzl task set-status <id> backlog # Move back to planning
hzl task block <id> --comment "reason" # Block with reason
hzl task unblock <id> # Unblock
Statuses: backlog → ready → in_progress → done (or blocked)
hzl task complete <subtask-id>
hzl task show <parent-id> --view summary --json # Any subtasks remaining?
hzl task complete <parent-id> # Complete parent if all done
---
# Hand off to another agent or pool — complete current, create follow-on atomically
hzl workflow run handoff \
--from <task-id> \
--title "<new task title>" \
--project <pool> # --agent if specific person; --project for pool
# Delegate a subtask — creates dependency edge by default
hzl workflow run delegate \
--from <task-id> \
--title "<delegated task>" \
--project <pool> \
--pause-parent # Block parent until delegated task is done
--agent and --project guardrail: at least one is required on handoff. Omitting --agent creates a pool-routed task; --project is then required to define which pool.
hzl task add "<delegated title>" -P <pool> -s ready --depends-on <parent-id>
hzl task checkpoint <parent-id> "Delegated X to <pool> pool. Waiting on <task-id>."
hzl task block <parent-id> --comment "Waiting for <delegated-task-id>"
---
...
安装 HZL 后,可以对 AI 说这些话来触发它
Help me get started with HZL
Explains what HZL does, walks through the setup, and runs a quick demo based on your current project
Use HZL to persistent task ledger for agent coordination
Invokes HZL with the right parameters and returns the result directly in the conversation
What can I do with HZL in my marketing & growth workflow?
Lists the top use cases for HZL, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/hzl/ 目录(个人级,所有项目可用),或 .claude/skills/hzl/(项目级)。重启 AI 客户端后,用 /hzl 主动调用,或让 AI 根据上下文自动发现并使用。
HZL 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
HZL 可免费安装使用。请查阅仓库了解许可证信息。
Persistent task ledger for agent coordination. Plan multi-step work, checkpoint progress across session boundaries, and coordinate across multiple agents wit...
HZL 属于「Marketing & Growth」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my marketing & growth tasks using HZL
Identifies repetitive steps in your workflow and sets up HZL to handle them automatically