I built a self-hosted AI news reader with source-linked daily briefings
AI updates are scattered across release blogs, API changelogs, research feeds, and open-source projects. Finding the announcement is one step; figuring out whether it deserves a closer look is another. I built AI Fronti
AI updates are scattered across release blogs, API changelogs, research feeds, and open-source projects. Finding the announcement is one step; figuring out whether it deserves a closer look is another.
I built AI Frontier Agent to bring those updates into one place. It is an open-source, self-hosted reader that groups related coverage and generates daily briefings in English and Chinese, with links back to the original sources.
You can read the public English briefing without creating an account, or browse the code on GitHub.
Start with a briefing, then check the source
The reading flow is simple: scan a briefing, follow a citation for an interesting item, then open the original announcement or paper. Related reports are grouped so you can read about an event without treating every report as a separate update.
The configured sources cover model releases, API changes, engineering blogs, papers, and selected communities. Sources refresh at different intervals, depending on their tier.
The article feed also supports search and source filters. If you prefer your existing RSS reader, there is an English briefing feed.
These screenshots show the demo on November 4, 2026. The live content changes over time.
Make missing updates easier to investigate
One part I care about is knowing when a source stops working. A quiet feed can mean there is no news, but it can also mean a parser broke or a website started rate-limiting requests.
The app exposes source health and freshness information to help investigate those cases. That does not prove complete coverage of AI news; it gives me a way to inspect the sources the app is configured to follow.
Self-hosting and model costs
The app uses FastAPI and a Vite frontend. A single application process serves the UI and runs scheduled jobs. Docker Compose also starts RSSHub and Redis, while application data lives in a persistent volume.
AI features use the OpenAI-compatible endpoint and model you configure. The default provider is DeepSeek, so an OpenAI API key is not required. Fetching and browsing work without a model key; generated briefings, deep dives, and chat require one.
Self-hosters cover their own infrastructure and model costs. The bilingual briefing is generated in one request with two renditions, so it uses more output tokens than a single-language version. Reading a cached briefing or switching the interface language does not trigger a model call.
For installation, follow the Docker Compose quick start. It includes creating the first administrator before exposing the service publicly. A fresh installation starts with an empty feed; sign in and select Fetch now to populate it.
What is still limited
This is an early project. Upstream feeds can fail, and generated summaries need checking against the sources. English article mode displays original titles and summaries; it does not translate every source or previously saved document into English.
Signed-in users can save bookmarks and generate deeper explanations or experiment cards. Those features are optionalβyou can try the public reading experience first.
The project is licensed under Apache-2.0.
What I would like feedback on
If you try one briefing, which item would you actually open? Is there anything repetitive, unclear, or missing?
If you try deploying it, where does setup first become confusing? A concrete example or a GitHub issue would help me decide what to improve next.
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes β full credit and traffic to the original publisher.
