Архитектура и поток данныхArchitecture and data flow
Screph — Windows-first PySide6 workbench. Центральная модель — канонический проект; Capture поставляет источники, Selector управляет разметкой, CV создаёт проверяемые результаты, а downstream-компоненты получают только выбранный контекст.Screph is a Windows-first PySide6 workbench. The canonical project is central: Capture supplies sources, Selector owns markup, CV produces reviewable results, and downstream components receive selected context.
КомпонентыComponents
Локальное и сетевое исполнениеLocal and online execution
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 не инициализируется.The canonical project, Selector and local CV, voice and LLM paths stay on the user's computer. User content is transferred by a selected function: support sends a message and attachments, diagnostics sends an explicitly confirmed ZIP, server speech sends WAV audio and a cloud LLM receives allowed context. The Logging page offers a manifest for review; the startup crash prompt does not show it. Separately, a desktop with a stored token refreshes the profile every 30 seconds; an installed build may fetch update metadata and six embedded-help pages. Activating OpenAI/LiteLLM Speech settings checks a catalogue or sends a synthetic silent probe. Model catalogues/archives and URL streams contact their hosts but do not upload the canonical project. A SCREPH_TELEMETRY configuration flag exists, but the current runtime initializes no automatic telemetry exporter.
Локальные процессы и loopbackLocal processes and loopback
Отдельный процесс помогает разделить жизненный цикл и сбои, но сам по себе не создаёт sandbox. Если ниже не указано иное, дочерний компонент работает от имени текущего пользователя Windows и получает доступные ему файлы, сеть и устройства.A separate process separates lifecycle and failures, but does not create a sandbox by itself. Unless stated otherwise below, a child component runs as the current Windows user and can use that user's files, network and devices.
| КомпонентComponent | ГраницаBoundary | Что важно пользователюWhat matters to the user |
|---|---|---|
| Screph Code / Pro Agent | Отдельные процессы, JSON-RPC по stdin/stdout и session/context filesSeparate processes, JSON-RPC over stdin/stdout and session/context files | Те же права OS user; review и diff — контроль workflow, не OS sandboxSame OS-user permissions; review and diff are workflow controls, not an OS sandbox |
| Помощник поддержкиSupport helper | screph-support-chat.v1 по stdin/stdout; HTTPS выполняет helperover stdin/stdout; the helper performs HTTPS | Секреты из environment фильтруются, но auth context выбранного запроса передаётся явно; loopback-порт не открываетсяSecret-shaped environment variables are filtered, but the selected request's auth context is passed explicitly; no loopback port is opened |
| Monaco | 127.0.0.1, случайный портephemeral port | Локальный сервер статических assets закрывается вместе с виджетом; это не облачный APIThe local static-asset server closes with the widget; it is not a cloud API |
| Codex bridge log | POST /codex-bridge-log на случайном loopback-портуon an ephemeral loopback port | Локальный endpoint без auth принимает JSON до 256 KiB и пишет его поля в журнал ScrephAn unauthenticated local endpoint accepts JSON up to 256 KiB and writes its fields to the Screph log |
| Automation Manager UI / сценарийworkflow | UI обычно находится в desktop-процессе; выбранный сценарий запускается как Python child со stdout/EVT и control fileThe UI normally lives in the desktop process; the selected workflow runs as a Python child with stdout/EVT and a control file | Child наследует environment и права пользователя; Stop управляет прямым child, а не гарантированно всем деревом процессовThe child inherits the environment and user permissions; Stop controls the direct child, not necessarily its entire process tree |
| OAuth callback | 127.0.0.1:8443/8765 | Legacy-механизм выключен по умолчанию; актуальный device flow не открывает этот listenerA legacy mechanism disabled by default; the current device flow does not open this listener |
| Temporal worker | multiprocessing pipe/shared memorymultiprocessing pipe/shared memory | Internal/prototype transport; обычное CV-исполнение не следует считать изолированным workerAn internal/prototype transport; normal CV execution must not be described as an isolated worker |
Граница доверияTrust boundary
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 нет.Automatic live-preview recalculation is not saved, and a candidate does not become canonical geometry or semantics without explicit review/apply. Manual Apply in the main CV panel may attach a visual result to an image series but does not accept the candidate as markup. Downstream boundaries differ: Automation Runtime requires a separate run action, while sending a request to the current Screph Code Builder grants agent-mode write access inside the selected workspace. This path has no universal per-file confirmation.
Готовность режимовMode readiness
- General, GUI Automation: сквозные рабочие процессы готовы.end-to-end workflows are ready.
- Industrial, UAV: выбираемые foundation/domain workspaces; не считать производственным control/export контуром.selectable foundation/domain workspaces; not a production control/export path.
- Ground Robotics: внутренний отложенный scaffold.an internal deferred scaffold.
Подробные инженерные документыDetailed engineering documents
Отчёты по состоянию, capability matrix, техническая архитектура и принятые решения хранятся рядом с исходным кодом и обновляются по фактической реализации.State reports, the capability matrix, technical architecture and decisions live with the source code and are updated against implementation evidence.
Открыть инженерную документацию на GitHub →Open engineering documentation on GitHub →