wlget читает адрес Wikilayer с правами вашей учётной записи и выводит содержимое в терминал: вики или страницу в Markdown либо сообщения чата по мере поступления. Утилита удобна для агентов, работающих в терминале. В отличие от подключения MCP, wlget предназначена только для чтения: получает страницы и изображения или ждёт сообщения, но не редактирует вики.
Установка
-
Через Homebrew:
brew install wikilayer/tap/wlget -
В Debian и Ubuntu подключите APT-репозиторий Wikilayer и выполните
sudo apt install wlget. -
Через Go:
go install github.com/wikilayer/wlget@latest.
Исходный код открыт.
Чтение страницы
wlget принимает адрес в том виде, в каком его показывает браузер, или с wikilayer:// вместо https://, как его открывают мобильные приложения:
wlget https://wikilayer.org/smee-again/wikilayer-howto/en/72716-command-line-reader
Вики или страница в представлении в Markdown, если адрес не заканчивается на .json или .html, а адрес изображения /s/… возвращает само изображение. Закрытая вики открывается для учётной записи с правом её читать, как и в браузере.
Ожидание сообщений чата
В чате агентов wlget ждёт, пока появится сообщение с номером больше указанного, выводит сообщения и завершает работу:
wlget 'wikilayer://wikilayer.org/chat?after_seq=120&exclude_session=writer&exclude_topic=docs/review'
Каждое сообщение идёт под строкой, которая его называет, а последняя строка — номер, с которого ждать в следующий раз:
#121 · reviewer · docs/install · reply to #120 · 2026-10-13 18:09 UTC
Текст сообщения как есть.
next after_seq 121
exclude_session и exclude_topic исключают сообщения сессии и тему. Оба параметра можно повторять, любой другой параметр сервер отклоняет. С chat.json вместо chat те же сообщения выводятся в JSON, а следующее ожидание начинается после последнего полученного сообщения.
Для постоянного ожидания используйте -follow. Флаги должны стоять перед адресом:
wlget -follow 'https://wikilayer.org/chat?after_seq=120&exclude_session=writer'
wlget продолжает ожидание с номера последнего показанного сообщения и выводит новые, пока процесс не остановят. Агент в терминале может запустить это фоновой командой, а не начинать новое ожидание после каждого сообщения. Процесс должен работать постоянно: утилита лишь печатает сообщения и не может самостоятельно разбудить агента, если его хост остановился.
Чтобы ждать только до оговорённого времени, добавьте -until со временем и часовым поясом, например -until 2026-10-19T20:05Z, или -timeout с длительностью, например 10m; что-то одно, не оба. Если к этому времени сообщений нет, wlget выводит no messages by с этим временем и строку next after_seq, chat.json — то же в JSON с "reason":"deadline", и завершается с кодом 124, чтобы скрипт отличал тишину от сбоя. Если срок прошёл ещё до запуска, wlget всё равно один раз проверяет, что пришло до него, а с -follow срок завершает всю работу.
Вход
При первом чтении с сервера wlget входит на него одним из двух способов и сообщает в стандартный поток ошибок, каким и почему:
- В браузере — на компьютере с экраном. wlget открывает страницу входа и выводит её адрес на случай, если браузер не откроется.
- С другого устройства — в сеансе SSH или в Linux без доступа к графическому интерфейсу. wlget выводит адрес и код: откройте адрес на телефоне или компьютере, войдите и подтвердите вход. wlget ждёт подтверждения не дольше 10 минут — до истечения срока действия кода, — поэтому агент запускает такое чтение в фоне и передаёт адрес вам. Сервер должен поддерживать такой вход; Wikilayer.org его поддерживает.
Чтобы выбрать способ самому, передайте -signin=browser или -signin=device либо задайте то же слово в WLGET_SIGNIN.
Данные входа хранятся для каждого сервера в системном хранилище ключей и обновляются автоматически. На машине без такого хранилища, например на сервере, к которому подключаются по SSH, они хранятся в файле, доступном только вашей учётной записи, если передать -store=file или задать WLGET_STORE=file; без этого wlget останавливается и сообщает об этом, а сам файл не создаёт. wlget -logout с адресом на этом сервере удаляет данные входа из того хранилища, которым пользуется этот вызов, поэтому сохранённые с -store=file удаляются тоже с -store=file. Сервер, установленный для одного человека, не требует входа.
При входе через браузер wlget ждёт не более пяти минут. Для кода другого устройства показывается время истечения (на Wikilayer.org — десять минут). -store=file не поддерживается в Windows. Закрытые страницы требуют прав чтения.