Справочник по CLI
Полный справочник по командам CLI Wails
CLI Wails предоставляет полный набор команд для разработки, сборки и сопровождения приложений Wails.
Основные команды
Основные команды используются для создания, разработки и сборки проектов.
Все команды CLI имеют следующий формат: wails3 <command>.
init
Инициализирует новый проект Wails. Во время инициализации выполняется команда go mod tidy, которая обновляет пакеты проекта. Этот шаг можно пропустить, указав флаг -skipgomodtidy для команды init.
wails3 init [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-p |
Имя пакета Go | main |
-t |
Имя или URL шаблона | vanilla |
-n |
Имя проекта | |
-d |
Каталог проекта | . |
-q |
Не выводить сообщения | false |
-l |
Вывести список шаблонов | false |
-mod |
Путь к модулю Go (если не указан, вычисляется из -git) |
|
-git |
URL репозитория Git | |
-s |
Не показывать предупреждение при использовании удалённого шаблона | false |
-productname |
Название продукта | My Product |
-productdescription |
Описание продукта | My Product Description |
-productversion |
Версия продукта | 0.1.0 |
-productcompany |
Название компании | My Company |
-productcopyright |
Уведомление об авторских правах | © now, My Company |
-productcomments |
Комментарии к файлу | This is a comment |
-productidentifier |
Идентификатор продукта | |
-skipgomodtidy |
Не выполнять go mod tidy | false |
Флаг -git принимает URL Git различных форматов:
- HTTPS:
https://github.com/username/project - SSH:
git@github.com:username/projectилиssh://git@github.com/username/project - Протокол Git:
git://github.com/username/project - Файловая система:
file:///path/to/project.git
Если этот флаг указан, команда выполнит следующие действия:
- Инициализирует репозиторий Git в каталоге проекта
- Установит указанный URL для удалённого репозитория origin
- Обновит имя модуля в
go.modв соответствии с URL репозитория - Добавит все файлы
dev
Запускает приложение в режиме разработки. Этот режим позволяет наблюдать за изменениями кода клиентской части в реальном времени: внесённые изменения отображаются в запущенном приложении без необходимости пересобирать его целиком. Изменения в коде Go также обнаруживаются, после чего приложение автоматически пересобирается и перезапускается.
wails3 dev [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-config |
Путь к файлу конфигурации | ./build/config.yml |
-port |
Порт сервера разработки Vite | 9245 |
-s |
Включить HTTPS | false |
build
Собирает отладочную версию приложения. По умолчанию сборка выполняется для текущей платформы и архитектуры.
wails3 build [flags] [CLI variables...]
Флаги
| Флаг | Описание | По умолчанию |
|---|---|---|
-tags |
Дополнительные теги сборки Go (через запятую) |
Чтобы настроить сборку, можно передать переменные CLI:
wails3 build PLATFORM=linux CONFIG=production
Чтобы передать пользовательские теги сборки Go, используйте флаг -tags:
# Build with legacy GTK3 + WebKit2GTK 4.1 on Linux (default is GTK4 + WebKitGTK 6.0)
wails3 build -tags gtk3
# Build in server mode (no GUI)
wails3 build -tags server
# Multiple tags
wails3 build -tags gtk3,customtag
Теги передаются в базовый Taskfile как EXTRA_TAGS.
package
Создаёт платформенные пакеты для распространения.
wails3 package [CLI variables...]
Чтобы настроить создание пакетов, можно передать переменные CLI:
wails3 package VERSION=2.0.0 OUTPUT=myapp.pkg
Типы пакетов
Для каждой платформы доступны следующие типы пакетов:
| Платформа | Тип пакета |
|---|---|
| Windows | .exe |
| macOS | .app, |
| Linux | .AppImage, .deb, .rpm, .archlinux |
task
Выполняет задачи, определённые в файле Taskfile.yml вашего проекта. Это встроенная версия Taskfile, позволяющая определять и выполнять пользовательские задачи сборки, тестирования и развёртывания.
wails3 task [taskname] [CLI variables...] [flags]
Переменные CLI
Переменные можно передавать задачам в формате KEY=VALUE:
wails3 task build PLATFORM=linux CONFIG=production
wails3 task deploy ENV=staging VERSION=1.2.3
Доступ к этим переменным в Taskfile.yml можно получить с помощью синтаксиса шаблонов Go:
tasks:
build:
cmds:
- echo "Building for {{.PLATFORM | default "darwin"}}"
- echo "Config: {{.CONFIG | default "debug"}}"Флаги
| Флаг | Описание | По умолчанию |
|---|---|---|
-h |
Показывает справку по использованию Task | false |
-i |
Создаёт новый файл Taskfile.yml | false |
-list |
Выводит список задач с описаниями | false |
-list-all |
Выводит все задачи (с описаниями или без них) | false |
-json |
Форматирует список задач в виде JSON | false |
-status |
Завершает работу с ненулевым кодом, если задача не актуальна | false |
-f |
Принудительно выполняет задачу, даже если она актуальна | false |
-w |
Включает режим наблюдения для указанной задачи | false |
-v |
Включает режим подробного вывода | false |
-version |
Выводит версию Task | false |
-s |
Отключает вывод выполняемых команд | false |
-p |
Выполняет задачи параллельно | false |
-dry |
Компилирует и выводит задачи без выполнения | false |
-summary |
Показывает сводную информацию о задаче | false |
-x |
Передаёт код завершения задачи | false |
-dir |
Задаёт рабочий каталог | |
-taskfile |
Выбрать Taskfile для запуска | |
-output |
Задаёт стиль вывода: [interleaved | group |
-c |
Цветной вывод (включён по умолчанию) | true |
-C |
Ограничить количество одновременно выполняемых задач | |
-interval |
Интервал проверки изменений (в секундах) |
Примеры
# Run the default task
wails3 task
# Run a specific task
wails3 task test
# Run a task with variables
wails3 task build PLATFORM=windows ARCH=amd64
# List all available tasks
wails3 task --list
# Run multiple tasks in parallel
wails3 task -p task1 task2 task3
# Watch for changes and re-run task
wails3 task -w dev
mcp
Запускает MCP-сервер проекта Wails для управления проектом с помощью агентов. Это отдельный сервер, отличный от MCP-сервера, встроенного в запущенное приложение: wails3 mcp управляет файлами проекта и командами жизненного цикла, а MCP-сервер приложения управляет работающим WebView.
wails3 mcp [flags]
Транспорт выбирается автоматически:
- Когда MCP-хост запускает Wails с перенаправленными стандартными потоками ввода и вывода, сервер использует stdio.
- При интерактивном запуске в терминале сервер использует Streamable HTTP по адресу
127.0.0.1и запрашивает у операционной системы свободный порт.
Чтобы явно выбрать транспорт, используйте --stdio или --http. Чтобы в режиме HTTP выбрать свободный порт на интерфейсе обратной связи, используйте --port 0.
Флаги MCP
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
--root |
Разрешённый корневой каталог проекта. Пути и символические ссылки, ведущие за его пределы, отклоняются. | Текущий каталог |
--token |
Токен сеанса или bearer-токен для инструментов, изменяющих данные и управляющих процессами. Если он не задан, используется WAILS_MCP_TOKEN. |
Генерируется безопасным способом |
--stdio |
Принудительно использовать транспорт stdio. | Автоматически |
--http |
Принудительно использовать транспорт Streamable HTTP. | Автоматически |
--port |
Порт HTTP; 0 выбирает свободный порт на интерфейсе обратной связи. |
0 |
В режиме HTTP Wails выводит конечную точку и bearer-токен в stderr. В режиме stdio токен включается в инструкции по инициализации MCP. Сервер не предоставляет возможность выполнять произвольные команды оболочки. Для удалённых шаблонов и удалённых репозиториев Git требуется явное подтверждение через входной параметр инструмента allowExternal.
doctor
Проверяет систему и выводит отчёт о состоянии.
wails3 doctor
Команды generate
Команды generate помогают создавать различные ресурсы проекта, например привязки, значки и файлы сборки. Все команды generate используют базовую команду wails3 generate <command>.
generate bindings
Создаёт привязки и модели для вашего кода Go.
wails3 generate bindings [flags] [patterns...]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-f |
Дополнительные флаги сборки Go | |
-d |
Каталог вывода | frontend/bindings |
-models |
Имя файла моделей | models |
-index |
Имя индексного файла | index |
-ts |
Генерировать TypeScript | false |
-i |
Использовать интерфейсы TypeScript | false |
-b |
Использовать встроенную среду выполнения | false |
-names |
Использовать имена вместо идентификаторов | false |
-noindex |
Не создавать индексные файлы | false |
-noevents |
Не создавать привязки, связанные с событиями | false |
-dry |
Пробный запуск | false |
-silent |
Тихий режим | false |
-v |
Отладочный вывод | false |
-clean |
Очистить выходной каталог перед созданием | true |
generate build-assets
Создаёт ресурсы сборки для вашего приложения.
wails3 generate build-assets [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-name |
Название проекта | |
-dir |
Выходной каталог | build |
-silent |
Подавить вывод | false |
-company |
Название компании | |
-productname |
Название продукта | |
-description |
Описание продукта | |
-version |
Версия продукта | |
-identifier |
Идентификатор продукта | com.wails.[name] |
-copyright |
Уведомление об авторских правах | |
-comments |
Комментарии к файлу |
generate icons
Создаёт значки приложения.
wails3 generate icons [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-input |
Входной PNG-файл | Обязательно |
-windowsfilename |
Имя выходного файла для Windows | |
-macfilename |
Имя выходного файла для macOS | |
-sizes |
Размеры значков (через запятую) | 256,128,64,48,32,16 |
-example |
Создать пример значка | false |
-iconcomposerinput |
Входной файл Icon Composer (.icon) |
|
-macassetdir |
Выходной каталог для ресурсов Mac (Assets.car + icns) |
Icon Composer (macOS)
В macOS 26 и более поздних версиях можно использовать файлы Icon Composer .icon для создания Assets.car и icons.icns:
wails3 generate icons -iconcomposerinput build/appicon.icon -macassetdir build
Файл .icon компилируется с помощью команды Apple actool. Требуется Xcode с actool версии 26 или более поздней.
При использовании Icon Composer задайте в build/config.yml значение cfBundleIconName, совпадающее с именем файла .icon (без расширения):
info:
cfBundleIconName: "appicon"Если значение не задано и существует Assets.car, по умолчанию используется "appicon".
generate syso
Создаёт файл Windows .syso.
wails3 generate syso [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-manifest |
Путь к файлу манифеста | Обязательно |
-icon |
Путь к файлу значка | Обязательно |
-info |
Путь к файлу сведений о версии | |
-arch |
Целевая архитектура | Текущая GOARCH |
-out |
Имя выходного файла | rsrc_windows_[arch].syso |
generate .desktop
Создаёт файл Linux .desktop.
wails3 generate .desktop [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-name |
Имя приложения | Обязательно |
-exec |
Путь к исполняемому файлу | Обязательно |
-icon |
Путь к значку | |
-categories |
Категории приложения | Utility |
-comment |
Комментарий к приложению | |
-terminal |
Запускать в терминале | false |
-keywords |
Ключевые слова для поиска | |
-version |
Версия приложения | |
-genericname |
Общее название | |
-startupnotify |
Показывать уведомление о запуске | false |
-mimetype |
Поддерживаемые MIME-типы | |
-output |
Имя выходного файла | [name].desktop |
generate runtime
Создаёт предварительно собранную версию среды выполнения.
wails3 generate runtime
generate constants
Создаёт константы JavaScript из кода Go.
wails3 generate constants
generate webview2bootstrapper
Создаёт загрузочный установщик Windows WebView2 для распространения.
wails3 generate webview2bootstrapper [flags]
generate template
Создаёт каркас каталога шаблона нового проекта.
wails3 generate template [flags]
generate appimage
Создаёт AppImage для Linux.
wails3 generate appimage [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-binary |
Путь к бинарному файлу | Обязательно |
-icon |
Путь к файлу значка | Обязательно |
-desktop |
Путь к файлу .desktop | Обязательно |
-builddir |
Каталог сборки | Временный каталог |
-output |
Выходной каталог | . |
Команды служб
Команды служб позволяют управлять службами Wails. Все команды служб используют базовую команду: wails3 service <command>.
service init
Инициализирует новую службу.
wails3 service init [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-n |
Имя службы | example_service |
-d |
Описание службы | Example service |
-p |
Имя пакета | |
-o |
Выходной каталог | . |
-q |
Не выводить сообщения | false |
-a |
Имя автора | |
-v |
Версия | |
-w |
URL-адрес веб-сайта | |
-r |
URL-адрес репозитория | |
-l |
Лицензия |
Служебные команды
Служебные команды предоставляют утилиты для разработки и отладки. Все служебные команды используют базовую команду: wails3 tool <command>.
tool checkport
Проверяет, открыт ли порт. Полезно для проверки, запущен ли vite.
wails3 tool checkport [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-port |
Проверяемый порт | 9245 |
-host |
Проверяемый хост | localhost |
tool watcher
Отслеживает изменения файлов и при их обнаружении выполняет команду.
wails3 tool watcher [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-config |
Путь к файлу конфигурации | ./build/config.yml |
-ignore |
Игнорируемые шаблоны | |
-include |
Включаемые шаблоны |
tool cp
Копирует файлы.
wails3 tool cp
tool buildinfo
Показывает информацию о сборке приложения.
wails3 tool buildinfo
tool version
Повышает семантическую версию в соответствии с указанными флагами.
wails3 tool version [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-v |
Текущая версия для повышения | |
-major |
Увеличить основную версию | false |
-minor |
Увеличить дополнительную версию | false |
-patch |
Увеличить версию исправления | false |
-prerelease |
Увеличить предварительную версию (например, с alpha.5 до alpha.6) | false |
Команда соблюдает следующий порядок приоритета: основная версия > дополнительная версия > версия исправления > предварительная версия. Она сохраняет префикс «v», если он присутствует во входной версии, а также все компоненты предварительной версии и метаданных.
Пример использования:
wails3 tool version -v 1.2.3 -major # Output: 2.0.0
wails3 tool version -v v1.2.3 -minor # Output: v1.3.0
wails3 tool version -v 1.2.3-alpha -patch # Output: 1.2.4-alpha
wails3 tool version -v v3.0.0-alpha.5 -prerelease # Output: v3.0.0-alpha.6
tool package
Создаёт пакеты для Linux (deb, rpm, archlinux).
wails3 tool package [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-format |
Формат пакета (deb, rpm, archlinux) | deb |
-name |
Имя исполняемого файла | myapp |
-config |
Путь к файлу конфигурации | |
-out |
Каталог вывода | . |
tool lipo
Создаёт универсальный двоичный файл macOS, объединяя двоичные файлы для разных архитектур.
wails3 tool lipo [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-output |
Путь к выходному двоичному файлу |
tool capabilities
Проверяет возможности системы для сборки (доступность GTK4/GTK3 в Linux).
wails3 tool capabilities
tool docker-mounts
Создаёт флаги подключения томов Docker для кросс-компиляции. Выводит флаги -v для кеша модулей Go и всех локальных директив replace в go.mod, предназначенные для использования в командах Taskfile docker run.
wails3 tool docker-mounts
tool has
Проверяет доступность инструмента или возможности и выводит true или false в стандартный поток вывода. Предназначена для использования в переменных Taskfile sh: как кросс-платформенная альтернатива command -v.
Используйте |, чтобы проверить наличие хотя бы одного из нескольких вариантов.
wails3 tool has <tool>
Примеры
# Check for a C compiler (gcc or clang)
wails3 tool has gcc|clang
# Check for a specific tool
wails3 tool has git
wails3 tool has node
Использование в Taskfile
vars:
HAS_CC:
sh: 'wails3 tool has gcc|clang'tool has-cc
Обратно совместимый псевдоним для wails3 tool has gcc|clang. Проверяет доступность gcc или clang в PATH и выводит true или false.
wails3 tool has-cc
Команды обновления
Команды обновления помогают управлять ресурсами проекта и обновлять их. Все команды обновления используют базовую команду wails3 update <command>.
update cli
Обновляет Wails CLI до новой версии.
wails3 update cli [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-pre |
Обновить до последней предварительной версии | false |
-version |
Обновить до указанной версии | |
-nocolour |
Отключить цветной вывод | false |
Команда update cli позволяет обновить установленную версию Wails CLI. По умолчанию она обновляет её до последнего стабильного выпуска. Чтобы обновить её до последней предварительной версии, используйте флаг -pre. Чтобы установить определённую версию, укажите её с помощью флага -version.
После обновления не забудьте указать ту же версию в файле go.mod своего проекта:
require github.com/wailsapp/wails/v3 v3.x.x
update build-assets
Обновляет ресурсы сборки с использованием указанного файла конфигурации.
wails3 update build-assets [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-config |
Путь к файлу конфигурации | |
-dir |
Каталог вывода | build |
-silent |
Подавить вывод | false |
-company |
Название компании | |
-productname |
Название продукта | |
-description |
Описание продукта | |
-version |
Версия продукта | |
-identifier |
Идентификатор продукта | |
-copyright |
Уведомление об авторских правах | |
-comments |
Комментарии к файлу |
Вспомогательные команды
Вспомогательные команды предоставляют удобные сокращения для часто выполняемых задач. Используйте их непосредственно с основной командой: wails3 <command>.
docs
Открывает документацию Wails в браузере по умолчанию.
wails3 docs
releasenotes
Показывает примечания к выпуску для текущей или указанной версии.
wails3 releasenotes [flags]
Флаги
| Флаг | Описание | Значение по умолчанию |
|---|---|---|
-v |
Версия, для которой нужно показать примечания к выпуску | |
-n |
Отключить цветной вывод | false |
version
Выводит текущую версию Wails.
wails3 version
sponsor
Открывает страницу спонсорской поддержки Wails в браузере по умолчанию.
wails3 sponsor