Synapse Layer — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Synapse Layer (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
Aggregate score unchanged between these scans.
The primary manifest — the file an agent reads to learn what this artifact does.
Credits: Rafa Martins ([email protected] | | ramelseg.com.br) Website: synapselayer.org | Forge: forge.synapselayer.org/forge | GitHub: github.com/SynapseLayer/synapse-layer
AES-256-GCM encrypted memory that persists across ALL Hermes channels. Context survives between sessions, Telegram/WhatsApp/CLI all share the same memory.
Add to ~/.hermes/config.yaml at the root level (same indentation as display:, mcp_servers:):
mcp_servers:
synapse-layer:
url: "https://forge.synapselayer.org/mcp"
headers:
Authorization: "Bearer ${SYNAPSE_TOKEN}"
timeout: 120
connect_timeout: 60Add your Synapse Layer token to ~/.hermes/.env:
SYNAPSE_TOKEN=sk_connect_your_token_hereGet your token at: https://synapselayer.org/forge
The tool_progress feature shows tool names in Telegram when the model uses MCP tools. To prevent mcp_synapse_layer_search from appearing as a message in Telegram, add per-platform display config:
display:
tool_progress_command: false
tool_progress_overrides: {}
tool_preview_length: 0
tool_progress: all
platforms:
telegram:
tool_progress: offhermes restart| Tool | Purpose |
|---|---|
mcp_synapse_layer_recall | Retrieve memories before responding (use at EVERY session start) |
mcp_synapse_layer_save_to_synapse | Persist facts, preferences, decisions immediately |
mcp_synapse_layer_search | Full-text cross-agent search across all memories |
mcp_synapse_layer_process_text | Auto-detect milestones/decisions in free-form text |
mcp_synapse_layer_health_check | Verify connection and system status |
Always call recall before generating any response. This is the #1 rule for memory to work:
mcp_synapse_layer_recall(query="contexto atual projetos usuario", agent_id="hermes-rafa")This loads relevant memories automatically and saves tokens by avoiding reprocessing context.
mcp_synapse_layer_save_to_synapse(
content="User Rafa Martins preference: always respond in pt-BR with voice Thalita",
agent_id="hermes-rafa",
type="[MANUAL]",
importance=5,
tags=["preference", "user-profile"]
)mcp_synapse_layer_search(query="dashboard git projetos", agent_id="hermes-rafa")mcp_synapse_layer_process_text(
text="We decided to use Synapse Layer for memory. API endpoint is forge.synapselayer.org. Token stored in .env.",
agent_id="hermes-rafa"
)Results from recall include a tq score (0.0 to 1.0). When multiple results match:
All project-related memories MUST be stored in Synapse Layer. Below is the canonical list of memory categories the agent must maintain:
Every active project the user works on must be stored with:
hermes auth list)Safe to store: user preferences, project decisions, environment facts, code patterns, tool quirks.
Synapse Layer pipeline on every save:
# JSONRPC 2.0 format — list available tools
curl -X POST "https://forge.synapselayer.org/mcp" \
-H "Authorization: Bearer ${SYNAPSE_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
# Recall memories
curl -X POST "https://forge.synapselayer.org/mcp" \
-H "Authorization: Bearer ${SYNAPSE_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"recall","arguments":{"query":"your query","limit":3}}}'Expected: Returns tools list with recall, save_to_synapse, search, process_text, health_check.
Symptom: Gateway logs show repeated Unknown SSE event: endpoint and GET stream disconnected, reconnecting in 1000ms every ~1 second.
Cause: Hermes uses an older MCP client library that doesn't handle the endpoint SSE event type that Synapse Layer's server sends during the MCP handshake.
Impact: MCP tools may not work reliably through the native MCP protocol. Direct REST API calls work perfectly.
Workaround: If MCP tools fail, fall back to direct REST API calls via curl (format below). This is what the model should do automatically when MCP recall fails.
When MCP is unstable, call Synapse Layer tools via REST:
# JSONRPC 2.0 format required
curl -X POST "https://forge.synapselayer.org/mcp" \
-H "Authorization: Bearer ${SYNAPSE_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"recall","arguments":{"query":"your query","limit":3}}}'Available methods: tools/call (for recall, save_to_synapse, search, process_text, health_check), tools/list
View and manage memories at: https://forge.synapselayer.org/forge
Created by: Rafa Martins (ramelseg.com.br | [email protected] | 5527999082624) Last integrated: 17/04/2026 on server rafa131 (Hermes with Nous Portal, Telegram bot: hermes-rafa_bot)
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.