Model or dataset
agamm/claude-code-owasp avatar
agamm/claude-code-owasp

agamm/claude-code-owasp: OWASP security rules as a Claude Code skill

Claude Code skill for OWASP security best practices (2025-2026). Includes Top 10:2025, ASVS 5.0, Agentic AI security, and 20+ language-specific security quirks.

361 stars32 forksUnknownMIT

At a glance

What is it?
A Claude Code skill that loads OWASP Top 10:2025, ASVS 5.0, the LLM Top 10 and Agentic AI risks into your coding session. It is a reference pack with a triage rubric, not a scanner, and the README is explicit about which sources the IDs were checked against.
Who is it for?
Adopt it if your team already runs Claude Code and you want OWASP 2025 and ASVS 5.0 identifiers available while reviewing code, since the README states the requirement IDs and category names were checked against owasp.org/Top10/2025 and the ASVS 5.0 chapter files rather than paraphrased.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 50 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem: OWASP advice in circulation is often a version behind

Security guidance ages badly at the identifier level. The README makes a specific claim about why this matters: ASVS 5.0 renumbered every chapter, so 4.0 requirement IDs do not carry over, and three Top 10 categories were renamed in 2025. A model answering from training data will happily cite a 4.0 ID or an old category name, and the answer looks authoritative while pointing at a requirement that no longer exists.

This project addresses that by shipping the current text as a skill rather than relying on recall. It is aimed at developers using Claude Code who review code, implement authentication and authorization, handle user input, or build AI agent systems. The README lists those as the situations that activate the skill automatically. The audience is narrow on purpose: if you do not use Claude Code, there is nothing here to install.

How the skill loads: SKILL.md always, reference/ on demand

The unit of distribution is a directory containing SKILL.md plus a reference/ folder. SKILL.md is the always-loaded core, and the README enumerates what sits in it: an OWASP Top 10:2025 quick reference table, a finding-triage rubric, security code review checklists for input handling, auth, access control, data protection and error handling, secure code patterns with unsafe and safe examples, the LLM Top 10 (2025) as LLM01 through LLM10, the Agentic AI list (2026) as ASI01 through ASI10, and ASVS 5.0 key requirements with requirement IDs and levels.

The reference/ files load on demand, which the README ties to Claude Code progressive-disclosure practice. languages.md holds language-specific quirks for 20+ languages with unsafe and safe examples; owasp-report.md holds the deep dive across the four standards with per-item attack vectors and mitigations. Splitting the two is the design decision that matters: the core stays small enough to sit in context for every session, and the long per-language material is only pulled in when the conversation calls for it.

The triage rubric is the part worth reading before you trust any finding. The README describes it as confirming attacker-controlled input, sink reachability and blast radius before reporting, with the stated goal of cutting false positives. That is a filter on the model's own output, not a detection mechanism.

Installing the skill in a project or globally

The README recommends degit because it copies a GitHub subdirectory without the .git history. Run this from your project root to install into that project only:

bash
npx degit agamm/claude-code-owasp/.claude/skills/owasp-security .claude/skills/owasp-security

After it finishes you should have .claude/skills/owasp-security/ containing SKILL.md and reference/. For all projects on the machine, the README gives the global variant writing into ~/.claude:

bash
npx degit agamm/claude-code-owasp/.claude/skills/owasp-security ~/.claude/skills/owasp-security

If you would rather not use degit, the README documents a clone and copy. The destination path is yours to choose; the README example uses YOUR_PROJECT:

bash
git clone https://github.com/agamm/claude-code-owasp.git
cp -r claude-code-owasp/.claude/skills/owasp-security YOUR_PROJECT/.claude/skills/

No activation command is documented. The README states the skill activates automatically when you review code for security vulnerabilities, implement authentication or authorization, handle user input or external data, work with cryptography or password storage, design API endpoints, or build AI agent systems. The README's example prompts include "Review this code for security issues" and "Check this AI agent for OWASP agentic risks". A first real use is to paste a function that reads a request parameter and ask for a review, then check whether the answer names a Top 10:2025 category rather than a 2021 one.

What it will not do: no scanner, no CI gate, no report artifact

Nothing in the repository layout or the README describes an executable scanner, a CLI, a rules engine or a CI integration. The top-level entries are .claude/, .gitignore, LICENSE and README.md. The skill changes what the model says during a conversation; it does not produce a file you can attach to a pull request, and it does not fail a build.

That makes it the wrong tool in three cases. If you need a repeatable gate that blocks merges, this cannot be it. If you need a machine-generated report with a stable schema, the README does not document one. And if your team does not use Claude Code, the entire mechanism is unavailable to you regardless of how good the content is.

There is a second limitation the README implies without stating directly: correctness depends on the bundled text staying current. The README verifies category names, ASVS chapter structure and requirement IDs against owasp.org/Top10/2025, the ASVS 5.0 chapter files and genai.owasp.org, but that verification is a statement about the state of the files, not a guarantee about future OWASP revisions. The last push to the repository was on 2026-07-28. There is no documented update mechanism beyond pulling the directory again.

Compared with running a SAST tool or a ZAP scan

A static analysis tool parses your code and emits findings from rules the tool author wrote. A DAST tool such as ZAP exercises a running application and reports what it observes. Both produce output you can diff between runs, and both are indifferent to whether a developer is present.

This project works the other way. It supplies context to a language model that is already reading your code with you, and the output is prose in a conversation. The difference in approach shows up in coverage and in reproducibility. A SAST run covers every file you point it at, every time, identically; the skill covers whatever you paste or whatever the model chooses to open, and the answer varies. What the skill offers in exchange is reasoning about intent: the README's triage rubric asks whether input is attacker-controlled and whether the sink is reachable, which is the kind of judgement a rule engine cannot make and a reviewer has to.

The related search term claude code owasp zap points at this comparison, and the honest answer is that the two are not substitutes. A ZAP scan tells you what an unauthenticated attacker can reach today. This skill tells the model which OWASP 2025 identifiers to use when it explains what it found.

Licence, maintenance and the cost of staying current

The repository is MIT licensed, with the README pointing at the LICENSE file. MIT is permissive, so copying the skill directory into a project or into ~/.claude is the intended use. Two practical notes, not legal advice: the bundled text summarises OWASP publications, and the OWASP material itself carries its own terms, so if you redistribute the skill inside a product, check the upstream OWASP licences as well as this one; and keeping the LICENSE file with the copied directory is the low-effort way to preserve attribution.

The repository is not archived. The last push was on 2026-07-28, which is recent enough that the content reflects the 2025 and 2026 OWASP revisions the README names. Upgrade cost is close to zero in mechanical terms: no package manager, no lockfile, no transitive dependencies, because the artifact is a folder of Markdown. Re-running the degit command replaces it.

The real cost is editorial. Standards move, and when OWASP publishes a revision, someone has to notice and re-verify the IDs. The README's accuracy section is the part to check first when you pull a new copy, since it names the three sources the identifiers were checked against.

Editorial conclusion

Adopt it if your team already runs Claude Code and you want OWASP 2025 and ASVS 5.0 identifiers available while reviewing code, since the README states the requirement IDs and category names were checked against owasp.org/Top10/2025 and the ASVS 5.0 chapter files rather than paraphrased. Skip it if you need automated scanning, CI gating, or a report you can hand to an auditor: nothing in the repository runs a scan, and the skill only shapes what the model says during a conversation. Before relying on it, open .claude/skills/owasp-security/SKILL.md and confirm the ASVS 5.0 requirement IDs match the chapter files at github.com/OWASP/ASVS/tree/master/5.0/en, because the README notes that ASVS 5.0 renumbered every chapter and 4.0 IDs do not carry over.

Frequently asked questions

What is OWASP in coding?

OWASP is the organisation whose published lists and verification standards this skill bundles. The README points to the OWASP Top 10:2025, ASVS 5.0, the Top 10 for LLM Applications 2025 and the Agentic AI list for 2026 as the four standards covered.

What does OWASP stand for?

The README does not expand the acronym. It only refers to OWASP by name and links to owasp.org, so the expansion is not stated anywhere in the repository files.

Is installing a claude code skill a security risk?

The README does not discuss the risk of installing skills. What it does document is that installation copies a directory of Markdown files, SKILL.md plus reference/, into .claude/skills/ or ~/.claude/skills/, and that the repository is MIT licensed.

What does the Claude AI code do?

The README does not describe Claude itself. It describes what this skill adds to a Claude Code session: OWASP Top 10:2025, ASVS 5.0, the LLM Top 10 and the Agentic AI list, plus a finding-triage rubric and per-language security quirks.

Official sources

  1. agamm/claude-code-owasp on GitHub
  2. Issues
  3. License: MIT
  4. README
Community notes

Community notes