@relictombs/opencode
v0.2.0
Published
Node-only configurator for local and remote Relictombs OpenCode environments
Maintainers
Readme
@relictombs/opencode
Set up Relictombs Browser and Android OpenCode integrations from start to finish with Node.js 24+ and npm. Users do not need Bun or a repository checkout.
npx --yes @relictombs/[email protected] setupThe interactive wizard enables Browser, Android, or both, then chooses one coherent runtime stack:
- local OpenCode with Electron and the Android Emulator on the same machine; or
- a local TUI attached to an OpenCode core on a server, with
@relictombs/host, Electron, and the Emulator beside it.
The Browser and Android plugin entries are installed only for the TUI. A server does not need a second plugin configuration. Server choices are ordinary SSH, SSH over Tailscale, and existing co-located OpenCode/host endpoints. Android setup is separately confirmed before it can install the supported SDK and AVD.
The wizard probes remote-client H.264 decoding internally. If FFmpeg is missing and a supported package manager is detected, it shows the exact install plan and runs it only after a separate confirmation. The server host performs its own exact libx264 check before announcing readiness. Tailscale is never installed or activated silently: setup checks status and reachability, then links to the official guide when human action is required.
For managed SSH, setup starts the exact OpenCode core and runtime host in the selected server project directory. It creates loopback-only OpenCode API, control, and media forwards, consumes generated credentials without printing them, and owns cleanup. It applies configuration automatically because printing a short-lived token and closing its tunnel would create unusable JSON. Agent MCP registrations stay on the server and operate the exact Electron tabs or Emulator whose video is decoded by the client.
Existing host endpoints can produce redacted JSON for review. Secret output requires an additional explicit
confirmation; otherwise output contains <redacted> and replacement instructions.
Project-specific CLI configuration lives at <project>/.opencode/relictombs/cli.json. OpenCode does not discover that
file automatically, so setup supplies the matching OPENCODE_CONFIG_DIR; if launch is deferred, it prints the exact
environment-prefixed command. Rerunning the wizard with different scopes lets one project use the local stack and
another attach to a server stack.
Existing JSONC comments, trailing commas, unrelated keys, plugin order, and explicit false settings are preserved.
A real change creates a timestamped mode-0600 backup and replaces the config atomically.
Non-interactive use
npx --yes @relictombs/[email protected] local --launch
npx --yes @relictombs/[email protected] remote --ssh user@server --opencode-core server --server-project-dir /srv/project --launch
npx --yes @relictombs/[email protected] remote --ssh user@server --opencode-core server --server-project-dir /srv/project --prepare-android --launchTo run the TUI itself in an SSH shell, SSH to the server and use the ordinary local --launch command there. From the
plugin's perspective OpenCode, Electron/AVD, and MCP are all local to that server; the terminal protocol travels through
SSH to the user's Kitty-capable terminal.
Use --browser-only or --android-only, --config <path>, or --dry-run with an existing co-located host/core.
--json emits only
the generated strict JSON document for machine consumption. Run
npx --yes @relictombs/[email protected] --help for every flag.
Contributor verification
bun run --cwd packages/opencode/cli check
bun run --cwd packages/opencode/cli test:packed