From navaris-cli
Guides navaris CLI first-time setup: Go/binary install, env vars, health checks, project/sandbox creation with Incus/Alpine, exec commands, and troubleshooting (401, connection refused, DNS).
How this skill is triggered — by the user, by Claude, or both
Slash command
/navaris-cli:navaris-getting-startedThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Gets a user from zero to "I just exec'd something in a sandbox" with minimum friction.
Gets a user from zero to "I just exec'd something in a sandbox" with minimum friction.
From source (requires Go 1.26+):
go build -o navaris ./cmd/navaris
sudo mv navaris /usr/local/bin/ # optional; keep local if preferred
Or download a release binary from the navaris releases page and put it on $PATH.
| Env var | Required | Purpose |
|---|---|---|
NAVARIS_API_URL | yes | URL of navarisd, e.g. http://localhost:8080 |
NAVARIS_TOKEN | yes if daemon uses --auth-token | Bearer token for auth |
NAVARIS_PROJECT | recommended | Default project ID so --project isn't needed every call |
All three are also available as CLI flags: --api-url, --token, --project.
navaris project list --quiet --output json
Exit 0 = CLI installed, daemon reachable, auth accepted. Non-zero = see errors below.
sandbox create is asynchronous — it returns immediately with an operation; pass --wait to block until provisioning completes and receive the sandbox row instead.
navarisd (see README.md for daemon flags and the all-in-one Docker option) and capture the auth token it was started with.export NAVARIS_API_URL=http://localhost:8080
export NAVARIS_TOKEN=<token-from-step-1>
navaris project list --quiet --output json
Expect [] on a fresh daemon.export NAVARIS_API_URL=https://navaris.example.com
export NAVARIS_TOKEN=<token>
PROJECT_ID=$(navaris project create --name playground --output json | jq -r '.ProjectID')
export NAVARIS_PROJECT="$PROJECT_ID"
/ routes to Incus).
--wait blocks until the create operation finishes so the JSON we capture is
the sandbox row, not the still-pending operation:
SANDBOX_ID=$(navaris sandbox create --name hello --image alpine/3.21 --wait --output json | jq -r '.SandboxID')
navaris sandbox wait-state "$SANDBOX_ID" --state running --timeout 60s
navaris sandbox exec "$SANDBOX_ID" -- echo "hello from the sandbox"
navaris sandbox destroy "$SANDBOX_ID" --wait
| Symptom | Cause | Fix |
|---|---|---|
api error 401 (or HTTP 401) | NAVARIS_TOKEN missing or wrong | Re-export NAVARIS_TOKEN with the value the daemon was started with |
connection refused | Daemon not running on the configured host/port | Start navarisd or point NAVARIS_API_URL at the right host |
dial tcp: no such host | DNS miss or typo in NAVARIS_API_URL | Fix the URL |
--project flag or NAVARIS_PROJECT env var is required | sandbox create invoked without a project | Either pass --project <id> or export NAVARIS_PROJECT=<id> |
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
npx claudepluginhub erans/navaris --plugin navaris-cli