What You’ll Need
Before installing the CEMS client, you need two things from your CEMS admin:Server URL
Example:
https://cems.example.comAPI Key
Starts with
cems_usr_...Don’t have a server yet? See Server Deployment to set up your own CEMS server.
Installation
Run the installer
The easiest way to install CEMS is with the one-line installer:The installer will:
- Install uv if missing
- Install CEMS CLI tools (
cems,cems-server,cems-observer) - Prompt for your API URL and key
- Let you choose which IDEs to configure
What if I want non-interactive install?
What if I want non-interactive install?
Set environment variables and pipe directly:
Choose your IDE
The installer will ask which IDE(s) to configure:You can select multiple IDEs or choose “all” to configure everything.
- Claude Code
- Cursor
- Codex
- Goose
Installs to
~/.claude/:- 6 hooks (session lifecycle)
- 6 skills (
/remember,/recall,/share,/forget,/context, memory guide) - 2 commands
- Settings merged into
settings.json
Your First Memory
Now let’s add your first memory and recall it.Try Automatic Memory Injection
CEMS automatically injects relevant memories when you chat with your AI assistant.Understanding Memory Scope
CEMS supports two memory scopes:Personal Memory
Use
/remember for personal preferences and private notes.Only you can see these memories.Shared Memory
Use
/share for team conventions and decisions.Everyone on your team can see these.Advanced Features
Categories and Tags
Categories and Tags
Project-Scoped Memories
Project-Scoped Memories
Memories automatically capture the git project context.When you create a memory in
myorg/webapp, it gets tagged with project:myorg/webapp.When you search from that same project, those memories get boosted.
When you search from a different project, they’re deprioritized.This prevents cross-project noise while preserving access to all memories.Observer Daemon
Observer Daemon
The observer daemon runs in the background and watches your session transcripts.It extracts high-level observations like:
- “User prefers to deploy via Docker Compose”
- “Project uses PostgreSQL for primary storage”
- “Team follows conventional commits style”
Maintenance Jobs
Maintenance Jobs
CEMS runs scheduled maintenance to keep your memory clean:
Trigger maintenance manually:
| Job | Schedule | Purpose |
|---|---|---|
| Consolidation | Nightly 3 AM | Merge duplicates |
| Observation Reflection | Nightly 3:30 AM | Condense observations |
| Summarization | Weekly Sun 4 AM | Compress old memories |
| Re-indexing | Monthly 1st 5 AM | Rebuild embeddings |
CLI Reference
Here are the most common CLI commands:What’s Installed?
The installer creates these files:- Claude Code
- Cursor
Updating CEMS
CEMS auto-updates when you start a new Claude Code session (if >24 hours old). To update manually:Auto-update can be disabled:
export CEMS_AUTO_UPDATE=0Troubleshooting
Memory not being recalled
Memory not being recalled
- Check credentials:
cat ~/.cems/credentials - Test connection:
cems health - Test search:
cems search "test" - Check hook output:
Skills not appearing
Skills not appearing
- Verify files exist:
- Claude Code:
ls ~/.claude/skills/cems/ - Cursor:
ls ~/.cursor/skills/cems-recall/
- Claude Code:
- Restart your IDE
- Type
/and look forremember,recall, etc.
Re-install hooks
Re-install hooks
Next Steps
Installation Details
Learn about all installation methods and configuration options
Deploy Server
Set up CEMS server for your team
API Reference
Explore the full API and CLI
Architecture
Deep dive into how CEMS works