Lệnh
Mọi thứ coderemote làm được, từng lệnh một.
$ coderemote up # share this folder, print the pairing QR $ coderemote status # running agents and their terminal sessions $ coderemote kill <id>... | --all # end terminal sessions $ coderemote stop [--all] # stop the agent for this folder $ coderemote serve # share on 127.0.0.1 only, no tunnel $ coderemote requests [PORT] # requests that reached a previewed port $ coderemote request <ID> # headers and bodies of one request $ coderemote setup claude # follow Claude Code sessions in the app $ coderemote setup codex # the same for Codex $ coderemote devices # phones enrolled with this folder $ coderemote devices revoke <id> # remove one phone $ coderemote devices policy <level> # how strict Face ID is $ coderemote rotate-token # revoke every paired device $ coderemote tunnels # your Dev Tunnels account's tunnels $ coderemote tunnels delete <id> # delete ones nothing uses $ coderemote login # sign in to Dev Tunnels again $ coderemote update # install the latest version $ coderemote help # all options
up
Chia sẻ thư mục hiện tại qua một Microsoft Dev Tunnel riêng và in ra mã QR ghép đôi. Đây là lệnh bạn dùng hằng ngày.
$ coderemote up $ coderemote up --root ~/projects # share another folder $ coderemote up --web # also open it in VS Code on vscode.dev
Nó khởi động một agent nhỏ trên 127.0.0.1, đăng nhập Dev Tunnels nếu cần, kết nối ra relay và in ra ba thứ: thư mục đang chia sẻ, ai vào được, và các liên kết để ghép đôi. Nó chạy cho đến khi bạn nhấn Ctrl+C hoặc đóng terminal.
| Tùy chọn | Nó làm gì |
|---|---|
--root DIR | Chia sẻ DIR thay vì thư mục hiện tại. |
--port N | Lắng nghe trên cổng cục bộ N (mặc định 31580). Đổi khi một chương trình khác đang giữ cổng đó. |
--allow-anonymous | Bỏ qua bước đăng nhập tài khoản trên điện thoại: chỉ riêng pairing token là đủ để truy cập. Bí danh --no-auth. |
--web | Đồng thời chạy code tunnel của VS Code và in ra liên kết vscode.dev mở thư mục trong trình soạn thảo đầy đủ trên trình duyệt. |
--web dùng tunnel riêng của VS Code, không phải của Code Remote. Nó đăng nhập bằng tài khoản GitHub riêng và cho trình duyệt truy cập toàn bộ máy, không chỉ thư mục được chia sẻ. Nó cần lệnh code của VS Code trong PATH của bạn.
status
Liệt kê các agent đang chạy trên máy tính này và các phiên terminal trong mỗi agent. Bí danh ps.
$ coderemote status
/Users/you/projects/my-app (pid 4121, port 31580, up 2h)
https://…devtunnels.ms
3f9a2c1e zsh pid 4188 2h 1 attached
b71d04aa claude pid 5230 14m detached
Mỗi phiên hiện id, tiêu đề, process id, tuổi và việc có điện thoại nào đang kết nối vào lúc này hay không. Một phiên detached vẫn đang chạy; nó chờ app kết nối lại.
kill
Kết thúc các phiên terminal. Vài ký tự đầu của một id từ status là đủ.
$ coderemote kill b71d killed b71d04aa (claude) in /Users/you/projects/my-app $ coderemote kill --all # every session in every agent
Bản thân agent vẫn chạy; dùng stop cho việc đó.
stop
Dừng agent đang chia sẻ thư mục hiện tại, kết thúc tunnel và các phiên terminal của nó. Tiện khi up chạy trong một cửa sổ bạn không với tới được.
$ coderemote stop # the agent for this folder $ coderemote stop --all # every agent on this computer
serve
Khởi động agent chỉ trên 127.0.0.1, không tunnel, không đăng nhập, và in ra URL cục bộ cùng token. Dành cho kiểm thử và phát triển cục bộ; điện thoại của bạn không truy cập được.
$ coderemote serve
coderemote agent on http://127.0.0.1:31580
Sharing: /Users/you/projects/my-app
Token: …
requests
In ra các request đã đến một cổng bạn xem trước từ app, cùng nhật ký mà app hiển thị. Nó được làm cho coding agent trong terminal, như Claude Code hay Codex: bảo nó chạy coderemote requests và nó thấy được trang của bạn hoặc một webhook thực sự đã gửi gì, và server của bạn đã trả lời gì. Cần coderemote 0.3.0 trở lên.
$ coderemote requests #41 200 GET /api/me 8 ms 212 B 10:20:31 #42 401 POST /api/orders 5 ms 38 B 10:20:33 $ coderemote request 42 #42 POST /api/orders -> 401 authorization: Bearer [redacted] …
Chạy trong thư mục được chia sẻ (hoặc bên dưới nó) để tìm đúng agent của thư mục đó; nếu chỉ có một agent đang chạy thì chạy ở đâu cũng được. Không có cổng thì nó đọc mọi cổng đang được xem trước. Một bản xem trước bạn đã dừng vẫn giữ nhật ký: nêu cổng của nó để đọc.
| Lệnh hoặc tùy chọn | Nó làm gì |
|---|---|
requests [PORT] | Một dòng cho mỗi request, cũ nhất trước: id, status, method và đường dẫn, thời lượng, kích thước và thời gian. |
request <ID> [PORT] | Header và body của một request. JSON được thụt lề; body trên 64 KB không được giữ. |
requests clear [PORT] | Xóa các request đã ghi, giống Clear trong app. |
--grep TEXT | Chỉ những request có method hoặc đường dẫn chứa TEXT. |
--failed | Chỉ lỗi và các phản hồi 4xx/5xx. |
--limit N | Hiện N request gần nhất (mặc định 50). |
--json | Output đọc được bằng máy, cho script. |
--show-secrets | In ra các giá trị bị che theo mặc định (xem bên dưới). |
Bí mật được che trừ khi bạn yêu cầu: header Authorization (giữ lại scheme, như Bearer), giá trị cookie (giữ lại tên), header có tên giống token, key hoặc session, và các trường như password hay access_token trong query string, JSON và form body. Output cho biết đã ẩn bao nhiêu giá trị. Thêm --show-secrets khi agent cần một giá trị, ví dụ để dùng lại session token trong một bài test.
Không có gì được ghi xuống đĩa: lệnh đọc nhật ký mà agent giữ trong bộ nhớ, 200 request gần nhất cho mỗi cổng.
setup claude, setup codex
Cài plugin Code Remote vào Claude Code hoặc Codex, để các phiên của chúng hiện trong tab Agents của app và bạn trả lời được yêu cầu của chúng từ điện thoại. Codex chỉ chạy hook của plugin sau khi bạn tin cậy chúng một lần: mở Codex và gõ /hooks. --remove gỡ nó. Xem Coding agents.
$ coderemote setup claude $ coderemote setup codex
devices
Liệt kê các điện thoại đã đăng ký với agent đang chạy của thư mục, mỗi chiếc đăng ký và được thấy lần cuối khi nào, cùng thiết lập Face ID. Điện thoại tự đăng ký ở lần kết nối đầu tiên sau khi quét mã QR.
$ coderemote devices $ coderemote devices revoke 94d5 # an id prefix is enough $ coderemote devices policy terminal+writes --window 30m
revoke gỡ một điện thoại ngay lập tức: các phiên và terminal đang mở của nó kết thúc, và nó không quay lại được nếu không ghép đôi lại. policy đặt những thao tác nào hỏi Face ID: none, terminal (mặc định: terminal, coding agent và build) hoặc terminal+writes (thêm thay đổi file và git), và với --window một lần xác thực kéo dài bao lâu: 5m (mặc định), 30m hoặc 1h. Ứng dụng có thể làm nó chặt hơn; nới lỏng từ ứng dụng thì cần Face ID.
rotate-token
Thay token truy cập và các khoá của máy tính này, và quên mọi điện thoại đã đăng ký. Mọi điện thoại đã ghép đôi mất quyền truy cập ngay lập tức. Dùng khi bạn mất chiếc điện thoại duy nhất hoặc link ghép đôi bị lộ.
$ coderemote rotate-token
Token rotated. Re-pair your devices, and restart running agents.
Sau đó khởi động lại coderemote up và quét mã QR mới trên các thiết bị bạn vẫn tin tưởng.
tunnels
Liệt kê các tunnel trên tài khoản Dev Tunnels của bạn và xóa những cái không còn ai dùng. Một tài khoản được giữ 10 tunnel. Mỗi máy tính chạy coderemote dùng một cái, cộng thêm một cái cho xem trước trong lúc agent của nó chạy, và các máy cũ hay các lần cài lại để lại tunnel của chúng. Cần coderemote 0.3.6 trở lên.
$ coderemote tunnels silent-lake-pqv9b80.usw2 online · this computer's agent on port 31580 · coderemote my-mac brave-hill-x7k2m41.usw2 online · this computer's previews on port 31580 · coderemote preview my-mac quiet-fox-3hd8w2c.usw2 coderemote old-laptop $ coderemote tunnels delete quiet-fox-3hd8w2c deleted quiet-fox-3hd8w2c.usw2
Mỗi dòng hiện id của tunnel, online khi một agent đang phục vụ nó, máy tính này dùng nó để làm gì, và mô tả của nó, vốn nêu tên máy tính đã tạo ra nó. Hậu tố vùng (.usw2) là tùy chọn khi bạn đưa vào một id.
| Lệnh hoặc tùy chọn | Nó làm gì |
|---|---|
tunnels | Một dòng cho mỗi tunnel của tài khoản bạn đang đăng nhập. |
tunnels delete <id>... | Xóa các tunnel đó. Tunnel đang online, hoặc đang được máy tính này dùng, sẽ được giữ lại trừ khi bạn thêm --force. |
--force | Cứ xóa. URL của nó sẽ mất, nên các điện thoại đã ghép đôi với nó phải ghép đôi lại; trên máy tính này, lần up tiếp theo sẽ tạo cái mới. |
Bạn hiếm khi cần chạy tay: khi tài khoản đã đầy, up và phần xem trước sẽ xóa trước các preview tunnel không agent nào phục vụ. Chỉ khi điều đó không giải phóng được chỗ thì up mới dừng, liệt kê các tunnel của tài khoản và nhờ bạn xóa bớt.
login
Đăng nhập vào Microsoft Dev Tunnels. up tự làm việc này khi cần, nên bạn chỉ chạy nó để đổi tài khoản hoặc khi không có trình duyệt.
$ coderemote login # GitHub, in the browser $ coderemote login --microsoft # a Microsoft account $ coderemote login --device-code # no browser here: enter a code on another device
Điện thoại phải đăng nhập bằng cùng tài khoản, trừ khi bạn chạy up --allow-anonymous.
update
Cài coderemote bản mới nhất theo cách bạn đã cài: bằng npm (hoặc pnpm, yarn, bun), bằng Homebrew, hoặc vào Node.js mà script cài đặt đã tải. Khi có bản mới hơn, up sẽ báo ngay dưới các liên kết ghép đôi; nó hỏi npm tối đa một lần mỗi ngày và không bao giờ làm chậm lúc khởi động. Đặt CODEREMOTE_NO_UPDATE_CHECK=1 để tắt.
$ coderemote update $ coderemote --version # the version you're running
Các agent đang chạy vẫn giữ phiên bản cũ cho đến khi bạn khởi động lại chúng: coderemote stop --all, rồi coderemote up lần nữa.
help
In ra mọi lệnh và tùy chọn. coderemote đứng một mình, hoặc --help ở bất kỳ đâu trong dòng lệnh, cũng làm vậy, nên gõ nhầm sẽ không bao giờ vô tình bắt đầu chia sẻ một thư mục.
Tùy chọn
| Tùy chọn | Lệnh | Mặc định |
|---|---|---|
--root DIR | up, serve, stop | thư mục hiện tại |
--port N | up, serve | 31580 |
--allow-anonymous | up | tắt |
--web | up | tắt |
--all | kill, stop | |
--force | tunnels delete | tắt |
--microsoft, --device-code | login | GitHub, trong trình duyệt |