This is a hybrid reconstruction of Grok Bot 0.18.0
The project does not claim to be Anysphere's original source. It reconstructs Electron main-process code, preload boundaries, host logic, a coordinator, protocols, and settings in readable TypeScript. The polished renderer remains compiled upstream JavaScript and CSS because the distributed application did not include authored frontend source or source maps. A narrow transform inserts the new Router settings into that retained UI.
Grok Bot 0.18.0 is treated as a pinned build input. Bootstrap obtains the macOS arm64 DMG from a Git LFS preservation copy, an original public URL, or a user-supplied application path. It verifies the DMG and app.asar, records original and patched renderer hashes, assigns a separate bundle identifier, and ad-hoc signs the result. That discipline makes the reconstruction inspectable, while the result still depends on upstream compiled material.
Four provider routes are useful experiments, not a support promise
The Router can select Cursor, Claude Code, Codex, or OpenRouter for new turns. Cursor uses the existing Grok Bot or Cursor session. Claude Code and Codex reuse authenticated local clients, while OpenRouter needs an API key stored through the desktop secrets bridge. The reconstruction attempts to preserve streaming, thinking state, reactions, plugin mentions, and MCP tool execution across these different paths.
Open issues show where that abstraction is incomplete. Issue 11 says routed-provider secrets do not reach the Mac-side coordinator, and issue 9 says one routed path sends tools without executors. Two reports are enough to rule out a claim that all four providers behave alike. They also illustrate the main engineering risk: a UI can expose the same switch while authentication, tool calls, usage reporting, and failure modes differ underneath.
The local Docker option replaces the remote box with an owned container bound to loopback. Host and daemon artifacts mount read-only, and the coordinator validates the container before connecting. This is useful for studying local execution, but the README still requires Docker Desktop or a compatible daemon and says remote mode remains the default. Container isolation also does not remove the risk attached to credentials reused from local provider clients.
The target is one Apple Silicon release
The documented environment is macOS on Apple Silicon with Node.js 26.5.x, Xcode Command Line Tools, and Git LFS. Windows x64 installer research is preserved, yet Windows support remains an issue. Linux and Intel Mac work appears in open pull requests rather than the quick-start contract. Anyone outside the supported Mac target is evaluating unfinished port work, not following the maintained path.
That narrowness is reasonable for reverse engineering. Pinning one binary reduces ambiguity while contracts are recovered. It is a poor fit for an application team that needs durable upgrades, because the README makes no promise of compatibility with future Grok Bot versions. A new upstream renderer can change hashes, RPC shapes, UI chunks, or authentication behavior and force another recovery cycle.
What happened when we ran it
Our sandbox cloned commit a9f633e into an unprivileged Node environment with 3 CPUs, 8 GB of RAM, and no secrets. The repository contained 2,111 files and about 439,143 source lines in a 29 MB checkout. npm installation succeeded in 21 seconds, adding 383 packages and taking 473 MB on disk.
The build failed after 3 seconds. Its final stack trace came from scripts/audit-runtime-composition.mjs, which tried to open src/app/dist/renderer/assets/pdf-WLgSwHwh.js and received ENOENT. The log establishes that this generated or hydrated renderer asset was missing at that path. It does not establish whether Git LFS, bootstrap, platform mismatch, or another step caused the absence, so we will not pick a cause.
Tests also failed after 3 seconds. tests/research-archives.test.mjs expected 155793020 and received 134 in a strict equality assertion. The supplied log showed a failing-test summary but no total count, so no pass rate can be reported. npm audit found 29 known vulnerabilities: 5 high, 20 moderate, and 4 low. The checkout had one CI workflow and no Dockerfile.
Licensing is the reason to keep this in the lab
GitHub reports no repository license. The README points to PROVENANCE and NOTICE files, distinguishes reconstructed code from retained upstream boundaries, and says the app uses a separate identity without overwriting the installed upstream application. Those are responsible disclosures. They do not grant permission by themselves. Issue 7 explicitly asks for licensing and permission around a derivative to be clarified.
The repository was pushed on August 23, 2026, with 12 open issues and pull requests during our research. There was no latest GitHub release. Active work includes RPC recovery, a Docker gateway, transcript handling, CI archive checkout, and platform ports. That is healthy activity for a new research repository, while the absence of releases and the open reconstruction plan reinforce its experimental status.
Grok Bot 0.18 Reconstructed is worth reading if your subject is Electron reverse engineering, agent protocols, or provider routing. It is not the clean way to obtain a multi-provider coding agent. OpenCode, Codex, or Continue gives a team a source-first product with a clearer adoption path. Keep this project isolated, use disposable credentials, and resolve permission before distributing anything built from the retained upstream renderer.

