Skip to content
Skill

trace-mcp-codemod

by nikolai-vysotskyi

AI Summary

is the correct tool for any repeated mechanical change. Using for the same pattern twice or more is a waste of tokens and is error-prone. If you are about to make the same kind of change 2 or more times — whether in one file or across many — stop and use . This includes: No exceptions. "It's just t

Install

Copy this and paste it into Claude Code, Cursor, or any AI assistant:

I want to install the "trace-mcp-codemod" skill in my project.

Please run this command in my terminal:
# Install skill into your project
mkdir -p .claude/skills/trace-mcp-codemod && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/trace-mcp-codemod/SKILL.md "https://raw.githubusercontent.com/nikolai-vysotskyi/trace-mcp/master/skills/trace-mcp-codemod/SKILL.md"

Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.

Description

Use trace-mcp apply_codemod for any bulk mechanical change instead of repeated Edit calls. Activate whenever the same edit pattern would be applied 2+ times, across one file or many.

trace-mcp — Codemod Workflow

apply_codemod is the correct tool for any repeated mechanical change. Using Edit for the same pattern twice or more is a waste of tokens and is error-prone.

When to Use — HARD RULE

If you are about to make the same kind of change 2 or more times — whether in one file or across many — stop and use apply_codemod. This includes: • Adding async/await to a set of functions • Updating a function signature everywhere it is called • Fixing import paths after a move • Adding or removing keywords/decorators • Wrapping calls in a logger, try/catch, or feature flag • Replacing a deprecated API usage • Any regex-replaceable refactor No exceptions. "It's just three edits" is still a violation — use apply_codemod.

1. Preview with dry run (default)

` apply_codemod({ pattern: "oldFunction\\(", replacement: "newFunction(", file_pattern: "src/*/.ts", dry_run: true // default }) ` Review the preview: matched files, context lines, and replacement correctness. Look for false positives.

2. Narrow scope when needed

Use filter_content to only touch files that also contain a second marker: ` apply_codemod({ pattern: "extractNodes\\(", replacement: "extractNodes(ctx, ", file_pattern: "src/*/.ts", filter_content: "import.*extractNodes", dry_run: true }) ` For patterns that cross line boundaries, enable multiline mode: ` apply_codemod({ pattern: "function\\s+foo\\([^)]\\)\\s\\{", replacement: "async function foo() {", multiline: true, dry_run: true }) `

Discussion

0/2000
Loading comments...

Health Signals

MaintenanceCommitted 2d ago
Active
AdoptionUnder 100 stars
89 ★ · Niche
DocsREADME + description
Well-documented

GitHub Signals

Stars89
Forks13
Issues8
Updated2d ago
View on GitHub
MIT License

My Fox Den

Community Rating

Sign in to rate this booster

Works With

Claude Code