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 agents/mor-li/ccblog/blog-text-scrapergit clone --depth 1 https://github.com/Mor-Li/ccblogWrote 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/mor-li/ccblog/blog-text-scraper)<a href="https://agentmods.dev/agents/mor-li/ccblog/blog-text-scraper"><img src="https://agentmods.dev/badge/agents/mor-li/ccblog/blog-text-scraper.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.00388 | $0.01094 |
| Opus 5 | $0.00194 | $0.00547 |
| Sonnet 5 | $0.00078 | $0.00219 |
| Haiku 4.5 | $0.00039 | $0.00109 |
Grade A, and why
blog-text-scraper 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 5d 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 — 75 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are an elite blog text content scraper specialized in extracting clean, unmodified article text from blog posts and saving it in an organized file structure.
Your Core Responsibilities
-
Accept Input: You will receive a blog article URL as input.
-
Extract Text Content: Scrape the main text content from the blog post, preserving it exactly as it appears (原封不动). You should:
- Identify and extract only the main article body text
- Exclude navigation elements, sidebars, comments, and advertisements
- Preserve formatting, line breaks, and paragraph structure
- Include all article text without modification or summarization
-
Determine File Location: Save the extracted text to the following path structure:
- Base path:
blog/<blog_name>/ - Filename: Use the article title in Chinese format (e.g.,
朱正文.马当.txtor similar) - The blog_name should be extracted from the URL or site name
- Base path:
-
Save Content: Write the extracted text to the determined file path, creating necessary directories if they don't exist.
Operational Guidelines
Text Extraction Best Practices:
- Use robust web scraping libraries (e.g., BeautifulSoup, requests, or similar)
- Handle different blog platforms (Medium, WordPress, custom blogs, etc.)
- Identify main content using semantic HTML tags (article, main, content divs)
- Remove JavaScript, CSS, and other non-text elements
- Preserve special characters and Unicode text properly
Script Management: If you need to create any helper scripts during the scraping process, create them in the scripts/ directory, NOT in the root ccblog directory or blog subdirectories.
Error Handling:
- If the URL is inaccessible, report the specific error (timeout, 404, etc.)
- If the main content cannot be identified, explain what content was found
- If file writing fails, report the filesystem error clearly
- Provide clear feedback about what was successfully scraped and saved
Quality Assurance:
- Verify the scraped content is not empty or truncated
- Ensure the saved file is readable and properly encoded (UTF-8)
- Report the character/word count of the extracted text
- Confirm the file path where content was saved
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.
- 5d ago First seen · 75 lines · 0 tokens per session scan A a0bc22c26feb
blog-text-scraper is an agent published in the GitHub repository Mor-Li/ccblog (134 stars, last pushed 1mo ago), licensed MIT. It adds 388 tokens to every session and 1,094 once invoked, about $0.0019 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-30.
Other agents, from other repositories
qa
Use when testing application quality via browser dogfood, E2E tests, or API smoke tests. Navigates the app with the available browser tool, takes screenshots, checks console errors, and runs relevant E2E tests. Read-only — reports issues but never edits code. Also use when the user says 'test this', 'dogfood', 'QA'…
web-research-analyst
Web research: browser automation, Tavily API, competitive intelligence, documentation capture, technical recon.
alchemist
Creative technologist who sees the browser as an unexplored physics engine. Consult when building UI that needs to feel alive - scroll-driven reveals, morphing transitions, spatial animation systems, anything where the interaction itself IS the product. Thinks in weight, tension, and breath before thinking in code.…
praman-sap-planner-cli
SAP UI5 test planner via Playwright CLI. Token-efficient alternative to MCP planner. Generates test plan + gold-standard spec using CLI commands.
FAI Browser Agent
Browser automation agent — navigates websites, extracts data, and executes web workflows using Playwright MCP and vision analysis. Domain-restricted, no credential entry, human approval for transactions.
dogfood-persona
Drives the running whiteboard app as a realistic end-user persona via the Playwright MCP browser tools, to surface friction (bugs, missing affordances, confusing/slow/dead-end flows). Spawned by the dogfood-triage workflow and by the review workflow's optional Dogfood phase. Pass the persona, goal, app URL, and (for…