update-reth

Updates the pinned reth dependency across OP Stack Rust workspaces and adapts code to upstream API changes.

6.5k|4.0k|Updated Feb 6, 2020
One-click install
npx skills add https://github.com/ethereum-optimism/optimism --skill update-reth
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: update-reth
Source: https://github.com/ethereum-optimism/optimism/tree/main/.claude/skills/update-reth
Command: npx skills add https://github.com/ethereum-optimism/optimism --skill update-reth

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Bumping the pinned paradigmxyz/reth dependency in the OP Stack Rust workspaces is error-prone: shared dependencies drift, upstream API changes break compilation, and verification steps get skipped. This Skill automates the full bump procedure so the upgrade lands as a single verified commit and PR.

Core Features & Use Cases

  • Pin Bump and Sync: Resolves the target reth release tag, commit, or PR, updates the four manifests, and syncs shared dependencies and lockfiles.
  • Compile-and-Adapt Loop: Iterates compilation to green, adapting OP Stack code to upstream reth API changes without manual breakage enumeration.
  • Verification and PR Workflow: Runs full verification, an AI review including the reth-update-reviewer agent, and ships one commit with a PR to develop.
  • Use Case: When a new reth release like v2.4.0 ships, ask the agent to update the pin; it works in an isolated git worktree, adapts the code, verifies everything, and opens the PR.

Quick Start

Ask the agent to update the repository to the latest reth release, for example by saying update to reth v2.4.0.

Frequently Asked Questions about update-reth

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I update the reth dependency in the OP Stack repository?

Invoke the skill with an optional target such as a release tag like v2.4.0, a commit sha, or an upstream PR number. It follows rust/UPDATING-RETH.md to bump the pin, sync shared dependencies, adapt to API changes, verify, and open a PR to develop.

How to adapt Rust code to breaking reth API changes?

The skill runs a compile-and-adapt loop: it iterates compilation until green rather than enumerating breakages up front. A local paradigmxyz/reth checkout is used for tag resolution, API archaeology, and diffing replicated code.

Can I update reth to a specific commit instead of a release tag?

Yes, the target argument accepts a release tag, a commit sha, or an upstream PR number. If omitted, it defaults to the latest upstream release tag listed via gh release list for paradigmxyz/reth.

Why do reth update builds fail on memory-constrained machines?

Heavy Rust builds can exhaust memory and crash. The skill wraps builds in systemd-run --user --scope with a MemoryMax limit and reduced parallelism, avoiding ulimit -v which causes rustc to SIGABRT.

What verification happens before a reth bump PR is pushed?

All verification steps listed in rust/UPDATING-RETH.md run before any push, followed by an AI review covering code, security, and the reth-update-reviewer agent, which catches upstream changes that should have forced op-side changes.