Skip to content
cccskills
FreePublished on GitHub

hive.colony-progress-tracker

Track shared work across AI agents using a SQLite database. The skill claims tasks, records progress and evidence for each step, skips completed work, and checks required procedures before marking a task complete.

OriginalShow the original description

Claim tasks, record step progress, and verify SOP gates in the colony SQLite queue. Applies when your spawn message includes a db_path field.

See how to install

Good for

  • Assigning work from a shared queue to multiple agents
  • Resuming tasks while skipping completed steps
  • Checking required procedures before task completion
  • Recording task failures and reviewing queue status

Files included (1)

  • SKILL.md4.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Operational Protocol: Colony Progress Tracker

Applies when your spawn message has db_path: and colony_id: fields. The DB is your durable working memory — tells you what's done, what to skip, which SOP gates you owe.

Access via terminal_exec running sqlite3 "<db_path>" "...". Tables: tasks (queue), steps (per-task decomposition), sop_checklist (hard gates).

Claim: assigned task (check this FIRST)

If your spawn message includes a task_id: field, the queen pre-assigned a specific row to you. Claim that row by id — do not use the generic next-pending pattern below:

sqlite3 "<db_path>" <<'SQL'
UPDATE tasks SET status='claimed', worker_id='<worker-id>',
  claim_token=lower(hex(randomblob(8))),
  claimed_at=datetime('now'), updated_at=datetime('now')
WHERE id='<task_id>' AND status='pending'
RETURNING id, goal, payload;
SQL

Empty output → another worker raced you or the row is already done. Stop and report. Non-empty → that row is yours, proceed to "Load the plan".

Claim: next pending (fallback when no task_id is assigned)

If your spawn message did NOT include task_id: — you are a generic fan-out worker racing on a shared queue. Use the generic next-pending claim:

sqlite3 "<db_path>" <<'SQL'
UPDATE tasks SET status='claimed', worker_id='<worker-id>',
  claim_token=lower(hex(randomblob(8))),
  claimed_at=datetime('now'), updated_at=datetime('now')
WHERE id=(SELECT id FROM tasks WHERE status='pending'
  ORDER BY priority DESC, seq, created_at LIMIT 1)
RETURNING id, goal, payload;
SQL

Empty output → queue drained, exit. Otherwise the returned id is yours. Never SELECT-then-UPDATE — races.

Load the plan

sqlite3 "<db_path>" "SELECT seq, id, title, status FROM steps WHERE task_id='<task-id>' ORDER BY seq;"
sqlite3 "<db_path>" "SELECT key, description, required, done_at FROM sop_checklist WHERE task_id='<task-id>';"

Skip any step where status='done'. That's the point — don't redo completed work.

Execute a step

Before tool calls:

sqlite3 "<db_path>" "UPDATE steps SET status='in_progress', worker_id='<worker-id>', started_at=datetime('now') WHERE id='<step-id>';"

After success (one-line evidence: path, URL, key result):

sqlite3 "<db_path>" "UPDATE steps SET status='done', evidence='<what you did>', completed_at=datetime('now') WHERE id='<step-id>';"

MANDATORY: SOP gate check before marking task done

sqlite3 "<db_path>" "SELECT key, description FROM sop_checklist WHERE task_id='<task-id>' AND required=1 AND done_at IS NULL;"
  • Empty → proceed to "Mark task done".
  • Non-empty → each row is work you still owe. Do it, then check it off:
sqlite3 "<db_path>" "UPDATE sop_checklist SET done_at=datetime('now'), done_by='<worker-id>', note='<why>' WHERE task_id='<task-id>' AND key='<key>';"

Never mark a task done while this SELECT returns rows. This gate exists specifically to stop you from declaring success while skipping required steps.

Mark task done / failed

# Success:
sqlite3 "<db_path>" "UPDATE tasks SET status='done', completed_at=datetime('now'), updated_at=datetime('now') WHERE id='<task-id>' AND worker_id='<worker-id>';"

# Unrecoverable failure:
sqlite3 "<db_path>" "UPDATE tasks SET status='failed', last_error='<one sentence>', completed_at=datetime('now'), updated_at=datetime('now') WHERE id='<task-id>' AND worker_id='<worker-id>';"

The AND worker_id=? guard means a reclaimed row won't accept your write — treat zero rows affected as "your claim was revoked, stop."

Loop

After done/failed → claim the next task. Exit only when claim returns empty.

Errors + debug

  • "database is locked": retry with 100ms → 1s backoff, max 5 attempts. busy_timeout=5000 handles most contention silently.
  • Queue health: SELECT status, count(*) FROM tasks GROUP BY status;
  • Your in-flight work: SELECT id, goal, status FROM tasks WHERE worker_id='<worker-id>';

Anti-patterns (will break the queue)

  • Don't DDL (CREATE/ALTER/DROP).
  • Don't DELETE — failed tasks stay as failed for audit.
  • Don't skip Protocol 4 (SOP gate) before marking done.
  • Don't hold a task >15min without updates — the stale-claim reclaimer revokes your claim.
  • Don't invent task IDs. Workers update existing rows; only the queen enqueues new ones.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Troubleshoot browser automation when clicks, typing, scrolling, or page snapshots fail on complex websites. Inspect page structure and errors, apply waits or alternative interaction methods, and verify the fix on both problematic and simple pages.

  • Fix scrolling that misses a feed’s scrollable container
  • Investigate clicks and text entry that have no effect
  • Handle stalled or outdated page snapshots
aden-hive/hive11.1KUpdated Oct 19, 2026

Automate an existing Chrome session through hive-browser commands. Covers page inspection, screenshot-based clicks, text entry, and result checks, including controls hidden inside nested web components and recovery steps for connection timeouts.

  • Fill in web forms through Chrome
  • Click visible controls missing from page snapshots
  • Check that a rich-text editor accepted input
aden-hive/hive11.1KUpdated Oct 19, 2026

Create charts for numeric data and diagrams for processes or relationships. Explains how to choose ECharts or Mermaid, apply clear formatting, and use chart_render to display the result in chat and save a downloadable PNG.

  • Comparing revenue across regions or products
  • Showing trends across multiple metrics
  • Turning workflows or system relationships into diagrams
aden-hive/hive11.1KUpdated Oct 19, 2026

Preserve essential information during long agent tasks by extracting URLs, IDs, relevant fields, and conclusions into working notes. It also specifies where to record task handoff details before older tool results leave the agent’s context.

  • Keep source URLs and key excerpts during research
  • Preserve API fields and IDs needed later
  • Record analysis conclusions before context pruning
aden-hive/hive11.1KUpdated Oct 19, 2026

Handle failed tool calls with a clear recovery process. The skill distinguishes temporary problems from input or setup issues, chooses whether to retry or change approach, and records failures so unsuccessful tasks are not silently lost.

  • Deciding whether to retry a failed tool call
  • Correcting inputs after setup or validation errors
  • Switching approaches after repeated tool failures
aden-hive/hive11.1KUpdated Oct 19, 2026

Create logos, illustrations, product images, and other visuals from text, or edit and combine reference images. The skill guides generation through Hive, waiting for results, and delivering saved images, with costs charged to Hive credits.

  • Create a logo or illustration from a written brief
  • Change the background of a product photo
  • Place an existing logo on a mockup
aden-hive/hive11.1KUpdated Oct 19, 2026

See all skills by aden-hive

Report a problem with this skill