contributor-context
Contributor context for coding agents working in this repository. Human contributors should start with `README.md` and…
<!-- GENERATED from docs/api/remote-runner.md by scripts/build-agent-skill.mjs. Do not edit. -->
$ npx -y skills add crossbind/crossbind --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
<!-- GENERATED from docs/api/remote-runner.md by scripts/build-agent-skill.mjs. Do not edit. -->
<!-- GENERATED from docs/api/remote-runner.md by scripts/build-agent-skill.mjs. Do not edit. -->
> Builds without a local Docker. A **runner** is one toolchain image this crossbind pins plus a small server that ships inside the CLI. With `RUNNER=REMOTE` and a runner's address and token set, every toolchain step bound for its image (compilers, CMake, SWIG, the linker, cargo, conan) runs on the runner instead of a local container; crossbind neither pulls that image nor starts containers. Your JavaScript never leaves the machine.
crossbind runner start # the web image on port 8787 # crossbind: crossbind-local-runner-web is running. Build against it with: # crossbind config set RUNNER REMOTE # crossbind config set REMOTE_URL_WEB http://127.0.0.1:8787 # export CROSSBIND_TOKEN_WEB=<token> crossbind config set RUNNER REMOTE crossbind config set REMOTE_URL_WEB http://127.0.0.1:8787 export CROSSBIND_TOKEN_WEB=<token> crossbind build -p wasm # crossbind: web steps run on the runner at http://127.0.0.1:8787 (RUNNER=REMOTE from ~/.crossbind.json, address from REMOTE_URL_WEB in ~/.crossbind.json). crossbind config set RUNNER DOCKER_RUN # back to the local Docker crossbind runner delete
For a single build, the environment does the same without changing `~/.crossbind.json`:
CROSSBIND_RUNNER=REMOTE CROSSBIND_REMOTE_URL_WEB=http://127.0.0.1:8787 CROSSBIND_TOKEN_WEB=<token> crossbind build -p wasm
Without a runner of your own, sign in and build on crossbind cloud:
crossbind login # shows a code to enter on github.com crossbind config set RUNNER REMOTE crossbind build -p wasm # crossbind: web steps run on the runner at https://api.crossbind.dev/runner/web (RUNNER=REMOTE from ~/.crossbind.json, address from crossbind login as octocat). crossbind usage # this month's build minutes, by image
`runner start` runs the runner in the local Docker, which is how you try it out or turn one machine into the build machine of others (`--host 0.0.0.0`, `--port`, `--token`; the token defaults to `$CROSSBIND_RUNNER_TOKEN`, else a new one). `--role android|linux|windows` starts the other images, on ports 8788, 8789 and 8790, so the runners one build needs fit on one machine. Its container is `crossbind-local-runner-<role>`; `runner delete` removes it, and one an older crossbind started as `crossbind-runner-<role>`. To run a runner elsewhere, deploy it.
crossbind runner init fly # or cloudflare, cloudrun, azure; --role android|linux|windows; --dir <folder>
`runner init` writes a folder and prints its deploy steps with a new token. For Fly and Cloudflare its `Dockerfile` starts `FROM` the image this crossbind pins and copies the runner in; Cloud Run and Azure deploy that image straight from GHCR and take the runner from `env.yaml` or `containerapp.yaml`. No runner image is published either way.
| Platform | `runner init` writes | Deploy | URL | |---|---|---|---| | Fly.io | `Dockerfile`, `fly.toml`: one `performance-4x` machine with 16 GB that stops when idle and starts on the next request | `fly launch --copy-config --no-deploy --ha=false`, `fly secrets set CROSSBIND_RUNNER_TOKEN=<token>`, `fly deploy --ha=false` | `https://crossbind-runner-<role>-<random>.fly.dev` | | Cloudflare Containers | `Dockerfile`, `wrangler.jsonc`: one `standard-4` container, `src/worker.js`: a Worker that checks the token, starts the container and forwards to it | `npx wrangler deploy` (builds the image with the local Docker), `npx wrangler secret put CROSSBIND_RUNNER_TOKEN` | `https://c
Import C++ and Rust like JavaScript modules (WebAssembly & React Native)
Contributor context for coding agents working in this repository. Human contributors should start with `README.md` and…
<!-- GENERATED from docs/api/app.md by scripts/build-agent-skill.mjs. Do not edit. -->
<!-- GENERATED from docs/api/build-state.md by scripts/build-agent-skill.mjs. Do not edit. -->
<!-- GENERATED from docs/api/conan.md by scripts/build-agent-skill.mjs. Do not edit. -->
<!-- GENERATED from docs/api/cpp-binding-rules.md by scripts/build-agent-skill.mjs. Do not edit. -->