项目简介

Post-Cortex 是一个用 Rust 构建的生产级智能记忆系统,它将短暂的 AI 对话转化为持久化、可搜索的知识。它作为一个 MCP (Model Context Protocol) 服务器运行,提供无死锁的并发架构,使 AI 助手能够在不同会话间保持完美记忆,理解语义关系,并通过本地 AI 驱动的搜索检索上下文相关信息。

主要功能点

  • 持久化记忆系统: 采用三层分级存储(热/温/冷)和 RocksDB 持久化,确保数据不丢失。
  • 语义搜索: 利用本地 Transformer 模型进行 AI 驱动的语义搜索,支持可配置的速度与准确度模式。
  • NER 驱动的知识图谱: 自动提取实体并映射关系,构建会话知识网络。
  • 隐私优先: 所有处理均在本地进行,无外部 API 依赖,保护用户数据隐私。
  • 锁无关并发: 采用原子操作和 DashMap 实现无死锁并发,提供高吞吐和低延迟。
  • 丰富的 MCP 工具: 提供 24 个预定义工具,涵盖会话管理、上下文添加、搜索、分析和工作区管理等。

安装步骤

Post-Cortex 提供两个可执行文件:'post-cortex' (Stdio MCP 服务器) 和 'post-cortex-daemon' (HTTP 后台服务)。

  1. 推荐 (macOS/Linux - 使用 Homebrew): 在终端运行以下命令安装:

    brew install julymetodiev/tap/post-cortex

    这将同时安装 'post-cortex' 和 'post-cortex-daemon'。

  2. 直接下载: 从 最新发布页 下载适用于您操作系统的二进制文件。例如,对于 macOS Apple Silicon:

    curl -L https://github.com/julymetodiev/post-cortex/releases/latest/download/post-cortex-aarch64-apple-darwin -o /usr/local/bin/post-cortex && chmod +x /usr/local/bin/post-cortex
    curl -L https://github.com/julymetodiev/post-cortex/releases/latest/download/post-cortex-daemon-aarch64-apple-darwin -o /usr/local/bin/post-cortex-daemon && chmod +x /usr/local/bin/post-cortex-daemon
  3. 从源代码构建: 需要 Rust 工具链 (1.70+)。在项目根目录运行:

    cargo build --release --features embeddings
    # 可执行文件在 target/release/ 目录下

服务器配置

Post-Cortex 支持两种模式与 MCP 客户端(如 Claude Desktop)集成。

  1. Stdio 模式 (简单): 适用于单个项目工作流。MCP 客户端通过标准输入输出 (Stdio) 与 Post-Cortex 进行通信。

    • 配置信息: 在 MCP 客户端(例如 Claude Desktop)的配置文件中添加以下 JSON 对象:
      {
        "mcpServers": {
          "post-cortex": {
            "command": "post-cortex"
          }
        }
      }
      或者使用绝对路径:
      {
        "mcpServers": {
          "post-cortex": {
            "command": "/usr/local/bin/post-cortex"
          }
        }
      }
      • 'command': 启动 'post-cortex' 服务器的命令。
      • 'env' (可选): 如果需要为 Stdio 模式设置独立的数据目录,可以在这里配置环境变量 'PC_DATA_DIR'。
  2. Daemon 模式 (高级): 适用于多项目工作流、API 访问或作为后台服务运行。MCP 客户端通过 SSE (Server-Sent Events) HTTP 接口与 Post-Cortex 通信。

    • 启动守护进程: 首先,您需要启动 'post-cortex-daemon'。在终端运行:
      post-cortex-daemon init   # 初始化默认配置文件 (~/.post-cortex/daemon.toml,可选)
      post-cortex-daemon start  # 启动后台守护进程
    • 配置信息: 在 MCP 客户端(例如 Claude Desktop)的配置文件中添加以下 JSON 对象:
      {
        "mcpServers": {
          "post-cortex": {
            "type": "sse",
            "url": "http://localhost:3737/sse"
          }
        }
      }
      • 'type': 通信协议类型,这里使用 'sse'。
      • 'url': Daemon 服务器的 SSE 接口地址,默认为 'http://localhost:3737/sse'。
      • Daemon 配置项: Daemon 的行为可以通过 '~/.post-cortex/daemon.toml' 配置文件或环境变量(例如 'PC_HOST', 'PC_PORT', 'PC_DATA_DIR')进行自定义。

两种模式默认共享 '~/.post-cortex/data' 目录下的数据,但不能同时运行。您可以根据需求自由切换,数据将保持一致。

基本使用方法

一旦服务器运行并配置好 MCP 客户端,您可以与 AI 助手互动以利用 Post-Cortex 的记忆能力。

  1. 创建项目会话: 在与 AI 助手对话时,指示它创建 Post-Cortex 会话。例如: '"为这个项目创建一个 Post-Cortex 会话"' AI 助手会返回一个 'session_id'。

  2. 添加会话 ID 到项目: 将返回的 'session_id' 记录下来,通常是在项目的 'CLAUDE.md' 文件中,例如:

    # CLAUDE.md
    **Project session ID:** 'YOUR-SESSION-ID-HERE'
  3. 使用记忆和搜索: 在后续对话中,AI 助手将能自动或通过调用 Post-Cortex 的工具来管理上下文和进行语义搜索。例如,它可能会调用:

    • 'update_conversation_context(session_id: "YOUR-SESSION-ID", interaction_type: "qa", content: {"question": "...", "answer": "..."})' 来保存重要的问答、决策或代码变更。
    • 'semantic_search_session(session_id: "YOUR-SESSION-ID", query: "..." )' 来检索相关信息。
    • 'create_workspace(name: "My Project", description: "Details about my project")' 来创建项目组。
    • 'add_session_to_workspace(workspace_id: "WORKSPACE-ID", session_id: "SESSION-ID", role: "primary")' 来管理会话与工作区的关联。

重要提示

确保您配置的 MCP 服务器路径正确,并在启动 MCP 客户端前确保 'post-cortex' 或 'post-cortex-daemon' 正在运行。

信息

分类

开发者工具