Skip to main content

Usage

Pass an optional prompt to start a session with an initial message, or launch interactively with no arguments. You can also read these from your terminal with man devin.

Global Flags

Non-interactive --print mode cannot show the workspace trust prompt, so it fails in an untrusted directory. Pass --respect-workspace-trust false to skip the check in scripts and CI.
Examples:

Subcommands

devin auth

Authentication related commands. Options for devin auth login:
  • --force-manual-token-flow — Skip browser-based auth and manually paste a token (useful for remote/SSH sessions)

devin mcp

Connect and log in to Model Context Protocol servers. Options for devin mcp add:
  • -t, --transport <stdio|http> — Transport type (optional; inferred from URL → http, trailing args → stdio)
  • -s, --scope <local|project|user> — Configuration scope (default: local)
  • --url <URL> — URL for HTTP transport (can also be passed as a positional argument after the name)
  • --command <CMD> — Command for stdio transport (optional when trailing args are provided)
  • -e, --env <KEY=VALUE> — Environment variables (repeatable)
  • -H, --header <HEADER: VALUE> — HTTP headers (repeatable)
  • --scopes <SCOPE,SCOPE> — OAuth scopes to request (comma-separated)
  • --oauth-resource <RESOURCE> — Override the RFC 8707 resource parameter sent in OAuth requests (default: the MCP server URL; pass an empty string to omit it for providers that reject it)
  • <URL> — Positional URL argument for HTTP (alternative to --url)
  • -- <COMMAND> [ARGS...] — Command and arguments for stdio (first arg is the command when --command is omitted)
HTTP servers try Streamable HTTP first and fall back to legacy SSE on 4xx errors (per the MCP spec). You can also set "transport": "sse" explicitly. See MCP Configuration → Troubleshooting.
Examples:
Options for devin mcp remove:
  • -s, --scope <local|project|user> — Configuration scope (default: local)
Options for devin mcp login:
  • --scopes <SCOPE,SCOPE> — OAuth scopes to request (comma-separated)
  • --oauth-resource <RESOURCE> — Override the RFC 8707 resource parameter sent in OAuth requests (default: the MCP server URL; pass an empty string to omit it for providers that reject it)
Options for devin mcp enable:
  • -s, --scope <local|project|user> — Configuration scope (default: local)
Options for devin mcp disable:
  • -s, --scope <local|project|user> — Configuration scope (default: local)
See MCP Configuration for details.

devin models

List the models available to your account. See Models for details.

devin rules

Manage agent rules (always-on context blobs). Options for devin rules list:
  • --provider <cursor\|windsurf> — Filter by rule provider
See Rules for details.

devin skills

Manage agent skills (slash commands and agent-triggered context blobs). Options for devin skills list:
  • --trigger <user\|model> — Filter by trigger type
See Skills for details.

devin plugins

Manage plugins — bundles that ship skills, rules, hooks, MCP servers, and subagents together. A source is a GitHub owner/repo, a git URL, or a local path. Append #path/to/plugin when the plugin lives below a repository’s root. Options:
  • -y, --yes (install) — Skip the interactive trust prompt
  • --force (remove) — Remove even when another plugin or a governance config still requires it
See Plugins for details.

devin migrate

Migrate configuration from other tools into Devin’s own formats. Options for devin migrate workflows:
  • --scope <all\|workspace\|global> — Which workflows to migrate (default: all)
Migration is a one-time copy. Configuration that Devin CLI reads in place — rules, skills, and MCP servers from Cursor, Windsurf, Claude Code, Copilot, and others — needs no migration; see Configuration Import.

devin list

List sessions in the current directory. Alias: devin ls

devin cloud

Manage Devin Cloud resources from the terminal. Commands use the credentials stored by devin auth login — there is no extra environment wiring.

devin cloud drs

Manage Declarative Repo Setup: environment blueprints, sandbox sessions for testing repo setup, and snapshot builds. Options for devin cloud drs sandbox-create:
  • --repo <owner/repo> — Repository to attach the sandbox to (required)
  • --prompt <PROMPT> — Initial prompt for the sandbox session
  • --secret <KEY=VALUE> — Per-session secret (repeatable)
Options for devin cloud drs run:
  • --devin-id <ID> — Devin session ID (e.g. devin-abc123…) (required)
  • --command <CMD> — Shell command to execute (required)
  • --timeout <SECONDS> — Server-side timeout (default: 600)
Options for devin cloud drs blueprint-create:
  • --repo <owner/repo> — Repository to scope the blueprint to; omit for an org-wide blueprint
  • --from-file <FILE> — YAML file with the initial blueprint contents
See Blueprint reference for the environment.yaml format these commands read and write.

devin version

Print the current version and exit.
This is equivalent to devin --version.

devin acp

Run Devin as an Agent Client Protocol (ACP) server over stdio. This subcommand is intended to be invoked by an ACP-aware editor or IDE (such as Windsurf or Zed) as a subprocess — it speaks JSON-RPC over stdin/stdout and is not meant to be run interactively.
The ACP server reads credentials from WINDSURF_API_KEY if set, otherwise from the credentials stored by devin auth login. It can also accept credentials at runtime via the ACP authenticate request. Options:

Slash commands in ACP hosts

The ACP server advertises its full slash-command set over the protocol, so the commands show up in the host’s own command palette with descriptions, argument hints, and categories: Some commands are gated by the host and your account:
  • /login and /logout are hidden when the host manages authentication itself.
  • The workspace-directory commands (/workspace, /add-dir, /remove-dir) only appear when the host asks the agent to own the workspace roots. Hosts that manage their own roots never see them.

devin update

Check for updates and optionally install them.
Use --force to re-install even if already on the latest version:

devin shell

[Feature Preview] Shell integration commands. See Shell Integration for full details.

devin sandbox

[Research Preview] Manage OS-level process sandboxing for the exec tool. Pass the global --sandbox flag to run a session with the sandbox enforced.

devin sandbox setup

Print the sandbox prerequisites for the current platform. Requirements to run with --sandbox:
  • Linux: requires bubblewrap (bwrap) and socat. A sandbox session fails to start with install instructions if either is missing — including in a fresh WSL distribution.
  • macOS: works out of the box via Seatbelt; no extra packages needed.
  • Windows: native Windows cannot run the sandbox. Install WSL 2 and run Devin inside your WSL distribution.

devin setup

Interactive setup wizard for authentication and MCP configuration.

devin doctor

Diagnose air-gapped configuration and model endpoint connectivity.
devin doctor is only present in air-gapped builds of the CLI.

devin worker

Runs the CLI as an Outposts worker. It is hidden from devin --help and documented separately — see the Outposts reference.

devin uninstall

Uninstall Devin CLI and optionally remove all data.

Slash Commands

These commands are available inside an interactive session. Type them at the prompt.

Mode & Model

/bypass has aliases /yolo and /dangerous. All three do the same thing.

Session Management

Workspace

Automation

Extensibility

Utilities

Session statistics

/session-stats (alias /stats) is the full view of what a session has consumed, where /usage is the thin credit/ACU summary. It renders every usage dimension the server reports — credits, ACUs, agent messages, turn continuations, and token usage — using the server’s own labels and grouping, so new dimensions show up without a CLI update. The Model row names the model that actually served the billed turns, which can differ from the model you selected. Totals persist across resume, so a resumed session reports its cumulative usage rather than starting over.

Cloud Sessions (insiders only)


Modes

Modes control the agent’s autonomy level by combining a permission mode with an agent profile.
Full autonomy for complex coding tasks. The agent can read, write, and execute commands with normal permission checks.
  • Permission mode: Normal
  • Profile: Normal
  • Use for: Multi-file refactoring, feature implementation, bug fixes
Cycle between modes with /mode, or switch directly with /normal, /accept-edits, /smart, /plan, /bypass, or /autonomous. Use /ask <question> as a oneshot command to ask questions without switching modes.

Profiles

Profiles determine the agent’s available tools and behavior. Profiles are automatically set when you switch modes.