grok-bot-0.18-reconstructed README

The project's README from github.com/b-nnett/grok-bot-0.18-reconstructed. As one markdown file: README.md.

Grok Bot 0.18 — reconstructed and extended

Grok Bot Router settings with Codex selected and local usage totals

This repository is an unofficial, source-oriented reconstruction of the publicly shipped Grok Bot 0.18.0 macOS app.

The project began as an attempt to understand how the desktop app was put together. It now contains readable TypeScript implementations of its Electron, host, coordinator, local-execution, protocol, and renderer boundaries, plus a deterministic toolchain for turning those sources back into a working macOS application.

It also adds a few practical experiments:

This is a hacking and research project, not Anysphere's original monorepo and not an official Grok Bot release. Names and module boundaries inferred from a compiled application may differ from the original source.

What is in the repository?

The checked-in tree contains the reviewed reconstruction, tests, manifests, build scripts, and Git LFS preservation copies of the original macOS arm64 and Windows x64 installers. It deliberately does not commit the extracted upstream application, build output, local credentials, or the large forensic recovery workspace.

The public Grok Bot 0.18.0 application is instead treated as a pinned build input. During bootstrap, the toolchain downloads it, verifies its SHA-256 identity, and extracts the pieces required to assemble the reconstruction.

The resulting app is a hybrid by design:

The upstream app installed on the machine is never overwritten.

Why retain the shipped renderer?

The distributed application did not include the original frontend source or source maps. It contained optimized, minified production JavaScript and CSS chunks: enough to inspect behavior and recover contracts, but not the authored React components, names, comments, file structure, or design-system source.

Recreating the complete frontend with the same polish and behavior would have been a separate, much larger reverse-engineering project. It was not a realistic goal for a weekend build. The practical choice was therefore to reconstruct the runtime and control-plane code, retain the checksum-pinned shipped renderer, and make the smallest auditable UI patch needed for the new Router settings.

frontend/ is a readable partial reconstruction and design workspace. It is useful for understanding UI contracts and experimenting with clean components, but it should not be mistaken for Anysphere's missing original frontend source or a pixel-perfect replacement for the packaged renderer.

Preserved original installers

Research copies of the exact 0.18.0 installers live under research-archives/original/0.18.0/ and are stored with Git LFS:

Platform File SHA-256
macOS arm64 macos-arm64/Grok_Bot_0.18.0.dmg a253ccd8aab01e083f9812a0264354c5034d8ba7f0610bbb557e82ae77d203eb
Windows x64 windows-x64/Grok_Bot_0.18.0_Setup.exe 464079a15ef5fa8b61ccea8fffcc78f63cfcf6df65fb0ad5e725d8b95f7e437e

See research-archives/README.md for source URLs, sizes, verification commands, and the machine-readable artifact manifest.

Current features

Inference Router

Open Settings → Router to choose the backend used for new turns:

Provider Authentication Tool support
Cursor Existing Grok Bot/Cursor session Native Grok Bot tools and plugins
Claude Code Existing Claude Code login Routed Grok Bot MCP tools
Codex Existing local ChatGPT/Codex login Direct Responses transport with Grok Bot tools
OpenRouter API key saved through the desktop secrets bridge Grok Bot tool-execution loop

Cursor is the default. Claude Code and Codex do not require separate API keys when their local clients are already authenticated. The application preserves streaming responses, thinking state, reactions, rich plugin mentions, and MCP tool execution across routed conversations.

Usage & Billing shows the locally recorded request and token totals for providers that return usage data. These figures are activity records, not an authoritative provider invoice.

Local Docker sandbox

The Router page also has a Use local Docker VM toggle. When enabled, Grok Bot runs its box host and execution daemon in an owned local container instead of connecting to the remote sandbox.

The container:

Docker Desktop, or another compatible local Docker daemon, must be running. Remote mode remains the default.

Requirements

Quick start

git clone <your-repository-url>
cd grok-bot-0.18-reconstructed
git lfs install
git lfs pull
npm ci
npm run bootstrap
npm run check
npm run package
open "dist/Grok Bot 0.18 Reconstructed.app"

npm run bootstrap first uses the Git LFS preservation copy of the pinned 0.18.0 DMG. If that archive is absent, it falls back to the original public URL; GROK_BOT_018_APP can also point to an existing application copy. Bootstrap verifies both the DMG and app.asar, caches the matching Electron runtime, and hydrates the ignored src/app/dist build input.

npm run package compiles the reconstructed runtimes, applies the narrow renderer/settings transform, creates the app bundle, assigns the reconstructed bundle identity, ad-hoc signs it, and verifies the result. Output is written to:

dist/Grok Bot 0.18 Reconstructed.app

Reconstructed packages disable the upstream updater at the packaging boundary and default upstream Sentry and telemetry emission off. Explicitly supplied environment configuration is still respected.

Architecture

polished shipped renderer
          │
          │ desktop preload / RPC
          ▼
     Electron main
          │
          ├── settings, secrets, auth and plugin lifecycle
          ├── remote box connector
          └── owned local Docker connector
                       │
                       ▼
              coordinator + host
                       │
              inference router
           ┌───────────┼───────────┐
        Cursor      Claude       Codex / OpenRouter
                       │
                 Grok Bot MCP tools

The main source areas are:

See docs/ARCHITECTURE.md for more detail.

Development commands

npm test                  # focused regression tests
npm run typecheck         # renderer TypeScript
npm run source:typecheck  # runtime TypeScript
npm run frontend:build    # build the readable renderer reconstruction
npm run package           # build, sign, and verify the macOS app
npm run verify            # verify an existing packaged app
npm run smoke             # bounded native smoke check
npm run publication:check # prove a fresh-history export is lossless

Generated directories including .cache, .build, dist, src/app/dist, recovered, recovery, and local probe roots are ignored.

Project status

The app launches and the core reconstructed flows are usable, including routed inference, connected plugins, and the local Docker sandbox. This is still an experimental reconstruction: it targets one pinned macOS/arm64 release, depends on external provider sessions, and does not promise compatibility with future Grok Bot versions.

For changes, read CONTRIBUTING.md. For the clean-history export procedure, see docs/PUBLISHING.md. Technical provenance and retained upstream boundaries are described in PROVENANCE.md and NOTICE.md.

grok-bot-0.18-reconstructed (b-nnett/grok-bot-0.18-reconstructed)

Searching Database…

这是什么?这是对公开发布的 Grok Bot 0.18.0 macOS 应用进行的非官方、以源码为导向的重建,被重构成可读的 TypeScript 源码,并扩展了推理路由器、MCP 工具、本地用量跟踪和可选的本地 Docker 沙箱。
这是官方的 Grok Bot 发行版,还是逆向工程的构建?它是一个黑客/研究性质的重建,既不是 Anysphere 的原始源码,也不是官方发行版;它把从 source/ 重建的运行时代码与原始压缩发布的渲染器混合起来,作为 UI 基线。
怎么构建并运行这个重建的应用?运行 'npm run bootstrap' 下载固定的 0.18.0 DMG 并做 SHA-256 校验(或把 GROKBOT018APP 指向已有的副本),然后运行 'npm run package' 编译运行时、给渲染器打补丁,并生成 ad-hoc 签名的应用包。
构建之前需要安装什么?你需要 Apple Silicon 上的 macOS、Node.js 26.5.x、Xcode 命令行工具和 Git LFS;只有想用本地沙箱才需要 Docker Desktop,而 Claude Code/Codex 路由模式需要这些应用已在本地登录。
它适合长期依赖,还是只是一次性实验?它被明确标记为实验性:只针对一个固定的 macOS/arm64 版本,依赖外部提供商的会话保持有效,并且不保证能与未来的 Grok Bot 版本配合工作。
我也能在 Windows 上构建和运行吗?不能——构建和运行这个重建版本需要 Apple Silicon 上的 macOS;Windows 0.18.0 安装程序只作为带校验和的研究存档保存在 research-archives/ 里,并不是受支持的构建目标。
我可以把推理路由到哪些 AI 提供商?路由器支持 Cursor(默认,通过你已有的会话)、Claude Code 和 Codex(复用本地已认证的登录,无需额外 API 密钥),以及通过保存的 API 密钥使用 OpenRouter。
这个项目还在积极维护吗?不——仓库已归档,它作为一个实验性研究快照被冻结,而不是持续开发的项目。
本地 Docker 沙箱替代了什么?它把远程执行主机换成一个仅绑定回环地址的本地容器,运行同样的 box 主机和执行守护进程,并以只读方式挂载内容寻址的制品。
为什么整个 UI 没有从零重建?发布的应用只包含压缩且没有 source map 的生产环境 JS/CSS,完整重现原始 React 前端超出了项目范围;因此团队保留了经校验和验证的原始渲染器,只针对新的路由器设置界面做了一个小范围补丁。
Creator
b-nnett
Size
5.4 MB
Stars
3.5K
Updated
CommitAug 23
Age
1mo
Commits · 90 Days