| name | feedloom |
| description | Capture long-form web content, article URLs, URL list files, or RSS/Atom feeds into clean Markdown with local assets using the Feedloom CLI. Use for web clipping, saving articles as Markdown, archiving URL batches, clipping Zhihu/WeChat/Kaggle/blog posts, 抓取网页文章, 保存为 Markdown, URL 列表转归档, RSS 归档, and 网页长文归档. |
Feedloom
Use Feedloom for article clipping instead of writing ad-hoc scrapers.
Command
npx -y @ariesfish/feedloom <inputs...> [options]
Inputs
- Direct article URLs.
- Files containing URLs, one per line.
- Markdown checklist files with lines like
- [ ] <url> or - [x] <url>.
- RSS/Atom feeds with
--source-kind rss-feed.
Common usage
Before clipping with browser-based fetch modes, run doctor once to verify and repair the Patchright Chromium runtime. If Chromium is missing, doctor automatically runs npx patchright install chromium.
npx -y @ariesfish/feedloom doctor
Before running Feedloom, check whether this skill directory has a site-rules/ directory. If it exists, always pass it with --site-rules-dir $HOME/.agents/skills/feedloom/site-rules; do not omit available site rules.
npx -y @ariesfish/feedloom "https://example.com/article"
npx -y @ariesfish/feedloom urls.txt
npx -y @ariesfish/feedloom urls.txt --limit 10
npx -y @ariesfish/feedloom urls.txt --start 11 --end 20
npx -y @ariesfish/feedloom urls.txt --output-dir clippings
npx -y @ariesfish/feedloom "https://example.com/feed.xml" --source-kind rss-feed
npx -y @ariesfish/feedloom "https://example.com/feed.xml" --source-kind rss-feed --since 2026-01-01
npx -y @ariesfish/feedloom "https://example.com/article" --fetch-mode browser --wait-ms 4000 --scroll-to-bottom
npx -y @ariesfish/feedloom "https://example.com/article" --prefer-browser-state
Fetch workflow
Use the least expensive mode that works:
- Start with default
auto. It tries meaningful content in order: static → browser-state when --prefer-browser-state is set → browser → stealth.
- Use
--fetch-mode static only for simple pages when speed matters and JavaScript/login state is unnecessary.
- Use
--fetch-mode browser for JavaScript-rendered pages; add --wait-ms, --wait-selector, --click-selector, or --scroll-to-bottom only when needed.
- Use
--prefer-browser-state with --chrome-user-data-dir / --chrome-profile for pages that need local login state.
- Use
--fetch-mode stealth only after static/browser fails or for anti-bot pages; add --solve-cloudflare, --proxy, or --dns-over-https only when required.
- For batches, test one URL first, then run the list with the working options plus
--limit, --start, or --end as needed.
Useful options
--output-dir <dir>: write notes and assets somewhere other than clippings/.
--source-kind rss-feed: treat input as an RSS/Atom feed and archive feed entries.
--since <YYYY-MM-DD>: limit RSS/Atom entries by date.
--limit <n>, --start <n>, --end <n>: process URL lists in small batches or resume partway through a list.
--fetch-mode <static|browser|stealth>: force a specific fetch layer when auto is too broad or too slow.
--prefer-browser-state: try a copied local Chrome profile before regular browser fallback.
--wait-ms <ms>, --wait-selector <selector>, --scroll-to-bottom: give dynamic pages time or actions to reveal article content.
--click-selector <selector...>: click dismiss/expand selectors before extracting HTML.
--headful: show the browser window for debugging login, popups, or dynamic loading.
--site-rules-dir <dir>: load optional private TOML extraction/cleaning rules from a local directory, for example $HOME/.agents/skills/feedloom/site-rules/ reference folder.
--solve-cloudflare, --proxy <server>, --dns-over-https: use only when stealth fetching needs them.
Run npx -y @ariesfish/feedloom doctor when browser, stealth, or auto fallback fails because Chromium is missing or cannot launch. Run npx -y @ariesfish/feedloom --help for the complete option list. Do not invent unsupported options.
Site rules
Feedloom ships built-in TOML site rules in the package for common sites such as WeChat and Zhihu. These are loaded automatically; do not pass a special option for built-in rules.
Private skill rules are also supported and are mandatory to use when present next to this skill. Always check for $HOME/.agents/skills/feedloom/site-rules/ before clipping. If that directory exists, pass it explicitly on every Feedloom command using the $HOME-prefixed path:
npx -y @ariesfish/feedloom "https://example.com/article" --site-rules-dir $HOME/.agents/skills/feedloom/site-rules
Treat rule files in $HOME/.agents/skills/feedloom/site-rules/ as local reference material and use them whenever available; never skip an existing site-rules directory unless the user explicitly asks not to use it.
For adding or editing private rules, read references/site-rules.md. It contains the TOML schema, examples, [fetch] behavior, and validation workflow.
Output
- Markdown files are written to
clippings/ by default, or to --output-dir.
- Assets are written under an
assets/ subdirectory.
- Successful Markdown checklist items are marked done.