Repository navigation
feat(editors): open remote projects in JetBrains IDEs over SSH - #17271
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This PR adds a new JetBrains Toolbox SSH integration, including automatic JetBrains detection, new remote deep-link construction, and a broadened Electron protocol allowlist. The changes are narrowly tested and preserve existing local behavior, but the new user-facing external integration warrants human review. You can add or adjust custom eligibility rules. Learn more. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (4)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 WalkthroughWalkthroughJetBrains editors now generate Toolbox Gateway SSH URLs with IDE and project parameters. The desktop shell accepts matching Gateway SSH links and rejects unrelated or incomplete JetBrains URL shapes. ChangesJetBrains Toolbox remote-open links
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~15 minutes Change: Feature Suggested reviewers: Merge Risk: ⚪ Minimal · up to The change adds JetBrains remote opening through Toolbox links, and the generated URL shape matches the desktop allowlist. No actionable merge-blocking risk is established; real Toolbox interoperability still needs normal feature validation. 🚥 Pre-merge checks | ✅ 3 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (3 passed)
Full details: Description checkExplanation The description clearly explains the problem, implementation, limitations, and test coverage. However, it does not provide the required Scope and approval information, and the Verification section does not identify the specific tests or observed results. Resolution Add a Scope and approval section with a triaged issue or explicit maintainer approval, or explain why an exemption applies. Add a Verification section that lists the focused test commands and observed results, and state that real Toolbox installation testing remains incomplete.
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
Remote open-in-editor only worked with VS Code, its forks, and Zed. A JetBrains user on a remote environment had no way to open the project in their IDE.
JetBrains IDEs now open remote projects through the Toolbox App's SSH link:
packages/contracts/src/editor.ts: each JetBrains IDE gets ajetbrainsProductCode(IU,PY,GO, ...). Having one makes the IDE remote-capable under thejetbrainsscheme.buildRemoteOpenUrlbuilds the Toolbox link for these IDEs.apps/desktop/src/electron/ElectronShell.ts: the desktop app lets through onlyjetbrains://gateway/ssh/environmentlinks with a non-emptyh. Every otherjetbrains://action, every other Gateway plugin route, and any link with userinfo stays blocked.Why not the older
jetbrains-gateway://connectlink: withdeploy=true, Gateway rejects it unless it also carriesidePathor bothproductCodeandbuildNumber(GTW-6264), and we don't know those for a remote host. Toolbox takes a bare product code and picks the build itself.Like the VS Code and Zed links, this one omits user and port, so Toolbox has to read them from the host's SSH config entry.
Not yet tested against a real Toolbox install. Unit tests cover building the URL and the desktop allowlist.
Model: Claude Opus 5.5 via Claude Code in T3 Code.
🤖 Generated with Claude Code