report

A tool that combines results from several web security checks into one ranked report. It preserves each finding and produces a report for people plus JSON data for other tools.

In plain words
What is it for?
Use it after security checks such as secret, SQL injection, or race-condition detection have produced result files. It helps create a consolidated report and machine-readable findings list.
Why use it?
It removes the need to read separate security result files and decide their order manually. It applies the project's reporting rules and highlights the findings that need attention first.

Skill for Claude CodeCodex

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.

agentmods
npx agentmods add skills/emre-guler/websec/report
Any agent
npx skills add emre-guler/websec --skill report
Clone the repo
git clone --depth 1 https://github.com/emre-guler/websec

Made for: Claude Code, Codex.

Per session 41 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,359 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00041 $0.01359
Opus 5 $0.00020 $0.00679
Sonnet 5 $0.00008 $0.00272
Haiku 4.5 $0.00004 $0.00136

Measured 2d ago against content hash 3421828b0643, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

report scanned grade A with 0 findings 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 2d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/report/SKILL.md · 85 lines

How it starts

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

Consolidated Security Report

Overview

Detection skills each write <output_dir>/<skill>-results.md. This skill reads all of them, assigns severity, sorts, and produces two artefacts: final-report.md for people and findings.json for tooling. It preserves every finding's content verbatim — it ranks and arranges, it does not rewrite.

Prerequisites

  • Policy: ${CLAUDE_PLUGIN_ROOT}/references/policy.default.yaml, then .websec/policy.yaml if present, merged per ${CLAUDE_PLUGIN_ROOT}/references/policy.md. You need output_dir, severity.overrides, severity.fail_threshold, report.include_not_vulnerable, and limits.* so you can say which ceilings were reached.
  • Contracts: ${CLAUDE_PLUGIN_ROOT}/references/severity-defaults.md (tiers, defaults, adjustments, tiebreaker) and ${CLAUDE_PLUGIN_ROOT}/references/finding-template.md (field names for JSON).
  • <output_dir>/architecture.md if present — for project name and data-sensitivity context, and for its record of which controls are enforced outside the reviewed tree. If its generated-from stamp is no-vcs or unknown, note in the report that the architecture document's freshness could not be verified.
  • At least one <output_dir>/*-results.md. If none exist, say so and stop.

Procedure (in-session, no subagents)

1. Discover

List <output_dir>/*-results.md. The skill name is the filename prefix. Record which of the 33 detection skills have results and which do not: access-control api authentication business-logic clickjacking cors crypto csrf deserialization dom-based file-upload graphql host-header information-disclosure jwt llm nosql-injection oauth open-redirect os-command-injection path-traversal prototype-pollution race-conditions request-smuggling secrets sql-injection ssrf ssti web-cache-deception web-cache-poisoning websockets xss xxe

2. Extract

From each results file take every finding block. Include VULNERABLE and LIKELY VULNERABLE in the report body. Count NOT VULNERABLE and NEEDS MANUAL REVIEW; include NOT VULNERABLE blocks in an appendix only if report.include_not_vulnerable is true. Always list NEEDS MANUAL REVIEW items in a short appendix table (title, file, uncertainty) — they are work for a human. Keep every field's text exactly as written.

Read the full file on GitHub · 85 lines

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. 2d ago First seen · 85 lines · 41 tokens per session scan A 3421828b0643

Subscribe to this mod's changes

report is a skill published in the GitHub repository emre-guler/websec (2 stars, last pushed 5d ago), licensed MIT. It adds 41 tokens to every session and 1,359 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

vantage

Autonomous, artifact-driven SAST (Static Application Security Testing) for web AND mobile app repositories, plus optional code-level remediation. Use whenever the user asks to security-review, pentest, audit, or scan a codebase for vulnerabilities — web (SQLi, XSS, IDOR/BOLA, auth bypass, SSRF, XXE, hardcoded secrets…

tinoimammp/vantage-security-agent · 230 tokens

prowler-ui

Prowler UI-specific patterns. For generic patterns, see: typescript, react-19, nextjs-16, tailwind-4. Trigger: When working inside ui/ on Prowler-specific conventions (shadcn, folder placement, actions/adapters, shared types/hooks/lib).

prowler-cloud/prowler · 64 tokens

prowler-test-api

Testing patterns for Prowler API: JSON:API, Celery tasks, RLS isolation, RBAC. Trigger: When writing tests for api/ (JSON:API requests/assertions, cross-tenant isolation, RBAC, Celery tasks, viewsets/serializers).

prowler-cloud/prowler · 62 tokens

prowler-pr

Creates Pull Requests for Prowler following the project template and conventions. Trigger: When working on pull request requirements or creation (PR template sections, PR title Conventional Commits check, changelog gate/no-changelog label), or when inspecting PR-related GitHub workflows like conventional-commit.yml…

prowler-cloud/prowler · 84 tokens

tailwind-4

Tailwind CSS 4 patterns and best practices. Trigger: When styling with Tailwind (className, variants, cn()), especially when dynamic styling or CSS variables are involved (no var() in className).

prowler-cloud/prowler · 47 tokens

prowler-docs

Prowler documentation style guide and writing standards. Trigger: When writing documentation for Prowler features, tutorials, or guides.

prowler-cloud/prowler · 31 tokens