feed-rs parser, previews a feed without changing local state, and can store
individual entries in Monomento as doc_type=rss.
Published contract: monorss 0.2.1, OpenCLIs build
2026-04-12-113741. The installed-state row, immutable payload, public CDN
pointer, and CDN release metadata agree on this identity. The exact installed
payload was also code-signature verified on macOS.
Quick Start
peek before importing an unfamiliar feed. It performs the network read
and parse, but it does not open the Monomento writer.
Published Command Surface
The current public build has 3 operational root commands plus help and version aliases.
The public root guide names RSS and Atom. The source parser is
feed-rs and
the library contract also accepts JSON Feed input; format acceptance ultimately
depends on that parser, not on separate MonoRSS format branches.
Parser and Limit Boundary
MonoRSS uses a hand-written root dispatcher. There is no command-specific help:-n parser is deliberately small. If -n is absent, missing its value, or
followed by a non-integer, the command silently falls back to no limit. It
does not fail closed. Validate generated arguments before importing a large
feed.
Repository HEAD contains a
docs [topic] dispatcher for a future build. The
immutable 0.2.1 / 2026-04-12-113741 payload rejects docs with a non-zero
exit, so it is not part of the current public contract.Entry Mapping
MonoRSS does not use GUID as the storage key. Re-fetching identical content at
the same entry link is skipped; changed content replaces that row. Link changes
or missing-link position changes can create another identity.
HTML removal is a small character-level tag stripper, not a DOM or sanitization
engine. Rich structure, entities, and block formatting may be lost. Preserve
the original entry URL when exact rendering matters.
Batch and Failure Semantics
fetch opens one database transaction and processes the selected entries in
feed order. Each entry uses Monomento’s savepoint-protected document write.
Individual index errors are counted as Skipped; successful entries are still
committed. The command therefore supports partial success rather than rolling
the entire feed back for one bad entry.
The HTTP client has a 30-second timeout and a MonoRSS user agent. There is no
built-in polling schedule, ETag/Last-Modified state machine, rate limiter, or
retry/backoff loop. Run fetch again explicitly or schedule it with an
external system such as Kernel CLI schedule.
Storage and Read/Write Boundary
MONOMENTO_HOME, the current
~/.monolex/monomento.db, and then the legacy Monolex application-support
path. list is feed-scoped by doc_type=rss; use Monomento for cross-source
search and section reads.
Published Platforms
These six platform entries come from the immutable CDN release metadata.