modernize

modernize is a skill for Claude Code from bendrucker/claude. It costs 71 tokens per session (1,306 once invoked), scanned A, original, MIT.

A codebase survey skill that finds places where newer language features, library versions, or standard-library tools could replace older code without changing its meaning.

In plain words
What is it for?
It helps review a project for modernization candidates and rank possible updates for the user to choose.
Why use it?
It helps identify outdated patterns and unnecessary dependencies before making changes.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter.

Good fit It helps review a project for modernization candidates and rank possible updates for the user to choose.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/bendrucker/claude/modernize
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add bendrucker/claude --skill modernize
Clone the repo
git clone --depth 1 https://github.com/bendrucker/claude

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for modernize

README.md
[![agentmods](https://agentmods.dev/badge/skills/bendrucker/claude/modernize.svg)](https://agentmods.dev/skills/bendrucker/claude/modernize)
Your own site
<a href="https://agentmods.dev/skills/bendrucker/claude/modernize"><img src="https://agentmods.dev/badge/skills/bendrucker/claude/modernize.svg" alt="Measured on agentmods" height="20"></a>
Per session 71 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,306 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00071 $0.01306
Opus 5 $0.00036 $0.00653
Sonnet 5 $0.00014 $0.00261
Haiku 4.5 $0.00007 $0.00131

Measured 3d ago against content hash d4f2dfe67a59, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

modernize scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Runs shell commandslowCapability

Expected in a hook, worth knowing in a rule or an instructions file.

- **Detect the real runtime before assuming a language floor.** A Bun or Deno project has no `engines.node`. Bun implements `node:fs`, `child_process`, and friends, so swapping them for `Bun.file`/`Bun.$` is lateral chur
user/skills/modernize/SKILL.md · 64 lines

How it starts

The opening of the file, as written. The whole thing — 64 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Modernize

Find where a project still does things the old way because newer features did not exist when it was written, and propose semantics-preserving swaps. The deliverable is a ranked survey of candidates the user picks from. Applying is a separate phase, run only on the candidates they choose.

Language-agnostic by design. Detect the stack, never assume it.

Modernization axes

Two axes, plus a third that is easy to miss:

  • Language features. Syntax and stdlib additions that replace boilerplate: pattern matching, comprehensions, async/await over callbacks, records and dataclasses, native nullability, structured concurrency.
  • Major dependencies. Framework and major-library APIs that supersede older usage, such as a new router, data-fetching primitive, or config format. Frameworks and load-bearing libraries only, not every transitive dependency.
  • Stdlib subsumption. A third-party dependency the language or runtime has since absorbed, like native fetch, structuredClone, Array.prototype.flat, or std::format. Retiring a now-redundant dependency is the highest-leverage move, because it deletes code and a dependency at once.

Three disciplines

These separate modernization from churn. Hold them throughout.

  1. Semantics-preserving. A modernization changes how the code is written, never what it does. Behavior, public API, and error modes stay identical. A swap that would change behavior is a feature change, and belongs in the report only as a flagged note.

  2. Earn its keep. Newer is not a reason. Every candidate must buy something concrete: less boilerplate, stronger types or safety, a dropped dependency, real performance, or genuine clarity. Pure novelty is rejected. Churn has a cost (review burden, blame noise, risk) and the benefit must clear it.

  3. Respect the floor. A project has a minimum supported version: the oldest runtime or language version it promises to run on (an app's deploy target, a library's declared engines, edition, or *_requires). A feature newer than the floor cannot be adopted for free. Adopting it silently raises the floor and breaks consumers. Those candidates are flagged bumps, reported separately with the version they require, never applied as part of adopt-now. See references/survey.md.

Read the full file on GitHub · 64 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 64 lines · 71 tokens per session scan A d4f2dfe67a59

Subscribe to this mod's changes

modernize is a skill published in the GitHub repository bendrucker/claude (16 stars, last pushed yesterday), licensed MIT. It adds 71 tokens to every session and 1,306 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

phx-review

Review changed Elixir/Phoenix code read-only. Check requirements, cite evidence, deduplicate findings, and return a severity-based verdict.

oliver-kriska/claude-elixir-phoenix · 32 tokens

plugin-dev

Validate plugin SKILL.md frontmatter and audit hook scripts for silent failures. Run validation to check all plugins pass schema, source path, and frontmatter checks. Run hook audit to detect unhandled errors in shell and Python scripts.

rube-de/cc-skills · 49 tokens

content-audit

Content file quality audit across 8 dimensions (CC1-CC8): encoding artifacts (NBSP, mojibake, zero-width), markdown syntax (broken italic, orphan backslash), CMS migration artifacts (Joomla/WordPress/PHP), frontmatter quality, image integrity, link integrity with anchor validation, content completeness, and…

greglas75/zuvo · 137 tokens

fec-refactor-clean

A safe cleanup workflow for unused front-end code, exports, routes, components, and dependencies.

bovinphang/frontend-craft · 98 tokens

fec-legacy-web-standard

A maintenance guide for older web projects built with plain JavaScript, jQuery, HTML, CSS, or server-rendered templates.

bovinphang/frontend-craft · 92 tokens

project-setup

Setup and hardening review for cross-platform modern-C++ (C++17) native projects, especially Node.js addons built with node-gyp / node-addon-api. Use when asked to "set up a native addon", "harden a C/C++ build", "review my binding.gyp", "add compiler hardening flags", "wire up AddressSanitizer/UBSan/TSan/clang-tidy"…

photostructure/coding-skills · 170 tokens