Python CLI for djinnbot
Project description
djinn-bot-cli
CLI for the DjinnBot agent orchestration platform. Set up DjinnBot, authenticate, chat with agents, manage pipelines, configure model providers, and browse agent memory — all from the terminal.
Installation
pip install djinn-bot-cli
Or with uv:
uv tool install djinn-bot-cli
Or with pipx:
pipx install djinn-bot-cli
The one-line installer also installs the CLI automatically.
Quick Start
# First-time setup (interactive wizard)
djinn setup
# Log in to the server
djinn login
# Check server connectivity
djinn status
# Chat with an agent (interactive picker for agent + model)
djinn chat
# Chat directly
djinn chat --agent stas --model anthropic/claude-sonnet-4
# Configure a model provider API key
djinn provider set-key anthropic
Commands
djinn setup
Interactive setup wizard for first-time installation. Handles cloning the repo, generating secrets, configuring a model provider, optional SSL/TLS with Traefik, and starting the Docker stack. Safe to re-run.
djinn setup # interactive setup
djinn setup --dir /opt/djinnbot # specify install directory
djinn setup --no-ssl # skip SSL prompt
djinn setup --no-provider # skip provider prompt
djinn login / djinn logout / djinn whoami
Authentication commands for servers with AUTH_ENABLED=true.
djinn login # interactive email/password + optional 2FA
djinn login --api-key <key> # login with an API key
djinn whoami # show current user info
djinn logout # clear credentials and invalidate session
Credentials are stored per server URL in ~/.config/djinnbot/auth.json. JWT tokens are automatically refreshed when expired.
Authentication resolution order: --api-key flag > DJINNBOT_API_KEY env var > stored credentials.
djinn status
Show server health, Redis connection, active runs, and GitHub App status.
djinn chat
Interactive TUI chat session with an agent. Features streaming responses with markdown rendering, collapsible thinking blocks and tool calls with syntax-highlighted JSON, and a fuzzy-search model picker.
djinn chat # interactive agent + model selection
djinn chat -a finn -m anthropic/claude-sonnet-4 # skip pickers
djinn provider
Manage model provider API keys and configuration.
djinn provider list # show all providers and status
djinn provider show anthropic # details + available models
djinn provider set-key openrouter # set API key (secure prompt)
djinn provider models # list models from configured providers
djinn provider enable openai # enable a provider
djinn provider disable openai # disable (keeps key)
djinn provider remove openai # delete key and config
djinn pipeline
Manage pipeline definitions.
djinn pipeline list # list all pipelines
djinn pipeline show engineering # show steps and agents
djinn pipeline validate engineering # validate a pipeline
djinn pipeline raw engineering # show raw YAML
djinn agent
Manage agents and view their status.
djinn agent list # list all agents
djinn agent show stas # detailed info + persona files
djinn agent status # fleet overview
djinn agent status stas # single agent status
djinn agent runs stas # run history
djinn agent config stas # agent configuration
djinn agent projects stas # assigned projects
djinn memory
Browse and search agent memory vaults.
djinn memory vaults # list all vaults
djinn memory list stas # files in a vault
djinn memory show stas session.md # view a file
djinn memory search "deployments" # search across vaults
djinn memory search "arch" -a finn # search within an agent
djinn memory delete stas old.md # delete a file
Configuration
The CLI connects to http://localhost:8000 by default. Override with:
djinn --url http://your-server:8000 status
Or set the environment variable:
export DJINNBOT_URL=http://your-server:8000
Development
cd cli
uv sync --all-extras
uv run djinn --help
uv run pytest tests/ -v
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file djinn_bot_cli-0.2.7.tar.gz.
File metadata
- Download URL: djinn_bot_cli-0.2.7.tar.gz
- Upload date:
- Size: 65.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51887714a5ff1389bdbd29070cd64a1534b5e708eab629962879ec6250758da0
|
|
| MD5 |
c4574e3871b35e4fa767e433df4058b2
|
|
| BLAKE2b-256 |
64767144283b0fc34bb44f69100661727d05d8d47e401f826146091143109b7e
|
Provenance
The following attestation bundles were made for djinn_bot_cli-0.2.7.tar.gz:
Publisher:
cli-publish.yml on BaseDatum/DjinnBot
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
djinn_bot_cli-0.2.7.tar.gz -
Subject digest:
51887714a5ff1389bdbd29070cd64a1534b5e708eab629962879ec6250758da0 - Sigstore transparency entry: 975927700
- Sigstore integration time:
-
Permalink:
BaseDatum/DjinnBot@2ac9006df8f24288c33279974433ede2978edffd -
Branch / Tag:
refs/tags/cli-v0.2.7 - Owner: https://github.com/BaseDatum
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cli-publish.yml@2ac9006df8f24288c33279974433ede2978edffd -
Trigger Event:
push
-
Statement type:
File details
Details for the file djinn_bot_cli-0.2.7-py3-none-any.whl.
File metadata
- Download URL: djinn_bot_cli-0.2.7-py3-none-any.whl
- Upload date:
- Size: 46.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69bcecd5a58a7906b17bf4e3b4404ae61569066b8c40bc63faf76e44b37f5e60
|
|
| MD5 |
c841c77f8a002872d85f1e505ae95d95
|
|
| BLAKE2b-256 |
b2576ce90d71a0b1d2fec9fc21db4fb56115cb0df29b4a3ef4c37bda54bacc7d
|
Provenance
The following attestation bundles were made for djinn_bot_cli-0.2.7-py3-none-any.whl:
Publisher:
cli-publish.yml on BaseDatum/DjinnBot
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
djinn_bot_cli-0.2.7-py3-none-any.whl -
Subject digest:
69bcecd5a58a7906b17bf4e3b4404ae61569066b8c40bc63faf76e44b37f5e60 - Sigstore transparency entry: 975927702
- Sigstore integration time:
-
Permalink:
BaseDatum/DjinnBot@2ac9006df8f24288c33279974433ede2978edffd -
Branch / Tag:
refs/tags/cli-v0.2.7 - Owner: https://github.com/BaseDatum
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cli-publish.yml@2ac9006df8f24288c33279974433ede2978edffd -
Trigger Event:
push
-
Statement type: