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.
npx skills add NOMARJ/sigil --skill fix-findinggit clone --depth 1 https://github.com/NOMARJ/sigilWrote 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.
[](https://agentmods.dev/skills/nomarj/sigil/fix-finding)<a href="https://agentmods.dev/skills/nomarj/sigil/fix-finding"><img src="https://agentmods.dev/badge/skills/nomarj/sigil/fix-finding/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.
<a href="https://agentmods.dev/skills/nomarj/sigil/fix-finding"><img src="https://agentmods.dev/badge/skills/nomarj/sigil/fix-finding.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00017 | $0.00651 |
| Opus 5.5 | $0.00007 | $0.00260 |
| Sonnet 5.5 | $0.00003 | $0.00130 |
| Haiku 4.5 | $0.00002 | $0.00065 |
Grade A, and why
fix-finding scanned grade A with 1 finding 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 1mo 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.
Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
- Replace `os.system()` with `subprocess.run()` with explicit args (no shell=True) How it starts
The opening of the file, as written. The whole thing — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Fix Security Finding
You are a security remediation assistant for Sigil findings. Given a scan finding, analyze the vulnerable code and propose a safe fix.
Input
The user will provide one of:
- A finding from
sigil scanoutput (phase, rule, file, line, snippet) - A file path and line number from a Sigil report
- A description of the security issue
Process
- Locate the finding — Read the file at the specified line
- Understand the context — Read surrounding code to understand intent
- Classify the fix type based on the finding phase:
Phase 1: Install Hooks
- Remove or audit
postinstall/preinstallscripts in package.json - Replace
cmdclassoverrides in setup.py with standard setuptools - Flag for manual review if the hook has legitimate build logic
Phase 2: Code Patterns
- Replace
eval()withast.literal_eval()for data parsing - Replace
exec()with explicit function calls - Replace
pickle.loads()withjson.loads()where possible - Replace
os.system()withsubprocess.run()with explicit args (no shell=True) - Replace
child_process.exec()withchild_process.execFile()with explicit args
Phase 3: Network/Exfiltration
- Add URL allowlisting for outbound HTTP calls
- Replace raw socket usage with high-level HTTP libraries
- Flag webhook URLs for review — suggest environment variable configuration
Phase 4: Credentials
- Move hardcoded credentials to environment variables
- Replace direct
os.environaccess with a configuration module - Remove embedded API keys and replace with config references
Phase 5: Obfuscation
- Decode obfuscated strings and replace with plaintext equivalents
- Replace
String.fromCharCode()chains with string literals - Flag nested base64 for manual investigation — likely malicious
Phase 7: Prompt Injection
- Sanitize user input before including in prompts
- Add input validation for prompt template variables
- Separate system instructions from user-controllable content
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.
- 1mo ago First seen · 73 lines · 17 tokens per session scan A 02bd165ab1bd
fix-finding is a skill published in the GitHub repository NOMARJ/sigil (6 stars, last pushed 12d ago), licensed Apache-2.0. It adds 17 tokens to every session and 651 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-04.
Other skills, from other repositories
d3k
Use when the user asks to use d3k, run/dev/test/debug a web project with d3k, or reproduce a browser issue. Own the runtime: reuse or background-start d3k non-interactively, wait for readiness, use its project-stable managed Chrome profile, and inspect unified browser/server evidence.
serial
A tool for communicating with devices over serial ports, such as USB-to-UART connections. It can find ports, watch incoming data, send messages, save logs, and display raw bytes in hexadecimal form.
gcc
A build tool for embedded CMake projects using arm-none-eabi-gcc, a compiler that turns code into firmware for ARM microcontrollers. It supports CMake presets, which are saved build configurations.
net
A toolkit for diagnosing network connections and traffic in embedded systems. A packet capture is a recorded sample of network traffic, and this tool can create or analyze captures in formats such as pcap and pcapng.
keil
An automation tool for Keil MDK projects, the Windows development environment commonly used to build embedded firmware. It finds project files and targets, then runs builds, full rebuilds, or cleans while reading the build logs.
probe-rs
A command-line tool wrapper for probe-rs, which connects a computer to a microcontroller through a hardware debug probe. It supports common firmware programming and debugging operations over SWD or JTAG.