Azure Jobs
aj is a daemon-backed CLI, TUI, and Python SDK for submitting jobs to Azure
Machine Learning, native Singularity, and Kubernetes Volcano. Cloud job
management applies to AML/Sing workspace jobs; Volcano currently supports
submission only.
Azure operations run only in the local daemon. Clients use HTTP over a private Unix domain socket; there is no in-process fallback.
Install
uv tool install azure-jobs
command -v aj || uv tool update-shell
az login
aj auth status
Python 3.10+ is required. Volcano also requires kubectl; aj run --amlt
requires amlt.
Optional Agent Skill integration:
aj skill install # Copilot, Codex, and Claude Code
aj skill status
Kubernetes/Volcano client setup and task management:
aj k install # one-time kubectl/Krew/OIDC installation
aj k login # kubeconfig merge + OIDC authentication
aj k status
aj k jobs
Quickstart
mkdir training && cd training
aj init # pull templates, choose workspace, set experiment
aj template list
aj run -t <template> -d -n 1 -p 1 python -c "print('hello')"
aj run -t <template> -n 1 -p 1 python -c "print('hello')"
aj job list
aj job logs <job-or-aj-id>
aj dash
Use aj ws set plus a hand-written .azure_jobs/template/*.yaml file instead
of aj init when no shared template repository is available.
AML and Singularity submissions require that workspace selection; Volcano
submissions use Kubernetes context from the template or kubeconfig and do not.
Core features
- YAML templates with recursive
baseinheritance and explicit merge rules. - Native AML/Sing submission through Azure REST, with one deterministic, content-addressed code archive.
- Automatic Singularity VC selection from exact hardware requirements and current quota.
- Volcano submission with PVC/
kubectl execor Blob archive code transfer. - Persistent submit queue, job watches, HTTP Range logs, local records, and TUI.
- OpenAI-style SDK namespaces such as
d.job.list()andd.ws(name).ds.list(). - Managed Agent Skill installation for Copilot, Codex, and Claude Code.
- Kubernetes OIDC client setup and narrow Volcano job/pod/log management.
amltcompatibility throughaj run --amlt.
Start with the documentation, especially Getting started and Templates.
Development
uv sync --dev
uv run pytest -q
uv run mkdocs build --strict
See Development and Testing.
Metadata
Release files for azure-jobs 0.6.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| azure_jobs-0.6.3.tar.gz | 1.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| azure_jobs-0.6.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.7 MB
Release files / azure_jobs-0.6.3.tar.gz
| Download URL | azure_jobs-0.6.3.tar.gz |
|---|---|
| Size | 1.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e749a8e3d8b29613a49ef8ab30f48590e468f55f2d0a076b822d151d4c65bb7d
|
|
BLAKE2b-256 checksum How to use checksums |
4203d89ccce7dab2965b464461219cf0a34b1a24acc012273f3c52f85a1af19e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logRelease files / azure_jobs-0.6.3-py3-none-any.whl
| Download URL | azure_jobs-0.6.3-py3-none-any.whl |
|---|---|
| Size | 379.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
daf0faaf8caf457dd2d702c2852cecdc3246921b94f127c5cb7fd4b6a6d9d4a6
|
|
BLAKE2b-256 checksum How to use checksums |
ac9f7be116d8fe615d1a61bdc6952afafb49b395ecce52b4d2834c0f9355eae2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency log