The best Claude skills for developers (all free)
Eleven free Claude skills for code review, tests, debugging, commits, PRs, SQL and regex, and how to share them with your team in Claude Code.
Claude can already write and review code. Skills make it do the everyday parts the same careful way every time: reviews that show the input that breaks your code, tests that report bugs instead of hiding them, commit messages that only describe what's in the diff.
These are the eleven skills in the Skillshelf For developers collection. They're all free and work in Claude Code and on claude.ai. Each skill's page shows a real example of it at work and every file in it, so you can read exactly what it tells Claude before you install it.
Review and test
Code Review
Reviews a diff, pull request or pasted code for bugs, edge cases, security problems and readability, ranked from most to least serious. Every bug claim comes with the input that triggers it and a concrete fix, smallest change first, and it reviews only what's in the change, saying what it assumes about code it can't see. When it can run code, it does, and says so.
In its example, a four-line Python discount function looked fine at a glance. The review found that an unknown promo code makes discounts.get() return None and crashes checkout with a TypeError, confirmed by running it, and that apply_discount(19.99, "SAVE10") returns 17.991 because prices aren't rounded.
Unit Test Writer
Writes unit tests in your project's own framework (pytest, unittest, Jest, Vitest, JUnit, Go's testing package and others) covering normal cases, edge cases and errors, then runs them when it can. One behavior per test, mocks only for slow or outside things like the network, files and time. If a test fails because the code looks wrong, it reports the bug instead of changing the expected value to make it pass.
Debug
Error Explainer
Paste an error or stack trace and it explains it in plain words, finds the line in your own code that matters, names the most likely cause and gives the smallest fix, plus a way to confirm it worked. It quotes the error exactly and fixes causes, not symptoms: it won't suggest silencing a warning, --force or catching and ignoring the error as the fix.
Try: "what does this mean?? react app crashes on load", followed by the error and the component.
Bug Report
Turns "the checkout button doesn't work" into a report a developer can act on: a title that describes the symptom, steps to reproduce from a known starting state, expected and actual behavior, environment and severity. It doesn't guess at the cause (theories go under Notes, labeled as theories), and anything it couldn't fill in is listed under Missing.
Commits, pull requests and docs
Commit Message
Writes a Conventional Commits message from your diff, including the why. It never describes changes that aren't in the diff and leaves out tests, formatting and lockfiles unless they're the point of the commit.
PR Description
Writes a pull request title and description from a diff or list of commits: what changed and why, the main changes, steps a reviewer can follow to test it, and risks like breaking changes or migrations. It never says tests pass unless you said so or it ran them, never guesses issue numbers, and sizes the description to the change. A one-line fix gets a two-line description.
README Writer
Writes or improves a README from your project's real files: package.json or pyproject.toml, scripts, entry points, config and environment variables. It documents only commands and options it can see in the files, uses [placeholders] for the rest, and only names a license if the files state one.
Data and queries
SQL Helper
Writes SQL from a plain-English question for PostgreSQL, MySQL, SQLite or SQL Server, and explains it clause by clause. It also explains and fixes queries you paste, and shows a preview before any query that changes or deletes data. It sticks to the tables and columns you gave and handles the usual traps: LEFT JOIN when rows with no match should still show up, COUNT(column) versus COUNT(*), and date ranges that include the whole last day.
Try: "need sql: top 3 customers by how much they spent in 2025, show name, # of orders and total. postgres", plus your table definitions.
Regex Explainer
Explains a regex piece by piece and tests it against strings that should and shouldn't match. It never says a string matches without testing it. It knows the differences between JavaScript, Python, Java, .NET, PCRE and grep, and points out common bugs like an unescaped . or a greedy .*. It can also write or fix a regex from a description.
In its example, a password regex for a signup form turned out to accept Pass word1 (spaces count) and reject Éclair99, because [A-Z] only matches unaccented capitals.
CSV Cleanup
Checks a CSV or spreadsheet export for duplicate rows, blank cells, mixed date formats, stray spaces, inconsistent categories and numbers stored as text, then gives you a cleaning plan and a cleaned file. Where Claude can run code, it starts with the skill's Python script, which summarizes each column. It never deletes data silently: every changed or removed row is counted in a change log, and the original file is left untouched.
Learn
Code Explainer
For people learning to program, or anyone reading code in an unfamiliar language. It walks through code line by line in plain language, defines each term the first time it uses one, and ends with a small change to try. It doesn't rewrite your code unless you ask; if there's a real bug, it mentions it at the end.
Using them in Claude Code
To use a skill in every project, unzip it into ~/.claude/skills/. To share it with your team, put it in the repository's .claude/skills/ folder and commit it, so everyone working in the repo gets the same review and commit conventions. Claude uses a skill on its own when your request matches, or you can run one directly with its name, like /code-review.
You can also click Install in Claude Code on any skill's page to have Claude Code download and install it for you after you approve. For the full steps, see how to install a skill in Claude.
Which to start with
- You review a lot of pull requests: Code Review, and PR Description for your own.
- You're adding tests to old code: Unit Test Writer. It will tell you about the bugs it finds along the way.
- You're learning: Code Explainer and Error Explainer.
Want one that fits your team's own conventions? See how to write your own Claude skill.
Skills from this post
- Code ReviewReviews a diff for bugs, risks and readability, ranked from most to least serious.
- Unit Test WriterWrites unit tests for your function, covering normal cases, edge cases and errors.
- Error ExplainerExplains an error message or stack trace in plain words, then shows the fix.
- Bug ReportTurns “it's broken” into a bug report a developer can act on.
- Commit MessageWrites Conventional Commits messages from your diff, including the why.
- PR DescriptionWrites a pull request description from your diff: what changed, why, and how to test.
- README WriterWrites a clear README from your project's real files: what it does, setup and usage.
- SQL HelperWrites SQL from a plain-English question and explains each part of the query.
- Regex ExplainerExplains what a regex matches, piece by piece, and tests it on real examples.
- CSV CleanupFinds duplicates, mixed date formats and messy categories, then cleans the file.
- Code ExplainerExplains code line by line for people learning to program.