Palace is persistent, searchable memory for your coding agents — Cursor, Claude Code, Codex. Free and local for you. Shared across your whole team when you're ready.
Palace remembers your decisions, conventions, and fixes — then feeds them back to your agent (and your teammates' agents) over MCP. No more re-explaining your project every single session.
AI agents are only as good as their memory. Today that memory evaporates the moment a session ends — and it never crosses from one developer to the next.
Decisions, fixes, conventions — re-explained to your agent every single session. Wasted tokens, broken flow, the same answers typed again and again.
Move from Cursor to Claude Code to Codex and context doesn't follow. Each agent starts blind — no project history, no preferences, no past work.
Alice solved that database migration last week. Bob hits the same wall today. Neither agent knows — the fix lived and died on one laptop.
Shipping your codebase decisions and architecture context to a third-party cloud isn't an option for most teams. You need recall that stays on your infra.
Start free and solo in two minutes. Flip on shared memory for the whole team whenever you're ready — same tools, same agents.
One command adds the open-source memory engine and wires it into Cursor, Claude Code, or Codex over MCP.
Decisions, fixes, and conventions are stored locally and recalled automatically — across every future session. Free, forever, on your machine.
Docker Compose starter kit or a single Rust binary, on your own infrastructure. Postgres + pgvector under the hood. Your data never leaves your network.
Flat-priced tiers with a seat cap, verified locally with Ed25519. Offline-capable — no phone-home required.
palace remote set + palace remote on points each developer's local CLI at the shared server. Same MCP tools, now backed by team memory.
Drawers, knowledge-graph facts, and diary context live centrally. When Alice's agent files something, Bob's agent can recall it — tenant-isolated and audited.
A first-class wings registry organizes drawers into workspaces — backend, frontend, data, infra. Wings auto-register the moment an agent writes a memory, so every workspace inherits its context automatically.
Agents detect whether the current repo is a known project or topic and act on it — palace_project_status reports the state, palace_create_wing declares a topic wing, and palace_list_wings returns the full registry.
The same BM25 + cosine retrieval from palace-rs, now over your whole team's collective memory, with source-grounded provenance on every hit. R@5 = 0.981 on LongMemEval.
Temporal entity relationships across all teammates. Facts written by one agent are queryable by all — architecture decisions, API contracts, team conventions.
Session diary entries in AAAK format — private by default, optionally shared. Any agent can warm-start from the last person's session context.
Fine-grained read/write permissions per workspace per user, backed by Postgres row-level security and admin RBAC. Contractors see what they need; sensitive projects stay scoped.
Every MCP tool call is recorded as a usage event, and every memory write lands in a tenant-scoped audit log. Gain reports and Prometheus metrics show adoption across the team.
Exposes all palace_* MCP tools over the network. Any MCP-compatible agent — Cursor, Claude Code, Codex — connects with zero configuration change.
Single binary, low memory, fast startup. Runs comfortably on a small VM or a Raspberry Pi. No JVM, no Node, no Python runtime needed.
Embeddings run locally via ONNX. License verification is offline-capable. No data ever leaves your network — full air-gap mode supported.
The Rust memory engine at the core is MIT-licensed and free forever. Embeddings run locally via ONNX — no telemetry, no outbound traffic, air-gap friendly by default.
Start free and solo with the open-source core — forever. When your team needs shared memory, pick a flat tier: seats included, no per-seat billing, no cloud dependency.
Palace Server is distributed as a Docker image and a static binary. No cloud lock-in, no telemetry, no surprise egress fees.
Confirm PALACE_LICENSE_KEY is set with no surrounding quotes or whitespace. Keys are Ed25519-signed and verified on startup; an "expired" error means the embedded expiry has passed — check your subscription status in the billing portal, which re-issues a fresh key.
Verify DATABASE_URL points at a reachable Postgres with the pgvector extension available. Use only ASCII characters in the password (the URL is parsed as UTF-8), and make sure the database accepts connections from the server's host.
Another process is bound to :8080. Stop it, or override the bind address via env (for the binary) / remap the published port in your docker-compose.yml.
Migrations run automatically and are forward-only (IF NOT EXISTS). If startup fails mid-migration, check that the database user owns the schema and has permission to create tables and extensions.
The Docker image and binary support Linux, macOS, and ARM64. On Apple Silicon, ensure Docker pulls the matching architecture and that your Postgres image is also ARM-compatible.
Still stuck? Reach us through the contact form.
Free and local in two minutes. Shared across your whole team in ten. No cloud, no lock-in.