Repository navigation
Releases: krapcys1-maker/nia-substack-agent
Release list
NIA — watch the complete publishing workflow
Meet NIA, a configurable Substack publishing bot with portable editorial presets.
NIA-demo.mp4
Press Play above to watch the film directly on GitHub. · Live examples and chapters · Install NIA
Choose a subject and voice, build a bank of sourced ideas, publish articles with illustrations and Notes, and join relevant conversations through comments, likes, restacks and free subscriptions. Bring your own account and model keys; run locally or on a Linux server.
The film uses actual browser footage from the owner's NIA test account with The Hidden Bill preset. It combines several runs and reviewed drafts, with cuts and speed changes. English AI narration, an original synthesized soundtrack, and downloadable English and Polish subtitles are included.
This release also improves article publishing confirmations and source-link rendering, recovers completed research without repeating paid searches, and adds browser recording tools. The article and both Notes linked in the demo were verified on Substack.
v1.0 — clean base
An autonomous agent that runs an English-language Substack publication: it picks its own topics, researches them against primary sources, writes the articles, posts Notes, comments on other people's posts and replies — with no human in the loop.
This release is the clean base: the machine with no account identity and no subject welded into it, plus an example configuration and four ready-made subject packs.
What is in it
- 26 model roles, split across providers, every one a configuration field
- a research pipeline that fetches and classifies primary documents before a word is written
- 12 deterministic gates that read the finished text back against the evidence it was supposed to rest on
- 143 test files, none of which opens a browser or calls a paid model
- $40/month ceiling, enforced, with a per-run and per-day ceiling under it
Start here
docs/PLUGGING_IN_AN_ACCOUNT.md— every decision about a publication and the one place each one goesdocs/INSTALL.md— zero to running on a schedule, including the one step no software can do for youpacks/README.md— start from a ready subject (AI, how things work, laws and public money) instead of inventing twenty search terms
pip install -r requirements-dev.txt
python narzedzia/pakiety.py # pick a subject to start from
python narzedzia/kreator.py --wsad ai # set everything up
python agent-v2/alarm.py # health check, names what is missingWhy "clean base"
This code ran against a live account for weeks before it was published. Getting it here meant removing one account's identity from a working tree — and proving it was gone rather than asserting it.
python narzedzia/audyt.py --historia sweeps the tree and the whole of git history for identity patterns, joined string literals reassembled through the AST, forbidden files, real API keys and Substack identifiers matched by URL shape. Section 9 is a counterproof on the audit itself: it injects three leaks and checks each one is caught, because an audit that always says OK is indistinguishable from a broken one.
docs/CLEANING_LOG.md records what was removed and exactly where each thing stood — including the sweeps that missed things and what reading found instead.
Honest notes
Every number in this repository was measured rather than estimated: the costs come from a production database reconciled against a provider invoice, to the cent. Where something was not measured, the documents say so.
Two tests fail on a fresh Windows checkout for environmental reasons (test_czas needs POSIX signals; test_zapora_platnych_wywolan needs a real API key). Both are listed with their cause in docs/TROUBLESHOOTING.md.
agent-v2/ is a leftover directory name; renaming it was tried and reverted, and the README says why. Documents are in English, code comments are in Polish — deliberately, and the README explains that too.