Files
wehub-resource-sync c3749daf48
Tests / test-windows (push) Waiting to run
Tests / test-macos (push) Waiting to run
Tests / test-linux (3.13) (push) Failing after 0s
Tests / test-linux (3.11) (push) Failing after 1s
Tests / lint (push) Failing after 0s
Tests / test-linux (3.9) (push) Failing after 1s
Docker / build (push) Failing after 1s
Docker / build-gpu (push) Failing after 2s
chore: import upstream snapshot with attribution
2026-07-13 12:03:03 +08:00

2.7 KiB

Gemini CLI Integration Guide

This guide explains how to set up MemPalace as a permanent memory for the Gemini CLI.

Prerequisites

  • Python 3.9+
  • Gemini CLI installed and configured

1. Installation

On many Linux systems, installing Python packages globally is restricted. We recommend uv, which creates and manages a local virtual environment for you.

# Clone the repository (if you haven't already)
git clone https://github.com/MemPalace/mempalace.git
cd mempalace

# Create the venv and install MemPalace + dependencies in editable mode
uv sync

This produces a .venv/ directory inside the repo with everything installed. If you prefer plain pip:

python3 -m venv .venv
.venv/bin/pip install -e .

2. Initialization

Set up your "Palace" (the database) and configure your identity.

# Initialize the palace in the current directory
uv run python -m mempalace init .

You can manually define who you are and what projects you work on by creating/editing these files in ~/.mempalace/:

  • ~/.mempalace/identity.txt: A plain text file describing your role and focus.
  • ~/.mempalace/wing_config.json: A JSON file mapping projects and name variants to "Wings".

3. Connect to Gemini CLI (MCP)

Register MemPalace as an MCP server so Gemini CLI can use its tools.

gemini mcp add mempalace /absolute/path/to/mempalace/.venv/bin/python3 -m mempalace.mcp_server --scope user

Note: Use the absolute path to ensure it works from any directory.

4. Enable Auto-Saving (Hooks)

To ensure the AI saves memories automatically when conversation history becomes too long, add a PreCompress hook to your Gemini CLI settings.

Edit your ~/.gemini/settings.json and add the following:

{
  "hooks": {
    "PreCompress": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "/absolute/path/to/mempalace/hooks/mempal_precompact_hook.sh"
          }
        ]
      }
    ]
  }
}

Make sure the hook scripts are executable:

chmod +x hooks/*.sh

5. Usage

Once connected, Gemini CLI will automatically:

  • Start the MemPalace server on launch.
  • Use mempalace_search to find relevant past discussions.
  • Use the PreCompress hook to save new memories before they are lost.

Manual Mining

If you want the AI to learn from your existing code or docs immediately, run the "mine" command:

uv run python -m mempalace mine /path/to/your/project

Verification

In a Gemini CLI session, you can run:

  • /mcp list: Verify mempalace is CONNECTED.
  • /hooks panel: Verify the PreCompress hook is active.