blog-ingest skillB
blog-ingest is agent-read markdown (skill) from garrytan/gbrain: Feed and whole-publication ingestion: turn an entire blog, newsletter, or RSS/Atom archive into brain source pages. Covers feed discovery, pagination walking, normalization to a common article shape, canonical-URL dedup, idempotent re-runs, 429 pacing, and empty-husk repair. This is the PUBLICATION-scope skill — a single article URL routes to idea-ingest instead. Per-article enrichment hands off to the brain-ingest-gate skill; public posts only (gated content is skipped, never worked around)..
Indexed from public GitHub and served as immutable, content-addressed versions. Install it pinned to an exact SHA-256 with the mdr CLI, and every file is verified against the hash recorded here before it reaches your agent. The deterministic audit below grades the latest version, and the same file always earns the same grade.
What the file says
# blog-ingest — Feed & Whole-Publication Ingestion > **Convention:** see [conventions/brain-first.md](../conventions/brain-first.md) > for the lookup chain (search → query → get_page → external). Before walking > any feed, check whether the publication is already in the brain. > > **Convention:** see [conventions/test-before-bulk.md](../conventions/test-before-bulk.md) > — every whole-publication run IS a bulk run. Test on 3-5 posts, verify output > exists and is clean, then ramp progressively. No exceptions. > > **Filing rule:** read `skills/_brain-filing-rules.md` before creating any new page. ## What this is The publication-scope layer of content ingestion: given a blog, newsletter, or feed URL, discover the feed, enumerate the archive, and write one clean source page per public post — deduped, paced, and safe to re-run. It is a set of agent procedures, not a code adapter: the agent performs feed discovery, pagination, normalization, and dedup with its ordinary fetch/read/write tools. This skill deliberately stops at the source-page boundary. Writing a source page is step one, not the whole job: per-article enrichment (entity pages, …
Read the whole file at its exact version.
How to install
mdr add garrytan/gbrain/blog-ingest@v1.0.0mdr add garrytan/gbrain/blog-ingest@sha256:8fad548e780b56a8Pin to a label to follow the author's releases, or to a sha256 to freeze the exact bytes forever. Either way the resolved hash is written to mdr.lock, and mdr install reproduces it on any machine.
[](https://markdownregistry.com/a/art_sse2pusqw5cuwyqu)
1 badge views in 30 days
Versions
Audit of the latest version
- fail: No prompt-injection phrasing (matched: ignore previous instructions)
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (14589 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
garrytan/gbrain · 30,275 stars · license MIT · pushed 2026-09-23 · branch master
API
GET https://markdownregistry.com/api/v1/artifacts/art_sse2pusqw5cuwyqu GET https://markdownregistry.com/api/v1/resolve?ref=garrytan/gbrain/blog-ingest GET https://markdownregistry.com/api/v1/blob/8fad548e780b56a8e79dd08f0bc7a79eb84aa03447798983acef949e4abefd3f
Your agent does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.