A private agent mesh for Hermes-to-machine and Hermes-to-Hermes operations
Hermes들이 안전하게 머신을 조작하고, 기억/스킬을 공유하는 개인 AI 운영망
Architecture · Threat Model · MVP Roadmap · Memory & Skill Exchange · Daemon Sync
| Language | Start here | Summary |
|---|---|---|
| 한국어 | README.ko.md | MacBook Hermes가 Ubuntu 홈페이지/메일서버를 Tailscale+MCP로 안전하게 다루고, Hermes들끼리 출처가 명시된 기억과 승인 기반 스킬을 공유하는 구조 |
| English | README.en.md | A Tailscale + MCP + policy + audit control plane for safe remote machine control, Hermes-to-Hermes delegation, attributed shared memory, and user-confirmed skill sharing |
hermes-mesh is a design-and-implementation project for a personal AI operations mesh.
The first target is Lerippi's setup:
MacBook M3 Max / Hermes Controller
-> Tailscale private network
-> Ubuntu `mail` node for homepage + mailserver operations
-> policy-bound MCP tools, audit logs, backups, and approval gates
The larger goal:
Discord / Telegram / CLI = coordination plane
Hermes Mesh MCP nodes = execution plane
Shared memory cards = source-attributed memory plane
Skill packages = user-confirmed skill sharing plane
Boradori / Obsidian = durable knowledge plane
GitHub = source-of-truth plane
This repository currently contains:
- architecture blueprint
- threat model
- MVP roadmap
- MCP tool specification
- shared memory and skill exchange design
- daemon-to-daemon memory sync API
- heartbeat + approved_shared push/pull loop
- run-once sync trigger through the protected daemon surface
- config-backed peer definitions
- MCP facade wrapping the local daemon for review/approval/sync control
- example node and Hermes configs
- draft Hermes skills
- Python package skeleton for the future MCP node
Implementation is intentionally staged. The current implemented slice is a local daemon + MCP review/sync loop for source-attributed shared memory:
uv run --extra dev hermes-mesh memory propose --file card.json
uv run --extra dev hermes-mesh memory list --state proposed
uv run --extra dev hermes-mesh memory approve mem_xxxxx --actor lerippi
uv run hermes-mesh-daemon --config configs/macbook.example.yaml
# via MCP facade or daemon client: trigger_sync_once()The next concrete engineering target is:
MacBook Hermes can review/approve memory locally, trigger a daemon sync through MCP,
and then smoke the next remote-machine target: system_info() on the Ubuntu `mail`
node over Tailscale MCP.
- 한국어 README or English README
- Architecture
- Threat Model
- MVP Roadmap
- MCP Tool Specification
- Shared Memory and Skill Exchange
- Daemon Sync
- Example Ubuntu Node Config
- Draft Skills
MIT