cipher  by campfirein

AI coding agent memory layer with MCP integration

Created 3 months ago
3,053 stars

Top 15.6% on SourcePulse

GitHubView on GitHub
Project Summary

Cipher is an open-source memory layer designed to enhance AI coding agents by providing persistent, shareable, and context-aware memory. It integrates with various IDEs and coding assistants, enabling agents to retain and recall information across sessions and teams, thereby improving productivity and consistency.

How It Works

Cipher employs a dual memory layer architecture, capturing both high-level programming concepts (System 1) and detailed reasoning steps (System 2). It leverages configurable LLM providers and embedding models, storing this information in a chosen vector database (Qdrant, Milvus). The MCP (Model Context Protocol) integration allows seamless communication with compatible IDEs and agents, facilitating real-time memory sharing and context switching.

Quick Start & Requirements

  • Installation: npm install -g @byterover/cipher or npm install @byterover/cipher. Docker and source installation are also available.
  • Prerequisites: Node.js, npm/pnpm. API keys for LLM providers (OpenAI, Anthropic, etc.) and vector stores are often required.
  • Configuration: Primarily through .env file and memAgent/cipher.yml for LLM, embedding, and vector store settings.
  • Docs: Quick Start Guide, Configuration Guide, Complete Documentation.

Highlighted Details

  • Supports multiple LLM providers (OpenAI, Anthropic, Ollama, Qwen, AWS Bedrock, Azure OpenAI) and embedding models.
  • Integrates with IDEs via MCP, including Cursor, VS Code, Claude Desktop, and Gemini CLI.
  • Features "Workspace Memory" for team-aware project progress tracking.
  • Offers optional PostgreSQL integration for persistent chat history.

Maintenance & Community

Licensing & Compatibility

  • License: Elastic License 2.0.
  • Compatibility: Generally permissive for commercial use, but review the Elastic License 2.0 for specific terms.

Limitations & Caveats

The project is actively developed, and while it supports various configurations, users may need to manage API keys and environment variables carefully. Specific LLM or vector store integrations might require fine-tuning based on the chosen provider's API.

Health Check
Last Commit

4 days ago

Responsiveness

Inactive

Pull Requests (30d)
9
Issues (30d)
11
Star History
266 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.