@echomem/mcp 1.4.43 → 1.4.44

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 (48) hide show
  1. package/README.md +25 -28
  2. package/dist/config-files.js +63 -0
  3. package/dist/context-analysis/claude-native-canonical.js +2 -2
  4. package/dist/context-analysis/vendored-canonical.js +2 -2
  5. package/dist/context-analysis/workspace-report.js +3 -3
  6. package/dist/hud/hooks.js +43 -31
  7. package/dist/index.js +15 -79
  8. package/dist/local-jsonl.js +87 -0
  9. package/dist/migrate.js +6 -4
  10. package/dist/onboarding-stats.js +16 -0
  11. package/dist/save-checkpoint-hook.js +1 -1
  12. package/dist/setup-page/client-core.js +18 -372
  13. package/dist/setup-page/client-extraction.js +33 -188
  14. package/dist/setup-page/client-lifecycle.js +31 -101
  15. package/dist/setup-page/client.js +0 -2
  16. package/dist/setup-page/styles-extraction.js +1 -31
  17. package/dist/setup-page/styles-foundation.js +0 -89
  18. package/dist/setup-page/styles-mvp.js +10 -155
  19. package/dist/setup-page/styles-website-alignment.js +0 -204
  20. package/dist/setup-page/styles.js +0 -4
  21. package/dist/setup-page.js +4 -4
  22. package/dist/setup-preview.js +4 -212
  23. package/dist/setup.js +314 -667
  24. package/dist/v1-contract.js +0 -8
  25. package/package.json +9 -7
  26. package/dist/city/README.md +0 -9
  27. package/dist/city/echo-ai-city-only.html +0 -2232
  28. package/dist/city/echo-extraction-plate.html +0 -330
  29. package/dist/city/echo-face-cutout.png +0 -0
  30. package/dist/city/personality_stickers/bossy.png +0 -0
  31. package/dist/city/personality_stickers/ghosty.png +0 -0
  32. package/dist/city/personality_stickers/loopy.png +0 -0
  33. package/dist/city/personality_stickers/lusty.png +0 -0
  34. package/dist/city/personality_stickers/maxxy.png +0 -0
  35. package/dist/city/personality_stickers/tabby.png +0 -0
  36. package/dist/city/vendor/OrbitControls.js +0 -1417
  37. package/dist/city/vendor/RoundedBoxGeometry.js +0 -155
  38. package/dist/city/vendor/echo_general-file-21.riv +0 -0
  39. package/dist/city/vendor/rive.js +0 -8139
  40. package/dist/city/vendor/rive.wasm +0 -0
  41. package/dist/city/vendor/three.module.min.js +0 -6
  42. package/dist/forensics.js +0 -1531
  43. package/dist/report.js +0 -721
  44. package/dist/setup-page/client-report-audit.js +0 -819
  45. package/dist/setup-page/client-report-city.js +0 -356
  46. package/dist/setup-page/client-report.js +0 -6
  47. package/dist/setup-page/styles-city-report.js +0 -880
  48. package/dist/setup-page/styles-context-audit.js +0 -470
@@ -25,7 +25,6 @@ export const canonicalToolNames = {
25
25
  completeGroupPublication: "complete_group_publication",
26
26
  publishToGroup: "publish_memory_to_group",
27
27
  publishBatchToGroup: "publish_memories_to_group",
28
- report: "echomem_usage_report",
29
28
  updateStatus: "echomem_update_status",
30
29
  contextHealth: "echo_context_health",
31
30
  recompose: "echo_recompose",
@@ -54,7 +53,6 @@ const READ_ONLY_TOOL_NAMES = new Set([
54
53
  canonicalToolNames.requestGroupSessionSharing,
55
54
  canonicalToolNames.getByContext,
56
55
  canonicalToolNames.checkpointByContext,
57
- canonicalToolNames.report,
58
56
  canonicalToolNames.updateStatus,
59
57
  canonicalToolNames.contextHealth,
60
58
  canonicalToolNames.recompose,
@@ -84,7 +82,6 @@ const ALWAYS_LOAD_TOOL_NAMES = new Set([
84
82
  canonicalToolNames.save,
85
83
  ]);
86
84
  const LOCAL_ONLY_TOOL_NAMES = new Set([
87
- canonicalToolNames.report,
88
85
  canonicalToolNames.contextHealth,
89
86
  canonicalToolNames.recompose,
90
87
  ]);
@@ -1023,11 +1020,6 @@ export function listToolSpecs(opts = {}) {
1023
1020
  required: ["contextId"],
1024
1021
  },
1025
1022
  },
1026
- {
1027
- name: canonicalToolNames.report,
1028
- description: "Show the user a one-screen audit of THEIR OWN AI coding usage — computed locally from their Codex/Claude Code logs ($0, nothing uploaded): how many tokens their agents spent, how much was re-reading context, reads vs memory recalls, and what changes with EchoMem. Call this when the user asks about their usage, token spend, cost, how much they're wasting, or wants a summary of their agent activity — and you may offer it once right after EchoMem is first connected. Returns formatted text to show the user verbatim. Needs no login.",
1029
- inputSchema: { type: "object", properties: {} },
1030
- },
1031
1023
  {
1032
1024
  name: canonicalToolNames.updateStatus,
1033
1025
  description: `Check whether this installed EchoMem MCP bridge is behind the latest version. Works without login, uploads no user transcript, and normal background checks are cached. ${MCP_DESKTOP_MANAGED ? "Echo Desktop owns updates for this runtime; direct the user back to the desktop app." : "If it reports an update, tell the user and offer to run the returned update command."} After updating, the user must start a new agent/MCP session.${updateSection}`,
package/package.json CHANGED
@@ -1,9 +1,12 @@
1
1
  {
2
2
  "name": "@echomem/mcp",
3
- "version": "1.4.43",
4
- "description": "EchoMem MCP bridge: cloud-first memory tools and the Agent Doctor workspace forensics report (cost ledger + 3D repo city)",
3
+ "version": "1.4.44",
4
+ "description": "EchoMem MCP bridge for cross-agent memory, local history import, and recall",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
7
+ "engines": {
8
+ "node": ">=18"
9
+ },
7
10
  "echoDesktop": {
8
11
  "minimumVersion": "1.0.0",
9
12
  "runtimeLayout": 1
@@ -19,22 +22,21 @@
19
22
  "README.md"
20
23
  ],
21
24
  "scripts": {
22
- "build": "tsc",
25
+ "build": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\" && tsc",
23
26
  "start": "node dist/index.js",
24
27
  "predev": "npm run build",
25
28
  "dev": "node dist/index.js",
26
29
  "smoke": "node smoke.mjs",
27
30
  "preview:extraction": "npm run build && node scripts/preview-extraction.mjs",
28
- "stress:long-history": "npm run build && node scripts/stress-long-history.mjs",
29
- "stress:long-claude-history": "npm run build && node scripts/stress-long-claude-history.mjs",
30
31
  "test:artifact": "npm run build && node test/package-artifact.test.mjs",
31
32
  "test:registry": "node test/registry-artifact.test.mjs",
32
33
  "test:registry-ui": "npm run build && node test/registry-ui.test.mjs",
33
34
  "test:ui": "npm run build && node test/setup-ui.test.mjs",
34
35
  "test:onboarding-resilience": "npm run build && node test/onboarding-resilience.test.mjs",
36
+ "test:config-safety": "npm run build && node test/config-safety.test.mjs",
35
37
  "test:billing-ui": "npm run build && node test/setup-ui.test.mjs billing",
36
- "test": "npm run build && node test/source-session.test.mjs && node test/source-session-hook.test.mjs && node test/local-data-paths.test.mjs && node test/crypto.test.mjs && node test/integration.test.mjs && node test/onboarding-resilience.test.mjs && node test/local-auth.test.mjs && node test/retrieval-only.test.mjs && node test/no-restart.test.mjs && node test/report.test.mjs && node test/forensics.test.mjs && node test/canonical-golden.test.mjs && node test/tools.test.mjs && node test/workspace-selector.test.mjs && node test/group-map.test.mjs && node test/update-check.test.mjs && node test/headless-runtime.test.mjs && node test/claude-code-config.test.mjs && node test/delete.test.mjs && node test/low-touch-tools.test.mjs && node test/migrate.test.mjs && node test/restart-recovery.test.mjs && node test/save-checkpoint-hook.test.mjs",
37
- "prepack": "npm run build && node scripts/bundle-city.mjs"
38
+ "test": "npm run build && node test/source-session.test.mjs && node test/source-session-hook.test.mjs && node test/local-data-paths.test.mjs && node test/crypto.test.mjs && node test/integration.test.mjs && node test/onboarding-resilience.test.mjs && node test/local-auth.test.mjs && node test/retrieval-only.test.mjs && node test/no-restart.test.mjs && node test/canonical-golden.test.mjs && node test/tools.test.mjs && node test/workspace-selector.test.mjs && node test/group-map.test.mjs && node test/update-check.test.mjs && node test/headless-runtime.test.mjs && node test/claude-code-config.test.mjs && node test/config-safety.test.mjs && node test/delete.test.mjs && node test/low-touch-tools.test.mjs && node test/migrate.test.mjs && node test/restart-recovery.test.mjs && node test/save-checkpoint-hook.test.mjs",
39
+ "prepack": "npm run build"
38
40
  },
39
41
  "dependencies": {
40
42
  "@modelcontextprotocol/sdk": "^1.0.1",
@@ -1,9 +0,0 @@
1
- # Runtime City Assets
2
-
3
- Only these files are part of setup runtime:
4
-
5
- - `echo-ai-city-only.html` - pre-auth Agent Doctor City.
6
- - `echo-extraction-plate.html` - post-auth extraction progress plate.
7
- - `vendor/`, `personality_stickers/`, and `echo-face-cutout.png` - assets loaded by those pages.
8
-
9
- Everything under `archive/` is historical reference. It is excluded from the published package and rejected by the localhost City asset server.