@pcircle/memesh 4.8.1 → 4.8.3

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 (149) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codex-plugin/mcp.json +7 -0
  4. package/.codex-plugin/plugin.json +6 -0
  5. package/AGENTS.md +13 -2
  6. package/README.de.md +11 -10
  7. package/README.md +23 -11
  8. package/README.zh-TW.md +23 -11
  9. package/dashboard/dist/index.html +9 -9
  10. package/dist/core/agent-message-inbox.d.ts +9 -0
  11. package/dist/core/agent-message-inbox.d.ts.map +1 -0
  12. package/dist/core/agent-message-inbox.js +31 -0
  13. package/dist/core/agent-message-inbox.js.map +1 -0
  14. package/dist/core/agent-messaging.d.ts +7 -0
  15. package/dist/core/agent-messaging.d.ts.map +1 -1
  16. package/dist/core/agent-messaging.js +28 -9
  17. package/dist/core/agent-messaging.js.map +1 -1
  18. package/dist/core/agent-router.d.ts +27 -20
  19. package/dist/core/agent-router.d.ts.map +1 -1
  20. package/dist/core/agent-router.js +114 -43
  21. package/dist/core/agent-router.js.map +1 -1
  22. package/dist/core/briefing.d.ts +1 -1
  23. package/dist/core/briefing.d.ts.map +1 -1
  24. package/dist/core/briefing.js +22 -6
  25. package/dist/core/briefing.js.map +1 -1
  26. package/dist/core/citation-rule.d.ts.map +1 -1
  27. package/dist/core/citation-rule.js +5 -2
  28. package/dist/core/citation-rule.js.map +1 -1
  29. package/dist/core/config.d.ts +4 -1
  30. package/dist/core/config.d.ts.map +1 -1
  31. package/dist/core/config.js +12 -3
  32. package/dist/core/config.js.map +1 -1
  33. package/dist/core/doctor.d.ts +8 -0
  34. package/dist/core/doctor.d.ts.map +1 -1
  35. package/dist/core/doctor.js +314 -12
  36. package/dist/core/doctor.js.map +1 -1
  37. package/dist/core/dreamer.d.ts +2 -0
  38. package/dist/core/dreamer.d.ts.map +1 -1
  39. package/dist/core/dreamer.js +7 -1
  40. package/dist/core/dreamer.js.map +1 -1
  41. package/dist/core/install-channel.d.ts +3 -0
  42. package/dist/core/install-channel.d.ts.map +1 -1
  43. package/dist/core/install-channel.js +79 -2
  44. package/dist/core/install-channel.js.map +1 -1
  45. package/dist/core/install-hooks.d.ts.map +1 -1
  46. package/dist/core/install-hooks.js +10 -6
  47. package/dist/core/install-hooks.js.map +1 -1
  48. package/dist/core/lesson-engine.d.ts +2 -1
  49. package/dist/core/lesson-engine.d.ts.map +1 -1
  50. package/dist/core/lesson-engine.js +5 -2
  51. package/dist/core/lesson-engine.js.map +1 -1
  52. package/dist/core/lesson-slug.d.ts +2 -0
  53. package/dist/core/lesson-slug.d.ts.map +1 -0
  54. package/dist/core/lesson-slug.js +14 -0
  55. package/dist/core/lesson-slug.js.map +1 -0
  56. package/dist/core/llm-client.d.ts.map +1 -1
  57. package/dist/core/llm-client.js +4 -1
  58. package/dist/core/llm-client.js.map +1 -1
  59. package/dist/core/llm-validator.d.ts +4 -1
  60. package/dist/core/llm-validator.d.ts.map +1 -1
  61. package/dist/core/llm-validator.js +62 -42
  62. package/dist/core/llm-validator.js.map +1 -1
  63. package/dist/core/ollama-host.d.ts +6 -0
  64. package/dist/core/ollama-host.d.ts.map +1 -0
  65. package/dist/core/ollama-host.js +30 -0
  66. package/dist/core/ollama-host.js.map +1 -0
  67. package/dist/core/operations.d.ts +9 -3
  68. package/dist/core/operations.d.ts.map +1 -1
  69. package/dist/core/operations.js +18 -14
  70. package/dist/core/operations.js.map +1 -1
  71. package/dist/core/paths.d.ts.map +1 -1
  72. package/dist/core/paths.js +2 -3
  73. package/dist/core/paths.js.map +1 -1
  74. package/dist/core/schema-export.d.ts.map +1 -1
  75. package/dist/core/schema-export.js +9 -7
  76. package/dist/core/schema-export.js.map +1 -1
  77. package/dist/core/transcript-extractor.d.ts.map +1 -1
  78. package/dist/core/transcript-extractor.js +2 -2
  79. package/dist/core/transcript-extractor.js.map +1 -1
  80. package/dist/core/work-topology.d.ts +3 -0
  81. package/dist/core/work-topology.d.ts.map +1 -1
  82. package/dist/core/work-topology.js +24 -2
  83. package/dist/core/work-topology.js.map +1 -1
  84. package/dist/db.d.ts.map +1 -1
  85. package/dist/db.js +12 -0
  86. package/dist/db.js.map +1 -1
  87. package/dist/host-adapters/claude-channel.d.ts +0 -58
  88. package/dist/host-adapters/claude-channel.d.ts.map +1 -1
  89. package/dist/host-adapters/claude-channel.js +0 -242
  90. package/dist/host-adapters/claude-channel.js.map +1 -1
  91. package/dist/host-adapters/codex-cli-queue.d.ts.map +1 -1
  92. package/dist/host-adapters/codex-cli-queue.js +15 -12
  93. package/dist/host-adapters/codex-cli-queue.js.map +1 -1
  94. package/dist/host-runtime/acp.d.ts +2 -0
  95. package/dist/host-runtime/acp.d.ts.map +1 -1
  96. package/dist/host-runtime/acp.js +4 -0
  97. package/dist/host-runtime/acp.js.map +1 -1
  98. package/dist/host-runtime/claude.d.ts +2 -0
  99. package/dist/host-runtime/claude.d.ts.map +1 -1
  100. package/dist/host-runtime/claude.js +6 -5
  101. package/dist/host-runtime/claude.js.map +1 -1
  102. package/dist/host-runtime/codex-session.d.ts +3 -1
  103. package/dist/host-runtime/codex-session.d.ts.map +1 -1
  104. package/dist/host-runtime/codex-session.js +7 -5
  105. package/dist/host-runtime/codex-session.js.map +1 -1
  106. package/dist/host-runtime/codex.d.ts +2 -0
  107. package/dist/host-runtime/codex.d.ts.map +1 -1
  108. package/dist/host-runtime/codex.js +4 -0
  109. package/dist/host-runtime/codex.js.map +1 -1
  110. package/dist/host-runtime/router-client.d.ts +2 -0
  111. package/dist/host-runtime/router-client.d.ts.map +1 -1
  112. package/dist/host-runtime/router-client.js.map +1 -1
  113. package/dist/skills-manifest.json +30 -15
  114. package/dist/storage/graph-repairs.d.ts +12 -0
  115. package/dist/storage/graph-repairs.d.ts.map +1 -0
  116. package/dist/storage/graph-repairs.js +242 -0
  117. package/dist/storage/graph-repairs.js.map +1 -0
  118. package/dist/transports/agent-messaging.d.ts +10 -1
  119. package/dist/transports/agent-messaging.d.ts.map +1 -1
  120. package/dist/transports/agent-messaging.js +92 -9
  121. package/dist/transports/agent-messaging.js.map +1 -1
  122. package/dist/transports/cli/cli.d.ts +4 -0
  123. package/dist/transports/cli/cli.d.ts.map +1 -1
  124. package/dist/transports/cli/cli.js +65 -26
  125. package/dist/transports/cli/cli.js.map +1 -1
  126. package/dist/transports/http/server.d.ts.map +1 -1
  127. package/dist/transports/http/server.js +117 -7
  128. package/dist/transports/http/server.js.map +1 -1
  129. package/dist/transports/mcp/handlers.d.ts +10 -6
  130. package/dist/transports/mcp/handlers.d.ts.map +1 -1
  131. package/dist/transports/mcp/handlers.js +21 -9
  132. package/dist/transports/mcp/handlers.js.map +1 -1
  133. package/dist/transports/schemas.d.ts +5 -0
  134. package/dist/transports/schemas.d.ts.map +1 -1
  135. package/dist/transports/schemas.js +8 -1
  136. package/dist/transports/schemas.js.map +1 -1
  137. package/docs/platforms/README.md +1 -1
  138. package/docs/platforms/agent-messaging.md +89 -36
  139. package/llms-install.md +29 -6
  140. package/package.json +17 -3
  141. package/scripts/hooks/_generated/agent-message-inbox.js +38 -0
  142. package/scripts/hooks/_generated/citation-rule.js +5 -2
  143. package/scripts/hooks/_generated/core-paths.js +2 -3
  144. package/scripts/hooks/_generated/work-topology.js +24 -2
  145. package/scripts/hooks/_shared.js +1 -1
  146. package/scripts/hooks/session-start.js +59 -18
  147. package/scripts/hooks/session-summary.js +40 -1
  148. package/scripts/upgrade-plugin.sh +531 -81
  149. package/skills/memesh/SKILL.md +36 -5
@@ -106,6 +106,7 @@ export declare const TaskStateSchema: z.ZodObject<{
106
106
  }, z.core.$strict>;
107
107
  export declare const BriefingSchema: z.ZodObject<{
108
108
  project: z.ZodOptional<z.ZodString>;
109
+ recipient: z.ZodOptional<z.ZodString>;
109
110
  }, z.core.$strict>;
110
111
  export declare const WhySchema: z.ZodObject<{
111
112
  file: z.ZodString;
@@ -169,6 +170,10 @@ export declare const MessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
169
170
  cursor: z.ZodOptional<z.ZodString>;
170
171
  wait_ms: z.ZodDefault<z.ZodNumber>;
171
172
  limit: z.ZodDefault<z.ZodNumber>;
173
+ }, z.core.$strict>, z.ZodObject<{
174
+ action: z.ZodLiteral<"discover">;
175
+ project: z.ZodString;
176
+ limit: z.ZodDefault<z.ZodNumber>;
172
177
  }, z.core.$strict>, z.ZodObject<{
173
178
  action: z.ZodLiteral<"fetch">;
174
179
  project: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/transports/schemas.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;kBAWhB,CAAC;AAEZ,eAAO,MAAM,YAAY;;;;;;;;;;;kBAOd,CAAC;AAiBZ,eAAO,MAAM,YAAY;;;kBAQd,CAAC;AAEZ,eAAO,MAAM,YAAY;;;;;;;;kBAMd,CAAC;AAOZ,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;iBAkB7B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUd,CAAC;AAEZ,eAAO,MAAM,WAAW;;;;;;;;;;kBAMb,CAAC;AAMZ,eAAO,MAAM,eAAe;;;;;;kBAWjB,CAAC;AAEZ,eAAO,MAAM,cAAc;;kBAEhB,CAAC;AAMZ,eAAO,MAAM,SAAS;;;;;kBAKX,CAAC;AAEZ,eAAO,MAAM,kBAAkB;;;;;;;;kBAGpB,CAAC;AAWZ,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;8BAgB5B,CAAC;AAkBH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BA2DxB,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/transports/schemas.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwCxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;kBAWhB,CAAC;AAEZ,eAAO,MAAM,YAAY;;;;;;;;;;;kBAOd,CAAC;AAiBZ,eAAO,MAAM,YAAY;;;kBAQd,CAAC;AAEZ,eAAO,MAAM,YAAY;;;;;;;;kBAMd,CAAC;AAOZ,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;iBAkB7B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUd,CAAC;AAEZ,eAAO,MAAM,WAAW;;;;;;;;;;kBAMb,CAAC;AAMZ,eAAO,MAAM,eAAe;;;;;;kBAWjB,CAAC;AAEZ,eAAO,MAAM,cAAc;;;kBAGhB,CAAC;AAMZ,eAAO,MAAM,SAAS;;;;;kBAKX,CAAC;AAEZ,eAAO,MAAM,kBAAkB;;;;;;;;kBAGpB,CAAC;AAWZ,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;8BAgB5B,CAAC;AAkBH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAkExB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { NAMESPACES } from '../core/types.js';
3
3
  import { TITLE_MAX_LENGTH } from '../core/title.js';
4
+ import { AGENT_MESSAGE_JSON_MAX_BYTES, AGENT_NATIVE_MESSAGE_MAX_BYTES } from '../core/agent-messaging.js';
4
5
  const sanitizeName = (s) => s.replace(/[\r\n\t]+/g, ' ').trim();
5
6
  const nameField = z.string().min(1).max(255).transform(sanitizeName).refine(s => s.length > 0, {
6
7
  message: 'Name must not be blank after sanitization',
@@ -76,6 +77,7 @@ export const TaskStateSchema = z.object({
76
77
  }).strict();
77
78
  export const BriefingSchema = z.object({
78
79
  project: z.string().min(1).max(200).optional(),
80
+ recipient: z.string().trim().min(1).max(200).optional(),
79
81
  }).strict();
80
82
  export const WhySchema = z.object({
81
83
  file: z.string().min(1).max(500),
@@ -124,7 +126,7 @@ export const MessageSchema = z.discriminatedUnion('action', [
124
126
  recipient: messageAgentId,
125
127
  target_kind: z.enum(['principal', 'session']).default('principal'),
126
128
  idempotency_key: messageIdempotencyKey,
127
- payload: z.json().refine((value) => new TextEncoder().encode(JSON.stringify(value)).byteLength <= 65_536, { message: 'payload must be at most 65536 UTF-8 bytes when encoded as JSON' }),
129
+ payload: z.json().refine((value) => new TextEncoder().encode(JSON.stringify(value)).byteLength <= AGENT_MESSAGE_JSON_MAX_BYTES, { message: `payload must be at most ${AGENT_MESSAGE_JSON_MAX_BYTES} UTF-8 bytes when encoded as JSON` }).describe(`Untrusted JSON value. The encoded payload is limited to ${AGENT_MESSAGE_JSON_MAX_BYTES} bytes (64 KiB); native delivery additionally requires the complete envelope to fit ${AGENT_NATIVE_MESSAGE_MAX_BYTES} bytes (16 KiB).`),
128
130
  content_type: z.enum(['text/plain', 'application/json']).default('text/plain'),
129
131
  privacy: z.enum(['private', 'team']).default('private'),
130
132
  correlation_id: nonBlankBounded(255).optional(),
@@ -138,6 +140,11 @@ export const MessageSchema = z.discriminatedUnion('action', [
138
140
  wait_ms: z.number().int().min(0).max(30_000).default(0),
139
141
  limit: z.number().int().min(1).max(100).default(20),
140
142
  }).strict(),
143
+ z.object({
144
+ action: z.literal('discover'),
145
+ project: messageProject,
146
+ limit: z.number().int().min(1).max(100).default(50),
147
+ }).strict(),
141
148
  z.object({
142
149
  action: z.literal('fetch'),
143
150
  project: messageProject,
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/transports/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/transports/schemas.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAE1G,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACxE,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;IAC7F,OAAO,EAAE,2CAA2C;CACrD,CAAC,CAAC;AAMH,MAAM,UAAU,GAAG,CAAC;KACjB,MAAM,EAAE;KAKR,GAAG,CAAC,gBAAgB,CAAC;KACrB,SAAS,CAAC,YAAY,CAAC;KACvB,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;KAC9C,QAAQ,EAAE,CAAC;AAYd,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAC1B,EAAE,OAAO,EAAE,qDAAqD,EAAE,CACnE,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,KAAK,EAAE,UAAU;IACjB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACrD,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9F,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;IACb,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACtC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAClD,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IACxC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC,MAAM,EAAE,CAAC;AAiBZ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,SAAS;IAMf,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAGnC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC,CAAC,MAAM,EAAE,CAAC;AAOZ,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QAMhC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC7D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;KACnG,CAAC,CAAC;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,kBAAkB;IAOxB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IACxC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;CACxD,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IAClC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC3C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC3C,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC5D,CAAC,CAAC,MAAM,EAAE,CAAC;AAMZ,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC9C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACrC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CAMtC,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CACxD,CAAC,CAAC,MAAM,EAAE,CAAC;AAMZ,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7G,QAAQ,CAAC,8CAA8C,CAAC;CAC5D,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAS3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IAC9D,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC5B,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC;QAC7B,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC;QAC3B,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC;QAC9B,eAAe,EAAE,eAAe,CAAC,IAAI,CAAC;QACtC,qBAAqB,EAAE,eAAe,CAAC,IAAI,CAAC;QAC5C,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;KACtD,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;KACzC,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC;AAMH,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AAC5C,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACvC,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AAC3C,MAAM,qBAAqB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACnD,MAAM,kBAAkB,GAAG;IACzB,OAAO,EAAE,cAAc;IACvB,SAAS,EAAE,cAAc;IACzB,UAAU,EAAE,SAAS;IACrB,eAAe,EAAE,qBAAqB;CACvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IAC1D,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACzB,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,cAAc;QACzB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QAClE,eAAe,EAAE,qBAAqB;QACtC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CACtB,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,IAAI,4BAA4B,EACrG,EAAE,OAAO,EAAE,2BAA2B,4BAA4B,mCAAmC,EAAE,CACxG,CAAC,QAAQ,CACR,2DAA2D,4BAA4B,uFAAuF,8BAA8B,kBAAkB,CAC/N;QACD,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC9E,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QACvD,cAAc,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAC/C,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE;KAC/B,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACzB,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,cAAc;QACzB,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE;QAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KACpD,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC7B,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KACpD,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAC1B,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,cAAc;QACzB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QAClE,UAAU,EAAE,SAAS;KACtB,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC3B,GAAG,kBAAkB;QACrB,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;KAC9C,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACxB,GAAG,kBAAkB;KACtB,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QAChC,GAAG,kBAAkB;QACrB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QACnF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;KAC/C,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC/B,GAAG,kBAAkB;QACrB,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;QAChF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;KAC/C,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC7B,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,cAAc;QACzB,UAAU,EAAE,SAAS;KACtB,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC"}
@@ -15,7 +15,7 @@ If your goal is cross-agent collaboration rather than memory alone, start with t
15
15
  | **Other MCP coding agents (Cursor, Cline…)** | MCP Server | Point the client at `memesh-mcp` | See root [README](../../README.md) |
16
16
  | **Local agent messaging across hosts** | MCP / HTTP / CLI; bridge where required | Explicit exact-recipient local messaging today; host push/resume remains adapter work | [agent-messaging.md](./agent-messaging.md) |
17
17
  | **Hermes Agent (NousResearch)** | Native `MemoryProvider` plugin | Drop `plugins/memory/memesh/` into a Hermes Agent checkout; `hermes memory setup memesh` | [hermes-agent.md](./hermes-agent.md) |
18
- | **OpenClaw** | Native memory plugin | `openclaw plugins install <package>` or drop into OpenClaw checkout; configure `plugins.slots.memory` | [openclaw.md](./openclaw.md) |
18
+ | **OpenClaw** | Native memory plugin (source; not live-tested or published) | `openclaw plugins install @pcircle/openclaw-memory-memesh` when published, or drop into OpenClaw checkout; configure `plugins.slots.memory` | [openclaw.md](./openclaw.md) |
19
19
  | **Custom apps / scripts** | HTTP API | Run `memesh serve` and call `/v1/*` | [universal.md](./universal.md) |
20
20
  | **ChatGPT / Custom GPT experiments** | HTTP API | Use a local connector/proxy that can reach localhost | [chatgpt.md](./chatgpt.md) |
21
21
  | **Gemini web / AI Studio experiments** | HTTP API | Use a local connector/proxy that can reach localhost (the Gemini **CLI** uses MCP above instead) | [gemini.md](./gemini.md) |
@@ -4,14 +4,41 @@ MeMesh provides two complementary collaboration surfaces on one machine:
4
4
 
5
5
  - shared durable memory, including the `team` namespace, for knowledge, decisions, and coarse handoffs;
6
6
  - the `message` tool for explicit durable messages to one named recipient on the same MeMesh instance.
7
-
8
- The messaging path is durable store-and-forward. For an explicitly configured,
9
- active local Codex CLI session, MeMesh queues a metadata-only native wakeup;
10
- the session then fetches the durable payload through the scoped `message`
11
- operation. SQLite remains the audit and recovery authority. `poll`/`watch` are
12
- compatibility and diagnostic APIs, not the normal delivery loop for that active
13
- Codex path. A queue admission or `host_accept` is not proof that an agent read
14
- the payload, acknowledged it, or accepted the work.
7
+ - `message discover` for a bounded, project-scoped view of currently live host registrations.
8
+
9
+ Use `memesh message discover --project <name> [--limit 1..100]` to read the
10
+ router directory. Results expose `session_id`, `principal_id`, `host_kind`,
11
+ `project`, declared `model` and `work_summary` (`null` when absent), `active`,
12
+ `generation`, and `lease_expires_at_ms`. Discovery performs no send, fetch, ACK, replay, or
13
+ receipt operation; router unavailability is an explicit error, never an empty
14
+ directory.
15
+
16
+ Briefing follows the same trust boundary. Generic `briefing` and automatic
17
+ SessionStart context have no recipient identity, so they never aggregate or
18
+ announce unread message activity. A caller that already knows its exact
19
+ logical recipient may pass both `project` and `recipient` to `briefing`; the
20
+ result reports only that recipient's unfetched deliveries and tells it to
21
+ `message poll` with the exact scope before fetching each returned
22
+ `message_id`. Fetching remains separate from intake and acknowledgement.
23
+
24
+ The messaging path keeps durable store-and-forward compatibility. For an
25
+ exact active local Codex or Claude session, MeMesh sends one bounded full
26
+ message through the authenticated native host channel and waits for native
27
+ acceptance; no marker-to-fetch step is required. An oversized full envelope
28
+ returns `native_message_too_large`; other unavailable or rejected exact sessions
29
+ return `recipient_unavailable` while scoped recovery data remains durable.
30
+ Principal targets retain asynchronous store-and-forward semantics.
31
+ The JSON-encoded durable payload is limited to 65,536 UTF-8 bytes (64 KiB).
32
+ Native delivery separately limits the complete envelope, including routing
33
+ metadata and payload, to 16,384 bytes (16 KiB). Fitting the durable limit does
34
+ not guarantee that a native envelope fits; exact-session messages should stay
35
+ comfortably below the native cap.
36
+ The size failure is permanent for that exact envelope and is reported as
37
+ `native_message_too_large`, so callers do not retry it as transient session
38
+ unavailability.
39
+ `poll`/`watch` are compatibility and diagnostic APIs. A queue admission or
40
+ `host_accept` is not proof that an agent read the payload, acknowledged it, or
41
+ accepted the work.
15
42
 
16
43
  ## One-time owner-private local-host setup
17
44
 
@@ -63,6 +90,9 @@ memesh agent setup codex --project my-project --principal codex-reviewer --works
63
90
  memesh agent setup claude --project my-project --principal claude-reviewer
64
91
  ```
65
92
 
93
+ Optional declarations can be persisted with `--model <id>` and
94
+ `--work-summary <text>` (each is capped at 200 characters); no defaults are guessed.
95
+
66
96
  ### Ordinary active Codex CLI session
67
97
 
68
98
  `codex-session` is the opt-in path for an ordinary local Codex session and
@@ -72,24 +102,35 @@ the setup command from the exact workspace that Codex will use; it stores the
72
102
  configured real workspace and stable principal in the owner-private
73
103
  `codex-session.json` config. Restart Codex in that workspace after setup.
74
104
 
105
+ This guide's supported documented path is ordinary Codex CLI `SessionStart`.
106
+ Codex Desktop or an unattached task is not user-visible native-delivery
107
+ evidence unless that exact live session registers with the router and the
108
+ result is directly verified. This is a scope boundary for evidence, not a
109
+ claim that Codex Desktop is universally unsupported.
110
+
75
111
  On `SessionStart` for `startup` or `resume`, the asynchronous companion checks
76
112
  the Codex thread identity, hook session identity, and configured workspace
77
113
  realpath before it connects to the router. A missing identity, a different
78
114
  workspace, compact lifecycle input, or a failed/disconnected connection does
79
115
  not register a host and does not wake anything.
80
116
 
81
- For a registered session, MeMesh invokes `codex queue` with a
82
- `memesh_message_available` marker containing only the project, recipient,
83
- target kind, message ID, and delivery ID. The message payload stays in the
84
- durable MeMesh inbox. Codex must then use the `message` tool to `fetch` that
85
- same project/recipient/target/message scope. The persisted `host_accept` means
86
- only that the local Codex queue accepted the marker; it is neither payload
87
- readback nor an `ack` or workflow disposition.
117
+ For a registered session, MeMesh invokes `codex queue` with one untrusted full
118
+ envelope capped at 16,384 bytes (16 KiB), including routing metadata and payload.
119
+ The separate durable JSON-encoded payload limit is 65,536 bytes (64 KiB). The exact-session sender returns
120
+ `native_delivery.status: "native_accepted"` only after the queue accepts it;
121
+ Codex does not need a second `message fetch` to inspect that native message.
122
+ The persisted `host_accept` is neither agent readback nor an `ack` or workflow
123
+ disposition. Codex exposes message text only through its `--message` process
124
+ argument, so same-user process inspection may observe it while the short-lived
125
+ queue command runs; do not put secrets in native messages.
88
126
 
89
127
  If the configured Codex session is stopped, missing, disconnected, or no
90
128
  longer matches its configured workspace, MeMesh does not start or replace it.
91
- The durable inbox and its receipt history remain available to scoped fetch,
92
- cursor recovery, `poll`, or `memesh message watch` for audit and diagnosis.
129
+ An exact-session send reports `recipient_unavailable`; durable scoped recovery
130
+ and receipt history remain available to fetch, cursor recovery, `poll`, or
131
+ `memesh message watch` for audit and diagnosis. Exact-session failures are not
132
+ automatically replayed through the native channel on a later registration; the
133
+ sender must retry deliberately if live delivery is still wanted.
93
134
 
94
135
  ### Separate: MeMesh-managed Codex app-server runner
95
136
 
@@ -105,6 +146,17 @@ process arguments.
105
146
 
106
147
  ### Claude channel runner
107
148
 
149
+ When `memesh doctor` is running from a Claude Code plugin cache, its default
150
+ `Claude Channel registration` row inspects only the user-scoped
151
+ `mcpServers.memesh-channel` entry in Claude's canonical user config and the
152
+ owner-private config file named by its `--config` argument. Missing
153
+ registration is a warning: durable MCP/inbox messaging can still work, while
154
+ live Channel notification remains inactive until the upstream research-preview
155
+ channel is explicitly opted into. A malformed, stale, or insecure target is
156
+ also a warning. `CONFIGURED` means only that the declaration and target are
157
+ coherent; it does not verify development-channel admission or that an agent
158
+ surfaced the notification.
159
+
108
160
  Run the printed `registration_command` once to add `memesh-channel` as a
109
161
  user-scoped stdio MCP server. Claude owns that process for the session:
110
162
 
@@ -124,7 +176,7 @@ claude --dangerously-load-development-channels server:memesh-channel
124
176
 
125
177
  Without that flag Claude may initialize the ordinary MCP transport while
126
178
  silently dropping channel events; a MeMesh `host_accept` then proves only that
127
- the notification was written to stdio, not that Claude admitted it. With the
179
+ the bounded message was written to stdio, not that Claude surfaced it. With the
128
180
  channel admitted, initialization creates and registers the exact MeMesh
129
181
  session automatically; EOF, MCP close, or normal signals unregister it.
130
182
 
@@ -145,7 +197,7 @@ for active Codex-session delivery.
145
197
  ## What Works Today
146
198
 
147
199
  - MCP, HTTP, and CLI use the same message lifecycle and SQLite system of record.
148
- - `send` creates one canonical message, recipient delivery, and payload-free notification event under an idempotency key.
200
+ - `send` creates one canonical message, recipient delivery, and payload-free notification event under an idempotency key. Exact-session success additionally requires native host acceptance; an oversized envelope returns `native_message_too_large`, while other unavailable or rejected sessions return `recipient_unavailable`, with recovery state preserved.
149
201
  - `poll` and `memesh message watch` return only events for the exact project and recipient. They are compatibility and diagnostic paths; the opaque cursor can be persisted and reused after a timeout, dropped hint, duplicate delivery, or process restart.
150
202
  - `fetch` returns the payload only to the named recipient and matching `target_kind` in the named project. Exact-session messages require `target_kind=session`; polling and fetching do not acknowledge the message.
151
203
  - `intake`, `ack`, `disposition`, and `activation` are explicit, separate, idempotent receipt facts. Inbox/MCP ACK is valid without a host-native acceptance; host-native ACK remains bound to its `host_accept`. `receipts` returns one ordered projection and identifies each underlying fact source. For example, `manual_resume_required` does not imply ACK, acceptance, rejection, cancellation, or completion.
@@ -157,11 +209,12 @@ A **principal** is the stable logical recipient. A **session** is one live host
157
209
 
158
210
  Persistence, dispatch attempt, host acceptance, intake, acknowledgement,
159
211
  workflow disposition, retention, and presence are independent state axes. An
160
- active configured Codex session receives a host-native metadata marker without
161
- polling. A stopped, missing, busy beyond its queue limit, disconnected, or
162
- unsupported session is not awakened, resumed, or replaced; durable state
163
- remains available for audit and recovery, subject to exact-session and
164
- activation-checkpoint rules.
212
+ active configured exact session receives a bounded full message without
213
+ polling or an inbox fetch. An oversized full envelope returns
214
+ `native_message_too_large`. A stopped, missing, busy beyond its queue limit,
215
+ disconnected, or unsupported session returns `recipient_unavailable` and is
216
+ not awakened, resumed, or replaced; durable state remains available for audit
217
+ and recovery, subject to exact-session and activation-checkpoint rules.
165
218
 
166
219
  ## Bounded storage and audit retention
167
220
 
@@ -206,9 +259,9 @@ quota or automatic retention policy.
206
259
  This guide describes only one local MeMesh instance: its SQLite durable event
207
260
  store and same-machine host-native input. Remote and cross-machine transport is
208
261
  the responsibility of MeMesh Cloud and requires its own verified relay; Cloud
209
- state is not evidence that this local host received a marker. A native marker,
210
- persistence, or fetch does not promise exactly-once cognition, a reply, or a
211
- stopped-session wake-up.
262
+ state is not evidence that this local host accepted a native message. Native
263
+ acceptance, persistence, or fetch does not promise exactly-once cognition, a
264
+ reply, or a stopped-session wake-up.
212
265
 
213
266
  ## What This Is Not Yet
214
267
 
@@ -223,7 +276,7 @@ stopped-session wake-up.
223
276
 
224
277
  | Participant | Current path | Status today | Notes |
225
278
  |---|---|---|---|
226
- | Ordinary Codex CLI | `codex-session` owner-private opt-in | metadata-only native wakeup while active | Exact workspace, principal, and SessionStart identity must match; stopped or disconnected sessions are not awakened |
279
+ | Ordinary Codex CLI | `codex-session` owner-private opt-in | bounded full-message native delivery while active | Exact workspace, principal, and SessionStart identity must match; oversized envelopes return `native_message_too_large`, while stopped or disconnected sessions return `recipient_unavailable` |
227
280
  | MeMesh-managed Codex app-server | `memesh-host-codex` | separate managed path | It creates its own Codex thread; it does not attach to an ordinary session |
228
281
  | Claude channel | `memesh-host-claude` | separate channel path | Requires the documented Channel opt-in; no stopped-session resume |
229
282
  | Other local MCP clients | MCP, HTTP, or CLI message operations | durable messaging only | Use `poll`/`watch` and scoped fetch where their own host loop supports it; this guide makes no native-wakeup claim |
@@ -231,19 +284,19 @@ stopped-session wake-up.
231
284
  ## Lifecycle
232
285
 
233
286
  1. A sender calls `message` with `action: "send"`, a stable sender, one recipient, a project, an idempotency key, and a payload.
234
- 2. For an eligible ordinary Codex session, the router queues only a
235
- privacy-minimized `memesh_message_available` marker. An explicit
236
- `poll`/`watch` client may instead read privacy-minimized events for
237
- compatibility or diagnosis.
238
- 3. Codex calls `fetch` with the marker's project, recipient, target kind, and
239
- message ID to read the durable payload. The marker and queue admission do
240
- not acknowledge the message.
287
+ 2. For an eligible exact Codex or Claude session, the router sends one bounded
288
+ untrusted full envelope and waits for native host acceptance. An explicit
289
+ `poll`/`watch` client may still read privacy-minimized events for recovery,
290
+ compatibility, or diagnosis.
291
+ 3. Native acceptance returns `native_delivery.status: "native_accepted"`; an
292
+ absent or rejected exact session returns `recipient_unavailable`. Neither
293
+ outcome records an agent acknowledgement or workflow disposition.
241
294
  4. The receiver records only the facts that actually happened:
242
295
  - `intake`: payload fetched or durably ingested;
243
296
  - `ack`: explicit recipient acknowledgement;
244
297
  - `disposition`: accepted, rejected, completed, cancelled, or deferred;
245
298
  - `activation`: woken, manual resume required, unsupported, or failed.
246
- 5. After router or host restart, registration drains only eligible durable deliveries. A manual cursor replay may repeat an event, so application intake still uses its own idempotency key.
299
+ 5. After router or host restart, registration drains only eligible durable principal deliveries. Failed exact-session native delivery requires an explicit retry. A manual cursor replay may repeat an event, so application intake still uses its own idempotency key.
247
300
 
248
301
  `correlation_id` and `reply_to` can connect messages, but they do not change delivery or routing.
249
302
 
package/llms-install.md CHANGED
@@ -129,14 +129,15 @@ memesh agent setup codex-session --project my-project --principal codex-recipien
129
129
  This stores the configured workspace realpath and principal in
130
130
  `~/.memesh/hosts/codex-session.json`. On `SessionStart` (`startup` or
131
131
  `resume`), an asynchronous companion registers only when its Codex thread ID,
132
- hook session ID, and workspace realpath match that config. It receives no
133
- message payload. Instead, an active registered session receives a
134
- metadata-only `memesh_message_available` queue marker with routing identifiers,
135
- then uses the scoped `message` `fetch` operation to read the durable payload.
132
+ hook session ID, and workspace realpath match that config. The authenticated
133
+ router sends the active exact session one bounded full message through native
134
+ `codex queue`; no second `message fetch` is required for that live delivery.
136
135
 
137
- `host_accept` records only that the local Codex queue accepted that marker. It
136
+ `host_accept` records only that the local Codex queue accepted that message. It
138
137
  does not prove an agent read the payload, acknowledged it, or accepted the
139
- work. If the session is stopped, missing, disconnected, or in another
138
+ work. Codex exposes message text through its `--message` process argument, so
139
+ same-user process inspection may observe it while the queue command runs; do
140
+ not send secrets through the native path. If the session is stopped, missing, disconnected, or in another
140
141
  workspace, MeMesh neither starts nor replaces it; the durable inbox remains
141
142
  available to scoped fetch, cursor recovery, `poll`, and `memesh message watch`
142
143
  for audit and diagnosis.
@@ -207,6 +208,28 @@ codex mcp list
207
208
 
208
209
  Expected: `memesh` is listed as enabled.
209
210
 
211
+ ### Optional: Codex plugin marketplace
212
+
213
+ Current Codex CLI versions can install the repository's plugin marketplace
214
+ directly. For a fresh install:
215
+
216
+ ```
217
+ codex plugin marketplace add PCIRCLE-AI/memesh
218
+ codex plugin add memesh@pcircle-memesh
219
+ ```
220
+
221
+ If the configured marketplace snapshot is stale, refresh it and reinstall the
222
+ plugin:
223
+
224
+ ```
225
+ codex plugin marketplace upgrade pcircle-memesh
226
+ codex plugin remove memesh
227
+ codex plugin add memesh@pcircle-memesh
228
+ ```
229
+
230
+ These commands are separate from the MCP registration above; keep the MCP
231
+ path when a host needs `memesh-mcp` directly.
232
+
210
233
  | Failure | Remedy |
211
234
  |---|---|
212
235
  | `command not found: codex` | Codex CLI itself is not installed — out of scope here; install it first, then re-run the add. |
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pcircle/memesh",
3
- "version": "4.8.1",
4
- "description": "MeMesh agentic memory for coding agents. Captured from the agent's real work via hooks, recalled when it acts. One SQLite file, zero cloud required.",
3
+ "version": "4.8.3",
4
+ "description": "MeMesh \u2014 agentic memory for coding agents. Captured from the agent's real work via hooks, recalled when it acts. One SQLite file, zero cloud required.",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
7
7
  "bin": {
@@ -24,6 +24,7 @@
24
24
  "skills/",
25
25
  "docs/platforms/agent-messaging.md",
26
26
  ".claude-plugin/",
27
+ ".codex-plugin/",
27
28
  "README.md",
28
29
  "LICENSE",
29
30
  "llms-install.md",
@@ -34,10 +35,23 @@
34
35
  "build:dashboard": "node scripts/build-dashboard.mjs",
35
36
  "test": "vitest",
36
37
  "test:e2e-dashboard": "node scripts/dashboard-e2e-smoke.mjs",
38
+ "test:issue-224": "vitest run tests/dashboard/issue-224-data-refresh.test.tsx --maxWorkers=1",
39
+ "test:issue-225": "vitest run tests/dashboard/issue-225-language-persistence.test.tsx --maxWorkers=1",
40
+ "test:issue-226": "vitest run tests/dashboard/SettingsTab-primary-llm.test.tsx tests/transports/http.test.ts --maxWorkers=1",
41
+ "test:issue-227": "vitest run tests/dashboard/ProjectRoadmap.test.tsx --maxWorkers=1",
42
+ "test:issue-228": "vitest run tests/dashboard/FeedbackWidget.test.tsx --maxWorkers=1",
43
+ "test:issue-229": "vitest run tests/dashboard/OnboardingBanner.test.tsx tests/dashboard-i18n.test.ts --maxWorkers=1",
44
+ "test:issue-230": "vitest run tests/dashboard/OnboardingBanner.test.tsx tests/transports/http.test.ts tests/core/demo.test.ts --maxWorkers=1",
45
+ "test:issue-241": "vitest run tests/core/lesson-engine.test.ts tests/storage/graph-repairs.test.ts tests/audit/memory-invariants.test.ts --maxWorkers=1",
46
+ "test:issue-242": "node scripts/run-tests-isolated.mjs tests/core/briefing.test.ts tests/core/work-topology.test.ts tests/hooks/session-start.test.ts --maxWorkers=1",
47
+ "test:issue-267": "vitest run tests/core/briefing.test.ts tests/core/schema-export.test.ts tests/hooks/session-start.test.ts tests/cli/briefing-recipient.test.ts --maxWorkers=1",
37
48
  "test:packaged": "node scripts/smoke-packed-artifact.mjs",
38
49
  "test:packaged:upgrade": "node scripts/smoke-packed-upgrade.mjs",
50
+ "test:surface-parity": "vitest run tests/readme-tool-parity.test.ts tests/codemap-parity.test.ts tests/core/schema-export.test.ts && node scripts/check-version-coherence.mjs && node scripts/check-generated-mirror.mjs && npm run test:packaged",
51
+ "check:surface-parity": "node scripts/check-readme-tool-parity.mjs && node scripts/check-codemap-parity.mjs",
39
52
  "audit:prod": "node scripts/check-consumer-audit.mjs",
40
- "verify:release": "npm run lint && npm run typecheck && node scripts/check-version-coherence.mjs && node scripts/check-generated-mirror.mjs && node scripts/check-agent-message-sync.mjs && node scripts/check-readme-tool-parity.mjs && node scripts/check-doc-claims.mjs && node scripts/audit/verification-audit.mjs && npm run audit:prod",
53
+ "audit:memory": "node scripts/audit/memory-invariants.mjs",
54
+ "verify:release": "npm run lint && npm run typecheck && node scripts/check-version-coherence.mjs && node scripts/check-generated-mirror.mjs && node scripts/check-agent-message-sync.mjs && npm run check:surface-parity && node scripts/check-doc-claims.mjs && node scripts/audit/verification-audit.mjs && npm run audit:prod",
41
55
  "release:finish": "node scripts/finish-release.mjs",
42
56
  "prepublishOnly": "npm run build && npm run verify:release && npm run test:isolated && npm run test:packaged && npm run test:packaged:upgrade",
43
57
  "typecheck": "tsc -p tsconfig.check.json && tsc -p tsconfig.check-dashboard.json",
@@ -0,0 +1,38 @@
1
+ // ============================================================================
2
+ // AUTO-GENERATED from src/core/agent-message-inbox.ts — DO NOT EDIT BY HAND.
3
+ // Regenerate with: npm run build (scripts/generate-hook-core.mjs)
4
+ //
5
+ // Claude Code hooks import this committed copy instead of dist/, so the
6
+ // always-on capture path survives a missing or stale dist/ while staying
7
+ // byte-locked to core — eliminating the hand-mirror drift behind the P0 FTS bug.
8
+ // ============================================================================
9
+ export function unreadDeliveryCount(db, project, recipient) {
10
+ if (!recipient)
11
+ return 0;
12
+ try {
13
+ const row = db.prepare(`SELECT COUNT(*) AS n
14
+ FROM agent_message_deliveries d
15
+ WHERE d.project = ?
16
+ AND d.recipient = ?
17
+ AND NOT EXISTS (
18
+ SELECT 1 FROM agent_message_receipts r
19
+ WHERE r.project = d.project
20
+ AND r.recipient = d.recipient
21
+ AND r.message_id = d.message_id
22
+ AND r.receipt_kind = 'intake'
23
+ )`).get(project, recipient);
24
+ const n = row?.n;
25
+ return typeof n === 'number' && n > 0 ? n : 0;
26
+ }
27
+ catch {
28
+ return 0;
29
+ }
30
+ }
31
+ export function unreadInboxLines(count, project, recipient) {
32
+ if (count <= 0 || !recipient)
33
+ return [];
34
+ const noun = count === 1 ? 'message' : 'messages';
35
+ const displayProject = JSON.stringify(project);
36
+ const displayRecipient = JSON.stringify(recipient);
37
+ return [`${count} ${noun} waiting for ${displayRecipient} in project ${displayProject} — poll the message tool with project ${displayProject} and recipient ${displayRecipient}, then fetch each message_id; fetching does not acknowledge.`];
38
+ }
@@ -25,8 +25,11 @@ memory is recorded as unused: that is how MeMesh learns which memories are
25
25
  worth the tokens they cost you.
26
26
  `;
27
27
  export function citationRuleDir(scope, home, cwd) {
28
- const base = scope === 'user' ? home : cwd;
29
- return path.join(base, '.claude', 'rules');
28
+ if (scope === 'project')
29
+ return path.join(cwd, '.claude', 'rules');
30
+ const relocated = process.env.CLAUDE_CONFIG_DIR;
31
+ const configRoot = relocated ? path.resolve(relocated) : path.join(home, '.claude');
32
+ return path.join(configRoot, 'rules');
30
33
  }
31
34
  export function citationRulePath(scope, home, cwd) {
32
35
  return path.join(citationRuleDir(scope, home, cwd), CITATION_RULE_FILENAME);
@@ -93,9 +93,8 @@ export const SECRET_PATTERN_SOURCES = [
93
93
  'SG\\.[A-Za-z0-9_-]{16,}\\.[A-Za-z0-9_-]{16,}',
94
94
  '[srp]k_(?:live|test)_[A-Za-z0-9]{16,}',
95
95
  'npm_[A-Za-z0-9]{36}',
96
- 'sk-ant-[A-Za-z0-9_-]{16,}',
97
- 'sk-[A-Za-z0-9_-]{16,}',
98
- 'sk_[A-Za-z0-9]{16,}',
96
+ '\\bsk[-_][^\\s"\\\\]{4,}[A-Za-z0-9]',
97
+ '(?<![A-Za-z0-9])(?:api[-_]?key|access[-_]?token|auth[-_]?token|refresh[-_]?token|session[-_]?token|token|secret|password|passwd|pwd|signature)=[^&\\s"\'<>]{8,}',
99
98
  'ghp_[A-Za-z0-9]{30,}',
100
99
  'gho_[A-Za-z0-9]{30,}',
101
100
  'gh[sur]_[A-Za-z0-9]{30,}',
@@ -82,10 +82,15 @@ export function groupTopology(entities, projectName) {
82
82
  const lessons = [];
83
83
  const knowledge = [];
84
84
  const evidence = [];
85
+ const global = [];
85
86
  const foreign = [];
86
87
  for (const e of entities) {
87
88
  if (e.type === 'task-state')
88
89
  continue;
90
+ if (e.global) {
91
+ global.push(e);
92
+ continue;
93
+ }
89
94
  if (e.foreign) {
90
95
  foreign.push(e);
91
96
  continue;
@@ -104,7 +109,7 @@ export function groupTopology(entities, projectName) {
104
109
  else
105
110
  decisions.push(e);
106
111
  }
107
- for (const list of [decisions, lessons, knowledge, evidence, foreign])
112
+ for (const list of [decisions, lessons, knowledge, evidence, global, foreign])
108
113
  list.sort(bySignal);
109
114
  const sections = [];
110
115
  if (decisions.length)
@@ -115,6 +120,8 @@ export function groupTopology(entities, projectName) {
115
120
  sections.push({ heading: `What is known about "${projectName}":`, entities: knowledge });
116
121
  if (evidence.length)
117
122
  sections.push({ heading: `Recent activity in "${projectName}":`, entities: evidence });
123
+ if (global.length)
124
+ sections.push({ heading: 'Global memory — applies across projects:', entities: global });
118
125
  if (foreign.length)
119
126
  sections.push({ heading: 'From your other projects (may or may not apply here):', entities: foreign });
120
127
  return sections;
@@ -124,6 +131,11 @@ export const DEFAULT_TOPOLOGY_BUDGET = {
124
131
  maxChars: 4000,
125
132
  maxLineChars: 160,
126
133
  };
134
+ export const GLOBAL_TOPOLOGY_LIMIT = 3;
135
+ const GLOBAL_TOPOLOGY_BUDGET = {
136
+ maxChars: 640,
137
+ maxLineChars: DEFAULT_TOPOLOGY_BUDGET.maxLineChars,
138
+ };
127
139
  export const TOPOLOGY_CANDIDATE_CAP = 400;
128
140
  export const SNIPPET_FETCH_CHARS = DEFAULT_TOPOLOGY_BUDGET.maxLineChars * 4;
129
141
  export function buildTopologyLines(entities, projectName, budget) {
@@ -155,12 +167,18 @@ export function buildTopologyLines(entities, projectName, budget) {
155
167
  export function assembleTopologyBlock(stateLines, pools, projectName, budget = DEFAULT_TOPOLOGY_BUDGET) {
156
168
  const seen = new Set();
157
169
  const candidates = [];
170
+ const globalCandidates = [];
158
171
  for (const pool of pools) {
159
172
  for (const e of pool.entities) {
160
173
  if (seen.has(e.name))
161
174
  continue;
162
175
  seen.add(e.name);
163
- candidates.push(pool.foreign && !e.foreign ? { ...e, foreign: true } : e);
176
+ if (pool.global) {
177
+ globalCandidates.push(e.global ? e : { ...e, global: true });
178
+ }
179
+ else {
180
+ candidates.push(pool.foreign && !e.foreign ? { ...e, foreign: true } : e);
181
+ }
164
182
  }
165
183
  }
166
184
  const lines = [];
@@ -173,9 +191,13 @@ export function assembleTopologyBlock(stateLines, pools, projectName, budget = D
173
191
  const topologyLines = remaining > 0
174
192
  ? buildTopologyLines(candidates, projectName, { ...budget, maxChars: remaining })
175
193
  : [];
194
+ const globalLines = buildTopologyLines(globalCandidates, projectName, GLOBAL_TOPOLOGY_BUDGET);
176
195
  if (lines.length > 0 && topologyLines.length > 0)
177
196
  lines.push('');
178
197
  lines.push(...topologyLines);
198
+ if (lines.length > 0 && globalLines.length > 0)
199
+ lines.push('');
200
+ lines.push(...globalLines);
179
201
  return lines;
180
202
  }
181
203
  export function buildReferenceContext(memoryLines) {
@@ -34,7 +34,7 @@ import {
34
34
  slugFromRemoteUrl,
35
35
  } from './_generated/core-paths.js';
36
36
  import { autoCaptureDecision } from './_generated/capture-flag.js';
37
- export { assembleTopologyBlock, buildReferenceContext, extractCitedMemoryIds, DEFAULT_TOPOLOGY_BUDGET, SNIPPET_FETCH_CHARS, TOPOLOGY_CANDIDATE_CAP } from './_generated/work-topology.js';
37
+ export { assembleTopologyBlock, buildReferenceContext, extractCitedMemoryIds, DEFAULT_TOPOLOGY_BUDGET, GLOBAL_TOPOLOGY_LIMIT, SNIPPET_FETCH_CHARS, TOPOLOGY_CANDIDATE_CAP } from './_generated/work-topology.js';
38
38
  export { readRepoState, repoStateLines } from './_generated/repo-state.js';
39
39
  export { matchingGuards, guardFromMetadata } from './_generated/guards.js';
40
40
  export { writeCitationRule, citationRulePath, CITATION_RULE_BODY } from './_generated/citation-rule.js';