Архитектура и поток данных
Screph — Windows-first PySide6 workbench. Центральная модель — канонический проект; Capture поставляет источники, Selector управляет разметкой, CV создаёт проверяемые результаты, а downstream-компоненты получают только выбранный контекст.
Компоненты
Локальное и сетевое исполнение
Canonical project, Selector и локальные CV/voice/LLM paths находятся на компьютере пользователя. Пользовательский контент передаёт выбранная функция: support — сообщение и вложения, diagnostics — явно подтверждённый ZIP, server speech — WAV, cloud LLM — разрешённый контекст. На Logging page ZIP можно проверить по manifest; startup crash prompt manifest не показывает. Отдельно desktop с сохранённым token обновляет профиль каждые 30 секунд; установленная сборка может получить metadata обновления и шесть страниц встроенной справки. Активация OpenAI/LiteLLM Speech settings проверяет каталог или отправляет синтетический silent probe. Каталоги/архивы моделей и URL-streams обращаются к своим hosts, но не загружают туда canonical project. Флаг SCREPH_TELEMETRY существует в конфигурации, однако автоматический telemetry exporter в текущем runtime не инициализируется.
Локальные процессы и loopback
Отдельный процесс помогает разделить жизненный цикл и сбои, но сам по себе не создаёт sandbox. Если ниже не указано иное, дочерний компонент работает от имени текущего пользователя Windows и получает доступные ему файлы, сеть и устройства.
| Компонент | Граница | Что важно пользователю |
|---|---|---|
| Screph Code / Pro Agent | Отдельные процессы, JSON-RPC по stdin/stdout и session/context files | Те же права OS user; review и diff — контроль workflow, не OS sandbox |
| Помощник поддержки | screph-support-chat.v1 по stdin/stdout; HTTPS выполняет helper | Секреты из environment фильтруются, но auth context выбранного запроса передаётся явно; loopback-порт не открывается |
| Monaco | 127.0.0.1, случайный порт | Локальный сервер статических assets закрывается вместе с виджетом; это не облачный API |
| Codex bridge log | POST /codex-bridge-log на случайном loopback-порту | Локальный endpoint без auth принимает JSON до 256 KiB и пишет его поля в журнал Screph |
| Automation Manager UI / сценарий | UI обычно находится в desktop-процессе; выбранный сценарий запускается как Python child со stdout/EVT и control file | Child наследует environment и права пользователя; Stop управляет прямым child, а не гарантированно всем деревом процессов |
| OAuth callback | 127.0.0.1:8443/8765 | Legacy-механизм выключен по умолчанию; актуальный device flow не открывает этот listener |
| Temporal worker | multiprocessing pipe/shared memory | Internal/prototype transport; обычное CV-исполнение не следует считать изолированным worker |
Граница доверия
Live preview не сохраняется при автоматическом пересчёте, а candidate не становится canonical geometry/semantics без явного review/apply. Ручной Apply в основной CV-панели может прикрепить visual result к image series, но не принимает candidate как разметку. Downstream-границы отличаются: Automation Runtime требует отдельного запуска, тогда как отправка запроса текущему Screph Code Builder уже даёт agent-mode доступ на запись внутри выбранного workspace. Универсального per-file confirmation в этом path нет.
Готовность режимов
- General, GUI Automation: сквозные рабочие процессы готовы.
- Industrial, UAV: выбираемые foundation/domain workspaces; не считать производственным control/export контуром.
- Ground Robotics: внутренний отложенный scaffold.
Подробные инженерные документы
Отчёты по состоянию, capability matrix, техническая архитектура и принятые решения хранятся рядом с исходным кодом и обновляются по фактической реализации.
Открыть инженерную документацию на GitHub →