Архитектура и поток данных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

Desktop shell / Program ModeНавигация, настройки, tray и выбор workspace.Navigation, settings, tray and workspace selection.
Capture → Canvas / SelectorИсточники переходят на общий canvas; разметка изменяется командами с undo/redo.Sources move to a shared canvas; markup changes through undoable commands.
CV Registry / Pipeline / PresentationsМетоды и графы вычисляют masks, overlays, candidates, evidence и diagnostics.Methods and graphs compute masks, overlays, candidates, evidence and diagnostics.
Canonical projectElements/features, annotations, relations, groups и ссылки на артефакты.Elements/features, annotations, relations, groups and artifact references.
Downstream adaptersAutomation runtime, AI Assistant, Screph Code/Pro Agent, IDE и voice.Automation runtime, AI Assistant, Screph Code/Pro Agent, IDE and voice.
Online boundariesDevice auth, support, diagnostics и рабочий server speech запускаются выбранной операцией. Профиль с сохранённым token, update metadata и кэш справки обновляются автоматически; активация Speech settings может проверить provider. Каталоги/архивы моделей и streams используют отдельные endpoints.Device auth, support, diagnostics and working server speech start from a selected operation. A profile with a stored token, update metadata and the help cache refresh automatically; activating Speech settings may probe its provider. Model catalogues/archives and streams use separate endpoints.

Локальное и сетевое исполнение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.

Контракты сетевых сервисов →Online service contracts →

Локальные процессы и 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 helperscreph-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
Monaco127.0.0.1, случайный портephemeral portЛокальный сервер статических assets закрывается вместе с виджетом; это не облачный APIThe local static-asset server closes with the widget; it is not a cloud API
Codex bridge logPOST /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 / сценарийworkflowUI обычно находится в 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 fileChild наследует environment и права пользователя; Stop управляет прямым child, а не гарантированно всем деревом процессовThe child inherits the environment and user permissions; Stop controls the direct child, not necessarily its entire process tree
OAuth callback127.0.0.1:8443/8765Legacy-механизм выключен по умолчанию; актуальный device flow не открывает этот listenerA legacy mechanism disabled by default; the current device flow does not open this listener
Temporal workermultiprocessing pipe/shared memorymultiprocessing pipe/shared memoryInternal/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 →