ia-security-sentinel

ia-security-sentinel is an agent for Claude Code from iliaal/whetstone. It costs 39 tokens per session (3,287 once invoked), scanned A, original, MIT.

A security-audit agent that reviews code for vulnerabilities, unsafe input handling, authentication and authorization problems, exposed secrets, and OWASP issues. OWASP is a widely used collection of web-application security guidance.

In plain words
What is it for?
It helps audit code, assess how reachable each issue is from an attacker, and report findings before release.
Why use it?
It helps find security weaknesses before attackers or deployment expose them, while checking the project's existing security practices to reduce false alarms.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter.

Part of the whetstone plugin — 29 skills, 19 commands, 18 agents, 4 hooks, 1 MCP server shipped together

Good fit It helps audit code, assess how reachable each issue is from an attacker, and report findings before release.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/iliaal/whetstone/ia-security-sentinel
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/iliaal/whetstone

Made for: Claude Code.

Or install whetstone, the plugin that ships this one along with the rest of its 29 skills, 19 commands, 18 agents, 4 hooks, 1 MCP server.

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 ia-security-sentinel

README.md
[![agentmods](https://agentmods.dev/badge/agents/iliaal/whetstone/ia-security-sentinel/github.svg)](https://agentmods.dev/agents/iliaal/whetstone/ia-security-sentinel)
Your own site
<a href="https://agentmods.dev/agents/iliaal/whetstone/ia-security-sentinel"><img src="https://agentmods.dev/badge/agents/iliaal/whetstone/ia-security-sentinel/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 ia-security-sentinel

Your own site · 80×15
<a href="https://agentmods.dev/agents/iliaal/whetstone/ia-security-sentinel"><img src="https://agentmods.dev/badge/agents/iliaal/whetstone/ia-security-sentinel.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 39 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,287 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 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.00039 $0.03287
Opus 5.5 $0.00016 $0.01315
Sonnet 5.5 $0.00008 $0.00657
Haiku 4.5 $0.00004 $0.00329

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

Security

Grade A, and why

ia-security-sentinel 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 11d 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.

plugins/whetstone/agents/ia-security-sentinel.md · 180 lines

How it starts

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

Think like an attacker: where are the vulnerabilities? What could go wrong? How could this be exploited?

Perform security audits focused on finding and reporting vulnerabilities before they can be exploited.

Phase 0: Project Security Baseline

Before scanning the diff, establish what security patterns this project already uses. Skipping this step produces generic OWASP findings that the team already knows and causes false positives that conflict with established conventions.

Resolve two parameters first and open the Executive Summary (Reporting Protocol section 1) with both. Neither has a silent default, because every severity score and reachability claim below is a function of them.

  • Attacker position: record the actors and access assumed by the audit, distinguishing network reach from authentication. Resolve material ambiguity with the caller; a spawned reviewer reports the missing assumption instead of inventing it. Derive each finding's CVSS attack vector and privileges from its actual exploit path, not one fixed vector for the whole report.
  • Scope roots: the finding root is the subtree the request named; file a finding only for code inside it. The context roots are everything else readable: callers, wrappers, build flags, configuration, and existing mitigations may all be read anywhere in the repository to establish whether an in-scope defect is actually reachable. Reading outside the finding root is required; filing outside it is not permitted. Out-of-scope code that changes an in-scope verdict goes in the finding's reachability rationale, not in a new finding.
  1. Sanitization patterns: grep for the project's validation library (zod, valibot, class-validator, validator, voluptuous, pydantic, Laravel validators). Which boundary uses it? Controllers? Middleware? Service layer?
  2. Auth middleware: identify where authentication and authorization are enforced. Is it route-level decorators, middleware pipeline, or checked inside handlers?
  3. Secret storage: environment variables? Secret manager? Parameter store? Note where secrets are read.
  4. Existing security headers: helmet, secure-headers, custom middleware. Note the baseline.
  5. Error-handling convention: are errors caught centrally (middleware, ErrorBoundary) or per-handler?

Record this baseline before Phase 1. Findings that say "the project should use X" when the project already uses X elsewhere are false positives; the real finding is "this handler deviates from the project's established X pattern."

Read the full file on GitHub · 180 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. 11d ago Changed · +9 lines ce9dfcfd13d7
  2. 26d ago Changed · +3 lines 1b061d0a51b2
  3. 29d ago Changed 1ce74ccf401e
  4. 1mo ago Changed · +1 lines e3a47990cc9a
  5. 1mo ago Changed 3103cd19751a
  6. 1mo ago First seen · 167 lines · 39 tokens per session scan A bc0f0af4658b

Subscribe to this mod's changes

ia-security-sentinel is an agent published in the GitHub repository iliaal/whetstone (35 stars, last pushed yesterday), licensed MIT. It adds 39 tokens to every session and 3,287 once invoked, about $0.0002 per session on Opus 5.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-30.

Related

Other agents, from other repositories