Autonomous coding agent right in your IDE, capable of creating/editing files, executing commands, using the browser, and more with your permission every step of the way.

Sarah Fortune e602efc7a6 Dont export the protobus handlers from the grpc-client `protobus-services.ts` (#5091) 5 months ago
.changeset 63f3b40ef1 Change available Cerebras models + modify context window (#5076) 5 months ago
.clinerules 516d7bccc9 adding documentation workflow (#4598) 5 months ago
.github ee33e84c48 Speed up E2E tests (#5045) 5 months ago
.husky 0fade12e8e Format files before commit (#4155) 7 months ago
.vscode 35c0ced254 launch buttons (#5078) 5 months ago
assets bbee587cfe New icon 11 months ago
docs 06d5bc56bc Use `--system-prompt-file` to pass the system prompt to Claude Code (#5024) 5 months ago
eslint-rules 1ecb24544f fix: Generate type-safe code for the Vscode Protobus service (#5077) 5 months ago
evals 27bf78ddbd swapping latest diff algo as default (#4412) 5 months ago
locales 14a0c60550 Fix the Syntax in zh-tw/README.md to Improve Text Rendering (#3724) 7 months ago
old_docs f6d50ead3f Setup docs (#3230) 8 months ago
proto ad2923cd74 migrate save textDocument (#5088) 5 months ago
scripts e602efc7a6 Dont export the protobus handlers from the grpc-client `protobus-services.ts` (#5091) 5 months ago
src e602efc7a6 Dont export the protobus handlers from the grpc-client `protobus-services.ts` (#5091) 5 months ago
standalone caf0d8aee2 Add better error handling the `DiffViewProvider.saveDocument()` (#5041) 5 months ago
walkthrough 47899ac52d Adding Cline Walkthrough (#3746) 7 months ago
webview-ui e6462af336 automate announcement display for major.minor releases (#5081) 5 months ago
.changie.yaml b2dd04cff3 chore: add changie 11 months ago
.codespellrc 45b1666325 Add codespell support (config, workflow to detect/not fix) and make it fix some typos (#2939) 9 months ago
.eslintrc.json 1ecb24544f fix: Generate type-safe code for the Vscode Protobus service (#5077) 5 months ago
.gitattributes 1700c0e4f8 Run tests against Windows and Ubuntu (#3246) 7 months ago
.gitignore d2521a8abb Remove compiled files that were committed by mistake (#5082) 5 months ago
.mocharc.json fccac277d2 feat(lint): Add custom ESLint rule for checking that protobuf messages are created using .create() in more contexts (#3929) 7 months ago
.nvmrc fafdfe30a4 Add .nvmrc, .prettierignore, icon; Remove vsc quickstart guide 1 year ago
.prettierignore be2d416359 Updating Mintlify version (#5030) 5 months ago
.prettierrc.json 1700c0e4f8 Run tests against Windows and Ubuntu (#3246) 7 months ago
.vscode-test.mjs b6f6358d4a Set up E2E tests with Playwright (#4721) 6 months ago
.vscodeignore b6f6358d4a Set up E2E tests with Playwright (#4721) 6 months ago
CHANGELOG.md 45241fcccf v3.19.7 Release Notes (#4983) 5 months ago
CODE_OF_CONDUCT.md 860d315d7d Fix formatting 1 year ago
CONTRIBUTING.md f8a284c6fe Fixing the contributor flow for Cline to force users to make issues first (#4324) 6 months ago
LICENSE 6508549584 Update copyright year (#1637) 11 months ago
README.md 5dddbef65c Adding Groq provider (#4943) 6 months ago
buf.yaml 7ba4c9e15e Add a linter for proto files (#4179) 7 months ago
esbuild.js b6f6358d4a Set up E2E tests with Playwright (#4721) 6 months ago
package-lock.json be2d416359 Updating Mintlify version (#5030) 5 months ago
package.json 1ecb24544f fix: Generate type-safe code for the Vscode Protobus service (#5077) 5 months ago
playwright.config.ts b6f6358d4a Set up E2E tests with Playwright (#4721) 6 months ago
test-setup.js d2f1e0cde0 Replace vscode.workspace.workspaceFolders with host bridge getWorkspacePaths (#4443) 6 months ago
tsconfig.json be2d416359 Updating Mintlify version (#5030) 5 months ago
tsconfig.test.json b6f6358d4a Set up E2E tests with Playwright (#4721) 6 months ago
tsconfig.unit-test.json 99bbe17df9 What's yer path? (#3047) 8 months ago

README.md

Cline – #1 on OpenRouter

Meet Cline (pronounced /klaɪn/, like "Klein"), an AI assistant that can use your CLI aNd Editor.

Thanks to Claude 3.7 Sonnet's agentic coding capabilities, Cline can handle complex software development tasks step-by-step. With tools that let him create & edit files, explore large projects, use the browser, and execute terminal commands (after you grant permission), he can assist you in ways that go beyond code completion or tech support. Cline can even use the Model Context Protocol (MCP) to create new tools and extend his own capabilities. While autonomous AI scripts traditionally run in sandboxed environments, this extension provides a human-in-the-loop GUI to approve every file change and terminal command, providing a safe and accessible way to explore the potential of agentic AI.

  1. Enter your task and add images to convert mockups into functional apps or fix bugs with screenshots.
  2. Cline starts by analyzing your file structure & source code ASTs, running regex searches, and reading relevant files to get up to speed in existing projects. By carefully managing what information is added to context, Cline can provide valuable assistance even for large, complex projects without overwhelming the context window.
  3. Once Cline has the information he needs, he can:
    • Create and edit files + monitor linter/compiler errors along the way, letting him proactively fix issues like missing imports and syntax errors on his own.
    • Execute commands directly in your terminal and monitor their output as he works, letting him e.g., react to dev server issues after editing a file.
    • For web development tasks, Cline can launch the site in a headless browser, click, type, scroll, and capture screenshots + console logs, allowing him to fix runtime errors and visual bugs.
  4. When a task is completed, Cline will present the result to you with a terminal command like open -a "Google Chrome" index.html, which you run with a click of a button.

[!TIP] Use the CMD/CTRL + Shift + P shortcut to open the command palette and type "Cline: Open In New Tab" to open the extension as a tab in your editor. This lets you use Cline side-by-side with your file explorer, and see how he changes your workspace more clearly.


Use any API and Model

Cline supports API providers like OpenRouter, Anthropic, OpenAI, Google Gemini, AWS Bedrock, Azure, GCP Vertex, Cerebras and Groq. You can also configure any OpenAI compatible API, or use a local model through LM Studio/Ollama. If you're using OpenRouter, the extension fetches their latest model list, allowing you to use the newest models as soon as they're available.

The extension also keeps track of total tokens and API usage cost for the entire task loop and individual requests, keeping you informed of spend every step of the way.


Run Commands in Terminal

Thanks to the new shell integration updates in VSCode v1.93, Cline can execute commands directly in your terminal and receive the output. This allows him to perform a wide range of tasks, from installing packages and running build scripts to deploying applications, managing databases, and executing tests, all while adapting to your dev environment & toolchain to get the job done right.

For long running processes like dev servers, use the "Proceed While Running" button to let Cline continue in the task while the command runs in the background. As Cline works he’ll be notified of any new terminal output along the way, letting him react to issues that may come up, such as compile-time errors when editing files.


Create and Edit Files

Cline can create and edit files directly in your editor, presenting you a diff view of the changes. You can edit or revert Cline's changes directly in the diff view editor, or provide feedback in chat until you're satisfied with the result. Cline also monitors linter/compiler errors (missing imports, syntax errors, etc.) so he can fix issues that come up along the way on his own.

All changes made by Cline are recorded in your file's Timeline, providing an easy way to track and revert modifications if needed.


Use the Browser

With Claude 3.5 Sonnet's new Computer Use capability, Cline can launch a browser, click elements, type text, and scroll, capturing screenshots and console logs at each step. This allows for interactive debugging, end-to-end testing, and even general web use! This gives him autonomy to fixing visual bugs and runtime issues without you needing to handhold and copy-pasting error logs yourself.

Try asking Cline to "test the app", and watch as he runs a command like npm run dev, launches your locally running dev server in a browser, and performs a series of tests to confirm that everything works. See a demo here.


"add a tool that..."

Thanks to the Model Context Protocol, Cline can extend his capabilities through custom tools. While you can use community-made servers, Cline can instead create and install tools tailored to your specific workflow. Just ask Cline to "add a tool" and he will handle everything, from creating a new MCP server to installing it into the extension. These custom tools then become part of Cline's toolkit, ready to use in future tasks.

  • "add a tool that fetches Jira tickets": Retrieve ticket ACs and put Cline to work
  • "add a tool that manages AWS EC2s": Check server metrics and scale instances up or down
  • "add a tool that pulls the latest PagerDuty incidents": Fetch details and ask Cline to fix bugs


Add Context

@url: Paste in a URL for the extension to fetch and convert to markdown, useful when you want to give Cline the latest docs

@problems: Add workspace errors and warnings ('Problems' panel) for Cline to fix

@file: Adds a file's contents so you don't have to waste API requests approving read file (+ type to search files)

@folder: Adds folder's files all at once to speed up your workflow even more


Checkpoints: Compare and Restore

As Cline works through a task, the extension takes a snapshot of your workspace at each step. You can use the 'Compare' button to see a diff between the snapshot and your current workspace, and the 'Restore' button to roll back to that point.

For example, when working with a local web server, you can use 'Restore Workspace Only' to quickly test different versions of your app, then use 'Restore Task and Workspace' when you find the version you want to continue building from. This lets you safely explore different approaches without losing progress.


Contributing

To contribute to the project, start with our Contributing Guide to learn the basics. You can also join our Discord to chat with other contributors in the #contributors channel. If you're looking for full-time work, check out our open positions on our careers page!

License

Apache 2.0 © 2025 Cline Bot Inc.