Getting started
1. Get an API key
Create an API key in the Insula Labs product UI. Treat it like a password: anyone with the key can act as you on this API.
2. Configure the CLI
export KOBOLD_API_KEY='your-key-here'
Optional:
export KOBOLD_BASE_URL='https://api.insulalabs.io' # default if unset
You can also pass credentials per command:
kobold-cli stats get -api-key 'your-key-here'
kobold-cli stats get -base-url 'https://api.insulalabs.io'
| Flag | Env fallback | Default |
|---|---|---|
-api-key |
KOBOLD_API_KEY |
required for all /v1 calls |
-base-url |
KOBOLD_BASE_URL |
https://api.insulalabs.io |
-insecure |
— | false (skip TLS verify; local/dev only) |
3. Build kobold-cli
From the web-api checkout:
make build
./build/kobold-cli
Or from the monorepo root, after a full build, use build/kobold-cli.
Invocation shape:
kobold-cli <section> <action> [flags]
Most commands print indented JSON on stdout. Errors go to stderr and exit with status 1.
4. Smoke tests
Health (no API key)
kobold-cli health check
{
"ok": true
}
HTTP equivalent: GET /health → 200 empty body. The CLI prints {"ok": true} after a successful empty response.
Echo (checks auth)
kobold-cli echo send -message hello
{
"message": "hello"
}
HTTP: POST /v1/echo with Authorization: Bearer … and body {"message":"hello"}.
Stats
kobold-cli stats get
Returns your current plan ceilings (limits) and live counters (usage) for storage, knowledgebases, API keys, requests, uploads, downloads, tasks, and tokens. Use this to see where you stand before large uploads or many creates.
List knowledgebases
kobold-cli kb list
Empty account:
[]
Otherwise an array of knowledgebase objects (see Knowledgebases).
Auth rules
- Every path under
/v1/requires a valid Bearer API key. /healthdoes not.- Missing or invalid keys →
401. - The CLI reads the key from
-api-keyorKOBOLD_API_KEYand sendsAuthorization: Bearer <key>for you.
Next steps
- CLI reference — full command list
- Knowledgebases — create your first collection
- Files — upload and organize content
- Index and search — make content searchable