> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.tramlabs.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.tramlabs.io/_mcp/server.

# OpenCode

> Sử dụng OpenCode với Trạm AI

## OpenCode là gì?

[OpenCode](https://opencode.ai) là một AI coding agent mã nguồn mở, có sẵn dưới dạng giao diện terminal, ứng dụng desktop và IDE extension. OpenCode tích hợp LSP, hỗ trợ multi-session, cho phép chia sẻ liên kết phiên làm việc, và tương thích với hơn nhiều LLM provider — trong đó có Trạm AI, giúp người dùng truy cập multi-model một cách thống nhất chỉ với một API key duy nhất.

## Bắt đầu nhanh

### Bước 1: Cài đặt OpenCode

#### curl

**`lines`**

```bash lines
curl -fsSL https://opencode.ai/install | bash
```

#### npm

**`lines`**

```bash lines
npm install -g opencode-ai
```

#### Homebrew

**`lines`**

```bash lines
brew install anomalyco/tap/opencode
```

Các phương thức cài đặt khác, xem tại [OpenCode](https://opencode.ai/docs/#install).

### Bước 2: Tạo Trạm AI API Key

1. Đăng ký hoặc đăng nhập tại [Trạm AI](https://tramlabs.io)
2. Đi đến [trang API Keys](https://console.tramlabs.io/keys)
3. Tạo một API key

### Bước 3: Kết nối OpenCode với Trạm AI

1. Thêm config vào \~/.config/opencode/opencode.jsonc (hoặc \~/.config/opencode/opencode.json)

**`lines`**

```json lines
{
  "provider": {
    "tram": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Tram AI",
      "options": {
        "baseURL": "https://api.tramlabs.io/v1"
      },
      "models": {
        "qwen3.8-27b": {
          "name": "Qwen 3.8 27B",
          "reasoning": true,
          "limit": { "context": 262144, "output": 131072 }
        }
      }
    }
  }
}
```

2. Khởi động OpenCode trong thư mục:

   **`lines`**

   ```bash lines
    cd /path/to/your/project
    opencode
   ```
3. Chạy lệnh `/connect` và chọn **Tram AI**:

   **`lines`**

   ```text lines
    /connect
   ```
4. Nhập Trạm AI API key.
5. Chạy `/models` để chọn một model:

   **`lines`**

   ```text lines
    /models
   ```

### Lựa chọn khác: File cấu hình

Người dùng cũng có thể thêm trực tiếp API key vào `~/.local/share/opencode/auth.json`:

**`lines`**

```json lines
{
  "tram": {
    "type": "api",
    "key": "tram_sk-your-key-here"
  }
}
```

## Vì sao nên dùng Trạm AI với OpenCode?

### Truy cập hàng trăm model

Chuyển đổi giữa bất kỳ model nào có sẵn trên Trạm AI — Anthropic, OpenAI, Google, xAI, Meta, DeepSeek, và nhiều model khác — mà không cần quản lý API key riêng cho từng provider.

### Provider Failover

Nếu một provider không khả dụng hoặc bị rate-limit, Trạm AI sẽ tự động route sang provider khác, giúp phiên coding không bị gián đoạn.

### Kiểm soát ở cấp tổ chức

Đối với các nhóm, Trạm AI cung cấp khả năng quản lý budget tập trung. Người dùng có thể thiết lập giới hạn chi tiêu, phân bổ credit, và theo dõi mức sử dụng trên toàn bộ developer dùng OpenCode ngay tại [Trạm AI Activity Dashboard](https://console.tramlabs.io/settings/logs).

### Linh hoạt về model

Người dùng có thể chuyển đổi model bằng cách cập nhật cấu hình hoặc dùng lệnh `/models` — không cần cấu hình lại API key hay endpoint.

## Khắc phục sự cố

* **Lỗi xác thực:** Đảm bảo API key được thiết lập đúng qua `/connect`. Kiểm tra tại [tramlabs.io/keys](https://console.tramlabs.io/keys).
* **Không tìm thấy model:** Xác minh model ID tại [tramlabs.io/models](https://tramlabs.io/models). Dùng đúng định dạng (ví dụ: `claude-sonnet-4.6`).
* **Quyền riêng tư:** Trạm AI không ghi log prompt mã nguồn trừ khi người dùng chủ động bật prompt logging. Xem [Chính sách quyền riêng tư](https://tramlabs.io/privacy) của Trạm AI để biết chi tiết.

## Tài nguyên

* [Website OpenCode](https://opencode.ai)
* [OpenCode trên GitHub](https://github.com/anomalyco/opencode)
* [Tài liệu Provider của OpenCode](https://opencode.ai/docs/providers)
* [Trạm AI Models](https://tramlabs.io/models)