Projects / Autonomous Substack Editor
NIA
An open-source editorial system that researches topics, writes and checks articles and Notes, publishes through a signed-in browser, and runs a configurable Substack community on schedule.
The source, setup guide and architecture maps are public. Account sessions, API keys, runtime data and the operator's style corpus stay local.
01
An editor, not a text generator
NIA is an autonomous editor for Substack. It discovers material through RSS and Atom feeds, YouTube and web search; keeps a persistent idea bank; researches sources; writes articles and Notes; checks the result; and publishes through a signed-in browser. It can also handle replies, comments, likes, restacks, follows and free subscriptions on a schedule.
The distinction matters. A single generated post is an output. NIA is the system around that output: source selection, editorial judgement, memory, publication, community work, health checks and the cost of every model call.
02
Two pipelines, with different jobs
The daily pipeline runs five times a day. Its blocks are isolated, so a failed comment does not take Notes or replies down with it. The daily volume is drawn from configured ranges and the gaps between actions vary by action type.
The article pipeline runs weekly. It scouts candidates, tests feasibility, discovers and fetches sources, extracts evidence, decides whether there is a real gap worth writing about, drafts the article, reviews it against the evidence and runs deterministic form and fact checks before publication.
Community activity keeps the account alive. Research is what gives it something worth saying.
03
The working path
The architecture has one visible direction and one return path. Every published action passes through the browser layer; everything learned from a run returns to the same local state.
state → next run · memory, budget and measured cost
04
The public machine, measured
main branch ·
- runtime modules
- 24
- prompt files
- 25
- model roles
- 26
- free tests
- 186
- paid tests, excluded from CI
- 9
- SQLite tables
- 4
A dated repository snapshot. NIA is under active development.
The large modules keep their reasoning beside the code. The comments record what was measured and why a limit exists. Generated function and identity maps make the repository inspectable without pretending that a static diagram can stay current by itself.
05
Autonomy with an owner
The operator chooses the subject, source mix, voice, allowed community actions, model assignments, schedules and spending limits. Configuration lives in one TOML file, while the secrets, signed-in session and runtime database remain on the operator's own machine or Linux server.
A monthly spending ceiling is the hard stop. The control panel is available in English and Polish and exposes schedule, health, budgets and model cost. After configuration the system can run unattended, but the editorial direction remains explicit and replaceable.
06
Built in public, running in public
The code is published under the MIT licence with installation, architecture and troubleshooting documentation. The repository is the reproducible system; the NIA profile on Substack is the visible result of that system operating outside a demo.
Read the source, inspect the maps or run a publication with a different beat: nia-substack-agent on GitHub.