The agent in your editor:
sees what you see, changes what you approve.
The extension runs a local MCP server inside your editor; cc agent in the integrated terminal connects automatically —
editor capabilities become agent tools, and agent edits go through the editor's native diff under your judgment.
VS Code 0.37.37 is publicly listed on Open VSX, and JetBrains 0.4.76 is publicly listed on JetBrains Marketplace; both are recommended with CLI 0.162.189. Quality/retry attribution, transactional plugin recovery, and durable worktree/team/batch governance all come from the same authoritative CLI runtime. A Microsoft VS Code Marketplace build has not been published.
Thirteen things, the moment you open the editor.
Selection with every prompt
Each prompt automatically carries your current selection + open tabs (an <ide-context> block) — the model knows what you are looking at, never persisted to the session.
Diagnostics fed back
After the agent edits a file, language-server errors/warnings flow back into the tool result — it sees and fixes its own breakage within the same loop.
Native diff approval
File-edit confirmation upgrades to the editor’s side-by-side diff: edit the right side, Accept replaces execution, hunk-level "Pick hunks…" partial accept, "Request changes…" inline notes that the agent revises against; a cross-file change can go through openMultiDiff for one batched multi-file review. Reject never writes.
Jupyter kernel
executeCode runs code in the active notebook’s kernel and returns output, variables persist across calls (VS Code).
Sidebar Chat panel
Talk to the agent without a terminal: streaming replies + tool traces + Plan-mode cards + Approve/Deny cards + multiple conversation tabs (each its own agent process, switching restores the transcript) + session resume + /sessions switcher.
In-editor app preview
Start App Preview finds your dev script → runs the dev server → detects the served URL → opens it embedded in the editor (VS Code’s built-in Simple Browser / JetBrains’ JCEF browser, falling back to the external browser when JCEF is unavailable); the dev server’s HMR handles live reload on edits; if the dev server dies unexpectedly it reports a crash with a one-click Restart instead of silently stopping.
Terminal-context sharing
getTerminalOutput lets the agent see the commands you just ran in the integrated terminal — their output and exit code (VS Code 1.93+ shell integration) — so it knows what you ran and how it failed. Auto-injected into <ide-context> each turn, plus an explicit @terminal mention.
Tests, coverage, and debugger context
cc-ide-quality/v1 sends bounded quality snapshots with freshness metadata. Stale results stay visibly stale, and VS Code notebook execution carries the real notebook and cell context.
Transactional upgrades and supply-chain governance
Enable or disable by scope. Upgrades stage and revalidate manifests/signatures/SBOMs before atomic activation, restoring the previous version on failure. IDEs reload only after activation and require explicit consent for capability widening.
Distributed Agent Teams
The IDE observes raw local team-state v6 and separate distributed-queue v1 snapshots read-only. Takeover, managed-checkpoint recovery, and side-effect adjudication return to the CLI with authority-digest, lease, and evidence fences. Stale UI actions fail closed; the IDE never mutates authoritative JSON directly.
Tool duration and retries
Usage views show measured tool duration, observed same-turn retries, and secret-free streaming LLM retry reasons with actual provider/model identity, without retaining tool arguments, output, or credentials.
CLI version-sync
On activation it checks cc --version and offers a one-click upgrade if your chainlesschain CLI is older than the extension needs; the "Upgrade CLI" palette command runs npm i -g chainlesschain@latest on demand — keeping the extension (Open VSX) and CLI (npm) in step.
@ files / live slash commands
@-path TAB completion ranks editor-open files first; @-completion offers @selection / @diagnostics / @terminal; /status /doctor /mcp /hooks /permissions /agents /tasks /memory inspect the active session, alongside /new /plan /approve /reject /stop /expand.
The extension is just the bridge —
cc agent does the work.
Run cc agent in the editor's integrated terminal and it auto-connects to the extension's MCP server — that's how the thirteen things above happen.
The same agent ships a full suite of companion commands: a permission gateway, checkpoint rollback, cost reporting, loop automation and structured output — identical inside the IDE and in a bare terminal.
cc agent Auto-connects to the editor inside the integrated terminal — selection injection, diagnostics feedback, native-diff approval all live
cc agent -p "…" Headless single turn for CI / task scripts (text / json / stream-json output)
cc ide doctor Diagnose why the bridge did / did not connect (no lock / stale / workspace mismatch)
cc permissions .claude/settings.json allow / ask / deny rules + credential-read guard
cc checkpoint Auto-snapshot inside a git repo; one-click restore when an edit goes wrong
cc cost / cc loop / cc goal Spend reporting, scheduled loops, persistent cross-session goals
Two steps to install
- 1. Install the CLI:
npm i -g chainlesschain(current recommended0.162.189, bridge minimum0.162.47;cc ide doctordiagnoses connectivity) - 2. Install the extension: VSCodium / Cursor etc. — search ChainlessChain IDE in the extension panel (Open VSX currently
0.37.37); IDEA / PyCharm / WebStorm — Settings → Plugins → Marketplace, same name (current0.4.76, 2024.2+). The Microsoft VS Code Marketplace build has not been published; stock VS Code users can download and install the.vsixfrom Open VSX.
Safe defaults: server binds localhost only + per-instance random Bearer token + 0600 lockfile; on the CLI side --no-ide / CC_IDE_CONTEXT=0 / CC_IDE_DIFF_APPROVAL=0 switch each behavior off.
Protocol, troubleshooting, architecture
Discovery protocol (lockfile + env), Streamable HTTP, editor-agnostic design — all in the docs.
Read the IDE bridge docs ↗