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 agentmods add instructions/ulinycoin/shadow-tg/claude-mdgit clone --depth 1 https://github.com/ulinycoin/shadow-tgWrote 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/instructions/ulinycoin/shadow-tg/claude-md)<a href="https://agentmods.dev/instructions/ulinycoin/shadow-tg/claude-md"><img src="https://agentmods.dev/badge/instructions/ulinycoin/shadow-tg/claude-md.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 | $0.00585 | $0.00585 |
| Opus 5 | $0.00293 | $0.00293 |
| Sonnet 5 | $0.00117 | $0.00117 |
| Haiku 4.5 | $0.00059 | $0.00059 |
Grade A, and why
shadow-tg CLAUDE.md 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 4d 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 — 51 lines — stays where its author put it; the contents beside it link to each section on GitHub.
shadow-tg
Telegram channel tools for AI agents — part of the Shadow product line. No MTProto, no Telethon.
Tools (9)
| Tool | What it does |
|---|---|
get_channel(channel) |
Channel metadata: subscribers_raw, title, description |
get_posts(channel, limit?, before?) |
Post feed with pagination |
get_post(channel, post_id) |
Single post |
get_media(channel, post_id) |
CDN photo/video URLs |
get_comments(channel, post_id, limit?, before?, after?) |
Comments (history + live-tail) |
resolve_channel(query) |
Check if channel exists |
search_channels(query, limit?, verify?) |
Search channels via DuckDuckGo |
inspect_channels(channels, min_subscribers?, min_median_views?, stale_after_days?) |
Channel quality: subscribers_raw, median_views, engagement, flags (stale, low_engagement, tiny, etc.) |
search_posts(channel, query, limit?) |
Search recent posts (~100, client-side) |
Structure
src/tg_mcp/
server.py # FastMCP entry point + all tools
tme_parser.py # t.me/s parsing: posts, channel, media
comment_parser.py # Comments + loadComments API
channel_search.py # DuckDuckGo search
channel_quality.py # inspect_channel_html + engagement_flags
cache.py # TTL cache at /tmp/tg-mcp-cache
Setup
git clone https://github.com/ulinycoin/shadow-tg.git
cd shadow-tg
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
Useful facts
mcp.run()starts the stdio server.main()is the entry point.- Python >= 3.10. Dependencies: lxml, httpx, mcp, ddgs.
- Cache at
/tmp/tg-mcp-cache/(TTL 5 min). Debug:rm -f /tmp/tg-mcp-cache/*.json - All channel names are normalized: @, t.me/, t.me/s/ prefixes are stripped.
search_channels(verify=True)is slow (N HTTP requests) but gives subscribers_raw + median_views.inspect_channels()is the batch version, 5 concurrent requests.- Channels flagged
stalesort below active ones. subscribers_rawis a string like on t.me/s (2.54M, 11.5K). Don't confuse with int.subscribersis int, may be None. Usesubscribers_rawfor display.
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.
- 4d ago First seen · 51 lines · 585 tokens per session scan A def42bb8b035
shadow-tg CLAUDE.md is an instructions file published in the GitHub repository ulinycoin/shadow-tg (0 stars, last pushed 1mo ago), licensed MIT. It adds 585 tokens to every session, about $0.0029 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 instructions, from other repositories
LangBot AGENTS.md
AGENTS.md instructions for langbot-app/LangBot, covering agents.md, quick facts, essential commands, where to look and cross-repo sdk work.
LangBot CLAUDE.md
Claude Code instructions for langbot-app/LangBot, a project described as: Production-grade platform for building agentic IM bots - 生产级多平台智能机器人开发平台/ Agent、知识库编排、插件系统 / Bots for Discord / Slack / LINE / Telegram / WeChat(企业微信, 企微智能机器人, 公众号) / 飞书 / 钉钉 / QQ / Matrix e.g. Integrated with ChatGPT(GPT), DeepSeek, Dify, n8n…
bruce CLAUDE.md
Claude Code instructions for DemitriusQuadros/bruce, covering claude.md, commands, running the application locally, infrastructure (docker) and tests.
ai-dial-core CLAUDE.md
Claude Code instructions for epam/ai-dial-core, covering claude.md, build & run, set credentials via environment variables, build (skip tests) and run all tests.
ai AGENTS.md
AGENTS.md instructions for vercel/ai, covering agents.md, project overview, repository structure, key directories and core package dependencies.
blockrun-mcp AGENTS.md
AGENTS.md instructions for BlockRunAI/blockrun-mcp, covering blockrun mcp, commands, project structure, key dependencies and install in codex.