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

Uploaded Python 3

File details

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

File metadata

  • Download URL: anolis_workbench-0.11.2.tar.gz
  • Upload date:
  • Size: 384.9 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.2.tar.gz
Algorithm Hash digest
SHA256 12f86eac6edf294fdd928dd0ea684b9bff33b9f32414348c29b74994ddd4beaa
MD5 d3545cbedcaa961554abc33fe574b0a9
BLAKE2b-256 0c673c71f237b2da0c0a3a8fa9ac393c4bcc5cf77545c4fbc58b7cf32015a091

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for anolis_workbench-0.11.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c47540ff821f2954e9492c79ad87962983fd66ee91cb453ab31f899e5d694ee6
MD5 b044ae861e713e33bc2824d2c8bb3a26
BLAKE2b-256 cad895ac343060df0f3da795e3ce6342796aaf3092c28fcd6c28abece6152995

See more details on using hashes here.

Provenance

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