Installation
Prerequisites
- Python 3.10+
piporuv
Install
- pip
- uv
pip install skylos
uv pip install skylos
Install optional LLM-powered agent workflows:
pip install "skylos[llm]"
Install all published optional extras:
pip install "skylos[all]"
The published extras are defined in the Skylos pyproject.toml. At the time of
writing they are web, llm, test, and all.
Container Image
Skylos publishes a first-party multi-arch CLI image to GHCR:
docker pull ghcr.io/duriantaco/skylos:latest
Run a scan against the current repository:
docker run --rm \
-v "$PWD":/work \
-w /work \
ghcr.io/duriantaco/skylos:latest \
. --json --no-provenance
For CI, prefer a pinned release tag instead of latest.
Initialization
Run the init command to create a default configuration in your project root.
skylos init
This will create or append to your pyproject.toml file.
Configuration
Skylos uses standard pyproject.toml configuration. You can tune complexity thresholds and ignore specific rules.
[tool.skylos]
# Analysis Settings
complexity = 15 # Max Cyclomatic complexity (Default: 10)
nesting = 5 # Max indentation depth (Default: 3)
max_args = 5 # Max arguments per function
max_lines = 100 # Max lines per function
ignore = ["SKY-L002"] # List of Rule IDs to ignore
# Gatekeeper Settings (skylos --gate)
[tool.skylos.gate]
fail_on_critical = true
max_security = 0
max_quality = 10
strict = false # Set true to disable interactive bypass in CI
Verify Installation
Run a scan on your current directory to verify everything is working.
skylos --version