Commit Graph
3 Commits
Author SHA1 Message Date
LinusandClaude Opus 5.5 9b921eeae5 Add install.sh with an app-menu launcher
install.sh builds the image (run.sh --build-only) and adds a "Claude RE
Workstation" desktop entry that starts this checkout's run.sh, with
Claude Desktop's icons taken from the image under their own name.
--uninstall removes the launcher and icons again.

run.sh gains --build-only, which needs no display, and shows errors in a
zenity dialog when it has no terminal, as when started from the menu.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 18:35:29 +01:00
LinusandClaude Opus 5.5 ab9bb3eae9 Add unblob so REA can extract firmware
unblob 26.6.4 (the version REA is verified with) is installed from its
PyPI wheel into /opt/unblob, with dependencies pinned to its uv.lock at
the release commit. A wrapper puts that venv first on PATH, and
REA_UNBLOB_COMMAND points REA's extract_firmware at it.

Its extractors follow upstream's install-deps.sh: Ubuntu packages,
sasquatch v4.5.1-6 (also used by binwalk) and onekey-sec's e2fsprogs
fork, whose debugfs rdump options the ext2/3/4 handler needs. The build
checks that unblob finds every extractor.

The uv.lock converter moves to scripts/ and skips the locked project
itself generically, since ghidra-mcp and unblob both use it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 18:20:01 +01:00
LinusandClaude Opus 5.5 43ed5f9183 Add the REA (Reverse Engineer Anything) MCP server
REA 6.8.0 (rea-agents on npm, checked against the registry's integrity
hash) runs in its own container from the same image, because some of its
tools run the target: workspace only, no display, no capabilities, and
only an internal network with no route out. It serves MCP over HTTP and
Claude Desktop reaches it through mcp-remote, installed from a committed
lockfile. It uses the image's Ghidra 12.1.4 headless and binwalk.

run.sh creates the internal network, starts REA before Claude Desktop and
stops it when Claude Desktop's container ends. Adds a README with usage
and sources.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 16:43:08 +01:00