Skip to content

Adapters

PLUR’s engine is a single thing: a typed engram store with hybrid local search. Adapters are how that engine plugs into the places agents actually run.

There are three integration depths, in order of “how invisible PLUR is”:

  1. Plugin / hook — fully automatic. The host runtime calls PLUR at lifecycle events without the agent asking. Best UX.
  2. MCP tool — the agent calls PLUR explicitly via Model Context Protocol. Works with anything that speaks MCP.
  3. CLI / HTTP — explicit shell-out or HTTP call. Universal escape hatch.

Most adapters combine 1 and 2. The MCP server, for instance, ships with Claude Code hooks (depth 1) and exposes MCP tools the agent can call directly (depth 2).

CapabilityMCPOpenClawHermesCLICustom
Auto-inject on session start✓ (CC hooks)✓ (built-in)✓ (pre_llm_call)–self-implemented
Auto-capture corrections✓ (CC hooks)✓ (built-in)✓ (post_llm_call)–self-implemented
Episode timeline✓✓✓✓✓
Explicit learn / recall tools✓✓✓✓via REST
Knowledge Packs✓✓✓✓✓
Sync across machines✓✓✓✓n/a
Multi-user permission enforcement– (single-user)–––✓ (Enterprise)
Server-side audit log––––✓ (Enterprise)
  • You use Claude Code, Cursor, or Windsurf → MCP adapter.
  • You use OpenClaw → OpenClaw plugin — strictly better UX than MCP because it gets lifecycle hooks.
  • You’re building a Python agent with the Hermes framework → Hermes adapter.
  • You’re scripting or building a custom agent → CLI, or Custom for HTTP integration.
  • You’re a team with shared scopes and governance needs → PLUR Enterprise, which adds an HTTP/SSE server and REST API on top of the same engine.

Adapter versions track the core engine on a shared release cycle. The current verified pairing is @plur-ai/core@0.13.0, @plur-ai/mcp@0.13.0, @plur-ai/cli@0.13.0, @plur-ai/claw@0.10.x, plur-hermes==0.13.0.