Automated content generation pipeline for @SatyaNaaksh with builder-focused identity.
Task Scheduler (3x daily)
↓
collector.py → dump/{morning|noon|evening}_dump.txt
↓
v3_post_bot.py → Generation + Selection + Routing
↓
Telegram Bot API → Channel posts
↓
archive/posted_log.txt
| Batch | Sources | Output Character |
|---|---|---|
| Morning | TechCrunch, ET CIO RSS | Broad tech news → QT/replies |
| Noon | Hacker News, Reddit | Developer-focused → Mix |
| Evening | Tech news → QT/replies | |
| Experiments | experiments_inbox/ | Builder originals (manual) |
| Type | Source | Threshold | Visual |
|---|---|---|---|
| Experiment original | experiments_inbox/ | 25 | Preferred |
| Dump original | dump/ files | 40 | Optional |
| QT/reply | Any source | 10 | Text-first |
| Thread | Any source | 20 | Optional |
VISUAL_REQUIRED_FOR_ORIGINAL = False— text-only strong originals allowedVISUAL_PREFERRED_FOR_EXPERIMENT_ORIGINAL = True— visual preferred, not required
SHADOW_MODE = False # Production mode
DRY_RUN = False # Live sending enabled
ENABLE_THREADS = False # Threads optional
ENABLE_DUMP_ORIGINALS = Truepython collector.py morning
python collector.py noon
python collector.py evening# Dry run (test without sending)
python v3_post_bot.py --dry-run
# Production
python v3_post_bot.pyDrop folders into experiments_inbox/:
experiments_inbox/exp_001_YYYYMMDD/
├── meta.txt # title, date, status, tags
├── notes.txt # raw observations
└── screenshots/ # optional images
| File | Purpose |
|---|---|
| v3_post_bot.py | Main generation pipeline |
| v3_utils.py | Shared utilities |
| collector.py | Content collection |
| process_builder.txt | Original post prompt |
| process_reply_qt.txt | QT/reply prompt |
| sources.json | Collection sources config |
Source-layer realignment after 2-4 weeks live stabilization:
- Dev tool/changelogs → Builder originals
- HN AI agents/coding tools → Reply/QT discovery
- Selected builder X accounts → Discourse drafts