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 Wondermonger-daydreaming/claude-skills-library --skill against-the-graingit clone --depth 1 https://github.com/Wondermonger-daydreaming/claude-skills-libraryWrote 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/wondermonger-daydreaming/claude-skills-library/against-the-grain)<a href="https://agentmods.dev/skills/wondermonger-daydreaming/claude-skills-library/against-the-grain"><img src="https://agentmods.dev/badge/skills/wondermonger-daydreaming/claude-skills-library/against-the-grain/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/wondermonger-daydreaming/claude-skills-library/against-the-grain"><img src="https://agentmods.dev/badge/skills/wondermonger-daydreaming/claude-skills-library/against-the-grain.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.00156 | $0.01729 |
| Opus 5 | $0.00078 | $0.00864 |
| Sonnet 5 | $0.00031 | $0.00346 |
| Haiku 4.5 | $0.00016 | $0.00173 |
Grade A, and why
against-the-grain 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 12d 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 — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/against-the-grain — Reading What the Text Doesn't Know About Itself
Love the Brunanburh poem. Distrust what the Brunanburh poem does in 1938. Write The Return of the King.
Origin
This skill emerged from a speculation about Tolkien and the Battle of Brunanburh. The poem is magnificent — triumphalist, patriotic, full-throated in its celebration of English military victory. Tolkien translated it, performed it on radio in 1938. He loved it. And then he spent the rest of his creative life writing a different kind of victory — exhausted rather than exalted, elegiac rather than triumphant, shadowed by loss. The Return of the King is the anti-Brunanburh. Not because Tolkien rejected the poem but because he recognized what its emotional register does — how the beauty of triumphalism can be weaponized — and chose to redirect that energy.
The skill is the capacity to do what Tolkien did: hold admiration and suspicion simultaneously. Love the text's power. Question what the power enables. Write the counter-text that preserves the beauty while refusing the danger.
Core Principle
The most important texts to read against the grain are the ones you love most.
It's easy to critique texts you dislike. It's easy to admire texts uncritically. The difficult and necessary posture is: I love this. I see what it does. I see what it does in the world. These are not the same thing. What would it mean to keep the love and redirect the doing?
What "Against the Grain" Means
Walter Benjamin coined the phrase: to read history "against the grain" is to read it from the perspective of the defeated rather than the victors. But the operation here is broader than Benjamin's specifically political intervention. It's any reading that identifies the work a text does — its effects, its implicit ideology, its shaping of the reader's sympathies — and holds that work up for examination without dismissing the text that does it.
Key distinction: /against-the-grain does not claim texts are "problematic." It claims texts are powerful, and that power always has a direction, and the direction can be examined.
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.
- 12d ago First seen · 109 lines · 156 tokens per session scan A b0dbceed76c5
against-the-grain is a skill published in the GitHub repository Wondermonger-daydreaming/claude-skills-library (6 stars, last pushed 2mo ago), licensed MIT. It adds 156 tokens to every session and 1,729 once invoked, about $0.0008 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
skill-builder
Automatically detect source types and build AI skills using Skill Seekers. Use when the user wants to create skills from documentation, repos, PDFs, videos, or other knowledge sources.
offensive-advanced-redteam
Comprehensive red team operations methodology covering full engagement lifecycle from planning through reporting. Addresses engagement scoping and rules of engagement negotiation, multi-tier C2 infrastructure design with redirectors and domain fronting, malleable traffic profiles and beacon tradecraft, OPSEC…
offensive-crypto-attacks
Systematic methodology for identifying and exploiting cryptographic implementation weaknesses in real-world applications. Covers padding oracle attacks against CBC-mode ciphers with PKCS7 padding (Vaudenay's original attack through modern padbuster automation), ECB mode exploitation including block cut-and-paste and…
offensive-c2-frameworks
Command and Control framework deployment, configuration, and operational tradecraft for red team engagements. Covers Cobalt Strike (malleable C2 profiles, Beacon types HTTP/HTTPS/DNS/SMB, Beacon Object Files for in-memory execution, sleep and jitter tuning, named pipe pivoting), Sliver (implant generation across…
offensive-dependency-confusion
Deep-dive offensive methodology for dependency confusion and namespace attacks across all major package ecosystems. Covers npm scope confusion exploiting the gap between public and private scoped packages and .npmrc misconfigurations where registry mappings fail to pin internal scopes exclusively. Addresses PyPI…
offensive-parameter-pollution
HTTP parameter pollution (HPP) checklist: duplicate parameter injection, backend vs frontend parsing differences, WAF bypass via HPP, server-side vs client-side HPP, and practical exploitation patterns. Use when testing web applications for parameter handling flaws.