Angelos — Angelos is a distributed feed network where Android phones can earn nanopayments by fetching RSS feeds through their residential IPs.
🏆 Lepton Hackathon Submission — Built for the Canteen Lepton Hackathon.
It is very known in most tech commuities that center on any sort of scraping activity or rather autonomus internet access, that rate limiting or complete IP block is bound to occur when requests from your device gets excessive, because the websites they scrape aggressively block datacenter IPs (AWS, DigitalOcean, VPS) as most users run these scraping services there. Running a particular service thats constantly probing a website from a single server could mean your IP gets rate-limited or banned within days. Anti-crawler defenses treat every automated fetch as a threat.
Instead of one server scraping from one IP, the goal is for the Angelos network to distribute feed fetching across Android phones running Termux. And i say feed fetching because the first opensource project this project was made to test integration with is RSSHub. Each phone uses its own residential WiFi IP — making every request look like a real user browsing the web. A network of a thousand different home IPs can't all be blocked 😅.
┌─────────────────┐ ┌─────────────────┐ ┌──────────────┐
│ Archangelos │◄──────│ Malachi │ │ Websites │
│ (Coordinator) │ │ (Termux Phone) │──────▶│ (HN, etc.) │
│ Node/Express │ │ Python Agent │ via │ │
│ Always-on │ │ Residential IP │ HTTP │ │
└────────┬────────┘ └─────────────────┘ └──────────────┘
│
│ /feed/hackernews
▼
┌──────────┐
│ Consumer │
│ RSS Reader│
└──────────┘
- Archangelos (the coordinator) runs on a laptop or VPS — always online, managing the task queue.
- Malachi agents run on Android phones via Termux — they register their residential IP, poll for work, fetch feed data, and submit results.
- Tidings are feed routes (starting with Hacker News) that transform raw fetched data into standard RSS XML.
- x402 nanopayments protect feed access — consumers pay $0.001 per feed request via Circle/Arc.
- Chorus (dashboard) shows live network status, payment flow, and agent decisions.
- ✅ Residential IPs that don't get blocked by anti-crawler systems
- ✅ Always charging — plug in your phone and earn while you sleep
- ✅ Burst model — phones only work when charging + on WiFi, no battery impact
- ✅ Distributed — the network grows stronger with every phone that joins
This is an early prototype built for the Lepton Hackathon. It currently supports:
- ✅ Hacker News as the first feed route (Firebase API → RSS XML)
- ✅ Node registry + task dispatch (phones register and poll for work)
- ✅ Python Termux agent (lightweight, single dependency)
- ✅ x402 payment gateway on static content
- 🚧 x402 on feed endpoints (in progress)
- 🚧 Wage tracking for phones
- 🚧 Self-scheduling tiers (charging/WiFi/battery awareness)
- 🚧 Chorus dashboard
- 🚧 More feed routes
cd angelos
npm install
npm run build
npm startThe server starts on http://localhost:3000. Register a Malachi phone agent:
python3 angelos/malachi/agent.py --archangelos=http://<IP>:3000 --name=my-phoneFetch the feed:
curl http://localhost:3000/feed/hackernewsIt is also worth noting that this same system could also power distributed workloads across many applications, such as:
- OCR processing for the Immich(Self-Hosted Alternative to Google Photos) community
- Encrypted distributed embeddings(AI embeddings) processing
- Shared Local LLM inference for anyone on the Lepton-Angelos network
- And many others...🤔
angelos/
├── archangelos/ # Coordinator (TypeScript/Express)
│ ├── server.ts # HTTP server, registry, dispatch, payments
│ ├── index.ts # CLI entry point
│ ├── types.ts # Shared type definitions
│ └── content/ # Static test content
├── malachi/ # Node agent (Python)
│ ├── agent.py # Termux phone agent
│ └── requirements.txt
├── tidings/ # Feed routes
│ └── hackernews.py # HN → RSS XML parser
├── chorus/ # Dashboard assets (coming soon)
├── package.json
└── tsconfig.json
| Layer | Technology |
|---|---|
| Coordinator | Node.js, Express, TypeScript |
| Node Agent | Python 3, requests (only dep) |
| Payments | Circle x402 (@circle-fin/x402-batching) |
| Feed Routes | HN Firebase API, stdlib XML |
| CLI | Commander |
| Runtime | Termux (Android) / Linux |
MIT