Skip to main content

Cade - The CLI Agent from Arcade.dev

Project description

Cade

An AI-powered CLI agent for coding and everyday tasks. Powered by Arcade.dev.

Installation

Prerequisites

  • Python 3.11+
  • Arcade account (arcade.dev)
  • AI provider API key: OPENAI_API_KEY or ANTHROPIC_API_KEY

Homebrew (macOS/Linux)

brew tap ArcadeAI/tap
brew install cade

Install with uv

curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install cade-cli

Install with pip

pip install cade-cli

From Source

git clone https://github.com/arcadeai-labs/cade.git
cd cade
uv venv --python 3.11
source .venv/bin/activate
uv sync

Authenticate

cade login

Usage

Start a Chat

cade

Resume a Thread

cade -r                        # Resume most recent
cade resume "my-project"       # Resume by name

Authentication

Cade uses Arcade Cloud for authentication and shares credentials with arcade-cli.

cade login                      # Log in to Arcade Cloud
cade logout                     # Log out
cade whoami                     # Show current login status

Context Management

Switch between organizations and projects for Arcade Cloud features.

cade context show               # Show current org/project
cade context list               # List available orgs and projects
cade context switch -i          # Interactive selection
cade context switch --org my-org --project my-project

Single Message Mode

cade -m "What files are in this directory?"
cat error.log | cade -m "What went wrong?"

Options

Option Description
-r, --resume Resume the most recent thread
-m, --message Single message mode (non-interactive)
-L, --local-only Disable remote tools (use only local tools)
-v, --verbose Enable debug logging
--version Show version

In-Chat Commands

Command Description
/help Show available commands
/logs View recent log entries
/clear Clear the screen
/copy Copy last response to clipboard
Ctrl+C Exit

Thread Management

cade thread list                          # List all threads
cade thread list --branch main            # Filter by branch
cade thread get <thread-id>               # Get thread details
cade thread get <thread-id> --messages    # Show messages
cade thread delete <thread-id>            # Delete thread

Tool Management

Tools come from three sources: local, Arcade Cloud, and MCP servers.

cade tool list                    # List all tools
cade tool list --source local     # Filter by source
cade tool search "file"           # Search tools
cade tool info Local_ReadFile     # Tool details

Built-in Tools

Tool Description
Local_ReadFile Read file contents
Local_WriteFile Write or append to files
Local_ListFiles List directory contents
Local_SearchText Search for text patterns
Local_ExecuteShell Run shell commands
Local_CreateDirectory Create directories
Local_DeleteFile Delete files
Local_GetGitStatus Get git status

MCP Servers

Connect to MCP servers for extended capabilities.

cade mcp list                                                    # List servers
cade mcp add my-server http://localhost:8080                     # Add server
cade mcp add my-server http://localhost:8080 --auth bearer -t <token>  # With auth
cade mcp test my-server                                          # Test connection
cade mcp enable my-server                                        # Enable
cade mcp disable my-server                                       # Disable
cade mcp rm my-server                                            # Remove

Configuration

Config is stored in ~/.cadecoder/:

File Description
cadecoder.toml Settings
cadecoder_history.db Thread history
cadecoder.log Logs
mcp_servers.yaml MCP server configs

Environment Variables

Variable Description
OPENAI_API_KEY OpenAI API key
OPENAI_BASE_URL Custom OpenAI-compatible API endpoint
ANTHROPIC_API_KEY Anthropic API key
ARCADE_API_KEY Arcade API key (alternative to OAuth)
ARCADE_BASE_URL Custom Arcade API endpoint
CADE_LOCAL_ONLY Set to 1 to disable remote tools
CADECODER_HOME Override config directory

Example Config

# ~/.cadecoder/cadecoder.toml

default_model = "gpt-4.1"
debug_mode = false
use_responses_api = true

[responses_config]
enabled = true
streaming_enabled = true

[model_settings]
provider = "openai"
model = "gpt-4.1"

[tool_settings]
# Tool filtering is managed via MCP server configuration
# See: cade mcp add --help

Using Local or Custom LLMs

Cade works with any OpenAI-compatible API, including local servers (Ollama, vLLM, llama.cpp) and alternative cloud providers (Together AI, Groq, Fireworks).

Local-Only Mode

When using local LLMs, you can skip Arcade Cloud authentication entirely with --local-only:

# Local Ollama server without Arcade Cloud
cade chat --local-only --endpoint "http://localhost:11434/v1" --model "llama3"

# Or via environment variable
CADE_LOCAL_ONLY=1 cade chat --endpoint "http://localhost:11434/v1" --model "llama3"

This disables remote tools and uses only local tools. Cade will also gracefully fall back to local-only mode if Arcade Cloud authentication is not configured.

Via CLI Flags

# Local Ollama server
cade chat --endpoint "http://localhost:11434/v1" --model "glm-4.7-flash:latest"

# vLLM server
cade chat -e http://localhost:8000/v1 -m mistral-7b

Via Environment Variables

export OPENAI_BASE_URL="http://localhost:11434/v1"
export OPENAI_API_KEY="ollama"  # Dummy key for local model
cade chat --model glm-4.7-flash:latest

Via Config File

# ~/.cadecoder/cadecoder.toml

default_model = "glm-4.7-flash:latest"

[model_settings]
host = "http://localhost:11434/v1"
api_key = "ollama"

After configuring the TOML file:

cade chat

cade chat Configuration Precedence

Settings are resolved in this order (first is used):

  1. CLI flags (--endpoint, --model)
  2. Environment variables (OPENAI_BASE_URL, OPENAI_API_KEY)
  3. Config file (model_settings.host, model_settings.api_key)
  4. Hardcoded defaults

Contributing

Development Setup

git clone https://github.com/arcadeai-labs/cade.git
cd cade
uv sync --extra dev

Run Tests

pytest
ruff check src/
ruff format src/

Code Style

  • Python 3.11+ with modern type hints (dict, list, | None)
  • Ruff for linting and formatting
  • Pytest for testing
  • Docstrings for public functions and classes

Submitting Changes

  1. Fork the repository
  2. Create a feature branch
  3. Make changes with tests
  4. Run ruff check . && pytest
  5. Open a Pull Request

Resources

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cade_cli-0.8.0.tar.gz (160.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cade_cli-0.8.0-py3-none-any.whl (199.7 kB view details)

Uploaded Python 3

File details

Details for the file cade_cli-0.8.0.tar.gz.

File metadata

  • Download URL: cade_cli-0.8.0.tar.gz
  • Upload date:
  • Size: 160.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cade_cli-0.8.0.tar.gz
Algorithm Hash digest
SHA256 bec87f925ae713d44d9f509b1b7041a9ffc647bec22b90e3b8ceabf4aa7df385
MD5 7d6fd3e0de3fdbf5c92b3f6cd317628d
BLAKE2b-256 25041aa96bb7662280f0c53664a4204160991e363e96f853bebc3dfab517c30a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cade_cli-0.8.0.tar.gz:

Publisher: release.yml on arcadeai-labs/cade

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cade_cli-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: cade_cli-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 199.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cade_cli-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f685f869104fcc3889e190c380f675cec11bec03a46252f730026795e23ac929
MD5 2e338a89c2dd34954a567802dd1e8327
BLAKE2b-256 b75dc1fb6de19b708c949c969b6d53bfa3c7cf7419863d410df79852684c0147

See more details on using hashes here.

Provenance

The following attestation bundles were made for cade_cli-0.8.0-py3-none-any.whl:

Publisher: release.yml on arcadeai-labs/cade

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page