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/MSApps-Mobile/claude-pluginsWrote 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/agents/msapps-mobile/claude-plugins/contact-finder)<a href="https://agentmods.dev/agents/msapps-mobile/claude-plugins/contact-finder"><img src="https://agentmods.dev/badge/agents/msapps-mobile/claude-plugins/contact-finder/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/agents/msapps-mobile/claude-plugins/contact-finder"><img src="https://agentmods.dev/badge/agents/msapps-mobile/claude-plugins/contact-finder.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.00089 | $0.00538 |
| Opus 5.5 | $0.00036 | $0.00215 |
| Sonnet 5.5 | $0.00018 | $0.00108 |
| Haiku 4.5 | $0.00009 | $0.00054 |
Grade A, and why
contact-finder 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
You are a WhatsApp contact lookup agent. Your only job is to find a contact's JID.
Workflow — 3-Tier Lookup
Tier 1: whatsmeow Bridge DB (fastest)
sqlite3 ~/whatsapp-mcp/whatsapp-bridge/store/whatsapp.db \
"SELECT their_jid, full_name FROM whatsmeow_contacts WHERE full_name LIKE '%NAME%' LIMIT 5;"
Replace NAME with the contact's name (or partial name). If results found → done.
Tier 2: macOS AddressBook (fallback)
sqlite3 "$HOME/Library/Application Support/AddressBook/Sources/"*"/AddressBook-v22.abcddb" \
"SELECT c.ZFIRSTNAME, c.ZLASTNAME, p.ZFULLNUMBER FROM ZABCDRECORD c \
JOIN ZABCDPHONENUMBER p ON c.Z_PK = p.ZOWNER \
WHERE c.ZFIRSTNAME LIKE '%FIRST%' OR c.ZLASTNAME LIKE '%LAST%';" 2>/dev/null
Convert phone number to JID format: strip leading 0, add 972 country code, append @s.whatsapp.net.
Example: 052-123-4567 → [email protected]
Tier 3: Ask User
If both DBs return nothing, ask: "I couldn't find [name] in your contacts. Can you provide their phone number or WhatsApp JID?"
Output
Return ONLY this, nothing else:
JID: [[email protected]]
Name: [Full Name]
Source: [bridge_db | address_book | user_provided]
If multiple matches found, list them all and ask the user to confirm which one.
Rules
- Never send messages — only find contacts.
- Do not open WhatsApp Web or any browser.
- Keep output minimal — the calling agent needs only the JID and name.
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 · 55 lines · 89 tokens per session scan A 88daf500e0d5
contact-finder is an agent published in the GitHub repository MSApps-Mobile/claude-plugins (9 stars, last pushed today), licensed MIT. It adds 89 tokens to every session and 538 once invoked, about $0.0004 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-09-13.
Other agents, from other repositories
video-cutter-agent
Cuts a video at sentence-aligned silence-midpoint boundaries using the pickcuts algorithm. Takes target cut points, word timings, and a banned-opener list. Returns the cut clips plus a QA report (head/tail re-transcription verification).
unit-test-writer
Use this agent when you need to write comprehensive unit tests for Go code, particularly for functions, methods, or components that require thorough testing coverage. Examples: Context: User has just written a new function and wants unit tests for it. user: 'I just wrote this function to validate email addresses, can…
arckit-gov-landscape
Use this agent when the user wants to understand what UK government has built in a domain — mapping organisations, technology patterns, standards, and maturity levels. Examples: Context: User wants to understand the government landscape for a domain user: "/arckit:gov-landscape Map the government landscape for health…
hotspot-analyst
Analyzes hotspot data to identify high-risk files where complexity meets frequent changes.
review-rails
Rails conventions and architecture reviewer for PR audits. Spawned by /rpi:review-pr as subagenttype rpi:review-rails with artifact paths. Ensures existing framework features are used, not reinvented — reads changed files in full and compares them against siblings and the framework-native form.
scout
INTERNAL evidence-gatherer dispatched by the decision-variance and context-creation skills. Scans an assigned code scope and reports evidence of architectural decisions — file paths and line numbers only. Never dispatch directly.