memax-sdk 0.1.9 → 0.1.11

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 (40) hide show
  1. package/dist/client.d.ts +2 -0
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +3 -0
  4. package/dist/client.js.map +1 -1
  5. package/dist/client.test.js +42 -0
  6. package/dist/client.test.js.map +1 -1
  7. package/dist/index.d.ts +2 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/resources/auth.d.ts +12 -1
  11. package/dist/resources/auth.d.ts.map +1 -1
  12. package/dist/resources/auth.js +38 -0
  13. package/dist/resources/auth.js.map +1 -1
  14. package/dist/resources/events.d.ts +12 -0
  15. package/dist/resources/events.d.ts.map +1 -0
  16. package/dist/resources/events.js +17 -0
  17. package/dist/resources/events.js.map +1 -0
  18. package/dist/resources/hubs.d.ts +25 -5
  19. package/dist/resources/hubs.d.ts.map +1 -1
  20. package/dist/resources/hubs.js +28 -0
  21. package/dist/resources/hubs.js.map +1 -1
  22. package/dist/resources/memories.d.ts +5 -1
  23. package/dist/resources/memories.d.ts.map +1 -1
  24. package/dist/resources/memories.js +11 -4
  25. package/dist/resources/memories.js.map +1 -1
  26. package/dist/resources/settings.d.ts +2 -1
  27. package/dist/resources/settings.d.ts.map +1 -1
  28. package/dist/resources/settings.js +3 -0
  29. package/dist/resources/settings.js.map +1 -1
  30. package/dist/resources/topics.d.ts +8 -7
  31. package/dist/resources/topics.d.ts.map +1 -1
  32. package/dist/resources/topics.js +18 -12
  33. package/dist/resources/topics.js.map +1 -1
  34. package/dist/transport.d.ts +1 -0
  35. package/dist/transport.d.ts.map +1 -1
  36. package/dist/transport.js +53 -4
  37. package/dist/transport.js.map +1 -1
  38. package/dist/types.d.ts +188 -20
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +1 -1
@@ -8,17 +8,20 @@ export class TopicsResource {
8
8
  query: { hub_id: hubId },
9
9
  });
10
10
  }
11
- async get(id) {
12
- return this.req("GET", `/v1/topics/${id}`);
11
+ async get(id, hubId) {
12
+ return this.req("GET", `/v1/topics/${id}`, { hubId });
13
13
  }
14
- async create(params) {
15
- return this.req("POST", "/v1/topics", { body: params });
14
+ async create(params, hubId) {
15
+ return this.req("POST", "/v1/topics", { body: params, hubId });
16
16
  }
17
- async update(id, params) {
18
- return this.req("PATCH", `/v1/topics/${id}`, { body: params });
17
+ async update(id, params, hubId) {
18
+ return this.req("PATCH", `/v1/topics/${id}`, {
19
+ body: params,
20
+ hubId,
21
+ });
19
22
  }
20
- async delete(id) {
21
- await this.req("DELETE", `/v1/topics/${id}`);
23
+ async delete(id, hubId) {
24
+ await this.req("DELETE", `/v1/topics/${id}`, { hubId });
22
25
  }
23
26
  async listMemories(topicId, options) {
24
27
  return this.req("GET", `/v1/topics/${topicId}/memories`, {
@@ -26,19 +29,22 @@ export class TopicsResource {
26
29
  limit: options?.limit,
27
30
  cursor: options?.cursor,
28
31
  },
32
+ hubId: options?.hubId,
29
33
  });
30
34
  }
31
- async addMemory(topicId, memoryId, confidence) {
35
+ async addMemory(topicId, memoryId, confidence, hubId) {
32
36
  await this.req("POST", `/v1/topics/${topicId}/memories`, {
33
37
  body: { memory_id: memoryId, ...(confidence != null && { confidence }) },
38
+ hubId,
34
39
  });
35
40
  }
36
- async removeMemory(topicId, memoryId) {
37
- await this.req("DELETE", `/v1/topics/${topicId}/memories/${memoryId}`);
41
+ async removeMemory(topicId, memoryId, hubId) {
42
+ await this.req("DELETE", `/v1/topics/${topicId}/memories/${memoryId}`, { hubId });
38
43
  }
39
- async reorder(operations) {
44
+ async reorder(operations, hubId) {
40
45
  await this.req("POST", "/v1/topics/reorder", {
41
46
  body: { operations },
47
+ hubId,
42
48
  });
43
49
  }
44
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,GAAc;QAAd,QAAG,GAAH,GAAG,CAAW;IAAG,CAAC;IAE/C,KAAK,CAAC,IAAI,CAAC,KAAc;QACvB,OAAO,IAAI,CAAC,GAAG,CAAoB,KAAK,EAAE,YAAY,EAAE;YACtD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,GAAG,CAAQ,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAyB;QACpC,OAAO,IAAI,CAAC,GAAG,CAAQ,MAAM,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,MAAyB;QAChD,OAAO,IAAI,CAAC,GAAG,CAAQ,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,IAAI,CAAC,GAAG,CAAO,QAAQ,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,OAA6C;QAE7C,OAAO,IAAI,CAAC,GAAG,CACb,KAAK,EACL,cAAc,OAAO,WAAW,EAChC;YACE,KAAK,EAAE;gBACL,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,MAAM,EAAE,OAAO,EAAE,MAAM;aACxB;SACF,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CACb,OAAe,EACf,QAAgB,EAChB,UAAmB;QAEnB,MAAM,IAAI,CAAC,GAAG,CAAO,MAAM,EAAE,cAAc,OAAO,WAAW,EAAE;YAC7D,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE;SACzE,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,QAAgB;QAClD,MAAM,IAAI,CAAC,GAAG,CACZ,QAAQ,EACR,cAAc,OAAO,aAAa,QAAQ,EAAE,CAC7C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAmC;QAC/C,MAAM,IAAI,CAAC,GAAG,CAAO,MAAM,EAAE,oBAAoB,EAAE;YACjD,IAAI,EAAE,EAAE,UAAU,EAAE;SACrB,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,GAAc;QAAd,QAAG,GAAH,GAAG,CAAW;IAAG,CAAC;IAE/C,KAAK,CAAC,IAAI,CAAC,KAAc;QACvB,OAAO,IAAI,CAAC,GAAG,CAAoB,KAAK,EAAE,YAAY,EAAE;YACtD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU,EAAE,KAAc;QAClC,OAAO,IAAI,CAAC,GAAG,CAAQ,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAyB,EAAE,KAAc;QACpD,OAAO,IAAI,CAAC,GAAG,CAAQ,MAAM,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,MAAM,CACV,EAAU,EACV,MAAyB,EACzB,KAAc;QAEd,OAAO,IAAI,CAAC,GAAG,CAAQ,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE;YAClD,IAAI,EAAE,MAAM;YACZ,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAc;QACrC,MAAM,IAAI,CAAC,GAAG,CAAO,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,OAA6D;QAE7D,OAAO,IAAI,CAAC,GAAG,CACb,KAAK,EACL,cAAc,OAAO,WAAW,EAChC;YACE,KAAK,EAAE;gBACL,KAAK,EAAE,OAAO,EAAE,KAAK;gBACrB,MAAM,EAAE,OAAO,EAAE,MAAM;aACxB;YACD,KAAK,EAAE,OAAO,EAAE,KAAK;SACtB,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,KAAc;QAEd,MAAM,IAAI,CAAC,GAAG,CAAO,MAAM,EAAE,cAAc,OAAO,WAAW,EAAE;YAC7D,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE;YACxE,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,QAAgB,EAChB,KAAc;QAEd,MAAM,IAAI,CAAC,GAAG,CACZ,QAAQ,EACR,cAAc,OAAO,aAAa,QAAQ,EAAE,EAC5C,EAAE,KAAK,EAAE,CACV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CACX,UAAmC,EACnC,KAAc;QAEd,MAAM,IAAI,CAAC,GAAG,CAAO,MAAM,EAAE,oBAAoB,EAAE;YACjD,IAAI,EAAE,EAAE,UAAU,EAAE;YACpB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -6,6 +6,7 @@ export interface RequestOptions {
6
6
  }
7
7
  export interface StreamOptions extends RequestOptions {
8
8
  onEvent: (event: string, data: unknown) => void;
9
+ onClose?: () => void;
9
10
  }
10
11
  export interface DownloadOptions {
11
12
  hubId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CACtE;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EACxB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB,MAAM,MAAM,QAAQ,GAAG,CACrB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,KACnB,eAAe,CAAC;AAErB,MAAM,MAAM,UAAU,GAAG,CACvB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,KACtB,OAAO,CAAC,QAAQ,CAAC,CAAC;AA4CvB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwC;IAChE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,WAAW;IASzB,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,CAAC,CAAC;IA8EP,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IA2D1E,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,eAAe;CA6GnB"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CACtE;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,EACxB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB,MAAM,MAAM,QAAQ,GAAG,CACrB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,KACnB,eAAe,CAAC;AAErB,MAAM,MAAM,UAAU,GAAG,CACvB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,eAAe,KACtB,OAAO,CAAC,QAAQ,CAAC,CAAC;AA0DvB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwC;IAChE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,MAAM,EAAE,WAAW;IASzB,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,CAAC,CAAC;IAyFP,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAoE1E,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,eAAe;CAuHnB"}
package/dist/transport.js CHANGED
@@ -21,6 +21,18 @@ function createAuthProvider(config) {
21
21
  }
22
22
  return async () => ({});
23
23
  }
24
+ function summarizeResponseText(text) {
25
+ const normalized = text.replace(/\s+/g, " ").trim();
26
+ if (!normalized) {
27
+ return "";
28
+ }
29
+ return normalized.length > 120
30
+ ? `${normalized.slice(0, 117)}...`
31
+ : normalized;
32
+ }
33
+ function formatRequestLabel(method, url) {
34
+ return `${method.toUpperCase()} ${url}`;
35
+ }
24
36
  function buildQueryString(query) {
25
37
  if (!query) {
26
38
  return "";
@@ -63,6 +75,15 @@ export class ApiTransport {
63
75
  if (options?.hubId) {
64
76
  headers["X-Hub-ID"] = options.hubId;
65
77
  }
78
+ // Auto-detect and send client timezone for TZ-aware date handling
79
+ try {
80
+ const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
81
+ if (tz)
82
+ headers["X-Timezone"] = tz;
83
+ }
84
+ catch {
85
+ // Intl not available in some runtimes — skip silently
86
+ }
66
87
  let res;
67
88
  try {
68
89
  res = await this.fetchImpl(url, {
@@ -85,10 +106,14 @@ export class ApiTransport {
85
106
  json = JSON.parse(text);
86
107
  }
87
108
  catch {
109
+ const requestLabel = formatRequestLabel(method, url);
88
110
  if (res.status === 401) {
89
- throw new MemaxError("Not authenticated — run `memax login` first", "unauthorized", 401);
111
+ throw new MemaxError(`${requestLabel} returned 401 Unauthorized`, "unauthorized", 401);
90
112
  }
91
- throw new MemaxError(`API returned ${res.status} with non-JSON response`, "invalid_response", res.status);
113
+ const preview = summarizeResponseText(text);
114
+ throw new MemaxError(preview
115
+ ? `${requestLabel} returned ${res.status} with non-JSON response: ${preview}`
116
+ : `${requestLabel} returned ${res.status} with non-JSON response`, "invalid_response", res.status);
92
117
  }
93
118
  if (json.error) {
94
119
  const err = new MemaxError(json.error.message, json.error.code, res.status);
@@ -113,6 +138,14 @@ export class ApiTransport {
113
138
  if (options?.hubId) {
114
139
  headers["X-Hub-ID"] = options.hubId;
115
140
  }
141
+ try {
142
+ const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
143
+ if (tz)
144
+ headers["X-Timezone"] = tz;
145
+ }
146
+ catch {
147
+ // Intl not available — skip
148
+ }
116
149
  let res;
117
150
  try {
118
151
  res = await this.fetchImpl(url, {
@@ -129,7 +162,7 @@ export class ApiTransport {
129
162
  }
130
163
  const text = await res.text();
131
164
  if (!text) {
132
- throw new MemaxError(`API returned ${res.status} with an empty error response`, "invalid_response", res.status);
165
+ throw new MemaxError(`${formatRequestLabel("GET", url)} returned ${res.status} with an empty error response`, "invalid_response", res.status);
133
166
  }
134
167
  try {
135
168
  const json = JSON.parse(text);
@@ -142,7 +175,10 @@ export class ApiTransport {
142
175
  throw error;
143
176
  }
144
177
  }
145
- throw new MemaxError(`API returned ${res.status} with non-JSON response`, "invalid_response", res.status);
178
+ const preview = summarizeResponseText(text);
179
+ throw new MemaxError(preview
180
+ ? `${formatRequestLabel("GET", url)} returned ${res.status} with non-JSON response: ${preview}`
181
+ : `${formatRequestLabel("GET", url)} returned ${res.status} with non-JSON response`, "invalid_response", res.status);
146
182
  }
147
183
  stream(method, path, options) {
148
184
  const controller = new AbortController();
@@ -158,6 +194,14 @@ export class ApiTransport {
158
194
  if (options.hubId) {
159
195
  headers["X-Hub-ID"] = options.hubId;
160
196
  }
197
+ try {
198
+ const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
199
+ if (tz)
200
+ headers["X-Timezone"] = tz;
201
+ }
202
+ catch {
203
+ // Intl not available — skip
204
+ }
161
205
  let res;
162
206
  try {
163
207
  res = await this.fetchImpl(url, {
@@ -239,6 +283,11 @@ export class ApiTransport {
239
283
  });
240
284
  }
241
285
  }
286
+ finally {
287
+ if (!controller.signal.aborted) {
288
+ options.onClose?.();
289
+ }
290
+ }
242
291
  })();
243
292
  return controller;
244
293
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -21,11 +21,12 @@ export interface MemaxConfig {
21
21
  }
22
22
  export type AskModel = "auto" | "haiku" | "sonnet";
23
23
  export type Locale = "en" | "zh";
24
+ export type MemoryKind = "episodic" | "semantic" | "procedural" | "rationale";
25
+ export type MemoryStability = "volatile" | "evolving" | "stable";
24
26
  export interface PushOptions {
25
27
  title?: string;
26
- /** Context hint to help AI process this memory (e.g. "This is my resume"). Improves categorization, summarization, and retrieval. */
28
+ /** Context hint to help AI process this memory (e.g. "This is my resume"). Improves summarization and retrieval. */
27
29
  hint?: string;
28
- category?: string;
29
30
  tags?: string[];
30
31
  source?: string;
31
32
  /** Agent identity: "claude-code", "cursor", "copilot", etc. Auto-set by hooks/MCP. */
@@ -39,27 +40,34 @@ export interface PushOptions {
39
40
  }
40
41
  export interface RecallOptions {
41
42
  limit?: number;
42
- category?: string;
43
+ kind?: MemoryKind;
43
44
  tags?: string[];
44
45
  source?: string;
45
46
  includeArchived?: boolean;
46
47
  workingDir?: string;
47
48
  projectContext?: Record<string, string>;
49
+ /** Active hub ranking hint. Recall still searches every hub the token can access. */
48
50
  hubId?: string;
49
51
  }
50
52
  export interface AskOptions {
51
53
  limit?: number;
52
54
  model?: AskModel;
53
55
  locale?: Locale;
56
+ /** Active hub ranking hint for Ask retrieval. Ask still searches every hub the token can access. */
54
57
  hubId?: string;
55
58
  }
56
59
  export interface ListMemoriesOptions {
57
60
  limit?: number;
58
61
  cursor?: string;
59
62
  sort?: "newest" | "relevant";
60
- category?: string;
63
+ kind?: MemoryKind;
64
+ createdAfter?: string;
65
+ actor?: string;
61
66
  hubId?: string;
62
67
  }
68
+ export interface MemoryActorCounts {
69
+ [actor: string]: number;
70
+ }
63
71
  export type MemoryAttachmentKind = "original";
64
72
  export interface Memory {
65
73
  id: string;
@@ -71,7 +79,10 @@ export interface Memory {
71
79
  content_hash: string;
72
80
  summary: string;
73
81
  hint?: string;
74
- category: string;
82
+ kind: MemoryKind;
83
+ stability: MemoryStability;
84
+ retrieval_weight: number;
85
+ access_intents?: Record<string, number>;
75
86
  tags: string[];
76
87
  boundary: string;
77
88
  state: string;
@@ -91,10 +102,14 @@ export interface Memory {
91
102
  accessed_at: string;
92
103
  author_name?: string;
93
104
  author_avatar_url?: string;
105
+ hub_name?: string;
106
+ agent_display_name?: string;
107
+ agent_icon?: string;
94
108
  }
95
109
  export interface MemoryUpdateInput {
96
110
  title?: string;
97
- category?: string;
111
+ kind?: MemoryKind;
112
+ stability?: MemoryStability;
98
113
  tags?: string[];
99
114
  }
100
115
  export type ShareMemoryResult = Memory;
@@ -125,6 +140,10 @@ export interface UploadIntent {
125
140
  size_bytes: number;
126
141
  expires_in: number;
127
142
  }
143
+ export interface RelatedMemory {
144
+ memory: Memory;
145
+ similarity: number;
146
+ }
128
147
  export interface RecalledMemory {
129
148
  id: string;
130
149
  title: string;
@@ -133,9 +152,12 @@ export interface RecalledMemory {
133
152
  chunk_content: string;
134
153
  heading_chain: string;
135
154
  relevance_score: number;
136
- category: string;
155
+ kind: MemoryKind;
156
+ stability: MemoryStability;
137
157
  source: string;
138
158
  age: string;
159
+ created_at?: string;
160
+ author_name?: string;
139
161
  hub_id?: string;
140
162
  hub_name?: string;
141
163
  topic_id?: string;
@@ -146,14 +168,15 @@ export interface SearchResult {
146
168
  memory_id: string;
147
169
  title: string;
148
170
  snippet: string;
149
- category: string;
171
+ kind: MemoryKind;
172
+ stability: MemoryStability;
150
173
  heading_chain?: string;
151
174
  }
152
175
  export interface RecallResult {
153
176
  memories: RecalledMemory[];
154
177
  query_metadata: {
155
178
  intent: string;
156
- categories_searched?: string[];
179
+ kinds_searched?: MemoryKind[];
157
180
  total_candidates: number;
158
181
  latency_ms: number;
159
182
  };
@@ -164,7 +187,7 @@ export interface AskResult {
164
187
  index: number;
165
188
  memory_id: string;
166
189
  title: string;
167
- category: string;
190
+ kind: MemoryKind;
168
191
  }[];
169
192
  sources: RecalledMemory[];
170
193
  metadata: {
@@ -180,6 +203,7 @@ export interface ListMemoriesResult {
180
203
  next_cursor: string;
181
204
  has_more: boolean;
182
205
  total: number;
206
+ actors?: MemoryActorCounts;
183
207
  }
184
208
  export type Scope = "global" | `project:${string}`;
185
209
  export interface AgentConfig {
@@ -360,14 +384,26 @@ export interface AgentSessionUpsertRequest {
360
384
  local_path?: string;
361
385
  file_ref: FileRef;
362
386
  }
387
+ export type AuthProviderName = "github" | "google";
363
388
  export interface User {
389
+ id: string;
364
390
  name: string;
365
391
  email: string;
366
392
  plan: string;
367
393
  display_name?: string;
394
+ avatar_url?: string;
395
+ }
396
+ export interface Usage {
397
+ user_id: string;
398
+ period_start: string;
399
+ period_end: string;
400
+ push_count: number;
401
+ recall_count: number;
402
+ ask_count: number;
368
403
  }
369
404
  export interface MeResponse {
370
405
  user: User;
406
+ connected_providers?: AuthProviderName[];
371
407
  hubs?: Array<{
372
408
  hub: {
373
409
  id: string;
@@ -376,23 +412,40 @@ export interface MeResponse {
376
412
  };
377
413
  role: HubRole;
378
414
  }>;
379
- usage?: {
380
- push_count: number;
381
- recall_count: number;
382
- ask_count: number;
383
- period_start: string;
384
- };
415
+ usage?: Usage;
385
416
  }
386
417
  export interface AuthTokenPair {
387
418
  access_token: string;
388
419
  refresh_token: string;
389
420
  expires_in: number;
390
421
  }
422
+ export interface ImpersonationResult {
423
+ access_token: string;
424
+ expires_in: number;
425
+ target_id: string;
426
+ impersonated: true;
427
+ }
428
+ export interface AuthIdentity {
429
+ id: string;
430
+ user_id: string;
431
+ provider: AuthProviderName;
432
+ provider_id: string;
433
+ provider_email: string;
434
+ provider_name: string;
435
+ created_at: string;
436
+ }
437
+ export interface UnlinkProviderResult {
438
+ status: "unlinked";
439
+ }
391
440
  export interface ApiKeyCreateOptions {
392
441
  name: string;
393
442
  hubId?: string;
443
+ hubIds?: string[];
394
444
  agentName?: string;
395
445
  expiresInDays?: number;
446
+ scopes?: string[];
447
+ permissions?: string[];
448
+ trustLevel?: "public" | "standard" | "elevated" | "admin";
396
449
  }
397
450
  export interface ApiKey {
398
451
  id: string;
@@ -401,6 +454,10 @@ export interface ApiKey {
401
454
  prefix: string;
402
455
  scope: string;
403
456
  hub_id: string | null;
457
+ hub_ids?: string[];
458
+ hub_scope_mode?: "all_accessible" | "hub_allowlist";
459
+ default_permissions?: string[];
460
+ trust_level?: "public" | "standard" | "elevated" | "admin";
404
461
  expires_at: string | null;
405
462
  created_at: string;
406
463
  }
@@ -411,6 +468,10 @@ export interface ApiKeyListItem {
411
468
  scopes: string[];
412
469
  scope: string;
413
470
  hub_id: string | null;
471
+ hub_ids?: string[];
472
+ hub_scope_mode?: "all_accessible" | "hub_allowlist";
473
+ default_permissions?: string[];
474
+ trust_level?: "public" | "standard" | "elevated" | "admin";
414
475
  agent_name?: string;
415
476
  expires_at: string | null;
416
477
  last_used: string | null;
@@ -423,21 +484,65 @@ export interface UpdateProfileResult {
423
484
  export interface DeleteAllDataResult {
424
485
  deleted: boolean;
425
486
  }
487
+ export interface OAuthConsentHub {
488
+ id: string;
489
+ name: string;
490
+ slug: string;
491
+ role: HubRole;
492
+ hub_type: HubType;
493
+ memory_count: number;
494
+ checked: boolean;
495
+ disabled: boolean;
496
+ capability_label: string;
497
+ supported_permissions: string[];
498
+ }
499
+ export interface OAuthConsentPermission {
500
+ value: string;
501
+ label: string;
502
+ description: string;
503
+ checked: boolean;
504
+ /**
505
+ * Essential permissions are pre-checked and locked in the consent UI —
506
+ * the agent cannot meaningfully operate without them. Server marks
507
+ * memax:read as essential for any recall-capable agent.
508
+ */
509
+ essential?: boolean;
510
+ }
511
+ export interface OAuthConsentRequest {
512
+ session_id: string;
513
+ csrf_token: string;
514
+ client_name: string;
515
+ agent_name: string;
516
+ resource: string;
517
+ submit_url: string;
518
+ expires_at: string;
519
+ hubs: OAuthConsentHub[];
520
+ permissions: OAuthConsentPermission[];
521
+ not_requested: string[];
522
+ }
426
523
  export type HubRole = "owner" | "admin" | "contributor" | "viewer";
427
524
  export type HubType = "personal" | "team";
525
+ export type HubHeaderState = "first_time" | "review_needed" | "dream_deltas" | "inbox_overflow" | "return_after_absence" | "team_activity" | "clean";
526
+ export type HubTimeBucket = "deep-night" | "morning" | "noon" | "afternoon" | "evening" | "late-night";
527
+ export type HubGreetingKey = "firstTimeA" | "firstTimeB" | "reviewNeededA" | "reviewNeededB" | "teamReviewA" | "teamReviewB" | "dreamDeltasA" | "dreamDeltasB" | "inboxOverflowA" | "inboxOverflowB" | "returnAfterAbsenceA" | "returnAfterAbsenceB" | "morningDreamA" | "morningDreamB" | "teamMorningA" | "teamMorningB" | "morningCleanA" | "morningCleanB" | "afternoonCleanA" | "afternoonCleanB" | "deepNightCleanA" | "deepNightCleanB" | "timeEveningA" | "timeEveningB" | "timeNoonA" | "timeNoonB" | "timeAfternoonA" | "timeAfternoonB";
528
+ export type ContributorDeletePolicy = "none" | "own" | "any";
529
+ export type HubAccent = "violet" | "blue" | "green" | "amber" | "rose" | "slate";
428
530
  export interface Hub {
429
531
  id: string;
430
532
  name: string;
533
+ icon?: string;
534
+ accent?: HubAccent;
431
535
  slug: string;
432
536
  hub_type: HubType;
433
537
  owner_id: string;
434
538
  allow_contributor_topics?: boolean;
435
539
  allow_contributor_dreams?: boolean;
540
+ contributor_delete_policy?: ContributorDeletePolicy;
436
541
  }
437
542
  export interface HubWithRole {
438
543
  hub: Hub;
439
544
  role: HubRole;
440
- memory_count?: number;
545
+ memory_count: number;
441
546
  }
442
547
  export interface HubMember {
443
548
  user_id: string;
@@ -458,9 +563,59 @@ export interface HubInvite {
458
563
  accepted_by?: string | null;
459
564
  created_at: string;
460
565
  }
566
+ export interface HubOwnershipTransfer {
567
+ id: string;
568
+ hub_id: string;
569
+ initiated_by: string;
570
+ target_user_id: string;
571
+ accepted_at?: string | null;
572
+ cancelled_at?: string | null;
573
+ expires_at: string;
574
+ created_at: string;
575
+ target_user_name?: string;
576
+ target_user_email?: string;
577
+ }
461
578
  export interface HubUpdateParams {
462
579
  name?: string;
580
+ icon?: string;
581
+ accent?: HubAccent;
463
582
  slug?: string;
583
+ allow_contributor_topics?: boolean;
584
+ allow_contributor_dreams?: boolean;
585
+ contributor_delete_policy?: ContributorDeletePolicy;
586
+ }
587
+ export interface HubDetailResult {
588
+ hub: Hub;
589
+ members: HubMember[];
590
+ role: HubRole;
591
+ pending_transfer?: HubOwnershipTransfer | null;
592
+ }
593
+ export interface HubSummaryStats {
594
+ memories: number;
595
+ topics: number;
596
+ inbox: number;
597
+ pending_review: number;
598
+ members?: number;
599
+ dream_topics?: number;
600
+ team_activity?: number;
601
+ }
602
+ export interface HubSummaryHeader {
603
+ state: HubHeaderState;
604
+ greeting_key: HubGreetingKey;
605
+ greeting_params: Record<string, string>;
606
+ time_bucket: HubTimeBucket;
607
+ }
608
+ export interface HubSummaryMember {
609
+ user_id: string;
610
+ user_name: string;
611
+ user_avatar_url?: string;
612
+ }
613
+ export interface HubSummary {
614
+ hub: Hub;
615
+ role: HubRole;
616
+ stats: HubSummaryStats;
617
+ members_preview?: HubSummaryMember[];
618
+ header: HubSummaryHeader;
464
619
  }
465
620
  export interface InviteDetails {
466
621
  invite: HubInvite;
@@ -477,9 +632,10 @@ export interface Settings {
477
632
  dreams_merge_enabled: boolean;
478
633
  dreams_archive_enabled: boolean;
479
634
  dreams_organize_enabled?: boolean;
480
- dreams_excluded_categories: string[];
635
+ dreams_excluded_kinds: MemoryKind[];
481
636
  dreams_similarity_threshold: number;
482
637
  dreams_staleness_days: number;
638
+ hub_header_aurora_mode?: "none" | "signature" | "time";
483
639
  notifications_enabled: boolean;
484
640
  theme: string;
485
641
  [key: string]: unknown;
@@ -497,12 +653,24 @@ export interface Topic {
497
653
  user_modified: boolean;
498
654
  created_at: string;
499
655
  updated_at: string;
656
+ activity_summary?: TopicActivitySummary;
657
+ }
658
+ export interface TopicActivityContributor {
659
+ user_id: string;
660
+ user_name: string;
661
+ user_avatar_url?: string;
662
+ }
663
+ export interface TopicActivitySummary {
664
+ window_days: number;
665
+ memory_count: number;
666
+ contributor_count: number;
667
+ contributors_preview?: TopicActivityContributor[];
500
668
  }
501
669
  export interface TopicTree extends Topic {
502
670
  memory_count: number;
503
671
  total_memory_count: number;
504
672
  children: TopicTree[];
505
- category_dots?: string[];
673
+ kind_dots?: MemoryKind[];
506
674
  }
507
675
  export interface TopicListResponse {
508
676
  topics: TopicTree[];
@@ -536,7 +704,7 @@ export interface TopicMemoriesResponse {
536
704
  export type DreamRunMode = "maintenance" | "bootstrap";
537
705
  export type DreamRunStatus = "running" | "completed" | "failed";
538
706
  export type DreamActionType = "merge" | "contradiction" | "archive" | "organize" | "restructure";
539
- export type ReviewType = "contradiction" | "stale" | "proposal";
707
+ export type ReviewType = "contradiction" | "stale" | "proposal" | "low_confidence";
540
708
  export type ReviewStatus = "pending" | "resolved" | "dismissed";
541
709
  export interface DreamRun {
542
710
  id: string;