Skip to main content

CLI tool for interacting with Raga Canvas no-code agent deployment platform

Project description

Raga Canvas CLI

A command-line interface for interacting with the Raga Canvas no-code agent deployment platform.

Installation

pip install raga-canvas-cli

Quick Start

  1. Login
canvas login [--api-base https://api.canvas.raga.ai] [--profile <name>]
  • Prompts for username and password, saves a profile locally.
  1. Initialize a workspace
canvas init <directory> [--profile <name>] [--force] [--name <home-dir-name>]
  • Fetches projects, asks for the default project short name, creates canvas.yaml, project_config.yaml, environments/<project>.env, and the workspace folders.
  1. List your projects and agents
canvas list projects [--profile <name>]
canvas list agents [--project <short-name>] [--folder <id>] [--search <text>] [--active-only] [--profile <name>]
  1. Pull resources locally (optional)
canvas pull projects [--profile <name>]
canvas pull agents [--agent <short-name-or-id>] [--profile <name>]
canvas pull tools [--tool <short-name-or-id>] [--profile <name>]
canvas pull datasources [--datasource <short-name-or-id>] [--profile <name>]
  1. Push and deploy an agent
canvas push agents --agent <short-name> [--target-project <short-name>] [--profile <name>] [--force]
canvas deploy agents --agent <short-name> [--target-project <short-name>] [--profile <name>]

Commands

canvas login

Authenticate with the Canvas platform and save credentials.

Usage:

canvas login [--api-base <url>] [--profile <name>]
  • Prompts for username and password, validates, and stores a token under the given profile (default: default).

canvas init

Initialize Canvas workspaces for all projects in separate folders by shortName.

Usage:

canvas init <directory> [--profile <name>] [--force] [--name <home-dir-name>]
  • --profile: profile to use for authentication
  • --force: proceed even if files already exist
  • --name: home directory name under the provided <directory>

Creates the base structure and writes:

  • canvas.yaml
  • project_config.yaml
  • environments/<project>.env
  • Folders: agents/, tools/, datasources/, environments/

canvas set default-project

Set the default project short name in canvas.yaml.

Usage:

canvas set default-project <project_short_name>

canvas list

List Canvas resources.

  • Projects
canvas list projects [--profile <name>]
  • Agents
canvas list agents [--project <short-name>] [--folder <id>] [--search <text>] [--active-only] [--profile <name>]
  • Tools
canvas list tools --project <short-name> [--search <text>] [--profile <name>]
  • Datasources
canvas list datasources --project <short-name> [--search <text>] [--profile <name>]
  • Workflows
canvas list workflows --project <short-name> [--folder <id>] [--profile <name>]

canvas pull

Pull resources from the Canvas platform into your workspace.

  • Projects → writes project_config.yaml and per-project env files
canvas pull projects [--profile <name>]
  • Agents (uses default project unless overridden in config)
canvas pull agents [--agent <short-name-or-id>] [--profile <name>]
  • Tools
canvas pull tools [--tool <short-name-or-id>] [--profile <name>]
  • Datasources
canvas pull datasources [--datasource <short-name-or-id>] [--profile <name>]

canvas push

Create or update resources in the target project. Uses the default project unless --target-project is provided.

  • Agents
canvas push agents --agent <short-name> [--target-project <short-name>] [--profile <name>] [--force]
  • Tools
canvas push tools --tool <short-name> [--target-project <short-name>] [--profile <name>] [--force]
  • Datasources
canvas push datasources --datasource <short-name> [--target-project <short-name>] [--profile <name>] [--force]

canvas deploy

Trigger deployment for an existing remote agent version in the target project.

  • Agents
canvas deploy agents --agent <short-name> [--target-project <short-name>] [--profile <name>]

Directory Structure

When you run canvas init or pull from a project, the following structure is created:

my-canvas-repo/
├── canvas.yaml                 # workspace config
├── .canvasrc                   # local profiles (ignored by VCS)
├── agents/
│   └── test-agent/
│       ├── agent.yaml
│       └── config.yaml
├── tools/
│   └── test-tool/
│       ├── tool.yaml
│       └── config.yaml
├── datasources/
│   └── test-datasource/
│       ├── datasource.yaml
│       └── config.yaml
├── environments/
│   ├── dev.env
│   ├── stage.env
│   ├── prod.env
│   └── <project>.env
└── project_config.yaml

Configuration

The CLI uses the following configuration files:

  • ~/.canvasrc - Global user configuration and profiles
  • canvas.yaml - Workspace configuration
  • project_config.yaml - Project IDs and metadata pulled from the platform
  • environments/*.env - Environment-specific secrets/placeholders

Development

To set up for development:

git clone https://github.com/raga-ai/raga-canvas-cli
cd raga-canvas-cli
pip install -e ".[dev]"

Run tests:

pytest

License

MIT License - see LICENSE file for details.

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

raga_canvas_cli-0.1.6.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

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

raga_canvas_cli-0.1.6-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file raga_canvas_cli-0.1.6.tar.gz.

File metadata

  • Download URL: raga_canvas_cli-0.1.6.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.4

File hashes

Hashes for raga_canvas_cli-0.1.6.tar.gz
Algorithm Hash digest
SHA256 c8e1f131c5aec34ebf3f5e069bc3dda767ca72b1fdd137d09e7ce6db807d7cf1
MD5 32291e12125213b5653dc2d2a88ea157
BLAKE2b-256 cb9dbd2c9337c0d2182033f078f7edef5964680dac220d3237b7c419ffc8b832

See more details on using hashes here.

File details

Details for the file raga_canvas_cli-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for raga_canvas_cli-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7e527ef6a13343cfda1dbf0e640a83e58fcb7e300e81d63e0cb86d043772f189
MD5 def721ed510d9d0564d8e33abc490402
BLAKE2b-256 14ebf2b75ee29c60a7316972d4431a503f30aebc5415056317105cf083d5fb79

See more details on using hashes here.

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