Skip to main content

unitport — UnitPort local helper

Headless daemon that connects a local GPU / Isaac Lab host (workstation or the user's own cloud server) to the UnitPort cloud canvas. The canvas is the remote control (遥控器); this process has no GUI — only terminal output.

Authoritative design: ../knowledges/local_helper_design.md (rulings LH-D1…LH-D6, contracts C10 pairing / C11 control protocol).

What it is (and is not)

  • Is: an outbound-only WebSocket agent exposing a fixed verb set to the cloud (report capabilities, publish an asset index, receive a bundle from the user's own canvas, start/stop a training run, stream telemetry).
  • Is not: a shell, an exec server, or a GUI. The cloud can never send an arbitrary command — only the fixed verbs, only from a paired session of the same account, only bundles that originate from the user's own canvas (least-privilege red line, LH-D4 / C11).

The same binary serves execution target ① (UserServerTarget, user cloud server) and ③ (LocalHelperTarget, local host) — only the host differs (LH-D5).

Install

pip install unitport

Cross-platform (Windows + Linux). Runtime deps: websockets (the live link) and, on Python < 3.11, tomli (TOML reader). Everything else is stdlib.

CLI (headless — everything else is driven remotely from the canvas)

Command Purpose
unitport login Browser-approve device pairing; stores a refreshable helper token
unitport up (serve) Dial out to the cloud relay and serve the fixed verb set
unitport status Connection / run state, paired account, config summary
unitport config Declare Isaac/MuJoCo interpreter paths + resource roots
unitport doctor Fail-loud self-check (interpreters, deps, cloud, token)

There are deliberately no pull / train / push local subcommands — those are remote verbs, triggered from the canvas (C11 §4).

Config

  • Config dir: %APPDATA%\unitport\ (Windows) · $XDG_CONFIG_HOME/unitport/ or ~/.config/unitport/ (POSIX). Override with UNITPORT_HOME.
  • config.toml — cloud base URL, engine interpreter paths, resource_roots, workspace dir. Human-editable; also managed by unitport config.
  • token.json — the helper token (secret; chmod 600 on POSIX). Never printed, never logged.
  • device.json — the persistent (non-secret) device_id.

Status

Under active construction (phases LH-P1…LH-P8, Isaac Lab first). See the design doc §12 for the phase map. This tree currently implements the local foundation (config, capability detection, doctor, CLI) plus the pairing/transport clients; the workers/relay Durable Object cloud side lives in ../workers/relay.

Download files

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

Source Distribution

unitport-0.0.43.tar.gz (519.2 kB view details)

Uploaded Source

Built Distribution

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

unitport-0.0.43-py3-none-any.whl (504.5 kB view details)

Uploaded Python 3

File details

Details for the file unitport-0.0.43.tar.gz.

File metadata

  • Download URL: unitport-0.0.43.tar.gz
  • Upload date:
  • Size: 519.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for unitport-0.0.43.tar.gz
Algorithm Hash digest
SHA256 f91d14a6d3b50df0883530f6f7528061dfd4d0e1c1aa871d8a75da196ebeec89
MD5 a42a00a755db2c160f449e569dc8a68b
BLAKE2b-256 61dc100f4cf5629c0f0a7d104bf6af6748f9e98ed2a3822081163d437ca8da5a

See more details on using hashes here.

File details

Details for the file unitport-0.0.43-py3-none-any.whl.

File metadata

  • Download URL: unitport-0.0.43-py3-none-any.whl
  • Upload date:
  • Size: 504.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for unitport-0.0.43-py3-none-any.whl
Algorithm Hash digest
SHA256 126e8939a540a7af31124a6ca1a0fcacf5cf6ca5846edf65b4d7e4ba3b3b4cd3
MD5 cf2e88a0464cbd44f73b1154ca2996db
BLAKE2b-256 fe204f84d94a8c793d6ff9d0d8932dc1834a47ee99359e3a9cf0b7cd03dfb4bf

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.68

2 files

0.0.64

2 files

0.0.63

2 files

0.0.61

2 files

0.0.58

2 files

0.0.56

2 files

0.0.55

2 files

0.0.53

2 files

0.0.51

2 files

0.0.49

2 files

0.0.46

2 files

0.0.45

2 files

0.0.44

2 files

This release

0.0.43 This release

2 files

0.0.42

2 files

0.0.41

2 files

0.0.40

2 files

0.0.39

2 files

0.0.38

2 files

0.0.36

2 files

0.0.35

2 files

0.0.34

2 files

0.0.33

2 files

0.0.32

2 files

0.0.31

2 files

0.0.30

2 files

0.0.29

2 files

0.0.25

2 files

0.0.24

2 files

0.0.23

2 files

0.0.22

2 files

0.0.21

2 files

0.0.20

2 files

0.0.17

2 files

0.0.14

2 files

0.0.13

2 files

0.0.12

2 files

0.0.11

2 files

0.0.10

2 files

0.0.8

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page