Edit local
RustRover remains the place where code, inspections, Cargo metadata, and intent live.
Yossi Eliaz · field page · June 2026
RustRover × crabbox.sh × islo.dev
Built on OpenClaw Crabbox (MIT).
This plugin is not part of Crabbox. It is written by Yossi Eliaz, and its
plugin.xml lists Incredibuild as the vendor (plugin id com.incredibuild.crabbox).
Crabbox Runner turns RustRover into a cockpit for remote execution: edit locally, sync the dirty checkout through Crabbox, run inside an Islo sandbox, and get back a run id, logs, artifacts, and test output instead of vibes.
Settings > Crabbox
ISLO_API_KEY = stored in Password Safe
Tools > Crabbox > Doctor Islo
ok git /usr/bin/git
ok ssh-key per-lease
ok provider islo
Tools > Crabbox > Run Cargo Test on Islo
--islo-image .../crabbox-rust-runner:0.3.5
sync candidate: 35 files (git-root anchored)
Compiling hello-crabbox v0.1.0
test result: ok. 2 passed; 0 failed
run summary command=2.67s exit=0 # verified
§01 · thesis
The plugin should not sell “run a command somewhere else.” It should sell a tighter development loop: a local editor that can dispatch the exact code under your cursor into a disposable, observable sandbox and return receipts. Crabbox owns the hard boundary. RustRover owns the human loop.
RustRover remains the place where code, inspections, Cargo metadata, and intent live.
Crabbox syncs the dirty checkout and runs cargo test, cargo clippy, or a smoke probe.
Run ids, lease ids, logs, provider status, artifacts, and output are visible from the IDE.
§02 · use case
The first killer use case is not “hello world.” It is the Rust project that compiles native crates, links OpenSSL, generates protobuf code, and has enough tests that a laptop run is not a trustworthy boundary.
The plugin now defaults Islo runs to a project-owned runner image with Cargo, clippy, rustfmt, nextest, clang/lld/mold, cmake, pkg-config, OpenSSL headers, protobuf, git, ssh, and rsync already present.
§03 · evidence
exhibit a · provider preflight
Fails before a lease if the local machine, Crabbox config, or Islo credential is wrong.
crabbox doctor --provider islo
exhibit b · sandbox smoke
Runs a tiny remote command to prove the provider path before spending time on a project test.
crabbox run --provider islo --islo-image ghcr.io/zozo123/rust-rover-plugin-crabbox/crabbox-rust-runner:0.3.5 -- cargo --version
exhibit c · project proof
Syncs the current checkout and runs the real Rust suite where the sandbox is the boundary.
crabbox run --provider islo --islo-image ghcr.io/zozo123/rust-rover-plugin-crabbox/crabbox-rust-runner:0.3.5 -- cargo test
§04 · runbook
This is the path the menu should make obvious. Install the zip, put the Islo key in one place, preflight once, then use the same button whenever a local run is too small a proof.
brew install openclaw/tap/crabbox
crabbox --version
# RustRover
Settings > Crabbox > Islo API key
Settings > Crabbox > Islo Rust image = ghcr.io/zozo123/rust-rover-plugin-crabbox/crabbox-rust-runner:0.3.5
Tools > Crabbox > Doctor Islo
Tools > Crabbox > Run Cargo Test on Islo
§05 · contracts
Captures intent and project context without becoming a remote control plane.
Owns auth, sync, provider args, lifecycle, logs, and evidence capture.
Runs untrusted or expensive code inside a disposable compute boundary.
Return run ids, console output, artifacts, and failure hints back to RustRover.
§06 · caveats
It proves the plugin shape. RustRover can configure Islo, call Crabbox, and show the proof loop from the IDE.
It does not replace Crabbox. Lease logic, sync, provider behavior, artifacts, and cleanup stay in crabbox where they belong.
It needs a real toolchain image. The default Islo Ubuntu image does not include Cargo. The plugin now sends the Crabbox Rust Runner image by default, and teams can replace it with their own baked image.
The next proof is context-aware tests. The obvious next layer is “run test under caret on Islo.”
Disclosure. The author is Principal Engineer, AI Systems at Incredibuild / islo.dev.