Getting started
Getting Started with Echo
A guide for new users — the Echo desktop app and the EchoMem connection for your AI tools.
What Echo is
Your AI assistants forget everything the moment a conversation ends. Every new session starts from zero, and you re-explain the same decisions, the same constraints, the same context — over and over.
Echo is the memory that sits underneath all of them. It quietly turns your AI conversations into durable, searchable memories, then hands the right ones back to whichever assistant you're using next. Ask Claude Code about a decision you made in Codex three weeks ago, and it can answer.
Echo has two halves, and you need both:
| What it is | What it does for you | |
|---|---|---|
| Echo Desktop | A Mac app | Your library. Browse, search, review, and share your memories. It's also the control panel — sign-in, security, and setup all live here. |
| EchoMem MCP | A connection Echo installs for you | The bridge that lets Codex, Claude Code, and Claude Desktop actually read and write your memories while you work. |
The good news: you don't install the second one yourself. The desktop app does it for you in one click.
Before you start
- A Mac running macOS 15 (Sequoia) or newer. Apple Silicon and Intel both work.
- At least one AI coding tool installed: Codex, Claude Code, or Claude Desktop. Without one of these there's nothing to connect Echo to.
- An email address. No password to invent — Echo signs you in with a code.
- You do not need Node.js, a terminal, or any developer setup. Echo ships everything it needs inside the app.
Cursor or Windsurf user? These work with EchoMem, but the desktop app can't set them up automatically yet — see Connecting other tools near the end.
Part 1 — Get set up
Download and launch Echo for the first time. It takes over the screen with a short setup flow. It's about five minutes, and each step remembers where you got to, so you can't lose your place.
1. Your email
Type your email address and click Send code. Use the same email as the Echo website if you already have an account there. (Creating a new account? Toggle New to Echo? Register first — the button then reads Continue.)
2. The code
Echo emails you a six-digit code. Type it into the six slots (pasting works, and so does macOS autofill) and click Verify & continue.
That's the whole sign-in. There's no password anywhere in Echo — every sign-in works this way. Your account stays signed in on this Mac until you explicitly sign out.
3. Your vault (optional)
New accounts can skip this. A vault is optional at sign-up — you can add one later from Account.
If you opt in, or you're signing into an account that already uses encryption, Echo asks for a passphrase.
This is worth understanding, because it's the heart of how Echo protects you:
- Your memory text is stored on Echo's servers as ciphertext — scrambled, unreadable.
- Your passphrase turns into a decryption key on your Mac, and only on your Mac. The passphrase and the key are never sent to Echo.
- Echo's servers genuinely cannot read your private memories. Neither can anyone at Echo.
New to Echo? Set a passphrase to create a vault, or skip and continue without encryption.
Already have an encrypted account? Type your passphrase and click Unlock. You'll watch it decrypt your library, then move on.
Once a vault is unlocked on this Mac, it stays unlocked until you deliberately lock it or sign out. You won't be asked again every morning.
If you skip the vault, setup continues as normal. If you do create or unlock one, keep the passphrase — Echo can't recover it, and it can't connect your AI tools while the vault is locked.
4. Choose a plan
Three options, and you can change later:
| Free | Pro | Power | |
|---|---|---|---|
| Price | $0 | $20/mo | $100/mo |
| Past chats you can import | 100 | 500 | 2,000 |
| New-chat tokens per week | 25K | 200K | 750K |
| Memory searches per week | 100 | 500 | 2,000 |
| Saved memories | Unlimited | Unlimited | Unlimited |
5. Bring your work with you
This is the step that makes Echo useful on day one instead of day thirty.
Echo scans your Mac for existing Codex and Claude sessions and offers to turn them into memories: "Echo found 340 sessions and can extract all of them."
Click Extract 340 sessions. If you have more sessions than your plan allows, Echo takes the newest ones by default — or click Choose sessions to pick.
The import keeps running in the background while you finish setup. You'll see a small pill in the corner tracking it ("84 ready · Importing"). You don't have to wait. Click Continue setup.
Sessions you touched in the last five minutes are skipped on purpose — they're probably still open.
6. Connect your agents
This is how Echo talks to the AI tools on your Mac — Codex, Claude Code, and Claude Desktop. Echo shows the ones it found. Click Connect all.
7. Try it
Echo picks a few real topics from your freshly imported memories and offers them as test questions — "What was important about the payment retry logic?"
Pick one, then click Ask Codex or Open in Claude. Echo launches a brand-new session in that tool with a prompt asking it to recall from EchoMem.
If the assistant comes back with a specific detail from your past work — a filename, a decision, a constraint — it's working. Click I'm all set.
8. Done
You're set. Echo is listening to your sessions now.
If your import is still running you'll see Echo is ready. Your remaining memories will keep importing. and an Open Echo button instead. Either way, setup is finished.
Part 2 — Getting around the app
Echo's sidebar splits into three groups.
Personal
Ask Echo — Ask questions of your own memories in plain language and get a written answer with numbered sources you can click open. The scope chip reads Personal only: nothing from your workspace enters these answers. Each question is searched independently — it's a research tool, not a chat that builds on itself.
My Memories — Your whole private library, newest first, grouped by day.
Things worth knowing here:
- The two kinds of search. Typing in the search box filters instantly through the memories already loaded on your Mac — fast, and it can match your decrypted text. Pressing Return runs Echo search: a meaning-based search across your entire library, including memories that haven't loaded yet. That second one is metered against your weekly allowance, which is why it waits for Return rather than firing on every keystroke.
- The timeline scrubber above the list lets you scrub back through time. Hollow marks are private, filled marks are shared, red marks are protected.
- Click any memory to open it in a side panel, where you can Share it with your workspace, protect it, or delete it.
- Click Select to work on many at once — share, protect, or delete in a batch.
Workspace
Everything here is off until you create or join a workspace. Use the selector at the top of the section (it reads No Workspace at first) → Create Workspace… or Join Workspace….
Ask Echo — The same question box, but scoped to your team. It searches workspace documents and the memories your teammates chose to share. Your private memories stay out of it.
Overview — The team's front page. An AI-written briefing of recent work, a pulse bar showing who's contributing, and a Your impact panel that tells you which of your shared memories teammates' assistants actually cited in their answers.
Memories — The full workspace library: uploaded documents, snapshots teammates shared, and your own private memories shown alongside so you can spot what's worth sharing. Admins can click Add Memory to upload a text or Markdown document.
Manage Members — The directory. Owners and admins can Invite Member (which generates a private, expiring code), change roles, or remove people.
Bottom of the sidebar
Connect MCP — Status and controls for your AI tool connections. See Part 3.
Settings — Three things: Theme (System / Light / Dark), Notch UI (on/off), and Software updates.
Account — Your email, your plan, your usage meters, and your vault. Also where you lock the vault or sign out.
The notch
Echo lives at the top of your screen too. Move your pointer to the notch area (or the small handle bar on displays without a notch), hold for a moment, and a panel drops down with three tabs:
- Sessions — your coding sessions from the last 24 hours. Click one to see what it contains, then Save memory to hand it to Echo, Share session to publish it to your team, or use a carry pill to start a new Claude or Codex session already loaded with that context.
- Group — the 50 most recent memories your teammates shared.
- My Memories — your 20 newest, each with a padlock or building icon showing whether it's private or shared.
A blue +N on the right side of the notch means new memories have arrived since you last looked.
Turn it off any time in Settings → Notch UI, or from the Echo icon in your menu bar.
Part 3 — Using Echo with your AI tools
Once connected, you talk to Echo through your assistant, in ordinary language. You never call anything directly.
The two habits that matter
1. Ask for recall when you'd otherwise re-explain.
"What did we decide about the retry logic?" "Check my memory — have I hit this Postgres error before?" "Before you start, recall what I've done on the billing service."
Your assistant searches your memories and answers from what it finds, citing the memories it used.
2. Save before you close.
"Save this conversation to Echo."
Echo pulls the durable knowledge out of the conversation — decisions, constraints, gotchas — and files it privately. Everything else is discarded.
EchoMem also tells your assistant when to search and save on its own. You don't have to ask every time. If it needs past context, or a conversation produced something worth keeping, it can recall or save without a prompt from you. Asking still works, and it's the surest way to make it happen.
What else you can ask for
| Say something like… | What happens |
|---|---|
| "What was I working on last Tuesday?" | Pulls memories from a date range |
| "Find anything tagged auth or oauth" | Exact keyword lookup |
| "Pick up where we left off on the migration" | Rebuilds a full handoff — decisions, carryover, open constraints — from a past session |
| "What does Priya know about the payments rollout?" | Searches memories teammates or friends chose to share |
| "Share this decision with the team" | Publishes a snapshot to your workspace — after asking you to confirm |
| "How clean is my context right now?" | Scores the current session: how much of the context window is genuinely useful vs. re-read clutter |
| "Give me a fresh start with the important stuff" | Captures a clean-start capsule — goal, files in play, current state — so you can restart without re-explaining |
| "Show me my AI usage" | A local audit of what your AI coding actually costs, computed on your Mac with nothing uploaded |
| "Delete that memory about the old API key" | Deletes one memory — after showing it to you and asking again |
Two things Echo will never do quietly
Nothing gets shared without an explicit yes. Publishing to your team is always a two-step: your assistant prepares a preview of what would be shared, shows it to you, and only publishes the items you approve. The same goes for sharing every memory in a conversation with a group — your assistant has to ask you a direct yes/no question first, and silence counts as no.
Nothing gets deleted on one click. Deleting a memory always shows you the memory first and hands back a confirmation token that expires in 15 minutes. Your original conversation record is preserved either way.
Part 4 — Working with a team
Creating or joining a workspace
Use the workspace selector at the top of the Workspace section:
- Create Workspace… — name it, describe it, choose how you appear to the team.
- Join Workspace… — paste the invite code a teammate sent you (it starts with
echo_grp_).
Joining a workspace publishes nothing. Your library stays private until you choose otherwise.
Sharing a memory
Sharing publishes a snapshot. Three things stay true every time:
- Your private original is unchanged.
- The memory does not become public — only your workspace sees it.
- You can unshare later, which removes the snapshot but keeps your memory.
To share: click a memory → Share. Or select several → Share with your workspace. Or use Share Memories on the Overview page, which scans your library, shows you exactly what would be published, and waits for Confirm & Publish.
Protecting sensitive memories
Some things should never drift into a team feed by accident — customer details, financials, personal information, security-sensitive notes.
Select a memory → Protect When Sharing…, then pick a label (Customer confidential, Financial or investor information, Personal information, Security-sensitive, or your own).
Protected memories are excluded from automatic sharing, and any manual attempt to publish one demands an extra confirmation — from you and from your assistant.
One caution the app repeats, and so will we: the label itself is stored as unencrypted metadata. Keep it generic. "Financial" is fine; "Q3 layoffs — Nordic team" is not.
Protection is not encryption. It doesn't change a memory's privacy, and it can't pull back copies already shared.
Reading the privacy indicators
| What you see | What it means |
|---|---|
| Private memory / padlock icon | Yours alone |
| Shared with 1 workspace / building icon | A snapshot is visible to that team |
| Public memory | Visible through public search |
| Red mark on the timeline | Protected — needs extra review before sharing |
| Workspace snapshot | Someone else's memory, published to the team |
| Workspace document | A file someone uploaded to the workspace |
Part 5 — Your vault and your privacy
If your account uses encryption:
- Memory text is stored on the server as ciphertext. The key is derived from your passphrase on your Mac.
- The bridge to your AI tools decrypts locally, so your assistant sees plain text and the server never holds your key.
- Echo cannot read your private memories. Recovery isn't possible if you lose the passphrase — the security is real, and so is that trade-off.
Locking: Account → Lock Vault removes the key from this Mac while keeping you signed in. Your assistants will report "🔒 EchoMem vault is locked" until you unlock again in the app.
Never type your passphrase into a chat. If an assistant asks for it, that's wrong — unlock in Echo Desktop instead. Echo's own messages say exactly this.
What stays local, always: context health scores, the usage report, and session scans read your local log files and upload nothing.
Troubleshooting
My assistant doesn't know about Echo. Start a new session. Configuration is read at startup. If a fresh session still doesn't see it, open Connect MCP and click Reconnect Echo.
"🔌 EchoMem isn't connected yet." Open Echo Desktop, sign in, and click Connect MCP → Connect Echo. Then retry in the same conversation — no restart needed.
"🔒 EchoMem vault is locked." Open Echo Desktop → Account → enter your passphrase → Unlock vault. Retry in the same conversation.
"Unlock your Echo vault before connecting your agents." Same fix — the vault has to be open before Echo can set up your tools.
"No supported host was detected." Echo found no Codex, Claude Code, or Claude Desktop on this Mac. Install one and reopen Connect MCP.
"Some agent configs can override Echo."
A project folder has its own echomem setting that beats the one Echo installed. Expand the Claude Code row for the exact paths, then click Remove override.
"Echo MCP did not complete its startup handshake in time." The runtime was slow to start — often security software. Click Retry connection.
"MCP update failed. Echo kept the previous working runtime." Nothing is broken. An automatic update failed its test and rolled itself back.
Sharing an old chat isn't working / imports stalled. Check Account → Plan usage. Bulk imports, weekly tokens, and weekly searches each have a limit.
Still stuck? Email [email protected].
Quick reference
Keyboard and menus
⌃⌘S |
Collapse / expand the sidebar |
⌘A |
Select all memories (while in selection mode) |
Return |
Send a question in Ask Echo; run a full Echo search from the search box |
Shift-Return |
New line instead of sending |
⌘, |
Settings |
| Menu bar icon | Open Echo, jump to a page, toggle the notch, check for updates |
| Echo → Check for Updates… | Update now (Echo also checks daily) |
Connecting other tools (Cursor and Windsurf)
EchoMem works with Cursor and Windsurf, but the desktop app can't configure them yet. From a terminal:
npx -y @echomem/mcp@latest setup --client cursor
# or
npx -y @echomem/mcp@latest setup --client windsurf
Then reload Cursor (⌘⇧P → Reload Window) or restart Windsurf.
Other terminal commands
You should never need these — the desktop app handles all of it. They exist for headless machines and support sessions.
echomem-mcp status # what's connected, what's logged in
echomem-mcp unlock # unlock the vault from a terminal
echomem-mcp lock # remove the local key, stay signed in
echomem-mcp logout # clear stored credentials
npx -y @echomem/mcp@latest update --all # repair every connection
Where Echo keeps things on your Mac
| Path | What it is |
|---|---|
~/.echomem/credentials.json |
Your account token and vault key, readable only by you |
~/Library/Application Support/Echo/MCP/ |
The bridge runtime Echo installed |
~/.codex/config.toml, ~/.claude.json, ~/Library/Application Support/Claude/claude_desktop_config.json |
Your AI tools' settings — Echo only ever touches its own echomem entry |
Echo Desktop for macOS · EchoMem MCP bridge @echomem/mcp 1.4.42 · Questions: [email protected]