Команда и роли
Пространство — это граница данных, а не папка
Внутри рабочего пространства лежат сценария и их версии, история запусков и логи, файлы, коллекции базы данных, базы знаний с векторами, память агентов и переменные, секреты, интеграции с внешними сервисами и история чатов. Ни один из этих объектов не виден из соседнего пространства — запросы к ним скоупятся по идентификатору пространства на уровне хранилища, а не фильтром в интерфейсе.
Отсюда простое правило раскладки: пространство заводят там, где данные не должны смешиваться — отдельный клиент, отдельное юрлицо, отдельная команда с чужими секретами. Заводить по пространству на каждый сценарий смысла нет: они попадут в разные квоты, а каждое пространство держит свою копию секретов, документов и файлов.
Доступ человека к пространству — это строка членства с ролью. Нет строки — пространства для него не существует: оно не появится в переключателе и любой запрос к нему ответит «не найдено», а не «нет прав».
Три роли
Роль решает, что человек может делать внутри одного пространства. У одного и того же человека могут быть разные роли в разных пространствах.
- Наблюдатель — читает. Видит сценарии и их версии, историю запусков с логами, файлы, коллекции, базы знаний, историю чатов. Ничего не запускает и не меняет.
- Редактор — работает. Всё, что делает наблюдатель, плюс правка и публикация сценария, запуск, чат, ассистент, загрузка файлов и данных.
- Администратор — распоряжается пространством: участники, секреты, интеграции, виджет, white-label, ключ Assistant MCP, расход пространства.
| Действие | наблюдатель | редактор | администратор |
|---|---|---|---|
| Смотреть сценарии, версии, запуски и логи | да | да | да |
| Проверить граф валидацией и автопочинкой | да | да | да |
| Читать историю чата, файлы, коллекции, базы знаний | да | да | да |
| Видеть список интеграций (без секретных полей) | да | да | да |
| Создавать, править и удалять сценарий | нет | да | да |
| Запускать сценарий, писать в чат, отменять запуск | нет | да | да |
| Публиковать и снимать с публикации | нет | да | да |
| Загружать файлы, править коллекции и базы знаний | нет | да | да |
| Работать с ассистентом в редакторе | нет | да | да |
| Удалять историю чата и состояние нод | нет | да | да |
| Видеть имена секретов (значения — никто) | нет | да | да |
| Создавать и менять секреты и интеграции | нет | нет | да |
| Переименовать пространство, править состав участников | нет | нет | да |
| Настроить виджет, white-label, ключ Assistant MCP | нет | нет | да |
| Смотреть расход кварков этого пространства | нет | нет | да |
| Стереть записанную историю Telegram-группы | нет | нет | да |
Две строки в этой таблице стоит прочитать дважды. Первая: наблюдатель читает всё, что
касается данных — историю чатов с клиентами, загруженные файлы, содержимое коллекций.
Это роль «смотреть, не трогая», а не «видеть только вывеску». Вторая: значение секрета
не показывается никому и никогда, включая администратора, который его создал; видны
только имена — они нужны редактору, чтобы писать {{ secret.ИМЯ }} в шаблонах.
Право проверяет сервер, на каждом запросе — обойти роль, обратившись к API напрямую, нельзя. (Ключ Assistant MCP — отдельная дверь со своим набором прав, не ролью: см. «Доступ по API».) А вот интерфейс сегодня прячет по роли только настройки пространства и расход: кнопки правки и запуска наблюдателю по-прежнему видны и отвечают «нет прав» при нажатии. Это шероховатость, а не дыра — но предупредить коллегу стоит заранее.
Владелец — не роль, а отдельная сущность
Владелец пространства — тот, кто его создал. Он всегда числится администратором, но отличается от остальных администраторов тремя вещами:
- его нельзя удалить из пространства и нельзя понизить — оба действия отвергаются;
- на него записан счёт: кварки за любой запуск, чей бы он ни был, списываются с баланса владельца, и его тариф решает лимиты пространства (см. «Лимиты тарифа»);
- он не занимает место в квоте участников. Тариф «на N участников» означает N приглашённых плюс владельца.
Владельцу же принадлежит операция, которой нет ни у одного администратора: бюджет пространства в кварках. Она описана ниже.
Как добавить человека
- Откройте Настройки → Рабочее пространство.
- В блоке Добавить участника введите email коллеги и выберите роль.
- Нажмите Добавить. Подтверждение скажет, что именно произошло из двух: человек добавлен или ему отправлено приглашение.
Форма одна, исходов два, и различает их наличие аккаунта Iterna на этом адресе. Если аккаунт есть, человек становится участником сразу и увидит пространство в переключателе при следующей загрузке страницы — письма нет и ждать нечего. Если аккаунта нет, на почту уходит приглашение.
Приглашение — это ссылка, действующая 7 дней. Она предлагает войти или создать аккаунт и добавляет человека в пространство сразу после этого — в той роли, которую вы выбрали при отправке. До тех пор оно лежит в блоке Приглашения того же раздела: адрес, роль и дата, после которой ссылка перестанет работать. Кнопка в строке отзывает приглашение, и отозванная ссылка перестаёт работать немедленно.
Роль меняется выпадающим списком в строке участника и применяется сразу — переспрашивать и сохранять отдельно не нужно. Удаление участника снимает членство немедленно: активная вкладка перестанет работать на первом же запросе.
Бюджет пространства
Бюджет ограничивает, сколько кварков это пространство может потратить за расчётный период. Когда он исчерпан, запуски здесь останавливаются, а остальные пространства продолжают работать — деньги общие, а рационируется одно направление работы.
- Откройте Настройки → Рабочее пространство.
- В блоке Бюджет пространства введите число кварков.
- Нажмите Сохранить.
Под полем появится полоса «израсходовано столько-то из бюджета» — она считает тот же счётчик, который проверяется перед запуском, поэтому показать потолок, в который вы не упрётесь, она не может. Пустое поле означает «без ограничения»; чтобы снять бюджет, очистите поле и сохраните.
Блок виден только владельцу. Администратор пространства меняет здесь всё остальное — название, состав участников, интеграции, — но не бюджет: рационируются кварки владельца, и поднять чужой потолок со стороны нельзя.
Что записывается в журнал
Вход, добавление и удаление участника, смена роли и правка секретов и интеграций записываются с временем, автором и IP-адресом. Журнал нужен на случай спора о том, кто именно поменял настройку, и хранится независимо от того, остался ли этот человек в пространстве.