diff --git a/01-slash-commands/README.md b/01-slash-commands/README.md index bce6cba..7cec7e9 100644 --- a/01-slash-commands/README.md +++ b/01-slash-commands/README.md @@ -66,6 +66,7 @@ Built-in commands are shortcuts for common actions. There are **60+ built-in com | `/memory` | Edit `CLAUDE.md`, toggle auto-memory | | `/mobile` | QR code for mobile app (aliases: `/ios`, `/android`) | | `/model [model]` | Select model with left/right arrows for effort. Since v2.1.153, the choice is **saved as the default** for new sessions (matching the IDE); press `s` after selecting to apply it to the current session only. (The keybinding `modelPicker:setAsDefault` was renamed to `modelPicker:thisSessionOnly`; the old `d` action is now `s`.) As of v2.1.219, the picker shows the merged Opus row as "Opus (1M context)". | +| `/output-style [name]` | List and switch output styles (re-added in v2.1.269 after being removed in v2.1.91). With no argument it lists the styles and marks the current one. Works in headless and Remote Control sessions; the selection is saved to `.claude/settings.local.json` | | `/passes` | Share free week of Claude Code | | `/permissions` | View/update permissions (alias: `/allowed-tools`) | | `/plan [description]` | Enter plan mode | @@ -126,7 +127,6 @@ These skills ship with Claude Code and are invoked like slash commands: | Command | Status | |---------|--------| -| `/output-style` | Removed in v2.1.91 (deprecated v2.1.73) — use `/config` → Output style, or the `outputStyle` setting | | `/pr-comments` | Removed in v2.1.91 — ask Claude directly to view PR comments | | `/vim` | Removed in v2.1.92 — use /config → Editor mode | | `/undo` | No longer listed in the official commands reference as of v2.1.245 (it was added as an alias for `/rewind` in v2.1.108) — use `/rewind` or press `Esc` twice | @@ -135,7 +135,7 @@ These skills ship with Claude Code and are invoked like slash commands: - `/fork` and `/subtask` swapped roles in **v2.1.212**. `/fork` now copies the conversation into a new independent background session; the forked-subagent behavior it used to have moved to the new `/subtask` command. History: `/fork` was an alias for `/branch` from v2.1.77 to v2.1.161; from v2.1.161 to v2.1.211 it started a forked subagent (what `/subtask` does now). When agent view is turned off, `/subtask` is unavailable and `/fork` keeps the forked-subagent behavior - `/resume` (no arguments) opens a picker of past sessions — including ones removed from the visible list — and resumes the chosen one as a background session (v2.1.212) -- `/output-style` deprecated (v2.1.73) and removed (v2.1.91) — output styles are still available via `/config` → Output style or the `outputStyle` setting; the built-ins are Default, Proactive, Explanatory, Learning, and Concise (added in v2.1.237) +- `/output-style` was deprecated (v2.1.73) and removed (v2.1.91), then **re-added in v2.1.269** — it is a live command again in v2.1.278, and works in headless and Remote Control sessions. Output styles also remain available via `/config` → Output style or the `outputStyle` setting; the built-ins are Default, Proactive, Explanatory, Learning, and Concise (added in v2.1.237) - `/review` became a full alias of `/code-review` — same targets, effort levels, and flags (v2.1.223). History: it first moved onto the `/code-review medium` engine in v2.1.186 while remaining PR-only - `/effort` command added; `max` level available on Opus 4.6+ (originally Opus 4.6-only) - `/voice` command added for push-to-talk voice dictation @@ -650,9 +650,10 @@ If both exist with the same name, the **skill takes precedence**. Remove one or --- -**Last Updated**: September 6, 2026 -**Claude Code Version**: 2.1.263 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: +- https://code.claude.com/docs/en/output-styles - https://code.claude.com/docs/en/skills - https://code.claude.com/docs/en/slash-commands - https://code.claude.com/docs/en/interactive-mode diff --git a/02-memory/README.md b/02-memory/README.md index ad1087b..74d16c3 100644 --- a/02-memory/README.md +++ b/02-memory/README.md @@ -219,7 +219,7 @@ Claude Code has two complementary memory systems, both loaded at the start of ev |-------|----------|---------| | Managed policy | macOS: `/Library/Application Support/ClaudeCode/CLAUDE.md`
Linux/WSL: `/etc/claude-code/CLAUDE.md`
Windows: `C:\Program Files\ClaudeCode\CLAUDE.md` | Organization-wide instructions managed by IT/DevOps. Cannot be excluded by individual settings. | | User instructions | `~/.claude/CLAUDE.md` | Personal preferences for all projects | -| Project instructions | `./CLAUDE.md` or `./.claude/CLAUDE.md` | Team-shared instructions, version controlled | +| Project instructions | `./CLAUDE.md` or `./.claude/CLAUDE.md` | Team-shared instructions, version controlled. Since v2.1.277, `./AGENTS.md` loads at this same tier instead, when no `CLAUDE.md` or `CLAUDE.local.md` exists at or above the working directory — controlled by **Project instructions** in `/config` | | Local instructions | `./CLAUDE.local.md` | Personal project-specific preferences; add to `.gitignore` | Within the directory tree, Claude Code walks up from your working directory: `foo/CLAUDE.md` loads before `foo/bar/CLAUDE.md` if you launch from `foo/bar/`, so instructions closer to where you launched are read *last* — not "highest priority" in an override sense, just most recent in context. Within each directory, `CLAUDE.local.md` is appended after `CLAUDE.md`. CLAUDE.md and CLAUDE.local.md files in subdirectories *under* your working directory load on demand, when Claude reads files in those subdirectories, rather than at launch. @@ -253,6 +253,57 @@ graph TD All files shown are concatenated into one context, not selected by override — later boxes appear later in context, not "instead of" earlier ones. +## AGENTS.md + +`AGENTS.md` is a cross-tool project-context file: the same *category* of document as CLAUDE.md, written so that several coding agents can share one set of project conventions. Since **v2.1.277**, Claude Code reads it directly as project instructions rather than requiring you to import it. + +**Default behavior** (`claude-md-or-agents-md`): + +| What the project contains | What Claude Code reads | +|---------------------------|------------------------| +| `AGENTS.md`, no `CLAUDE.md` | `AGENTS.md` | +| Both `AGENTS.md` and `CLAUDE.md` | `CLAUDE.md` only | +| A `CLAUDE.md` that imports `AGENTS.md` with `@AGENTS.md` | `CLAUDE.md`, with the import expanded | + +**Which files suppress AGENTS.md.** Claude Code checks the working directory and every directory above it for `CLAUDE.md`, `.claude/CLAUDE.md`, or `CLAUDE.local.md`. If it finds any of them, `AGENTS.md` is not read. `~/.claude/CLAUDE.md`, managed CLAUDE.md, and `.claude/rules/` do **not** count for this check and keep loading alongside whichever project file wins. + +> **Warning**: adding a `CLAUDE.local.md` silently stops `AGENTS.md` being read. If your project instructions seem to vanish after you create a local override, this is usually why. + +**What gets read.** Every `AGENTS.md` and `.claude/AGENTS.md` at and above the working directory loads at session start; files in subdirectories load on demand, when Claude reads files there. `@path` imports expand the same way they do in CLAUDE.md, and `claudeMdExcludes` applies. + +**What is never read**: `AGENTS.local.md`, `AGENTS.override.md`, and anything under `.agents/`. + +**Choosing the behavior.** The **Project instructions** setting takes four values: + +| Value | Effect | +|-------|--------| +| `claude-md-or-agents-md` | Default — `AGENTS.md` only when no CLAUDE.md file is found | +| `claude-md-and-agents-md` | Both are read when both exist | +| `claude-md` | Only CLAUDE.md files; `AGENTS.md` is ignored | +| `managed-only` | Only managed policy instructions | + +Set it through `/config`, or in settings: + +```jsonc +{ + "pluginConfigs": { + "agents-md@builtin": { + "options": { + "instructionFiles": "claude-md-and-agents-md" + } + } + } +} +``` + +This key is honored in user and managed settings only — setting it in project or local settings has no effect. + +**Where direct reading is unavailable.** On versions before v2.1.277, on Bedrock/Vertex/Foundry, with telemetry disabled, during the first session after upgrading, under `disableAllHooks` or `allowManagedHooksOnly`, or with the built-in `agents-md` plugin disabled, Claude Code will not pick up `AGENTS.md` on its own. In those cases, import it from CLAUDE.md: + +```markdown +@AGENTS.md +``` + ## Excluding CLAUDE.md Files with `claudeMdExcludes` In large monorepos, some CLAUDE.md files may be irrelevant to your current work. The `claudeMdExcludes` setting lets you skip specific CLAUDE.md files so they are not loaded into context: @@ -1193,8 +1244,9 @@ Auto Memory is a separate mechanism (`~/.claude/projects//memory/`), no --- -**Last Updated**: August 25, 2026 -**Claude Code Version**: 2.1.245 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/memory +- https://code.claude.com/docs/en/memory#agents-md **Compatible Models**: Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.8, Claude Haiku 4.5 diff --git a/03-skills/claude-md/SKILL.md b/03-skills/claude-md/SKILL.md index 449aab2..b44c052 100644 --- a/03-skills/claude-md/SKILL.md +++ b/03-skills/claude-md/SKILL.md @@ -193,7 +193,7 @@ Before finalizing, verify: If the user requests AGENTS.md creation/update: -**Claude Code does not read AGENTS.md directly.** To make it take effect, import it from CLAUDE.md with `@AGENTS.md`, or symlink `CLAUDE.md` to it. This is the single most common misunderstanding about the file. +**Since v2.1.277, Claude Code reads `AGENTS.md` directly as project instructions** — but only when the working directory and every directory above it contain no `CLAUDE.md`, `.claude/CLAUDE.md`, or `CLAUDE.local.md`. `~/.claude/CLAUDE.md`, managed CLAUDE.md, and `.claude/rules/` do not count for that check and keep loading alongside. Which files are read is controlled by **Project instructions** in `/config`: `claude-md-or-agents-md` (default), `claude-md-and-agents-md`, `claude-md`, or `managed-only`. Where direct reading is unavailable — Bedrock/Vertex/Foundry, telemetry disabled, the first session after upgrading, or `disableAllHooks`/`allowManagedHooksOnly` — fall back to importing it from CLAUDE.md with `@AGENTS.md`, or symlinking `CLAUDE.md` to it. AGENTS.md is a cross-tool project-context file — the same *category* of document as CLAUDE.md, not an agent-definition format. It exists so several coding agents can share one set of project conventions: - Build, test, and lint commands @@ -217,8 +217,9 @@ Apply similar principles: --- -**Last Updated**: August 4, 2026 -**Claude Code Version**: 2.1.220 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/skills +- https://code.claude.com/docs/en/memory#agents-md **Compatible Models**: Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.8, Claude Haiku 4.5 diff --git a/04-subagents/README.md b/04-subagents/README.md index 9251c24..4389a23 100644 --- a/04-subagents/README.md +++ b/04-subagents/README.md @@ -144,6 +144,7 @@ to solving problems. | `initialPrompt` | No | Auto-submitted first turn when the subagent runs as the main agent | | `color` | No | Display color for the subagent in the task list and transcript. Accepts `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, or `cyan` | | `experimental` | No | Experimental settings block (v2.1.248+). `experimental.cacheTtl` sets the cache TTL for this subagent — `"5m"` or `"1h"` | +| `omitClaudeMd` | No | Set to `true` to launch the subagent without the user, project, and local CLAUDE.md files (v2.1.271+). Managed policy files still load, except for managed subagents. Ignored when the agent runs as the main session agent via `--agent` or the `agent` setting. Also accepted in `--agents` JSON | #### Subagent Model Environment Variables @@ -1331,8 +1332,8 @@ See the OpenTelemetry section in [Advanced Features → Telemetry](../09-advance --- -**Last Updated**: September 6, 2026 -**Claude Code Version**: 2.1.263 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/sub-agents - https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md diff --git a/06-hooks/README.md b/06-hooks/README.md index 6a56551..787143f 100644 --- a/06-hooks/README.md +++ b/06-hooks/README.md @@ -285,10 +285,10 @@ Claude Code supports **33 hook events**: > **`TaskCreated` and `TaskCompleted` need the todo tools enabled (v2.1.233).** These two > events fire from the todo/task-tracking tools (`TaskCreate`/`Get`/`Update`/`List`, -> `TodoWrite`), which are **no longer available on Opus 4.8, Sonnet 5, Fable 5, Mythos 5, -> and newer models**. On those models the hooks are still valid configuration but simply -> never fire — you get no output and no error. Set `CLAUDE_CODE_ENABLE_TODO_TOOLS=1` to -> bring the tools, and therefore the events, back. +> `TodoWrite`), which are **available by default only on Claude 3.x models, Opus 4 through +> 4.7, Sonnet 4 through 4.6, and Haiku 4.5**. On other models the hooks are still valid +> configuration but simply never fire — you get no output and no error. Set +> `CLAUDE_CODE_ENABLE_TODO_TOOLS=1` to bring the tools, and therefore the events, back. > **PostToolUse duration (v2.1.119):** `PostToolUse` and `PostToolUseFailure` hook inputs now include `duration_ms` — see the [PostToolUse](#posttooluse) section for details. @@ -1205,7 +1205,7 @@ if __name__ == "__main__": ### Example 7: Seed Auto-Mode Permissions (One-Time Setup Script) -A one-time setup script that seeds `~/.claude/settings.json` with ~67 safe permission rules equivalent to Claude Code's auto-mode baseline — without any hook, without remembering future choices. Run it once; safe to re-run (skips rules already present). +A one-time setup script that seeds `~/.claude/settings.json` with safe permission rules equivalent to Claude Code's auto-mode baseline — 37 by default, up to 63 with every category flag enabled — without any hook, without remembering future choices. Run it once; safe to re-run (skips rules already present). **File:** `09-advanced-features/setup-auto-mode-permissions.py` @@ -1221,12 +1221,13 @@ python3 09-advanced-features/setup-auto-mode-permissions.py | Category | Examples | |----------|---------| -| Built-in tools | `Read(*)`, `Edit(*)`, `Write(*)`, `Glob(*)`, `Grep(*)`, `Agent(*)`, `WebSearch(*)` | +| Built-in tools | `Read(*)`, `Grep(*)`, `Agent(*)`, `WebSearch(*)` | +| Optional edits (--include-edits) | `Edit(*)` | | Git read | `Bash(git status:*)`, `Bash(git log:*)`, `Bash(git diff:*)` | | Git write (local) | `Bash(git add:*)`, `Bash(git commit:*)`, `Bash(git checkout:*)` | -| Package managers | `Bash(npm install:*)`, `Bash(pip install:*)`, `Bash(cargo build:*)` | +| Package managers | `Bash(npm ci:*)`, `Bash(npm install:*)`, `Bash(pip install:*)`, `Bash(pip3 install:*)` | | Build & test | `Bash(make:*)`, `Bash(pytest:*)`, `Bash(go test:*)` | -| Common shell | `Bash(ls:*)`, `Bash(cat:*)`, `Bash(find:*)`, `Bash(cp:*)`, `Bash(mv:*)` | +| Common shell | `Bash(ls:*)`, `Bash(cat:*)`, `Bash(find:*)` | | GitHub CLI | `Bash(gh pr view:*)`, `Bash(gh pr create:*)`, `Bash(gh issue list:*)` | **What is intentionally excluded** (never added by this script): @@ -1626,10 +1627,12 @@ Edit `~/.claude/settings.json` or `.claude/settings.json` with the hook configur --- -**Last Updated**: September 2, 2026 -**Claude Code Version**: 2.1.257 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/hooks - https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md - https://code.claude.com/docs/en/sub-agents +- https://code.claude.com/docs/en/permissions +- https://code.claude.com/docs/en/tools-reference#task-tool-availability **Compatible Models**: Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.8, Claude Haiku 4.5 diff --git a/07-plugins/README.md b/07-plugins/README.md index e228d27..ac5a859 100644 --- a/07-plugins/README.md +++ b/07-plugins/README.md @@ -844,6 +844,40 @@ projected ctx: +1,420 tokens per turn · +9,800 tokens per /review invocation LSP servers were added to the details pane in v2.1.142. See also the marketplace browse pane's projected context cost (v2.1.143) covered in [Plugin Marketplace](#plugin-marketplace). +### `claude plugin eval` (v2.1.269+) + +`claude plugin eval` runs a plugin's eval suite and reports scored, reproducible results, so you can tell whether a change to a skill or agent actually improved it. Results come back as JSON plus an HTML report. + +```bash +claude plugin eval # Run the plugin's eval suite +claude plugin eval --help # Full option list +``` + +### Machine-readable output with `--json` (v2.1.268+) + +`--json` is accepted on `install`, `uninstall`, `update`, `enable`, and `disable`, which makes plugin management scriptable in CI. Each row of `claude plugin list --json` also carries `errorDetails` and `noteDetails`, so a failing plugin explains itself without a second command. + +```bash +claude plugin install my-plugin@my-marketplace --json +claude plugin list --json +``` + +### Accepting an exact command with `--accept-command` (v2.1.271+) + +`--accept-command ` on `install` and `update` accepts exactly the command a previous `--json` run displayed, in place of a blanket `-y`. + +```bash +claude plugin install my-plugin@my-marketplace --accept-command +``` + +### Installing from a marketplace you haven't added (v2.1.275+) + +In a session, `/plugin install --marketplace ` names the marketplace inline and offers to add it before installing, so discovering and adding a marketplace is no longer a separate step. This is the in-session slash-command form, not a `claude plugin` CLI flag. + +```bash +/plugin install code-reviewer --marketplace anthropics/claude-code-plugins +``` + ## Installation Methods ### From Marketplace @@ -1269,8 +1303,8 @@ The following Claude Code features work together with plugins: --- -**Last Updated**: September 6, 2026 -**Claude Code Version**: 2.1.263 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/plugins - https://code.claude.com/docs/en/plugins-reference diff --git a/08-checkpoints/README.md b/08-checkpoints/README.md index d7a012f..58f4b4d 100644 --- a/08-checkpoints/README.md +++ b/08-checkpoints/README.md @@ -246,6 +246,7 @@ Checkpoints have the following limitations: - **Bash command changes NOT tracked** - Operations like `rm`, `mv`, `cp` on the filesystem are not captured in checkpoints - **External changes NOT tracked** - Changes made outside Claude Code (in your editor, terminal, etc.) are not captured - **Not a replacement for version control** - Use git for permanent, auditable changes to your codebase +- **Subagent edits NOT restored** - Files edited by a subagent are untracked, so `/rewind` leaves them as they are; the exception is a foreground `context: fork` skill, whose edits are restored like the main session's > **v2.1.216 update**: `/rewind` no longer restores or deletes files through symlinks or hard links at tracked paths. If a tracked path resolves through a symlink or hard link, rewind skips it rather than following the link, and it reports how many paths it skipped for this reason. @@ -336,8 +337,8 @@ Remember: checkpoints are not a replacement for git. Use checkpoints for rapid e --- -**Last Updated**: August 25, 2026 -**Claude Code Version**: 2.1.245 +**Last Updated**: September 19, 2026 +**Claude Code Version**: 2.1.278 **Sources**: - https://code.claude.com/docs/en/checkpointing - https://code.claude.com/docs/en/settings diff --git a/09-advanced-features/README.md b/09-advanced-features/README.md index aad6329..9012865 100644 --- a/09-advanced-features/README.md +++ b/09-advanced-features/README.md @@ -385,7 +385,7 @@ Auto mode is available only when your account meets all of these requirements: - **Organization**: on Team and Enterprise, auto mode is available by default. Administrators can turn it off for the organization by setting `permissions.disableAutoMode` to `"disable"` in managed settings. - **Model**: on the Anthropic API and Claude Platform on AWS — Claude Opus 4.6 or later (Opus 5 included), Sonnet 4.6 or later, or Fable 5. On Amazon Bedrock, Google Cloud's Agent Platform (Vertex AI), Microsoft Foundry, and signed-in Claude apps gateway sessions — only Claude Sonnet 5, Opus 4.7 or later (Opus 5 included), and Fable 5. Older models — Sonnet 4.5, Opus 4.5, Haiku, and claude-3 models — are not supported on any provider. - **Provider**: available by default on the Anthropic API, Claude Platform on AWS, Amazon Bedrock, Google Cloud's Agent Platform (Vertex AI), Microsoft Foundry, and signed-in Claude apps gateway sessions. In v2.1.158 through v2.1.206, auto mode was off on all of these except the Anthropic API and Claude Platform on AWS until you set `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 removed the requirement. The variable is still accepted for compatibility and has no effect from v2.1.207 onward. -- **Classifier**: runs on Claude Sonnet 4.6 (adds extra token cost) +- **Classifier**: adds extra token cost, except on Enterprise plans and Claude API accounts, where v2.1.278+ runs the check server-side at no charge ### Enabling Auto Mode @@ -559,15 +559,14 @@ The script adds rules across these categories: | Category | Examples | |----------|---------| -| Core read-only tools | `Read(*)`, `Glob(*)`, `Grep(*)`, `Agent(*)`, `WebSearch(*)`, `WebFetch(*)` | +| Core read-only tools | `Read(*)`, `Grep(*)`, `Agent(*)`, `WebSearch(*)`, `WebFetch(*)` | | Local inspection | `Bash(git status:*)`, `Bash(git log:*)`, `Bash(git diff:*)`, `Bash(cat:*)` | -| Optional edits | `Edit(*)`, `Write(*)`, `NotebookEdit(*)` | +| Optional edits | `Edit(*)` | | Optional test/build | `Bash(pytest:*)`, `Bash(python3 -m pytest:*)`, `Bash(cargo test:*)` | -| Optional git writes | `Bash(git add:*)`, `Bash(git commit:*)`, `Bash(git stash:*)` | -| Git (local write) | `Bash(git add:*)`, `Bash(git commit:*)`, `Bash(git checkout:*)` | -| Package managers | `Bash(npm install:*)`, `Bash(pip install:*)`, `Bash(cargo build:*)` | +| Optional git writes | `Bash(git add:*)`, `Bash(git commit:*)`, `Bash(git checkout:*)`, `Bash(git switch:*)`, `Bash(git stash:*)`, `Bash(git tag:*)` | +| Package managers | `Bash(npm ci:*)`, `Bash(npm install:*)`, `Bash(pip install:*)`, `Bash(pip3 install:*)` | | Build & test | `Bash(make:*)`, `Bash(pytest:*)`, `Bash(go test:*)` | -| Common shell | `Bash(ls:*)`, `Bash(cat:*)`, `Bash(find:*)`, `Bash(cp:*)`, `Bash(mv:*)` | +| Common shell | `Bash(ls:*)`, `Bash(cat:*)`, `Bash(find:*)` | | GitHub CLI | `Bash(gh pr view:*)`, `Bash(gh pr create:*)`, `Bash(gh issue list:*)` | Dangerous operations (`rm -rf`, `sudo`, force push, `DROP TABLE`, `terraform destroy`, etc.) are intentionally excluded. The script is idempotent — running it twice won't duplicate rules. @@ -702,6 +701,8 @@ Concurrency is not a background-task setting either — how many agents run at o Monitor attaches to any shell command that writes to stdout. Each stdout line from the command becomes a notification that wakes the session. Claude specifies the command; the harness streams output and delivers events as they fire. See the related [Background Tasks](#background-tasks) section for launching the underlying processes. +> **Deadlines (v2.1.271)**: every Monitor watch now carries a deadline — at most 30 minutes, or 10 minutes in single-prompt `-p` runs. When the deadline passes, Claude is notified so it can re-arm the watch. There is no longer a way to arm a watch that never times out. + ### Why It Matters Polling with `/loop` or `sleep` burns a full API round-trip every cycle, whether or not anything changed. Monitor stays silent until an event fires, consuming **zero tokens** while the command is quiet. When an event does occur, Claude reacts immediately — no delayed discovery waiting for the next poll tick. For anything that runs longer than a few minutes, this is both cheaper and faster than poll loops. @@ -739,7 +740,7 @@ done Dynamic workflows let Claude orchestrate tens to hundreds of background [subagents](../04-subagents/README.md) **deterministically** — fan-out, pipelines, and parallel stages encoded in a script rather than left to the model's improvisation. Where a single agent holds one context window, a workflow decomposes a task across many agents and recombines their results. -As of v2.1.219, dynamic workflows default to a **medium size guideline (aim for fewer than 15 agents)**. Pick another size — or unrestricted — via **Dynamic workflow size** in `/config`, or set the `workflowSizeGuideline` key in your settings file. The running-workflow status line shows the active size and points to `/config` for changing it. +As of v2.1.219, dynamic workflows default to a **medium size guideline (aim for fewer than 10 agents)** — or to **small** when you are signed in on a Pro plan, since v2.1.271. Pick another size — or unrestricted — via **Dynamic workflow size** in `/config`, or set the `workflowSizeGuideline` key in your settings file. The running-workflow status line shows the active size and points to `/config` for changing it. ### When to Use Them @@ -1292,6 +1293,7 @@ Claude Code supports keyboard shortcuts for efficiency. Here's the complete refe | `Option+T` / `Alt+T` | Toggle extended thinking | | `Option+O` / `Alt+O` | Toggle fast mode (`/fast`) | | `Ctrl+X` `Ctrl+K` | Stop all background subagents | +| `Ctrl+Enter` (or `Ctrl+X` `Ctrl+S`) | Send now — interrupt the current turn and send every queued message at once. Sent and queued messages stay gray until the model receives them (v2.1.275) | | `Ctrl+S` | Stash the current prompt; press again to restore it | | `Ctrl+_` | Undo the last edit to the prompt input | | `:` | Type `:` at the start of a word to open emoji shortcode completion, e.g. `:heart:` (v2.1.217+) | @@ -1534,7 +1536,7 @@ For instructions about your project or codebase, use [CLAUDE.md](../02-memory/) ### Selecting a style -Run `/config` and choose **Output style**. The selection is saved to `.claude/settings.local.json`. To set it without the menu, edit the setting directly: +Run `/config` and choose **Output style**, or run `/output-style