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.
git clone --depth 1 https://github.com/xiaoleiy/podpullWrote 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/rules/xiaoleiy/podpull/cursor_rule)<a href="https://agentmods.dev/rules/xiaoleiy/podpull/cursor_rule"><img src="https://agentmods.dev/badge/rules/xiaoleiy/podpull/cursor_rule/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/rules/xiaoleiy/podpull/cursor_rule"><img src="https://agentmods.dev/badge/rules/xiaoleiy/podpull/cursor_rule.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.00022 | $0.00543 |
| Opus 5.5 | $0.00009 | $0.00217 |
| Sonnet 5.5 | $0.00004 | $0.00109 |
| Haiku 4.5 | $0.00002 | $0.00054 |
Grade A, and why
cursor_rule 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 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.
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.
What it actually says
Downloading podcast audio with podpull
When the user wants to download a podcast episode's audio file, use the installed
podpull CLI (https://github.com/xiaoleiy/podpull). Install if missing:
brew install xiaoleiy/tap/podpull or pipx install git+https://github.com/xiaoleiy/podpull.
Commands:
podpull search "<keywords>"— find a show (Apple ID, episode count).podpull list <src> [--match RE] [--all]— list episodes; index 0 = newest.podpull get <src> --match RE | --latest N | --index 0,2— download (alias:pull).podpull get <episode-url>— a pasted Apple?i=or xiaoyuzhou link.podpull get <src> ... -q/--quiet— suppress spinner/progress bar.podpull --json <cmd> …— one JSON document on stdout (flag before the command).podpull serve— local UI (search / trending / browser download).- Hosted UI: https://podpull.xiaolei.work/app (metadata API only; audio via publisher CDN).
<src>= Apple show URL · bare Apple ID · RSS feed URL · Apple episode URL · xiaoyuzhou link.
Rules:
- Always pass a selector and
--no-input; a barepodpull get <show>opens an interactive picker that can't be driven from the agent. - Also pass
-q/--quiet— the spinner/progress bar are pointless outside a live terminal; stdout output (the saved file path) is unaffected. - Prefer
podpull --json …when you need structured data (search/info/list/get). - File path prints to stdout, progress to stderr. Default output is
./<show name>/in the current directory (--out DIRchanges the parent). - Every show download → per-show folder; filenames are normalized to be cloud-storage-safe (CJK kept).
- Optional: if PODCASTINDEX_API_KEY/PODCASTINDEX_API_SECRET are set,
searchalso queries Podcast Index and feed resolution gains a fallback; ximalaya.com/album/ links work as a source.
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 Changed · +1 lines ccfd9c7fe78c
- 1mo ago First seen · 32 lines · 22 tokens per session scan A f52029d3682c
cursor_rule is a cursor rule published in the GitHub repository xiaoleiy/podpull (146 stars, last pushed 1mo ago), licensed MIT. It adds 22 tokens to every session and 543 once invoked, about $0.0001 per session on Opus 5.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-30.
Other cursor rules, from other repositories
memorywhale
Query and write durable debugging memory recorded by MemoryWhale. Use when a build/test/deploy is failing and might have failed before, when you need the exact error/flags/output from an earlier attempt, when the user asks "how did we fix this last time?", or once you've figured out why something failed / how a fix…
smol-cli
Setup once per project: install with npm i -g @electrooo69/sped-cli@latest --force, then run sped setup --all in the project root if .sped-cli/ is missing. Never delete .sped-cli/. Only follow the instruction file for your current agent. Do not delete or modify other agents' instruction files unless explicitly asked.…
modus-angular-button-group-usage-short
Critical patterns for ModusButton usage inside ModusButtonGroup in Angular.
pre-flight-check
Mandatory fail-fast quality gate — run Typecheck, Lint, Test, and Security Audit sequentially before declaring any task done or committing code.
05-daemons-ipc
Use this rule to understand the roles of the HAPPE/IDA/mcp-hostd daemons, how HAPPE and IDA communicate via IPC, find the IPC message structure definitions, trace the memory retrieval flow, and identify daemon responsibilities.
graphql
GraphQL: schema design, resolvers, performance.