Agent Skills for the CLI
The best way to use the Duvo CLI is alongside the public Duvo Agent Skills repository. It’s a free, open repository of skills you can download and combine with the CLI to get far more out of it — they teach Claude Code, Codex, Cursor, and other coding agents to operate Duvo directly: manage Agents, debug failed Runs, and write the AOPs that drive them, all without leaving your editor or terminal. It packages three ready-made skills:duvo-cli— drive the full CLI (Agents, Runs, Cases, Queues, Files, Connections) through your agentsop-writer— draft, rewrite, or critique Agent AOPsjob-debugger— analyze failed Runs, find the root cause, and propose fixes
Download the Duvo agent skills
Install the CLI
Sign in
Confirm you're connected
Use with Claude Code
If you’d rather prime an agent by hand instead of installing the skills above, paste the prompt below into Claude Code (or any other coding agent) to teach it how to drive the Duvo CLI on your behalf. It primes the agent to installduvo, sign in, and use the right commands for the task you ask for next.
Claude Code prompt
Overview
The Duvo CLI (duvo) brings Duvo to your terminal. Use it from scripts, CI/CD pipelines, and developer workflows to manage Agents, Connections, Files, Runs, and more — without leaving the command line.
The CLI is a wrapper around the Public API, so anything you can do via the API you can do with duvo. JSON output is built in for scripting, and named profiles let you switch between teams or environments instantly.
What you can do
- Start Runs and respond to humans-in-the-loop — Start Runs, stream messages live, approve or deny requests, send mid-run instructions.
- Manage Agents — List, create, update, delete, and organize Agents into folders.
- Start Runs automatically — Set up schedules, event triggers, and Case triggers.
- Manage Connections, secrets, and logins — Authorize OAuth Connections, store env-var secrets and logins, and attach them to a Revision.
- Move Files and build Skills — Upload documents to the team file library, and create, install, and edit Skills.
- Work with Cases and Queues — Inspect Case history, delegate Cases in bulk, manage labels.
- Hit the raw API — Call any Duvo endpoint via
duvo apiwhen you need something a dedicated command doesn’t cover yet.
Installation
DUVO_INSTALL_DIR=$HOME/.local/bin or pin a version with DUVO_VERSION=<version>.
The npm install requires Node.js 24 or newer. On Windows, use npm.
duvo --version to confirm the install, and duvo --help to see every available command.
Updating
Runduvo update to update the CLI in place. It detects how the CLI was installed and picks the right method automatically — npm installs run npm install -g @duvoai/cli@latest, while the standalone binary downloads the latest release, verifies its checksum, and replaces itself. Use duvo update --check to see whether a newer version is available without installing anything.
If the standalone binary lives in a directory you cannot write to (such as
/usr/local/bin), duvo update stops with an error instead of updating. Rerun the installer, which requests sudo when needed: curl -fsSL https://duvo.ai/install-cli.sh | shQuick start
Sign in
The CLI stores credentials as named profiles. Each profile holds either an OAuth session or an API key, so you can switch between teams or workspaces without re-entering credentials each time.- Duvo account (OAuth)
- API key
acme or personal), then opens your browser so you can sign in to Duvo. Once you approve, the CLI stores the OAuth session under that profile name. The first profile you add becomes the default.Pass --name <profile> to skip the prompt:Add another profile
Runduvo login again to repeat the browser sign-in and prompt for a new profile name. Pass --api-key <key> if you want the new profile to use an API key instead.
Switch the default profile
Use a different profile for a single command
--profile <name> works on every command and doesn’t change your default.
See who you’re signed in as
Sign out
duvo logout revokes the OAuth tokens server-side and removes the profile locally.
Environment variables
For non-interactive use (CI, scripts), the CLI also reads:Output formats
By default every command prints a human-friendly table or summary. Add--json to any command for machine-readable output suitable for piping into jq or scripting:
Command groups
The CLI is organized by resource. Use these guides to dig into each area:Profiles and Teams
duvo profiles, duvo team, duvo teamsManaging Agents
duvo agents, duvo agent-folders, duvo revisionsStarting Runs
duvo runs, including live streaming and human-in-the-loop responsesScheduling and Triggers
duvo agents schedules, duvo agents triggers, duvo agents case-triggersManaging Connections
duvo connections, duvo integrations, duvo oauthManaging Files, Skills, and Plugins
duvo files, duvo skills, duvo pluginsSecrets and Logins
duvo secrets, duvo credentials, duvo revision-secrets, duvo revision-loginsCases and Queues
duvo cases, duvo queues, duvo queue-labelsInspecting Clarity Processes
duvo clarityScripting and CI/CD Patterns
automation scripts, GitHub Actions, worked examples
Advanced commands
duvo api, duvo sandboxes, duvo revision-integrationsTips
- Run
duvo <command> --helpto see every available flag for any command. - Combine
--jsonwithjqto script complex workflows — for example, list all Runs that are waiting for human approval. - Set
DUVO_PROFILEin your shell config to default to a non-default profile per project. - The CLI follows your Duvo team’s permissions — if you can’t see something in the UI, you can’t see it via the CLI either.