This is a submission for the Hermes Agent Challenge
What I Built
Hello Sarkar Analyzer — a Telegram bot that fetches, analyzes, and reports on public complaints filed by citizens with the Nepal Government at gunaso.opmcm.gov.np.
Nepal's Hello Sarkar ("Hello Government") portal lets citizens file complaints against any government ministry or department. The data is public — but buried inside a JavaScript-heavy Nuxt.js app that most people never dig into. My bot surfaces that data instantly on Telegram:
-
/complaints— live analysis: total complaints, resolved vs pending, resolution rate, top 3 most complained-about departments -
/report— downloads a full.txtcivic report to your phone -
/about— project background
The goal: make government accountability data accessible to any Nepali citizen with a phone.
Demo
Bot commands in action:
/complaints
🏛 Hello Sarkar — Civic Complaint Analysis
📅 2026-06-01 11:30 NPT
📊 Overview
• Total: 847
• ✅ Resolved: 312 (36.8%)
• ⏳ Pending: 535
🏆 Top 3 Most Complained Departments
1. Ministry of Land Management — 143 complaints
2. Department of Transport — 98 complaints
3. Ministry of Local Government — 87 complaints
🔗 gunaso.opmcm.gov.np
Built with Hermes Agent 🤖
Code and My Tech Stack
- Hermes Agent by Nous Research — wrote, debugged, and ran all code
- Python 3 — bot runtime
- python-telegram-bot — Telegram interface
- Selenium + headless Chrome — JavaScript page rendering
- BeautifulSoup4 — DOM parsing
- WSL2 / Ubuntu — development environment
I have no idea except for hermes agent and wsl2 and how other is used .
How I Used Hermes Agent
Here's the honest story: I came to this challenge as someone who had never used Hermes Agent before. I spent the first half of the day just getting it installed.
The Setup Journey
I started from absolute zero — no curl, no pip, no WSL2. After installing WSL2, I discovered I was running as root (no sudo), apt wasn't in PATH, and pip threw externally-managed-environment errors. Every step had a new obstacle.
What got me through it was Hermes Agent's ability to diagnose its own environment. Running hermes doctor gave me a clear picture of what was working and what wasn't — 18 of 27 tools enabled on a completely fresh setup.
The Build
Once running, I gave Hermes this prompt:
"Create a Telegram bot that fetches and analyzes public complaints from gunaso.opmcm.gov.np. The site is a Nuxt.js SPA — figure out how to get the data."
Hermes immediately identified the real challenge: the site renders everything in JavaScript. It couldn't just use requests + BeautifulSoup. So it autonomously:
- Wrote a multi-layer scraper that tries 8 known Nepal govt API URL patterns first
- Falls back to Selenium with headless Chrome to actually render the page
- Intercepts real XHR/fetch calls the browser makes to find the live API endpoint
- Parses the rendered DOM as a final fallback
When it hit a TERMINAL_SSH_PORT config error blocking code execution, it diagnosed the cause (a bad hostname from earlier SSH setup), fixed the .env file, and continued — without me telling it what was wrong.
When the bot crashed with AttributeError: 'list' object has no attribute 'get' — because the API returned lists-of-lists instead of dicts — Hermes identified the data shape mismatch and rewrote the analyze() function to handle all three possible shapes: dict, list, and raw str.
I wrote zero lines of this bot. Every function, every fallback strategy, every bug fix came from Hermes Agent reasoning through the problem autonomously.
What Surprised Me
The thing that struck me most was how Hermes handled ambiguity. The Nepal government site doesn't document its API. There's no public endpoint listed anywhere.
That layered reasoning — try the smart thing, then the less smart thing, then the brute force thing — felt genuinely agentic. Not just code generation. Problem solving.
Why This Matters for Nepal 🇳🇵
Nepal's Hello Sarkar portal holds real accountability data — which ministries get the most complaints, how long resolutions take, what citizens are suffering through. That data is technically public but practically inaccessible to most people.
A Telegram bot changes that. Telegram has deep penetration in Nepal. Any citizen, journalist, or civil society researcher can now type /complaints and get instant civic insight — no browser, no technical knowledge needed.
Hermes Agent made this possible in a single afternoon, from a country where most AI agent tutorials assume you already have a working dev environment with brew install everything. Starting from apt not found and ending with a working Telegram bot connected to live government data — that's the real demo.
Built by Niranjan Lamichhane, Kathmandu, Nepal 🇳🇵
Powered by Hermes Agent + OpenRouter (free tier) + WSL2





Top comments (0)