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 alex-jb/shadow-perception-mcp --skill shadow-perception-r-dsgit clone --depth 1 https://github.com/alex-jb/shadow-perception-mcpWrote 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/alex-jb/shadow-perception-mcp/shadow-perception-r-ds)<a href="https://agentmods.dev/skills/alex-jb/shadow-perception-mcp/shadow-perception-r-ds"><img src="https://agentmods.dev/badge/skills/alex-jb/shadow-perception-mcp/shadow-perception-r-ds/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/alex-jb/shadow-perception-mcp/shadow-perception-r-ds"><img src="https://agentmods.dev/badge/skills/alex-jb/shadow-perception-mcp/shadow-perception-r-ds.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.00116 | $0.01099 |
| Opus 5 | $0.00058 | $0.00549 |
| Sonnet 5 | $0.00023 | $0.00220 |
| Haiku 4.5 | $0.00012 | $0.00110 |
Grade A, and why
shadow-perception-r-ds 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 9d 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.
How it starts
The opening of the file, as written. The whole thing — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Shadow Perception — R data-science vertical
Five-voice deterministic pre-publish council for R analyses. Deterministic — no LLM call in the verdict path.
When to use
The user's request is any variant of:
- "Is this Rmd ready to knit?"
- "Am I p-hacking?"
- "Should I add p.adjust() to this?"
- "Is my analysis reproducible?"
- "Would a journal reviewer flag anything here?"
Or the user points at a .R / .Rmd / .qmd file and asks for feedback before render.
What it does
shadow_perception_scan(file_path)— parses .R / .Rmd / .qmd. Extracts YAML frontmatter, R chunks, library() calls, set.seed() values, read/write functions, model calls (lm / glm / t.test / etc.), and p-hacking signals (many models on same data / t.test in loop without p.adjust / p-value threshold branching).shadow_perception_council(observation)— routes to R DS rubric based onobservation.format. Runs the 5-voice council:- Reproducibility — set.seed() called? renv::snapshot()? sessionInfo() logged?
- Fairness — protected-class terms (race / gender / religion / marital / age / postal / surname) in source?
- Statistical Rigor — high model count without p.adjust? t.test in loop? p-value threshold branching?
- Data Provenance — local files (good) vs remote HTTP/S3 (REWORK — pin locally)?
- Ops — output artifact (write / ggsave / knit) present?
shadow_perception_attest(observation, verdict)— Ed25519 signs. Attach to your paper submission or GitHub release as proof of pre-publish review.
The named invariants
- P-hacking detection is heuristic + advisory. REWORK, not BLOCK. False positives are possible (single model on well-motivated question is fine even if it looks like "one of many"). Rationale cites the specific signal (PH01 / PH02 / PH03).
- Fairness voice does NOT distinguish academic vs consumer-facing use. REWORK on any protected-class mention. Academic use may be fine — document intended use in the paper.
- Missing sessionInfo() is REWORK not BLOCK. Non-reproducibility is a paper-reviewer red flag but not a data-loss event.
- No output artifact is BLOCK (Ops veto). An R analysis that writes nothing is not shippable.
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.
- 9d ago First seen · 80 lines · 116 tokens per session scan A 7a5f03a39409
shadow-perception-r-ds is a skill published in the GitHub repository alex-jb/shadow-perception-mcp (0 stars, last pushed 2mo ago), licensed MIT. It adds 116 tokens to every session and 1,099 once invoked, about $0.0006 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-08-31.
Other skills, from other repositories
quarto-reporting
Reproducible research reporting with Quarto covering parameterized reports, multi-format output, inline computation, and journal article templates.
analytical-method-validation
Plan, execute, and document validation, verification, and transfer of analytical procedures under the governing framework - ICH Q2(R2) and Q14, USP / / , ICH M10 bioanalytical, CLSI EP, or ISO/IEC 17025. Use for HPLC, LC-MS/MS, GC, CE, ICP-MS, dissolution, qNMR, qPCR, NIR, and ligand binding or cell-based assays…
nature-paper-to-patent
Convert scientific papers, theses, technical reports, source code, figures, inventor notes, or research manuscripts into evidence-grounded Chinese invention patent drafts and attorney-facing technical disclosure materials. Use when an AI agent must mine patent points, draft or revise a Chinese technical disclosure…
auditing-part11-trails
Generates and verifies 21 CFR Part 11-style audit trails — who/what/when, electronic signatures, and tamper-evidence — for OpenMed pipelines in GxP and clinical-trial (GCP) settings. Use when the user runs OpenMed in a regulated/validated environment and needs an attributable, time-stamped, tamper-evident record of…
generating-synthetic-surrogates
Replace detected PHI with realistic, type-matched fake values in OpenMed so clinical notes stay readable and parseable instead of full of [REDACTED] markers. Use when the user wants surrogate names, MRNs, addresses, or dates rather than opaque masks, needs consistent fake identities across a document, must keep notes…
shifting-clinical-dates
Apply consistent per-patient date shifting in OpenMed that preserves intervals between events while satisfying HIPAA Safe Harbor's date rule. Use when the user needs to de-identify dates but keep temporal structure for research, shift all dates by the same offset per patient, preserve days-between-events for survival…