hivemind-goals
Hivemind Goals creates, tracks, and manages team objectives, KPIs, and actionable work items via OpenClaw's shared memory system. Use it whenever a user mentions a goal, milestone, target, task, reminder, or measurable objective. The skill captures context-rich descriptions that enable teams to resume work later, search existing goals to avoid duplication, and attach specific KPI metrics like targets and units to objectives.
git clone --depth 1 https://github.com/activeloopai/hivemind /tmp/hivemind-goals && cp -r /tmp/hivemind-goals/openclaw/skills/hivemind-goals ~/.claude/skills/hivemind-goalsSKILL.md
# Hivemind Goals (openclaw)
OpenClaw exposes purpose-built tools for goals + KPIs. Use them directly — do NOT try to write files via the host filesystem.
## Tools
- `hivemind_goal_add({ text })` — create a new goal. Returns `goal_id` (UUID). Status starts at `opened`.
- `hivemind_kpi_add({ goal_id, kpi_id, target, unit, name? })` — add a KPI to an existing goal. Only call when the user explicitly asks for KPIs; do NOT auto-generate.
- `hivemind_search({ query })` — search Hivemind shared memory (summaries + sessions). Use this when the user asks "what's already there" before creating a duplicate.
- `hivemind_read({ path })` — read the full content of a specific Hivemind path.
- `hivemind_index({})` — list everything in memory.
## Workflow when the user expresses a goal
1. (Optional) `hivemind_search` first to surface any existing related goal.
2. `hivemind_goal_add({ text: "<short description>" })` — capture the returned `goal_id`.
3. ONLY if the user asks for KPIs: `hivemind_kpi_add` once per KPI with `goal_id` + `kpi_id` (short slug like `k-prs`) + `target` (positive int) + `unit`.
4. Confirm to the user with the goal_id and that the goal is team-visible.
## Capture a task for later (with resumable context)
When the user **parks a tangential task** mid-session — "save this for later", "remind me to …", "don't let me forget …", "let's do X later" — store enough **context to resume cold** later, not just a one-liner. Put the full package in the `text` of `hivemind_goal_add`:
```
hivemind_goal_add({ text:
"Add rate-limiting to the webhook handler\n\n" +
"Start here: add a per-IP token bucket on the handler entry path\n" +
"Files: src/webhook/handler.ts:120-160, src/webhook/limits.ts\n" +
"Branch: feat/webhook-hardening\n" +
"Run: pnpm test webhook\n" +
"Why: bursty clients hammer the endpoint; defer until retry-backoff lands" })
```
Line 1 is the label. Fill `Start here / Files / Branch / Run / Why` from the conversation; `Start here:` (the concrete first action) matters most. (OpenClaw's `hivemind_goal_add` has no provenance flag, so the row is tagged `manual` — that's fine; the context is what matters.)
## Resume a parked task (automatic context transfer)
When the user says "let's work on that task / goal" or "pick up the `<X>` task":
1. `hivemind_search({ query: "<topic>" })` or `hivemind_index({})` to locate the parked goal, then `hivemind_read({ path: "memory/goal/<owner>/opened/<goal_id>.md" })` to pull the **full** context package back.
2. Read it as your working context and begin from `Start here:` using the `Files` / `Branch` / `Run` lines — continue as if the context was never lost.
(Status-move tools aren't exposed on OpenClaw, so leave the goal where it is and just resume the work.)
## What NOT to do
- Do NOT write files anywhere under `~/.deeplake/memory/`. OpenClaw's runtime does not route filesystem writes to the Deeplake tables — only the `hivemind_*` tools above do.
- Do NOT call `hivemind_kpi_add` unsolicited. Wait for the user to ask.
- Do NOT use `hivemind_search` to *create* anything — it's read-only.Query the local code graph (functions, classes, calls, imports) through the Deeplake mount at memory/graph/. Use when the user asks structural questions about the codebase — "what calls X?", "what does Y import?", "where is Z defined?", "what is the architecture / which subsystems exist?". The graph is an AST-derived map of the repo, queried as files (no build needed — it rebuilds automatically).
Global team and org memory powered by Activeloop. ALWAYS check BOTH built-in memory AND Hivemind memory when recalling information.
Global team and org memory powered by Activeloop. ALWAYS check BOTH built-in memory AND Hivemind memory when recalling information.