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.5.tar.gz (453.8 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.5-py3-none-any.whl (137.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: anolis_workbench-0.11.5.tar.gz
  • Upload date:
  • Size: 453.8 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.5.tar.gz
Algorithm Hash digest
SHA256 88e60d5205650fd92e2b979791cf55f33ea7f29283c6d4663cfc91295453c402
MD5 bd119ac134e7676769f2016fd4f5bfa0
BLAKE2b-256 db2004a0e250091c653d40d70171ffc422cb537b1f640c8a730cfe09f757b54a

See more details on using hashes here.

Provenance

The following attestation bundles were made for anolis_workbench-0.11.5.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.5-py3-none-any.whl.

File metadata

File hashes

Hashes for anolis_workbench-0.11.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f250712714182397ac83b005fab1fa5e6db55b8ccd81b108adc06c9663a24ed1
MD5 f263f49cf9e601d0afebadb46f0cf3ef
BLAKE2b-256 8318e1cc72c0ed954e7653b716fc42979d704f0b5424b48d88caabaf8ab6fb63

See more details on using hashes here.

Provenance

The following attestation bundles were made for anolis_workbench-0.11.5-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