Skip to main content

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:

ClientDefault local commandAPI key required by SHAFT
Codex CLIcodex exec --sandbox read-only - for Ask/Plan; workspace-write only after Agent approvalNo
Claude Codeclaude --print; Plan adds --permission-mode planNo
Copilot CLIcopilot ask, copilot plan, or copilot agentNo

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.