disler / pi-durable-news-agent
git clone https://github.com/disler/pi-durable-news-agent.git
A proactive pi-durable news agent that sweeps on a cron tick and ranks every story as Hype, Facts and Signal with jev. Runs on your Mac, an always-on Mac mini or a VM.
—
stars, 24h
+80
stars, 7 days · #641
+80
stars, 30 days · #2,831
80
★ total · +80% this week
24
forks · 2 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageTypeScript
LicenseMIT
Created2026-10-18 (2d ago)
Last push2d ago
Watchers1
OwnerUser
Links
- GitHub: github.com/disler/pi-durable-news-agent
- Homepage: https://youtu.be/OLqP8jxJ0Wc
- Releases · Issues · Hacker News mentions
README excerpt
# Pi Durable News Agent > **This agent does not wait for you to work. It works for you, then waits, then keeps working.** > A proactive news agent built on pi-durable that sorts every story into Hype, Facts and Signal with jev, on your Mac, an always-on Mac mini or a cloud VM. 📺 Watch this video to get the full breakdown of this codebase: **Proactive Agents: a pi-durable agent that filters Hype, Facts and Signal on YouTube** In the age of AI there is exponentially more noise than signal: clickbait, overhyped launches and attention theft. As an engineer, your time and attention are your most important resources. This codebase is a **proactive agent** that guards them. Every few minutes a cron tick wakes a durable agent. It checks 28 sources (news feeds, Hacker News, GitHub releases, benchmark blogs) and searches the last 7 days for 15 of your topics, lets jev throw out what is off topic or not worth a look, folds repeated coverage into one story, ranks the rest by importance and keeps the top 7, sends research subagents after the strongest items, scores each one as **Hype, Facts and Signal**, and renders it as a card it picks from a fixed component catalog. Then it waits. When it crashes, restarts or loses a provider call, it resumes from its last checkpoint and never pays twice for finished work. **News worth your attention, from an agent that does not need you to start it.** --- ## Install ### Agentic Install [code] The `/install` command checks Node 24 and `just`, installs the workspaces, confirms your keys are set without printing them, writes the two bearer tokens and runs the free test suites. ### Manual Install **Prereqs:** Node 24, `just`, an OpenRouter key. Optional: an OpenAI key for card images when a source has none, a Firecrawl key for richer page reads, `tmux` for the TUI smoke, Google Chrome for the UI suite. [code] --- ## Why this exists Agent news is a firehose. Every day brings releases, benchmarks, threads, launch posts and quote tweets, and most of it is hype dressed as signal. A chat assistant does not fix that, because a chat assistant waits for you. You have to remember to ask, decide what to ask, and read what comes back. This codebase flips the relationship. Proactive agents do not wait for you to work. **They work for you, then wait.** When you are ready, you step in, pull out the value, give feedback, and move on. The agent runs on a schedule, on hardware you own or rent, with its work checkpointed in SQLite. It reads everything so you do not have to, uses jev as a cheap, fast judge on every item, and spends your attention only on what clears the bar. You teach it with two buttons and three labels. > ***Proactive agent = durable agent + a trigger + a sandbox.*** Here the durable agent is a pi-durable news desk, the trigger is a cron tick, and the sandbox is whatever stays on: your Mac, an always-on Mac mini, or an exe.dev VM. **Execution is cheap. Judgement is priceless.** --- ## In, near, out of the loop The best en