GitHub

Upgrading Dependencies

The build system pins every external tool to a specific version for reproducibility. There are two kinds of dependencies, each with a different upgrade procedure.

Pinned Versions (build.zig)

These tools are defined as SemanticVersion structs in build.zig:

Tool Variable Current
uv uv_version 0.8.22
Go golang_version 1.24.5
Zig zig_version 0.15.2

Upgrade Procedure

Use the /upgrade-dep Claude Code command:

claude

# Inside Claude Code
/upgrade-dep uv 0.8.22

The command edits the version in build.zig directly.

Verify

./zig/zig build install
./bin/uv --version

Commit and PR

git add build.zig
git commit -m "chore: upgrade uv to v0.8.22"
git push origin your-branch

Open a PR to plan.

Source Dependencies (build.zig.zon)

These tools are built from source using Git refs:

Tool Current Version
Terraform 1.14.0
gh (GitHub CLI) v2.82.1
jq v1.8.1

The /upgrade-dep command does not handle these. They require manual edits to build.zig.zon — both the ref tag in the URL and the content hash must be updated.

Upgrade Procedure

  1. Find the new version’s Git tag from the tool’s release page
  2. In build.zig.zon, update the .url field to point to the new tag
  3. Set the .hash field to a placeholder (e.g., all zeros)
  4. Run ./zig/zig build install — the build system will report the expected hash in the error output
  5. Replace the placeholder with the correct hash
  6. Run ./zig/zig build install again to confirm it succeeds

Verify

./bin/terraform --version
./bin/gh --version
./bin/jq --version

Commit and PR

git add build.zig.zon
git commit -m "chore: upgrade terraform to v1.14.0"
git push origin your-branch

Open a PR to plan.

Edit this page