> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudthinker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent CLI

> Chạy agent lập trình cục bộ trong repository của bạn, đọc và thay đổi cloud qua CloudThinker Sandbox với phê duyệt của workspace

<Note>
  **Xem trước** — `cloudthinker agent` đi kèm CloudThinker CLI cho macOS và Linux, và cần gói workspace trả phí. [Liên hệ chúng tôi](https://cloudthinker.io/contact) để tham gia xem trước.
</Note>

`cloudthinker agent` là một agent lập trình chạy trong terminal của bạn, dựng trên [pi](https://github.com/badlogic/pi-mono). Nó sửa file và chạy lệnh trên máy bạn, và chỉ chạm tới cloud của bạn qua CloudThinker Sandbox bằng các kết nối của workspace.

## Vì sao dùng Agent CLI

* **Repository của bạn ở lại máy bạn.** Vòng lặp model, việc sửa file và các lệnh shell đều chạy trên laptop của bạn.
* **Không có credential cloud nào nằm trên máy bạn.** Một lệnh cloud chạy trong CloudThinker Sandbox với credential kết nối được tiêm vào riêng cho lần chạy đó.
* **Luật của workspace vẫn áp dụng.** Một thao tác ghi lên cloud tuân theo đúng luật [Auto Mode](/vi/guide/auto-mode) và phê duyệt như trong chat.
* **Mọi phiên đều được nhân bản.** Đồng đội đọc được phiên làm việc trên trình duyệt, và workspace ghi nhật ký lẫn tính phí cho nó.

## Bắt đầu một phiên

<Steps>
  <Step title="Cài đặt và đăng nhập">
    Cài [CloudThinker CLI](/vi/guide/cli/overview) rồi chạy `cloudthinker login`. Agent sẽ tự mở đăng nhập trình duyệt khi chưa có credential.
  </Step>

  <Step title="Chạy agent trong repository">
    ```bash theme={null}
    cd my-terraform-repo
    cloudthinker agent
    ```

    Lần chạy đầu tiên, CLI tải bundle agent cho nền tảng của bạn và kiểm tra checksum.
  </Step>

  <Step title="Đọc phần header">
    Header cho biết workspace, người dùng, link phiên làm việc, và chế độ phê duyệt của workspace dưới dạng `· Auto` hoặc `· Manual`.

    **Trạng thái thành công:** footer hiện `◆ 0.00 credits` và prompt đầu tiên của bạn đã sẵn sàng.
  </Step>
</Steps>

## Hai môi trường

Agent chỉ làm việc ở đúng hai nơi và luôn cho biết nó đang dùng nơi nào.

| Môi trường               | Thứ chạy ở đó                                                  | Credential                                                                                          |
| ------------------------ | -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| **Máy của bạn**          | Công cụ cục bộ của pi: bash, read, write, edit, grep, find, ls | không có credential nào từ CloudThinker                                                             |
| **CloudThinker Sandbox** | `ct_cloud_read` và `ct_cloud_write`                            | credential của một kết nối trong workspace, tiêm theo từng lần chạy và không bao giờ gửi về máy bạn |

Một kết nối là credential mà Sandbox dùng được, không phải môi trường thứ ba. Agent thấy đúng thông tin kết nối mà Anna thấy trong chat, được làm mới trước mỗi lượt, nên một kết nối bạn thêm trên trình duyệt sẽ dùng được ngay ở prompt kế tiếp.

Một lệnh có thể dùng nhiều kết nối AWS và GCP có tên cùng lúc, kèm GitLab. Hãy nói cho agent biết dùng alias nào. Mỗi lần thực thi trên cloud giữ credential và các thay đổi file cục bộ tách biệt; chỉ những file kết quả mới được khai báo mới quay về workspace, và file sẵn có không bị ghi đè.

## Công cụ cloud

| Công cụ          | Dùng để                                                                                           | Chạy ở đâu                                         |
| ---------------- | ------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| `ct_cloud_read`  | Một cuộc điều tra chỉ đọc, có giới hạn, ví dụ liệt kê bucket hay mô tả một deployment             | CloudThinker Sandbox                               |
| `ct_cloud_write` | Một lệnh thay đổi trạng thái mà bạn gọi tên được, ví dụ restart một rollout                       | CloudThinker Sandbox, sau khi workspace quyết định |
| `ct_ask`         | Việc cần chính workspace: ký ức về sự cố cũ, một agent chuyên môn, hoặc nhiều bước phụ thuộc nhau | Anna, trong một cuộc hội thoại được liên kết       |

Một lần chạy `ct_ask` mở một mạch hội thoại với Anna cho mỗi phiên và tái sử dụng nó. `ct_run_status` nối lại một run đang tạm dừng sau khi được phê duyệt.

## Phê duyệt một thao tác ghi lên cloud

Ghi lên cloud là một yêu cầu do workspace quyết định, không phải một lời gọi. Agent gửi yêu cầu, và terminal ghim một thẻ phía trên ô soạn thảo với lý do, kết nối, lệnh, và một link mở trên trình duyệt.

| Dòng kết quả                                                           | Ý nghĩa                                                    |
| ---------------------------------------------------------------------- | ---------------------------------------------------------- |
| `auto: allowed (trusted command) · ran in CloudThinker Sandbox · 2.0s` | Auto Mode cho phép và lệnh chạy ngay                       |
| `auto: needs approval`                                                 | Auto Mode tạm dừng để chờ người quyết định                 |
| `manual: needs approval`                                               | Workspace đang ở Manual, nên mọi thao tác ghi đều dừng lại |
| `auto: escalated`                                                      | Auto Mode chặn lại và phát cảnh báo; lệnh không chạy       |
| `auto: denied`                                                         | Chính sách chặn; không phê duyệt nào chạy được nó          |

Trên thẻ đó, chọn **Approve**, **Approve and trust this command**, hoặc **Decline**. Nhấn Escape để từ chối. Chỉ [người có quyền phê duyệt](/vi/guide/approval) mới quyết định được, và cùng thẻ đó hiện trên trình duyệt cho đồng đội có quyền.

**Approve and trust this command** ghi lệnh vào chính sách của workspace, chính là Trust mà hộp thoại phê duyệt trong chat đưa ra. Ở chế độ Auto, lần sau lệnh đó chạy không cần dừng. Việc trust cần owner hoặc admin của workspace.

Phê duyệt giữ nguyên đúng những kết nối đã chọn lúc yêu cầu ghi được tạo. Thêm một kết nối không thể nới rộng một yêu cầu đang chờ; gỡ quyền truy cập hoặc đổi một danh tính đã chọn sẽ chặn việc thực thi. Nếu một thao tác ghi báo kết quả không xác định, hãy kiểm tra tác động của nó trước khi yêu cầu lại. Nối lại yêu cầu không tự động chạy lại lệnh.

## Auto Mode trong terminal

Auto Mode là lựa chọn duy nhất của workspace, và terminal chỉ hiển thị nó chứ không giữ chế độ riêng. Chạy `/cloudthinker auto` để in ra chế độ hiện tại. Chạy `/cloudthinker auto on` hoặc `/cloudthinker auto off` để đổi cho toàn workspace; việc này cần quyền sửa cài đặt workspace và được ghi nhật ký giống như khi đổi trong chat.

Không có cách ghi đè theo từng phiên, và không có cờ nào để bỏ qua phê duyệt từ laptop. Các lệnh cục bộ trên máy bạn không bị CloudThinker chặn; pi chạy chúng với danh nghĩa của bạn.

## Thông báo

Một phiên Agent CLI tự nó không gửi thông báo phê duyệt, vì thẻ đã nằm ngay trước mặt bạn trong terminal và trên trình duyệt. Điều đó cũng đúng với các phê duyệt do Anna đưa ra trong mạch `ct_ask` của phiên.

Nếu bạn không phải người phê duyệt, chạy `/cloudthinker notify` để gửi yêu cầu phê duyệt một lần tới những người phê duyệt của workspace, qua các kênh họ đã cấu hình trong [Thông báo](/vi/guide/notifications).

## Lệnh

| Lệnh                           | Tác dụng                                                                       |
| ------------------------------ | ------------------------------------------------------------------------------ |
| `/cloudthinker about`          | Phiên bản, ghi công pi, thư mục cấu hình, và link phiên làm việc               |
| `/cloudthinker session`        | Số file, số tin nhắn và số token của phiên này, kết lại bằng số credit đã tính |
| `/cloudthinker auto [on\|off]` | In ra hoặc đổi chế độ phê duyệt của workspace                                  |
| `/cloudthinker notify`         | Gửi một lần yêu cầu phê duyệt đang chờ tới những người phê duyệt của workspace |
| `/open`                        | Mở phiên này trên trình duyệt                                                  |
| `/cloud`                       | Hiện workspace, các kết nối, và trạng thái nhân bản                            |

Các lệnh sẵn có của pi như `/model`, `/fork`, `/settings` vẫn dùng bình thường. `/share` và `/thinking` đã bị gỡ.

## Nhân bản phiên làm việc

Mỗi phiên được nhân bản vào workspace thành một hội thoại **Agent CLI**. Mở nó trên trình duyệt sẽ thấy một trình xem chỉ đọc với repository, nhánh, các lượt gọi công cụ, và mạch hội thoại Anna được liên kết. Không ai gõ vào đó được, vì terminal sở hữu phiên mới là bên ghi duy nhất. Mọi thành viên workspace có quyền xem đều đọc được, và chỉ owner của workspace mới xóa được.

Bản ghi hội thoại vẫn nằm trên máy bạn dưới dạng file phiên của pi. Nối lại file đó sẽ nối dài chính cuộc hội thoại ấy, còn `/fork` mở một cuộc mới có ghi lại nguồn gốc.

## Credit

Footer hiện số credit tính cho phiên này, ví dụ `◆ 1.75 credits`. Agent không bao giờ quy giá một model ra tiền tệ. Footer chỉ thêm trạng thái nhân bản khi bạn cần hành động, ví dụ `✕ mirror offline, 3 pending`.

## Liên quan

<CardGroup cols={2}>
  <Card title="CLI" icon="terminal" href="/vi/guide/cli/overview">
    Cài CloudThinker CLI và đăng nhập
  </Card>

  <Card title="Auto Mode" icon="bolt" href="/vi/guide/auto-mode">
    Chọn Manual hoặc Auto cho workspace
  </Card>

  <Card title="Phê duyệt" icon="shield-check" href="/vi/guide/approval">
    Người phê duyệt và quyền với công cụ
  </Card>

  <Card title="Kết nối" icon="plug" href="/vi/guide/connections/overview">
    Thiết lập các kết nối mà Sandbox dùng được
  </Card>
</CardGroup>
