agentsclimarketplace

Vantage

Skill tinoimammp/vantage-security-agent/skills/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, vulnerable dependencies, business logic flaws) or mobile/Android/iOS (OWASP Mobile Top 10 2024: improper credential usage, insecure data storage, insecure communication, insufficient cryptography, etc.) — via static code analysis, never by running the app, installing it, or sending requests. Also use when the user asks to fix, patch, or remediate a finding this framework produced, or to check a single commit/PR/MR for newly introduced vulnerabilities without a full repo scan. Drives a 6-phase scan pipeline (recon, mapping, testing, validation, PoC, reporting) through the vantage plugin's specialized subagents, branching on platform, plus a separate on-demand fix step and a fast incremental commit/PR/MR check.From its SKILL.md

Install
npx -y skills add tinoimammp/vantage-security-agent --skill vantage

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

8.5 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it

Pentest SAST — Orchestration Skill

This skill is the entry point for the vantage plugin. It covers both the web and mobile scan pipelines, and the separate fix capability. It is intentionally short: everything phase-specific lives in ${CLAUDE_PLUGIN_ROOT}/agents/{web,mobile,others}/*.md, read on demand. Cross-phase control (gates, parallelism, resume) lives in ${CLAUDE_PLUGIN_ROOT}/workflow/orchestration.md.

Two roots — do not confuse them

  • Plugin assets (workflow/, agents/, schemas/, templates/, knowledge/, examples/, START-HERE.md, TIMESTAMPS.md) live at ${CLAUDE_PLUGIN_ROOT} — always resolve them from there, never from the target project's working directory.
  • Artifacts (scope, endpoints, findings, PoCs, reports, fixes) are per-engagement output, always written under ./.vantage/artifacts/... relative to the target project currently open — never inside the plugin's own install directory.

Golden rules (non-negotiable)

  1. SAST only during scanning. Analyze source code, configuration, and dependencies. Never run the application, never install a mobile build, never send requests, never exploit live systems. (Live verification of a PoC is a separate, human-run manual step.)
  2. One exception: fix-agent. Every scan-phase agent is strictly read-only. fix-agent — invoked only by /vantage:fix-issue, /vantage:fix, or /vantage:fix-diff, never automatically — is the sole agent allowed to edit the target repository's source code, and only to implement an already-validated finding's remediation. See "Fixing findings" below.
  3. Artifacts are the single source of truth. Every phase reads the previous phase's artifact and writes its own — no shared memory between agents.
  4. Validate before reporting or fixing. No finding reaches a report, and no finding gets fixed, without passing validator-agent first.
  5. Impact-first. Critical → High → Medium before Low/Informational.
  6. Never block on the user. If scope.json is missing, auto-generate it from ${CLAUDE_PLUGIN_ROOT}/artifacts/recon/scope.json.template (a plugin asset) with sane defaults and proceed. If the user's request implies a platform ("this is an Android app", "review this iOS codebase" → mobile; otherwise → web), set platform accordingly instead of always defaulting to web.

Full detail: ${CLAUDE_PLUGIN_ROOT}/START-HERE.md (golden rules §1, universal agent loop §5, quality bar §8) and cross-phase control (gates, parallelism, platform routing, resume, failure handling) in ${CLAUDE_PLUGIN_ROOT}/workflow/orchestration.md.

The scan pipeline

Phases 01-03 route by scope.json.platform; phases 04-06 are shared. Each agent file is self-contained — there is no separate phase file to read.

#Phaseplatform: "web"platform: "mobile"
01Reconrecon-agentmobile-recon-agent
02Mappingmapper-agentmobile-mapper-agent
03Testingauth-agent, authorization-agent, api-agent, sqli-agent, xss-agent, upload-agent, business-logic-agent, injection-agent, dependency-agent, secrets-agent (parallel)credential-usage-agent, supply-chain-agent, mobile-auth-agent, mobile-validation-agent, mobile-network-agent, privacy-agent, binary-protection-agent, mobile-config-agent, mobile-storage-agent, mobile-crypto-agent (parallel; M1-M10)
04Validationvalidator-agent — same agent, either platform
05PoCpoc-agent — same agent, either platform
06Reportingreport-agent — same agent, either platform

Phases run strictly in order 01→06; a phase only starts once its gate (defined in ${CLAUDE_PLUGIN_ROOT}/workflow/orchestration.md) is satisfied. Phase 03's 10 agents (whichever platform's set) run in parallel and each write their own raw-findings.<agent-name>.json — never a shared file, and never mix web and mobile agents in the same Phase 03 run.

How to operate — scanning

  1. Determine platform once: read scope.json.platform if it exists, or infer it from the user's request/repo structure (Android/iOS project layout → mobile; otherwise → web) when generating a fresh scope.json. Every phase after this dispatches the matching agent set from the table above instead of assuming web.
  2. Determine scope: if the user named a specific phase or vulnerability class, dispatch only the relevant agent(s) (via Task). Otherwise run the full pipeline, phase by phase.
  3. Before each phase, check its gate in ${CLAUDE_PLUGIN_ROOT}/workflow/orchestration.md and confirm/auto-generate ./.vantage/artifacts/recon/scope.json if needed.
  4. Dispatch the owning agent(s) for that phase (see table above) via the Task tool — each subagent reads its own ${CLAUDE_PLUGIN_ROOT}/agents/{web,mobile,others}/<name>.md for full methodology.
  5. After Phase 03, merge all raw-findings.*.json before Phase 04 validates (this works identically whether they came from the web or mobile agent set).
  6. Append one line per agent run to ./.vantage/artifacts/run-log.md.
  7. Stop and report using the exact artifact paths — never invent alternate filenames (e.g. no SAST-REPORT.md).

Slash-command equivalent: /vantage:scan-web or /vantage:scan-mobile — each forces its platform and runs phases 01-06 in one go.

Fast incremental check — one commit or PR/MR, not the full pipeline

For "does this commit/PR introduce a vuln" instead of a full repo review, use /vantage:scan-diff [commit-hash | PR/MR number] (${CLAUDE_PLUGIN_ROOT}/commands/scan-diff.md) — not part of Phases 01-06. It diffs the change, dispatches the platform's 10 testing agents scoped to just the changed lines, validates, and generates a PoC per Medium-Critical finding — all under a self-contained artifacts/commit-scans/<id>/. No report.md is produced; results are reported directly in chat. A clean result only means that diff is clean, not the whole app.

Fixing findings — separate from scanning, and destructive by design

fix-agent (${CLAUDE_PLUGIN_ROOT}/agents/others/fix-agent.md) applies a validated finding's remediation directly to the target repository's source code. This is never triggered automatically by a scan — only by explicit request, matching /vantage:fix-issue <id> (one finding), /vantage:fix (all validated findings, dispatched sequentially, never in parallel, since fixes may touch the same file), or /vantage:fix-diff <commit-scan-id> <finding-id> (a finding from scan-diff instead of the main pipeline).

  1. Confirm the finding exists and validated: true in artifacts/findings/validated-findings.json (or artifacts/commit-scans/<id>/validated-findings.json for fix-diff); skip if its fix record already exists (already handled).
  2. Dispatch fix-agent via Task. It re-locates the vulnerable pattern in the current source (it may have moved), applies the minimal targeted edit, and writes a fix record — or marks the finding not_auto_fixable with a reason instead of guessing.
  3. fix-agent never runs a build, test suite, or the application — always tell the user to review git diff and run their own tests before committing.

Slash-command equivalent: /vantage:fix-issue <id>, /vantage:fix, or /vantage:fix-diff <commit-scan-id> <finding-id>.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.