Branded, cross-platform IDE wrapper that ships a portable VSCodium bundle with the OpenClaw VS Code extension pre-installed.
apps/
wrapper/ # Electron app — downloads VSCodium, installs extension, launches editor
extension/ # VS Code extension — Home screen, Setup wizard, Status panel
.github/
workflows/ # CI: build wrapper (Win/Mac/Linux) + package extension
cd apps/wrapper
npm install
npm startLinux dependencies:
- Core GUI libraries (Ubuntu 24.04 example):
sudo apt-get update
sudo apt-get install -y \
libatk1.0-0t64 libatk-bridge2.0-0t64 libgtk-3-0t64 libgbm1 libnss3 \
libasound2t64 libx11-xcb1 libxcomposite1 libxdamage1 libxfixes3 \
libxrandr2 libxss1 libxtst6 libxkbcommon0 libxkbcommon-x11-0 libxcb1 \
libxcb-dri3-0 libxshmfence1 libcups2t64 libdrm2 libpango-1.0-0 \
libpangocairo-1.0-0 libgdk-pixbuf2.0-0- Headless/CI virtual display:
sudo apt-get install -y xvfb
xvfb-run -a npm startNotes:
- Electron requires Linux user namespaces. If your environment blocks them (common in restricted containers), the wrapper will not start even with Xvfb.
- If Electron reports a sandbox error, set SUID on
chrome-sandbox:
sudo chown root:root node_modules/electron/dist/chrome-sandbox
sudo chmod 4755 node_modules/electron/dist/chrome-sandbox- If you see
sandbox_host_linux.cc(41)errors, AppArmor may be blocking unprivileged user namespaces. On Ubuntu:
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0- Launch command for Linux:
npm run wrapperIf you see GPU init errors, use:
npm run --workspace=apps/wrapper start -- --disable-gpu --disable-software-rasterizerNote: the full flag is --disable-software-rasterizer (not truncated).
The wrapper will:
- Download portable VSCodium (pinned version) to
~/.occode/vscode/ - Install any bundled
.vsixextensions - Set default settings (theme, disable welcome)
- Launch VSCodium with a custom user-data directory
cd apps/extension
npm install
npm run compileThen press F5 in VS Code to launch the Extension Development Host.
Commands:
OpenClaw: Home— branded home screen with quick linksOpenClaw: Setup Local— wizard to detect OS, check prerequisites (git, node, docker), and guide OpenClaw setupOpenClaw: Status— shows whether the OpenClaw gateway is running
# Wrapper — platform-specific installer
cd apps/wrapper && npm run build
# Extension — .vsix package (bundled into wrapper)
npm run ext:compile
npm run ext:bundleThe bundle step copies the extension into a clean temp directory, runs vsce package
outside of the monorepo git workspace, and saves openclaw.vsix to
apps/wrapper/extensions/.
GitHub Actions builds the wrapper for Windows, macOS, and Linux on every push to main. Extension is compiled and packaged as a .vsix artifact.
PRs welcome! See AGENTS.md for the full plan and milestone tracker.
MIT
VSCodium version + SHA-256 hashes live in apps/wrapper/vscodium-manifest.json.
Use npm run vscodium:update <version> to refresh the manifest directly from the
official release assets. Downloads are now verified against those hashes before
extracting.