docs: sync to Claude Code v2.1.278 (#183)

* docs: sync to Claude Code v2.1.278

Type: docs

Audit of the tutorial against Claude Code 2.1.278 (repo baseline was
2.1.263). Fixes claims the repo asserts that are now false; new-feature
coverage is English-only.

P0 - the repo stated the opposite of current behavior:
- AGENTS.md: the claude-md skill said Claude Code "does not read
  AGENTS.md directly" in all 5 languages. It has since v2.1.277, when no
  CLAUDE.md exists at or above the working directory.
- /output-style: listed as "Removed in v2.1.91" in 5 languages and in
  09-advanced-features. Re-added in v2.1.269; row moved out of the
  Deprecated Commands table.
- Permission rules: setup-auto-mode-permissions.py seeded Write(*),
  Glob(*) and NotebookEdit(*), which Claude Code accepts but never
  consults and warns about at startup. Removed; same fix in the
  config-examples.json profile and the 06/09 category tables.
- taskOutputMaxChars: documented as live. The TaskOutput tool was
  removed in v2.1.278 and the key is inert.

P1:
- Dynamic workflow "medium" guideline is fewer than 10 agents, not 15;
  the default is small on Pro plans since v2.1.271.
- Todo-tool availability restated as the official allowlist (Claude 3.x,
  Opus 4-4.7, Sonnet 4-4.6, Haiku 4.5) instead of a denylist; 23 sites
  across 5 languages.
- Memory hierarchy now notes the AGENTS.md fallback.
- Auto-mode classifier cost qualified: not charged on Enterprise plans
  and Claude API accounts since v2.1.278.

P3 (English only): full AGENTS.md section in 02-memory; omitClaudeMd
subagent field; plugin eval / --json / --accept-command / --marketplace;
maxEffortLevel, bashEditDiffEnabled, syncClaudeAi*, 4 env vars,
--system-prompt-snapshot, --plugin-dir folders; send-now key and Monitor
deadlines; checkpoints subagent-edit limitation.

Learning skills audited clean: 100 quiz questions and 100 Review
pointers all valid, 20 self-assessment options correctly mapped.

Cross-file anchors: 15 broken before, 15 after, 0 introduced.

* docs: address review — stale version stamps, /output-style re-add, permission tables
This commit is contained in:
Luong NGUYEN
2026-09-20 01:15:34 +02:00
committed by GitHub
parent 97bfb0685e
commit 8aeb5a72dc
49 changed files with 356 additions and 198 deletions
+13 -10
View File
@@ -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