Skip to main content

Instalador universal e biblioteca CLI para ferramentas Python, Rust e Bun

Project description

Clified

Universal installer and CLI library for Python, Rust, and Bun tools.

Published on PyPI · GitHub

Português: README_PT.md

What it is

Clified splits two responsibilities:

Piece Where it lives Role
Engine clified package (PyPI) venvs, wrappers, Rust/Bun builds, hooks
Registry tools.yaml in each repo What to install, code location, post-steps

Each project ships its own install.sh, sets CLIFIED_TOOLS to the local tools.yaml, and installs Clified via pip on first run. You do not need to clone the Clified repository.

Quick start

pip install --user clified
# or: pipx install clified

git clone https://github.com/your-org/my-cli.git
cd my-cli
./install.sh
my-cli --help

Documentation

Guide Contents
Getting started Installation, clean-machine flow, install.sh
Architecture Engine, YAML, venvs, and wrappers
tools.yaml reference Fields, Python/Rust/Bun types, examples
Hooks post_install, built-in hooks, local hooks
Migrating a project denv / pc / GameDev / ai2print walkthrough
CLI library OutputFormatter, retry, patterns, Click
Troubleshooting PEP 668, wrong Python on PATH, MCP
Development Tests, PyPI release, contributing

Main commands

clified-install --list              # tools in the active tools.yaml
clified-install denv                # install one tool
clified-install denv --action update # refresh deps reusing the existing venv
clified-install denv --action reinstall --force
clified-install all                 # all tools (respects install_order)
clified-install --doctor            # health report for every tool
clified-install --doctor --fix      # + remove CLI wrappers shadowed on PATH

Diagnostics (--doctor)

clified-install --doctor reports, per tool, whether the venv exists and runs a supported Python, whether the CLI wrapper is installed and actually wins on PATH, and which build backends (uv/cargo/bun/git) are present. Add --fix to delete stale wrappers that shadow the canonical one, or --json for machine-readable output. Pass a tool name to scope it to one tool.

Python version selection

Clified honours each tool's requires-python (read from its pyproject.toml) in addition to min_python in tools.yaml: it keeps the tighter floor and the lower ceiling, so a tool capped at <3.14 never lands on a newer interpreter than it supports — uv provisions the right version automatically.

Monorepo file: dependencies

A relative file: dependency (e.g. gamedev-shared @ file:../Shared) is invalid PEP 508 and breaks uv's editable build. Clified absolutises such URLs for the duration of the build and restores pyproject.toml afterwards, so shared-package monorepos install cleanly without per-tool workarounds.

Projects using Clified

CLI Repository Type
denv LocatelliDockerManager Python
pc ProjetoCursor Python
text2d, materialize, … GameDev Python / Rust / Bun
ai2print ai2print Rust + Python (hook)

License

MIT — see LICENSE.

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

clified-0.5.0.tar.gz (61.7 kB view details)

Uploaded Source

Built Distribution

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

clified-0.5.0-py3-none-any.whl (66.9 kB view details)

Uploaded Python 3

File details

Details for the file clified-0.5.0.tar.gz.

File metadata

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

File hashes

Hashes for clified-0.5.0.tar.gz
Algorithm Hash digest
SHA256 bbe1be3a45e312006da9c44cbb8c28301190d1f633d71d7a028f0e14d96eee3e
MD5 62e845ac8ff7d3291f7185685b98f543
BLAKE2b-256 71e64a64b09c9cffce35da07b454aba6999f5aceacd6a5c40013d0b6246e9db8

See more details on using hashes here.

Provenance

The following attestation bundles were made for clified-0.5.0.tar.gz:

Publisher: publish.yml on maikramer/clified

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

File details

Details for the file clified-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: clified-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 66.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for clified-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3dabdbc32f58ae848661f54f4d1c5fd9dd157586cef2dd07863d839b81c823cf
MD5 2d92a87daadc287495fc0c7bcac28104
BLAKE2b-256 088f80dbd0feca3f0129ca17bd64a7a0398c70b92a295ac1fe932546ea93928b

See more details on using hashes here.

Provenance

The following attestation bundles were made for clified-0.5.0-py3-none-any.whl:

Publisher: publish.yml on maikramer/clified

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