audrey 0.21.0 → 1.0.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 (346) hide show
  1. package/CHANGELOG.md +238 -0
  2. package/LICENSE +21 -21
  3. package/README.md +281 -33
  4. package/SECURITY.md +30 -0
  5. package/benchmarks/adapter-kit.mjs +20 -0
  6. package/benchmarks/adapter-self-test.mjs +166 -0
  7. package/benchmarks/adapters/example-allow.mjs +28 -0
  8. package/benchmarks/adapters/mem0-platform.mjs +267 -0
  9. package/benchmarks/adapters/registry.json +51 -0
  10. package/benchmarks/adapters/zep-cloud.mjs +280 -0
  11. package/benchmarks/baselines.js +169 -0
  12. package/benchmarks/build-leaderboard.mjs +170 -0
  13. package/benchmarks/cases.js +537 -0
  14. package/benchmarks/create-conformance-card.mjs +139 -0
  15. package/benchmarks/create-submission-bundle.mjs +176 -0
  16. package/benchmarks/dry-run-external-adapters.mjs +165 -0
  17. package/benchmarks/guardbench.js +1035 -0
  18. package/benchmarks/output/adapter-self-test/guardbench-adapter-self-test.json +50 -0
  19. package/benchmarks/output/external/guardbench-external-dry-run.json +69 -0
  20. package/benchmarks/output/external/guardbench-external-evidence.json +56 -0
  21. package/benchmarks/output/guardbench-conformance-card.json +63 -0
  22. package/benchmarks/output/guardbench-manifest.json +414 -0
  23. package/benchmarks/output/guardbench-raw.json +1171 -0
  24. package/benchmarks/output/guardbench-summary.json +1981 -0
  25. package/benchmarks/output/leaderboard/guardbench-leaderboard.json +93 -0
  26. package/benchmarks/output/leaderboard/guardbench-leaderboard.md +7 -0
  27. package/benchmarks/output/submission-bundle/guardbench-conformance-card.json +63 -0
  28. package/benchmarks/output/submission-bundle/guardbench-manifest.json +414 -0
  29. package/benchmarks/output/submission-bundle/guardbench-raw.json +1171 -0
  30. package/benchmarks/output/submission-bundle/guardbench-summary.json +1981 -0
  31. package/benchmarks/output/submission-bundle/schemas/guardbench-adapter-registry.schema.json +69 -0
  32. package/benchmarks/output/submission-bundle/schemas/guardbench-adapter-self-test.schema.json +156 -0
  33. package/benchmarks/output/submission-bundle/schemas/guardbench-conformance-card.schema.json +184 -0
  34. package/benchmarks/output/submission-bundle/schemas/guardbench-external-dry-run.schema.json +74 -0
  35. package/benchmarks/output/submission-bundle/schemas/guardbench-external-evidence.schema.json +108 -0
  36. package/benchmarks/output/submission-bundle/schemas/guardbench-external-run.schema.json +160 -0
  37. package/benchmarks/output/submission-bundle/schemas/guardbench-leaderboard.schema.json +179 -0
  38. package/benchmarks/output/submission-bundle/schemas/guardbench-manifest.schema.json +213 -0
  39. package/benchmarks/output/submission-bundle/schemas/guardbench-publication-verification.schema.json +47 -0
  40. package/benchmarks/output/submission-bundle/schemas/guardbench-raw.schema.json +164 -0
  41. package/benchmarks/output/submission-bundle/schemas/guardbench-submission-manifest.schema.json +151 -0
  42. package/benchmarks/output/submission-bundle/schemas/guardbench-summary.schema.json +228 -0
  43. package/benchmarks/output/submission-bundle/submission-manifest.json +131 -0
  44. package/benchmarks/output/submission-bundle/validation-report.json +31 -0
  45. package/benchmarks/output/summary.json +2354 -0
  46. package/benchmarks/perf-snapshot.js +304 -0
  47. package/benchmarks/perf.bench.js +161 -0
  48. package/benchmarks/public-paths.mjs +78 -0
  49. package/benchmarks/reference-results.js +70 -0
  50. package/benchmarks/report.js +259 -0
  51. package/benchmarks/run-external-guardbench.mjs +281 -0
  52. package/benchmarks/run.js +682 -0
  53. package/benchmarks/schemas/guardbench-adapter-registry.schema.json +69 -0
  54. package/benchmarks/schemas/guardbench-adapter-self-test.schema.json +156 -0
  55. package/benchmarks/schemas/guardbench-conformance-card.schema.json +184 -0
  56. package/benchmarks/schemas/guardbench-external-dry-run.schema.json +74 -0
  57. package/benchmarks/schemas/guardbench-external-evidence.schema.json +108 -0
  58. package/benchmarks/schemas/guardbench-external-run.schema.json +160 -0
  59. package/benchmarks/schemas/guardbench-leaderboard.schema.json +179 -0
  60. package/benchmarks/schemas/guardbench-manifest.schema.json +213 -0
  61. package/benchmarks/schemas/guardbench-publication-verification.schema.json +47 -0
  62. package/benchmarks/schemas/guardbench-raw.schema.json +164 -0
  63. package/benchmarks/schemas/guardbench-submission-manifest.schema.json +151 -0
  64. package/benchmarks/schemas/guardbench-summary.schema.json +228 -0
  65. package/benchmarks/snapshots/perf-0.22.2.json +123 -0
  66. package/benchmarks/snapshots/perf-0.23.0.json +123 -0
  67. package/benchmarks/validate-adapter-module.mjs +104 -0
  68. package/benchmarks/validate-adapter-registry.mjs +134 -0
  69. package/benchmarks/validate-adapter-self-test.mjs +96 -0
  70. package/benchmarks/validate-guardbench-artifacts.mjs +343 -0
  71. package/benchmarks/verify-external-evidence.mjs +296 -0
  72. package/benchmarks/verify-publication-artifacts.mjs +286 -0
  73. package/benchmarks/verify-submission-bundle.mjs +167 -0
  74. package/dist/mcp-server/config.d.ts +5 -4
  75. package/dist/mcp-server/config.d.ts.map +1 -1
  76. package/dist/mcp-server/config.js +6 -8
  77. package/dist/mcp-server/config.js.map +1 -1
  78. package/dist/mcp-server/index.d.ts +281 -23
  79. package/dist/mcp-server/index.d.ts.map +1 -1
  80. package/dist/mcp-server/index.js +1186 -82
  81. package/dist/mcp-server/index.js.map +1 -1
  82. package/dist/src/action-key.d.ts +9 -0
  83. package/dist/src/action-key.d.ts.map +1 -0
  84. package/dist/src/action-key.js +49 -0
  85. package/dist/src/action-key.js.map +1 -0
  86. package/dist/src/adaptive.d.ts.map +1 -1
  87. package/dist/src/adaptive.js +8 -6
  88. package/dist/src/adaptive.js.map +1 -1
  89. package/dist/src/affect.d.ts +4 -1
  90. package/dist/src/affect.d.ts.map +1 -1
  91. package/dist/src/affect.js +14 -12
  92. package/dist/src/affect.js.map +1 -1
  93. package/dist/src/audrey.d.ts +57 -4
  94. package/dist/src/audrey.d.ts.map +1 -1
  95. package/dist/src/audrey.js +512 -65
  96. package/dist/src/audrey.js.map +1 -1
  97. package/dist/src/capsule.d.ts +2 -1
  98. package/dist/src/capsule.d.ts.map +1 -1
  99. package/dist/src/capsule.js +18 -8
  100. package/dist/src/capsule.js.map +1 -1
  101. package/dist/src/causal.d.ts.map +1 -1
  102. package/dist/src/causal.js +23 -5
  103. package/dist/src/causal.js.map +1 -1
  104. package/dist/src/confidence.d.ts.map +1 -1
  105. package/dist/src/confidence.js +3 -0
  106. package/dist/src/confidence.js.map +1 -1
  107. package/dist/src/consolidate.d.ts +1 -0
  108. package/dist/src/consolidate.d.ts.map +1 -1
  109. package/dist/src/consolidate.js +70 -54
  110. package/dist/src/consolidate.js.map +1 -1
  111. package/dist/src/controller.d.ts +94 -0
  112. package/dist/src/controller.d.ts.map +1 -0
  113. package/dist/src/controller.js +350 -0
  114. package/dist/src/controller.js.map +1 -0
  115. package/dist/src/db.d.ts.map +1 -1
  116. package/dist/src/db.js +181 -169
  117. package/dist/src/db.js.map +1 -1
  118. package/dist/src/decay.d.ts.map +1 -1
  119. package/dist/src/decay.js +62 -55
  120. package/dist/src/decay.js.map +1 -1
  121. package/dist/src/embedding.d.ts +2 -1
  122. package/dist/src/embedding.d.ts.map +1 -1
  123. package/dist/src/embedding.js +60 -22
  124. package/dist/src/embedding.js.map +1 -1
  125. package/dist/src/encode.d.ts +9 -2
  126. package/dist/src/encode.d.ts.map +1 -1
  127. package/dist/src/encode.js +25 -12
  128. package/dist/src/encode.js.map +1 -1
  129. package/dist/src/export.d.ts.map +1 -1
  130. package/dist/src/export.js +5 -3
  131. package/dist/src/export.js.map +1 -1
  132. package/dist/src/feedback.d.ts +35 -0
  133. package/dist/src/feedback.d.ts.map +1 -0
  134. package/dist/src/feedback.js +129 -0
  135. package/dist/src/feedback.js.map +1 -0
  136. package/dist/src/forget.d.ts.map +1 -1
  137. package/dist/src/forget.js +68 -60
  138. package/dist/src/forget.js.map +1 -1
  139. package/dist/src/fts.js +1 -1
  140. package/dist/src/fts.js.map +1 -1
  141. package/dist/src/hybrid-recall.d.ts +2 -1
  142. package/dist/src/hybrid-recall.d.ts.map +1 -1
  143. package/dist/src/hybrid-recall.js +41 -32
  144. package/dist/src/hybrid-recall.js.map +1 -1
  145. package/dist/src/impact.d.ts +47 -0
  146. package/dist/src/impact.d.ts.map +1 -0
  147. package/dist/src/impact.js +146 -0
  148. package/dist/src/impact.js.map +1 -0
  149. package/dist/src/import.d.ts +177 -1
  150. package/dist/src/import.d.ts.map +1 -1
  151. package/dist/src/import.js +235 -46
  152. package/dist/src/import.js.map +1 -1
  153. package/dist/src/index.d.ts +5 -1
  154. package/dist/src/index.d.ts.map +1 -1
  155. package/dist/src/index.js +3 -1
  156. package/dist/src/index.js.map +1 -1
  157. package/dist/src/interference.d.ts +5 -2
  158. package/dist/src/interference.d.ts.map +1 -1
  159. package/dist/src/interference.js +39 -32
  160. package/dist/src/interference.js.map +1 -1
  161. package/dist/src/introspect.js +18 -18
  162. package/dist/src/llm.d.ts.map +1 -1
  163. package/dist/src/llm.js +1 -0
  164. package/dist/src/llm.js.map +1 -1
  165. package/dist/src/migrate.d.ts.map +1 -1
  166. package/dist/src/migrate.js +21 -9
  167. package/dist/src/migrate.js.map +1 -1
  168. package/dist/src/preflight.d.ts +2 -1
  169. package/dist/src/preflight.d.ts.map +1 -1
  170. package/dist/src/preflight.js +66 -5
  171. package/dist/src/preflight.js.map +1 -1
  172. package/dist/src/profile.d.ts +23 -0
  173. package/dist/src/profile.d.ts.map +1 -0
  174. package/dist/src/profile.js +51 -0
  175. package/dist/src/profile.js.map +1 -0
  176. package/dist/src/promote.d.ts.map +1 -1
  177. package/dist/src/promote.js +8 -9
  178. package/dist/src/promote.js.map +1 -1
  179. package/dist/src/prompts.d.ts.map +1 -1
  180. package/dist/src/prompts.js +165 -136
  181. package/dist/src/prompts.js.map +1 -1
  182. package/dist/src/recall.d.ts +9 -6
  183. package/dist/src/recall.d.ts.map +1 -1
  184. package/dist/src/recall.js +204 -62
  185. package/dist/src/recall.js.map +1 -1
  186. package/dist/src/redact.d.ts +7 -1
  187. package/dist/src/redact.d.ts.map +1 -1
  188. package/dist/src/redact.js +94 -11
  189. package/dist/src/redact.js.map +1 -1
  190. package/dist/src/reflexes.d.ts +1 -0
  191. package/dist/src/reflexes.d.ts.map +1 -1
  192. package/dist/src/reflexes.js +3 -0
  193. package/dist/src/reflexes.js.map +1 -1
  194. package/dist/src/rollback.d.ts.map +1 -1
  195. package/dist/src/rollback.js +13 -8
  196. package/dist/src/rollback.js.map +1 -1
  197. package/dist/src/routes.d.ts +1 -0
  198. package/dist/src/routes.d.ts.map +1 -1
  199. package/dist/src/routes.js +251 -6
  200. package/dist/src/routes.js.map +1 -1
  201. package/dist/src/rules-compiler.d.ts.map +1 -1
  202. package/dist/src/rules-compiler.js +36 -6
  203. package/dist/src/rules-compiler.js.map +1 -1
  204. package/dist/src/server.d.ts +2 -1
  205. package/dist/src/server.d.ts.map +1 -1
  206. package/dist/src/server.js +42 -4
  207. package/dist/src/server.js.map +1 -1
  208. package/dist/src/tool-trace.d.ts.map +1 -1
  209. package/dist/src/tool-trace.js +42 -29
  210. package/dist/src/tool-trace.js.map +1 -1
  211. package/dist/src/types.d.ts +28 -1
  212. package/dist/src/types.d.ts.map +1 -1
  213. package/dist/src/ulid.d.ts.map +1 -1
  214. package/dist/src/ulid.js +52 -2
  215. package/dist/src/ulid.js.map +1 -1
  216. package/dist/src/utils.d.ts.map +1 -1
  217. package/dist/src/utils.js +8 -1
  218. package/dist/src/utils.js.map +1 -1
  219. package/dist/src/validate.d.ts +2 -0
  220. package/dist/src/validate.d.ts.map +1 -1
  221. package/dist/src/validate.js +77 -46
  222. package/dist/src/validate.js.map +1 -1
  223. package/docs/AUDREY_PAPER_OUTLINE.md +175 -0
  224. package/docs/MEMORY_BENCHMARKING.md +59 -0
  225. package/docs/PRODUCTION_BACKLOG.md +304 -0
  226. package/docs/paper/00-master.md +48 -0
  227. package/docs/paper/01-introduction.md +27 -0
  228. package/docs/paper/02-related-work.md +47 -0
  229. package/docs/paper/03-problem-definition.md +108 -0
  230. package/docs/paper/04-design.md +164 -0
  231. package/docs/paper/05-guardbench-spec.md +412 -0
  232. package/docs/paper/06-implementation.md +113 -0
  233. package/docs/paper/07-evaluation.md +168 -0
  234. package/docs/paper/08-discussion-limitations.md +61 -0
  235. package/docs/paper/09-conclusion.md +11 -0
  236. package/docs/paper/SUBMISSION_README.md +162 -0
  237. package/docs/paper/appendix-a-demo-transcript.md +114 -0
  238. package/docs/paper/arxiv-compile-report.schema.json +116 -0
  239. package/docs/paper/arxiv-source.schema.json +61 -0
  240. package/docs/paper/audrey-paper-v1.md +1106 -0
  241. package/docs/paper/browser-launch-plan.json +209 -0
  242. package/docs/paper/browser-launch-plan.schema.json +100 -0
  243. package/docs/paper/browser-launch-results.json +86 -0
  244. package/docs/paper/browser-launch-results.schema.json +66 -0
  245. package/docs/paper/claim-register.json +138 -0
  246. package/docs/paper/claim-register.schema.json +81 -0
  247. package/docs/paper/evidence-ledger.md +103 -0
  248. package/docs/paper/output/arxiv/README-arxiv.txt +8 -0
  249. package/docs/paper/output/arxiv/arxiv-manifest.json +41 -0
  250. package/docs/paper/output/arxiv/main.tex +949 -0
  251. package/docs/paper/output/arxiv/references.bib +222 -0
  252. package/docs/paper/output/arxiv-compile-report.json +24 -0
  253. package/docs/paper/output/submission-bundle/LICENSE +21 -0
  254. package/docs/paper/output/submission-bundle/README.md +533 -0
  255. package/docs/paper/output/submission-bundle/benchmarks/output/adapter-self-test/guardbench-adapter-self-test.json +50 -0
  256. package/docs/paper/output/submission-bundle/benchmarks/output/external/guardbench-external-dry-run.json +69 -0
  257. package/docs/paper/output/submission-bundle/benchmarks/output/external/guardbench-external-evidence.json +56 -0
  258. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-conformance-card.json +63 -0
  259. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-manifest.json +414 -0
  260. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-raw.json +1171 -0
  261. package/docs/paper/output/submission-bundle/benchmarks/output/guardbench-summary.json +1981 -0
  262. package/docs/paper/output/submission-bundle/benchmarks/output/leaderboard/guardbench-leaderboard.json +93 -0
  263. package/docs/paper/output/submission-bundle/benchmarks/output/leaderboard/guardbench-leaderboard.md +7 -0
  264. package/docs/paper/output/submission-bundle/benchmarks/output/submission-bundle/submission-manifest.json +131 -0
  265. package/docs/paper/output/submission-bundle/benchmarks/output/submission-bundle/validation-report.json +31 -0
  266. package/docs/paper/output/submission-bundle/benchmarks/output/summary.json +2354 -0
  267. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-adapter-registry.schema.json +69 -0
  268. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-adapter-self-test.schema.json +156 -0
  269. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-conformance-card.schema.json +184 -0
  270. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-dry-run.schema.json +74 -0
  271. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-evidence.schema.json +108 -0
  272. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-external-run.schema.json +160 -0
  273. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-leaderboard.schema.json +179 -0
  274. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-manifest.schema.json +213 -0
  275. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-publication-verification.schema.json +47 -0
  276. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-raw.schema.json +164 -0
  277. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-submission-manifest.schema.json +151 -0
  278. package/docs/paper/output/submission-bundle/benchmarks/schemas/guardbench-summary.schema.json +228 -0
  279. package/docs/paper/output/submission-bundle/docs/AUDREY_PAPER_OUTLINE.md +175 -0
  280. package/docs/paper/output/submission-bundle/docs/paper/00-master.md +48 -0
  281. package/docs/paper/output/submission-bundle/docs/paper/01-introduction.md +27 -0
  282. package/docs/paper/output/submission-bundle/docs/paper/02-related-work.md +47 -0
  283. package/docs/paper/output/submission-bundle/docs/paper/03-problem-definition.md +108 -0
  284. package/docs/paper/output/submission-bundle/docs/paper/04-design.md +164 -0
  285. package/docs/paper/output/submission-bundle/docs/paper/05-guardbench-spec.md +412 -0
  286. package/docs/paper/output/submission-bundle/docs/paper/06-implementation.md +113 -0
  287. package/docs/paper/output/submission-bundle/docs/paper/07-evaluation.md +168 -0
  288. package/docs/paper/output/submission-bundle/docs/paper/08-discussion-limitations.md +61 -0
  289. package/docs/paper/output/submission-bundle/docs/paper/09-conclusion.md +11 -0
  290. package/docs/paper/output/submission-bundle/docs/paper/SUBMISSION_README.md +162 -0
  291. package/docs/paper/output/submission-bundle/docs/paper/appendix-a-demo-transcript.md +114 -0
  292. package/docs/paper/output/submission-bundle/docs/paper/arxiv-compile-report.schema.json +116 -0
  293. package/docs/paper/output/submission-bundle/docs/paper/arxiv-source.schema.json +61 -0
  294. package/docs/paper/output/submission-bundle/docs/paper/audrey-paper-v1.md +1106 -0
  295. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-plan.json +209 -0
  296. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-plan.schema.json +100 -0
  297. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-results.json +86 -0
  298. package/docs/paper/output/submission-bundle/docs/paper/browser-launch-results.schema.json +66 -0
  299. package/docs/paper/output/submission-bundle/docs/paper/claim-register.json +138 -0
  300. package/docs/paper/output/submission-bundle/docs/paper/claim-register.schema.json +81 -0
  301. package/docs/paper/output/submission-bundle/docs/paper/evidence-ledger.md +103 -0
  302. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/README-arxiv.txt +8 -0
  303. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/arxiv-manifest.json +41 -0
  304. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/main.tex +949 -0
  305. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv/references.bib +222 -0
  306. package/docs/paper/output/submission-bundle/docs/paper/output/arxiv-compile-report.json +24 -0
  307. package/docs/paper/output/submission-bundle/docs/paper/paper-submission-bundle.schema.json +70 -0
  308. package/docs/paper/output/submission-bundle/docs/paper/publication-pack.json +81 -0
  309. package/docs/paper/output/submission-bundle/docs/paper/publication-pack.schema.json +60 -0
  310. package/docs/paper/output/submission-bundle/docs/paper/references.bib +222 -0
  311. package/docs/paper/output/submission-bundle/package.json +212 -0
  312. package/docs/paper/output/submission-bundle/paper-submission-manifest.json +379 -0
  313. package/docs/paper/paper-submission-bundle.schema.json +70 -0
  314. package/docs/paper/publication-pack.json +81 -0
  315. package/docs/paper/publication-pack.schema.json +60 -0
  316. package/docs/paper/references.bib +222 -0
  317. package/package.json +103 -26
  318. package/scripts/audit-release-completion.mjs +362 -0
  319. package/scripts/create-arxiv-source.mjs +362 -0
  320. package/scripts/create-paper-submission-bundle.mjs +210 -0
  321. package/scripts/finalize-release.mjs +526 -0
  322. package/scripts/prepare-release-cut.mjs +269 -0
  323. package/scripts/publish-release-bundle.mjs +209 -0
  324. package/scripts/publish-release-github-api.mjs +429 -0
  325. package/scripts/run-vitest.mjs +34 -0
  326. package/scripts/smoke-cli.js +72 -0
  327. package/scripts/sync-paper-artifacts.mjs +109 -0
  328. package/scripts/verify-arxiv-compile.mjs +440 -0
  329. package/scripts/verify-arxiv-source.mjs +194 -0
  330. package/scripts/verify-browser-launch-plan.mjs +237 -0
  331. package/scripts/verify-browser-launch-results.mjs +285 -0
  332. package/scripts/verify-paper-artifacts.mjs +338 -0
  333. package/scripts/verify-paper-claims.mjs +226 -0
  334. package/scripts/verify-paper-submission-bundle.mjs +207 -0
  335. package/scripts/verify-publication-pack.mjs +196 -0
  336. package/scripts/verify-python-package.py +201 -0
  337. package/scripts/verify-release-readiness.mjs +741 -0
  338. package/docs/assets/benchmarks/local-benchmark.svg +0 -45
  339. package/docs/assets/benchmarks/operations-benchmark.svg +0 -45
  340. package/docs/assets/benchmarks/published-memory-standards.svg +0 -50
  341. package/docs/audrey-for-dummies.md +0 -670
  342. package/docs/benchmarking.md +0 -151
  343. package/docs/future-of-llm-memory.md +0 -452
  344. package/docs/mcp-hosts.md +0 -206
  345. package/docs/ollama-local-agents.md +0 -128
  346. package/docs/production-readiness.md +0 -128
package/docs/mcp-hosts.md DELETED
@@ -1,206 +0,0 @@
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`
@@ -1,128 +0,0 @@
1
- # Audrey With Ollama Local Agents
2
-
3
- Ollama provides local model inference. Audrey provides long-term memory. Treat Audrey as the memory sidecar that your Ollama-backed agent calls through tools.
4
-
5
- This is intentionally host-neutral: the same Audrey data directory can be shared by Codex, Claude Code, Claude Desktop, and a local Ollama agent, or isolated per project.
6
-
7
- ## Start Audrey
8
-
9
- ```bash
10
- AUDREY_AGENT=ollama-local-agent AUDREY_EMBEDDING_PROVIDER=local npx audrey serve
11
- ```
12
-
13
- Health check:
14
-
15
- ```bash
16
- curl http://localhost:7437/health
17
- curl http://localhost:7437/v1/status
18
- ```
19
-
20
- Use `AUDREY_API_KEY` if the sidecar is reachable beyond your local process boundary:
21
-
22
- ```bash
23
- AUDREY_API_KEY=secret AUDREY_AGENT=ollama-local-agent npx audrey serve
24
- ```
25
-
26
- ## Memory Tools To Expose
27
-
28
- Expose these Audrey routes as function tools in your local agent loop:
29
-
30
- | Tool | Audrey route | Purpose |
31
- |---|---|---|
32
- | `memory_preflight` | `POST /v1/preflight` | Check known risks, rules, procedures, and prior failures before tool use |
33
- | `memory_reflexes` | `POST /v1/reflexes` | Convert preflight evidence into trigger-response rules the agent can automate |
34
- | `memory_capsule` | `POST /v1/capsule` | Build a compact, ranked context packet for the current task |
35
- | `memory_recall` | `POST /v1/recall` | Search durable memories |
36
- | `memory_encode` | `POST /v1/encode` | Store useful observations, decisions, procedures, and preferences |
37
- | `memory_status` | `GET /v1/status` | Check memory/index health |
38
-
39
- Minimum useful loop:
40
-
41
- 1. Before tool use, call `memory_reflexes` or `memory_preflight` for the proposed action.
42
- 2. If a reflex says `block`, stop and ask for repair or approval.
43
- 3. Before calling Ollama, ask Audrey for a capsule using the user task as the query.
44
- 4. Add the capsule to the model instructions or context.
45
- 5. Let the model call `memory_recall` for details when needed.
46
- 6. After the task, call `memory_encode` for durable facts, decisions, mistakes, procedures, and preferences.
47
- 7. Run `npx audrey dream` on a schedule to consolidate and decay memory.
48
-
49
- ## Native Ollama Tool Shape
50
-
51
- Ollama supports function tools on `/api/chat`. Your agent owns the loop that executes a tool call and sends the result back to the model.
52
-
53
- Audrey ships a complete example loop:
54
-
55
- ```bash
56
- OLLAMA_MODEL=qwen3 node examples/ollama-memory-agent.js "What should you remember about this project?"
57
- ```
58
-
59
- ```json
60
- {
61
- "type": "function",
62
- "function": {
63
- "name": "memory_recall",
64
- "description": "Recall Audrey memories relevant to a query.",
65
- "parameters": {
66
- "type": "object",
67
- "required": ["query"],
68
- "properties": {
69
- "query": {
70
- "type": "string",
71
- "description": "Search query for durable memory."
72
- },
73
- "limit": {
74
- "type": "number",
75
- "description": "Maximum results to return."
76
- }
77
- }
78
- }
79
- }
80
- }
81
- ```
82
-
83
- Tool executor:
84
-
85
- ```js
86
- export async function memoryRecall({ query, limit = 5 }) {
87
- const response = await fetch('http://localhost:7437/v1/recall', {
88
- method: 'POST',
89
- headers: { 'Content-Type': 'application/json' },
90
- body: JSON.stringify({ query, limit }),
91
- });
92
- if (!response.ok) {
93
- throw new Error(`Audrey recall failed: ${response.status}`);
94
- }
95
- return response.json();
96
- }
97
- ```
98
-
99
- ## OpenAI-Compatible Ollama Mode
100
-
101
- Ollama also exposes an OpenAI-compatible API at `http://localhost:11434/v1/`. If your local agent framework already knows how to call OpenAI-style tools, point the model client at Ollama and keep Audrey as the tool executor.
102
-
103
- The important separation is:
104
-
105
- - Ollama answers with local models.
106
- - Audrey remembers, recalls, reconciles, and consolidates.
107
- - The agent loop decides when a model tool call should hit Audrey.
108
-
109
- Official Ollama references:
110
-
111
- - Native tool calling: <https://docs.ollama.com/capabilities/tool-calling>
112
- - OpenAI-compatible API: <https://docs.ollama.com/openai>
113
-
114
- ## Data Layout
115
-
116
- For shared memory across hosts:
117
-
118
- ```bash
119
- AUDREY_DATA_DIR=$HOME/.audrey/data
120
- ```
121
-
122
- For project-local memory:
123
-
124
- ```bash
125
- AUDREY_DATA_DIR=.audrey-data
126
- ```
127
-
128
- Shared memory is better for personal continuity across Codex, Claude, and local agents. Project-local memory is better when clients, repositories, or experiments must not bleed into each other.
@@ -1,128 +0,0 @@
1
- # Audrey Production Readiness
2
-
3
- Audrey is ready to be the memory layer inside a production agent system, but it is not a complete regulated-platform package by itself. Treat it as stateful infrastructure: pin providers, isolate tenants, monitor health, and wrap it with the controls your environment requires.
4
-
5
- First contact should now go through `npx audrey doctor`, then `npx audrey install --host <host> --dry-run` for local MCP hosts, `npx audrey install` for Claude Code specifically, or `npx audrey serve` for the sidecar path. Run `npx audrey status --json --fail-on-unhealthy` before exposing Audrey to real traffic.
6
-
7
- ## Best Vertical Fit
8
-
9
- ### 1. Financial Services Operations
10
-
11
- Best fit:
12
-
13
- - Payments operations copilots
14
- - Fraud and dispute investigation agents
15
- - KYC/KYB review assistants
16
- - Internal support agents that need durable incident and policy memory
17
-
18
- Why Audrey fits:
19
-
20
- - Contradiction tracking helps surface conflicting customer, tool, and policy evidence.
21
- - Confidence scoring and source lineage make escalations more reviewable.
22
- - Local SQLite storage keeps memory close to the application boundary.
23
- - Dream-cycle consolidation turns repeated incidents into reusable operational principles.
24
-
25
- Guardrails:
26
-
27
- - Do not store PAN, CVV, raw bank credentials, or secrets in memory.
28
- - Isolate memory stores by environment, customer, and business unit.
29
- - Keep export and purge paths in your incident-response runbook.
30
- - Add encryption at rest and backup retention outside Audrey.
31
-
32
- ### 2. Healthcare Operations
33
-
34
- Best fit:
35
-
36
- - Care coordination assistants
37
- - Prior-authorization workflow agents
38
- - Intake, referral, and scheduling copilots
39
- - Internal knowledge assistants for clinical operations teams
40
-
41
- Why Audrey fits:
42
-
43
- - Longitudinal recall preserves operational context across multi-step handoffs.
44
- - Private memories support role-specific context without making it part of public recall.
45
- - Contradiction detection helps catch conflicting workflow instructions and stale operating assumptions.
46
- - Local embeddings allow offline-first or reduced-data-egress deployments.
47
-
48
- Guardrails:
49
-
50
- - Audrey is not a medical device and should not be treated as a clinical decision engine.
51
- - Use de-identified or minimum-necessary data unless the full deployment boundary is HIPAA-ready.
52
- - Enforce access controls and audit logging in the host application, not just in Audrey.
53
- - Separate patient-facing and staff-only memory scopes.
54
-
55
- ## Production Checklist
56
-
57
- 1. Pin `AUDREY_EMBEDDING_PROVIDER` and `AUDREY_LLM_PROVIDER` explicitly. Do not rely on key-based auto-detection in production.
58
- 2. Set a dedicated `AUDREY_DATA_DIR` per environment and per tenant boundary.
59
- 3. Add a startup check that runs `npx audrey doctor --json`.
60
- 4. Alert on `health.healthy=false` or `health.reembed_recommended=true`.
61
- 5. Schedule `npx audrey dream` during low-traffic windows so consolidation and decay stay current.
62
- 6. Backup the SQLite data directory before changing embedding dimensions or providers.
63
- 7. Treat re-embedding as a controlled maintenance action and validate with `npx audrey status`.
64
- 8. Use `npx audrey install --host <host> --dry-run` in deployment docs so operators can preview host config without accidental writes.
65
- 9. Keep API keys, bearer tokens, and raw credentials out of encoded memory content.
66
- 10. Decide whether `private` memories are allowed for your use case and document who can create them.
67
- 11. Add application-level encryption, access control, logging, and retention policies around Audrey.
68
- 12. On graceful shutdown paths, call `await brain.waitForIdle()` before `brain.close()` so tracked background work drains cleanly.
69
-
70
- ## Operations Commands
71
-
72
- ```bash
73
- # First-contact diagnostics
74
- npx audrey doctor
75
- npx audrey doctor --json
76
-
77
- # Human-readable health
78
- npx audrey status
79
-
80
- # Monitoring-friendly health
81
- npx audrey status --json
82
-
83
- # Fail the process if the index is unhealthy or unreadable
84
- npx audrey status --json --fail-on-unhealthy
85
-
86
- # Nightly memory maintenance
87
- npx audrey dream
88
-
89
- # Repair vector/index drift after provider or dimension changes
90
- npx audrey reembed
91
- ```
92
-
93
- ## Example Deployment Pattern
94
-
95
- Use Audrey as a local sidecar to the agent service:
96
-
97
- - One Audrey data directory per tenant or deployment shard
98
- - Health checks wired to `status --json`
99
- - Scheduled dream/reembed jobs
100
- - Backups handled by the host platform
101
- - Regulated-data filtering handled before `memory_encode`
102
-
103
- That keeps Audrey focused on memory integrity while the host system owns compliance, tenancy, and transport security.
104
-
105
- ## Docker Deployment
106
-
107
- Audrey now ships with a first-party container path for the REST API:
108
-
109
- ```bash
110
- docker compose up -d --build
111
- ```
112
-
113
- Operational notes:
114
-
115
- - The container persists SQLite data in the named volume `audrey-data`.
116
- - Set `AUDREY_API_KEY` before exposing the service beyond localhost.
117
- - For CI or very fast smoke checks, prefer `AUDREY_EMBEDDING_PROVIDER=mock` and `AUDREY_LLM_PROVIDER=mock`.
118
- - For stable local/offline container use, keep `AUDREY_EMBEDDING_PROVIDER=local` and `AUDREY_DEVICE=cpu`.
119
- - If you map the service to a different host port, keep the container port at `3487`.
120
-
121
- Suggested smoke check:
122
-
123
- ```bash
124
- AUDREY_API_KEY=secret docker compose up -d --build
125
- curl -H "Authorization: Bearer secret" http://localhost:3487/health
126
- curl -H "Authorization: Bearer secret" http://localhost:3487/status
127
- docker compose logs --tail=100 audrey
128
- ```