Agent frameworks

Hermes Agent

Spectron memory provider for the Hermes Agent.

Spectron is a memory provider for the Hermes Agent. Once installed and selected, the agent recalls relevant memories before each turn, writes each completed turn back to Spectron asynchronously, and consolidates memory when a session ends. It also gains explicit memory tools it can call directly.

Package: spectron-hermes-agent (PyPI). It pulls in the Spectron SDK (surrealdb[spectron]) and registers the plugin with Hermes through the hermes_agent.plugins entry point.

  • Python 3.10+

  • A running Hermes Agent install

  • Spectron access: endpoint, context, and API key

pip install spectron-hermes-agent
export SPECTRON_API_KEY="..."
export SPECTRON_ENDPOINT="https://your-instance.spectron.dev"
export SPECTRON_CONTEXT="my-context"

Select the provider. Hermes prompts for any missing settings and writes the non-secret ones to $HERMES_HOME/spectron.json:

hermes memory setup      # choose "spectron"
hermes memory status     # confirm it is active
hermes                   # run a session with Spectron-backed memory
SettingEnv varDefaultNotes
api_keySPECTRON_API_KEYn/aSecret, required (kept in .env)
endpointSPECTRON_ENDPOINTn/aRequired, origin with no trailing slash
contextSPECTRON_CONTEXTn/aRequired; a client is pinned to one context
recall_modeSPECTRON_RECALL_MODEhybridhybrid, context, or tools
write_frequencySPECTRON_WRITE_FREQUENCYturnturn or session
top_kSPECTRON_TOP_K5Memories recalled per turn
default_scopeSPECTRON_DEFAULT_SCOPEn/aFor example user/tobie; scope for writes and lens for reads

Recall modes. hybrid injects raw recalled memories before each turn; context injects a synthesised answer instead; tools injects nothing and lets the model recall explicitly with spectron_recall / spectron_context.

ToolPurpose
spectron_recallSearch memory across semantic, lexical, graph, and temporal signals.
spectron_rememberStore a durable fact.
spectron_contextReturn a synthesised answer from memory.
spectron_forgetSupersede (default) or hard-delete.
spectron_reflectDerive insights, optionally persisting them.
spectron_uploadIngest a document into knowledge memory.

The provider is built not to destabilise the agent. Writes run on a background daemon thread, so turns never block on I/O. Every Spectron call is wrapped; failures are logged and degrade to empty results rather than raising into the agent loop (fail open). After repeated failures or an authentication error, a circuit breaker disables memory for the rest of the session.

Was this page helpful?