Search for a command to run...
Install the AI editors, terminal agents and IDE extensions teams are using right now — Cursor, Zed, Claude Code, Gemini CLI, Aider, Goose, OpenCode and more.
AI coding tools fall into three groups, and the right one depends on where you want the agent to live:
| Type | Where it runs | Examples |
|---|---|---|
| AI editor | Inside your IDE, with full context of the open project | Cursor, Zed, Windsurf / Devin Desktop, Kiro |
| Terminal agent | In your shell, editing files and running commands itself | Claude Code, Gemini CLI, Aider, Goose, OpenCode |
| IDE extension | As a VS Code extension on top of an editor you already use | GitHub Copilot, Cline, Roo Code, Continue |
Every guide below covers the official installation method for each tool, the authentication options, and the common failure modes — so you can get a working setup without guessing.
AI tools ship new versions weekly and rename products occasionally. The commands in these guides are taken from the current upstream documentation, but always check the tool's own install page if something behaves unexpectedly.
| Guide | Current release | What it covers |
|---|---|---|
| Cursor | Current stable | Official apt and yum repos, VS Code import, Agent and Plan Mode |
| Zed | Current stable | Install script, version pinning, built-in agent panel |
| Windsurf / Devin Desktop | Current stable | The rebrand, Codeium repositories, settings import |
| Kiro | Current stable | AWS Kiro IDE, CLI, specs and steering |
| Claude Code | 2.1.x | Native installer, signed apt/dnf/apk repos, signature verification |
| Gemini CLI | Current stable | npm, npx, Homebrew, OAuth and API keys, Antigravity migration |
| Aider | Current stable | One-line installer, uv and pipx, model providers, git workflow |
| Goose | Current stable | Desktop app, CLI installer, providers and MCP extensions |
| OpenCode | 1.x / 2.x | Install script, npm, Homebrew, AGENTS.md bootstrap |
| VS Code AI Extensions | Current stable | Copilot, Cline, Roo Code and Continue |
These tools read provider API keys from the environment. Keep them out of your shell history and out of Git:
# Use a password manager or your CI secret store
export ANTHROPIC_API_KEY="$(op read 'op://dev/ANTHROPIC_API_KEY')"
# Or a .env file that is never committed
echo ".env" >> .gitignoreNever paste a provider key into a chat prompt, a commit message, or an issue.