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 ashlrai/ashlr-plugin --skill ashlr-searchgit clone --depth 1 https://github.com/ashlrai/ashlr-pluginWrote 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/ashlrai/ashlr-plugin/ashlr-search)<a href="https://agentmods.dev/skills/ashlrai/ashlr-plugin/ashlr-search"><img src="https://agentmods.dev/badge/skills/ashlrai/ashlr-plugin/ashlr-search.svg" alt="Measured on agentmods" 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.00055 | $0.00578 |
| Opus 5 | $0.00028 | $0.00289 |
| Sonnet 5 | $0.00011 | $0.00116 |
| Haiku 4.5 | $0.00006 | $0.00058 |
Grade A, and why
ashlr-search 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 8d 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 — 47 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ashlr Search
Shift every search operation to the genome-aware layer so redundant file reads are eliminated before they happen.
Core rules (active when this skill is enabled)
-
Orient first. Run
ashlr__orientonce at the start of each task — before any grep or glob. The genome overview often answers the "where does X live?" question without a single file read. -
Prefer
ashlr__grepover nativeGrep.ashlr__grepis genome-aware: when a.ashlrcode/genome/directory exists it returns pre-summarized relevant sections instead of raw ripgrep output. The token cost is 70–90% lower on large repos. -
Prefer
ashlr__globover nativeGlob. Same reason — genome-aware glob filters to relevant paths and avoids returning thousands of lines for broad patterns. -
Compose multi-term queries with
|alternation. A single callashlr__grep("auth|session|token")is cheaper than three sequential calls. Combine related terms whenever the goal is "find anything touching X". -
Trust genome section summaries. When
ashlr__grepreturns a genome section match with a summary, read the summary — do NOT immediately open the referenced file unless you need exact line content for an edit. Genome summaries are curated; they reflect what actually matters in that section. -
Do not re-search what's already in context. If a previous tool call already returned content for a file or pattern, use that result. Re-running the same grep costs tokens and returns nothing new.
Anti-patterns
- Running native
Grepwhenashlr__grepis available - Running 3+ sequential single-term greps instead of one combined query
- Reading a full file after a genome summary already answered the question
- Globbing broad patterns (
**/*.ts) without first checking the genome manifest
Example
# Good: orient first, then one composed grep
ashlr__orient()
ashlr__grep("authMiddleware|verifyToken|session.userId")
# Bad: three native greps, no orient
Grep("authMiddleware")
Grep("verifyToken")
Grep("session.userId")
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.
- 8d ago First seen · 47 lines · 55 tokens per session scan A 261c4f609fd9
ashlr-search is a skill published in the GitHub repository ashlrai/ashlr-plugin (3 stars, last pushed yesterday), licensed MIT. It adds 55 tokens to every session and 578 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-08-31.
Other skills, from other repositories
diagnosing-bugs
Diagnosis loop for hard bugs and performance regressions. Builds a red-capable feedback loop and runs it before hypothesising — complements static code review (which finds bugs by reading) by running actual repros. Use when the user says 'diagnose'/'debug this', or reports something broken/throwing/failing/slow.
issue-debugging
Systematic methodology for issue debugging including root cause analysis, impact mapping, tiered validation plans, and confidence assessment. Use when analyzing bugs, fixing issues, or validating fixes.
fix-bug
Run the Fix Validation pipeline to investigate, fix, and validate a bug. Ensures deterministic pipeline execution with IssueAnalyzer, FixWriter, TestWriter (conditional), TestAudit (conditional), and FixValidator stages.
ccc-systematic-debugging
Root-cause debugging via the Iron Law: no fix without confirmed root cause. Reproduce → hypothesize → verify → fix. Use when investigating bugs, test failures, or…
debug
Analyze errors and apply fixes. Use when you have an error message, traceback, or failing log to diagnose.
fable-recover
Diagnose repeated command failures, stale build caches, branch drift, or contradictory evidence before attempting further code edits. Use when commands fail repeatedly, tests stay red after attempted fixes, build output contradicts source code, or the execution path is confused — even if the user does not explicitly…