Skip to content

Proposal: Octop adapter for memos-local-plugin (read-only memory bridge, PoC ready) #2543

Open

Description

@Poqianhu7895

Proposal: Octop adapter for memos-local-plugin (read-only memory bridge)

Background

Octop (self-hosted AI assistant, MIT) has a plugin system (octop_harness.plugins.PluginContext, kind: tool) but no way to connect to MemOS today — its built-in memory backends are only sqlite/postgres.

memos-local-plugin already ships adapters for Hermes / OpenClaw / DeepSeek Harness. Octop users currently have to hand-roll a bridge.

What we built

A small read-only Octop plugin (octop-memos-plugin, Apache-2.0) that exposes the existing memos-local-plugin viewer HTTP API (/api/v1/*) as five Octop agent tools:

Tool Endpoint
memos_search(query, top) GET /api/v1/memory/search (three-tier hybrid retrieval)
memos_get(id, kind) GET /api/v1/memory/{trace,policy,world}
memos_timeline(episode_id, limit) GET /api/v1/traces?episodeId=
memos_environment(limit) GET /api/v1/world-models
memos_skill_list(status, limit) GET /api/v1/skills

Design notes:

  • Read-only / single-writer: the agent that owns the MemOS bridge (e.g. Hermes) stays the only writer; Octop only reads. No dual-write conflicts, no schema changes needed on the MemOS side.
  • Zero dependencies beyond httpx; base URL configurable via MEMOS_API env var.
  • Verified end-to-end: Octop agent calls memos_search → hits land with tier/refId/score.

Options for upstreaming

  1. Add it under apps/ next to the other adapters (e.g. apps/memos-local-plugin/adapters/octop or a sibling apps/octop-memos-plugin).
  2. Keep it as an external repo and just list it in the README's ecosystem/plugins section.

Happy to send a PR for either. Repo: https://github.com/Poqianhu7895/octop-memos-plugin

One API-side note

GET /api/v1/memory/search runs a local embedding pass over the whole db; on multi-hundred-MB databases cold queries take 60–90 s. A light=true mode (skip tier re-ranking) or an optional pre-computed index hint would make read-only consumers like this much snappier — but that's enhancement territory, the plugin just uses a long timeout today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

area:pluginOpenClaw & Hermesstatus:needs-product-reviewRequires product owner confirmation before deciding public repo, transfer, or internal backlog.types:enhancementNew feature or improvement | 新功能或改进

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions