Skip to content
Productivity
Skill

/world

The human doesn't know what to work on, or wants to see everything at once. They need the big picture — what's active, what's stale, what needs attention. Renders a live world view grouped by ALIVE domain, then routes to open, tidy, find, history, or map.

From plugin
alive
13217 skills

Claude Code

$ npx -y skills add alivecontext/alive --skill world --agent claude-code

SKILL.md

world.SKILL.md
name: world
description: "The human doesn't know what to work on, or wants to see everything at once. They need the big picture — what's active, what's stale, what needs attention. Renders a live world view grouped by ALIVE domain, then routes to open, tidy, find, history, or map."
user-invocable: true

World

This is Mission Control. When the human opens their world, it should feel like booting an operating system — everything they care about, at a glance, with clear paths to action.

NOT a database dump. NOT a flat list. A living view of their world, grouped by what matters, showing relationships, surfacing what needs attention.

---

Load Sequence

1. **Read `.alive/_index.yaml`** — one read, everything the dashboard needs: every walnut's type, goal, phase, rhythm, updated, people, links, tags, bundles, and parent relationships. The SessionStart hook injects `<WORLD_INDEX_BRIEF>` (names, paths, phases, people) which is enough to orient, but the dashboard's goal lines, rhythm warnings and bundle counts come from the full index file. Older plugin versions injected the full index as `<WORLD_INDEX>`; if that's in context, use it and skip the read. 2. **If no index exists at all** — generate it first (`python3 "$ALIVE_PLUGIN_ROOT/scripts/generate-index.py" "$WORLD_ROOT"`), then read the output. Fall back to manual scanning only on first-time setup before the index infrastructure exists. 3. **Freshness check** — read the `generated:` timestamp from the index. Display it in the dashboard header. If older than 10 minutes, show a warning. If older than 1 hour, suggest regeneration. This makes index staleness visible instead of invisible. 4. Build the tree from the index — parent/child relationships from `parent:` field 5. **Lightweight fresh checks** — one Bash call each, no subagents, no Explore agents:

  • **Unsaved sessions with stash:** already in the index as `unsaved_with_stash:`. If non-zero, surface in the Attention section. No bash loop needed.
  • **Unrouted inputs:** take the world root from the `World:` line the SessionStart hook injected, then list `<world root>/03_Inbox/*` with the **Glob** tool (absolute path). Never use a relative `03_Inbox/` path; it fails when the working folder isn't the world root. Skip names starting with `.` and `Icon`. Just the filenames, no deep reads. Only if no `World:` line is in context, resolve the root with the doctor JSON surface (it handles paths with spaces, which raw config-file reads can mangle):
     alive doctor --check=world-root --json

and read `world_root` from the JSON, then Glob as above.

  • **API context:** only if context sources are listed in the session start injection (already in your context from the hook — do NOT re-read preferences.yaml).

6. Compute attention items from fresh checks + index staleness signals 7. **Inbox triage (background)** — if `03_Inbox/` has items, dispatch a background agent to triage them. Don't wait for it — render the dashboard immediately, the triage results arrive while the human reads.

Inbox Triage Agent

Dispatch with `run_in_background: true` when inbox has 1+ items. The agent:

1. Reads the subagent brief from the plugin templates (for ALIVE context) 2. Lists all files in `03_Inbox/` with `ls -la` 3. For each item, determines:

  • **Type:** transcript, email, document, screenshot, video, extraction directory, financial, unknown
  • **Likely destination walnut:** match against the world index (injected in the agent prompt) by keywords, people names, project names
  • **Priority:** urgent (contains decisions/deadlines), normal, low (reference material)
  • **Age:** how old is the file

4. Returns a structured triage report

When the background agent completes, surface the results:

> **🐿️ inbox triaged (8 items)**
> Urgent
>  march-expenses.csv              → finance (transactions, needs review)
>  error-log-april-2.txt           → my-startup (build error from deploy)
>
> Route
>  team-dinner-recap.mp4           → my-startup (event footage)
>  fathom-extraction/              → runs via /alive:mine-for-context
>  otter-extraction/               → runs via /alive:mine-for-context
>
> Auto-route (low priority)
>  gmail/                          → capture via sync script
>  slack/                          → capture via sync script
>
> ▸ Route all? Or review one at a time?
> 1. Route all suggested
> 2. Review each
> 3. Skip for now

The triage agent gets the world index in its prompt so it knows every walnut, person, and active bundle. It matches by name, keywords, and file type patterns. It does NOT move files — it suggests. The human confirms.

**DO NOT read preferences.yaml** — it's already injected at session start. **DO NOT read individual walnut files** (key.md, now.json, log.md) — the index has everything. **DO NOT read .alive/_squirrels/*.yaml files** — recent sessions are in the index under `recent_sessions:` and unsaved stash count is in `unsaved_with_stash:`. **DO NOT spawn Explore agents or subagents** for the dashboard — use the index and the one bash check above. The entire dashboard should render from the injected brief plus 1 index-file read plus 1 fast bash call (inputs listing).

Checking files without permission prompts

Every existence check in this skill and in `setup.md` (the world-root pointer at `~/.config/alive/world-root`, `world-seed.md` in the current folder, `.alive/`, the domain folders, `03_Inbox/`) uses the **Read** tool for a single file and the **Glob** tool for a folder listing, with absolute paths (expand `~` to the home folder). A missing file is a normal "not found" result: treat it as "does not exist" and carry on. Do not probe with shell commands such as `cat ... 2>/dev/null; echo "---EXIT:$?---"`, `ls ... || true` or `test -f ...`; Claude Code flags those for approval and a new person has to click through them. Use Bash only for the scripted steps that need it (scaffolding, validation helpers, index ge

Read more
@alivecontext
Ships withalive

Personal Context Manager for Claude Code. Your life in walnuts.

Stars on GitHub

Momentum

stars in total
132
Star history of alivecontext/alive on GitHub, a chart by star-history.com

Other skills on alive.

build-extensions

build-extensions

Create new skills, rules, and hooks for your world. Checks plugin compatibility, writes to the human's space (not plugin cache),…

@alivecontext@alivecontextInstall Skill
bundle

bundle

Create, share, and graduate bundles — the unit of focused work within a walnut. Manages the full bundle lifecycle from creation…

@alivecontext@alivecontextInstall Skill
capture-context

capture-context

Use when external content arrives in the session — emails, transcripts, screenshots, documents, files, or in-session research…

@alivecontext@alivecontextInstall Skill
create-walnut

create-walnut

Something new is emerging. A venture, an experiment, a person entering the orbit, a life area getting serious. It needs its own…

@alivecontext@alivecontextInstall Skill
demo

demo

Generate a believable, lived-in ALIVE world from a free-text persona description (custom path) or a deterministic sandbox preset.…

@alivecontext@alivecontextInstall Skill
feedback

feedback

Report a bug, request a feature, or send general feedback to the ALIVE team. Collects safe system metadata, shows a preview, and…

@alivecontext@alivecontextInstall Skill

More skills from other plugins.

i-have-adhd

i-have-adhd

Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…

@ayghri@ayghriInstall Skill
ab-test-analysis

ab-test-analysis

Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop…

@phuryn@phurynInstall Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

Questions about world.

Which coding agents can use world?
world installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.