Agent skill

Benchmark Readme Sync

by rstackjs in rstackjs/build-tools-performance

Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables.

MITAuto-check passedDevelopment

Install Benchmark Readme Sync

skills CLI
$ npx skills add rstackjs/build-tools-performance --skill benchmark-readme-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install rstackjs/build-tools-performance benchmark-readme-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/rstackjs/build-tools-performance.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/benchmark-readme-sync .claude/skills/benchmark-readme-sync && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
benchmark-readme-sync
GitHub stars
115
Token cost
~1.6k tokens
SKILL.md length
779 words
Files
1
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables.

  • Works in 6 steps: Read README.md,… → Resolve the canonical GitHub repository… → Confirm the run succeeded and map each… → …
  • Tasks that involve Technical documentation
  • SKILL.md covers When to use, Workflow, Result layout and Commands, plus 1 more section
  • Calls gh and jq

What it does

Benchmark Readme Sync is an agent skill from rstackjs/build-tools-performance. Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Technical documentation, Reproducible research and CI/CD. It works with GitHub Actions, Vite and webpack. The repository describes itself as: Benchmarks for bundlers and build tools, including Rspack, Rsbuild, webpack, Vite, Rolldown, esbuild, Parcel, Farm and Utoo. The licence is MIT.

When your agent uses it

  • Tasks that involve Technical documentation
  • Tasks that involve Reproducible research
  • Tasks that involve CI/CD

Example prompts

  • “/benchmark-readme-sync”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Read README.md, .github/workflows/benchmark.yml, and the reporting code in scripts/benchmark.ts to confirm the cases, metrics, and current…
  2. Resolve the canonical GitHub repository and default branch with gh repo view, then find the latest successful Benchmark workflow run on…
  3. Confirm the run succeeded and map each matrix case to a successful job, including rerun attempts. Use one workflow run for the complete…
  4. Prefer the uploaded benchmark-- artifacts. Read summary.md for tables and summary.json for exact values, tool versions, units, and…
  5. Update README.md carefully
  6. Validation is required after the edit

What it can do on your machine

Read from SKILL.md and the folder at commit 69e3f72. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Benchmark Readme Sync loads about 1.6k tokens when it runs. Until then it costs about 45 tokens; SKILL.md has 779 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~45
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from rstackjs/build-tools-performance at commit 69e3f72, republished under its MIT licence (© rstackjs). 779 words, ~1,605 tokens.

Download SKILL.mdSave it as .claude/skills/benchmark-readme-sync/SKILL.md (or your agent's skills folder).
name
benchmark-readme-sync
description
Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables.

Benchmark README Sync

When to use

  • Update README.md benchmark results from GitHub Actions.
  • Replace stale benchmark tables, versions, run links, or dates.
  • The user does not need to provide an Actions URL.

Workflow

  1. Read README.md, .github/workflows/benchmark.yml, and the reporting code in scripts/benchmark.ts to confirm the cases, metrics, and current output format.
  2. Resolve the canonical GitHub repository and default branch with gh repo view, then find the latest successful Benchmark workflow run on that branch unless the user gave a specific run ID.
  3. Confirm the run succeeded and map each matrix case to a successful job, including rerun attempts. Use one workflow run for the complete set of results; do not mix unrelated runs or silently substitute local measurements.
  4. Prefer the uploaded benchmark-<os>-<case> artifacts. Read summary.md for tables and summary.json for exact values, tool versions, units, and measurement settings. Use final job-log tables only if artifacts are unavailable.
  5. Update README.md carefully:
    • Record the source run URL, run date, and commit SHA. Use the run's date, not the date of the README edit.
    • Replace each case's tables with its matching results, following the layout below.
    • Preserve the case heading, prose, command block, and the final --- separator before ## Run locally.
    • Preserve reported values and ranking emojis. If older output needs reformatting, use its summary.json with the current reporting logic in scripts/benchmark.ts; do not rerun benchmarks just to render tables. Avoid importing the whole benchmark entrypoint, which starts measurements.
  6. Validation is required after the edit:
    • Every case in the workflow matrix is represented in README.md.
    • Table order, available columns, tool names, units, and values match the source results and current reporting format.
    • No duplicated headings, tables, rows, or min–max ranges appear in the displayed results.
    • Case descriptions and the separator before ## Run locally are preserved.
    • For a routine sync, the diff only changes result tables and their source metadata.

Result layout

  • Development metrics: startup without cache, startup with cache, and HMR. Omit this table for build-only cases.
  • Build metrics: build without cache, build with cache, output size, and gzipped size.
  • Dev memory (MiB): a separate table immediately below Build metrics, with Name, Steady (no cache), Steady (with cache), Peak (no cache), and Peak (with cache). Omit this table for build-only cases.
  • Build memory (MiB): follows Dev memory, or Build metrics for build-only cases, with Name, Peak (no cache), and Peak (with cache).
  • Keep memory out of the Development and Build tables. Put MiB in the table labels and display memory medians to one decimal place without repeating the unit in cells, for example 365.9🥇, without a suffix such as (365.9–377.5). Raw JSON can retain minimum and maximum values.
  • State the source memory metric (macOS physical footprint or Linux RSS). Historical single-process RSS snapshots cannot supply process-tree steady or peak values; do not relabel them or invent missing metrics.
Show full SKILL.md (309 more words)Show less

Commands

Prefer gh because it is authenticated and exposes both run metadata and logs. Use these to execute or debug the workflow manually.

Resolve the canonical repository and default branch:

bash
benchmark_repo=$(gh repo view --json nameWithOwner --jq .nameWithOwner)
benchmark_branch=$(gh repo view --json defaultBranchRef --jq .defaultBranchRef.name)

Find the latest successful benchmark run:

bash
gh run list \
  --workflow Benchmark \
  --branch "$benchmark_branch" \
  --limit 20 \
  --json databaseId,conclusion,url,createdAt,headSha \
  --jq 'map(select(.conclusion == "success")) | sort_by(.createdAt) | last' \
  -R "$benchmark_repo"

Expand the search if the first page has no successful run. Download artifacts into a fresh temporary directory:

bash
gh run download <run_id> -R "$benchmark_repo" --dir <temporary-directory>

Map case names to job IDs:

bash
gh api repos/<owner>/<repo>/actions/runs/<run_id>/jobs --paginate \
  | jq -r '.jobs[] | [.id, .name, .conclusion] | @tsv'

Extract a job's final benchmark tables:

bash
gh run view <run_id> --job <job_id> --log \
  -R <owner>/<repo> \
  | cut -f3- \
  | perl -pe 's/\e\[[0-9;]*[A-Za-z]//g' \
  | sed -E 's/^\xef\xbb\xbf//; s/^[0-9T:.\-]+Z //' \
  | awk '/^(Development|Build|Memory) metrics:$|^(Dev|Build) memory \(MiB\):$/ {capture=1; print; next} capture && (/^\|/ || /^$/) {print; next} capture {exit}'

Notes:

  • Do not rely on the second log column being Run Benchmark. Current gh run view --log output may label lines as UNKNOWN STEP, while the third column still contains the benchmark output you need.
  • Capture starts at the first Development metrics: or Build metrics: heading so preamble noise is excluded.
  • Stop at the first non-table output after capture begins so artifact-upload and cleanup steps do not leak into the tables.
  • Keep all four tables for cases with dev metrics; build-only cases have Build metrics followed by Build memory.
  • Prefer replacing one case section at a time or using a temporary one-off local command; do not add repository scripts just to complete a single sync.
  • The brittle part of the edit is preserving section boundaries, especially the final --- before ## Run locally.

Failure handling

  • If no successful Benchmark run exists, stop and report that blocker.
  • If a case is missing, failed, truncated, or lacks the required metrics in both artifacts and logs, report it and do not present a partial set as a complete refresh.
  • If the workflow matrix and README sections do not match, call out the mismatch and preserve unsupported sections rather than silently dropping them.
  • If README.md already points to the latest successful run and the extracted tables match, the expected result is an empty diff.
  • If the workflow breaks down, include the failing step in the report: repo resolution, run lookup, job mapping, log extraction, README replacement, or structural validation.

© rstackjs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/benchmark-readme-sync of rstackjs/build-tools-performance.

Open the folder on GitHubat commit 69e3f72

Compare with similar skills

Benchmark Readme Sync next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Benchmark Readme Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Benchmark Readme Sync this skillrstackjs/build-tools-performance115—~1.6kAutomated safety check: PassMIT
Posting Review Summarybitwarden/ai-plugins154—~2.3kAutomated safety check: PassCustom licence
Ccb GitHubSeemSeam/claude_codex_bridge3.5k—~4.9kAutomated safety check: PassCustom licence
Claude Docs Consultantcentminmod/my-claude-code-setup2.7k—~959Automated safety check: PassMIT
Avotokyo Workflowsheyq02/simpleicons.dev171—~1.5kAutomated safety check: PassApache-2.0
Cloudflare Workers CD Rollbackmizchi/skills356—~1.2kAutomated safety check: NotesNone

Similar skills

  • Posting Review Summary

    bitwarden/ai-plugins

    Official

    A skill your agent uses when posting the final summary comment, including its No Verdict form when nothing could be reviewed and no inline comments exist.

    154 GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Ccb GitHub

    SeemSeam/claude_codex_bridge

    Maintain this CCB project's GitHub-facing release and npm publication surface.

    3.5k GitHub stars~4.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Claude Docs Consultant

    centminmod/my-claude-code-setup

    Consult official Claude Code documentation from code.claude.com using selective fetching.

    2.7k GitHub stars~959 tokensUpdated 9 days ago
    Agent WorkflowsAuto-check passed
  • Avotokyo Workflows

    heyq02/simpleicons.dev

    Use avotokyo/workflows reusable GitHub Actions for TypeScript/Vite+ projects.

    171 GitHub stars~1.5k tokensUpdated 17 days ago
    DevOps & CloudAuto-check passed
  • GitHub Actions CD for Cloudflare Workers through cf with automatic traffic rollback on smoke failure, including JSON deployment snapshots, D1 migrations and prebuilt artifacts.

    356 GitHub stars~1.2k tokensUpdated 5 days ago
    DevOps & CloudAuto-check: notes
  • Babysit PR To Pass CI

    sgl-project/sglang

    Start and persistently pursue a goal to babysit an SGLang pull request until selected GitHub Actions workflows pass on the latest PR head.

    37k GitHub starsUsed in 2 repos~3k tokens
    DevelopmentAuto-check passed

Questions about Benchmark Readme Sync

What does Benchmark Readme Sync do?

Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables. Benchmark Readme Sync is an agent skill from rstackjs/build-tools-performance. Refresh README benchmark results from a successful GitHub Actions Benchmark run, preserving data provenance and separate development, build, and memory tables.

When should I use Benchmark Readme Sync?

Benchmark Readme Sync fits situations like: tasks that involve Technical documentation; tasks that involve Reproducible research; tasks that involve CI/CD.

How do I install Benchmark Readme Sync in Claude Code?

Run `npx skills add rstackjs/build-tools-performance --skill benchmark-readme-sync -a claude-code`. Or copy the skill folder (.agents/skills/benchmark-readme-sync in rstackjs/build-tools-performance) into .claude/skills/benchmark-readme-sync in your project. Claude Code loads it when a task matches its description.

How do I install Benchmark Readme Sync in Codex?

Run `npx skills add rstackjs/build-tools-performance --skill benchmark-readme-sync -a codex`. Or copy the skill folder (.agents/skills/benchmark-readme-sync in rstackjs/build-tools-performance) into .agents/skills/benchmark-readme-sync in your project. Codex loads it when a task matches its description.

Can I use Benchmark Readme Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rstackjs/build-tools-performance --skill benchmark-readme-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/benchmark-readme-sync, .gemini/skills/benchmark-readme-sync, .github/skills/benchmark-readme-sync and .opencode/skills/benchmark-readme-sync in your project.

What does Benchmark Readme Sync need to run?

Going by SKILL.md and its folder, Benchmark Readme Sync needs the command-line tools its instructions call (gh and jq).

Does Benchmark Readme Sync access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Benchmark Readme Sync safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Benchmark Readme Sync use?

Benchmark Readme Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Benchmark Readme Sync use?

About 1.6k tokens (SKILL.md is roughly 6.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Benchmark Readme Sync?

Skills that share tags, products or a category with Benchmark Readme Sync: Posting Review Summary (bitwarden/ai-plugins, 154 stars), Ccb GitHub (SeemSeam/claude_codex_bridge, 3.5k stars), Claude Docs Consultant (centminmod/my-claude-code-setup, 2.7k stars) and Avotokyo Workflows (heyq02/simpleicons.dev, 171 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Benchmark Readme Sync?

rstackjs (a GitHub organization) maintains it in rstackjs/build-tools-performance, which has 115 GitHub stars. The repository was last updated on October 5, 2026.

Source: rstackjs/build-tools-performance on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.