fp-check

fp-check is a skill for Claude Code, Codex from NOMARJ/sigil. It costs 58 tokens per session (1,545 once invoked), scanned A, original, Apache-2.0.

A review step that checks whether reported security findings are real problems or false alarms.

In plain words
What is it for?
Use it to triage vulnerability reports, apply exclusion rules, and document why each finding should be fixed or dismissed.
Why use it?
It reduces alert fatigue by leaving teams with findings that are classified, justified, and worth acting on.

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/nomarj/sigil/fp-check
Any agent
npx skills add NOMARJ/sigil --skill fp-check
Clone the repo
git clone --depth 1 https://github.com/NOMARJ/sigil

Made for: Claude Code, Codex.

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 fp-check

README.md
[![agentmods](https://agentmods.dev/badge/skills/nomarj/sigil/fp-check.svg)](https://agentmods.dev/skills/nomarj/sigil/fp-check)
Your own site
<a href="https://agentmods.dev/skills/nomarj/sigil/fp-check"><img src="https://agentmods.dev/badge/skills/nomarj/sigil/fp-check.svg" alt="Measured on agentmods" height="20"></a>
Per session 58 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,545 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.00058 $0.01545
Opus 5 $0.00029 $0.00772
Sonnet 5 $0.00012 $0.00309
Haiku 4.5 $0.00006 $0.00154

Measured today against content hash a23113505a30, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

fp-check 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 today.

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.

packs/security/skills/owasp-security/fp-check/SKILL.md · 132 lines

How it starts

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

False Positive Gate Review

Adapted from Trail of Bits' fp-check skill. Every security finding must pass through this gate — no exceptions. Untriaged findings are worse than no findings, because they train the team to ignore alerts.

Why This Exists

Security scanners produce noise. When the noise-to-signal ratio gets too high, teams start ignoring findings entirely. The fp-check gate ensures every finding is classified, justified, and documented. The result is a security findings list where everything on it is real, and everything not on it was explicitly triaged and justified.

Hard Exclusion Rules

Before manual triage, automatically exclude findings matching these patterns. These are categories with near-zero signal in practice:

# Category Exclude If
1 DOS / Resource Exhaustion Finding describes denial of service, resource exhaustion, unbounded loops, or memory/CPU overload
2 Rate Limiting Finding recommends adding rate limits without a concrete exploit path
3 Resource Leaks Unclosed files, connections, or memory leaks — not security vulnerabilities
4 Open Redirects Unless extremely high confidence with a concrete phishing scenario
5 Regex Injection / ReDoS Injecting into a regex or regex DOS — not exploitable in practice
6 Memory Safety in Safe Languages Buffer overflow, use-after-free, etc. in Rust, Go, Python, JS/TS, Java, C#
7 Test-Only Files Findings in unit tests, test fixtures, or test helpers
8 Markdown / Documentation Findings in .md files
9 SSRF (path-only) SSRF that only controls the URL path, not host or protocol
10 Prompt Injection User content in AI system prompts — not a code vulnerability
11 Log Spoofing Unsanitized user input in logs (unless it logs secrets/PII)
12 Missing Audit Logs Absence of logging is not a vulnerability
13 Outdated Dependencies Managed by dependency scanning tools, not code review
14 Client-Side Auth Missing permission checks in JS/TS client code — backend handles it
15 GitHub Action Workflow Unless a concrete untrusted-input attack path exists
16 Shell Script Injection Unless untrusted input provably reaches the injection point
17 Env Vars / CLI Flags Treated as trusted values — attacks requiring their control are invalid

Read the full file on GitHub · 132 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. today First seen · 132 lines · 58 tokens per session scan A a23113505a30

Subscribe to this mod's changes

fp-check is a skill published in the GitHub repository NOMARJ/sigil (5 stars, last pushed today), licensed Apache-2.0. It adds 58 tokens to every session and 1,545 once invoked, about $0.0003 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-09-04.

Related

Other skills, from other repositories

sftp-cc

通用 SFTP 上传工具,通过自然语言触发,将本地项目文件上传到远程服务器。支持增量上传、私钥自动绑定与权限修正。.

toohamster/sftp-cc · 41 tokens

devtools-event-client

Create typed EventClient for a library. Define event maps with typed payloads, pluginId auto-prepend namespacing, emit()/on()/onAll()/onAllPluginEvents() API. Connection lifecycle (5 retries, 300ms), event queuing, enabled/disabled state, SSR fallbacks, singleton pattern. Unique pluginId requirement to avoid event…

TanStack/devtools · 79 tokens

genbench

Run Vendo's buy-vs-build generation benchmark — generation time + accuracy of the real Vendo pipeline vs raw-Claude baselines (diy, claude-code) on JSON-defined worlds. Use when asked to benchmark generation, compare Vendo vs raw models, measure generation speed/cost, or add genbench worlds/cases.

runvendo/vendo · 70 tokens

jk

Jenkins CLI for controllers. Use when users need to manage jobs, pipelines, config.xml, runs, logs, artifacts, credentials, nodes, or queues in Jenkins. Triggers include "jenkins", "jk", "pipeline", "build", "job create", "job config", "config.xml", "run logs", "jenkins credentials", "jenkins node".

avivsinai/jenkins-cli · 78 tokens

blame

Show which regent step last modified each line of a file. Use when investigating file provenance or debugging.

regent-vcs/re_gent · 22 tokens

assess-patch-risk

Assess an immutable patch artifact's program impact, regression risk, and auto-merge eligibility. Use for generated patch files, provider pull-request diffs, or commit ranges when reviewers need evidence about affected runtime paths, contracts, tests, and recoverability. This skill is read-only and does not generate…

bex-co/bex-security · 77 tokens