원클릭으로
build
Builds the GenVM project. Use after making code changes to compile Rust binaries.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Builds the GenVM project. Use after making code changes to compile Rust binaries.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Reviews the current GenVM branch by fanning out three specialized review agents (spec, security, implementation). Use when asked to "review this branch", "review the PR", or do a full code review of a diff.
GenVM Rust test conventions and style. Use when writing, adding, or modifying Rust tests — inline `#[cfg(test)] mod tests`, integration tests under a crate's `tests/`, helpers, assertions, and how `genvm-tool test` discovers them.
Runs tests for the GenVM project. Use after making code changes to verify correctness.
| name | build |
| description | Builds the GenVM project. Use after making code changes to compile Rust binaries. |
To build the GenVM project:
If ninja fails with missing and no known rule to make it (e.g., after adding/removing/renaming source files), regenerate the build file first:
./configure.rb
This runs the configure.rb Ruby script at the project root, which regenerates build/build.ninja with the current file list.
Build all Rust binaries:
nix develop .#full --command bash .claude/skills/build/scripts/run-ninja.sh -C build all/bin
This runs ninja silently and only shows output on failure (to save tokens).
Available ninja targets:
| Target | Description |
|---|---|
all | Build everything |
all/bin | Build all Rust binaries |
all/data | Build data about runners using Nix |
codegen | Run code generation |
Output locations:
out/bin/genvm-modules - modules binaryout/executor/<version>/bin/genvm - executor binary (one dir per built version, e.g. out/executor/v0.3.0-rc7/; the concrete version comes from executors/<line>.x/manifest.json and is recorded in build/info.json)Runners can only be built on x86_64 using the all target. On other platforms, download them instead.
Download runners:
nix develop .#full --command python3 build/out/bin/post-install.py --create-venv false --default-step false --runners-download true --error-on-missing-executor false
To develop/modify a runner (e.g., cloudpickle):
Enable dev mode:
Set runners/support/versions/dev-mode.nix to true
Set hash to "test":
In runners/support/versions/current.nix, set the runner's hash to "test"
Make your modifications and run tests With dev-mode enabled and hash set to "test", you can build and run tests.
Disable dev mode:
Set runners/support/versions/dev-mode.nix back to false. The build will now tell you to set hashes to null.
Set hashes to null and build:
Set the runner's hash (and dependent runners' hashes) to null, then build:
nix develop .#full --command ninja -C build all
The build will fail with a hash mismatch showing the new hash.
Update hashes:
Copy the new hash from the error message back into hashes.nix. Repeat for dependent runners.
Rebuild to verify: Run the build again to confirm all hashes are correct.