stackhawk-hawkscan-findings

stackhawk-hawkscan-findings is a cursor rule for Cursor from stackhawk/agent-skills. It costs 61 tokens per session (1,546 once invoked), scanned A, original, MIT.

A reference guide for reading HawkScan security-scan results. HawkScan scans web applications for security weaknesses such as cross-site scripting, SQL injection, and broken access controls.

In plain words
What is it for?
Use it to parse HawkScan output, decide which security issues to fix first, and create structured tasks for correcting vulnerabilities.
Why use it?
It explains the scan's JSON fields, error meanings, severity order, and exit codes so an agent can interpret findings consistently. It also gives a format for turning findings into repair tasks.

Cursor rule for Cursor

Written for Cursor: installed under .cursor/.

Good fit Use it to parse HawkScan output, decide which security issues to fix first, and create structured tasks for correcting vulnerabilities.

Compare 6 cursor rules from other repositories ↓
Install with agentmods
npx agentmods add rules/stackhawk/agent-skills/stackhawk-hawkscan-findings
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.

Clone the repo
git clone --depth 1 https://github.com/stackhawk/agent-skills

Made for: Cursor.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for stackhawk-hawkscan-findings

README.md
[![agentmods](https://agentmods.dev/badge/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings/github.svg)](https://agentmods.dev/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings)
Your own site
<a href="https://agentmods.dev/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings"><img src="https://agentmods.dev/badge/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for stackhawk-hawkscan-findings

Your own site · 80×15
<a href="https://agentmods.dev/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings"><img src="https://agentmods.dev/badge/rules/stackhawk/agent-skills/stackhawk-hawkscan-findings.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 61 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,546 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 2 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00061 $0.01546
Opus 5.5 $0.00024 $0.00618
Sonnet 5.5 $0.00012 $0.00309
Haiku 4.5 $0.00006 $0.00155

Measured 8d ago against content hash f2ef31df818d, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

stackhawk-hawkscan-findings scanned grade A with 2 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 8d 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.

Sends data to an external URLlowData exfiltration

A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.

"reproduce_curl": "curl -X POST http://localhost:8080/api/users/search -d '{\"q\": \"\\' OR 1=1--\"}'"

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

"reproduce_curl": "curl -X POST http://localhost:8080/api/users/search -d '{\"q\": \"\\' OR 1=1--\"}'"
cursor/.cursor/rules/stackhawk-hawkscan-findings.mdc · 155 lines

How it starts

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

Findings Parsing and Fix Task Reference

Contents


JSON Output Schema (--json-output)

When running with --json-output, HawkScan produces a single pretty-printed JSON object to stdout. All other output (progress bars, banners, status messages) is suppressed.

Important: --json-output requires at least HawkScan Dev Release v5.3.41.

Important: --json-output cannot be used with --trace — the CLI will error with exit code 1 if both are set.

Full Schema

{
  "scan": {
    "id": "uuid-or-null",
    "applicationId": "uuid",
    "environment": "Development",
    "host": "https://example.com",
    "status": "COMPLETED",
    "duration": 45,
    "platformUrl": "https://app.stackhawk.com/scans/uuid"
  },
  "findings": [
    {
      "name": "Cross-Site Scripting",
      "severity": "HIGH",
      "count": 3,
      "cweId": "CWE-79",
      "paths": [
        {
          "path": "/api/users",
          "method": "GET",
          "status": "NEW"
        }
      ]
    }
  ],
  "errors": [
    {
      "message": "Authentication failed",
      "category": "AUTH"
    }
  ],
  "warnings": [
    "CDN headers detected: [x-cdn-header]"
  ],
  "thresholdResult": "PASS"
}

Field Reference

Field Type Description
scan.id string or null Scan UUID. Null if scan never started (pre-HSTE error)
scan.applicationId string Application UUID from config
scan.environment string Environment name (e.g., "Development")
scan.host string Target URL being scanned
scan.status string COMPLETED, ERROR, or UNKNOWN
scan.duration int or null Scan duration in seconds. Null if scan never started
scan.platformUrl string or null Link to scan results on StackHawk platform
findings[] array List of detected vulnerabilities. Empty [] if clean
findings[].name string Alert name (e.g., "SQL Injection")
findings[].severity string HIGH, MEDIUM, or LOW
findings[].count int Number of instances found across all paths
findings[].cweId string CWE identifier (e.g., "CWE-89")
findings[].paths[] array Affected endpoints
findings[].paths[].path string Endpoint path (e.g., "/api/users")
findings[].paths[].method string HTTP method (GET, POST, etc.)
findings[].paths[].status string Triage status: NEW, FALSE_POSITIVE, RISK_ACCEPTED, or ASSIGNED
errors[] array Errors during scan. Empty [] if none
errors[].message string Error description
errors[].category string Error category: AUTH, CONFIG, UNKNOWN, etc.
warnings[] array of strings Preflight/runtime warnings. Empty [] if none
thresholdResult string PASS, FAIL, or UNKNOWN

Read the full file on GitHub · 155 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. 8d ago Changed · +2 lines f2ef31df818d
  2. 1mo ago First seen · 153 lines · 61 tokens per session scan A b6a5a09e167f

Subscribe to this mod's changes

stackhawk-hawkscan-findings is a cursor rule published in the GitHub repository stackhawk/agent-skills (16 stars, last pushed 9d ago), licensed MIT. It adds 61 tokens to every session and 1,546 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.