Claude Code in JetBrains: IntelliJ IDEA and PyCharm on Your Own Key
The plugin does not bundle Claude Code. It launches the console agent in the IDE terminal. Install, gateway key, diffs and common failures explained.
6 min · · IDE · development
If you work in IntelliJ IDEA, PyCharm or WebStorm, you can run Claude Code in JetBrains without switching editors. The plugin shows changes in the IDE's own diff viewer and passes your current selection to the agent, while models are called with your gateway key. Below: what actually gets installed, how to set the address and key so the IDE sees them, and what to do when the plugin cannot find the claude command.
How Claude Code works inside JetBrains
One detail people often miss: the plugin does not ship its own copy of the agent. According to Anthropic's documentation, it runs the claude command in the IDE's integrated terminal and connects to it. So you install two pieces: the console Claude Code and the plugin from the JetBrains Marketplace.
What the plugin adds on top of a plain terminal:
- quick launch with
Cmd+Esc(macOS) orCtrl+Esc(Windows and Linux); - edits shown in the IDE diff viewer instead of the terminal;
- the current selection and active tab shared automatically;
- file reference shortcuts such as
@src/auth.ts#L1-99viaCmd+Option+KorAlt+Ctrl+K; - IDE diagnostics (lint and syntax errors) that the agent reads through the
getDiagnosticstool.
Supported IDEs include IntelliJ IDEA, PyCharm, Android Studio, WebStorm, PhpStorm and GoLand.
Installation step by step
- Install the console Claude Code. On macOS and Linux the official installer looks like this:
curl -fsSL https://claude.ai/install.sh | bash
claude --versionIf claude --version prints a version number, the agent is installed. The Zukko documentation has a summary of connection options.
- In the IDE, open the Marketplace, find the Claude Code plugin (it is labeled Beta) and restart the IDE.
- Open a project and run
claudein the integrated terminal, or pressCmd+Esc/Ctrl+Esc.
If claude lives somewhere the IDE cannot find, set the full path in Settings → Tools → Claude Code [Beta], in the Claude command field. npx @anthropic-ai/claude-code is also accepted there.
Connecting a Zukko gateway key
By default the console Claude Code asks you to sign in to an Anthropic account. To work through the gateway you need two variables: the address and a token. For Claude Code the address has no /v1, because the client appends that suffix itself, and the token must be passed as ANTHROPIC_AUTH_TOKEN.
This is where people trip. Variables exported in ~/.zshrc are visible to your shell, but an IDE launched from the Dock or Start menu may never receive them. The most reliable option is the env block of ~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.zukko.pro",
"ANTHROPIC_AUTH_TOKEN": "fetch_your_key",
"ANTHROPIC_MODEL": "claude-sonnet-5-5"
}
}Create the key in the dashboard. The full key is shown once, so save it right away. Do not put the token into .claude/settings.json inside a repository: that file is usually committed and shared with the whole team. For per-project values use .claude/settings.local.json, and add it to .gitignore first.
Verification takes a minute. Run claude in the integrated terminal and type /status: it shows which sign-in method is active and which API address is in use. You should see the gateway address and ANTHROPIC_AUTH_TOKEN. If it shows an account login instead, the variables did not reach the process. According to Anthropic's documentation, ANTHROPIC_AUTH_TOKEN ranks above a saved subscription login, so /logout is usually unnecessary.
Prices as of October 18, 2026: claude-sonnet-5-5 costs $0.4 per 1M input tokens and $2 per 1M output tokens at Zukko. As an example, take a task with 600,000 fresh input tokens and 40,000 output tokens: 0.6 × 0.4 + 0.04 × 2 = 0.24 + 0.08 = $0.32. In the Anthropic format that Claude Code uses, part of the input is read from cache and billed at the cache-read price, so the real bill is usually lower. For current prices call GET https://api.zukko.pro/v1/models or open the Models page in the dashboard.
Diffs in the IDE and selection context
If edits open in the terminal instead of the IDE diff viewer, check the setting:
- run
claudein the integrated terminal; - run
/config; - set Diff tool to
autoto show diffs in the IDE, orterminalto keep them in the console.
The Diff tool entry only appears while Claude Code is connected to the IDE. If you started the agent in an external terminal, run /ide first: it finds the running IDE and links the session to it. Start claude from the root of the same project.
A note on selection: by default the plugin sends the model your current selection and the path of the open file. To keep secrets from .env out of requests, add a read-deny rule for that path in the permission settings. According to Anthropic's documentation, such a rule blocks both the selected text and the open-file notice.
Common problems
"Cannot launch Claude Code" or "command not found". claude is not on the PATH visible to the IDE. Check claude --version in a normal terminal and set the full path in the Claude command field.
"No available IDEs detected" after /ide. Make sure the plugin is enabled and restart the IDE completely (sometimes more than once). On WSL2 the usual cause is NAT networking or the Windows firewall; Anthropic's documentation describes a firewall rule and the mirrored networking mode.
Escape does not interrupt the agent. In Settings → Tools → Terminal, clear "Move focus to the editor with Escape" or delete the "Switch focus to Editor" shortcut.
JetBrains Remote Development. Install the plugin on the remote host, not on the local client.
Gateway errors. 401 means a wrong key (check that the token is set specifically in ANTHROPIC_AUTH_TOKEN), 402 means insufficient balance, and 403 with model_not_allowed_for_key means the model is not on the key's allowed list. A step-by-step breakdown is in the article on 401, 402 and model not found.
Security inside the IDE
Anthropic warns specifically that in acceptEdits mode the agent in JetBrains can modify IDE configuration files that the IDE may execute automatically. That raises the risk of bypassing Bash confirmation prompts. A sensible minimum: keep manual approval for edits and do not feed the agent untrusted prompts.
On the gateway side, it helps to create a separate key for the IDE with a daily dollar limit and a list of allowed models. If the agent loops, spending stops at the limit and you get a 429 with key_daily_limit_reached instead of a surprise at the end of the month.
What about Cline and other extensions
If you prefer a chat plugin inside the IDE over a console agent, look at Cline: according to its documentation it also works in JetBrains IDEs (including through the ACP protocol), and it connects to the gateway as an OpenAI-compatible provider with the address https://api.zukko.pro/v1. Step-by-step setup is in the article on Cline. For VS Code, Claude Code has its own extension: see Claude Code in VS Code. Which option is more comfortable is easiest to judge on your own tasks.
Create a key in the dashboard, put it into ~/.claude/settings.json and check /status: the first connection takes about ten minutes.
FAQ
Do I need the plugin if Claude Code is already installed in the terminal?
For console work the plugin is optional. It adds integration: diffs in the IDE window, selection sharing, diagnostics and hotkeys.
Why does the IDE not see variables from .zshrc?
An app launched from the Dock or a menu inherits the graphical session environment, not your shell's. It is more reliable to put the variables into the env block of ~/.claude/settings.json.
Which models can I choose?
Any model from GET /v1/models: set its id in ANTHROPIC_MODEL or use the /model command. For complex agent tasks people usually start with claude-sonnet-5-5 or claude-opus-5-5; compare by price, context and strength index, and test on your own tasks.
How do I pay from Russia?
Top up the balance from $1 via SBP (the payment page adds an 8.5% fee), with a MasterCard card or with cryptocurrency. Details are in the payment section of the dashboard.
zukko
Pay 25×
less
for Claude Code & ChatGPT
One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.
Related articles
- A neural network for Lua and Roblox: writing Luau scripts with AIWithout guidance a model may confuse Lua with Luau and suggest outdated Roblox APIs. How to phrase the task, check the code and connect an agent to your project.
- How to connect Qwen to VS Code: Companion, Cline and ContinueTwo ways to get Qwen in your editor: the official Companion for Qwen Code, or the Cline, Kilo Code and Continue extensions with an OpenAI-compatible key.
- Cursor for 1C: writing BSL code with an AI agentHow to open a 1C configuration dump in Cursor, write rules for BSL, give the agent metadata and avoid accepting invented code. With a session cost estimate.
- Cursor AI setup: models, your own key, rules and indexingA step-by-step Cursor setup: your own key with the gateway address, models, project rules, context exclusions and a connection check. What to do on day one.