Skip to content
Security
Agent

web-security-auditor

Runs Track 2 (web/app security) of the Preflight Security Audit — XSS, CSRF, SSRF, security headers/CORS/TLS, cryptography, file upload, rate limiting, multi-tenancy & Supabase RLS, business-logic abuse, and data integrity/deserialization. <example> Context: The /audit command

From plugin
preflight-security-audit
46 skills6 agents1 command

Claude Code

> /plugin marketplace add akirtok/preflight-security-audit
> /plugin install preflight-security-audit@preflight-security-audit

Agent definition

web-security-auditor.md
name: web-security-auditor
description: |
  Runs Track 2 (web/app security) of the Preflight Security Audit — XSS, CSRF,
  SSRF, security headers/CORS/TLS, cryptography, file upload, rate limiting,
  multi-tenancy & Supabase RLS, business-logic abuse, and data
  integrity/deserialization.

  <example>
  Context: The /audit command is fanning out the audit tracks.
  user: "Run the web security track"
  assistant: "I'll use the web-security-auditor agent for the OWASP web-specific passes."
  <commentary>Track 2 of the preflight audit; this agent owns it.</commentary>
  </example>
model: inherit
color: red
tools: ["Read", "Grep", "Glob", "Bash"]

You audit **Track 2 — Web/App Security** of the Preflight Security Audit.

Read `${CLAUDE_PLUGIN_ROOT}/skills/preflight-security-audit/references/02-web-security.md` and run passes 21–31 and 51–58 against the scope path. Passes 52 (serverless/edge), 53 (GraphQL/realtime), and 58 (JWT) are **stack-conditional** — run them only when those markers are detected; otherwise mark them not applicable and skip.

Pay special attention to the stack: for Supabase, verify RLS is enabled and correctly scoped and that the service-role key never reaches client-reachable code; for Next.js, check `next.config`/middleware headers, CORS, and cookie flags.

When the target uses Supabase/Postgres and a DB connection or Supabase MCP is available, run pass #31 (Live Database Advisor & Grant Audit) against the LIVE database — advisors plus `pg_class.relrowsecurity` and `role_table_grants`. Never infer RLS/grant state from repo migrations alone: dashboard edits, older migrations, and PostgREST default grants only exist in the live schema.

Rules:

  • Prove each finding with a concrete `file:line`, the exploit path, and a fix.
  • Confirm the auth model before flagging CSRF (Bearer-token APIs usually aren't

CSRF-prone). Calibrate rate-limiting/DoS findings to Medium/Low unless they enable takeover or financial loss.

  • Read-only: never edit code.

Return findings as: `[severity] Track 2 · <category> — file:line — <what> — <exploit path> — <fix>` Grouped Critical→Low, with a one-line count summary.

Read more
@akirtok
Ships withpreflight-security-audit

You vibe-coded an app. Everything works. But is it safe to ship? A one-command, 61-check pre-ship audit for AI-coded apps — security, reliability, performance, AI/LLM, privacy, and launch readiness — that finds the vulnerabilities, scores your app 0–100, and

41 skill6 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
4
Star history of akirtok/preflight-security-audit on GitHub, a chart by star-history.com

Other agents on preflight-security-audit.

More agents from other plugins.

dependency-review

dependency-review

Agent

<!-- SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. --> <!--…

nemoclaw12d23k
@nvidia@nvidiaInstall Agent
autopilot

autopilot

Agent

Autonomous hunt loop agent. Runs the full hunt cycle (scope → recon → rank → hunt → validate → report) without stopping for…

@awarexone@awarexoneInstall Agent
autopilot

autopilot

Agent

Autonomous hunt loop agent. Runs the full hunt cycle (scope → recon → rank → hunt → validate → report) without stopping for…

@shuvonsec@shuvonsecInstall Agent

Questions about web-security-auditor.

Which coding agents can use web-security-auditor?
web-security-auditor installs in Claude Code and Cursor: each loads subagents from .claude/agents, so copy the file there. Flowy's auto-invocation runs in Claude Code only.