Mirror of the public Nokido wiki (source of truth: https://github.com/Nokido-labs/nokido/wiki/01-Installation). Edits belong there.
Updated: 2026-09-29
Nokido runs on Windows · macOS · Linux. Three install paths : Docker
(easiest), native (full control), pip extras (library use).
[ml] extras = torch/jax)Best for a one-shot, isolated install.
git clone https://github.com/Nokido-labs/nokido.git
cd nokido
cp Nokido.env.example Nokido.env
# Minimal profile : hub + ollama only
docker compose -f docker/nokido/docker-compose.yml --profile core up -d
# Pull a model into ollama
docker exec laforge-ollama ollama pull qwen2.5-coder:latest
# Sanity check
curl http://localhost:8766/health
| Profile | What it brings up | Image size |
|---|---|---|
core |
ollama + hub | ~1 GB |
full |
+ deno-webhub (event bus) + brain-worker (embeddings) | ~2.5 GB |
all |
+ netcfg-agent + searxng | ~3.5 GB |
dev |
+ adminer (DB browse) | +50 MB |
Combine : --profile core --profile dev.
Smaller images for restricted use cases. Build with BUILD_VARIANT :
BUILD_VARIANT=core docker compose -f docker/nokido/docker-compose.yml build laforge-hub
| VARIANT | Includes | Image size |
|---|---|---|
core |
client SDK only | ~80 MB |
hub |
hub + RAG + LLM router (default) | ~450 MB |
full |
+ UI + Docker + cloud clients | ~900 MB |
all |
+ ML (torch, jax, semgrep) | ~5 GB |
git clone https://github.com/Nokido-labs/nokido.git
cd nokido
# Default install (hub + rag + llm + docs)
bash install.sh
# Other extras
EXTRAS=full bash install.sh
EXTRAS=core bash install.sh
EXTRAS=all bash install.sh # heavy: torch + jax
install.sh does :
python3.14, python3.13, python3.12, python3, python..venv/.pip install -e ".[$EXTRAS]".keyring for the vault backend on macOS/Linux.Nokido.env with a random token.libsecret install if missing on Linux.WITH_SANDBOX_USERS=1, with sudo) Provisions the laforge-sandbox-online andlaforge-sandbox-offline users, the laforge-trusted group, and an outbound block forActivate the venv :
source .venv/bin/activate
git clone https://github.com/Nokido-labs/nokido.git
cd nokido
.\install.ps1 # detects miniforge3 ; -ML for ML/embeddings extras
The Windows install registers Nokido as NSSM services (LaForge-Master, LaForgeMCP, etc.).
Nokido is published as nokido-agent with 17 modular extras (Python >= 3.12).
# Core SDK only (~10 MB) : you just want to talk to a running hub
pip install "nokido-agent @ git+https://github.com/Nokido-labs/nokido.git"
# Hub serveur + RAG + LLM router
pip install "nokido-agent[hub,rag,llm,docs] @ git+https://github.com/Nokido-labs/nokido.git"
# Pipx isolation (recommended for CLI usage)
pipx install "nokido-agent[hub,llm] @ git+https://github.com/Nokido-labs/nokido.git"
# Everything (heavy: ~5 GB with torch/jax)
pip install "nokido-agent[all] @ git+https://github.com/Nokido-labs/nokido.git"
| Extra | Adds | Size |
|---|---|---|
| (core) | Client/SDK minimum | ~10 MB |
hub |
FastAPI/Starlette server + MCP | +80 MB |
rag |
FAISS + BM25 + tree-sitter | +60 MB |
llm |
litellm + openai + google-genai | +40 MB |
cloud |
Anthropic + Groq + Cohere + Mistral clients | +50 MB |
ml |
torch + sentence-transformers + ONNX + snntorch | +2 GB |
ami |
pymdp + ncps + jax (Active Inference + LNN) | +500 MB |
ui |
textual TUI + PySide6 GUI | +200 MB |
cli |
textual + click (pipx-friendly) | +50 MB |
git |
gitpython + pygithub | +20 MB |
docker |
docker-py + matplotlib | +30 MB |
netcfg |
asyncssh + paramiko + lxml + pyte | +30 MB |
docs |
pdfplumber + bs4 + markdownify | +20 MB |
bench |
ragas + langfuse + pytest-benchmark | +100 MB |
security |
semgrep + bandit + detect-secrets | +200 MB |
dev |
pytest + ruff + mypy + pylint | +100 MB |
full |
hub + rag + llm + cloud + ui + git + docker + docs | — |
all |
full + ml + netcfg + ami + bench + security |
~5 GB |
The former ctf extra is gone : the offensive surface was separated from the core
(2026-09-27).
nokido-hub — start hub on :8766nokido / nokido-cli — terminal client (llama-server :8091 + hub)nokido-vault — CRUD vault secretsnokido-secrets — diagnostic & migrate (status, selftest, set, get)nokido-doctor — tells what Nokido needs to find on the machine# Hub is up
curl http://localhost:8766/health
# Vault has the master token
nokido-secrets status
# MCP tools/list works -- the hub refuses an anonymous call (401) : pass an agent's
# headers, as printed by `tools/forge_mcp_json_sync.py --emit-headers <AGENT>`
curl -s -X POST http://localhost:8766/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H "Authorization: Bearer $FORGE_TOKEN" -H 'X-Agent-Name: CLAUDE' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
You should see the tool list. Its size depends on the agent's RBAC ring (see
04 — Auth model) : count it, don't expect a fixed number.
cd nokido
git pull
# Docker: rebuild
docker compose -f docker/nokido/docker-compose.yml build
# Native: re-run install
EXTRAS=$YOUR_PROFILE bash install.sh
# Docker
docker compose -f docker/nokido/docker-compose.yml down -v
rm -rf nokido/
# Native
deactivate
rm -rf nokido/
# Pip
pip uninstall nokido-agent
Vault secrets persist in the system keyring on macOS / Linux (Keychain, libsecret),
and on Windows in data\machine_vault.dat (DPAPI, machine scope) plus the SYSTEM-only
reserved vault C:\ProgramData\NokidoCoffre\coffre_reserve.dat. Delete manually if you
want a fully clean wipe.
Wiki: 02-Quick-Start
Wiki: 05-LLM-Providers
Wiki: 17-First-Launch