CLI
OpenCode CLI mặc định sẽ khởi động TUI khi chạy không có tham số nào.
opencode
Ngoài ra, CLI còn hỗ trợ các lệnh được mô tả trong trang này. Điều này cho phép bạn tương tác với OpenCode một cách có lập trình.
opencode run "Giải thích cách closures hoạt động trong JavaScript"
tui
Khởi động giao diện terminal của OpenCode.
opencode [project]
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--continue | -c | Tiếp tục phiên làm việc trước |
--session | -s | Session ID để tiếp tục |
--prompt | Prompt sử dụng | |
--model | -m | Model sử dụng theo định dạng provider/model |
--agent | Agent sử dụng | |
--port | Port để lắng nghe | |
--hostname | Hostname để lắng nghe |
Commands
OpenCode CLI còn có các lệnh sau.
agent
Quản lý các agents trong OpenCode.
opencode agent [command]
attach
Kết nối terminal tới một OpenCode backend server đang chạy (khởi động qua lệnh serve hoặc web).
opencode attach [url]
Điều này cho phép sử dụng TUI với OpenCode backend từ xa. Ví dụ:
# Khởi động backend server cho web/mobile
opencode web --port 4096 --hostname 0.0.0.0
# Trong terminal khác, kết nối TUI tới backend đang chạy
opencode attach http://10.20.30.40:4096
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--dir | Thư mục làm việc để khởi động TUI | |
--session | -s | Session ID để tiếp tục |
create
Tạo một agent mới với cấu hình tùy chỉnh.
opencode agent create
Lệnh này sẽ hướng dẫn bạn tạo agent mới với system prompt và cấu hình tool tùy chỉnh.
list
Liệt kê tất cả agents có sẵn.
opencode agent list
auth
Lệnh quản lý credentials và đăng nhập cho các providers.
opencode auth [command]
login
OpenCode sử dụng danh sách providers từ Models.dev, vì vậy bạn có thể dùng opencode auth login để cấu hình API keys cho bất kỳ provider nào. Thông tin được lưu tại ~/.local/share/opencode/auth.json.
opencode auth login
Khi OpenCode khởi động, nó tải các providers từ file credentials. Đồng thời cũng đọc các keys được định nghĩa trong environment hoặc file .env trong project của bạn.
list
Liệt kê tất cả providers đã xác thực được lưu trong file credentials.
opencode auth list
Hoặc phiên bản ngắn gọn.
opencode auth ls
logout
Đăng xuất khỏi một provider bằng cách xóa nó khỏi file credentials.
opencode auth logout
github
Quản lý GitHub agent cho tự động hóa repository.
opencode github [command]
install
Cài đặt GitHub agent trong repository của bạn.
opencode github install
Lệnh này thiết lập GitHub Actions workflow cần thiết và hướng dẫn bạn qua quá trình cấu hình. Tìm hiểu thêm.
run
Chạy GitHub agent. Thường được sử dụng trong GitHub Actions.
opencode github run
Flags
| Flag | Mô tả |
|---|---|
--event | GitHub mock event để chạy agent |
--token | GitHub personal access token |
mcp
Quản lý các Model Context Protocol servers.
opencode mcp [command]
add
Thêm MCP server vào cấu hình của bạn.
opencode mcp add
Lệnh này sẽ hướng dẫn bạn thêm MCP server local hoặc remote.
list
Liệt kê tất cả MCP servers đã cấu hình và trạng thái kết nối.
opencode mcp list
Hoặc phiên bản ngắn gọn.
opencode mcp ls
auth
Xác thực với MCP server hỗ trợ OAuth.
opencode mcp auth [name]
Nếu không cung cấp tên server, bạn sẽ được nhắc chọn từ các servers có hỗ trợ OAuth.
Bạn cũng có thể liệt kê các servers hỗ trợ OAuth và trạng thái xác thực.
opencode mcp auth list
Hoặc phiên bản ngắn gọn.
opencode mcp auth ls
logout
Xóa OAuth credentials cho một MCP server.
opencode mcp logout [name]
debug
Debug các vấn đề kết nối OAuth cho MCP server.
opencode mcp debug <name>
models
Liệt kê tất cả models có sẵn từ các providers đã cấu hình.
opencode models [provider]
Lệnh này hiển thị tất cả models có sẵn từ các providers đã cấu hình theo định dạng provider/model.
Rất hữu ích để xác định chính xác tên model cần dùng trong cấu hình của bạn.
Bạn có thể tùy chọn truyền provider ID để lọc models theo provider đó.
opencode models anthropic
Flags
| Flag | Mô tả |
|---|---|
--refresh | Làm mới cache models từ models.dev |
--verbose | Hiển thị thông tin model chi tiết hơn (bao gồm metadata như chi phí) |
Sử dụng flag --refresh để cập nhật danh sách models đã cache. Hữu ích khi có models mới được thêm vào provider và bạn muốn thấy chúng trong OpenCode.
opencode models --refresh
run
Chạy opencode ở chế độ non-interactive bằng cách truyền prompt trực tiếp.
opencode run [message..]
Hữu ích cho scripting, automation, hoặc khi bạn muốn câu trả lời nhanh mà không cần khởi động TUI đầy đủ. Ví dụ:
opencode run Explain the use of context in Go
Bạn cũng có thể kết nối tới instance opencode serve đang chạy để tránh thời gian cold boot của MCP server mỗi lần chạy:
# Khởi động headless server trong một terminal
opencode serve
# Trong terminal khác, chạy lệnh kết nối tới nó
opencode run --attach http://localhost:4096 "Giải thích async/await trong JavaScript"
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--command | Lệnh để chạy, sử dụng message làm args | |
--continue | -c | Tiếp tục phiên làm việc trước |
--session | -s | Session ID để tiếp tục |
--share | Chia sẻ session | |
--model | -m | Model sử dụng theo định dạng provider/model |
--agent | Agent sử dụng | |
--file | -f | File(s) đính kèm vào message |
--format | Định dạng: default (formatted) hoặc json (raw JSON events) | |
--title | Tiêu đề cho session (sử dụng prompt rút gọn nếu không có giá trị) | |
--attach | Kết nối tới opencode server đang chạy (ví dụ: http://localhost:4096) | |
--port | Port cho local server (mặc định là port ngẫu nhiên) |
serve
Khởi động OpenCode server headless cho API access. Xem tài liệu server để biết đầy đủ HTTP interface.
opencode serve
Lệnh này khởi động HTTP server cung cấp API access tới chức năng opencode mà không cần giao diện TUI. Đặt OPENCODE_SERVER_PASSWORD để bật HTTP basic auth (username mặc định là opencode).
Flags
| Flag | Mô tả |
|---|---|
--port | Port để lắng nghe |
--hostname | Hostname để lắng nghe |
--mdns | Bật mDNS discovery |
--cors | Thêm browser origin(s) được phép CORS |
session
Quản lý các OpenCode sessions.
opencode session [command]
list
Liệt kê tất cả OpenCode sessions.
opencode session list
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--max-count | -n | Giới hạn N sessions gần nhất |
--format | Định dạng output: table hoặc json (table) |
stats
Hiển thị thống kê token usage và chi phí cho các OpenCode sessions.
opencode stats
Flags
| Flag | Mô tả |
|---|---|
--days | Hiển thị thống kê cho N ngày gần nhất (mặc định: tất cả) |
--tools | Số lượng tools hiển thị (mặc định: tất cả) |
--models | Hiển thị phân tích model usage (mặc định: ẩn). Truyền số để hiển thị top N |
--project | Lọc theo project (mặc định: tất cả, chuỗi rỗng: project hiện tại) |
export
Xuất dữ liệu session dạng JSON.
opencode export [sessionID]
Nếu không cung cấp session ID, bạn sẽ được nhắc chọn từ các sessions có sẵn.
import
Import dữ liệu session từ file JSON hoặc OpenCode share URL.
opencode import <file>
Bạn có thể import từ file local hoặc OpenCode share URL.
opencode import session.json
opencode import https://opncd.ai/s/abc123
web
Khởi động OpenCode server headless với giao diện web.
opencode web
Lệnh này khởi động HTTP server và mở trình duyệt web để truy cập OpenCode qua giao diện web. Đặt OPENCODE_SERVER_PASSWORD để bật HTTP basic auth (username mặc định là opencode).
Flags
| Flag | Mô tả |
|---|---|
--port | Port để lắng nghe |
--hostname | Hostname để lắng nghe |
--mdns | Bật mDNS discovery |
--cors | Thêm browser origin(s) được phép CORS |
acp
Khởi động ACP (Agent Client Protocol) server.
opencode acp
Lệnh này khởi động ACP server giao tiếp qua stdin/stdout sử dụng nd-JSON.
Flags
| Flag | Mô tả |
|---|---|
--cwd | Thư mục làm việc |
--port | Port để lắng nghe |
--hostname | Hostname để lắng nghe |
uninstall
Gỡ cài đặt OpenCode và xóa tất cả files liên quan.
opencode uninstall
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--keep-config | -c | Giữ lại configuration files |
--keep-data | -d | Giữ lại session data và snapshots |
--dry-run | Hiển thị những gì sẽ bị xóa mà không xóa thực | |
--force | -f | Bỏ qua các xác nhận |
upgrade
Cập nhật opencode lên phiên bản mới nhất hoặc phiên bản cụ thể.
opencode upgrade [target]
Để nâng cấp lên phiên bản mới nhất:
opencode upgrade
Để nâng cấp lên phiên bản cụ thể:
opencode upgrade v0.1.48
Flags
| Flag | Viết tắt | Mô tả |
|---|---|---|
--method | -m | Phương thức cài đặt đã sử dụng: curl, npm, pnpm, bun, brew |
Global Flags
OpenCode CLI hỗ trợ các global flags sau.
| Flag | Viết tắt | Mô tả |
|---|---|---|
--help | -h | Hiển thị trợ giúp |
--version | -v | In số phiên bản |
--print-logs | In logs ra stderr | |
--log-level | Log level (DEBUG, INFO, WARN, ERROR) |
Environment Variables
OpenCode có thể được cấu hình thông qua environment variables.
| Variable | Kiểu | Mô tả |
|---|---|---|
OPENCODE_AUTO_SHARE | boolean | Tự động chia sẻ sessions |
OPENCODE_GIT_BASH_PATH | string | Đường dẫn tới Git Bash executable trên Windows |
OPENCODE_CONFIG | string | Đường dẫn tới config file |
OPENCODE_CONFIG_DIR | string | Đường dẫn tới config directory |
OPENCODE_CONFIG_CONTENT | string | Nội dung config json inline |
OPENCODE_DISABLE_AUTOUPDATE | boolean | Tắt kiểm tra cập nhật tự động |
OPENCODE_DISABLE_PRUNE | boolean | Tắt pruning dữ liệu cũ |
OPENCODE_DISABLE_TERMINAL_TITLE | boolean | Tắt cập nhật terminal title tự động |
OPENCODE_PERMISSION | string | Config permissions json inline |
OPENCODE_DISABLE_DEFAULT_PLUGINS | boolean | Tắt default plugins |
OPENCODE_DISABLE_LSP_DOWNLOAD | boolean | Tắt tự động download LSP server |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | boolean | Bật experimental models |
OPENCODE_DISABLE_AUTOCOMPACT | boolean | Tắt automatic context compaction |
OPENCODE_DISABLE_CLAUDE_CODE | boolean | Tắt đọc từ .claude (prompt + skills) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | boolean | Tắt đọc ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | boolean | Tắt loading .claude/skills |
OPENCODE_CLIENT | string | Client identifier (mặc định: cli) |
OPENCODE_ENABLE_EXA | boolean | Bật Exa web search tools |
OPENCODE_SERVER_PASSWORD | string | Bật basic auth cho serve/web |
OPENCODE_SERVER_USERNAME | string | Override basic auth username (mặc định: opencode) |
Experimental
Các environment variables này bật các tính năng experimental có thể thay đổi hoặc bị xóa.
| Variable | Kiểu | Mô tả |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | Bật tất cả tính năng experimental |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | Bật icon discovery |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | Tắt copy on select trong TUI |
OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTH | number | Độ dài output tối đa cho bash commands |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | Timeout mặc định cho bash commands (ms) |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | number | Số output tokens tối đa cho LLM responses |
OPENCODE_EXPERIMENTAL_FILEWATCHER | boolean | Bật file watcher cho toàn bộ directory |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | Bật oxfmt formatter |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | Bật experimental LSP tool |