Claude Code Незадокументированные возможности: Хуки, Память, Классификатор YOLO и другое

Андре Фигейра изучил исходный код Claude Code (v2.1.87) и обнаружил десятки недокументированных опций конфигурации. Официальная документация охватывает только основы, но в самом пакете, который можно свободно просмотреть в node_modules, есть поля для хуков, памяти агента, правил автоматического режима и многое другое. Вот что можно настроить уже сейчас.
YOLO Classifier: автоподтверждение действий на простом английском
Внутренне называемый «YOLO Classifier» (yoloClassifier.ts), этот механизм позволяет описать вашу среду на простом английском, чтобы решить, когда Claude может автоматически подтверждать операции. В settings.json можно добавить описание вроде "это тестовый сервер, разрушительные операции допустимы", чтобы разрешать определённые действия без запроса.
Возвращаемые значения хуков, меняющие поведение на лету
Хуки получают JSON на stdin и могут возвращать событие-специфичный JSON на stdout. Вот ключевые поля возврата:
- PreToolUse:
updatedInput(переписывает ввод инструмента перед выполнением),permissionDecision(принудительное разрешение/запрет),permissionDecisionReason,additionalContext - SessionStart:
watchPaths(автоматическое отслеживание файлов, вызывающее события FileChanged),initialUserMessage(добавляет контент к первому сообщению пользователя),additionalContext - PostToolUse:
updatedMCPToolOutput,additionalContext - PermissionRequest:
decision(программное разрешение/запрет сupdatedInputилиupdatedPermissions)
Пример: хук PreToolUse, который добавляет --dry-run к каждой команде git push. В .claude/settings.json:
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{
"type": "command",
"command": "~/.claude/hooks/dry-run-pushes.sh"
}]
}]
}
}Скрипт ~/.claude/hooks/dry-run-pushes.sh:
#!/bin/bash INPUT=$(jq -r '.tool_input.command'Это переписывает команду до выполнения — недокументированное поле.
Контекст сессии и отслеживание файлов
Хуки SessionStart могут задавать watchPaths для отслеживания изменений в файлах вроде package.json, .env и tsconfig.json, вызывая события FileChanged. Они также могут внедрять initialUserMessage для добавления контекста, например, текущей ветки git и количества незакоммиченных изменений.
Пример скрипта, возвращающего пути отслеживания и начальное сообщение:
#!/bin/bash
BRANCH=$(git branch --show-current 2>/dev/null)
CHANGES=$(git status --porcelain 2>/dev/null | wc -l | tr -d ' ')
jq -n \
--arg branch "$BRANCH" \
--arg changes "$CHANGES" \
'{
"watchPaths": ["package.json", ".env", "tsconfig.json"],
"initialUserMessage": "Текущая ветка: \($branch), незакоммиченных изменений: \($changes)"
}'Постоянная память агента и правила авторежима
Память агента можно настроить на сохранение между сессиями с помощью полей в каталоге ~/.claude/agents/. Правила авторежима можно описать в файлах на простом английском, указывая Claude, когда автоматически подтверждать действия. Исходный код также намекает на «циклы самообучения», в которых Claude может улучшать свои собственные конфиги.
Расположение файлов
- Настройки:
~/.claude/settings.json(личные) или.claude/settings.json(проектные, доступные через git) - Навыки:
~/.claude/skills/<имя>/SKILL.md(личные) или.claude/skills/<имя>/SKILL.md(проектные) - Агенты:
~/.claude/agents/<имя>.md(личные) или.claude/agents/<имя>.md(проектные) - Скрипты хуков: обычно в
~/.claude/hooks/, должны быть исполняемыми (chmod +x)
Эти возможности полезны для разработчиков, желающих настроить Claude Code за пределами документированных API. Учтите, что эти функции могут меняться между версиями.
📖 Полный исходный код: HN AI Agents
👀 Смотрите также

Сервер MCP GodotIQ предоставляет ИИ-агентам пространственное понимание сцен Godot
GodotIQ — это MCP-сервер, который предоставляет агентам для кодирования истинное понимание 2D/3D-сцен, сигналов и зависимостей кода в Godot. В ходе теста он автономно создал игру в жанре twin-stick survivors за один час, используя ресурсы и подсказку.

Claude Desktop + Blender через MCP: Рабочий процесс реального времени в 3D замыкает цикл обратной связи
Открытый аддон для Blender запускает MCP-сервер внутри Blender, позволяя Claude Desktop проверять сцены, создавать объекты, рендерить изображения и читать результаты — замыкая цикл обратной связи, который обычно требует копирования и вставки скриптов.

От Replit до локалки: Как один разработчик использовал Claude для создания StillHere — AI-компаньона с API
Разработчик создал StillHere.ink — AI-чат-приложение для общения в стиле компаньона с использованием личных API-ключей, после перехода с Replit на локальную разработку с Claude. Приложение включает память, дневниковые сводки, RAG, переключение моделей и инструменты контроля затрат.

VectorClaw v1.0.0: MCP-сервер для управления роботом Anki Vector
VectorClaw v1.0.0 — это MCP-сервер, который позволяет OpenClaw управлять роботами Anki Vector с помощью 23 специальных инструментов для речи, движения, восприятия, сенсоров и функций дисплея.