Skip to content

ai-co-id/chathermes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  _____ _           _   _    _
 / ____| |         | | | |  | |
| |    | |__   __ _| |_| |__| | ___ _ __ _ __ ___   ___  ___
| |    | '_ \ / _` | __|  __  |/ _ \ '__| '_ ` _ \ / _ \/ __|
| |____| | | | (_| | |_| |  | |  __/ |  | | | | | |  __/\__ \
 \_____|_| |_|\__,_|\__|_|  |_|\___|_|  |_| |_| |_|\___||___/

         a coworker, not a chatbot · v1.0.0 · agpl + attribution

ChatHermes — a Hermes Agent SaaS

The most complete open-source Hermes Agent implementation. Built on Nous Research's Hermes Agent and Moonshot AI's Kimi K2 Thinking. The chat that doesn't end when you close the tab.

Searching for hermes-agent? This is the production reference: a multi-tenant SaaS that provisions a dedicated Hermes Agent instance per paying user, runs a shared Hermes Agent proxy for free users, and ships 14 real chat-time tools that integrate with the Hermes Agent runtime.

ChatHermes is an open-source autonomous-agent SaaS, built on Nous Research's Hermes Agent and Moonshot AI's Kimi K2 Thinking — the official sponsors of the Hermes Agent Creative Hackathon. Drop a task, close the tab, come back to a finished thing — research, drafts, code, monitoring — pushed to your Telegram, deployed to a public URL, persisted in memory.

This repo is the source of chathermes.com. Self-host under the ChatHermes Open Source License, or skip the setup and use the managed version.

A chatbot is a calculator. ChatHermes is a coworker.

License: ChatHermes OSL (AGPL + Attribution) Built on Hermes Agent Powered by Kimi K2 Hosted

Features

14 chat-time tools (all real, no mockups)

web_search (5-tier fallback) · browse · fetch_url · github_repo · news_search · weather · wikipedia · save_memory · recall_memory · telegram_send · run_js · generate_image (Replicate Flux) · analyze_image (Gemini/GPT-4o vision) · dispatch_subagent (delegate to Claude/GPT-5/Kimi)

Multi-model chat

Hermes 4 (405B + 70B), Hermes 3, Kimi K2 / K2 Thinking, Claude Sonnet 4.6, GPT-5, Gemini 3.1 Pro, Step 3.5 Flash. Bring your own keys.

Hermes Agent integration

  • Shared agent proxy — Bun OpenAI-compatible proxy on :19002 for all free-tier users
  • Private agent provisioning — Pro plan auto-spawns a dedicated Hetzner Cloud server per user (gated mode by default — admin must approve each spawn)
  • Native Hermes Agent support when you install nous-hermes-agent locally

Vibe coding

"Build me a landing page for X" → multi-file fullstack project → live partial-HTML render → publish to public URL at /p/<slug>. 6 starter templates. Per-plan project quotas.

Conversion-focused billing

Hero ("You're sharing. Your agent shouldn't be.") · 3-card pricing with Pro emphasized · feature comparison table · 6-question FAQ · trust bar · invoice PDF download · Stripe Checkout + Customer Portal.

Mobile super-app interface

Bottom tab bar (Chat / Build / Memory / Plan / More) · bottom sheet for secondary nav · thumb-zone composer · safe-area inset support.

Cinematic /introducing demo

17-chapter video-style walkthrough at /introducing with:

  • Pre-generated MP3 narration (en-GB-RyanNeural via edge-tts — free, cinematic British male)
  • Netflix-style subtitles
  • Procedural Web Audio backsound (Cm7 pad + 75 BPM sub-pulse + FM bell pings)
  • Self-record button (MediaRecorder + getDisplayMedia → download as WebM)

Power features

  • 18 transactional email templates via Resend
  • Public REST API at /api/v1/* with Bearer auth + OpenAPI 3.0.3
  • Outbound webhooks with HMAC + 3-attempt exponential backoff
  • Magic-link auth (no passwords)
  • Admin dashboard (users · tenants · LLM providers · email · Hetzner Cloud · Private Agents · billing · audit trail)
  • CLI with 13 admin operations
  • Built-in PWA, status page, Cmd+K search, auto-refresh polling everywhere

Quick start

git clone https://github.com/ai-co-id/chathermes.git
cd chathermes
./bin/install.sh      # → setup wizard + deps + build + smoke test
./bin/start.sh        # → boots all 3 services
# -> open http://localhost:7000

Sign in with any email. Magic link prints to orchestrator log if you skipped Resend. Done.

./bin/health.sh       # check everything is running
./bin/stop.sh         # shut down

Requires Bun >= 1.3. For systemd / one-click Hetzner / production: see INSTALL.md.

See INSTALL.md for production setup (HTTPS, Stripe, Resend domain, Hermes Agent native).

Stack

  • Web: Next.js 16, Turbopack, Tailwind 4, Motion, react-markdown — port 7000
  • Orchestrator: Hono on Bun, SQLite via bun:sqlite — port 7010
  • Hermes proxy: Bun, OpenAI-compatible — port 19002

No PostgreSQL, no Redis, no Kafka. Single SQLite file for everything.

Configuration

ChatHermes reads everything from environment variables — see orchestrator/.env.example.

Minimum required:

  • PUBLIC_BASE_URL — your install's public URL
  • SESSION_SECRET — auto-generated by bin/setup.sh
  • One of: NOUS_API_KEY, KIMI_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.

Optional but recommended:

  • RESEND_API_KEY + verified domain for email
  • STRIPE_* keys for billing
  • CHATHERMES_MODEL_RATES JSON for per-model credit pricing
  • HETZNER_API_TOKEN for one-click and private agent deploys
  • REPLICATE_API_TOKEN for image generation tool
  • GEMINI_API_KEY for vision analysis tool

No credentials are bundled with this repo. You configure your own.

Self-host vs Cloud

The code is the same. The infrastructure isn't.

This repo (self-host) chathermes.com
Setup time 5 min with Docker 30 sec (sign in)
LLM API keys bring your own pre-pooled
Hermes Agent native install yourself (5 GB) pre-installed
Email BYO Resend + DNS verified domain
Public preview your-domain.com/p/<slug> chathermes.com/p/<slug>
Private agent provisioning works with your Hetzner token works with our Hetzner pool
Backups DIY (cron) included, off-site
Updates git pull automatic
What you bring servers + keys + time email + a credit card
License ChatHermes OSL — AGPL + Required Attribution hosted service

We genuinely want you to self-host. The hosted version pays our team to operate the cloud-only infrastructure. See docs/CLOUD_FEATURES.md for the full split.

License

ChatHermes Open Source License v1.0 — based on AGPL-3.0 with a Required Attribution Addendum:

  • Use, modify, redistribute. Sell hosting if you want.
  • Run it commercially.
  • DO NOT strip the visible "Powered by ChatHermes" link from the UI.
  • DO NOT remove the X-Powered-By: ChatHermes HTTP header.
  • DO NOT use the name "ChatHermes" or our mascot for your fork.

The runtime guard refuses to start the orchestrator if the attribution module is tampered with. That's a feature, not a bug.

Contributing

PRs welcome. By contributing you agree your work is licensed under the ChatHermes Open Source License. See CONTRIBUTING.md.

Built on


Made by @kwkuh & @supercryptolord in Jakarta. Thanks to Nous Research and Moonshot AI for shipping Hermes Agent and Kimi K2 in the open.

About

Hermes Agent SaaS — the most complete open-source implementation of Nous Research's hermes-agent runtime. Multi-tenant, with shared and private Hermes Agent provisioning, 14 tools, vibe coding, mobile super-app. Built on hermes-agent + Kimi K2 Thinking.

Topics

Resources

License

Contributing

Stars

6 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages