dsh-mnemon 0.1.5 → 0.2.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 (230) hide show
  1. package/README.md +125 -104
  2. package/README.zh-CN.md +130 -109
  3. package/THIRD_PARTY_NOTICES.md +7 -0
  4. package/lib/client.js +4193 -1128
  5. package/lib/index.js +4326 -307
  6. package/lib/types/activity.d.ts +2 -18
  7. package/lib/types/channels.d.ts +1 -4
  8. package/lib/types/client/GlobalLocationSetting.d.ts +19 -0
  9. package/lib/types/client/MnemonLogo.d.ts +0 -1
  10. package/lib/types/client/MnemonPackSection.d.ts +5 -3
  11. package/lib/types/client/MnemonSaveAction.d.ts +1 -2
  12. package/lib/types/client/MnemonSettingsCard.d.ts +5 -4
  13. package/lib/types/client/MnemonTurnTail.d.ts +1 -2
  14. package/lib/types/client/MnemonView.d.ts +1 -3
  15. package/lib/types/client/MnemonViewAppearance.d.ts +0 -1
  16. package/lib/types/client/ProviderIcon.d.ts +8 -0
  17. package/lib/types/client/ProviderSettingsSection.d.ts +16 -0
  18. package/lib/types/client/anchor.d.ts +0 -1
  19. package/lib/types/client/api.d.ts +12 -19
  20. package/lib/types/client/dsh-compat.d.ts +0 -1
  21. package/lib/types/client/index.d.ts +0 -1
  22. package/lib/types/client/locales.d.ts +552 -1
  23. package/lib/types/client/settings.d.ts +4 -3
  24. package/lib/types/client/sidebar-entry.d.ts +0 -1
  25. package/lib/types/client/workspace-controller.d.ts +0 -1
  26. package/lib/types/client/workspace-mount.d.ts +1 -3
  27. package/lib/types/commands.d.ts +0 -1
  28. package/lib/types/config-values.d.ts +0 -1
  29. package/lib/types/config.d.ts +6 -80
  30. package/lib/types/contracts.d.ts +38 -62
  31. package/lib/types/documents.d.ts +2 -79
  32. package/lib/types/guidance.d.ts +0 -1
  33. package/lib/types/index.d.ts +0 -1
  34. package/lib/types/lifecycle.d.ts +32 -47
  35. package/lib/types/live-runtime.d.ts +0 -1
  36. package/lib/types/memory-bodies.d.ts +27 -23
  37. package/lib/types/pack.d.ts +2 -48
  38. package/lib/types/process.d.ts +4 -2
  39. package/lib/types/provider-placement.d.ts +26 -0
  40. package/lib/types/providers/byterover.d.ts +31 -0
  41. package/lib/types/providers/catalog.d.ts +23 -0
  42. package/lib/types/providers/hindsight.d.ts +19 -0
  43. package/lib/types/providers/holographic.d.ts +22 -0
  44. package/lib/types/providers/honcho.d.ts +18 -0
  45. package/lib/types/providers/http.d.ts +32 -0
  46. package/lib/types/providers/mem0.d.ts +17 -0
  47. package/lib/types/providers/openviking.d.ts +31 -0
  48. package/lib/types/providers/provider.d.ts +38 -0
  49. package/lib/types/providers/retaindb.d.ts +16 -0
  50. package/lib/types/providers/supermemory.d.ts +16 -0
  51. package/lib/types/review-activity.d.ts +2 -16
  52. package/lib/types/rpc.d.ts +1 -2
  53. package/lib/types/runner.d.ts +15 -11
  54. package/lib/types/runtime-memory.d.ts +2 -59
  55. package/lib/types/service.d.ts +54 -152
  56. package/lib/types/settings.d.ts +1 -4
  57. package/lib/types/shared/contracts.d.ts +869 -0
  58. package/lib/types/storage-scope.d.ts +2 -29
  59. package/lib/types/subagent.d.ts +11 -16
  60. package/lib/types/tools.d.ts +0 -1
  61. package/lib/types/version-updates.d.ts +2 -29
  62. package/package.json +22 -9
  63. package/docs/README.md +0 -8
  64. package/docs/assets/diagrams/en/memory-system-flow.png +0 -0
  65. package/docs/assets/diagrams/en/project-architecture.svg +0 -182
  66. package/docs/assets/diagrams/zh-CN/memory-system-flow.png +0 -0
  67. package/docs/assets/diagrams/zh-CN/project-architecture.svg +0 -182
  68. package/docs/assets/media/dsh-mnemon-memory-system-demo-poster.jpg +0 -0
  69. package/docs/assets/media/dsh-mnemon-memory-system-demo.gif +0 -0
  70. package/docs/assets/media/dsh-mnemon-memory-system-demo.mp4 +0 -0
  71. package/docs/assets/screenshots/conversation-memory-jump.png +0 -0
  72. package/docs/assets/screenshots/conversation-save-dialog.png +0 -0
  73. package/docs/assets/screenshots/conversation-turn-memory.png +0 -0
  74. package/docs/assets/screenshots/document-create-dialog.png +0 -0
  75. package/docs/assets/screenshots/documents-markdown.png +0 -0
  76. package/docs/assets/screenshots/entities-context.png +0 -0
  77. package/docs/assets/screenshots/memory-content.png +0 -0
  78. package/docs/assets/screenshots/overview-memory-graph.png +0 -0
  79. package/docs/assets/screenshots/recall-agent-answer.png +0 -0
  80. package/docs/assets/screenshots/remember-dialog.png +0 -0
  81. package/docs/assets/screenshots/runtime-memory-add.png +0 -0
  82. package/docs/assets/screenshots/runtime-memory.png +0 -0
  83. package/docs/assets/screenshots/settings-memory-system.png +0 -0
  84. package/docs/assets/screenshots/status-overview.png +0 -0
  85. package/docs/assets/screenshots/version-check.png +0 -0
  86. package/docs/en/README.md +0 -48
  87. package/docs/en/architecture.md +0 -133
  88. package/docs/en/configuration.md +0 -234
  89. package/docs/en/development.md +0 -198
  90. package/docs/en/getting-started.md +0 -199
  91. package/docs/en/interfaces.md +0 -181
  92. package/docs/en/operations.md +0 -173
  93. package/docs/en/project-overview.md +0 -145
  94. package/docs/en/roadmap.md +0 -41
  95. package/docs/en/storage-model.md +0 -185
  96. package/docs/en/ui-guide.md +0 -156
  97. package/docs/en/workflows.md +0 -290
  98. package/docs/zh-CN/README.md +0 -48
  99. package/docs/zh-CN/architecture.md +0 -133
  100. package/docs/zh-CN/configuration.md +0 -234
  101. package/docs/zh-CN/development.md +0 -198
  102. package/docs/zh-CN/getting-started.md +0 -199
  103. package/docs/zh-CN/interfaces.md +0 -181
  104. package/docs/zh-CN/operations.md +0 -173
  105. package/docs/zh-CN/project-overview.md +0 -145
  106. package/docs/zh-CN/roadmap.md +0 -41
  107. package/docs/zh-CN/storage-model.md +0 -185
  108. package/docs/zh-CN/ui-guide.md +0 -160
  109. package/docs/zh-CN/workflows.md +0 -290
  110. package/lib/client.js.map +0 -1
  111. package/lib/types/activity.d.ts.map +0 -1
  112. package/lib/types/activity.js +0 -93
  113. package/lib/types/activity.js.map +0 -1
  114. package/lib/types/channels.d.ts.map +0 -1
  115. package/lib/types/channels.js +0 -4
  116. package/lib/types/channels.js.map +0 -1
  117. package/lib/types/client/MnemonLogo.d.ts.map +0 -1
  118. package/lib/types/client/MnemonLogo.js +0 -6
  119. package/lib/types/client/MnemonLogo.js.map +0 -1
  120. package/lib/types/client/MnemonPackSection.d.ts.map +0 -1
  121. package/lib/types/client/MnemonPackSection.js +0 -136
  122. package/lib/types/client/MnemonPackSection.js.map +0 -1
  123. package/lib/types/client/MnemonSaveAction.d.ts.map +0 -1
  124. package/lib/types/client/MnemonSaveAction.js +0 -90
  125. package/lib/types/client/MnemonSaveAction.js.map +0 -1
  126. package/lib/types/client/MnemonSettingsCard.d.ts.map +0 -1
  127. package/lib/types/client/MnemonSettingsCard.js +0 -155
  128. package/lib/types/client/MnemonSettingsCard.js.map +0 -1
  129. package/lib/types/client/MnemonTurnTail.d.ts.map +0 -1
  130. package/lib/types/client/MnemonTurnTail.js +0 -56
  131. package/lib/types/client/MnemonTurnTail.js.map +0 -1
  132. package/lib/types/client/MnemonView.d.ts.map +0 -1
  133. package/lib/types/client/MnemonView.js +0 -1594
  134. package/lib/types/client/MnemonView.js.map +0 -1
  135. package/lib/types/client/MnemonViewAppearance.d.ts.map +0 -1
  136. package/lib/types/client/MnemonViewAppearance.js +0 -67
  137. package/lib/types/client/MnemonViewAppearance.js.map +0 -1
  138. package/lib/types/client/anchor.d.ts.map +0 -1
  139. package/lib/types/client/anchor.js +0 -46
  140. package/lib/types/client/anchor.js.map +0 -1
  141. package/lib/types/client/api.d.ts.map +0 -1
  142. package/lib/types/client/api.js +0 -150
  143. package/lib/types/client/api.js.map +0 -1
  144. package/lib/types/client/dsh-compat.d.ts.map +0 -1
  145. package/lib/types/client/dsh-compat.js +0 -2
  146. package/lib/types/client/dsh-compat.js.map +0 -1
  147. package/lib/types/client/index.d.ts.map +0 -1
  148. package/lib/types/client/index.js +0 -161
  149. package/lib/types/client/index.js.map +0 -1
  150. package/lib/types/client/locales.d.ts.map +0 -1
  151. package/lib/types/client/locales.js +0 -1172
  152. package/lib/types/client/locales.js.map +0 -1
  153. package/lib/types/client/settings.d.ts.map +0 -1
  154. package/lib/types/client/settings.js +0 -70
  155. package/lib/types/client/settings.js.map +0 -1
  156. package/lib/types/client/sidebar-entry.d.ts.map +0 -1
  157. package/lib/types/client/sidebar-entry.js +0 -134
  158. package/lib/types/client/sidebar-entry.js.map +0 -1
  159. package/lib/types/client/workspace-controller.d.ts.map +0 -1
  160. package/lib/types/client/workspace-controller.js +0 -21
  161. package/lib/types/client/workspace-controller.js.map +0 -1
  162. package/lib/types/client/workspace-mount.d.ts.map +0 -1
  163. package/lib/types/client/workspace-mount.js +0 -138
  164. package/lib/types/client/workspace-mount.js.map +0 -1
  165. package/lib/types/commands.d.ts.map +0 -1
  166. package/lib/types/commands.js +0 -104
  167. package/lib/types/commands.js.map +0 -1
  168. package/lib/types/config-values.d.ts.map +0 -1
  169. package/lib/types/config-values.js +0 -4
  170. package/lib/types/config-values.js.map +0 -1
  171. package/lib/types/config.d.ts.map +0 -1
  172. package/lib/types/config.js +0 -127
  173. package/lib/types/config.js.map +0 -1
  174. package/lib/types/contracts.d.ts.map +0 -1
  175. package/lib/types/contracts.js +0 -2
  176. package/lib/types/contracts.js.map +0 -1
  177. package/lib/types/documents.d.ts.map +0 -1
  178. package/lib/types/documents.js +0 -495
  179. package/lib/types/documents.js.map +0 -1
  180. package/lib/types/guidance.d.ts.map +0 -1
  181. package/lib/types/guidance.js +0 -34
  182. package/lib/types/guidance.js.map +0 -1
  183. package/lib/types/index.d.ts.map +0 -1
  184. package/lib/types/index.js +0 -55
  185. package/lib/types/index.js.map +0 -1
  186. package/lib/types/lifecycle.d.ts.map +0 -1
  187. package/lib/types/lifecycle.js +0 -456
  188. package/lib/types/lifecycle.js.map +0 -1
  189. package/lib/types/live-runtime.d.ts.map +0 -1
  190. package/lib/types/live-runtime.js +0 -146
  191. package/lib/types/live-runtime.js.map +0 -1
  192. package/lib/types/memory-bodies.d.ts.map +0 -1
  193. package/lib/types/memory-bodies.js +0 -186
  194. package/lib/types/memory-bodies.js.map +0 -1
  195. package/lib/types/pack.d.ts.map +0 -1
  196. package/lib/types/pack.js +0 -709
  197. package/lib/types/pack.js.map +0 -1
  198. package/lib/types/process.d.ts.map +0 -1
  199. package/lib/types/process.js +0 -65
  200. package/lib/types/process.js.map +0 -1
  201. package/lib/types/review-activity.d.ts.map +0 -1
  202. package/lib/types/review-activity.js +0 -37
  203. package/lib/types/review-activity.js.map +0 -1
  204. package/lib/types/rpc.d.ts.map +0 -1
  205. package/lib/types/rpc.js +0 -384
  206. package/lib/types/rpc.js.map +0 -1
  207. package/lib/types/runner.d.ts.map +0 -1
  208. package/lib/types/runner.js +0 -198
  209. package/lib/types/runner.js.map +0 -1
  210. package/lib/types/runtime-memory.d.ts.map +0 -1
  211. package/lib/types/runtime-memory.js +0 -415
  212. package/lib/types/runtime-memory.js.map +0 -1
  213. package/lib/types/service.d.ts.map +0 -1
  214. package/lib/types/service.js +0 -512
  215. package/lib/types/service.js.map +0 -1
  216. package/lib/types/settings.d.ts.map +0 -1
  217. package/lib/types/settings.js +0 -103
  218. package/lib/types/settings.js.map +0 -1
  219. package/lib/types/storage-scope.d.ts.map +0 -1
  220. package/lib/types/storage-scope.js +0 -179
  221. package/lib/types/storage-scope.js.map +0 -1
  222. package/lib/types/subagent.d.ts.map +0 -1
  223. package/lib/types/subagent.js +0 -624
  224. package/lib/types/subagent.js.map +0 -1
  225. package/lib/types/tools.d.ts.map +0 -1
  226. package/lib/types/tools.js +0 -341
  227. package/lib/types/tools.js.map +0 -1
  228. package/lib/types/version-updates.d.ts.map +0 -1
  229. package/lib/types/version-updates.js +0 -383
  230. package/lib/types/version-updates.js.map +0 -1
@@ -4,11 +4,13 @@ export interface ProcessResult {
4
4
  exitCode: number | null;
5
5
  }
6
6
  export interface ProcessOptions {
7
- signal?: AbortSignal;
7
+ signal?: AbortSignal | undefined;
8
8
  timeoutMs: number;
9
9
  maxOutputBytes?: number;
10
+ cwd?: string | undefined;
11
+ env?: NodeJS.ProcessEnv | undefined;
12
+ label?: string | undefined;
10
13
  }
11
14
  export type ProcessRunner = (command: string, args: readonly string[], options: ProcessOptions) => Promise<ProcessResult>;
12
15
  /** Spawn without a shell, with bounded output and cooperative cancellation. */
13
16
  export declare const runProcess: ProcessRunner;
14
- //# sourceMappingURL=process.d.ts.map
@@ -0,0 +1,26 @@
1
+ import type { AutomaticMemoryPlacementRequest, MemoryPlacementDecision, MemoryProviderCapabilities, MemoryProviderId } from './shared/contracts.ts';
2
+ export interface MemoryPlacementCandidate {
3
+ id: MemoryProviderId;
4
+ label: string;
5
+ kind: 'local' | 'remote';
6
+ configured: boolean;
7
+ summary: string;
8
+ capabilities: MemoryProviderCapabilities;
9
+ }
10
+ export interface PreparedMemoryPlacement {
11
+ prompt: string;
12
+ candidates: MemoryPlacementCandidate[];
13
+ appliedRules: string[];
14
+ selectorBrief: string;
15
+ }
16
+ export interface LlmMemoryPlacementSelection {
17
+ providerId: string;
18
+ reason: string;
19
+ confidence: string;
20
+ }
21
+ export declare function prepareMemoryPlacement(request: AutomaticMemoryPlacementRequest, candidates: readonly MemoryPlacementCandidate[]): PreparedMemoryPlacement;
22
+ export declare function rulesOnlyPlacement(prepared: PreparedMemoryPlacement, now?: () => Date): MemoryPlacementDecision | undefined;
23
+ export declare function finalizeLlmPlacement(prepared: PreparedMemoryPlacement, selection: LlmMemoryPlacementSelection, delegation: {
24
+ runId: string;
25
+ provider: string;
26
+ }, now?: () => Date): MemoryPlacementDecision;
@@ -0,0 +1,31 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import { type ProcessRunner } from '../process.ts';
4
+ import type { Insight, MemoryBody, MemoryGraphSnapshot, MemoryListRequest, MemoryProviderConnection, RememberRequest, SearchRequest } from '../shared/contracts.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ interface ByteRoverProviderOptions {
7
+ process?: ProcessRunner;
8
+ queryTimeoutMs?: number;
9
+ curateTimeoutMs?: number;
10
+ }
11
+ export declare class ByteRoverProvider implements MemoryProviderAdapter {
12
+ private readonly memoryBodies;
13
+ readonly id: "byterover";
14
+ private readonly process;
15
+ private readonly queryTimeoutMs;
16
+ private readonly curateTimeoutMs;
17
+ private readonly statusCache;
18
+ private readonly statusInFlight;
19
+ constructor(memoryBodies: MemoryBodyRegistry, options?: ByteRoverProviderOptions);
20
+ discover(connection: MemoryProviderConnection): Promise<ProviderMemorySpace[]>;
21
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
22
+ invalidateStatus(memoryBodyId?: string): void;
23
+ private checkStatus;
24
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
25
+ graph(body: MemoryBody): Promise<MemoryGraphSnapshot>;
26
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
27
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
28
+ private connection;
29
+ private run;
30
+ }
31
+ export {};
@@ -0,0 +1,23 @@
1
+ import type { MemoryProviderConfigField, MemoryProviderConnection, MemoryProviderDescriptor, MemoryProviderId } from '../shared/contracts.ts';
2
+ export declare const MEMORY_PROVIDER_IDS: readonly ["mnemon-native", "openviking", "honcho", "mem0", "hindsight", "holographic", "retaindb", "byterover", "supermemory"];
3
+ export declare const MEMORY_PROVIDER_ID_SET: Set<MemoryProviderId>;
4
+ export declare const MEMORY_PROVIDER_CATALOG: readonly MemoryProviderDescriptor[];
5
+ export declare function memoryProviderDescriptor(id: MemoryProviderId): MemoryProviderDescriptor;
6
+ export declare function isMemoryProviderId(value: unknown): value is MemoryProviderId;
7
+ export declare function providerServiceFields(providerId: MemoryProviderId): MemoryProviderConfigField[];
8
+ export declare function providerMemoryFields(providerId: MemoryProviderId): MemoryProviderConfigField[];
9
+ export declare function splitProviderConnection(providerId: MemoryProviderId, connection: MemoryProviderConnection | undefined): {
10
+ service: MemoryProviderConnection;
11
+ memory: MemoryProviderConnection;
12
+ };
13
+ export declare function normalizeProviderServiceConnection(providerId: MemoryProviderId, input: MemoryProviderConnection | undefined, previous?: MemoryProviderConnection, clearSecrets?: readonly string[]): MemoryProviderConnection;
14
+ export declare function normalizeProviderMemoryConnection(providerId: MemoryProviderId, input: MemoryProviderConnection | undefined, previous?: MemoryProviderConnection): MemoryProviderConnection;
15
+ export declare function normalizeProviderConnection(providerId: MemoryProviderId, input: MemoryProviderConnection | undefined, previous?: MemoryProviderConnection, clearSecrets?: readonly string[]): MemoryProviderConnection;
16
+ export declare function publicScopedProviderConnection(providerId: MemoryProviderId, scope: MemoryProviderConfigField['scope'], connection: MemoryProviderConnection): {
17
+ settings: MemoryProviderConnection;
18
+ configuredSecrets: string[];
19
+ };
20
+ export declare function publicProviderConnection(providerId: MemoryProviderId, connection: MemoryProviderConnection): {
21
+ settings: MemoryProviderConnection;
22
+ configuredSecrets: string[];
23
+ };
@@ -0,0 +1,19 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { EdgeType, Insight, MemoryBody, MemoryGraphSnapshot, MemoryListRequest, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import { HttpMemoryProvider, type HttpProviderOptions } from './http.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ export declare class HindsightProvider extends HttpMemoryProvider implements MemoryProviderAdapter {
7
+ readonly id: "hindsight";
8
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
9
+ discover(connection: Record<string, string | number | boolean>, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
13
+ graph(body: MemoryBody, signal?: AbortSignal): Promise<MemoryGraphSnapshot>;
14
+ related(body: MemoryBody, id: string, depth: number, _edge?: EdgeType, signal?: AbortSignal): Promise<Insight[]>;
15
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
16
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
17
+ private bankPath;
18
+ private headers;
19
+ }
@@ -0,0 +1,22 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryGraphSnapshot, MemoryListRequest, MemoryProviderConnection, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
5
+ export declare class HolographicProvider implements MemoryProviderAdapter {
6
+ private readonly memoryBodies;
7
+ readonly id: "holographic";
8
+ constructor(memoryBodies: MemoryBodyRegistry);
9
+ discover(connection: MemoryProviderConnection): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest): Promise<Insight[]>;
13
+ graph(body: MemoryBody): Promise<MemoryGraphSnapshot>;
14
+ related(body: MemoryBody, id: string, _depth: number): Promise<Insight[]>;
15
+ remember(body: MemoryBody, request: RememberRequest): Promise<JsonValue>;
16
+ forget(body: MemoryBody, id: string): Promise<JsonValue>;
17
+ private connection;
18
+ private path;
19
+ private load;
20
+ private save;
21
+ private stats;
22
+ }
@@ -0,0 +1,18 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryListRequest, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import { HttpMemoryProvider, type HttpProviderOptions } from './http.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ export declare class HonchoProvider extends HttpMemoryProvider implements MemoryProviderAdapter {
7
+ readonly id: "honcho";
8
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
9
+ discover(connection: Record<string, string | number | boolean>, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
13
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
14
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
15
+ private basePath;
16
+ private scope;
17
+ private headers;
18
+ }
@@ -0,0 +1,32 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryGraphSnapshot, MemoryListRequest, MemoryProviderConnection, MemoryProviderId } from '../shared/contracts.ts';
4
+ export interface HttpProviderOptions {
5
+ fetch?: typeof fetch;
6
+ requestTimeoutMs?: number;
7
+ }
8
+ export interface JsonRequestOptions {
9
+ method?: string;
10
+ headers?: HeadersInit;
11
+ json?: JsonValue;
12
+ signal?: AbortSignal | undefined;
13
+ timeoutMs?: number;
14
+ }
15
+ export declare function jsonObject(value: unknown): Record<string, unknown> | undefined;
16
+ export declare function jsonString(value: unknown): string | undefined;
17
+ export declare function jsonNumber(value: unknown): number | undefined;
18
+ export declare function jsonArray(value: unknown): unknown[];
19
+ export declare function firstArray(value: unknown, ...keys: string[]): unknown[];
20
+ /** Shared timeout, cancellation, error, and projection behavior for HTTP providers. */
21
+ export declare abstract class HttpMemoryProvider {
22
+ protected readonly memoryBodies: MemoryBodyRegistry;
23
+ abstract readonly id: MemoryProviderId;
24
+ protected readonly requestFetch: typeof fetch;
25
+ protected readonly requestTimeoutMs: number;
26
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
27
+ abstract list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
28
+ graph(body: MemoryBody, signal?: AbortSignal): Promise<MemoryGraphSnapshot>;
29
+ protected connection(body: MemoryBody): MemoryProviderConnection;
30
+ protected request(body: MemoryBody, path: string, options?: JsonRequestOptions): Promise<unknown>;
31
+ protected requestConnection(connection: MemoryProviderConnection, path: string, options?: JsonRequestOptions): Promise<unknown>;
32
+ }
@@ -0,0 +1,17 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryListRequest, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import { HttpMemoryProvider, type HttpProviderOptions } from './http.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ export declare class Mem0Provider extends HttpMemoryProvider implements MemoryProviderAdapter {
7
+ readonly id: "mem0";
8
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
9
+ discover(connection: Record<string, string | number | boolean>, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
13
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
14
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
15
+ private filters;
16
+ private headers;
17
+ }
@@ -0,0 +1,31 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryGraphSnapshot, MemoryListRequest, MemoryProviderConnection, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
5
+ interface OpenVikingProviderOptions {
6
+ fetch?: typeof fetch;
7
+ requestTimeoutMs?: number;
8
+ settlementTimeoutMs?: number;
9
+ pollIntervalMs?: number;
10
+ }
11
+ export declare class OpenVikingProvider implements MemoryProviderAdapter {
12
+ private readonly memoryBodies;
13
+ readonly id: "openviking";
14
+ private readonly requestFetch;
15
+ private readonly requestTimeoutMs;
16
+ private readonly settlementTimeoutMs;
17
+ private readonly pollIntervalMs;
18
+ constructor(memoryBodies: MemoryBodyRegistry, options?: OpenVikingProviderOptions);
19
+ discover(connection: MemoryProviderConnection, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
20
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
21
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
22
+ graph(body: MemoryBody, signal?: AbortSignal): Promise<MemoryGraphSnapshot>;
23
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
24
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
25
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
26
+ private connection;
27
+ private settleTask;
28
+ private request;
29
+ private requestConnection;
30
+ }
31
+ export {};
@@ -0,0 +1,38 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { EdgeType, Insight, MemoryBody, MemoryBodyStats, MemoryGraphSnapshot, MemoryListRequest, MemoryProviderConnection, RememberRequest, SearchRequest } from '../shared/contracts.ts';
3
+ export interface ProviderBodyStatus {
4
+ healthy: boolean;
5
+ error?: string;
6
+ stats?: MemoryBodyStats;
7
+ }
8
+ export interface ProviderSearchResult {
9
+ results: Insight[];
10
+ hint?: string;
11
+ }
12
+ /** One provider-owned namespace projected into DSH as a Memory Space. */
13
+ export interface ProviderMemorySpace {
14
+ /** Stable identifier owned by the provider, never a DSH-generated title. */
15
+ externalId: string;
16
+ name: string;
17
+ description: string;
18
+ connection: MemoryProviderConnection;
19
+ }
20
+ /**
21
+ * Third-layer memory data plane. DSH owns routing and lifecycle; adapters own
22
+ * only one body's persistence and retrieval semantics.
23
+ */
24
+ export interface MemoryProviderAdapter {
25
+ readonly id: MemoryBody['provider']['id'];
26
+ /** Enumerate the complete set of namespaces visible to this service connection. */
27
+ discover?(connection: MemoryProviderConnection, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
28
+ /** Drop a short-lived health result before an explicit user reconnect. */
29
+ invalidateStatus?(memoryBodyId?: string): void;
30
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
31
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
32
+ graph(body: MemoryBody, signal?: AbortSignal): Promise<MemoryGraphSnapshot>;
33
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
34
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
35
+ related?(body: MemoryBody, id: string, depth: number, edge?: EdgeType, signal?: AbortSignal): Promise<Insight[]>;
36
+ link?(body: MemoryBody, sourceId: string, targetId: string, type: EdgeType, weight: number, reason?: string, signal?: AbortSignal): Promise<JsonValue>;
37
+ forget?(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
38
+ }
@@ -0,0 +1,16 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryListRequest, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import { HttpMemoryProvider, type HttpProviderOptions } from './http.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ export declare class RetainDbProvider extends HttpMemoryProvider implements MemoryProviderAdapter {
7
+ readonly id: "retaindb";
8
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
9
+ discover(connection: Record<string, string | number | boolean>, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
13
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
14
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
15
+ private headers;
16
+ }
@@ -0,0 +1,16 @@
1
+ import type { JsonValue } from '../contracts.ts';
2
+ import type { MemoryBodyRegistry } from '../memory-bodies.ts';
3
+ import type { Insight, MemoryBody, MemoryListRequest, RememberRequest, SearchRequest } from '../shared/contracts.ts';
4
+ import { HttpMemoryProvider, type HttpProviderOptions } from './http.ts';
5
+ import type { MemoryProviderAdapter, ProviderBodyStatus, ProviderMemorySpace, ProviderSearchResult } from './provider.ts';
6
+ export declare class SupermemoryProvider extends HttpMemoryProvider implements MemoryProviderAdapter {
7
+ readonly id: "supermemory";
8
+ constructor(memoryBodies: MemoryBodyRegistry, options?: HttpProviderOptions);
9
+ discover(connection: Record<string, string | number | boolean>, signal?: AbortSignal): Promise<ProviderMemorySpace[]>;
10
+ status(body: MemoryBody, signal?: AbortSignal): Promise<ProviderBodyStatus>;
11
+ search(body: MemoryBody, request: SearchRequest, signal?: AbortSignal): Promise<ProviderSearchResult>;
12
+ list(body: MemoryBody, request: MemoryListRequest, signal?: AbortSignal): Promise<Insight[]>;
13
+ remember(body: MemoryBody, request: RememberRequest, signal?: AbortSignal): Promise<JsonValue>;
14
+ forget(body: MemoryBody, id: string, signal?: AbortSignal): Promise<JsonValue>;
15
+ private headers;
16
+ }
@@ -14,20 +14,6 @@ export declare const QODERWORK_REVIEW_POLICY: Readonly<{
14
14
  toolDiversityScoreCap: 2;
15
15
  turnScore: 1;
16
16
  }>;
17
- export interface ReviewActivity {
18
- totalUserTextLength: number;
19
- turnCount: number;
20
- toolCallCount: number;
21
- uniqueToolCount: number;
22
- }
23
- export interface ReviewActivityScore extends ReviewActivity {
24
- textLengthScore: number;
25
- turnScore: number;
26
- toolCallScore: number;
27
- toolDiversityScore: number;
28
- score: number;
29
- threshold: number;
30
- eligible: boolean;
31
- }
32
17
  export declare function scoreReviewActivity(activity: ReviewActivity): ReviewActivityScore;
33
- //# sourceMappingURL=review-activity.d.ts.map
18
+ import type { ReviewActivity, ReviewActivityScore } from './shared/contracts.ts';
19
+ export type { ReviewActivity, ReviewActivityScore } from './shared/contracts.ts';
@@ -11,7 +11,6 @@ type RuntimeInput = MnemonService | LiveMnemonRuntime;
11
11
  export declare function createReadHandler(input: RuntimeInput, lifecycle?: MnemonLifecycle, runtimeMemory?: RuntimeMemoryController, storage?: StorageScopeInspector, versions?: VersionUpdateManager): HostRpcHandler;
12
12
  export declare function createWriteHandler(input: RuntimeInput, lifecycle?: MnemonLifecycle, runtimeMemory?: RuntimeMemoryController, versions?: VersionUpdateManager): HostRpcHandler;
13
13
  /** Backup payloads contain private memory and therefore remain loopback-only. */
14
- export declare function createPackHandler(manager: MnemonPackManager, writeEnabled?: boolean | (() => boolean)): HostRpcHandler;
14
+ export declare function createPackHandler(input: MnemonPackManager | LiveMnemonRuntime, writeEnabled?: boolean | (() => boolean)): HostRpcHandler;
15
15
  /** Read operations are available to trusted Web hosts; local mutations stay loopback-only. */
16
16
  export declare function registerRpc(connection: HostConnectionHandle, input: RuntimeInput, lifecycle?: MnemonLifecycle, runtimeMemory?: RuntimeMemoryController, storage?: StorageScopeInspector, packs?: MnemonPackManager, versions?: VersionUpdateManager): void;
17
- //# sourceMappingURL=rpc.d.ts.map
@@ -14,24 +14,28 @@ export declare class MnemonCliError extends Error {
14
14
  readonly stderr: string;
15
15
  constructor(message: string, exitCode?: number | null, stderr?: string);
16
16
  }
17
+ export interface MnemonRunOptions {
18
+ signal?: AbortSignal;
19
+ globalFlags?: boolean;
20
+ store?: string;
21
+ }
22
+ export interface MnemonTextCommand {
23
+ args: readonly string[];
24
+ options?: MnemonRunOptions;
25
+ }
17
26
  export interface MnemonRunner {
18
27
  readonly command: string;
19
28
  readonly commandFound: boolean;
20
29
  readonly config: ResolvedConfig;
21
- runJson(args: readonly string[], options?: {
22
- signal?: AbortSignal;
23
- globalFlags?: boolean;
24
- store?: string;
25
- }): Promise<JsonValue>;
26
- runText(args: readonly string[], options?: {
27
- signal?: AbortSignal;
28
- globalFlags?: boolean;
29
- store?: string;
30
- }): Promise<string>;
30
+ runJson(args: readonly string[], options?: MnemonRunOptions): Promise<JsonValue>;
31
+ runText(args: readonly string[], options?: MnemonRunOptions): Promise<string>;
32
+ /** Run related CLI commands consecutively without allowing queued work between them. */
33
+ runTextBatch(commands: readonly MnemonTextCommand[]): Promise<string[]>;
31
34
  /** Run one operation after all CLI work and hold the same queue until it settles. */
32
35
  withExclusive<T>(operation: () => T | Promise<T>): Promise<T>;
33
36
  effectiveDataDir(): string;
37
+ /** Read Mnemon's persisted active-file selection, ignoring config and environment overrides. */
38
+ persistedStore(): string;
34
39
  effectiveStore(): string;
35
40
  }
36
41
  export declare function createRunner(config: ResolvedConfig, processRunner?: ProcessRunner, workspaceRoot?: string): MnemonRunner;
37
- //# sourceMappingURL=runner.d.ts.map
@@ -1,68 +1,12 @@
1
1
  import type { MnemonRunner } from './runner.ts';
2
+ import type { RuntimeMemoryCompactedEntry, RuntimeMemoryMutation, RuntimeMemoryMutationResult, RuntimeMemorySnapshot, RuntimeMemoryTarget } from './shared/contracts.ts';
3
+ export type { RuntimeMemoryAction, RuntimeMemoryCompactedEntry, RuntimeMemoryEntry, RuntimeMemoryImportance, RuntimeMemoryMutation, RuntimeMemoryMutationResult, RuntimeMemorySnapshot, RuntimeMemoryTarget, RuntimeMemoryTargetView, RuntimeMemoryUsage, } from './shared/contracts.ts';
2
4
  export declare const RUNTIME_MEMORY_VERSION = 1;
3
5
  export declare const RUNTIME_ENTRY_DELIMITER = "\n\u00A7\n";
4
6
  export declare const RUNTIME_MEMORY_LIMITS: {
5
7
  readonly memory: number;
6
8
  readonly user: number;
7
9
  };
8
- export type RuntimeMemoryTarget = keyof typeof RUNTIME_MEMORY_LIMITS;
9
- export type RuntimeMemoryImportance = 'critical' | 'normal' | 'low';
10
- export type RuntimeMemoryAction = 'add' | 'replace' | 'remove';
11
- export interface RuntimeMemoryEntry {
12
- content: string;
13
- created_at: string;
14
- updated_at: string;
15
- target: RuntimeMemoryTarget;
16
- importance: RuntimeMemoryImportance;
17
- }
18
- export interface RuntimeMemoryUsage {
19
- used: number;
20
- limit: number;
21
- }
22
- export interface RuntimeMemoryTargetView extends RuntimeMemoryUsage {
23
- target: RuntimeMemoryTarget;
24
- entryCount: number;
25
- markdownPath: string;
26
- }
27
- export interface RuntimeMemorySnapshot {
28
- directory: string;
29
- sourcePath: string;
30
- revision: string;
31
- generatedAt: string;
32
- entries: RuntimeMemoryEntry[];
33
- targets: Record<RuntimeMemoryTarget, RuntimeMemoryTargetView>;
34
- }
35
- export interface RuntimeMemoryCompactedEntry {
36
- content: string;
37
- importance: RuntimeMemoryImportance;
38
- }
39
- export interface RuntimeMemoryMutation {
40
- action: RuntimeMemoryAction;
41
- target: RuntimeMemoryTarget;
42
- content?: string;
43
- oldText?: string;
44
- importance?: RuntimeMemoryImportance;
45
- }
46
- export type RuntimeMemoryMutationResult = {
47
- success: true;
48
- message: string;
49
- target: RuntimeMemoryTarget;
50
- entryCount: number;
51
- usage: RuntimeMemoryUsage;
52
- added?: string;
53
- replaced?: {
54
- from: string;
55
- to: string;
56
- };
57
- removed?: string;
58
- maintenance?: {
59
- kind: 'local-compaction' | 'mnemon-archive';
60
- runId: string;
61
- provider: string;
62
- summary: string;
63
- memoryBodyIds: string[];
64
- };
65
- };
66
10
  export declare class RuntimeMemoryCapacityError extends Error {
67
11
  readonly target: RuntimeMemoryTarget;
68
12
  readonly used: number;
@@ -101,4 +45,3 @@ export declare class RuntimeMemoryController {
101
45
  private repairProjections;
102
46
  private withLock;
103
47
  }
104
- //# sourceMappingURL=runtime-memory.d.ts.map