docs/cline-cli/overview.mdx
Cline CLI brings the full power of Cline to your terminal. Whether you prefer an interactive experience or automated workflows for CI/CD pipelines, the CLI adapts to your needs.
The CLI supports macOS, Linux, and Windows, and works with all the same AI providers as the VS Code extension.
<Tip> Ready to get started? Check out the [installation guide](/cline-cli/installation) to install Cline CLI and run your first task. </Tip>The CLI operates in two distinct modes, automatically selecting the appropriate one based on how you invoke it:
Interactive mode is designed for hands-on development sessions where you want to collaborate with Cline in real-time. It provides a rich terminal interface that feels like chatting with an AI assistant.
When it activates: Running cline without arguments, or when stdin is a TTY (terminal).
cline
Key features:
@ - Reference workspace files with fuzzy search autocomplete/ - Quick access to /settings, /history, /models, and workflowsTab to toggle Plan/Act, Shift+Tab for auto-approve allInteractive mode keeps you in control. You review Cline's plan, approve or modify actions, and guide the conversation.
Learn more about interactive mode →
Headless mode is designed for automation, scripting, and CI/CD pipelines where human interaction isn't possible or desired.
When it activates: Using the -y/--yolo flag, --json flag, piping input/output, or when stdin is not a TTY.
# Headless with auto-approval (YOLO mode)
cline -y "Run tests and fix any failures"
# Headless with JSON output for parsing
cline --json "List all TODO comments" | jq '.text'
# Headless via piped input
cat README.md | cline "Summarize this document"
# Chain multiple headless commands
git diff | cline -y "explain these changes" | cline -y "write a commit message"
Key features:
-y, Cline approves all actions and runs autonomously--json to get structured output for parsingCline automatically detects which mode to use based on your invocation. This table shows how different command patterns trigger each mode, helping you predict behavior in scripts and interactive sessions.
| Invocation | Mode | Reason |
|---|---|---|
cline | Interactive | No arguments, TTY connected |
cline "task" | Interactive | TTY connected |
cline -y "task" | Headless | YOLO flag forces headless |
cline --json "task" | Headless | JSON flag forces headless |
cat file | cline "task" | Headless | stdin is piped |
cline "task" > output.txt | Headless | stdout is redirected |
Learn more about headless mode →
Cline CLI supports all providers available in the VS Code extension:
During setup, authenticate with cline auth to configure your preferred provider. See setup guide →
Keep your codebase healthy with automated fixes. Cline scans for issues and applies corrections across multiple files.
cline -y "Fix all ESLint errors in src/"
Finds and fixes linting violations throughout your source directory.
cline -y "Update all deprecated React lifecycle methods"
Migrates legacy code patterns to modern equivalents (e.g., componentWillMount → useEffect).
cline -y "Update dependencies with known vulnerabilities"
Identifies outdated packages with security issues and updates them to safe versions.
Integrate Cline into your continuous integration pipelines for automated code review and documentation.
git diff origin/main | cline -y "Review these changes for issues"
Pipes your PR diff to Cline for automated code review, catching bugs and style issues before merge.
git log --oneline v1.0..v1.1 | cline -y "Write release notes"
Generates human-readable release notes from your commit history between two tags.
cline -y "Run tests and fix failures" --timeout 600
Executes your test suite, analyzes failures, and attempts fixes with a 10-minute timeout.
From quick edits to complex refactors, Cline adapts to your workflow.
cline
Launches interactive mode for exploratory development and back-and-forth collaboration.
cline "Refactor this function to use async/await"
Executes a focused task directly from the command line with approval prompts at key steps.
cline "Based on @src/api.ts, add error handling to all endpoints"
Uses file mentions (@) to give Cline context about specific files in your workspace.
Chain Cline with other CLI tools to build powerful automation workflows.
gh pr diff 123 | cline -y "Review this PR"
Fetches a GitHub PR diff and pipes it directly to Cline for review.
cline --json "List all TODO comments" | jq '.text'
Outputs structured JSON that you can process with tools like jq for scripting.
git diff | cline -y "explain" | cline -y "write a haiku about these changes"
Chains multiple Cline invocations together for creative multi-step workflows.
| Feature | Interactive Mode | Non-Interactive Mode |
|---|---|---|
| Interactive chat | ✓ | - |
| File mentions (@) | ✓ | ✓ (inline) |
| Slash commands (/) | ✓ | - |
| Settings panel | ✓ | cline config |
| Plan/Act toggle | ✓ (Tab) | -p / -a flags |
| Auto-approve | ✓ (Shift+Tab) | -y flag |
| Session summary | ✓ | - |
| JSON output | - | --json |
| Piped input | - | ✓ |
| MCP servers | ✓ | ✓ |
Cline CLI supports MCP (Model Context Protocol) servers, the same extensibility system available in the VS Code extension. MCP servers give Cline access to external tools and data sources, from databases and APIs to browser automation and project management.
To use MCP servers with the CLI, add your server configuration to ~/.cline/data/settings/cline_mcp_settings.json. The format is identical to the VS Code extension.
Configure MCP servers for the CLI →