diff --git a/docs/automation/hooks.md b/docs/automation/hooks.md index 68c7f42f243..e21caec4a6b 100644 --- a/docs/automation/hooks.md +++ b/docs/automation/hooks.md @@ -43,7 +43,7 @@ The hooks system allows you to: OpenClaw ships with four bundled hooks that are automatically discovered: -- **💾 session-memory**: Saves session context to your agent workspace (default `~/.openclaw/workspace/memory/`) when you issue `/new` +- **💾 session-memory**: Saves session context to your agent workspace (default `~/.openclaw/workspace/memory/`) when you issue `/new` or `/reset` - **📎 bootstrap-extra-files**: Injects additional workspace bootstrap files from configured glob/path patterns during `agent:bootstrap` - **📝 command-logger**: Logs all command events to `~/.openclaw/logs/commands.log` - **🚀 boot-md**: Runs `BOOT.md` when the gateway starts (requires internal hooks enabled) @@ -84,10 +84,11 @@ Hooks run inside the Gateway process. Treat bundled hooks, managed hooks, and `h Hooks are automatically discovered from these directories: -1. **Workspace hooks**: `/hooks/` (per-agent, disabled by default until explicitly enabled) -2. **Managed hooks**: `~/.openclaw/hooks/` (user-installed, shared across workspaces) -3. **Extra hook directories**: `hooks.internal.load.extraDirs` (operator-configured shared hook folders) -4. **Bundled hooks**: `/dist/hooks/bundled/` (shipped with OpenClaw) +1. **Bundled hooks**: `/dist/hooks/bundled/` (shipped with OpenClaw) +2. **Plugin hooks**: hooks bundled inside installed plugins (see [Plugin hooks](/plugins/architecture#provider-runtime-hooks)) +3. **Managed hooks**: `~/.openclaw/hooks/` (user-installed, shared across workspaces; can override bundled and plugin hooks) +4. **Extra hook directories**: `hooks.internal.load.extraDirs` (operator-configured shared hook folders; treated as managed) +5. **Workspace hooks**: `/hooks/` (per-agent, disabled by default until explicitly enabled; cannot override hooks from other sources) Workspace hooks can add new hook names for a repo, but they cannot override bundled, managed, or plugin-provided hooks with the same name. @@ -412,8 +413,8 @@ Planned event types: ### 1. Choose Location -- **Workspace hooks** (`/hooks/`): Per-agent, highest precedence -- **Managed hooks** (`~/.openclaw/hooks/`): Shared across workspaces +- **Workspace hooks** (`/hooks/`): Per-agent; can add new hook names but cannot override bundled, managed, or plugin hooks with the same name +- **Managed hooks** (`~/.openclaw/hooks/`): Shared across workspaces; can override bundled and plugin hooks ### 2. Create Directory Structure @@ -600,9 +601,9 @@ openclaw hooks disable command-logger ### session-memory -Saves session context to memory when you issue `/new`. +Saves session context to memory when you issue `/new` or `/reset`. -**Events**: `command:new` +**Events**: `command:new`, `command:reset` **Requirements**: `workspace.dir` must be configured @@ -611,7 +612,7 @@ Saves session context to memory when you issue `/new`. **What it does**: 1. Uses the pre-reset session entry to locate the correct transcript -2. Extracts the last 15 lines of conversation +2. Extracts the last 15 user/assistant messages from the conversation (configurable) 3. Uses LLM to generate a descriptive filename slug 4. Saves session metadata to a dated memory file @@ -674,8 +675,8 @@ Injects additional bootstrap files (for example monorepo-local `AGENTS.md` / `TO - Paths are resolved relative to workspace. - Files must stay inside workspace (realpath-checked). -- Only recognized bootstrap basenames are loaded. -- Subagent allowlist is preserved (`AGENTS.md` and `TOOLS.md` only). +- Only recognized bootstrap basenames are loaded (`AGENTS.md`, `SOUL.md`, `TOOLS.md`, `IDENTITY.md`, `USER.md`, `HEARTBEAT.md`, `BOOTSTRAP.md`, `MEMORY.md`, `memory.md`). +- For subagent/cron sessions a narrower allowlist applies (`AGENTS.md`, `TOOLS.md`, `SOUL.md`, `IDENTITY.md`, `USER.md`). **Enable**: diff --git a/docs/cli/hooks.md b/docs/cli/hooks.md index f54aabae018..6f0879c494f 100644 --- a/docs/cli/hooks.md +++ b/docs/cli/hooks.md @@ -38,7 +38,7 @@ Ready: 🚀 boot-md ✓ - Run BOOT.md on gateway startup 📎 bootstrap-extra-files ✓ - Inject extra workspace bootstrap files during agent bootstrap 📝 command-logger ✓ - Log all command events to a centralized audit file - 💾 session-memory ✓ - Save session context to memory when /new command is issued + 💾 session-memory ✓ - Save session context to memory when /new or /reset command is issued ``` **Example (verbose):** @@ -84,14 +84,14 @@ openclaw hooks info session-memory ``` 💾 session-memory ✓ Ready -Save session context to memory when /new command is issued +Save session context to memory when /new or /reset command is issued Details: Source: openclaw-bundled Path: /path/to/openclaw/hooks/bundled/session-memory/HOOK.md Handler: /path/to/openclaw/hooks/bundled/session-memory/handler.ts Homepage: https://docs.openclaw.ai/automation/hooks#session-memory - Events: command:new + Events: command:new, command:reset Requirements: Config: ✓ workspace.dir @@ -263,7 +263,7 @@ global `--yes` to bypass prompts in CI/non-interactive runs. ### session-memory -Saves session context to memory when you issue `/new`. +Saves session context to memory when you issue `/new` or `/reset`. **Enable:**