arthai-marketplace

Deployment Modes: single user vs team/central

Every Arth component runs in two shapes: single-user (everything on your machine, zero external services) and team/central (a shared server your whole team points at). This page is the map.

Availability: Local is GA for every layer. Per-layer cloud endpoints (telemetry ingest at ingest.getarth.ai, your org’s own arth-memory server) work today; the unified Arth Cloud sign-in (one login for intelligence + memory + router + orchestrate) is pre-GA; /arth-setup says so when you pick cloud.

Each layer is optional and independent. Pick any row in any combination, and upgrade a layer from single-user to central later without touching the others.

The five layers

Layer What it gives you Single-user shape Team/central shape
Toolkit (arthai plugins) Skills, agents, hooks, /calibrate knowledge Just the plugin: no services at all Same plugin per seat; shared conventions via your repos
Arth Intelligence (experimental preview) Sessions / cost / DAG dashboard (OTEL) Local Docker stack via /otel-setup → Local (dashboard on localhost) Cloud endpoint (/otel-setup → Cloud, app.getarth.ai) or a self-hosted central engine
arth-memory Semantic knowledge retrieval + constraint checks /memory-setup → Local tier (Docker store on this machine; no discrete GPU required — on macOS Ollama runs natively and uses Metal when available) /memory-setup → Cloud (direct to org server) or Remote (offline replica of the org server)
decisions (Jev) Typed, calibrated gates for /qa, /pr, /ci-fix and the router — shadow first, enforce per gate after calibration (guide) The decisions checkbox in /arth-setup; a hosted TypeSafe key in ~/.arthai/.env, or the local runtime shadow-only Same checkbox; central posture points the wrapper at the deployment proxy, no per-user key
arth-router Model/harness routing with cost governance Skip it: solo routing is the toolkit’s built-in triage; the router’s value (budgets, pools, org policy, decision audit) is org-shaped Central router service; the toolkit’s triage hook calls it via the fast-path integration

One command drives it all after the plugin install:

/arth-setup            # telemetry? extras? knowledge backend? — 3 questions
/calibrate             # per repo — generates the knowledge everything serves

Hardware floor for the whole single-user stack: any Mac/Linux dev machine, Docker, no discrete GPU required — on macOS Ollama runs natively and uses Metal when available; without it, memory recall degrades to keyword search. Disk: ~1.5GB for Intelligence images + ~800MB for the Memory light path (store + embedding model), ~2.5GB if you take everything.

That floor covers the toolkit’s own Intelligence and Memory layers. Where your AI models run is a separate choice, with its own hardware floor — see Prerequisites for the short per-preset CPU/RAM/disk/GPU reference, or the Single-User Guide for the full walkthrough (setup questions, task division with a cheaper model, keys, feature switches).

Coming with the mixed-execution release: /arth-setup will ask a second question right after posture — posture (Local or Central — is this just you, or a team pointing at shared services?), then “Where should AI models run?” with three presets: Claude only (default), Claude + one cloud provider, or Claude + one local runtime. That second question drives the internal provider-setup step: for a cloud provider it lists the models whose tool-use probe passed, and for a vendor without a key it prints one command for you to run in your own terminal, never in the chat:

bash ~/.claude-agents/scripts/arth-keys.sh set FIREWORKS_API_KEY        # symlink install
bash "$CLAUDE_PLUGIN_ROOT/scripts/arth-keys.sh" set FIREWORKS_API_KEY   # plugin install

The helper prompts with hidden input and stores the key in ~/.arthai/.env (mode 600); arth-keys.sh wizard takes several keys in one sitting (TypeSafe, the Cloudflare pair, Vercel, Fireworks) and --help says where each is created. Setup then asks Done / Skip for now, detects the key by name and runs the conformance probe (✓ tool-use verified or ✗ one-shot only). The same helper takes every auth_env a provider descriptor names (DEEPSEEK_API_KEY, DASHSCOPE_API_KEY, MOONSHOT_API_KEY, GLM_API_KEY, and the decisions keys); list shows the names stored, unset NAME removes one. With Claude only, every model call stays on Claude.

Team/central: what changes per layer

Full walkthrough — the four values an admin hands out, per-seat setup choices for each skill, and what stays admin-owned and seat-immutable — is in the Team Setup Guide.

Mixing modes is normal

Common real-world combinations:

You are Telemetry Memory Router
Solo dev Local files or memory-local skip
Solo dev, multiple machines Cloud central + replicas skip
Small team Cloud or self-hosted central central + replicas optional
Org with cost governance central central central

Guarantees when upgrading a layer