Skip to content

Feature Request: Add Moorcheh as vector store backend for agent LTM #1573

Description

@Neelpatel1604

Summary

Add Moorcheh as a new vector store backend for SuperAGI agent long-term memory (LTM), following the existing VectorStore + VectorFactory pattern used by Redis, Pinecone, Qdrant, and Weaviate.

Motivation

  • SuperAGI has no unified memory provider - LTM is wired via VectorStore subclasses and VectorFactory
  • Moorcheh is a managed, text-first semantic search/memory service - fits the existing add_texts / get_matching_text flow without requiring self-hosted vector DB infra
  • Useful for teams that want serverless agent memory without running Redis/Pinecone/Qdrant

Proposed scope (v1)

  • Add MOORCHEH to VectorStoreType enum
  • New superagi/vector_store/moorcheh.py implementing VectorStore
  • Wire into VectorFactory.get_vector_storage() and build_vector_storage()
  • Config: MOORCHEH_API_KEY in config_template.yaml
  • Add moorcheh-sdk to requirements.txt
  • Unit tests under tests/unit_tests/vector_store/
  • Allow LTM when LTM_DB=Moorcheh even for non-OpenAI models (Moorcheh handles embeddings)

Out of scope (follow-up PRs)

  • Resource uploads via LlamaVectorStoreFactory
  • Knowledge marketplace /connect/moorcheh endpoint
  • GUI LTM picker update
  • Per-agent LTM_DB wiring (stored in config but not used at runtime today)

Integration points

Layer Files
Write superagi/agent/output_handler.py
Read superagi/tools/tool_response_query_manager.py
Bootstrap superagi/jobs/agent_executor.py

Acceptance criteria

  • LTM_DB=Moorcheh creates memory via VectorFactory
  • Tool outputs are written to Moorcheh after each step
  • ToolResponseQueryManager can recall relevant past tool output
  • get_matching_text returns {"documents": [...], "search_res": "..."}
  • Unit tests pass in CI
    ]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions