> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Запустите и настройте оболочку

Запустите оболочку разработки Tauri и подключите её к веб-приложению.

## Прохождение для начинающих

Предварительные требования: прочтите два руководства для начинающих ниже и завершите локальную настройку рабочего стола, включая предварительные требования к Rust и операционной системе. Блок кода запускает как веб-приложение, так и Tauri в монорепозитории; при оформлении заказа только на рабочем столе используйте отфильтрованную команду только после отдельного запуска доступного веб-сервера. Tauri загружает этот сервер.

Вкратце: рабочее пространство — это отдельные пользователи, данные и настройки одной команды. Сервер является доверенным сервером; не допускайте попадания ключей провайдера в код браузера и телефона. Миграция — это изменение версии базы данных, при котором создаются или обновляются таблицы. Модель ИИ — это механизм, который отвечает; Каталог моделей — это список доступных идентификаторов моделей и цен на сервере. Поставщик — это внешняя служба, такая как служба искусственного интеллекта, электронной почты или службы выставления счетов. Право — это грант, который позволяет рабочей области использовать функцию. Вебхук — это сообщение, которое одна служба отправляет на URL другой службы.

1. Откройте `apps/desktop/src-tauri/src/lib.rs`; попросите своего агента изменить только поведение именованного окна/панели/горячих клавиш и сохранить пользовательский интерфейс продукта в веб-приложении.

2. Запустите оболочку и проверьте близко к лотку, Выход и `CmdOrCtrl+Shift+Space`; тест `supastack:///settings/appearance?preview=1#main`.

3. Он должен сфокусировать существующее окно и сохранить путь/запрос/фрагмент. Если открывается не та страница, сравните настроенный источник и точный маршрут.

Для пользовательского кода начните с предоставленного `prompts/README.md` и скопируйте ближайшее приглашение: `prompts/new-app-screen.md` для экрана приложения или `prompts/new-landing-page.md` для общедоступной страницы. Для работы с сервером, базой данных или провайдером дайте своему агенту кодирования задание из этого руководства и попросите его прочитать `AGENTS.md`, `.ai/PROJECT_CONTEXT.md` и соответствующие зеркала `.ai/`; проверьте точные исходные файлы, указанные здесь; список файлов и проверки перед редактированием; сохранять права собственности на рабочую область и секреты, доступные только серверу; и покажу вам разницу. Сообщите ему желаемое поведение, поля ввода и вывода, разрешенные роли, ожидаемые успехи и ошибки, а также тестовую учетную запись, поставщика или устройство. Используйте выборочные значения; никогда не вставляйте настоящий секрет.

[Прежде чем начать](https://supastack.dev/ru/docs/web/before-you-start.md)

[Основные сведения о терминале](https://supastack.dev/ru/docs/web/terminal-basics.md)

[Локальная настройка рабочего стола](https://supastack.dev/ru/docs/desktop/ship-in-5-minutes.md)

[Подсказки агента и память проекта](https://supastack.dev/ru/docs/web/agents.md)

```
# Monorepo: start the web app and desktop shell together
corepack pnpm dev:desktop

# Desktop-only checkout: start Tauri after a web backend is already reachable
corepack pnpm --filter @supastack/desktop dev
```


## Сохранение поведения оболочки в Rust

`src-tauri/src/lib.rs` создает главное окно веб-просмотра размером 1200×800. Закрытие скрывает его в лотке; Выход из игры. Собственные меню обеспечивают действия «Домой», «Назад», «Вперед», «Обновить», масштабирование, полноэкранный режим и действия в окне. Восстановление состояния окна сохраняет размер/положение.


## Обработка ссылок и вызов

Оболочка принимает маршруты `supastack://` и сопоставляет их с точно настроенным источником приложения HTTP(S). Например, `supastack:///settings/appearance?preview=1#main` становится `/workspace/settings?tab=billing#plans`; `supastack:///auth/callback?code=...` отображается на `/auth/callback?code=...`. Строки запроса и фрагменты сохраняются.

Ссылки на запуск применяются до отображения первого окна. Ссылки среды выполнения macOS используют Tauri `on_open_url`; Аргументы второго экземпляра Windows и Linux используют обратный вызов одного экземпляра с включенной функцией `deep-link`. Действительные ссылки позволяют фокусироваться и перемещаться по существующему окну.

В оболочке остаются только каналы HTTP(S) без учетных данных с точно настроенной схемой, хостом и действующим портом. Ссылки HTTP(S), `mailto:` и `tel:` без учетных данных могут открываться извне; неверные ссылки, учетные данные, неподдерживаемые схемы, порты в пользовательских ссылках и попытки обхода отклоняются. Настроенная серверная часть URL также отклоняет учетные данные и возвращается к следующему действительному источнику/источнику по умолчанию.

```
SUPASTACK_APP_URL=https://your-app.example
SUPASTACK_DESKTOP_HOTKEY=CmdOrCtrl+Shift+Space

supastack:///settings/appearance?preview=1#main
# Opens https://your-app.example/workspace/settings?tab=billing#plans
```


## Проверка поведения, специфичного для платформы

Внедренное автономное наложение предлагает повторить попытку, скрывается в сети и перезагружает веб-приложение. Тестируйте фокус, ярлыки, масштабирование меню, трей и вызов глубоких ссылок на каждой целевой ОС; Сами по себе проверки модуля URL не доказывают эти встроенные взаимодействия.

[Принятие рабочего стола](https://supastack.dev/ru/docs/desktop/release.md)


## Настройка и конфигурация

Установите зависимости рабочей области и набор инструментов Rust, а также необходимые для каждой ОС Tauri (WebView2 поставляется с Windows; для macOS и Linux нужны свои документированные пакеты). corepack pnpm --filter @supastack/desktop dev запускает tauri dev: оно собирает ядро ​​Rust, показывает пользовательский интерфейс-заполнитель и загружает решенное приложение URL.

Сначала используется значение SUPASTACK_APP_URL во время запуска, затем — сохранённое при сборке. Принимаются только URL HTTP(S) без учётных данных; иначе проверяется следующий вариант. SUPASTACK_DESKTOP_HOTKEY меняет CmdOrCtrl+Shift+Space на горячую клавишу по умолчанию. При ошибочном значении используется значение по умолчанию, запуск не прекращается.

```
corepack pnpm --filter @supastack/desktop dev
corepack pnpm --filter @supastack/desktop typecheck

SUPASTACK_APP_URL=https://app.example.com \
SUPASTACK_DESKTOP_HOTKEY=CmdOrCtrl+Shift+Space \
corepack pnpm --filter @supastack/desktop dev
```


## Рабочий процесс внедрения

Главное окно остаётся на точно настроенном источнике, включая протокол и порт. URL HTTP(S) без учётных данных, а также mailto и tel могут открываться в системном браузере; остальные протоколы отменяются.

Зарегистрированные ссылки supastack:// переносят свой путь, запрос и фрагмент на настроенный источник приложения. Одинаковая проверка применяется при запуске, системных событиях открытия URL и повторном запуске процесса, поэтому диплинк не может перенаправить оболочку на другой хост.

Значок области уведомлений и глобальная горячая клавиша показывают и активируют единственное главное окно. Если клавиша не срабатывает, вероятно, сочетание занято другим приложением; выберите другое значение SUPASTACK_DESKTOP_HOTKEY.


## Проверка и устранение неполадок

После изменений в src-tauri выполните cargo check и cargo test через скрипты пакета. Затем проверьте переходы только на точный источник, открытие разрешённых внешних URL, маршрут supastack:// на настроенном источнике приложения, работу области уведомлений и клавиши, а также сохранение входа после перезапуска.


Чтобы продолжить настройку, прочитайте [Создайте аккаунты для десктопных релизов](https://supastack.dev/ru/docs/desktop/external-accounts.md).


## Вперёд

[Создайте аккаунты для десктопных релизов](https://supastack.dev/ru/docs/desktop/external-accounts.md)
