arthai-marketplace

Single-User Guide

Everything a solo developer needs to run the full stack on one machine — hardware, setup, task division, and the switches that stay off until you flip them. For the short hardware-only reference, see Prerequisites. For the separate team/central path, see the Team Setup Guide.

1. Hardware matrix by stack preset

Preset RAM GPU Disk Notes
Claude only (default) 8 GB floor not required ~1 GB (toolkit) all inference is remote
Claude + one cloud provider 8 GB floor not required ~1 GB (toolkit) same footprint — inference stays remote
Claude + one local runtime 16 GB minimum, 32 GB recommended Apple Silicon, or NVIDIA with 8–24 GB VRAM on Windows/Linux +50 GB for model weights the only preset with a real local footprint

Running Arth Intelligence and/or arth-memory locally (Docker) adds +2–4 GB RAM on top of whichever preset you picked, and needs no GPU — that cost is independent of which model-execution preset you’re on.

2. The headroom rule

A local model may claim at most total RAM − 12 GB. The 12 GB reserves room for the OS, your IDE, Claude Code itself, and Docker if Intelligence or Memory are running locally (Docker itself is capped around ~4 GB of that reserve).

This isn’t just a guideline — setup enforces it mechanically. The local-runtime menu in /provider-setup only ever shows models that fit inside your actual free RAM at the moment you run it; a model that doesn’t fit is never offered, not offered-with-a-warning. Two more constraints keep this predictable:

3. Platforms

Platform Support
macOS, Apple Silicon native — every preset, every layer
Linux native — every preset, every layer
macOS, Intel cloud presets only — Claude only / Claude + one cloud provider. The local-runtime preset is not offered (no Metal, and CPU-only inference on Intel Macs is impractical).
Windows, via WSL2 supported — install Ollama and Docker inside the WSL2 distro. Ollama may instead run Windows-native and be reached from WSL2 over localhost, if you prefer managing it outside the distro.
Windows, native (no WSL2) out of scope — not a supported target for any local-runtime or Docker-backed layer.

4. The two setup questions

/arth-setup asks exactly two questions to place you on this map:

  1. Posture — Local or Central. Are you the only user, or is this seat pointing at a team’s shared services? (See the Team Setup Guide if the answer is Central.)
  2. “Where should AI models run?” — the three presets from §1, asked once and recorded as stack in ~/.arthai/config.json, additive beside posture and never colliding with the memory-tier mode key.

The substrate rule: one place runs everything. If you pick the local preset, the same local runtime serves execution, the Explain-LLM prompt, and memory extraction — there’s no scenario with two different local runtimes active for different jobs. Embedding models are the one exception: they’re pinned per memory store (nomic-embed-text today), chosen for you, and never surfaced as a setup choice.

5. Local runtime policy

6. Task division with a cheaper model

Mixing in a cheaper model isn’t “let it do whatever” — the default division of labor is fixed, and it’s what the stack preset actually generates as your model-policy.override.yml:

Role Who does it Why
Planning Claude, always the tier that needs judgment stays on the strongest model
Code review Claude, always code-reviewer stays pinned, never inherit — review never silently follows whatever wrote the code
Execution the cheap model this is the tier that benefits from cost/latency wins
Scanning / bulk I/O the cheap model low-judgment, high-volume work
Protected paths (migrations, billing, auth) Claude, always never delegated, regardless of tier — no override changes this
Two consecutive failures escalate back to Claude the cheap model doesn’t get a third try; Claude takes over

You can hand-edit the generated override after the fact — setup writes a default, not a lock — but a re-generate regenerates it from the same rules, so a hand edit and a re-run can diverge; check the diff.

7. Router adoption rule for solo

Skip /router-setup by default. For one person, the toolkit’s built-in triage routing already does the job — a central router’s value (budgets, pools, org policy, decision audit) is org-shaped, not solo-shaped.

Adopt it later only when one of three signals shows up:

Running /router-setup later costs nothing structurally and fails open (a router outage never blocks you) — delaying adoption is never a one-way door.

8. Keys

The cloud preset needs exactly one credential: the API key for whichever provider you picked, stored in ~/.arthai/.env (mode 600), referenced by name only everywhere else (descriptors, proxy config, catalog rows — never the value itself). Conformance-probe runs cost cents — they’re a handful of short completions per probe, not a benchmark suite.

9. Feature switches

Two different kinds of “switch” exist, and they’re deliberately not the same mechanism: