Rigma
Hardware-aware local LLM deployment for consumer machines: rigma up probes your GPU/RAM,
picks the community-verified best model + quant + flag combo for your exact hardware,
downloads a pinned llama.cpp build and the model, and serves an OpenAI-compatible endpoint —
no knob-mashing required.
Unlike generic runners, Rigma applies the tuning that actually matters per machine:
MoE expert offload (--n-cpu-moe) sized to your RAM, architecture-aware KV-cache policies
(e.g. q8_0 K-cache floor on DeltaNet-family models), backend selection per GPU generation
(e.g. Vulkan over ROCm on RDNA4), flash attention, and session persistence
(--slot-save-path) on by default. Every decision is auditable: rigma plan --explain
shows the arithmetic and sources.
Quickstart (pre-alpha)
pip install rigma
rigma up # probes your machine, downloads the best model, opens the chat UI
That's it — a browser tab opens with a chat connected to your tuned local model, and any
OpenAI-compatible tool can use http://127.0.0.1:11500/v1.
Chats persist server-side across restarts — the browser UI lists past sessions in a rail, renders markdown (fenced code, copy button), and supports regenerate / edit-last. Each session carries its own system prompt (registry ships sensible defaults per use case — general, creative, coding — so creative-writing models stay in character from the first message) and a per-session "use my documents" RAG toggle with inline citations.
Commands
| Command | What it does |
|---|---|
rigma up |
Start everything; opens the chat UI in your browser |
rigma chat |
Chat with the running model in the terminal; --session <id> resumes a session started in the browser UI |
rigma status |
What's running, where |
rigma stop |
Stop the model server and UI |
rigma models |
What fits your machine |
rigma plan --explain |
What up would run, with the math |
rigma doctor |
What Rigma detects on this machine |
rigma update |
Pull the latest community combo registry |
rigma bench |
Measure real speed; --evidence FILE exports registry-format proof |
rigma rag add PATH |
Index a folder into your local knowledge base (Raggity sidecar) |
rigma rag ask "..." |
Answer grounded in your documents, with citations, via your tuned model |
rigma up flags: --use-case coding · --model SLUG · --port 11500 · --no-browser ·
--turbo (fast download, may hog your bandwidth) · --yes · --dry-run
Status
Pre-alpha (M5). rigma bench records machine-local calibration that outranks registry
combos on your machine, and a failed launch automatically falls back (smaller quant →
CPU floor) with each step explained. Combos come in two grades: verified (benchmarked on real hardware,
evidence attached) and provisional (research-seeded fit math — run one and PR your
numbers to rigma-registry). Verified so far:
| Hardware | Model | Backend | Result |
|---|---|---|---|
| RX 9070 XT 16GB + 16GB RAM (Windows) | Qwen3.6-35B-A3B UD-Q3_K_XL, ctx 32K, n_cpu_moe 10 | Vulkan (llama.cpp b9867) | verified 2026-07-06: 57.1 t/s gen, 689 t/s prefill @ 4K prompt |
Methods (set a chat up for the work, then automate it)
A Method configures a whole activity in one click — system prompt, sampler profile, thinking effort, tool posture and a Notes template — and then goes further: it carries rules, macros and workflows you can author yourself.
Six ship built in: Coding, Writing a book, Roleplay, Research, Learning, Organizing files.
- Macro — a button above the message box. Finish chapter summarises the chapter into your story bible and opens the next one.
- Rule — either standing guidance folded into the system prompt, or a trigger that fires on its own (after a chapter file changes, remind me to update the bible).
- Workflow — a named multi-step sequence.
All three are the same thing underneath: a step list. A step is one of
tool, prompt, settings, note or new_chat, and steps can carry
placeholders — {{var}}, {{last_reply}}, {{step:0}}, {{ask:Label}},
{{transcript}}, {{title_next}}, {{selection}}.
Make your own: hit + Create method in the Methods panel. That opens a chat where the model has only the method-building tools, so it can do nothing but help you build one — it asks a question, calls a tool, and the method takes shape beside the chat as it goes. Hit Save method when you like it.
Safety. A macro that only reads runs straight away. Anything that writes, moves, runs a command, or lets the model loose with its tools asks first, with a one-line preview naming the real files — Finish chapter: will run write_file on story_bible.md. Choose Always allow and it stops asking for that macro. That choice is stored on your machine and is never part of a shared method.
Sharing. A method is a JSON file in ~/.rigma/methods/. Export it, send
it, import theirs. Importing never overwrites one of yours and never carries
someone else's "always allow".
Skills (instructions you pull in mid-chat)
A Skill is a block of instructions you write once and drop into any chat by
typing /name — no method to apply, no settings to change. Where a Method
configures a whole activity, a Skill is a single reusable briefing: house style,
a checklist, the shape of a file format you keep explaining.
/wildcard write me three variants
The skill's text goes in front of your ask for that turn only. Manage them in
the Skills panel, or write them by hand: each one is a .md file in
~/.rigma/skills/, so they live in your editor and your git repo like anything
else. /skill:name works too, and a message that merely starts with a slash and
names no skill — a path, a lone / — is sent exactly as you typed it.
In the chat
- Type ahead. Send a follow-up while a reply is still streaming and it queues; the model starts on it the moment the current turn ends. The queue is in memory, so it never survives a restart — a prompt waiting behind a generation stops meaning anything once the server is gone.
- Stop keeps what you got. Stopping a reply aborts the request and keeps the text already on screen, marked as a partial, instead of discarding it.
RAG (chat with your documents)
Rigma pairs with Raggity (AGPL-3.0, runs as a separate
low-RAM process — ~300 MB) for grounded, cited answers from your own files through your tuned
local model: pip install raggity[server], then rigma rag add <folder> and
rigma rag ask "...". If raggity isn't on PATH, point RIGMA_RAGGITY_CMD at it.
License: Apache-2.0.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rigma-0.9.0.tar.gz.
File metadata
- Download URL: rigma-0.9.0.tar.gz
- Upload date:
- Size: 670.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c20a24da84677fec8223590d7f8fb434c792e99c4cef54998c6ec390ab6d98e5
|
|
| MD5 |
bf4542412d6e496456d715278ccb8aca
|
|
| BLAKE2b-256 |
581e49d72e3d73de6a91e61b6864e6e259730b5c34039198244676985f5677a7
|
Provenance
The following attestation bundles were made for rigma-0.9.0.tar.gz:
Publisher:
publish.yml on IxMxAMAR/rigma
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rigma-0.9.0.tar.gz -
Subject digest:
c20a24da84677fec8223590d7f8fb434c792e99c4cef54998c6ec390ab6d98e5 - Sigstore transparency entry: 2289629542
- Sigstore integration time:
-
Permalink:
IxMxAMAR/rigma@a67abccc9691dec4cce23867f2f6e81fe9150297 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/IxMxAMAR
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a67abccc9691dec4cce23867f2f6e81fe9150297 -
Trigger Event:
release
-
Statement type:
File details
Details for the file rigma-0.9.0-py3-none-any.whl.
File metadata
- Download URL: rigma-0.9.0-py3-none-any.whl
- Upload date:
- Size: 422.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dad188c192424bf7e03c182b10a830ec003d40f8ade41df32b8767ccc5474397
|
|
| MD5 |
c80058d2cf9a10d12012df4a17712222
|
|
| BLAKE2b-256 |
7a220db0c462d4207671f6759c0076132d68be60b4581b5da592db42c23c4514
|
Provenance
The following attestation bundles were made for rigma-0.9.0-py3-none-any.whl:
Publisher:
publish.yml on IxMxAMAR/rigma
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rigma-0.9.0-py3-none-any.whl -
Subject digest:
dad188c192424bf7e03c182b10a830ec003d40f8ade41df32b8767ccc5474397 - Sigstore transparency entry: 2289629559
- Sigstore integration time:
-
Permalink:
IxMxAMAR/rigma@a67abccc9691dec4cce23867f2f6e81fe9150297 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/IxMxAMAR
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a67abccc9691dec4cce23867f2f6e81fe9150297 -
Trigger Event:
release
-
Statement type: