Профили#

tgs поддерживает несколько аккаунтов Telegram через профили — по аналогии с профилями AWS CLI. У каждого профиля своя независимая сессия, хранящаяся в отдельном файле базы данных.

Порядок определения профиля#

При запуске любой команды tgs активный профиль определяется по следующему приоритету (от высшего к низшему):

  1. Флаг --profile, переданный команде
  2. Переменная окружения TGS_PROFILE
  3. Файл .tgs.yaml в текущей или родительской директории
  4. "default" (значение по умолчанию)

Профили для отдельных директорий#

Вы можете привязать профиль к директории, создав файл .tgs.yaml. Используйте tgs profile switch для автоматического создания:

cd ~/projects/work-project
tgs profile switch work
profile: work

tgs ищет .tgs.yaml, поднимаясь по дереву директорий, поэтому привязка работает и во вложенных папках. Это рекомендуемый способ использования разных аккаунтов для разных проектов.

Управление профилями#

Список профилей#

tgs profile list
* default (@myuser)
  work (@workuser)

Символ * отмечает текущий активный профиль. Вывод в формате JSON используется по умолчанию и содержит поле active.

Переключить профиль для текущей директории#

tgs profile switch work

Создаёт или перезаписывает .tgs.yaml в текущей директории.

Удалить профиль#

tgs profile delete old-account
tgs profile switch default
tgs profile delete work

Удаляет директорию профиля и его базу данных сессии. Нельзя удалить текущий активный профиль — сначала переключитесь на другой:

Узнать текущий профиль и аккаунт#

tgs whoami
tgs whoami --output text
Profile: work
User:    John Doe (id: 123456789)
Handle:  @johndoe
Phone:   +1234567890

whoami читает данные из локального хранилища — подключение к Telegram не требуется.

Переменная окружения#

Установите TGS_PROFILE, чтобы переопределить профиль для одной команды или всей сессии:

# One-off override
TGS_PROFILE=work tgs whoami

# Override for the shell session
export TGS_PROFILE=work

Флаг --profile всегда имеет приоритет над TGS_PROFILE.

Практические примеры#

Использовать рабочий аккаунт для одной команды#

Настроить директорию проекта#

Проверить, какой профиль активен#

tgs --profile work search "design review"
mkdir ~/projects/client-x && cd ~/projects/client-x
tgs login --type code --profile client-x
tgs profile switch client-x
tgs whoami --output text

Полный справочник#