Hermes Synth hermes synth
Docs Roadmap

Hermes Codex Docs

Everything you need to build, deploy, and manage AI agents with Hermes Synth — the open-source AI agent platform.

Live platform: hermessynth.org — free to use, no setup needed.

Quick Start

The fastest way to start is the hosted version:

Self-hosting on Cloudflare

Hermes Synth runs entirely on Cloudflare Pages (free tier). Here's how to deploy your own instance:

# 1. Clone the repository
git clone https://github.com/hermesSynth/hermes-synth.git
cd hermes-synth

# 2. Install dependencies
npm install

# 3. Create D1 database
npx wrangler d1 create hermes-synth-db

# 4. Run schema
npx wrangler d1 execute hermes-synth-db --remote --file=schema.sql

# 5. Deploy
npx wrangler pages deploy public --project-name=hermes-synth

Environment Variables

Set these in Cloudflare Pages → Settings → Environment Variables:

VariableRequiredDescription
JWT_SECRETYesSecret for signing auth tokens
VENICE_API_KEYYesVenice AI API key
RESEND_API_KEYNoFor email verification
GOOGLE_CLIENT_IDNoGoogle OAuth
GOOGLE_CLIENT_SECRETNoGoogle OAuth
GITHUB_CLIENT_IDNoGitHub OAuth
GITHUB_CLIENT_SECRETNoGitHub OAuth

AI Chat

Multi-model support

Chat supports 4 AI models from Venice AI. Switch models mid-conversation:

Features

Agents

Create custom AI agents with their own personality and purpose:

Code Editor

Write and run code directly in the browser:

Terminal

AI-powered terminal that handles both built-in commands and AI interpretation:

Built-in commands

AI commands

Any unrecognized command gets sent to Venice AI, which interprets and responds as if running in a real terminal. Example:

$ python3 -c "print('hello world')"
hello world

Command Center

14+ system commands with live data from the database:

Tasks & Cron Jobs

Autonomous Tasks

Describe a goal → AI breaks it into steps → auto-executes. Tasks track status (pending, running, completed, failed) and save results to database.

Cron Jobs

Schedule recurring AI-powered tasks:

Browser

Web scraping and AI summarization:

Settings

Full configuration panel with 9 sections:

Base MCP Integration

Hermes Synth integrates with Base MCP (Model Context Protocol) to give your AI agents direct access to Base blockchain.

Every write action requires user approval via Base Account. Access at /mcp.

MCP API Endpoints

EndpointMethodDescription
/api/mcp/connectPOSTConnect Base Account via MCP
/api/mcp/balanceGETGet wallet balances (ETH, USDC)
/api/mcp/sendPOSTSend tokens to address
/api/mcp/swapPOSTSwap tokens via DEX
/api/mcp/signPOSTSign message or typed data
/api/mcp/contractPOSTExecute contract call
/api/mcp/chatPOSTChat with MCP agent

API Reference

All API endpoints are Cloudflare Pages Functions under /functions/:

EndpointMethodDescription
/auth/loginPOSTEmail/password login
/auth/registerPOSTCreate account
/auth/googleGETGoogle OAuth redirect
/auth/githubGETGitHub OAuth redirect
/api/chatPOSTSend message to AI
/api/agentsGET/POSTList/create agents
/api/agents/[id]PUT/DELETEUpdate/delete agent
/api/agents/chatPOSTChat with agent
/api/tasksGET/POSTList/create tasks
/api/skillsGET/POSTList/create skills
/api/terminalPOSTExecute terminal command
/api/commandPOSTExecute command center
/api/uploadPOSTUpload file
/api/exportGETExport data as JSON
/api/notificationsGET/DELETEManage notifications
/api/mcp/*POST/GETBase MCP operations

All API endpoints (except auth) require a JWT token in the Authorization: Bearer <token> header.

Architecture

┌──────────────┐ ┌──────────────────┐ ┌─────────────┐
│ Browser │────▶│ Cloudflare Pages │────▶│ Venice AI │
│ (Frontend) │◀────│ (Functions) │◀────│ (4 models) │
└──────────────┘ └────────┬─────────┘ └─────────────┘
                                │
                     ┌────────▼─────────┐
                     │ Cloudflare D1 │
                     │ (12+ tables) │
                     └──────────────────┘
LayerTechnology
FrontendVanilla HTML/CSS/JS, JetBrains Mono
BackendCloudflare Pages Functions (serverless)
DatabaseCloudflare D1 (SQLite at the edge)
AIVenice AI — 4 models
AuthJWT + bcrypt, Google/GitHub OAuth
EmailResend ([email protected])