MOCK_README.md (1687B)
1 # Mock Hermes API 2 3 Standalone mock server for developing and testing the Theo Agent Dashboard 4 without a running Hermes instance. 5 6 ## What It Does 7 8 Implements all Hermes API endpoints the dashboard proxies to: 9 10 | Endpoint | Method | Description | 11 |----------|--------|-------------| 12 | `/health` | GET | Health check | 13 | `/models` | GET | List available models | 14 | `/sessions` | GET/POST | List/create sessions | 15 | `/sessions/{id}` | GET/PATCH/DELETE | Session CRUD | 16 | `/sessions/{id}/messages` | GET/POST | Messages | 17 | `/sessions/{id}/fork` | POST | Fork session | 18 | `/api/sessions/{id}/chat/stream` | GET | SSE chat stream (echo bot) | 19 | `/search` | GET | Search messages | 20 21 The chat stream simulates a real Hermes response: 22 - `run.started` → `tool.started` (search) → `tool.completed` → 23 `message.started` → `assistant.delta` (chunked) → 24 `assistant.completed` → `run.completed` 25 26 Storage is in-memory — resets on restart. Seeds one demo session. 27 28 ## Usage 29 30 ```bash 31 # From project root 32 .venv/bin/python mock_hermes.py # default port 8642 33 .venv/bin/python mock_hermes.py 9999 # custom port 34 ``` 35 36 The dashboard connects to `http://localhost:8642` by default. Start the mock 37 before starting the dashboard for full end-to-end testing. 38 39 ## Attribution 40 41 SSE event structure (`run.started`, `assistant.delta`, `tool.started`, etc.) 42 and API shape (`/sessions`, `/models`, `/search`) are based on the 43 Hermes Agent API by Nous Research. 44 45 - Source: https://github.com/NousResearch/hermes-agent 46 - Docs: https://hermes-agent.nousresearch.com/docs 47 48 This mock is an independent implementation for testing purposes only. 49 It is not affiliated with or endorsed by Nous Research.