IntelliJ IDEA plugin beta
The SHAFT IntelliJ IDEA plugin is a beta JetBrains Marketplace plugin for Java
test projects. It is a thin IDE shell over shaft-mcp: SHAFT engine behavior,
local CLI agent routing, direct provider adapters, Doctor, Healer, Capture, and
Inspector logic stay in the engine modules.
Install the beta from JetBrains Marketplace when it is published, then open Settings | SHAFT and set the MCP stdio command generated by Connect shaft-mcp. The plugin starts that stdio command when it invokes tools; it does not embed the SHAFT engine or manage provider model traffic itself.
Tool window
Open Tools | SHAFT | Open SHAFT to show the tool window. The beta exposes tabs for:
- Recorder: Capture start, status, checkpoints, stop, code blocks, and record-at-target snippets.
- Playback: WebDriver, Playwright, and mobile replay flows.
- Doctor: failed Allure analysis, trace discovery, trace analysis, and report remediation.
- Healer: guarded failing-test reruns and review-only locator proposals.
- Inspector: mobile toolchain status, wrapped Appium Inspector recording, mobile screenshots, and accessibility trees.
- MCP: scenario catalog, generated-code guardrail checks, and local Autobot client discovery.
- Guide: live official SHAFT guide search for agent-generated code.
Each tab provides editable JSON arguments and calls the matching MCP tool. This keeps generated code and source edits reviewable in the IDE instead of hidden inside plugin code.
Record in Java code
Use Tools | SHAFT | Record SHAFT Flow Here from a Java file to prepare a
capture_record_at_target_code_blocks request for the caret's package, class,
method, and source path. Replace the capture session path with a real recording
before running it.
Autobot
The optional Autobot tab is a chat-style view with ASK, PLAN, and
AGENT modes. It calls the MCP autobot_local_agent_run tool, which delegates
to the engine-side local agent service in shaft-pilot-core.
Supported local routes are:
| Client | Default local command | API key required by SHAFT |
|---|---|---|
| Codex CLI | codex exec --sandbox read-only - for Ask/Plan; workspace-write only after Agent approval | No |
| Claude Code | claude --print; Plan adds --permission-mode plan | No |
| Copilot CLI | copilot ask, copilot plan, or copilot agent | No |
Agent mode is blocked until the user explicitly approves source mutation. A
custom local agent command can be supplied for non-standard installations, but
the request still flows through shaft-mcp.
Optional OpenAI, Anthropic, and GitHub tokens are stored in IntelliJ Password
Safe and can be passed as MCP process environment variables. Direct provider
calls remain controlled by shaft-ai and the provider controls;
the plugin does not implement provider adapters.
Publishing
The engine repository publishes beta builds through the Publish IntelliJ Plugin Beta GitHub Actions workflow after the Maven Central release workflow,
or manually by maintainers. The workflow signs the plugin, verifies it with the
IntelliJ Plugin Verifier, and publishes to the JetBrains Marketplace beta
channel.