memax-cli 0.1.0-alpha.31 → 0.1.0-alpha.33

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.
@@ -4,12 +4,25 @@ interface AgentSessionLocation {
4
4
  filePath: string;
5
5
  scope: string;
6
6
  sessionType: string;
7
+ projectRoot?: string;
8
+ contentHash?: string;
7
9
  }
8
10
  interface AgentSessionPlacement {
9
11
  kind: "present" | "restorable" | "different_project" | "unresolved";
10
12
  path?: string;
11
13
  reason: string;
12
14
  }
15
+ interface SessionProjectContext {
16
+ scope: string;
17
+ projectRoot?: string;
18
+ }
19
+ export declare function hashPortableSessionContent(agent: string, content: Buffer, projectRoot?: string): string;
20
+ export declare function computeSessionProjectContext(agent: string, path: string, fallbackProjectRoot?: string | null): SessionProjectContext;
21
+ export declare function materializeAgentSessionContent(agent: string, content: Buffer, options: {
22
+ scope: string;
23
+ currentProjectRootPath: string;
24
+ writePath: string;
25
+ }): Buffer;
13
26
  export declare function syncAgentSessionsCommand(options?: {
14
27
  push?: boolean;
15
28
  pull?: boolean;
@@ -21,6 +34,7 @@ export declare function resolveAgentSessionWritePath(agent: string, filePath: st
21
34
  cwd?: string;
22
35
  home?: string;
23
36
  currentProjectScope?: string;
37
+ currentProjectRootPath?: string;
24
38
  }): string | null;
25
39
  export declare function classifyAgentSessionPlacement(agent: string, filePath: string, scope: string, options?: {
26
40
  cwd?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-sessions.d.ts","sourceRoot":"","sources":["../../src/commands/agent-sessions.ts"],"names":[],"mappings":"AA4BA,UAAU,oBAAoB;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,SAAS,GAAG,YAAY,GAAG,mBAAmB,GAAG,YAAY,CAAC;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,GACL,OAAO,CAAC,IAAI,CAAC,CAoZf;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0B9D;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAmHhE;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CA8EhE;AAuHD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACzB,GACL,MAAM,GAAG,IAAI,CAmDf;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC3C,GACL,qBAAqB,CAuBvB"}
1
+ {"version":3,"file":"agent-sessions.d.ts","sourceRoot":"","sources":["../../src/commands/agent-sessions.ts"],"names":[],"mappings":"AA8BA,UAAU,oBAAoB;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,SAAS,GAAG,YAAY,GAAG,mBAAmB,GAAG,YAAY,CAAC;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA6GD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAGR;AAoDD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,GAClC,qBAAqB,CAYvB;AAmBD,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACP,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB,EAAE,MAAM,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB,GACA,MAAM,CAyBR;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,GACL,OAAO,CAAC,IAAI,CAAC,CA8Zf;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0B9D;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAmHhE;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CA8EhE;AAsID,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;CAC5B,GACL,MAAM,GAAG,IAAI,CAiEf;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAC3C,GACL,qBAAqB,CAuBvB"}
@@ -1,12 +1,183 @@
1
1
  import chalk from "chalk";
2
2
  import { createHash } from "node:crypto";
3
3
  import { existsSync, mkdirSync, readdirSync, readFileSync, rmSync, statSync, writeFileSync, } from "node:fs";
4
- import { dirname, join, relative } from "node:path";
4
+ import { basename, dirname, join, relative } from "node:path";
5
5
  import { homedir } from "node:os";
6
6
  import { getAuthHeaders, getClient } from "../lib/client.js";
7
- import { getProjectScope, resolveClaudeProjectFolder, resolveProjectScope, normalizeFilePath, } from "../lib/project-context.js";
7
+ import { getProjectScope, resolveClaudeProjectPath, resolveClaudeProjectFolder, resolveProjectRootPath, resolveProjectScope, normalizeFilePath, } from "../lib/project-context.js";
8
8
  import { getOrCreateDeviceID, loadConfig } from "../lib/config.js";
9
9
  import { ask, confirmDefault } from "../lib/prompt.js";
10
+ const PROJECT_ROOT_PLACEHOLDER = "__MEMAX_PROJECT_ROOT__";
11
+ function isWithinRoot(candidate, root) {
12
+ return candidate === root || candidate.startsWith(`${root}/`);
13
+ }
14
+ function replaceProjectRootPrefix(value, fromRoot, toRoot) {
15
+ if (!isWithinRoot(value, fromRoot))
16
+ return value;
17
+ if (value === fromRoot)
18
+ return toRoot;
19
+ return `${toRoot}${value.slice(fromRoot.length)}`;
20
+ }
21
+ function transformStructuredCwdFields(value, map) {
22
+ if (Array.isArray(value)) {
23
+ return value.map((item) => transformStructuredCwdFields(item, map));
24
+ }
25
+ if (!value || typeof value !== "object") {
26
+ return value;
27
+ }
28
+ const next = {};
29
+ for (const [key, child] of Object.entries(value)) {
30
+ if (key === "cwd" && typeof child === "string") {
31
+ next[key] = map(child);
32
+ continue;
33
+ }
34
+ next[key] = transformStructuredCwdFields(child, map);
35
+ }
36
+ return next;
37
+ }
38
+ function transformJsonLinesByCwd(content, map) {
39
+ const lines = content.toString("utf-8").split("\n");
40
+ const transformed = lines.map((line) => {
41
+ if (!line.trim())
42
+ return line;
43
+ try {
44
+ const parsed = JSON.parse(line);
45
+ return JSON.stringify(transformStructuredCwdFields(parsed, map));
46
+ }
47
+ catch {
48
+ return line;
49
+ }
50
+ });
51
+ return Buffer.from(transformed.join("\n"), "utf-8");
52
+ }
53
+ function transformJsonObjectByCwd(content, map) {
54
+ try {
55
+ const parsed = JSON.parse(content.toString("utf-8"));
56
+ return Buffer.from(`${JSON.stringify(transformStructuredCwdFields(parsed, map), null, 2)}\n`, "utf-8");
57
+ }
58
+ catch {
59
+ return content;
60
+ }
61
+ }
62
+ function canonicalizeSessionContent(agent, content, projectRoot) {
63
+ if (!projectRoot)
64
+ return content;
65
+ const map = (cwd) => replaceProjectRootPrefix(cwd, projectRoot, PROJECT_ROOT_PLACEHOLDER);
66
+ switch (agent) {
67
+ case "claude-code":
68
+ case "codex":
69
+ return transformJsonLinesByCwd(content, map);
70
+ case "gemini":
71
+ return transformJsonObjectByCwd(content, map);
72
+ default:
73
+ return content;
74
+ }
75
+ }
76
+ function renderPortableSessionContent(agent, content, sourceProjectRoot, targetProjectRoot) {
77
+ if (!sourceProjectRoot || !targetProjectRoot)
78
+ return content;
79
+ if (sourceProjectRoot === targetProjectRoot)
80
+ return content;
81
+ const map = (cwd) => replaceProjectRootPrefix(cwd, sourceProjectRoot, targetProjectRoot);
82
+ switch (agent) {
83
+ case "claude-code":
84
+ case "codex":
85
+ return transformJsonLinesByCwd(content, map);
86
+ case "gemini":
87
+ return transformJsonObjectByCwd(content, map);
88
+ default:
89
+ return content;
90
+ }
91
+ }
92
+ export function hashPortableSessionContent(agent, content, projectRoot) {
93
+ const canonical = canonicalizeSessionContent(agent, content, projectRoot);
94
+ return createHash("sha256").update(canonical).digest("hex");
95
+ }
96
+ function readStructuredSessionRootFromContent(agent, content) {
97
+ try {
98
+ const raw = content.toString("utf-8");
99
+ switch (agent) {
100
+ case "claude-code":
101
+ case "codex": {
102
+ for (const line of raw.split("\n")) {
103
+ if (!line.trim())
104
+ continue;
105
+ try {
106
+ const parsed = JSON.parse(line);
107
+ const cwd = typeof parsed?.cwd === "string"
108
+ ? parsed.cwd
109
+ : typeof parsed?.payload?.cwd === "string"
110
+ ? parsed.payload.cwd
111
+ : "";
112
+ if (cwd) {
113
+ return resolveProjectRootPath(cwd) ?? cwd;
114
+ }
115
+ }
116
+ catch { }
117
+ }
118
+ return null;
119
+ }
120
+ case "gemini": {
121
+ const parsed = JSON.parse(raw);
122
+ const cwd = typeof parsed?.cwd === "string" ? parsed.cwd : "";
123
+ if (cwd) {
124
+ return resolveProjectRootPath(cwd) ?? cwd;
125
+ }
126
+ return null;
127
+ }
128
+ default:
129
+ return null;
130
+ }
131
+ }
132
+ catch {
133
+ return null;
134
+ }
135
+ }
136
+ function readStructuredSessionRoot(agent, path) {
137
+ try {
138
+ return readStructuredSessionRootFromContent(agent, readFileSync(path));
139
+ }
140
+ catch {
141
+ return null;
142
+ }
143
+ }
144
+ export function computeSessionProjectContext(agent, path, fallbackProjectRoot) {
145
+ const projectRoot = fallbackProjectRoot ?? readStructuredSessionRoot(agent, path) ?? undefined;
146
+ if (!projectRoot) {
147
+ return { scope: "global" };
148
+ }
149
+ const resolvedRoot = resolveProjectRootPath(projectRoot) ?? projectRoot;
150
+ const scope = getProjectScope(resolvedRoot);
151
+ if (!scope.startsWith("project:")) {
152
+ return { scope: "global" };
153
+ }
154
+ return { scope, projectRoot: resolvedRoot };
155
+ }
156
+ function encodeClaudeProjectDir(projectRoot) {
157
+ return projectRoot.replace(/\//g, "-");
158
+ }
159
+ function ensureGeminiProjectDir(home, currentProjectRootPath, scope) {
160
+ const existing = findGeminiProjectDir(home, scope);
161
+ if (existing)
162
+ return existing;
163
+ const dirName = `${basename(currentProjectRootPath)}-${createHash("sha256").update(scope).digest("hex").slice(0, 8)}`;
164
+ const projectDir = join(home, ".gemini", "tmp", dirName);
165
+ mkdirSync(projectDir, { recursive: true });
166
+ return projectDir;
167
+ }
168
+ export function materializeAgentSessionContent(agent, content, options) {
169
+ let next = content;
170
+ if (options.scope.startsWith("project:")) {
171
+ const sourceProjectRoot = readStructuredSessionRootFromContent(agent, content);
172
+ next = renderPortableSessionContent(agent, next, sourceProjectRoot ?? undefined, options.currentProjectRootPath);
173
+ }
174
+ if (agent === "gemini" && options.scope.startsWith("project:")) {
175
+ const projectDir = dirname(dirname(options.writePath));
176
+ mkdirSync(projectDir, { recursive: true });
177
+ writeFileSync(join(projectDir, ".project_root"), `${options.currentProjectRootPath}\n`);
178
+ }
179
+ return next;
180
+ }
10
181
  export async function syncAgentSessionsCommand(options = {}) {
11
182
  console.log(chalk.bold("\n Memax Session Sync\n"));
12
183
  const cwd = process.cwd();
@@ -14,6 +185,7 @@ export async function syncAgentSessionsCommand(options = {}) {
14
185
  const deviceID = getOrCreateDeviceID();
15
186
  const projectScopeResolution = resolveProjectScope(cwd);
16
187
  const currentProjectScope = projectScopeResolution.scope;
188
+ const currentProjectRootPath = resolveProjectRootPath(cwd) ?? cwd;
17
189
  const locations = discoverAgentSessions();
18
190
  const localSessions = locations
19
191
  .filter((loc) => existsSync(loc.path))
@@ -22,7 +194,7 @@ export async function syncAgentSessionsCommand(options = {}) {
22
194
  return {
23
195
  loc,
24
196
  content,
25
- hash: createHash("sha256").update(content).digest("hex"),
197
+ hash: hashPortableSessionContent(loc.agent, content, loc.projectRoot),
26
198
  size: statSync(loc.path).size,
27
199
  };
28
200
  });
@@ -76,6 +248,7 @@ export async function syncAgentSessionsCommand(options = {}) {
76
248
  cwd,
77
249
  home,
78
250
  currentProjectScope,
251
+ currentProjectRootPath,
79
252
  });
80
253
  };
81
254
  let pushed = 0;
@@ -119,12 +292,13 @@ export async function syncAgentSessionsCommand(options = {}) {
119
292
  continue;
120
293
  }
121
294
  try {
122
- const fileRef = await uploadLocalFile(local.loc.path, local.content, local.hash);
295
+ const fileRef = await uploadLocalFile(local.loc.path, local.content);
123
296
  await getClient().agentSessions.upsert({
124
297
  agent: action.agent,
125
298
  file_path: action.file_path,
126
299
  scope: action.scope,
127
300
  session_type: local.loc.sessionType,
301
+ content_hash: local.hash,
128
302
  device_id: deviceID,
129
303
  local_path: local.loc.path,
130
304
  file_ref: fileRef,
@@ -169,7 +343,11 @@ export async function syncAgentSessionsCommand(options = {}) {
169
343
  const session = await getClient().agentSessions.get(action.session_id);
170
344
  const bytes = await downloadAgentSession(action.session_id);
171
345
  mkdirSync(dirname(writePath), { recursive: true });
172
- writeFileSync(writePath, bytes);
346
+ writeFileSync(writePath, materializeAgentSessionContent(action.agent, bytes, {
347
+ scope: action.scope,
348
+ currentProjectRootPath,
349
+ writePath,
350
+ }));
173
351
  if (action.version) {
174
352
  ackSessions.push({
175
353
  agent: action.agent,
@@ -222,12 +400,13 @@ export async function syncAgentSessionsCommand(options = {}) {
222
400
  continue;
223
401
  }
224
402
  try {
225
- const fileRef = await uploadLocalFile(local.loc.path, local.content, local.hash);
403
+ const fileRef = await uploadLocalFile(local.loc.path, local.content);
226
404
  await getClient().agentSessions.upsert({
227
405
  agent: action.agent,
228
406
  file_path: action.file_path,
229
407
  scope: action.scope,
230
408
  session_type: local.loc.sessionType,
409
+ content_hash: local.hash,
231
410
  device_id: deviceID,
232
411
  local_path: local.loc.path,
233
412
  file_ref: fileRef,
@@ -250,7 +429,11 @@ export async function syncAgentSessionsCommand(options = {}) {
250
429
  const session = await getClient().agentSessions.get(action.session_id);
251
430
  const bytes = await downloadAgentSession(action.session_id);
252
431
  mkdirSync(dirname(writePath), { recursive: true });
253
- writeFileSync(writePath, bytes);
432
+ writeFileSync(writePath, materializeAgentSessionContent(action.agent, bytes, {
433
+ scope: action.scope,
434
+ currentProjectRootPath,
435
+ writePath,
436
+ }));
254
437
  if (action.version) {
255
438
  ackSessions.push({
256
439
  agent: action.agent,
@@ -466,26 +649,28 @@ function discoverAgentSessions() {
466
649
  const home = homedir();
467
650
  const config = loadConfig();
468
651
  const locations = [];
469
- const add = (agent, path, filePath, scope, sessionType) => {
652
+ const add = (agent, path, filePath, scope, sessionType, projectRoot) => {
470
653
  locations.push({
471
654
  agent,
472
655
  path,
473
656
  filePath: normalizeFilePath(filePath),
474
657
  scope,
475
658
  sessionType,
659
+ projectRoot,
476
660
  });
477
661
  };
478
662
  const claudeProjectsDir = join(home, ".claude", "projects");
479
663
  if (existsSync(claudeProjectsDir)) {
480
664
  for (const project of safeListDir(claudeProjectsDir)) {
665
+ const projectRoot = resolveClaudeProjectPath(project);
481
666
  const repoUrl = resolveClaudeProjectFolder(project);
482
- if (!repoUrl)
667
+ if (!repoUrl || !projectRoot)
483
668
  continue;
484
669
  const projectDir = join(claudeProjectsDir, project);
485
670
  for (const file of safeListDir(projectDir)) {
486
671
  if (!file.endsWith(".jsonl"))
487
672
  continue;
488
- add("claude-code", join(projectDir, file), `sessions/${file}`, `project:${repoUrl}`, "transcript");
673
+ add("claude-code", join(projectDir, file), `sessions/${file}`, `project:${repoUrl}`, "transcript", projectRoot);
489
674
  }
490
675
  }
491
676
  }
@@ -494,7 +679,8 @@ function discoverAgentSessions() {
494
679
  const codexSessionsRoot = join(home, ".codex", "sessions");
495
680
  if (existsSync(codexSessionsRoot)) {
496
681
  for (const file of walkFiles(codexSessionsRoot, (entry) => entry.endsWith(".jsonl"))) {
497
- add("codex", file, join("sessions", relative(codexSessionsRoot, file)), "global", "transcript");
682
+ const ctx = computeSessionProjectContext("codex", file);
683
+ add("codex", file, join("sessions", relative(codexSessionsRoot, file)), ctx.scope, "transcript", ctx.projectRoot);
498
684
  }
499
685
  }
500
686
  const geminiTmpRoot = join(home, ".gemini", "tmp");
@@ -504,7 +690,8 @@ function discoverAgentSessions() {
504
690
  const projectRootPath = readProjectRootMarker(join(projectDir, ".project_root"));
505
691
  if (!projectRootPath)
506
692
  continue;
507
- const scope = getProjectScope(projectRootPath);
693
+ const resolvedProjectRoot = resolveProjectRootPath(projectRootPath) ?? projectRootPath;
694
+ const scope = getProjectScope(resolvedProjectRoot);
508
695
  if (!scope.startsWith("project:"))
509
696
  continue;
510
697
  const chatsDir = join(projectDir, "chats");
@@ -513,7 +700,7 @@ function discoverAgentSessions() {
513
700
  for (const file of safeListDir(chatsDir)) {
514
701
  if (!file.endsWith(".json"))
515
702
  continue;
516
- add("gemini", join(chatsDir, file), `chats/${file}`, scope, "session");
703
+ add("gemini", join(chatsDir, file), `chats/${file}`, scope, "session", resolvedProjectRoot);
517
704
  }
518
705
  }
519
706
  }
@@ -553,6 +740,7 @@ export function resolveAgentSessionWritePath(agent, filePath, scope, options = {
553
740
  const cwd = options.cwd ?? process.cwd();
554
741
  const home = options.home ?? homedir();
555
742
  const currentProjectScope = options.currentProjectScope ?? getProjectScope(cwd);
743
+ const currentProjectRootPath = options.currentProjectRootPath ?? resolveProjectRootPath(cwd) ?? cwd;
556
744
  const normalized = normalizeFilePath(filePath);
557
745
  if (scope === "global") {
558
746
  switch (agent) {
@@ -572,6 +760,11 @@ export function resolveAgentSessionWritePath(agent, filePath, scope, options = {
572
760
  return null;
573
761
  }
574
762
  switch (agent) {
763
+ case "codex":
764
+ if (normalized.startsWith("sessions/")) {
765
+ return join(home, ".codex", normalized);
766
+ }
767
+ return null;
575
768
  case "claude-code": {
576
769
  if (!normalized.startsWith("sessions/"))
577
770
  return null;
@@ -582,14 +775,12 @@ export function resolveAgentSessionWritePath(agent, filePath, scope, options = {
582
775
  return join(claudeProjectsDir, project, normalized.replace(/^sessions\//, ""));
583
776
  }
584
777
  }
585
- return null;
778
+ return join(claudeProjectsDir, encodeClaudeProjectDir(currentProjectRootPath), normalized.replace(/^sessions\//, ""));
586
779
  }
587
780
  case "gemini": {
588
781
  if (!normalized.startsWith("chats/"))
589
782
  return null;
590
- const projectDir = findGeminiProjectDir(home, scope);
591
- if (!projectDir)
592
- return null;
783
+ const projectDir = ensureGeminiProjectDir(home, currentProjectRootPath, scope);
593
784
  return join(projectDir, normalized);
594
785
  }
595
786
  default:
@@ -619,9 +810,10 @@ export function classifyAgentSessionPlacement(agent, filePath, scope, options =
619
810
  reason: "no safe restore path on this machine",
620
811
  };
621
812
  }
622
- async function uploadLocalFile(path, content, sha256) {
813
+ async function uploadLocalFile(path, content) {
623
814
  const stat = statSync(path);
624
815
  const contentType = inferContentType(path);
816
+ const sha256 = createHash("sha256").update(content).digest("hex");
625
817
  const intent = await getClient().uploads.create({
626
818
  filename: basenameSafe(path),
627
819
  content_type: contentType,
@@ -1 +1 @@
1
- {"version":3,"file":"agent-sessions.js","sourceRoot":"","sources":["../../src/commands/agent-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-sessions.js","sourceRoot":"","sources":["../../src/commands/agent-sessions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
+ import { existsSync, readFileSync, rmSync } from "node:fs";
1
2
  import { join } from "node:path";
2
3
  import { describe, expect, it } from "vitest";
3
- import { classifyAgentSessionPlacement, resolveAgentSessionWritePath, } from "./agent-sessions.js";
4
+ import { classifyAgentSessionPlacement, hashPortableSessionContent, materializeAgentSessionContent, resolveAgentSessionWritePath, } from "./agent-sessions.js";
4
5
  describe("resolveAgentSessionWritePath", () => {
5
6
  const cwd = "/workspaces/memax";
6
7
  const home = "/home/tester";
@@ -26,6 +27,13 @@ describe("resolveAgentSessionWritePath", () => {
26
27
  currentProjectScope: "project:github.com/other/repo",
27
28
  })).toBeNull();
28
29
  });
30
+ it("resolves project-scoped Codex sessions into ~/.codex", () => {
31
+ expect(resolveAgentSessionWritePath("codex", "sessions/2026/04/07/example.jsonl", scope, {
32
+ cwd,
33
+ home,
34
+ currentProjectScope: scope,
35
+ })).toBe(join(home, ".codex", "sessions", "2026/04/07/example.jsonl"));
36
+ });
29
37
  });
30
38
  describe("classifyAgentSessionPlacement", () => {
31
39
  const cwd = "/workspaces/memax";
@@ -79,4 +87,47 @@ describe("classifyAgentSessionPlacement", () => {
79
87
  });
80
88
  });
81
89
  });
90
+ describe("portable session hashing", () => {
91
+ it("treats Codex cwd rewrites as the same logical session", () => {
92
+ const first = Buffer.from(`${JSON.stringify({
93
+ type: "session_meta",
94
+ payload: { cwd: "/workspaces/memax" },
95
+ })}\n`, "utf-8");
96
+ const second = Buffer.from(`${JSON.stringify({
97
+ type: "session_meta",
98
+ payload: { cwd: "/Users/alice/src/memax" },
99
+ })}\n`, "utf-8");
100
+ expect(hashPortableSessionContent("codex", first, "/workspaces/memax")).toBe(hashPortableSessionContent("codex", second, "/Users/alice/src/memax"));
101
+ });
102
+ });
103
+ describe("materializeAgentSessionContent", () => {
104
+ it("rewrites structured cwd fields for Codex restores", () => {
105
+ const content = Buffer.from(`${JSON.stringify({
106
+ type: "session_meta",
107
+ payload: { cwd: "/workspaces/memax" },
108
+ })}\n`, "utf-8");
109
+ const restored = materializeAgentSessionContent("codex", content, {
110
+ scope: "project:github.com/memaxlabs/memax",
111
+ currentProjectRootPath: "/Users/alice/src/memax",
112
+ writePath: "/Users/alice/.codex/sessions/example.jsonl",
113
+ }).toString("utf-8");
114
+ expect(restored).toContain("/Users/alice/src/memax");
115
+ expect(restored).not.toContain("/workspaces/memax");
116
+ });
117
+ it("writes Gemini project_root markers on restore", () => {
118
+ const content = Buffer.from('{"sessionId":"1"}\n', "utf-8");
119
+ const root = join("/tmp", "memax-agent-session-test");
120
+ const writePath = join(root, "chats", "session.json");
121
+ rmSync(root, { recursive: true, force: true });
122
+ materializeAgentSessionContent("gemini", content, {
123
+ scope: "project:github.com/memaxlabs/memax",
124
+ currentProjectRootPath: "/workspaces/memax",
125
+ writePath,
126
+ });
127
+ const markerPath = join(root, ".project_root");
128
+ expect(existsSync(markerPath)).toBe(true);
129
+ expect(readFileSync(markerPath, "utf-8")).toBe("/workspaces/memax\n");
130
+ rmSync(root, { recursive: true, force: true });
131
+ });
132
+ });
82
133
  //# sourceMappingURL=agent-sessions.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-sessions.test.js","sourceRoot":"","sources":["../../src/commands/agent-sessions.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-sessions.test.js","sourceRoot":"","sources":["../../src/commands/agent-sessions.test.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export interface ProjectScopeResolution {
16
16
  source: "memax_yml" | "git_remote" | "fallback";
17
17
  warning?: string;
18
18
  }
19
+ export declare function findNearestMemaxYmlPath(dir?: string): string | null;
19
20
  export declare function readMemaxYmlConfig(dir?: string): MemaxYmlConfig | undefined;
20
21
  /**
21
22
  * Get a canonical project scope string for the given directory.
@@ -26,6 +27,7 @@ export declare function readMemaxYmlConfig(dir?: string): MemaxYmlConfig | undef
26
27
  */
27
28
  export declare function getProjectScope(dir?: string): string;
28
29
  export declare function resolveProjectScope(dir?: string): ProjectScopeResolution;
30
+ export declare function resolveProjectRootPath(dir?: string): string | null;
29
31
  /**
30
32
  * Resolve a Claude Code mangled project folder name to a normalized repo URL.
31
33
  *
@@ -36,6 +38,7 @@ export declare function resolveProjectScope(dir?: string): ProjectScopeResolutio
36
38
  * Returns the normalized repo URL if the path exists and is a git repo, null otherwise.
37
39
  */
38
40
  export declare function resolveClaudeProjectFolder(mangledName: string): string | null;
41
+ export declare function resolveClaudeProjectPath(mangledName: string): string | null;
39
42
  /**
40
43
  * Normalize a file path for cross-platform consistency.
41
44
  * - Forward slashes only
@@ -1 +1 @@
1
- {"version":3,"file":"project-context.d.ts","sourceRoot":"","sources":["../../src/lib/project-context.ts"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpD;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA2BD,wBAAgB,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CA0B3E;AAiBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,sBAAsB,CA4BxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS7E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,mEAAmE;AACnE,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA4BzE;AAED,gEAAgE;AAChE,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAEpD"}
1
+ {"version":3,"file":"project-context.d.ts","sourceRoot":"","sources":["../../src/lib/project-context.ts"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBpD;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA2BD,wBAAgB,uBAAuB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEnE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CA0B3E;AAiBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,sBAAsB,CA4BxE;AAED,wBAAgB,sBAAsB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS7E;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI3E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,mEAAmE;AACnE,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA4BzE;AAED,gEAAgE;AAChE,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAEpD"}
@@ -1,6 +1,6 @@
1
1
  import { execSync } from "node:child_process";
2
2
  import { existsSync, readFileSync } from "node:fs";
3
- import { join } from "node:path";
3
+ import { dirname, join } from "node:path";
4
4
  // =============================================================================
5
5
  // Git URL normalization — canonical project identity for cross-machine sync
6
6
  // =============================================================================
@@ -53,6 +53,9 @@ function findNearestMemaxYml(startDir) {
53
53
  }
54
54
  return null;
55
55
  }
56
+ export function findNearestMemaxYmlPath(dir) {
57
+ return findNearestMemaxYml(dir ?? process.cwd());
58
+ }
56
59
  export function readMemaxYmlConfig(dir) {
57
60
  const cwd = dir ?? process.cwd();
58
61
  const ymlPath = findNearestMemaxYml(cwd);
@@ -129,6 +132,24 @@ export function resolveProjectScope(dir) {
129
132
  source: "fallback",
130
133
  };
131
134
  }
135
+ export function resolveProjectRootPath(dir) {
136
+ const cwd = dir ?? process.cwd();
137
+ const ymlPath = findNearestMemaxYml(cwd);
138
+ if (ymlPath) {
139
+ return dirname(ymlPath);
140
+ }
141
+ try {
142
+ const root = execSync("git rev-parse --show-toplevel", {
143
+ cwd,
144
+ encoding: "utf-8",
145
+ timeout: 2000,
146
+ stdio: ["pipe", "pipe", "pipe"],
147
+ }).trim();
148
+ return root || null;
149
+ }
150
+ catch { }
151
+ return null;
152
+ }
132
153
  /**
133
154
  * Resolve a Claude Code mangled project folder name to a normalized repo URL.
134
155
  *
@@ -149,6 +170,12 @@ export function resolveClaudeProjectFolder(mangledName) {
149
170
  }
150
171
  return resolution.scope.replace(/^project:/, "");
151
172
  }
173
+ export function resolveClaudeProjectPath(mangledName) {
174
+ const absolutePath = mangledName.replace(/-/g, "/");
175
+ if (!existsSync(absolutePath))
176
+ return null;
177
+ return absolutePath;
178
+ }
152
179
  /**
153
180
  * Normalize a file path for cross-platform consistency.
154
181
  * - Forward slashes only
@@ -1 +1 @@
1
- {"version":3,"file":"project-context.js","sourceRoot":"","sources":["../../src/lib/project-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-context.js","sourceRoot":"","sources":["../../src/lib/project-context.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memax-cli",
3
- "version": "0.1.0-alpha.31",
3
+ "version": "0.1.0-alpha.33",
4
4
  "description": "CLI for Memax — universal context & memory hub for AI agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -16,7 +16,7 @@
16
16
  "@modelcontextprotocol/sdk": "^1.12.1",
17
17
  "chalk": "^5.4.0",
18
18
  "commander": "^13.0.0",
19
- "memax-sdk": "^0.1.3"
19
+ "memax-sdk": "^0.1.4"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/node": "^25.5.0",