Документація
Клієнт командного рядка
vtermc — клієнт командного рядка: він з’єднується із сервером, створює чи приєднується до термінальних сесій і керує збереженим списком серверів — усе в звичайному терміналі, через SSH або на headless-машині. Він ділить ~/.vibeterminal/client.json з десктопним клієнтом, тож обидва бачать ті самі сервери.
Запуск термінала
Запустіть vtermc без прапорців режиму, щоб створити новий термінал на локальному сервері (типово wss://localhost:7878) зі виявленою оболонкою і транслювати його в поточний термінал. Введіть exit (або Ctrl+D) у віддаленій оболонці, щоб завершити сесію.
Сесії живуть на сервері: якщо з’єднання обривається — втрата мережі, закриття вікна, вбивство vtermc — сесія продовжує працювати і може бути приєднана пізніше через vtermc -s.
vtermc -p <id>— старт із конкретним термінальним профілем (список профілів у розділіProfilesвеб-інтерфейсу);vtermc -p— без id профілю: вибірник інтерактивно перелічує профілі сервера;vtermc -w <dir>— задати робочу директорію нової сесії.
Коли stdin — не термінал (канал або файл), vtermc переходить у пакетний режим: stdin подається в сесію, а вивід тече, поки сесія не закриється — зручно зі скриптів або агентів:
echo "make test" | vtermc
З’єднання із сервером
--server wss://host:port— з’єднання з конкретним сервером замість локального (IPv6-адреси в дужках:wss://[fd00::1]:7878); змінна середовищаVTERM_SERVERзадає той самий default;- рукостискання відповідається секретним ключем сервера: сервери, додані через
-a/-s, несуть свій ключ уclient.json; локальний сервер падає до змінної середовищаTERMINAL_GUI_SECRET_KEY(або ключа відкритим текстом уserver.json).
Додавання серверів
-a зберігає сервер у client.json і виходить — він ніколи не відкриває термінал. Два шляхи:
vtermc -a— інтерактивні запити:Server name,Server addressіSecret key. Адреса має бутиwss://host:port(невірне введення запитується знову; порожня адреса скасовує). Порожнє ім’я падає до адреси;vtermc -a "vtshare1:..."— вставте зашифрований рядок спільного доступу. Клацання наQR Codeсполучення в розділіServerвеб-інтерфейсу копіює його в буфер обміну;vtermcрозшифровує його й автозаповнює ім’я, адресу та секретний ключ.
Деталі, які варто знати:
- повторне додавання наявної адреси оновлює цей запис на місці (його id зберігається) замість дублювання;
- локальні адреси відхляються —
Localзавжди неявно доступний і ніколи не потребує запису; - записи показує також Server Manager десктопного клієнта.
Вибір серверів і сесій
vtermc -s відкриває два вибірники на весь екран (потребує інтерактивного термінала):
- Список серверів — спершу
Local, потім кожен керований сервер якName (адреса). Навігація стрілками абоj/k, стрибок цифрою,Enterвибирає,qскасовує; - Список терміналів — спершу
New Terminal, далі живі сесії цього сервера з робочою директорією, заголовком і сервером-власником. Приєднайтеся до наявної сесії або створіть нову (яка тоді поважає-p/-w, як звичайний запускvtermc).
Приєднання ніколи не перериває сесію — вона продовжує працювати на сервері між приєднаннями.
Видалення сервера
У списку серверів перейдіть до керованого сервера й натисніть d: рядок червоніє, підказка просить підтвердження. Натисніть y (або Enter), щоб видалити запис з client.json, будь-яка інша клавіша скасовує. Local видалити не можна.
Змінні середовища
Нова сесія успадковує фіксований набір з вашої оболонки — PATH, HOME, USER, SHELL, TERM, WT_PROFILE_ID, PSMODULEPATH:
--env-inherit <patterns>— список через кому (або змінна середовищаVTERM_ENV_INHERIT); підтримуються шаблони*;-e VAR=VALUE— додаткові змінні (повторювано);--no-env— запустити сесію без успадкованих змінних.
vtermc -w ~/project -e RUST_LOG=debug --env-inherit "PATH,HOME,TERM"
Усі опції
-p, --profile [<ID>] Вибір термінального профілю (пропустіть для інтерактивного списку)
-w, --working-dir <DIR> Задати робочу директорію
-s, --select Інтерактивний вибір сервера та наявного термінала
-a, --add [<SHARE>] Додати сервер (vtshare1: рядок спільного доступу, або інтерактивно)
--server <URL> WebSocket-URL сервера [env: VTERM_SERVER]
-e, --env <VAR=VALUE> Додаткові змінні середовища
--no-env Не успадковувати змінні середовища
--env-inherit <PATTERNS> Шаблони змінних середовища для успадкування [env: VTERM_ENV_INHERIT]