CLS++ CLI (cls)
Persistent, cross-model memory from your terminal. Tell something to GPT-4, switch to Claude, and it already knows — memories persist across sessions, models, and devices.
Install
pip install clsplusplus
This installs the cls command (and cls-mcp, the MCP server).
Setup
cls init --key YOUR_API_KEY
Interactive setup that saves your configuration to ~/.clsplusplus. Get an API
key at https://www.clsplusplus.com/profile.html#keys. After init, every other
command works without passing keys.
Commands
| Command | What it does |
|---|---|
cls init |
Configure API keys and connection |
cls learn "<fact>" |
Store a memory |
cls ask "<question>" |
Query memories semantically |
cls memories |
List all stored memories |
cls who |
Show the auto-generated user profile |
cls context "<topic>" |
Get an LLM-ready context string for prompts |
cls forget "<fact>" |
Delete a memory (GDPR right-to-be-forgotten) |
cls absorb <file> |
Bulk-learn facts from a text file |
cls chat -m <model> "<msg>" |
Chat with any LLM; memories auto-captured + injected |
cls models |
List supported models and shortcuts |
cls status |
Show connection status, memory count, configured keys |
cls bench |
Run the CLS++-only reliability benchmarks |
Run cls <command> --help for detailed help on any command.
Quick start
cls learn "I prefer Python and dark mode"
cls ask "What are my preferences?"
Cross-model memory transfer
cls chat -m gpt-4o "My name is Raj and I love Python"
cls chat -m claude "What's my name and what do I love?"
# → Claude knows: "Your name is Raj and you love Python."
Run cls models for the full list of supported models (OpenAI, Anthropic,
Google) and their shortcut names.
Configuration
- Config file:
~/.clsplusplus - Environment variables:
CLS_API_KEY,CLS_BASE_URL,CLS_USER,OPENAI_API_KEY,ANTHROPIC_API_KEY,GOOGLE_API_KEY
Environment variables override the config file, and --key / --user / --url
flags override both.