AI-агенти для коду · Claude Code

Що Claude Code може робити без дозволу і як це закрити

Claude Code питає, перш ніж запустити команду чи змінити файл, якщо налаштування не кажуть інакше. Ці налаштування лежать у кількох файлах, і найсуворіше не завжди перемагає. Ось де дивитись.

~/.claude/settings.json −ризиковано+виправлено
 {   "permissions": {−    "defaultMode": "bypassPermissions",−    "allow": ["Bash(*)"]+    "defaultMode": "default",+    "disableBypassPermissionsMode": "disable",+    "allow": ["Bash(npm test)", "Bash(git status)"]   } }

Де Claude Code тримає налаштування

Від найсильнішого до найслабшого. Політика організації переважає все, що нижче.

РівеньФайлЩо там
Політика організації/Library/Application Support/ClaudeCode/managed-settings.json (macOS)/etc/claude-code/managed-settings.json (Linux)C:\Program Files\ClaudeCode\managed-settings.json (Windows) Що вимагає організація. Якщо її немає, агента ніщо не обмежує.
Цей проєкт, лише ти.claude/settings.local.json Твої правила для одного проєкту, поза git.
Цей проєкт, спільно.claude/settings.json Правила, які вся команда отримує з git.
Ти, всюди~/.claude/settings.json Твій режим за замовчуванням, правила allow / ask / deny і хуки.
MCP-сервери~/.claude.json.mcp.json Сервери, які він запускає, їхні команди і ключі, які ти їм дав.
Інструкції~/.claude/CLAUDE.mdCLAUDE.mdCLAUDE.local.md Що він читає перед кожною сесією. Впливає на поведінку, але нічого не дозволяє.
Скіли, субагенти, команди, плагіни~/.claude/skills~/.claude/agents~/.claude/commands~/.claude/plugins Доповнення зі своїми скриптами, хуками й MCP-серверами.

Що дає кожен режим дозволів

permissions.defaultMode визначає режим, у якому стартує кожна сесія.

РежимЩо робить без питання
default (Manual)Читає файли в проєкті. Питає перед першим використанням кожного іншого інструмента.
acceptEditsЩе й змінює файли та запускає mkdir, touch, mv і cp у межах проєкту.
planЧитає й досліджує; не змінює твій код.
autoПрацює без звичних запитів; замість тебе команди й мережеві запити перевіряє фоновий класифікатор.
dontAskВідхиляє все, що мало б спитати, крім наперед дозволеного.
bypassPermissionsПропускає запити, зокрема запис у .git і .claude. Те саме, що запуск із --dangerously-skip-permissions.

П'ять речей для перевірки

Підтвердження вимкнені

"defaultMode": "bypassPermissions" у будь-якому файлі налаштувань або claude --dangerously-skip-permissions в аліасі чи скрипті профілю shell, що вмикає це для кожного запуску.

Правило, яке дозволяє будь-яку команду

Голе Bash чи Bash(*) у списку allow: кожна команда терміналу йде без запиту. Перелічи замість цього точні команди.

Ключі під рукою

Файли .env і теки на кшталт ~/.ssh чи ~/.aws, які він може читати, і ключі, вставлені в env, URL чи заголовки MCP-сервера.

Сервери й хуки, що стартують самі

"enableAllProjectMcpServers": true запускає кожен сервер із .mcp.json проєкту без питання. Хук із curl … | sh виконує все, що віддасть та адреса.

Інструкції, яких не видно

Невидимі символи в CLAUDE.md, скілі чи файлі правил можуть нести інструкції, яких ти не читав.

Як закрити

У ~/.claude/settings.json. Deny переважає ask, а ask переважає allow, незалежно від порядку правил.

{
  "permissions": {
    "defaultMode": "default",
    "disableBypassPermissionsMode": "disable",
    "allow": ["Bash(npm test)", "Bash(git status)"],
    "deny": ["Read(./.env)", "Read(./.env.*)", "Read(~/.ssh/**)"]
  }
}

disableBypassPermissionsMode не дає ввімкнути bypass навіть прапорцем. Команда може покласти ті самі ключі в політику організації, де їх не перекриє жодне налаштування користувача чи проєкту.

Або перевір усе одразу

NeuroShield, частина Shields у DriveScape One, читає кожного агента на твоєму комп'ютері і кожен проєкт, де вони працюють.

Лише читає

Читає файли налаштувань і ніколи не запускає агентів, їхні MCP-сервери чи скрипти.

Нічого не покидає комп'ютер

Перевірка йде локально. Без акаунта, без завантаження, без AI всередині: фіксовані опубліковані правила.

Нічого не змінюється без твого «ок»

Де є безпечне виправлення, Fix It for Me робить його після підтвердження, з копією і Undo.

Питання

Хіба CLAUDE.md не каже йому, чого не робити?

Він впливає на те, що Claude пробує, а не на те, що дозволяє Claude Code. Правила дозволів виконує сам Claude Code, а не модель.

--dangerously-skip-permissions десь зберігається?

Лише на той запуск. Аліас у профілі shell робить його постійним, тому NeuroShield читає й профілі shell.

Чи можуть налаштування проєкту послабити мої?

Так: налаштування проєкту стоять вище за твої. Неможливо перекрити лише політику організації.

Подивись на своїх агентів

Перевірка безкоштовна: скільки в тебе агентів і що вони можуть. Деталі й виправлення - у Shields.