hermes-genesis icon indicating copy to clipboard operation
hermes-genesis copied to clipboard

Autonomous fiction engine — three agents publish a fictional Wikipedia. Hermes-4-70B (canon + critics) + Kimi-K2.6 (prose) + FLUX + ElevenLabs. Constructed-language phonological drift across eras.

Hermes Genesis

A wikipedia for a world that doesn't exist

An autonomous fiction engine. One sentence in, a self-writing canon out — three AI agents publish a fictional Wikipedia, illustrate it, narrate it, and let the language drift across centuries. The civilization keeps publishing whether anyone's watching.

Live Hermes-4-70B Kimi K2.6 FLUX ElevenLabs License

Live → · Watch → · Glossary → · AI usage · Paper outline

Editorial landing — featured article + live counter + freshness pulse
Editorial front door — Source Serif 4 + JetBrains Mono on warm paper, magazine-style featured article, live article counter that flashes when the canon publishes.


What it does

  • Autonomous publishing pipeline. Three Hermes-4-70B agents and one Kimi-K2.6 long-form writer collaborate to canonize, draft, score, and revise articles about a simulated civilization. Pass → seal. Fail → revise. Skip-rate ~40% — the canon agent says no a lot.
  • Real linguistic drift. Each in-world era has its own phonological rules and lexicon. karim (Lunar) → cherim (Cinder) → cherim-en (Ash) tracks a /k/ → /tʃ/ palatalization across centuries. Sample texts and inscriptions in every era's tongue.
  • Multimedia by default. FLUX-illustrated articles, ElevenLabs voice narration with character-genome-mapped archetypes, mood-themed cinematic playback per event type.
  • Provenance everywhere. Every published article traces back to the simulation event that birthed it. Critic scores (anti-slop, fact-check) on every page. Cross-linked canon. RSS, OG cards, sitemap.
  • Hermes Agent native. 9 repo-local skills + MCP bridge (17 tools) plug directly into hermes-agent. One-command setup.

Live

960 canonized articles · 65 linguistic eras · ~506 K words
~1 article published every 2 minutes · publishing right now

hermesgenesis.world · /watch · /glossary · /control · /judge


How it works

  World simulation                                Hermes-4-70B
  ────────────────                                ────────────
  geography · factions · genomes      ┌────►  Canon agent (decision)
  day-by-day events                   │           │
  auto-simulation when queue empties  │           ▼ canonize?
                                      │       Kimi-K2.6 writes long-form
                                      │           │
                                      │           ▼
                                      │       Hermes critics
                                      │       anti-slop · fact-check
                                      │           │
                                      │           ▼ pass / revise
                                      │       Cross-linker
                                      │           │
                                      │           ▼
                                      └─── Sealed article + provenance
                                                  │
                                                  ▼
                                       FLUX illustration · ElevenLabs narration

Three agents, two models. backend/chroniclon/canon_agent.py is the orchestrator.

Stage Role Model
Canon decision Reads each event, decides if it deserves an article, picks kind/voice/length Hermes-4-70B
Long-form writer Writes 1,000–1,500 words in the era's voice with cross-links Kimi-K2.6
Anti-slop critic Rejects formulaic prose, fourth-wall breaks, AI tells Hermes-4-70B
Fact-check critic Cross-references claims against the existing canon Hermes-4-70B
Cross-linker Inserts [[wiki-style-links]] to existing articles Hermes-4-70B
Era ticker + linguistic drift Closes eras, opens next, derives next-era phonology + lexicon Hermes-4-70B
Illustration Era-art-style + character-genome-grounded hero image per article FLUX
Narration Multi-archetype TTS per character genome (5 voices) ElevenLabs

Quality gates that keep the canon clean:

  • Slug-collision guard at the write layer
  • Topic dedupe (Jaccard ≥ 0.7) before canonization
  • Publish floor: anti-slop ≥ 0.55 + fact-check ≥ 0.55 (after one revision attempt)
  • Slug-dedup at the list endpoint

See it

Editorial masthead — wordmark, freshness pill, 8-item nav

Article detail
Article — drop cap, FLUX hero, ElevenLabs narration, critic scores
Glossary — linguistic family tree
Glossary — alphabetized lexicon across in-world eras
Control Room — live agent pipeline
Control Room — canon agent → writer → critics → illustrator → narrator, live
/watch — cinematic mode
/watch — full-screen mood-themed playback against the liveliest world

Quick start

git clone https://github.com/Ridwannurudeen/hermes-genesis
cd hermes-genesis
cp .env.example .env       # add NOUS_API_KEY (and optional KIMI / OPENAI / ELEVENLABS keys)
docker compose up -d       # http://localhost:8003

Or skip setup — the live deployment is the canonical artifact.

Manual setup (without Docker)
# Backend
cd backend
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
uvicorn main:app --reload --port 8003

# Frontend
cd frontend
npm install && npm run dev
Variable Required Notes
NOUS_API_KEY Yes Hermes-4-70B inference
KIMI_API_KEY Recommended Kimi-K2.6 for long-form writing (falls back to Nous if unset)
IMAGE_API_KEY Optional FLUX illustrations
OPENAI_API_KEY / ELEVENLABS_API_KEY Optional TTS narration
TELEGRAM_BOT_TOKEN Optional Telegram bot

Hermes Agent integration

Ships as 9 hermes-agent skills + an MCP bridge with 18 tools + a one-command setup:

./setup-hermes-agent.sh                                  # local
./setup-hermes-agent.sh https://hermesgenesis.world      # remote
Skill Purpose
world-master Full observe→reason→act loop, governs a living world autonomously
chroniclon The canon agent + critics + writer + linguistic drift
genesis-create World generation from one sentence
genesis-chat In-character conversations shaped by genome
genesis-chronicle TTRPG campaign kits + narrative exports
mcp-server hermes-agent ↔ Genesis MCP setup
+ 3 more See skills/

MCP bridge auto-discovered by hermes-agent via stdio:

genesis_create_world      genesis_list_worlds      genesis_get_world
genesis_simulate          genesis_intervene        genesis_agent_start
genesis_agent_stop        genesis_agent_status     genesis_chat
genesis_council           genesis_chronicle        chronicle_stats
chronicle_list_articles   chronicle_get_article    chronicle_render_audio
chronicle_render_image    chronicle_control_backlog
… 1 more

Source: mcp-bridge/server.mjs · hermes-agent-demo.py.


Stack

Python FastAPI React TypeScript Tailwind Vite Remotion Docker

Backend — FastAPI · 60+ endpoints · SSE streaming · file-locked atomic JSON store · 133 tests Frontend — React 18 · Source Serif 4 + JetBrains Mono · strict editorial palette · D3 · Framer Motion · 16 tests (vitest) Infra — Docker Compose (web + canon-runner) · nginx + certbot · GitHub Actions CI


Demo film

A 100-second editorial demo accompanies the X submission — programmatic React composition (Remotion) rendered to mp4. Live counter cold-open, three-agent pipeline visualisation, real-history seed test, full-screen cinematic mode showcase, hermes-agent skill grid, and a closing counter to prove autonomy. ElevenLabs Antoni narration over a Kevin MacLeod (CC-BY-3.0) music bed; Seraphina takes the floor for 20 seconds during the cinematic beat. Video is the canonical artifact; source composition lives outside this repo.


Why Hermes-4-70B

Two reasons the canon stack runs on Hermes specifically, not a hosted alternative:

  1. Uncensored creative reasoning. The canon agent makes brutal calls — kills characters, ends dynasties, cancels prophecies. A safety-tuned model refuses these and the encyclopedia goes flat.
  2. Open-weight agentic tool-use. The MCP bridge invokes Hermes as a tool-calling model. Hermes-4-70B holds its tool-call schema across long, stateful loops; we self-host it without depending on a closed API for the agent loop.

Kimi-K2.6 carries the long-form writing because of its 256 K context — the writer sees ~50 prior canon excerpts when drafting any article.


Numbers from the live API

$ curl -s https://hermesgenesis.world/api/chronicle/stats
{
  "article_count":     960,
  "total_words":       506219,
  "era_count":         66,
  "current_era":       "The Cinder Era",
  "linguistic_eras":   65,
  "subscriber_count":  2,
  "last_canon_write":  "2026-05-01T07:07:28+00:00"
}

3 worlds running on the production VPS. The longest-running (Lunar Epistles) is on day 990. All events, all characters, all faction dynamics: autonomous. No scripting.


What makes this different

AI Dungeon Stanford Smallville / AI Town Hidden Door Hermes Genesis
Autonomy reactive only simulation only humans drive scenes autonomous publishing
Persistence none session memory per-game full canon, indefinite
Cross-temporal coherence none none per-session cross-era cross-linked canon
Linguistic depth none none none phonological drift across eras
Critic loop none none none anti-slop + fact-check before publish
Publishing artifact text fragment none scene transcript encyclopedia

The category as we frame it: autonomous publishing of fictional canon with cross-temporal coherence and linguistic drift. See docs/PAPER_OUTLINE.md for the workshop-paper framing.


Roadmap

Stage Status
Core simulation, autonomous canon, critic loop ✅ Live
Multimedia (FLUX + ElevenLabs + cinematic mode) ✅ Live
Linguistic drift module ✅ Live
Hermes-agent skills + MCP bridge ✅ Live
Editorial reskin + 8-route nav ✅ Live
100s programmatic demo film ✅ Shipped
Workshop paper (NeurIPS Creative AI) 🔧 Drafting
Multiplayer worlds (shared persistence) 📋 Planned
Voice-to-world (speak your world into existence) 📋 Planned

Built for the NousResearch Hermes Agent Hackathon

Hermes Genesis demonstrates what Hermes Agent can do when given full creative control over a living world. The World Master implements hermes-agent's observe→reason→act pattern, repo-local skills integrate with the framework, and the MCP bridge connects every layer of the simulation to hermes-agent's tool ecosystem.


License

MIT.

Demo-film music: Inspired by Kevin MacLeod (incompetech.com) — Creative Commons Attribution 3.0.