Skip to content

feat: first-class OpenClaw plugin for Traul as agent external memory #10

@dandaka

Description

@dandaka

Vision

Make Traul a first-class plugin in the OpenClaw ecosystem so any OpenClaw user can install Traul and use it as external memory for their AI agent. The setup should be straightforward — ideally a one-liner install from ClawHub.

Why This Matters

OpenClaw has 135K+ GitHub stars and 700+ skills in its marketplace. It already connects to the same messaging platforms Traul syncs from (WhatsApp, Telegram, Discord, Slack, etc.). By positioning Traul as OpenClaw's memory layer, we tap into a massive user base that already has the messaging infrastructure set up — they just need the search/intelligence layer on top.

What Traul Brings to OpenClaw Users

  • Cross-platform message search — hybrid FTS5 + vector search across all connected platforms
  • Signal detection — SQL-based pattern matching (stale threads, etc.)
  • Briefings — structured daily overviews with volume charts
  • Local-first — no data leaves the user's machine
  • Agent-native — CLI with JSON output, designed to be called by AI agents

Implementation Plan

Phase 1: MCP Server Mode

  • Add an MCP server transport to Traul (stdio or HTTP)
  • Expose core tools via MCP: traul_search, traul_messages, traul_channels, traul_signals, traul_briefing, traul_sql
  • This alone makes Traul usable by any MCP-compatible agent (Claude, OpenClaw, etc.)

Phase 2: OpenClaw Native Plugin

  • Create openclaw.plugin.json manifest
  • Package as npm module (@traul/openclaw-plugin or openclaw-plugin-traul)
  • Register tools in OpenClaw's capability registry
  • Add background service for periodic sync (leverage OpenClaw's Gateway lifecycle)
  • Handle config bridging — reuse OpenClaw's existing platform credentials where possible (avoid double-auth)

Phase 3: ClawHub & Distribution

  • Publish to ClawHub marketplace for one-click install
  • Write setup guide: openclaw plugins install traul
  • Add OpenClaw-specific README section with screenshots/examples
  • Create demo skill that shows an agent using Traul to answer "what did X say about Y last week?"

Phase 4: Deep Integration

  • Auto-discover OpenClaw's connected platforms and offer to sync them
  • Share contact/identity data with OpenClaw's contact system
  • Expose signals as OpenClaw notifications
  • Support OpenClaw's RPC interface for real-time queries from agents

Technical Notes

  • OpenClaw plugins are TypeScript modules loaded via jiti at runtime
  • Plugins can register: tools, CLI commands, RPC methods, HTTP routes, background services
  • MCP servers from plugin bundles run as subprocesses — Traul's MCP mode could work this way
  • OpenClaw already has memory plugins (Core/LanceDB) — Traul differentiates by being communication-focused with multi-source sync, not general-purpose memory
  • Plugin security: installed with npm install --ignore-scripts, path security checks apply

Open Questions

  • Should Traul's sync run inside the OpenClaw Gateway process or as a separate daemon?
  • How to handle credential sharing — can Traul reuse OpenClaw's Telegram/Discord/Slack sessions?
  • Should we support OpenClaw's Claude-compatible plugin format (.claude-plugin/plugin.json) as well?
  • Naming: traul, openclaw-traul, @traul/openclaw?

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions