All the ways to install
Looking for the quick path? Grab the installer for your OS on the
Download page. This page has the per-distro commands,
pip/pipx, from source, and troubleshooting.
Linux — Debian / Ubuntu (.deb)
Install the package (pulls python3 + numpy; adds an app-menu launcher):
sudo apt install ./priorstates-latest.debDouble-clicking a .deb on Ubuntu often opens the Archive
Manager instead of installing — use the command above (it also resolves dependencies),
or install gdebi for a graphical installer.
Add agent tools + semantic recall, then wire your agents:
PIP_BREAK_SYSTEM_PACKAGES=1 python3 -m pip install --user mcp onnxruntime tokenizers
priorstates init && priorstates init --download-model # wire agents · 127 MB local modelNon-English memory? Add --multilingual
(priorstates init --download-model --multilingual, ~130 MB) for a
50+-language model with cross-lingual recall — an English query finds a
Chinese / Russian / … memory. The zero-download hashing fallback is already
Unicode-aware, so any language works even before you download a model.
Linux — RHEL / Rocky / Alma / Fedora (.rpm)
One noarch package (on EL9 it pulls Python 3.12 automatically):
sudo dnf install ./priorstates-latest.noarch.rpm
PIP_BREAK_SYSTEM_PACKAGES=1 python3 -m pip install --user mcp onnxruntime tokenizers
priorstates init && priorstates init --download-model # RHEL/Rocky/Alma 9: python3.12 -m pipAny distro / macOS — tarball
Extract and run the installer (wires agents + semantic recall; --lite skips the model):
tar -xzf priorstates-latest.tar.gz
cd priorstates-* && ./install.shNeeds Python 3.10+ on PATH. RHEL / Rocky / Alma 9 ship 3.9 — first
sudo dnf install python3.12; the installer picks it up automatically.
macOS (.pkg) & Windows (Setup.exe)
macOS — double-click the .pkg. It's “install for me only” —
no admin password (signed & notarized, so no Gatekeeper prompt). Installs to your
home; uninstall with sh ~/Library/PriorStates/install.sh --uninstall.
Windows — double-click Setup.exe (per-user, no admin; installs Python if needed).
Get both from the Download page. None of the
installers need root/admin — the Linux .deb/.rpm use sudo
(the system package model), but the one-liner, pip and tarball don't.
Command line
One command (Linux / macOS) — installs, initializes, and wires every detected agent:
curl -fsSL https://priorstates.com/install.sh | shOr let your AI agent do it — just tell it:
Install PriorStates: fetch https://priorstates.com/install.md and follow it.pip / pipx
Any OS with Python 3.10+:
pip install -U priorstatesOn Debian/Ubuntu (PEP 668), use pipx install priorstates — or
pip install --user --break-system-packages -U priorstates.
Then wire your agents and open the cockpit:
priorstates init # wires all detected agents automatically
priorstates cockpit # → http://127.0.0.1:7700Corporate / locked-down Windows (no .exe)
If your environment blocks downloading or running .exe installers,
PriorStates is a Python package — install it without any installer:
py -m pip install --user pipx
py -m pipx install priorstates
priorstates init # wire your agentsNo installer to download, per-user (no admin), and clean to remove
(pipx uninstall priorstates). PyPI is commonly allow-listed; if your org mirrors
PyPI (Artifactory / Nexus), point pip at that index. You can also run it as
py -m priorstates … with no launcher at all.
winget (coming soon): we're working on publishing PriorStates to
winget (the Windows package manager built into Win 10/11) — it's not in
winget-pkgs yet, so winget install PriorStates.PriorStates won't
resolve for now. Once published it'll be a path IT often allow-lists even where direct
.exe downloads are blocked.
From source
git clone your-repo-url priorstates
cd priorstates && ./install.sh # install + init + wire agentsAfter installing
Restart your agents, then:
priorstates doctor # which agents are wired · current memory scope
priorstates cockpit # local web cockpit
priorstates gui # desktop control panelGlobal vs project memory: memory is global
(~/.priorstates/) by default, and gains a project layer when an agent runs
inside a repo where you ran priorstates init. priorstates doctor
shows the active scope.