Ключи доступа
Вход один — ключ. Основной (API_KEY из .env или config.json приложения) открывает всю машину. Рядом живут именованные ключи: их заводят и отзывают из настроек любого клиента, и они бывают уже основного.

Что можно сузить
| Поле | Смысл |
|---|---|
| Доступ | «как хозяин» или «только смотреть» |
| Область | список проектов, каталог-песочница или «без ограничения» — выбором, а не пустотой |
| Режим разрешений | режим прав агента, прибитый к ключу |
| Инструменты | набор для агента: все, без оболочки, только чтение файлов |
| Терминал | давать этому ключу оболочку или нет |
| Свой каталог Claude | своя память, задачи и настройки — или общие с хозяином |
| Подписка Claude | чьим аккаунтом работать: хозяйским, своим или через машину гостя |
| Срок | когда ключ перестаёт пускать; пусто — бессрочный |
| Квоты | потолок по диску и доля процессора |
Ключ помнит, когда им пользовались в последний раз, — по этой отметке видно, какие выданные ключи давно мертвы и их пора отозвать.
Песочница
Третий вид области — каталог, внутри которого ключ хозяйничает сам: он видит всё внутри, заводит новые папки прямо из «Нового чата» и не выходит наружу. Список проектов так не умеет: проекта, которого ещё нет, ни в одном списке быть не может.
Каталог выбирают обходом дерева, а не вводят строкой: путь мимо рабочих каталогов машины сервер не примет, и вместо обещанной песочницы получился бы молча пустой ключ.
Так показывают коллеге один каталог, не отдавая пульт от всего компьютера. Гостю при этом нужен один ключ — свой; основной остаётся у хозяина и нужен только чтобы выдать гостевой.
Область — это не всё
Область говорит, что ключу видно. Права — что он внутри увиденного умеет, и без них область остаётся границей интерфейса: агент с Bash в разрешённом проекте прочитает машину целиком.
Поэтому у ключа отдельно задаётся набор инструментов. Он живёт именем, а не списком: дописали инструмент в набор — узнали все выданные ключи разом. Сохранённый когда-то список молча пропускал бы каждый новый инструмент Claude Code.
Ход гостя исполняется его пользователем
Область и набор инструментов — граница интерфейса: Bash в разрешённом проекте остаётся оболочкой всей машины. Настоящую границу ставит сама система, и на Linux Clauder её ставит: у ключа с областью есть свой пользователь машины, и ответ агента идёт от него.
- Кому. Ключу с областью, «только смотреть» или с песочницей. Именной ключ без области и с полным доступом — это тот же хозяин с другого устройства, понижать его не от кого.
- Где. Linux, где сервер работает root-ом, — то есть сборка в докере. В приложении на Windows и macOS разграничения нет вовсе: там всё остаётся областью ключа, и сервер об этом не врёт.
- Что это даёт. Доступ к чужим файлам отбивает ядро, а не интерфейс: гость с оболочкой не прочитает то, чего его пользователю не выдали.
Чего гостевой ключ не даёт
Терминал не полагается гостю вовсе — даже с полным доступом к своим проектам: из оболочки видно всю машину, а не область ключа. Решает это сервер, а не клиент.
Как передать ключ
Руками 64 символа не носят. У каждого выданного ключа есть кнопка «Код и ссылка»:
- QR того же формата, что код подключения, — снимает приложение;
- ссылка для браузера
<веб-морда>/?token=<ключ>— гость входит, ничего не вводя.
Адрес в обоих — того сервера, где ключ выдан, так что унести ключ на чужой сервер выдача не даёт.
Ссылка и есть ключ
Отдавать её только тому, для кого ключ выдан. Пришла не туда — отзовите ключ и выдайте новый; это одна кнопка и не требует перезапуска.
Ссылка на чтение одного чата
Показать коллеге, как шла работа, можно и без ключа: «Поделиться ссылкой» в меню чата, в вебе и в Android. Ссылка вида <веб-морда>/share/<токен> открывает этот чат и больше ничего.
- Это не ключ. Ссылка не проходит общую проверку ключей и открывает только свою страницу: ни к одной другой ручке сервера с ней не подобраться. В списке ключей её нет.
- По умолчанию — только переписка: текст сообщений, ответы на вопросы модели и картинки. Вызовы инструментов, вывод команд и размышления модели отрезает сервер — в них пути, куски кода и всё, что напечатали команды. Показать их можно только галочкой при выдаче. Каталог, ветку и модель гость не видит ни в каком режиме.
- Чат живой. Страница гостя дочитывает новое сама, ранние сообщения подгружаются кнопкой.
- Срок — час, сутки (по умолчанию) или неделя; бессрочной ссылки нет. Отзыв действует сразу: при следующем обновлении гость увидит, что ссылки больше нет.
- Кто может делиться — хозяин машины и именной ключ без области. Гость с ключом на пару проектов — нет. Чат-инкогнито тоже не отдаётся: он не оставляет следа, а ссылка была бы следом.
Ссылка ведёт на адрес вашей машины, и гостю нужно туда дойти: дома — по локальной сети, снаружи — через свой https-адрес или туннель по кнопке. Поднятый туннель в выборе адреса стоит первым.
Ключ живёт на своём сервере
У приложения на рабочем компьютере, у контейнера в докере и у виртуалки в интернете базы разные. Ключ, выданный в окне приложения, на другом сервере «не подходит» — его надо завести там же, войдя основным ключом того сервера. Область по проектам тоже про каталоги того сервера.
Как ключ передаётся
Любым из трёх способов: Authorization: Bearer, заголовком X-Api-Key или ?token= в адресе. Последнее нужно для SSE и картинок, где заголовок поставить нечем.
Ключ короче восьми символов считается выключенным.