Skip to main content

Anolis commissioning workbench with handoff export tooling.

Project description

anolis-workbench

Commissioning shell repository for Anolis.

Repository structure:

  1. anolis_workbench/core — pure domain library (projects, renderer, launcher, exporter, validators, paths)
  2. anolis_workbench/server — unified HTTP server (Compose + Commission + Operate /v0/* proxy)
  3. anolis_workbench/cli — CLI entry points (anolis-workbench, anolis-package, anolis-validate)

Developer references:

  1. Contributing guide: CONTRIBUTING.md
  2. Changelog: CHANGELOG.md

Quick Start

Download and run (recommended)

Desktop app (recommended for commissioning):

Download the latest Tauri desktop installer from Releases. Run the installer — the desktop wrapper bundles the Python runtime and starts automatically.

CLI / server via PyPI:

pip install anolis-workbench
anolis-workbench          # starts the commissioning server
anolis-package <project>  # build a handoff package
anolis-validate <pkg>     # validate a handoff package

Requires Python 3.11+. Open http://127.0.0.1:3010 in a browser after starting.

Build from source (contributors)

uv sync --locked --extra dev
./start.sh

Or via module entry point:

python -m anolis_workbench.server.app

Windows launcher: start.cmd.

CLI

Build handoff package:

anolis-package <project-name> [output.anpkg]

Validate handoff package:

anolis-validate <package.anpkg>
# or
python contracts/validate-handoff-packages.py <package.anpkg>

Frontend Tests

cd frontend
npm run test:unit:coverage
npm run test:components:coverage

The Vitest lanes enforce coverage thresholds for frontend/src/lib/*.

Desktop Wrapper

A native Tauri wrapper now lives under desktop/.

Runtime model:

  1. Tauri launches a frozen Python sidecar.
  2. Sidecar serves Workbench at http://127.0.0.1:3010.
  3. WebView consumes the same localhost HTTP/SSE surface as browser mode.

Important system requirement:

  • Port 3010 is reserved by the desktop wrapper. If another process is bound to that port, desktop startup fails with a native error dialog.

Desktop workflows/docs:

  1. Desktop release workflow: .github/workflows/desktop-release.yml
  2. Desktop wrapper source: desktop/src-tauri/
  3. Desktop handoff guide: docs/release-desktop-handoff.md

Repository Contracts

  1. Runtime HTTP snapshot: contracts/runtime-http.openapi.v0.yaml
  2. Workbench API OpenAPI: contracts/workbench-api.openapi.v1.yaml
  3. Handoff/control baselines: docs/contracts/*.md
  4. Runtime config schema: anolis_workbench/schemas/runtime-config.schema.json
  5. Machine profile schema: anolis_workbench/schemas/machine-profile.schema.json

Handoff Docs

  1. Commissioning handoff runbook: docs/commissioning-handoff-runbook.md
  2. Handoff package v1 format: docs/contracts/handoff-package-v1.md
  3. PyPI/OIDC release handoff: docs/release-pypi-handoff.md
  4. Desktop release handoff: docs/release-desktop-handoff.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anolis_workbench-0.11.7.tar.gz (455.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anolis_workbench-0.11.7-py3-none-any.whl (138.2 kB view details)

Uploaded Python 3

File details

Details for the file anolis_workbench-0.11.7.tar.gz.

File metadata

  • Download URL: anolis_workbench-0.11.7.tar.gz
  • Upload date:
  • Size: 455.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for anolis_workbench-0.11.7.tar.gz
Algorithm Hash digest
SHA256 d79e1f44099d3d68f362ad6290f20a727310077366116aee97a46c4fddfff5f9
MD5 8a9a114daa8e60484e6a067e338a67da
BLAKE2b-256 60f7588718763db6b438128d483a9b9fd781f147f38a3d4a527a29f01867e380

See more details on using hashes here.

Provenance

The following attestation bundles were made for anolis_workbench-0.11.7.tar.gz:

Publisher: release.yml on anolishq/anolis-workbench

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anolis_workbench-0.11.7-py3-none-any.whl.

File metadata

File hashes

Hashes for anolis_workbench-0.11.7-py3-none-any.whl
Algorithm Hash digest
SHA256 122e1aacefe0b70a95f99a8e6aac90c3e768a7cd855ffe98b73d0d6802504b85
MD5 dc3047203ba01d255a763f6a3664968e
BLAKE2b-256 1f1fed4d07c6569f57f2584c1f241175aac34ad4499841c2ed92e60c9e9cdb8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for anolis_workbench-0.11.7-py3-none-any.whl:

Publisher: release.yml on anolishq/anolis-workbench

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page