TẤT CẢ Thông báo node_repl failed to start trong Codex CLI

Codex CLI báo `node_repl` failed to start: đây là lỗi gì?

TL;DR: Nếu Codex terminal báo MCP startup incomplete (failed: node_repl), hãy nghĩ tới lỗi cấu hình MCP cục bộ trước khi nghĩ tới repo, test hay dependency. Trong ca lỗi này, node_repl trỏ tới một binary nằm trong Codex.app, nhưng app không còn trên máy, nên Codex không thể khởi động server đó.

Bạn mở Codex trong terminal và thấy cảnh báo lặp đi lặp lại:

⚠ MCP client for `node_repl` failed to start: MCP startup failed: No such file or directory (os error 2)
⚠ MCP startup incomplete (failed: node_repl)

Phản xạ tự nhiên là nghi Node.js, nghi project, hoặc nghi repo vừa sửa gì đó. Nhưng chuỗi lỗi này thường không nói về source code của bạn. Nó đang nói về một MCP server được đăng ký trong Codex nhưng không khởi động được.

Lỗi này thực ra đang nói gì?

Thông báo có hai lớp:

  • No such file or directory (os error 2) nghĩa là Codex cố chạy một file nhưng file đó không tồn tại tại đường dẫn đã cấu hình.
  • MCP startup incomplete (failed: node_repl) nghĩa là trong danh sách MCP server lúc khởi động, server tên node_repl thất bại.

Vì vậy, đây là bài toán kiểu:

  1. node_repl đã được đăng ký ở đâu đó.
  2. Lệnh hoặc binary của nó không còn hợp lệ.
  3. Codex vẫn mở được, nhưng startup không sạch.

Điểm quan trọng nhất: đây chưa phải bằng chứng repo của bạn có bug.

Dấu hiệu cho thấy đây là lỗi cấu hình cục bộ

Khi gặp lỗi này, tôi ưu tiên 5 lệnh đầu tiên:

codex mcp get node_repl
codex mcp list
codex doctor --summary
command -v node
rg -n 'node_repl|mcp_servers' ~/.codex/config.toml

Nếu command -v node vẫn trả về đường dẫn hợp lệ, nhưng codex mcp get node_repl lại cho thấy command đang trỏ tới một file khác, bạn đã có manh mối tốt: Node hệ thống còn, nhưng binary riêng của MCP thì mất.

Trong ca điển hình của bài này, node_repl được cấu hình tới một path kiểu:

/Applications/Codex.app/Contents/Resources/cua_node/bin/node_repl

Sau đó kiểm tra app:

find /Applications ~/Applications -maxdepth 2 -name 'Codex.app' 2>/dev/null

Không có kết quả. Như vậy nguyên nhân không còn mơ hồ nữa: config vẫn giữ một đường dẫn tuyệt đối cũ, nhưng Codex.app không còn tồn tại trên máy.

Vì sao lỗi này dễ làm bạn chẩn đoán sai?

Có ba cái bẫy rất thường gặp:

  • Tên node_repl làm nhiều người tưởng phải sửa Node.js hệ thống.
  • Cảnh báo hiện ngay khi mở Codex trong repo nên dễ bị nhầm là repo gây ra.
  • Codex vẫn chạy tiếp một phần, làm người dùng tưởng lỗi “nửa vời” và bỏ qua root cause.

Trong thực tế, node_repl ở đây là một MCP client đã đăng ký với Codex, không đồng nghĩa với việc node trong PATH đang hỏng. Hai thứ này có thể hoàn toàn độc lập.

Nếu bạn thấy thư mục ~/.codex/node_repl, cũng đừng vội kết luận đó là binary cần dùng. Kiểm tra nhanh:

file ~/.codex/node_repl

Nếu output nói đó là directory, bạn chỉ vừa tìm thấy thư mục state hoặc cache, không phải file thực thi.

Cách đọc vấn đề đúng ngay từ đầu

Hãy xem lỗi này như một decision tree nhỏ:

  • Nếu bạn chỉ dùng Codex trong terminal: nhiều khả năng chỉ cần gỡ MCP server stale.
  • Nếu bạn thật sự cần desktop/app integration: nhiều khả năng cần cài lại hoặc mở lại Codex App để path kia tồn tại trở lại.

Nói cách khác, hướng sửa nằm ở Codex CLI config, không nằm ở package.json, node_modules hay source tree của project.

Những việc không nên làm trước

Trước khi xác nhận MCP config, đừng phí thời gian vào các bước sau:

  • npm install
  • brew reinstall node
  • sửa file trong repo
  • xóa node_modules
  • đổ lỗi cho branch hiện tại

Các bước đó có thể làm môi trường của bạn nhiễu hơn, trong khi lỗi gốc vẫn còn nguyên trong ~/.codex/config.toml hoặc registry MCP của Codex.

Đọc thêm để không chẩn đoán sai lần nữa

Nếu bạn muốn nối bài này vào workflow AI coding rộng hơn, hãy đọc theo cụm thay vì đọc rời từng cảnh báo:

Nếu bạn muốn khôi phục phần desktop/runtime thay vì chỉ gỡ MCP stale, chính Codex CLI cũng gợi ý mở Codex App như một đường sửa hợp lệ khi app bundle còn thiếu trên máy.

Kết luận của phần 1

node_repl failed to start là một lỗi đáng chịu khó đọc kỹ, vì nó thường là lỗi cục bộ, outside-the-repo, và sửa được khá gọn. Khi bạn phân biệt được “repo issue” với “Codex runtime issue”, bạn sẽ bớt mất thời gian chạy sai hướng.

Bài tiếp theo đi vào đúng phần thực hành:

Liên kết bên ngoài được sử dụng trong bài viết

Liên kết nội bộ liên quan

Bản quyền & Ghi nguồn

Một phần dữ liệu trong bài viết được tham khảo từ Codex App. Mọi thương hiệu, tên sản phẩm và tài liệu gốc thuộc quyền sở hữu của chủ sở hữu tương ứng. Bài viết chỉ trích dẫn, tổng hợp và phân tích — không nhằm thay thế tài liệu chính thức.

FAQ - Câu hỏi thường gặp

Lỗi `node_repl failed to start` trong Codex CLI có phải lỗi project không?
Thường không. Đây thường là lỗi MCP server cục bộ của Codex, nhất là khi config trỏ tới một binary không còn tồn tại trên máy.
Thông báo `MCP startup incomplete` có làm Codex CLI hỏng hoàn toàn không?
Không nhất thiết. Nó cho biết ít nhất một MCP server khởi động thất bại; CLI vẫn có thể mở nhưng một phần tích hợp sẽ không dùng được.
Nếu `command -v node` vẫn ra đường dẫn, vì sao `node_repl` vẫn fail?
Vì `node_repl` có thể đang trỏ tới một binary riêng của Codex App, không phải `node` hệ thống. Node hệ thống còn sống không chứng minh MCP đó còn đúng đường dẫn.
Có nên sửa repo hoặc chạy `npm install` để xử lý lỗi này không?
Không nên bắt đầu từ đó. Hãy kiểm tra `codex mcp`, `codex doctor` và `~/.codex/config.toml` trước, vì đây thường là lỗi cấu hình bên ngoài repo.

Bình luận

Đang tải bình luận…

    Đăng nhập để tham gia thảo luận.

    Đăng nhập bằng Google để bình luận

    Chỉ dùng để bình luận. Không truy cập trình soạn thảo/CMS.