The whole hunk
from line 1301, old and new numbered
/
lines
This page is larger than the 256 KiB this site keeps, so one side of the diff below stops where the stored text does.
from line 1301
13011301
13021302Fires when a `CLAUDE.md` or `.claude/rules/*.md` file is loaded into context. This event fires at session start for eagerly-loaded files and again later when files are lazily loaded, for example when Claude accesses a subdirectory that contains a nested `CLAUDE.md` or when conditional rules with `paths:` frontmatter match. The hook doesn't support blocking or decision control. It runs asynchronously for observability purposes.
13031303
1304This event doesn't fire when Claude [reads `AGENTS.md` directly](/docs/en/memory#agents-md) through the **Project instructions** setting. It does fire when a `CLAUDE.md` imports your `AGENTS.md`, with `load_reason` set to `include` as for any other imported file, and when `CLAUDE.md` is a symlink to it, as a normal `CLAUDE.md` load.
1305
13041306The matcher runs against `load_reason`. For example, use `"matcher": "session_start"` to fire only for files loaded at session start, or `"matcher": "path_glob_match|nested_traversal"` to fire only for lazy loads.
13051307
13061308#### InstructionsLoaded input
from line 2686
26842686| Field | Description |
26852687| :-------------- | :------------------------------------------------------------------------- |
26862688| `teammate_name` | Name of the teammate that is about to go idle |
2687| `team_name` | Deprecated. Session-derived team name; will be removed in a future release |
2688
2689#### TeammateIdle decision control
2690
2691TeammateIdle hooks support two ways to control teammate behavior:
2692
2693* **Exit code 2**: the teammate receives the stderr message as feedback and continues working instead of going idle.
2694* **JSON `{"continue": false, "stopReason": "..."}`**: stops the teammate entirely, matching `Stop` hook beh
2689| `team_name` | Deprecated. Session-derived team name; will be removed in a future rel