audrey 0.20.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +170 -115
  3. package/dist/mcp-server/config.d.ts +25 -1
  4. package/dist/mcp-server/config.d.ts.map +1 -1
  5. package/dist/mcp-server/config.js +97 -12
  6. package/dist/mcp-server/config.js.map +1 -1
  7. package/dist/mcp-server/index.d.ts +83 -2
  8. package/dist/mcp-server/index.d.ts.map +1 -1
  9. package/dist/mcp-server/index.js +453 -36
  10. package/dist/mcp-server/index.js.map +1 -1
  11. package/dist/src/audrey.d.ts +4 -0
  12. package/dist/src/audrey.d.ts.map +1 -1
  13. package/dist/src/audrey.js +12 -0
  14. package/dist/src/audrey.js.map +1 -1
  15. package/dist/src/index.d.ts +4 -0
  16. package/dist/src/index.d.ts.map +1 -1
  17. package/dist/src/index.js +2 -0
  18. package/dist/src/index.js.map +1 -1
  19. package/dist/src/preflight.d.ts +51 -0
  20. package/dist/src/preflight.d.ts.map +1 -0
  21. package/dist/src/preflight.js +201 -0
  22. package/dist/src/preflight.js.map +1 -0
  23. package/dist/src/reflexes.d.ts +35 -0
  24. package/dist/src/reflexes.d.ts.map +1 -0
  25. package/dist/src/reflexes.js +87 -0
  26. package/dist/src/reflexes.js.map +1 -0
  27. package/dist/src/routes.d.ts.map +1 -1
  28. package/dist/src/routes.js +84 -7
  29. package/dist/src/routes.js.map +1 -1
  30. package/docs/assets/audrey-feature-grid.jpg +0 -0
  31. package/docs/assets/audrey-logo.svg +45 -0
  32. package/docs/assets/audrey-wordmark.png +0 -0
  33. package/docs/audrey-for-dummies.md +670 -0
  34. package/docs/future-of-llm-memory.md +452 -0
  35. package/docs/mcp-hosts.md +206 -0
  36. package/docs/ollama-local-agents.md +128 -0
  37. package/docs/production-readiness.md +11 -7
  38. package/examples/ollama-memory-agent.js +326 -0
  39. package/package.json +21 -2
@@ -0,0 +1,452 @@
1
+ # The Future of LLM Memory
2
+
3
+ Date: 2026-04-24
4
+ Audience: Audrey product strategy, technical roadmap, launch content
5
+
6
+ ## Thesis
7
+
8
+ The next serious AI platform will not win because it has the longest context window. It will win because it remembers the right things, forgets the wrong things, proves why a memory matters, and carries learned behavior across tools, hosts, teams, and time.
9
+
10
+ The market has already accepted memory as a product category. Claude has project-scoped memory and Managed Agents memory. ChatGPT has saved memories and chat-history reference. Gemini has saved info and past-chat reference. Letta, Mem0, Zep/Graphiti, MemOS, and MIRIX all point toward the same conclusion: stateless agents are not enough.
11
+
12
+ Audrey's opening is not "we also have memory." The opening is:
13
+
14
+ > Audrey is the local-first memory control plane for every agent you run.
15
+
16
+ That means Audrey should become the inspectable, portable, host-neutral layer that turns work into durable memory, and memory into better behavior.
17
+
18
+ ## What The Field Already Has
19
+
20
+ ### Platform Memory
21
+
22
+ Claude introduced memory for teams and projects, with optional controls, editable summaries, incognito chats, and project separation. Anthropic also announced built-in memory for Claude Managed Agents on April 23, 2026, with filesystem-backed memories, exports, API management, audit logs, rollback, scoped stores, and multi-agent sharing.
23
+
24
+ OpenAI's ChatGPT memory exposes saved memories, chat-history reference, temporary chats, deletion controls, memory prioritization, and memory history/restore controls for supported plans.
25
+
26
+ Google Gemini has saved info and can reference past chats in supported accounts and contexts.
27
+
28
+ The user-facing lesson: users now expect assistants to remember.
29
+
30
+ The product gap: these memories are mostly locked inside each platform.
31
+
32
+ ### Agent Framework Memory
33
+
34
+ Letta frames agents as stateful systems with memory blocks, archival memory, messages, tools, runs, and shared blocks. Mem0 focuses on scalable extraction and retrieval for production agents. Zep/Graphiti uses temporal knowledge graphs to track changing entity relationships. MemOS frames memory as an OS-managed resource with provenance and versioning. MIRIX uses multiple memory types and a multi-agent controller, including multimodal screen memory.
35
+
36
+ The infrastructure lesson: memory is becoming its own layer.
37
+
38
+ The product gap: no simple open standard lets a normal developer connect Codex, Claude Code, Claude Desktop, Cursor, Ollama, and internal agents to one controllable local memory runtime.
39
+
40
+ ### Benchmarks
41
+
42
+ LoCoMo tests very long, multimodal conversations across sessions, temporal event graphs, and causal consistency. LongMemEval tests information extraction, multi-session reasoning, temporal reasoning, knowledge updates, and abstention. Mem0's public benchmark work emphasizes token efficiency, latency, and cost, not just raw accuracy. New 2026 benchmarks like MemoryCD and Mem2ActBench push the field toward cross-domain lifelong personalization and memory-driven tool action.
43
+
44
+ The benchmark lesson: "it remembered a fact" is too shallow.
45
+
46
+ The product gap: operators need memory tests and regression gates they can run before trusting an agent with real workflows.
47
+
48
+ ## What Humans Have Not Really Done Yet
49
+
50
+ This section is not claiming nobody has written a paper or prototype. It means these ideas are not yet common, packaged, trusted, and easy enough for normal teams to use.
51
+
52
+ ### 1. A User-Owned Memory Passport
53
+
54
+ Current memory is platform-bound. ChatGPT remembers inside ChatGPT. Claude remembers inside Claude. A local Ollama agent remembers only if a developer builds memory for it.
55
+
56
+ Audrey can turn memory into a portable "passport":
57
+
58
+ - One user or team memory store that travels across Codex, Claude, Ollama, IDEs, and internal agents.
59
+ - Export/import as a first-class workflow, not an afterthought.
60
+ - Host-specific agent identities layered on top of shared memory.
61
+ - A visible "what this agent knows about me and this project" control panel.
62
+
63
+ Feature candidate:
64
+
65
+ - `npx audrey passport export`
66
+ - `npx audrey passport import`
67
+ - `npx audrey passport inspect --agent codex`
68
+ - `npx audrey passport diff --host claude-code --host codex`
69
+
70
+ Why it could be viral:
71
+
72
+ People are already frustrated that each AI starts over. "Bring your AI memory with you" is instantly understandable.
73
+
74
+ ### 2. Git For Memory
75
+
76
+ Claude Managed Agents now highlight file-backed memories, audit logs, rollback, and redaction. That is a strong signal. But the broader agent ecosystem still lacks a developer-native model for memory branching and review.
77
+
78
+ Audrey can make memory feel like git:
79
+
80
+ - Diff memories before and after an agent session.
81
+ - Commit a memory state before risky work.
82
+ - Branch memory per project or customer.
83
+ - Merge lessons from one agent into another.
84
+ - Roll back bad memories without destroying the whole store.
85
+ - Review memory writes like code review.
86
+
87
+ Feature candidate:
88
+
89
+ - `npx audrey memory diff`
90
+ - `npx audrey memory commit -m "learn Windows EPERM workaround"`
91
+ - `npx audrey memory branch customer-acme`
92
+ - `npx audrey memory rollback <checkpoint>`
93
+
94
+ Why it matters:
95
+
96
+ The more powerful memory gets, the more teams need change control.
97
+
98
+ ### 3. Memory As A Preflight Safety System
99
+
100
+ Most memory systems retrieve context after the user asks a question. The bigger opportunity is to use memory before the agent acts.
101
+
102
+ Audrey already has the seed of this with tool-trace memory. Repeated failures should become warnings before the agent retries the same risky operation.
103
+
104
+ Now shipping as the first concrete slice:
105
+
106
+ - MCP tool `memory_preflight`.
107
+ - MCP tool `memory_reflexes`.
108
+ - REST route `POST /v1/preflight`.
109
+ - REST route `POST /v1/reflexes`.
110
+ - SDK method `audrey.preflight(action, options)`.
111
+ - SDK method `audrey.reflexes(action, options)`.
112
+ - Response fields for decision, risk score, warnings, recommendations, evidence IDs, health, recent failures, optional event recording, and optional capsule context.
113
+ - Reflex reports that convert warnings into trigger-response rules an agent can automate before tool use.
114
+
115
+ Follow-on candidates:
116
+
117
+ - Before shell commands: "Have we broken this repo with this command before?"
118
+ - Before migrations: "Does memory say this environment lacks `wmic` or blocks temp writes?"
119
+ - Before package publishing: "What are the known release gates for this repo?"
120
+ - Before editing config: "Has this host config path been stale or write-protected?"
121
+
122
+ Why it could be viral:
123
+
124
+ A demo where Audrey stops an agent from repeating a known failure is more compelling than a chatbot remembering a favorite color.
125
+
126
+ ### 4. Action Memory, Not Just Answer Memory
127
+
128
+ Mem2ActBench explicitly calls out a gap: benchmarks often test passive fact retrieval, while real agents need to apply memory to select tools and ground parameters. This is the difference between "I remember your CRM is HubSpot" and "I will call the HubSpot tool with the right pipeline, property names, and customer scope because that is how your business works."
129
+
130
+ Audrey should feature action memory:
131
+
132
+ - Tool preferences.
133
+ - Environment quirks.
134
+ - Known-safe command patterns.
135
+ - API parameter conventions.
136
+ - Repeated manual fixes.
137
+ - Customer-specific operational workflows.
138
+
139
+ Feature candidate:
140
+
141
+ - `memory_procedure_suggest`
142
+ - `memory_preflight`
143
+ - `memory_reflexes`
144
+ - `memory_action_context`
145
+ - "Before using this tool, Audrey recommends..."
146
+
147
+ Why it matters:
148
+
149
+ Small businesses do not need AI that remembers trivia. They need AI that remembers how work actually gets done.
150
+
151
+ ### 5. Memory Regression Tests
152
+
153
+ Memory can silently get worse. A new embedding provider, schema migration, pruning rule, or prompt change can cause an agent to forget the exact thing that made it valuable.
154
+
155
+ Audrey should treat memory like tested infrastructure:
156
+
157
+ - Memory fixtures.
158
+ - Recall assertions.
159
+ - Capsule assertions.
160
+ - "Should not recall" tests for privacy and stale facts.
161
+ - Budget tests for token cost.
162
+ - Temporal tests for changed facts.
163
+
164
+ Feature candidate:
165
+
166
+ ```bash
167
+ npx audrey eval add "What is the deploy command?" --expect "npm run deploy"
168
+ npx audrey eval run
169
+ npx audrey eval ci --fail-under 0.90
170
+ ```
171
+
172
+ Why it matters:
173
+
174
+ This turns Audrey from a feature into infrastructure that teams can trust.
175
+
176
+ ### 6. Permission-Aware Shared Memory For Teams
177
+
178
+ Research on collaborative memory is moving toward multi-user, multi-agent memory with dynamic access control, provenance, private fragments, shared fragments, and time-varying permissions.
179
+
180
+ Audrey's local-first story should include this, especially for small businesses:
181
+
182
+ - Owner memory.
183
+ - Employee memory.
184
+ - Customer memory.
185
+ - Project memory.
186
+ - Agent memory.
187
+ - Read/write scopes by host and role.
188
+
189
+ Feature candidate:
190
+
191
+ - `audrey://scopes`
192
+ - `memory_share --scope team --redact private`
193
+ - `memory_policy test --agent codex --user owner`
194
+
195
+ Why it matters:
196
+
197
+ Shared memory without access control becomes a liability. Access control without usability becomes shelfware.
198
+
199
+ ### 7. A Preference Model That Learns From Weak Feedback
200
+
201
+ The 2026 VARS paper argues that agents need persistent user models and can learn retrieval preferences from weak scalar feedback, not just explicit "remember this" commands.
202
+
203
+ Audrey can support this without fine-tuning:
204
+
205
+ - Track when retrieved memories helped.
206
+ - Track when a user corrected the agent.
207
+ - Boost memories that reduce retries or shorten sessions.
208
+ - Decay memories that repeatedly fail to help.
209
+ - Separate long-term preferences from session-specific context.
210
+
211
+ Feature candidate:
212
+
213
+ - `memory_feedback`
214
+ - `memory_recall --learn-from-outcome`
215
+ - `memory_status --preference-drift`
216
+
217
+ Why it matters:
218
+
219
+ Good memory is not only what was said. It is what repeatedly proved useful.
220
+
221
+ ### 8. Temporal Truth, Not Flat Facts
222
+
223
+ Zep/Graphiti's temporal graph work is a strong signal: real memory needs to know when a fact was true, what replaced it, and what evidence supports it.
224
+
225
+ Audrey should make this obvious:
226
+
227
+ - "Customer uses Stripe" may be true until they migrate to Square.
228
+ - "Run tests with Vitest" may be true in CI but false on a locked-down Windows host.
229
+ - "The README says `/docs` exists" may be stale after routes changed.
230
+
231
+ Feature candidate:
232
+
233
+ - `valid_from`, `valid_until`, `supersedes`, `superseded_by`.
234
+ - Memory conflict timelines.
235
+ - Capsule sections for "current truth" and "stale but relevant history."
236
+
237
+ Why it matters:
238
+
239
+ The most dangerous memory is a true fact from the wrong time.
240
+
241
+ ### 9. Multimodal Operational Memory
242
+
243
+ MIRIX shows the importance of multimodal memory, including screenshots and visual context. Most practical agents still remember text far better than UI state, screenshots, invoices, dashboards, browser flows, and design assets.
244
+
245
+ Audrey could target operational multimodal memory:
246
+
247
+ - Website screenshots before and after optimization.
248
+ - CRM screenshots and field mappings.
249
+ - Error dialogs.
250
+ - Browser traces.
251
+ - Invoice images and extracted fields.
252
+ - Design screenshots tied to implementation notes.
253
+
254
+ Feature candidate:
255
+
256
+ - `memory_encode_asset`
257
+ - `memory_recall_assets`
258
+ - `audrey://recent-screens`
259
+ - Visual evidence inside Memory Capsules.
260
+
261
+ Why it matters:
262
+
263
+ Small-business work is visual and operational, not just chat text.
264
+
265
+ ### 10. Memory Capsules As A Standard Handoff Artifact
266
+
267
+ Audrey's Memory Capsule is the right product surface: a compact, ranked, evidence-backed briefing for a specific task.
268
+
269
+ The opportunity is to make capsules portable:
270
+
271
+ - A Codex capsule before coding.
272
+ - A Claude capsule before planning.
273
+ - An Ollama capsule before a local answer.
274
+ - A CRM capsule before customer follow-up.
275
+ - A support capsule before replying to a ticket.
276
+
277
+ Feature candidate:
278
+
279
+ - `.audrey/capsules/<task>.md`
280
+ - `npx audrey capsule "shipping release" --format md`
281
+ - Capsule links in PRs, tickets, and handoff docs.
282
+
283
+ Why it could be viral:
284
+
285
+ "Paste this Memory Capsule into any LLM and it works like it knows the project" is a simple hook.
286
+
287
+ ### 11. Memory Economics
288
+
289
+ Mem0 is pushing token efficiency as a production concern. Audrey should make memory economics visible:
290
+
291
+ - Tokens avoided.
292
+ - Repeated user explanations avoided.
293
+ - Failures prevented.
294
+ - Time saved by not rediscovering setup.
295
+ - Cost difference between full-context replay and selective recall.
296
+
297
+ Feature candidate:
298
+
299
+ - `npx audrey roi`
300
+ - `memory_status` with saved-token estimates.
301
+ - Tool-trace reports showing prevented repeat failures.
302
+
303
+ Why it matters:
304
+
305
+ Business buyers need a reason to pay. "Audrey saved 40 minutes and avoided three failed deploys this week" is a reason.
306
+
307
+ ### 12. Sleep That Produces New Working Knowledge
308
+
309
+ Many systems summarize. Humans consolidate. Audrey's "dream" concept is stronger if it becomes visibly useful:
310
+
311
+ - Detect repeated failures.
312
+ - Turn patterns into procedures.
313
+ - Find contradictions.
314
+ - Promote stable lessons into rules.
315
+ - Archive low-value memories.
316
+ - Produce a morning briefing.
317
+
318
+ Feature candidate:
319
+
320
+ - `npx audrey dream --report`
321
+ - `npx audrey promote --target codex-rules`
322
+ - "Last night Audrey learned..."
323
+
324
+ Why it matters:
325
+
326
+ The public understands "AI that dreams on your work and wakes up smarter." The engineering version must stay honest: it is consolidation, contradiction detection, procedural learning, and decay.
327
+
328
+ ## Audrey's Best Feature Bet
329
+
330
+ The single best over-the-top feature now shipping is:
331
+
332
+ > Memory Reflexes: before an agent acts, Audrey checks prior memories, tool traces, environment quirks, and project rules, then returns trigger-response guidance the host can automate.
333
+
334
+ Why this is the right bet:
335
+
336
+ - It uses Audrey's existing differentiators: tool traces, procedural memory, Memory Capsules, confidence, tags, and local host identity.
337
+ - It is easy to demonstrate.
338
+ - It works across Codex, Claude, and Ollama.
339
+ - It solves a real pain: agents repeat mistakes.
340
+ - It is more defensible than generic chat memory.
341
+
342
+ Demo script:
343
+
344
+ 1. Run a command that fails on this Windows host because of a known `spawn EPERM`, temp-dir, or config-path issue.
345
+ 2. Encode the failure through Audrey's tool trace path.
346
+ 3. Start a new agent session.
347
+ 4. Ask the agent to run the risky workflow again.
348
+ 5. Audrey returns a reflex: "Before using npm test, review the prior EPERM failure path."
349
+ 6. The agent avoids the repeated failure or switches to the known fallback validation path.
350
+
351
+ Tagline:
352
+
353
+ > Audrey gives AI agents memory before they act.
354
+
355
+ ## Launch-Ready Content Angles
356
+
357
+ ### Post 1: "Your AI Has Amnesia"
358
+
359
+ Hook:
360
+
361
+ Your AI can write code, call tools, browse docs, and deploy software. Then tomorrow it forgets the lesson it learned today.
362
+
363
+ Audrey angle:
364
+
365
+ Memory should be local, inspectable, portable, and testable.
366
+
367
+ ### Post 2: "Context Windows Are Not Memory"
368
+
369
+ Hook:
370
+
371
+ A million-token context window is a bigger backpack. It is not a brain.
372
+
373
+ Audrey angle:
374
+
375
+ Real memory needs write policy, retrieval policy, forgetting, contradiction handling, source lineage, and regression tests.
376
+
377
+ ### Post 3: "The Agent Black Box"
378
+
379
+ Hook:
380
+
381
+ When an AI agent makes a mistake, where does that mistake go?
382
+
383
+ Audrey angle:
384
+
385
+ Tool traces become procedural memory so agents avoid repeating preventable failures.
386
+
387
+ ### Post 4: "Bring Your Memory"
388
+
389
+ Hook:
390
+
391
+ Every AI platform wants to remember you. None of them want your memory to leave.
392
+
393
+ Audrey angle:
394
+
395
+ Audrey is the local-first memory passport across Codex, Claude, Ollama, and internal agents.
396
+
397
+ ### Post 5: "The Small Business Brain"
398
+
399
+ Hook:
400
+
401
+ Every small business has invisible operating knowledge: how quotes are written, which customers need special handling, what breaks on the website, and how the owner likes decisions made.
402
+
403
+ Audrey angle:
404
+
405
+ Audrey turns that invisible knowledge into a local memory layer for websites, CRMs, support agents, and back-office automation.
406
+
407
+ ## Near-Term Audrey Roadmap
408
+
409
+ ### 30 Days
410
+
411
+ - Add `npx audrey install --host codex|claude-code|claude-desktop|generic` with dry-run and backups.
412
+ - Add `npx audrey capsule "task" --format md|json`.
413
+ - Add richer Memory Preflight demos, policy modes, and tool classifiers.
414
+ - Add a Memory Capsule file exporter.
415
+ - Add docs and demos for "agent avoids repeated failure."
416
+
417
+ ### 60 Days
418
+
419
+ - Add memory diff/checkpoint/rollback commands.
420
+ - Add memory eval fixtures and CI gates.
421
+ - Add temporal validity fields and supersession UI/API.
422
+ - Add first LoCoMo and LongMemEval adapters.
423
+ - Add a small-business CRM demo with customer memory, workflow memory, and tool preflight.
424
+
425
+ ### 90 Days
426
+
427
+ - Add permission scopes for shared memory.
428
+ - Add feedback learning over recall outcomes.
429
+ - Add capsule sharing and signed export bundles.
430
+ - Add multimodal asset memory prototype.
431
+ - Add dashboard/reporting for ROI, failures prevented, and token budget.
432
+
433
+ ## References
434
+
435
+ - Anthropic, "Bringing memory to Claude" (2025): https://claude.com/blog/memory
436
+ - Anthropic, "Built-in memory for Claude Managed Agents" (2026): https://claude.com/blog/claude-managed-agents-memory
437
+ - OpenAI Help, "Memory FAQ": https://help.openai.com/en/articles/8590148-memory-faq/
438
+ - Google Gemini Help, "Save info and reference past chats": https://support.google.com/gemini/answer/15637730
439
+ - Letta Docs, "Introduction to Stateful Agents": https://docs.letta.com/guides/core-concepts/stateful-agents
440
+ - Mem0, "Memory Evaluation": https://docs.mem0.ai/core-concepts/memory-evaluation
441
+ - Chhikara et al., "Mem0: Building Production-Ready AI Agents with Scalable Long-Term Memory" (2025): https://arxiv.org/abs/2504.19413
442
+ - Rasmussen et al., "Zep: A Temporal Knowledge Graph Architecture for Agent Memory" (2025): https://arxiv.org/abs/2501.13956
443
+ - Li et al., "MemOS: A Memory OS for AI System" (2025): https://arxiv.org/abs/2507.03724
444
+ - Wang and Chen, "MIRIX: Multi-Agent Memory System for LLM-Based Agents" (2025): https://arxiv.org/abs/2507.07957
445
+ - Wu et al., "LongMemEval: Benchmarking Chat Assistants on Long-Term Interactive Memory" (2025): https://arxiv.org/abs/2410.10813
446
+ - Maharana et al., "Evaluating Very Long-Term Conversational Memory of LLM Agents" (LoCoMo, 2024): https://arxiv.org/abs/2402.17753
447
+ - Hao et al., "User Preference Modeling for Conversational LLM Agents" (2026): https://arxiv.org/abs/2603.20939
448
+ - Zhang et al., "MemoryCD" (2026): https://openreview.net/forum?id=Lpq4aEqvmg
449
+ - Rezazadeh et al., "Collaborative Memory" (2026 submission): https://openreview.net/forum?id=pJUQ5YA98Z
450
+ - "Mem2ActBench" (2026 submission): https://openreview.net/forum?id=hiRJ90xzJY
451
+ - Ollama OpenAI compatibility: https://docs.ollama.com/api/openai-compatibility
452
+ - Ollama tool calling: https://docs.ollama.com/capabilities/tool-calling
@@ -0,0 +1,206 @@
1
+ # Audrey MCP Host Guide
2
+
3
+ Audrey ships as a local stdio MCP server. Claude Code is only one host; the same server is meant to be used from Codex, Claude Desktop, Cursor, Windsurf, VS Code, JetBrains, and any MCP-compatible local agent shell.
4
+
5
+ For pinned configs that launch the built Audrey entrypoint directly:
6
+
7
+ ```bash
8
+ npx audrey doctor
9
+ npx audrey install --host codex --dry-run
10
+ npx audrey install --host generic --dry-run
11
+ npx audrey mcp-config codex
12
+ npx audrey mcp-config generic
13
+ npx audrey mcp-config vscode
14
+ ```
15
+
16
+ `doctor` verifies the runtime, local memory store, provider configuration, and config-generation path. `install --host <host> --dry-run` prints setup instructions without writing to a host config file. That is the safest first pass when Codex, Cursor, Windsurf, VS Code, or JetBrains manage their own config formats.
17
+
18
+ For portable configs that always resolve the latest published package, launch with `npx`:
19
+
20
+ ```json
21
+ {
22
+ "mcpServers": {
23
+ "audrey-memory": {
24
+ "command": "npx",
25
+ "args": ["-y", "audrey"],
26
+ "env": {
27
+ "AUDREY_AGENT": "host-name"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ ```
33
+
34
+ If a Windows host fails to locate `npx`, use:
35
+
36
+ ```json
37
+ {
38
+ "mcpServers": {
39
+ "audrey-memory": {
40
+ "command": "cmd",
41
+ "args": ["/c", "npx", "-y", "audrey"]
42
+ }
43
+ }
44
+ }
45
+ ```
46
+
47
+ ## Codex
48
+
49
+ Codex uses TOML under `C:\Users\<you>\.codex\config.toml` on Windows.
50
+
51
+ Generate a pinned block:
52
+
53
+ ```bash
54
+ npx audrey install --host codex --dry-run
55
+ npx audrey mcp-config codex
56
+ ```
57
+
58
+ Example shape:
59
+
60
+ ```toml
61
+ [mcp_servers.audrey-memory]
62
+ command = "C:\\Program Files\\nodejs\\node.exe"
63
+ args = ["C:\\Users\\you\\AppData\\Roaming\\npm\\node_modules\\audrey\\dist\\mcp-server\\index.js"]
64
+
65
+ [mcp_servers.audrey-memory.env]
66
+ AUDREY_AGENT = "codex"
67
+ AUDREY_DATA_DIR = "C:\\Users\\you\\.audrey\\data"
68
+ AUDREY_EMBEDDING_PROVIDER = "local"
69
+ AUDREY_DEVICE = "gpu"
70
+ ```
71
+
72
+ Use one shared `AUDREY_DATA_DIR` if Codex and other hosts should remember the same work. Use separate data directories if you need hard separation between clients or projects.
73
+
74
+ ## Claude Code
75
+
76
+ Claude Code can use Audrey through the built-in installer:
77
+
78
+ ```bash
79
+ npx audrey install --host claude-code --dry-run
80
+ npx audrey install
81
+ claude mcp list
82
+ ```
83
+
84
+ The dry-run prints the exact shape before any host changes. The real installer persists a Claude Code `AUDREY_AGENT=claude-code` identity while still using the same Audrey MCP runtime as every other host.
85
+
86
+ ## Claude Desktop
87
+
88
+ Claude Desktop uses `claude_desktop_config.json`.
89
+
90
+ ```json
91
+ {
92
+ "mcpServers": {
93
+ "audrey-memory": {
94
+ "type": "stdio",
95
+ "command": "npx",
96
+ "args": ["-y", "audrey"],
97
+ "env": {
98
+ "AUDREY_AGENT": "claude-desktop"
99
+ }
100
+ }
101
+ }
102
+ }
103
+ ```
104
+
105
+ ## Cursor
106
+
107
+ Official docs: <https://docs.cursor.com/en/context/mcp>
108
+
109
+ - Project-local config: `.cursor/mcp.json`
110
+ - Global config: `~/.cursor/mcp.json`
111
+ - Cursor supports variable interpolation in `command`, `args`, `env`, `url`, and `headers`
112
+
113
+ Recommended project-local example:
114
+
115
+ ```json
116
+ {
117
+ "mcpServers": {
118
+ "audrey-memory": {
119
+ "command": "npx",
120
+ "args": ["-y", "audrey"],
121
+ "env": {
122
+ "AUDREY_AGENT": "cursor",
123
+ "AUDREY_DATA_DIR": "${workspaceFolder}/.audrey-data"
124
+ }
125
+ }
126
+ }
127
+ }
128
+ ```
129
+
130
+ ## Windsurf
131
+
132
+ Official docs: <https://docs.windsurf.com/windsurf/cascade/mcp>
133
+
134
+ - Open the MCP Marketplace from the `MCPs` button in Cascade, or go to `Windsurf Settings` -> `Cascade` -> `MCP Servers`
135
+ - Windsurf also supports file-based config via `~/.codeium/windsurf/mcp_config.json`
136
+
137
+ Example:
138
+
139
+ ```json
140
+ {
141
+ "mcpServers": {
142
+ "audrey-memory": {
143
+ "command": "npx",
144
+ "args": ["-y", "audrey"],
145
+ "env": {
146
+ "AUDREY_AGENT": "windsurf"
147
+ }
148
+ }
149
+ }
150
+ }
151
+ ```
152
+
153
+ ## VS Code Copilot
154
+
155
+ Official docs: <https://code.visualstudio.com/docs/copilot/chat/mcp-servers>
156
+
157
+ - VS Code supports MCP servers in chat and local agents
158
+ - Add Audrey through the MCP server UI or a workspace file such as `.vscode/mcp.json`
159
+
160
+ Example:
161
+
162
+ ```json
163
+ {
164
+ "servers": {
165
+ "audrey-memory": {
166
+ "type": "stdio",
167
+ "command": "npx",
168
+ "args": ["-y", "audrey"],
169
+ "env": {
170
+ "AUDREY_AGENT": "vscode-copilot"
171
+ }
172
+ }
173
+ }
174
+ }
175
+ ```
176
+
177
+ ## JetBrains AI Assistant
178
+
179
+ Official docs: <https://www.jetbrains.com/help/ai-assistant/settings-reference-mcp.html>
180
+
181
+ - Go to `Settings` -> `Tools` -> `AI Assistant` -> `Model Context Protocol (MCP)`
182
+ - Add a server directly, or use JetBrains' `Import from Claude` action if you already have Audrey configured there
183
+
184
+ Example JSON:
185
+
186
+ ```json
187
+ {
188
+ "mcpServers": {
189
+ "audrey-memory": {
190
+ "command": "npx",
191
+ "args": ["-y", "audrey"],
192
+ "env": {
193
+ "AUDREY_AGENT": "jetbrains"
194
+ }
195
+ }
196
+ }
197
+ }
198
+ ```
199
+
200
+ ## Audrey Surfaces To Expect
201
+
202
+ Once connected, hosts can use:
203
+
204
+ - Tools: the 19 `memory_*` Audrey tools, including `memory_preflight` and `memory_reflexes`
205
+ - Resources: `audrey://status`, `audrey://recent`, `audrey://principles`
206
+ - Prompts: `audrey-session-briefing`, `audrey-memory-recall`, `audrey-memory-reflection`