Repository navigation
RU docs operations
Русский · English · Документация
Целевая платформа — Windows x64. Нужны PowerShell 7+, CMake и MSVC C++ Build Tools. Установка загружает проверяемые по хешам архивы в игнорируемый .runtime/ и собирает нативные мосты OCCT и Open3D. Версии закреплены в scripts/runtime-versions.json; при их изменении проверяйте актуальные стабильные выпуски. Production-код Python не требует pip-пакетов.
Команды выполняются из корня репозитория:
.\scripts\setup-runtime.ps1
.\.runtime\python\python.exe -m cadyxОткройте локальный интерфейс. После переноса checkout повторите установку для обновления пути встроенного Python. Перед пересборкой нативных DLL остановите хосты. Другие платформы требуют отдельной сборки и не считаются проверенными.
Порт и каталог проектов задаются через --port, --projects-dir или CADYX_PORT, CADYX_PROJECTS_DIR; адрес — через --host / CADYX_HOST. По умолчанию хост слушает loopback. projects/ содержит пользовательские данные, исключённые из Git: резервное копирование моделей, исходников и сканов выполняется отдельно.
Для адреса вне loopback обязателен токен не короче 32 непробельных символов. Используйте один источник: CADYX_AUTH_TOKEN либо UTF-8-файл через --auth-token-file / CADYX_AUTH_TOKEN_FILE.
$env:CADYX_AUTH_TOKEN = & .\.runtime\python\python.exe -c "import secrets; print(secrets.token_urlsafe(32))"
.\.runtime\python\python.exe -m cadyx --host 0.0.0.0API принимает Authorization: Bearer <token>. Браузер использует HTTP Basic: имя cadyx, пароль — тот же токен. Токен нельзя передавать в URL. При включённой защите авторизация нужна для интерфейса, проектов, файлов, изображений, команд, блокировок и SSE. Только GET /api/v1/health доступен без авторизации и возвращает минимальную готовность сервера.
HTTP не шифруется. Сетевой режим предназначен для доверенной частной сети; для недоверенных сетей нужны TLS или доверенный VPN. Не открывайте HTTP-порт напрямую в Интернет. См. безопасность.
.\scripts\manage-host-task.ps1 -Action Install
.\scripts\manage-host-task.ps1 -Action Status
.\scripts\manage-host-task.ps1 -Action RestartЗадача запускается при входе текущего пользователя Windows, независимо от терминала и Codex, через pythonw.exe без консольного окна на 127.0.0.1:8888. Планировщик отслеживает процесс и перезапускает его при сбое. Журналы: %LOCALAPPDATA%\CADYX\host.stdout.log и host.stderr.log, с ротацией при запуске. Используется projects/ текущего checkout.
Доступны -Action Stop и -Action Uninstall. После переноса checkout или пересборки среды повторите Install для обновления путей и перезапуска.
Входная точка правил — AGENTS.md, моделирование описано в CADYX Operator. Агент работает через Agent API и общий Command System; браузер служит для наблюдения, состояние хранит Core.
После установки среды и запуска хоста откройте доверенный checkout в Codex. Локальная конфигурация запускает .runtime/python/python.exe -m cadyx.mcp_server без общих настроек пользователя и абсолютных путей. UTF-8 сохраняет кириллицу в stdio Windows. Проверка регистрации:
codex mcp listДля защищённого хоста задайте CADYX_API_TOKEN_FILE с путём к защищённому файлу токена; допустима также переменная процесса CADYX_API_TOKEN. Не записывайте токены в Git и аргументы команд. После первого включения конфигурации перезапустите MCP-серверы Codex или откройте новый чат.
MCP-адаптер не предоставляет shell, произвольный HTTP или прямую запись модели. GET /api/v1/agent/capabilities описывает доступные маршруты и команды; значения окончательно проверяет Core. Обычная MCP-команда использует /commands/execute: сервер получает и освобождает блокировку вокруг одной команды с проверкой expected_revision. Не удерживайте дополнительную блокировку для такого вызова.
По умолчанию инспекция компактная; cadyx_inspect_project_full запрашивает полную модель и историю. Большие ответы читайте постранично. PNG-инструменты дают изображение для визуальной проверки. cadyx_stop_agent_work останавливает дальнейшие действия после завершения принятой атомарной команды и проверки сохранённого состояния.
AgentRuntime принимает адаптер протокола AgentProvider; адаптер конкретного поставщика модели не поставляется. Механизм расширений описан в архитектуре. Поддержку команды проверяйте по реестру возможностей и результату её выполнения.
Проверка выбирается по области изменений. Полная нативная проверка требует Windows и установленных SDK. Команды полной проверки:
.\.runtime\python\python.exe -m unittest discover -s tests -v
.\.runtime\python\python.exe -m compileall -q cadyx tests scripts
.\scripts\setup-runtime.ps1 -WithNode
$nodeVersion = (Get-Content scripts/runtime-versions.json -Raw | ConvertFrom-Json).node.version
$node = ".\.runtime\node-v$nodeVersion-win-x64\node.exe"
& $node tests/test_viewport.cjs
& $node tests/test_scanner_camera.cjs
& $node tests/test_ply_preview.cjsSource-job без нативных SDK проверяет Python, пути контрактов, версии схем, согласованность discovery/MCP, события и миграции. Windows-job после него проверяет нативную сборку, запуск, Python и браузерные тесты. Кешируются только повторно проверяемые архивы, не готовые DLL или SDK-деревья.
Статические проверки запускаются в отдельной обычной среде Python, а не production embedded runtime:
python -m pip install -r requirements-dev.txt
python -m ruff check .
python scripts/check-static-types.py
python -m unittest discover -s tests -p test_source_contracts.py -v
python -m unittest discover -s tests -p test_static_quality.py -vMypy проверяет код постепенно; зелёный результат не означает проверку типов всей реализации. Не увеличивайте baseline динамических аннотаций для подавления ошибок. Канонические команды и настройки: CI, pyproject.toml, requirements-dev.txt. Обзор исходников не подтверждает прохождение нативных тестов.
Текущие версии: оболочка проекта v1, документ v12, граф сборки v3. Версию документа определяет cadyx/migrations.py. Документы v4–v11 описывают введённые тогда контракты; ограничения могли измениться позже.
Редактируемые OCCT B-rep включают эскизные тела, выдавливания, вращения, sweep/loft, булевы операции и обработку рёбер. Поддерживаются XY/XZ/YZ, CUSTOM и FACE, но отдельные операции сохраняют ограничения плоскостей. Параметры перестраивают зависимые элементы атомарно. См. карту контрактов.
Сборки содержат определения деталей, подсборки, жёсткие размещения, сопряжения и явные материалы. Размеры — в мм. Масса требует плотности с источником и подходящих B-rep; пересекающиеся объёмы экземпляров суммируются. Зазоры проверяются только в заданных дискретных положениях. Межпроектные ссылки, общая конверсия единиц, непрерывная динамика и STEP-экспорт сборки не входят в реализованный контракт.
Каталог содержит версионированные пресеты со SHA-256. Кольцевой профиль не является сертифицированным подшипником. Сторонний STEP должен быть заранее помещён в проект, закреплён хешем и сопровождаться подтверждением прав вызывающей стороной; CADYX не скачивает его и не проверяет лицензию независимо.
Точечный PLY остаётся облаком точек; сетка не становится B-rep автоматически. Полноразмерные исходники и промежуточные результаты сохраняются; отображаемая выборка их не заменяет. Физический масштаб требует проверки. UVC-захват Revopoint экспериментален; калибровка привязана к устройству, права на публичное распространение не подтверждены.
Исходный код CADYX — MIT; сторонние компоненты и данные сохраняют собственные условия. До изменения видимости, релиза или публичного развёртывания выполните проверки готовности. Документация не является разрешением на публикацию и не подтверждает прохождение тестов.