This release is a pre-release and may not be stable for production use.
Know your model, your data, and your machine before you spend a single GPU hour.
Quick start · Install · Commands · Website · Contributing
Sample output. Plans and estimates are not benchmark results. See the Web UI below.
What is AXIOM?
AXIOM is a local-first CLI for answering the questions that come before a local AI job:
- What is in this model directory?
- Is this JSONL dataset structurally usable?
- What hardware is available on this machine?
- What is a reasonable starting plan?
It inspects local files, keeps small amounts of project metadata, reports what is available on the current machine, and suggests the next command. The terminal is the product. The optional daemon exposes the same local context as small JSON responses on a loopback address.
Project configuration lives in axiom.yaml; the local model registry lives in
.axiom. Core inspection and planning do not require an AXIOM account.
AXIOM does not execute training, run model inference, or provide a hosted workspace. Estimates and plans are labeled as estimates and plans.
What is new in v0.3.0-beta.1
- Version bumped to
v0.3.0-beta.1across the package, badges, and docs. - Refreshed README with an animated banner and a terminal walkthrough.
- Step-by-step quick start and a first-10-minutes guide below.
🚀 Quick start
Do these in order. Each step is one command.
-
Install AXIOM (see Install), then confirm it works:
axiom version -
Get oriented. None of these start the daemon:
axiom --help axiom guide axiom summary
-
Create a project and check it:
axiom init my-ai cd my-ai axiom project validate axiom config validate
-
Look at your machine:
axiom system info
-
Get a starting plan for a 7B model:
axiom train plan 7 --method qlora
Want the interactive mode? Run bare axiom. In an interactive terminal it
prints the startup mark once per session, shows the useful command path,
starts the local daemon on a free port, and stays attached until Ctrl-C.
🧭 First 10 minutes
Pick the path that matches what you have in front of you.
| I have... | Run this | You get |
|---|---|---|
| A local model folder | axiom model inspect ./models/my-model |
Format, files, architecture hints, weight size, conservative fit info. |
| A model name on Hugging Face | axiom model info org/model |
Published metadata without downloading weights. Needs network. |
| A JSONL dataset | axiom dataset validate ./data/train.jsonl |
Invalid records and duplicates; exits non-zero if records are invalid. |
| A dataset I want sized up | axiom dataset stats ./data/train.jsonl |
Record, field, and rough token counts. |
| A messy dataset | axiom dataset clean ./data/train.jsonl ./data/train.cleaned.jsonl |
A new cleaned file; the source is left unchanged. |
| A new machine | axiom system info |
OS, architecture, CPU, RAM, GPU, VRAM, CUDA availability. |
| A plan to make | axiom train plan 7 --method qlora |
Hardware-aware starting plan. It does not start training. |
| Some dev tools installed | axiom tools doctor |
Executable and credential-reference presence, not vendor login state. |
📦 Install
Debian / Ubuntu / Linux Mint (APT, amd64)
AXIOM publishes a signed APT repository alongside the project website. Add its public key and repository, then install the axiom-ai package:
curl -fsSLo /tmp/axiom-archive-keyring.gpg https://netcore-technologies.github.io/AXIOM-AI/apt/axiom-archive-keyring.gpg
sudo install -Dm0644 /tmp/axiom-archive-keyring.gpg /usr/share/keyrings/axiom-archive-keyring.gpg
echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/axiom-archive-keyring.gpg] https://netcore-technologies.github.io/AXIOM-AI/apt stable main' | sudo tee /etc/apt/sources.list.d/axiom.list
sudo apt update
sudo apt install axiom-ai
The APT package currently targets 64-bit Intel/AMD (amd64). The repository metadata and release signature are verified by APT using the dedicated public keyring.
PyPI
The beta package installs the axiom command from PyPI:
python -m pip install --upgrade --pre axiom-all
axiom version
axiom-all is the distribution name; the installed command is axiom.
Stable releases can be installed without --pre once one is published.
macOS and Linux
curl -fsSL https://raw.githubusercontent.com/NetCore-Technologies/AXIOM-AI/main/installers/install.sh | bash
axiom version
The installer puts the command in ~/.local/bin/axiom.
- Linux x86_64 uses the latest published
linux-x64tarball and verifies its entry inSHA256SUMSbefore activation. The unpacked bundle is the faster repeated-start path. - macOS and non-x86 Linux use an isolated Python environment and install from
the repository's
mainbranch. This fallback requires Python 3.11+ and is a source install, not a pinned native binary.
If ~/.local/bin is not on PATH, the installer prints the export command.
Open a new shell after adding it.
Windows PowerShell
irm https://raw.githubusercontent.com/NetCore-Technologies/AXIOM-AI/main/installers/install.ps1 | iex
The installer downloads the latest non-draft Windows x64 release to
%LOCALAPPDATA%\AXIOM, adds that directory to the user PATH, and asks you to
restart PowerShell. Verify with:
axiom version
Check the Releases page for the exact assets and checksums available for a release.
🔌 The daemon boundary
Run the daemon by itself when a script or local integration needs HTTP:
axiom daemon --host 127.0.0.1 --port 0
Port 0 asks the operating system for an available port. AXIOM prints the
resulting loopback URL, such as http://127.0.0.1:53142. While that process is
running, the daemon provides read-only JSON routes:
GET /health
GET /api/info
GET /api/summary
GET /api/actions
GET /api/hardware
GET /api/tools
The default bind is local-only. A non-loopback bind is rejected unless
--allow-network is supplied deliberately. The daemon is not an account
service, hosted AXIOM backend, or general inference server. Stop it with
Ctrl-C.
🖥️ Web UI
The release packages and the PyPI wheel bundle the web UI. Start the daemon
(or bare axiom), then open the loopback URL it prints.
Sample data. Sizes and plans are estimates, not benchmark results.
- Quantization Lab compares FP16, INT8 and INT4 size estimates against the memory AXIOM detects, so you can see what fits before you download anything.
- Optimizer turns that into a conservative starting plan.
🛠️ Commands by job
Project and environment
axiom version
axiom guide
axiom summary
axiom summary --json
axiom info
axiom status
axiom doctor
guide explains the current directory and suggests safe next commands.
summary returns a read-only snapshot of the project, hardware, visible tools,
and one recommendation; --json is intended for scripts. doctor checks
common executables and AXIOM package metadata.
Models
axiom model list
axiom model add my-model local safetensors
axiom model inspect ./models/my-model
axiom model search llama --path models
axiom model info org/model
axiom model analyze org/model
axiom model pull org/model
The first three local commands do not need network access. Hugging Face
metadata and pull commands do; private or gated repositories also need
axiom hf login. model pull performs disk checks before downloading.
Datasets
axiom dataset inspect ./data/train.jsonl
axiom dataset validate ./data/train.jsonl
axiom dataset stats ./data/train.jsonl
axiom dataset clean ./data/train.jsonl ./data/train.cleaned.jsonl
The current dataset path supports .jsonl. Validation checks JSON objects and
duplicates; it does not establish semantic quality or training readiness.
Hardware and planning
axiom system info
axiom train plan 7 --method auto
axiom train plan 7 --method lora
axiom train plan 7 --method qlora
axiom train plan 7 --method full
axiom ai plan --model ./models/my-model
The planner uses detected hardware and conservative assumptions. Its fit and VRAM values are planning estimates, not measured speed, memory usage, or a promise that a later runtime will succeed.
Developer tools
axiom tools list
axiom tools list --json
axiom tools doctor
axiom tools plan opencode
axiom tools install opencode # preview only
axiom tools install opencode --yes # explicit package-manager install
The catalog covers Codex, Claude Code, Antigravity CLI, GitHub Copilot CLI,
Freebuff, Cursor Agent, free-pi, OpenCode, Gemini, OpenRouter, z.ai GLM, and a
keep-awake helper. tools list and tools doctor observe the current machine;
they do not prove that a vendor account is authenticated. Installation is a
preview unless --yes is supplied. AXIOM does not silently execute remote
installer scripts or store API-key values.
Headroom is a separate, optional local context-compression proxy. If it is installed independently, its own command path is:
headroom doctor
headroom proxy
headroom dashboard
AXIOM's role is limited to discovering or explaining Headroom. It does not bundle, install, start, or supervise it; only the user starts the proxy or dashboard. Do not read the integration as a promise of savings or a measured result.
MCP
Start the local stdio server from an MCP client configuration:
axiom mcp serve
It exposes local model, dataset, hardware, training-plan, and optional SuperCompress tools as a process. It is separate from the HTTP daemon.
✅ What is shipped, and what is not
Shipped in the beta
- A Python package and Typer CLI with a one-command local entry point.
- Project scaffolding, configuration checks, and local status/summary output.
- Model registration, local inspection, Hugging Face metadata analysis, and disk-checked model pulls.
- JSONL inspection, validation, duplicate detection, statistics, and cleaning.
- Hardware detection and hardware-aware LoRA, QLoRA, and full-training plans.
- A read-only loopback daemon with health, summary, action, hardware, and tool routes.
- MCP tools and an opt-in developer-tool catalog with preview-first installs.
- A static landing page that explains the terminal workflow.
Not shipped by this product boundary
- Training execution, job management, checkpoints, or experiment tracking.
- Model inference, production serving, streaming, batching, or an OpenAI-compatible server.
- Live telemetry, background monitoring, hosted workspaces, accounts, or a browser control center.
🗂️ Repository shape
axiom/
├── cli/ Typer command surface
├── core/ Project, hardware, storage, and integration helpers
├── models/ Local registry, inspection, and metadata analysis
├── datasets/ JSONL inspection and cleaning
├── training/ Hardware-aware plan generation
├── optimizer/ Agent workload plans and runtime bundles
├── runtime/ Optional runtime integrations
├── daemon.py Dependency-free loopback HTTP daemon
└── mcp/ Stdio MCP server and tools
The public website is intentionally static. Product work belongs in the CLI, local daemon, and reproducible project files.
🧱 Principles
- Local first: keep models, datasets, configuration, and first-pass decisions close to the machine that will run them.
- Evidence before execution: expose assumptions before a user spends time or compute.
- Explicit side effects: preview external tool setup and require opt-in for package installation.
- Honest boundaries: separate detections, estimates, plans, and measured results.
🤝 Contributing
AXIOM is in active beta development. Bug fixes, tests, documentation, and tooling improvements are welcome.
Read CONTRIBUTING.md before making a larger change.
📄 License
MIT. See LICENSE.
Built by Manit Arora and Rangan V Balaji.
Metadata
Release files for axiom-all 0.3.0b3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| axiom_all-0.3.0b3.tar.gz | 218.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| axiom_all-0.3.0b3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 434.6 kB
Release files / axiom_all-0.3.0b3.tar.gz
| Download URL | axiom_all-0.3.0b3.tar.gz |
|---|---|
| Size | 218.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e98703645e7a131181c0518bf7e5385d45a1279a8ef593da700f0c20f4f03d06
|
|
BLAKE2b-256 checksum How to use checksums |
f73e4ee87290fb638989062596e50b109340adcdcc40c64d307551e1b42123d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / axiom_all-0.3.0b3-py3-none-any.whl
| Download URL | axiom_all-0.3.0b3-py3-none-any.whl |
|---|---|
| Size | 216.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e9061b288b65657d1512422b77c6cce550821b11c2ccbe793a50af1081a53249
|
|
BLAKE2b-256 checksum How to use checksums |
438101d9b368f5ba8b79c13ba05275d785ec543d2ba54f62246f5bc35edd3d8d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for axiom-all 0.3.0b3
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.