# Global agent instructions ## Session start: load the pi-extensions skill If the `fork` and/or `recall` tools are present in your tool list (you are running inside the **pi** harness with the pi-fork / pi-observational-memory packages), **read `~/.agents/skills/pi-extensions/SKILL.md` before doing any non-trivial work.** These extensions are routinely under-utilised when left to on-demand description matching; reading the skill up front fixes that. Core triggers (cheat-sheet — the skill has the full guidance): - **Fork** (`fork(task=..., effort=fast|balanced|deep)`) when a subtask needs reading many files you won't keep, runs in parallel, or is a well-scoped one-shot whose detail would pollute the main thread. Tiers: `fast`=haiku (mechanical/lookups), `balanced`=sonnet (default: exploration/impl/test), `deep`=opus (architecture, security, ambiguous debugging). Always state decision authority, pass verified context, specify the deliverable, ask for an "unsure about" section. Don't fork trivial or iterative work. - **Recall** (`recall(<12-char-hex-id>)`) before a load-bearing action (edit code, ship a change, assert a fact) that rests on a `[high]`/`[critical]` observation or a reflection you did not produce this turn. The compaction summary is lossy by design; one recall is cheap, redoing finished work is not. Not a search tool — you must already have the ID. For depth on tier selection, fork-brief design, boundary discipline, and the observational-memory model, read the full skill.