CLAUDE CODE MARKETPLACES

clawctl

Coordination layer for OpenClaw agent fleets (tasks, messaging, activity feed, dashboard).

npx skills add https://github.com/lludlow/clawctl --skill clawctl
SKILL.md

Setup

clawctl init                        # create the database
export CLAW_AGENT=your-name         # set identity (falls back to $USER with warning)
export CLAW_DB=~/.openclaw/clawctl.db  # optional, this is the default

Operational Rhythm

Follow this pattern every session:

  1. Check inclawctl checkin — register presence, see unread count
  2. Read messagesclawctl inbox --unread — read ALL messages before doing anything else
    • If a message is a proposal or approval request, relay it to the coordinator (don't just return HEARTBEAT_OK)
    • If a message asks you to do something, acknowledge it with clawctl msg
  3. Review your workclawctl list --mine — see what's assigned to you
  4. Pick up workclawctl next — find highest-priority actionable task
  5. Read task contextclawctl show <id> — read the full detail, message thread, and blockers BEFORE starting
  6. Claim and startclawctl claim <id> then clawctl start <id>
  7. Coordinateclawctl msg <agent> "update" --task <id> — send updates during work
  8. Submit for reviewclawctl review <id> — this notifies the creator automatically
  9. Move onclawctl next — pick up the next task

Do NOT call clawctl done directly on tasks that need approval. Use review to submit, then wait for the coordinator to approve or reject.

Review Workflow

This is the approval gate pattern. Use it for any work that needs sign-off.

Agent does work → clawctl review <id>     (creator auto-notified)
                                    ↓
Coordinator reviews → clawctl show <id>   (reads thread + result)
                                    ↓
           clawctl approve <id> -m "LGTM"     → task moves to done
           clawctl reject <id> -r "Needs X"   → task moves to pending (agent re-claims)

As the worker: After review, stop working on that task. Check inbox for the approve/reject decision. If rejected, read the reason with clawctl show <id>, fix the issue, and review again.

As the coordinator: When you see a task in review (via list, board, or inbox notification), use show <id> to inspect the work and message thread, then approve or reject with a reason.

Recovering From Failures

Don't resort to raw SQL. These commands handle recovery:

ProblemFix
Task stuck in done/cancelled, needs redoclawctl reset <id> (or --force if not owner)
Task blocked, blocker resolvedclawctl reset <id> to unblock
Need to find a task or messageclawctl search "keyword"
Don't know what a status symbol meansclawctl legend
Need full context on a taskclawctl show <id> (detail + messages + blockers)

Decision Tree

SituationCommand
New taskclawctl add "Subject" -d "Details"
New task for specific agentclawctl add "Subject" --for <agent> -d "Details"
Find workclawctl next then clawctl claim <id>
Understand a taskclawctl show <id> — read detail, thread, blockers
Blockedclawctl block <id> --by <blocker-id> and clawctl msg <owner> "blocked on #<id>"
Work done, needs approvalclawctl review <id> — creator auto-notified
Work done, no approval neededclawctl done <id> -m "Result"
Approve submitted workclawctl approve <id> or clawctl approve <id> -m "note"
Reject submitted workclawctl reject <id> -r "reason"
Redo a completed/cancelled taskclawctl reset <id> (back to pending)
Hand off to another agentclawctl msg <agent> "Ready for you" --task <id> --type handoff
Find somethingclawctl search "query" — searches tasks and messages
Catch upclawctl feed --last 20 or clawctl summary
Link artifactsAdd --meta '{"note":"path/to/file"}' to mutating commands

Task Statuses

pending → claimed → in_progress → review → done (approved)
                  ↘ blocked ↗           ↘ pending (rejected)
                                         ↘ cancelled

Use clawctl legend to see all status symbols and their meanings.

list excludes done/cancelled by default. Blocked tasks show their blocker IDs inline. Use --all for history (newest first).

Commands

Tasks

CommandDescription
add SUBJECTCreate task. -d desc, -p 0|1|2 priority, --for AGENT assign, --parent ID
listActive tasks. --mine, --status STATUS, --owner AGENT, --all
nextHighest-priority actionable task for current agent
show IDFull detail: status, description, message thread, blockers
search QUERYSearch tasks and messages by keyword
claim IDClaim task. --force overrides ownership, --meta JSON
start IDBegin work (in_progress). --meta JSON
done IDComplete. -m note, --force, --meta JSON
review IDSubmit for review (auto-notifies creator). --meta JSON
approve IDApprove a reviewed task (moves to done). -m note, --meta JSON
reject IDReject a reviewed task (back to pending). -r reason, --meta JSON
reset IDMove done/cancelled/blocked back to pending. --force, --meta JSON
cancel IDCancel task. --meta JSON
block ID --by OTHERMark blocked. --meta JSON
boardKanban board grouped by status
legendStatus symbol reference

Messages

CommandDescription
msg AGENT BODYSend message. --task ID, --type TYPE (comment, status, handoff, question, answer, alert)
broadcast BODYAlert all agents
inboxRead messages. --unread for unread only

Fleet

CommandDescription
checkinHeartbeat — update presence, report unread count
register NAMERegister agent. --role TEXT
fleetAll agents with status and current task
whoamiIdentity, role, and DB path

Monitoring

CommandDescription
feedActivity log. --last N, --agent NAME, --meta
summaryFleet overview with counts and recent events
dashboardWeb UI. --port INT, --stop, --verbose

Critical Rules for Agents

  1. Always read inbox first. Don't skip messages — they may contain approvals, rejections, or handoff requests.
  2. Always show <id> before working. Read the full context: description, thread, blockers. Don't start blind.
  3. Use review, not done, when approval is needed. The coordinator decides when work is complete.
  4. Relay important messages. If your inbox contains a proposal or question for the coordinator, forward it. Don't swallow it.
  5. Use reset for retries. If a task failed or needs to be redone, reset it. Don't use raw SQL.
  6. Use search to find things. Don't grep the database. clawctl search "keyword" checks tasks and messages.
  7. Send updates during long work. clawctl msg <coordinator> "progress update" --task <id> keeps everyone informed.
Installs0
GitHub Stars1
LanguagePython
AddedJun 10, 2026
View on GitHub