Skip to main content

uvx installer for the global pyControl GUI and its workspaces.

Project description

pycontrol-init

pycontrol-init is a small uvx installer for pyControl. It installs pycontrol-gui (and the pycontrol CLI) once per machine with uv tool install, scaffolds plain-data workspace folders, and remembers the workspace so the global pycontrol-gui command opens it on the next launch.

Install uv, then install pyControl and create a workspace:

uvx --prerelease allow pycontrol-init my-workspace --launch

This:

  1. runs uv tool install pycontrol-gui into a self-contained, uv-managed environment, putting pycontrol-gui and pycontrol on your PATH,
  2. scaffolds the my-workspace data folder (no pyproject.toml, .venv, or lockfile — workspaces are pure data),
  3. remembers it as the GUI's current workspace,
  4. offers to create an OS shortcut (macOS ~/Applications, Windows Start menu, Linux application menu), and
  5. launches the GUI (--launch).

After setup, launch the GUI from anywhere with pycontrol-gui.

To initialize the current directory instead:

uvx --prerelease allow pycontrol-init . --launch

This package intentionally uses uv. Users who prefer pip can still install and run pyControl manually from a Python 3.11+ virtual environment; see the pycontrol-core getting-started guide for the pip/venv workflow.

Usage

pycontrol-init [path] [--launch] [--force] [--shortcut | --no-shortcut] [--update-gui]

path defaults to the current directory. Relative paths are resolved from the directory where the command is run. Re-running pycontrol-init is safe: the global install is refreshed (--reinstall) and workspace scaffolding is a safe merge.

Examples:

pycontrol-init
pycontrol-init my-workspace --launch
pycontrol-init ~/pycontrol-workspaces/ws1 --with-slack
pycontrol-init my-workspace --no-shortcut

Updating the GUI

uvx --prerelease allow pycontrol-init --update-gui

Reinstalls the newest pycontrol-gui, preserving integration extras recorded in the uv tool receipt. (uv tool upgrade pycontrol-gui also works once stable releases exist; the --update-gui path guarantees prerelease resolution while pyControl is in alpha.)

Integration helpers

Optional integration dependencies are installed into the global tool environment:

pycontrol-init my-workspace --with-slack
pycontrol-init my-workspace --with-notion
pycontrol-init my-workspace --with-s3
pycontrol-init my-workspace --with-integrations

To add an integration to an existing install without touching any workspace, combine it with --update-gui:

uvx --prerelease allow pycontrol-init --update-gui --with-slack

Release smoke tests

Package indexes can be overridden:

pycontrol-init test-workspace \
  --index-url https://test.pypi.org/simple/ \
  --extra-index-url https://pypi.org/simple/

Development

uv sync --group dev
uv run pytest
uv run ruff check src tests

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

pycontrol_init-0.1.0a2.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

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

pycontrol_init-0.1.0a2-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file pycontrol_init-0.1.0a2.tar.gz.

File metadata

  • Download URL: pycontrol_init-0.1.0a2.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pycontrol_init-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 cc20b5756ee2dd70ec455bc6d6a28c1384b1522c588d381ff07e8dcde0d17bfe
MD5 d7af2afee9bfcbc4cd92b563f11105c2
BLAKE2b-256 c55c9ac2e014808a958b8957790b2d7393bf1bfb1362bb7ca1a15824bea3cb97

See more details on using hashes here.

File details

Details for the file pycontrol_init-0.1.0a2-py3-none-any.whl.

File metadata

File hashes

Hashes for pycontrol_init-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 db89a7e69c587f0509c248f4cd27b9882cc3314914b95537ab16c2eb8a2dff0e
MD5 f2a11cc06660ed530e548ddd3d23d29e
BLAKE2b-256 927bf6984943cd3c1d54f0e79aacc36b3ee9c3faaf236572c5ce500fb10aa7fb

See more details on using hashes here.

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