v0.43.0 — the pit reads the news
The pit reads the news now.
/news — the headlines, in a line each
/news # everything you subscribe to, newest first
/news bitcoin etf # search the news
/news add journalists # pull in a public OPML bundle
default feeds · 698 headlines
1. Luxon survives another leadership vote months before New Zea… world · 6m ago
2. Wisconsin Governor Primary Election 2026 Live Results: Hong,… politics · 8m ago
3. National Science Week: 'always something new to learn or dis… science · 11m ago
4. VB Spine Completes Transaction for CT-Fluoro Technology from… tech · 15m ago
5. Primary Elections Live Updates: Wisconsin, Minnesota and Sou… top-stories · 16m ago
open one with /news open <n>
/news open 3 opens that story in a browser. A bare URL reads one feed without subscribing to it, and anything that is not a URL is a search — so /news needs no verb for either of the two things anyone actually types.
/rss — the same headlines, full-screen
moshcode rss 328 headlines · default feeds
────────────────────────────────────────────────────────────────────────────
all 328 │ Visualizing Joc Pederson's swing using bat tracking… tech · 10m ago
top-stories 38 │ "I Do What They Say": Trump On Changing Planes On S… world · 11m ago
world 100 │ ▸ VB Spine Completes Transaction for CT-Fluoro Techno… tech · 24m ago
tech 100 │ Primary Elections Live Updates: Wisconsin, Minnesot… top-st… · 25m ago
ars-technica 20 │ Typhoon Dolphin's remnants brings torrential rain t… world · 34m ago
techcrunch 20 │ New Zealand PM Luxon wins confidence vote, survivin… world · 35m ago
────────────────────────────────────────────────────────────────────────────
↑↓ move · ⏎ read · o open · / search · tab feeds · r refresh · q quit
Feeds down the left with a count each, headlines in the middle, and the story itself in place of the list when you pick one. / searches without leaving, o opens the article, tab moves to the feed list to filter. Mouse works: click to select, click again to read.
Like the arcade and the herd list, there is no menu — /rss is already showing headlines by the time the frame lands, and the keys are written along the bottom rather than on a screen you have to leave.
Feeds live in OPML, not in a file we made up
/news add https://example.com/feed.xml # one feed
/news add ~/subscriptions.opml # a list you already keep
/news export > feeds.opml # take it somewhere else
Subscriptions are stored as ~/.moshcode/news.opml — the format every reader already speaks. That is the whole reason to have a file at all: a list exports out of an existing reader, drops in here, and comes back out unchanged. MOSHCODE_NEWS_OPML points at one you keep elsewhere.
With nothing subscribed, a default set is read instead and the header says so, so /news works on a fresh install rather than printing instructions for how to earn the news.
The sources are the ones already in production
Nothing here was invented. The defaults and the search are what brisk.news and advis0r.com already run:
- Google News top stories and category feeds, the same set brisk.news serves its front page from
- PR Newswire and GlobeNewswire, the two wires advis0r reads directly — issuers speaking for themselves
- Ars Technica, TechCrunch, The Register, Hacker News, MarketWatch — tier-1 hosts from advis0r's own source-tiering table that publish a stable feed
- three public OPML bundles brisk.news seeds its publisher table from, available by name:
journalists,web3,blockchain
A search queries Google News and Bing News, which is advis0r's reasoning carried over: Google has the better index, but its RSS links are interstitials a reader cannot open into an article, while Bing wraps the real publisher URL in a parameter that gets decoded back out. You get Google's coverage with Bing's openable links wherever the two overlap.
All thirteen default feeds were fetched and parsed before they were committed as defaults.
No dependencies, as usual
One parser for RSS 2.0, Atom and RDF, because at the level a headline list needs they are the same document. DOCTYPE is stripped and entities are decoded from a fixed table, so a hostile feed cannot expand one into a file read; links are http(s) only, so none can talk the reader into opening file: or data:. The reader borrows the herd list's terminal discipline — hand-written alternate screen and mouse reporting, one restore path, so a crash cannot leave a terminal with no cursor.
moshcode news and moshcode rss work from a shell too, and moshcode news --json gives the same data with the numbers /news open <n> resolves.