Skip to main content

Crate rss_cli

Crate rss_cli 

Source
Expand description

rss-cli — an AI-friendly RSS/Atom feed CLI library.

The crate is split into small modules with frozen public interfaces so that independent implementation work can proceed in parallel without colliding:

  • model — serialized output types (the AI-facing API contract).
  • config — runtime parameters that are not serialized (params, policies).
  • error — error type, stable error codes, and process exit codes.
  • cache — atomic file-based HTTP cache (conditional GET + show/get_item).
  • fetch — HTTP client with conditional GET.
  • parsefeed-rsmodel conversion, date/URL normalization.
  • identity— deterministic, cache-independent stable item IDs (the keystone).
  • content — HTML → markdown/text extraction + token estimation.
  • discover— feed autodiscovery from a website URL.
  • output — json/ndjson/text rendering + JSON Schema emission.
  • core — orchestration that the CLI and the MCP server both call.
  • mcp — Model Context Protocol server (stdio transport).

Re-exports§

pub use error::RssError;
pub use error::exit;
pub use model::DiscoverOutput;
pub use model::DiscoveredFeed;
pub use model::Enclosure;
pub use model::ErrorObj;
pub use model::FeedResult;
pub use model::FeedStatus;
pub use model::FetchOutput;
pub use model::IdSource;
pub use model::Item;
pub use model::SCHEMA_VERSION;

Modules§

cache
Atomic, file-based HTTP cache.
cli
Command-line surface (frozen) + mechanical arg→params conversion.
config
Runtime parameters and policies — the non-serialized counterpart to crate::model.
content
HTML → markdown/text extraction + token estimation. Owner: parser agent.
core
Orchestration shared by the CLI and the MCP server.
discover
Feed autodiscovery from a website homepage. Owner: cli agent.
error
Error type, stable error codes, and process exit codes.
fetch
HTTP client with conditional GET. Owner: fetcher agent.
identity
Deterministic, cache-independent stable item IDs — the keystone. Owner: parser.
mcp
Model Context Protocol server (stdio transport). Owner: mcp agent.
model
Serialized output types — the AI-facing API contract.
output
Rendering of results to json / ndjson / text, plus JSON Schema emission.
parse
feed-rscrate::model conversion. Owner: parser agent.