Skip to content

Quickstart

Quickstart (Self-Hosted)

Get Engram running on your own hardware in under five minutes.

Prerequisites

  • Docker 24+ and Docker Compose v2
  • At least 4 GB RAM available for containers
  • An API key from OpenAI or another supported provider

Step 1: Get the compose file

Clone the repository or download just the compose file:

Terminal window
# Option A: Clone the repo
git clone https://github.com/EngramTools/memcp.git
cd memcp
# Option B: Download only the compose file
curl -O https://raw.githubusercontent.com/EngramTools/memcp/main/docker-compose.yml

Step 2: Set your API key

Copy the example environment file and add your API key:

Terminal window
cp .env.example .env

Open .env and set at minimum:

OPENAI_API_KEY=sk-your-key-here

See the full environment reference for all available variables.

Step 3: Start Engram

Terminal window
docker compose up -d

This starts three services:

ServicePortDescription
openclaw3000Agent runtime and API
memcp4000Memory server (MCP protocol)
claw-control8080Management dashboard

Wait about 15 seconds for all services to initialize.

Step 4: Open the dashboard

Visit http://localhost:8080 in your browser. You should see the claw-control dashboard.

If you see a loading state for more than 30 seconds, check logs:

Terminal window
docker compose logs -f

Step 5: Add a channel

A “channel” connects your agent to an interface. For a first test, use the built-in CLI channel:

  1. In claw-control, go to ChannelsAdd Channel
  2. Select CLI from the channel type list
  3. Click Create

For Telegram setup, see the Channels guide.

Step 6: Send a message to your agent

Open the CLI channel in claw-control and type a message in the chat panel. Your agent will respond.

After the response, go to Memory in the sidebar. You’ll see the memory entries memcp created from the conversation.

Expected result

  • Agent responds in the chat panel
  • Memory entries appear in the Memory browser
  • Each subsequent message has access to the stored context

What’s next?