Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Bug]: mcode init fails with "Session Project could not be resolved" for relative directories (default ".")

Aperta
#504 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
node.js, typescript
Ambito
cli

Direzione di ricerca

Read packages/tui/src/cli/program.ts and the workspace handling in packages/tui/src/tui/launcher.ts; the issue traces how the relative directory reaches session creation. Run vitest run --config vitest.oss.config.mjs packages/tui/test/unit/tui-app.test.ts to check the default and explicit-relative-directory regression cases. Done means both forms pass an absolute workspace directory and mcode init succeeds in a fresh repository; the issue already includes a verified patch and tests.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

tui
Product or interface

CLI - interactive TUI

Version
  • @minimax-ai/code 0.6.12 (npm)
  • Reproduced from source at commit 9a935605956c4500e9cb415f29258e2887e97817 (repository package version 0.6.5)
  • Node.js 24.21.0; Bun 1.4.2 used for install/build
Platform

Linux

OS version and architecture

Linux 7.2.9 x64 (NixOS), foot 1.28.0 / Wayland

Issue area

File / workspace / path / encoding

Steps to reproduce
  1. cd into any existing git repository.
  2. Run mcode init with no argument, or with any relative directory: mcode init ., mcode init sub/dir.
  3. The TUI opens, submits /init, and the first turn fails immediately.

Minimal synthetic repro:

mkdir /tmp/repro && cd /tmp/repro
git init -q && echo x > README.md && git add -A && git commit -qm init
mcode init

Passing an absolute directory avoids the failure: mcode init "$PWD".

Expected and actual behavior

Expected: the Session workspace resolves to the target repository and the Runtime init skill runs to generate AGENTS.md.

Actual: Session creation fails with Session Project could not be resolved. /retry repeats the same failure because the same relative workspace value is reused, so the command never proceeds.

Redacted error summary

Released 0.6.12 bundle:

$ mcode init
Working | . | MCode
×  Error  The response failed.
   Reason: Session Project could not be resolved
   Run /retry to resend your last message. Your prompt is preserved.

Same failure on a source build at 9a93560, captured in a pty (workspace title is the literal .):

ARGS=['init'] ERROR_SEEN=True TITLES=['. ', '. ']
×  Error  The response failed.
   Reason: Session Project could not be resolved

After resolving the argument to an absolute path (patch below), the same harness:

/tmp/mcode-init-repro │ ⎇ master │ Auto │ … │ Context 98% left
└ Completed in 12s

The status bar shows the absolute workspace and the init skill completes normally. No /retry needed.

Root cause

Traced on main at 9a93560:

  1. packages/tui/src/cli/program.ts:96 — .argument('[directory]', 'project directory', '.') defaults to ".".
  2. packages/tui/src/cli/program.ts:97-98 — the action forwards the raw value: launchTui(withLane({ initialPrompt: '/init', workspaceDir: directory })).
  3. packages/tui/src/tui/launcher.ts:184 — const workspaceDir = options.workspaceDir ?? process.cwd(); falls back only for undefined, so "." survives.
  4. packages/local-runtime-v2/src/service/session-system/projects/repo/drizzle.ts:89-91 — canonicalProjectWorkspaceDir(workspaceDir) returns undefined, so no project row is created.
  5. packages/local-runtime-v2/src/service/session-system/shared/workspace.ts:9-17 → shared/path-normalization.ts:3-8 — normalizeAbsolutePath explicitly returns undefined when !flavor.isAbsolute(input).
  6. packages/local-runtime-v2/src/service/session-system/sessions/support/native-record-factory.ts:68-72 — Session creation throws workspace-required with the message above.

So the CLI accepts a relative path that the project layer can never canonicalize; exec --cwd and normal TUI launches are unaffected because they resolve to absolute paths earlier.

Proposed fix

Resolve the argument at the CLI boundary, where the invalid value originates:

diff --git a/packages/tui/src/cli/program.ts b/packages/tui/src/cli/program.ts
@@
+import { resolve } from 'node:path';
 import { Command, InvalidArgumentError } from 'commander';
@@
     .action((directory: string) =>
-      options.launchTui(withLane({ initialPrompt: '/init', workspaceDir: directory })),
+      options.launchTui(withLane({ initialPrompt: '/init', workspaceDir: resolve(directory) })),
     );

Two regression tests added in packages/tui/test/unit/tui-app.test.ts: the default init form and an explicit relative directory both assert an absolute workspaceDir.

Validation
  • vitest run --config vitest.oss.config.mjs packages/tui/test/unit/tui-app.test.ts — 366 passed (includes the 2 new tests).
  • tsc -p tsconfig.standalone.json --noEmit — exit 0, no output.
  • Manual, source build at 9a93560 + patch, fresh git repo: mcode init reaches the init skill and completes, error gone.
  • Not run: CI, macOS/Windows, and a rebuild of the published 0.6.12 bundle (the npm tarball does not map to this source revision).
Workaround

Use an absolute path: mcode init "$PWD" (or mcode init /path/to/repo). Alternatively launch mcode in the repository and type /init.

Additional context

I searched existing issues for the exact message and for mcode init / AGENTS.md init / relative-path reports and found no duplicate. Note the public repository currently reports package version 0.6.5 while npm ships 0.6.12; the failing code path is identical in both.

CONTRIBUTING.md limits code PRs to repository collaborators, so I am filing this as an issue with the verified patch. I am happy to submit a PR if you would like one, or to test a fix on another platform.

Before submitting
  • I have searched existing issues.
  • I have included my version and removed sensitive information.
Lingua principale
TypeScript
Stelle
2k
Fork
259
Merge medio
7h 56m
PR unite (30g)
126

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di MiniMax-AI/minimax-code

Tutte le issue di MiniMax-AI/minimax-code

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.