Individual skill

LifeOSHooks

The LifeOS function-hook plugin: check it is armed, explain why a line or banner was or was not drawn, regenerate its types after a Claude Code update, sync pure-core copies, run its probes. USE WHEN function hooks, LifeOSHooks, the plugin, hook-drawn lines, banner missing, memory line missing, plugin types, /plugin-types, plugin validate, is the plugin loaded, hooks module. NOT FOR the command hooks under hooks/ (edit directly), the Pulse dashboard (Pulse), or Relay diagnostics (the relay skill).

LifeOS/install/skills/LifeOSHooks/SKILL.md

Read pinned source

Source commit b7efec97d8c3885feee285bee468c35602fb0606

What was checked

Matches the observed repository HEAD
Yes
Scanner rules are current
Yes
Repository scan complete
No
Skill scan complete
No
Observed behavior
Network or broad shell
Last checked
Nov 2, 2026

These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.

Install this skill

Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.

Standard SKILL.md format has not been attested at this commit. No installation command is available; inspect the source.

Repository context

Repository stars (not skill ratings)
19,761
Repository last updated
Nov 5, 2026
License
MIT

Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.

Files and excerpt

File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.

Browse files
Read excerpt

# LifeOSHooks

Diagnoses the LifeOS function-hook plugin, the in-process half of the hook system (one hooks module Claude Code's function-hook runtime loads once per interactive session; the command hooks under `hooks/` remain the out-of-process half): whether it is armed, why a line or banner did or did not draw, and keeping its types and pure-core copies current. State of record: `LIFEOS/FUNCTIONHOOKS/ISA.md` (maintainer-side; the ISA does not ship).

## Ideal State

- A status answer ("is the plugin loaded and working") says armed or not, on which build, and names its evidence: this session's stamp in `MEMORY/STATE/function-hooks/<session>.json` (the command hooks read it to go quiet on the lines the plugin draws), `hooks/lib/build.ts`, and for a headless check the probe's debug log. A verdict with no evidence fails.
- The check holds the plugin to its standing properties: armed in every interactive session on the declared build, and in a headless session (`-p`, the SDK, Relay) every hook a passthrough with nothing drawn.
- A "why did or didn't this draw" answer names the surface that owns the line (§ References) and the cause it found; a guess is labelled as one.
- After a Claude Code update, `.claude/types/claude-code.d.ts` was written by the running build, `hooks/lib/build.ts` names that build, and the typecheck and tests pass; the answer names the old and the new build.
- `claude plugin validate <plugin dir>` passes; its hooked-events list matches the ISA's closed criteria (`/ic` checks this).
- The pure-core copies under `hooks/lib/` equal their sources (`tests/parity.test.ts`; source tree only, not in the public release payload).

## Anti-criteria