security-skills
AGENTS.md27 starsChanged 31 days agoMITView on GitHub
You are an AI agent (Claude Code, Codex, Gemini, or any other) working with Security Skills, a library of security skills. This file tells you how to use it. Keep it short in your head: confirm scope → pick the skill that matches the task → follow it → prove impact → report. Human-factor work (social-eng-*) is a separate, pentest-only track with stricter authorization — load social-eng-methodology first and never run it on a bug-bounty target.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- NoorQureshi/roninword for word, first seen Oct 11, 2026
- NoorQureshi/SploitAgentword for word, first seen Oct 11, 2026
Other versions2 projects use a version of this.
Word for word · 2
- NoorQureshi/ronin★ 26100% same
- NoorQureshi/SploitAgent★ 26100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,843 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository207 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- ad-adcsSkill
- ad-dacl-abuseSkill
- ad-delegation-abuseSkill
- ad-kerberoastingSkill
- ad-pivot-arsenalSkill
- ai-agent-tool-abuseSkill
- ai-insecure-output-handlingSkill
- ai-jailbreakSkill
- ai-llm-dosSkill
- ai-mcp-securitySkill
- ai-model-extractionSkill
- ai-prompt-injectionSkill
- ai-rag-poisoningSkill
- ai-sensitive-data-disclosureSkill
- ai-supply-chainSkill
- ai-system-prompt-leakageSkill
- api-auth-attacksSkill
- api-bolaSkill
- api-fuzzingSkill
- api-graphqlSkill
- api-grpcSkill
- api-mass-assignmentSkill
- api-mongo-agg-facet-bypassSkill
- api-testing-checklistSkill
- api-versioningSkill
- automation-browserSkill
- automation-nuclei-templatesSkill
- automation-recon-pipelineSkill
- cloud-azureSkill
- cloud-container-escapeSkill
- cloud-docker-api-abuseSkill
- cloud-docker-registrySkill
- cloud-gcpSkill
- cloud-iam-privescSkill
- cloud-imds-ssrfSkill
- cloud-kubernetesSkill
- cloud-s3-exposureSkill
- code-review-cicdSkill
- code-review-cppSkill
- code-review-dangerous-sinksSkill
- code-review-dotnetSkill
- code-review-goSkill
- code-review-iacSkill
- code-review-javaSkill
- code-review-methodologySkill
- code-review-nodejsSkill
- code-review-phpSkill
- code-review-pythonSkill
- code-review-rubySkill
- code-review-rustSkill
- code-review-secrets-detectionSkill
- code-review-soliditySkill
- crypto-oracle-attacksSkill
- crypto-rsa-attacksSkill
- ctf-cryptoSkill
- ctf-forensicsSkill
- ctf-methodologySkill
- ctf-pwnSkill
- ctf-revSkill
- The first 60 shown.
The file
We split this AGENTS.md into the rules it gives an agent
7 rules. About 0 are common, 5 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Never scan, request, or exploit anything outside a confirmed authorization envelope.
- Distinctive: line 18
If scope is unclear, STOP and ask the user: Never touch out-of-scope or third-party systems.
- Distinctive: line 70
Write it up front and keep it current: the objective, an ordered strategy as a checkbox list (tick items as you go), and a one-line …
- Very specific: line 107
Keep notes.md as a running log to the teach-the-mechanism standard in docs/methodology.md (goal · command · result · why it worked · next …
- Distinctive: line 130
every injection point (each param, plus headers, cookies, JSON fields, path segments),
- Distinctive: line 131
every context (e.g. XSS: HTML body / attribute / JS string / URL / event handler.
- Very specific: line 135
Use the skill's cheatsheet.md (where present) as the checklist — try the set, not the first line.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Security Skills — operating guide for AI agents
You are an AI agent (Claude Code, Codex, Gemini, or any other) working with Security Skills, a library of security skills. This file tells you how to use it. Keep it short in your head: confirm scope → pick the skill that matches the task → follow it → prove impact → report.
What you have here
skills/<domain>/<slug>/SKILL.md— 206 trigger-loaded skills across 23 domains (offensive and defensive). Each has adescription:that says when to load it, and a body that teaches the mechanism.docs/CATALOG.md— the full, browsable index of every skill.docs/COVERAGE.md— how skills map to OWASP / MITRE ATT&CK / CWE.docs/methodology.md— the full engagement method (this file is the short version).
Rule zero — scope, always first
Never scan, request, or exploit anything outside a confirmed authorization envelope. Before you
touch a target, load skills/tradecraft/tradecraft-scope-roe/SKILL.md and confirm one of:
a signed pentest scope, a bug-bounty program the target is in scope for, or systems the user owns.
If scope is unclear, STOP and ask the user. Never touch out-of-scope or third-party systems.
How to pick a skill
Match the task in front of you to a skill's description: trigger line (skim docs/CATALOG.md, or
grep skills/). Load that one SKILL.md and work its sections in order:
When it applies · Why it works · Method (exact commands) · Gotchas · Verify success.
Work one lead at a time; load the next skill as new leads appear.
The loop (how to work a target)
- Set up & plan — create the engagement workspace (below), or run
./secskills new <target>to scaffold it; writescope.txt(+roe.mdfor bug bounty). Then loadtradecraft-attack-scenariosto turn the objective + scope into an ordered plan, and re-plan as evidence comes in. - Recon —
recon-*(subdomains, DNS, content/JS discovery, OSINT, services). - Attack surface — first identify what you're looking at, then load that surface's
methodology/checklist and work it top-to-bottom as your coverage map (don't pivot off it until
each phase is genuinely done): web app →
web-testing-checklist, API →api-testing-checklist, source →code-review-methodology. Each phase routes into the domain's deep technique skills: web →web-*, APIs →api-*, cloud →cloud-*, mobile →mobile-*, Active Directory →ad-*, perimeter/appliances →network-*, Wi-Fi →wireless-*, LLM/AI targets →ai-ml/*, binaries/firmware →reverse-engineering-*, weak crypto / encrypted tokens →cryptography-*. (No surface checklist yet for host/cloud/mobile/AD/LLM — route by domain and cover systematically.) - Foothold — drive a weakness to proven impact; combine small bugs with
exploit-chaining. - Escalate & pivot — after every result, use
tradecraft-pivot-decisionsto choose the next lead;privesc-*,ad-*,network-pivoting-tunneling; map multi-step routes withtradecraft-attack-path-mapping. - Report — validate first with
reporting-triage-validation, thenreporting-bug-bounty-writeuporreporting-pentest-report. - Defend (if asked) —
defense-*(detection, hardening, DFIR, threat modeling).
Human-factor work (social-eng-*) is a separate, pentest-only track with stricter
authorization — load social-eng-methodology first and never run it on a bug-bounty target.
Per-engagement structure (create this, keep it tidy)
For each target, work inside its own folder so notes and loot never mix or leak:
engagements/<target>/
scope.txt # authorized targets — the hard boundary
roe.md # bug-bounty rules of engagement (rate limits, don'ts, disclosure)
plan.md # your living strategy — what you'll test, in what order, why
notes.md # timestamped running log — the source of truth for the report
findings/ # confirmed findings + evidence, one file per finding
loot/ # captured data / artifacts
.secskills/activity.jsonl # one JSON line per step, so a human/console can follow youShow your work — so a human can follow and audit you
Externalise your reasoning into the workspace as you go, so anyone — a teammate, or the read-only
secskills watch console — can see not just what you did but why, across any tool (Claude Code,
OpenCode, Codex, Gemini, an API script). Three files carry it:
1. plan.md — the living strategy
Write it up front and keep it current: the objective, an ordered strategy as a checkbox list (tick items as you go), and a one-line "current focus". This is your thinking, on disk.
2. .secskills/activity.jsonl — one JSON line per meaningful step
This is the spine of the console's Attack Map and timeline. Append a line whenever you decide something, try something, or learn something:
{"ts":"<ISO-8601 UTC>","event":"<type>","detail":"…","lead":"<slug>","surface":"<name>",
"status":"<status>","rationale":"why","skill":"<slug>","severity":"<sev>","refs":"<finding-file>"}- Required:
ts,event,detail. event— one ofplan · decision · skill_load · command · result · finding · note.lead— the most important optional field. A short slug for the attack lead this step belongs to (command-injection,lfi,jwt-none-alg,s3-public-bucket). Steps that share aleadare grouped into one branch of the Attack Map. Pick the slug when you open a lead and reuse it for every step on it.surface— the higher grouping the lead sits under (DVWA web app,REST API,AD domain).status— fordecision/findingsteps, where the lead stands:open(identified, not started) ·trying·confirmed·failed(ruled out after working the variation matrix — see House rules; one failed payload isopen, notfailed) ·blocked(can't proceed — say why inrationale) ·skipped/not-attempted(say why). This is how the map shows what you proved, ruled out, and deliberately left — including anything you couldn't get to.rationale— why you made this decision or what a result means. This is the reasoning a manual investigator needs. Always set it ondecisionsteps.skillonskill_load;severity(critical|high|medium|low|info) +refs(thefindings/*.mdfilename) onfinding.
Log the reasoning layer religiously: a decision with lead + rationale + status every time
you open, rule out, or park a lead; a finding with severity + refs when you confirm one. If you
are running under Claude Code, the auto-capture hook (.secskills/cc-activity-hook.py, wired in
.claude/settings.json) already records your shell commands and web requests, so you don't need to
log routine command/result lines by hand — spend your logging on decisions, leads, and findings.
Under any other tool, also log the key command/result steps yourself.
3. notes.md + findings/*.md — written for a human to read
Keep notes.md as a running log to the teach-the-mechanism standard in docs/methodology.md
(goal · command · result · why it worked · next lead) — one dated block per lead. Write each
confirmed issue as its own findings/<nn>-<slug>.md in this structure (the console renders it, and
it drops straight into a report):
# <Vuln class> on <asset> — <one-line impact>
**Severity:** <Critical|High|Medium|Low|Info>
**Endpoint:** `<method + path / component>`
## Summary <!-- what, where, why it matters, in 2–3 sentences -->
## Steps to reproduce <!-- numbered, copy-pasteable, exact requests -->
## Proof <!-- minimal evidence that proves impact -->
## Impact <!-- realistic business consequence, tied to what you proved -->
## Remediation <!-- the correct fix -->These paths are git-ignored, so an engagement run inside a clone never pollutes the repo.
House rules
- Be thorough — don't quit a lead after one payload. A single failed test does not mean
"not vulnerable". Before you mark a class clean (
status:"failed"), work the variation matrix:- every injection point (each param, plus headers, cookies, JSON fields, path segments),
- every context (e.g. XSS: HTML body / attribute / JS string / URL / event handler; SQLi: numeric vs string vs order-by vs second-order),
- encodings & filter bypasses (URL/double/unicode/case, comment-splitting, the skill's WAF list),
- blind / out-of-band variants when there's no visible response (time, boolean, OOB callback).
Use the skill's
cheatsheet.md(where present) as the checklist — try the set, not the first line.failedmeans ruled out after covering these; record inrationalewhat you actually tried so a human can trust the "clean". If you only ran a couple of tests, the honest status isopen, notfailed. (Under Claude Code this is enforced: a Stop hook won't let you end the turn while a lead is markedfailedwith no coverage rationale — it sends you back to go deeper.)
- Teach the mechanism, don't just paste payloads. Prove impact with the least data/action needed.
- Minimize footprint; clean up test artifacts (accounts, uploads).
- Authorized use only — this library is for pentest engagements, bug-bounty programs, and defense.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

