Chuyển đến nội dung chính
Blog

Hướng dẫn AgentKitBài 14/21

Cloud Harness MCP: cho ChatGPT mở repo, sửa code, chạy test, mở PR (và những chỗ phải dè chừng)

4 phút đọc
Bài 14 trong bộ onboarding AgentKit v3. Đọc khoảng 5 phút. Bài 10 có giới thiệu sơ về CloudHarness, bài này đi sâu vào cách dùng.

Ý tưởng khởi đầu của tui khá lười: ChatGPT chat về code thì giỏi, nhưng nó không có tay chân. Còn Codex thì có tay chân mà quota có hạn. Vậy sao không cho ChatGPT một bộ tay chân riêng qua MCP? Model suy nghĩ trong ChatGPT, còn đọc file, sửa code, chạy lệnh, Git thì diễn ra ở một harness bên ngoài. Đó là Cloud Harness MCP.

Nói trước cho khỏi hiểu lầm: tui không có số đo nào chứng minh cách này "nhân đôi quota" hay "dùng GPT không giới hạn". Hạn mức đổi theo gói và theo thời điểm. Cái tui chắc chắn chỉ là: trải nghiệm của tui là ChatGPT còn lượt dùng riêng khi Codex đã chạm trần. Đừng coi đó là cam kết.

1/ Nó là gì?

Một MCP server qua HTTP có xác thực, chạy riêng cho bạn (hoặc nhóm tin nhau). Luồng đi:

  1. Client (ChatGPT hoặc MCP client khác) gọi vào lớp API có xác thực.

  2. API đẩy việc cho runner đáng tin cậy.

  3. Runner chạy lệnh trong Docker executor, không phải root, có giới hạn thời gian, workspace bị khoanh vùng.

  4. GitHub credentials nằm ở một broker riêng, không nằm lâu dài trong container chạy code.

Mỗi lần làm việc là một workspace: agent gọi workspace_open với repo, ghi lại workspaceId, làm việc bằng các tool (file, tìm symbol, shell, Git, task, subagent, skill, hook, tuỳ cấu hình và quyền), rồi workspace_close.


2/ Khi nào nên dùng, khi nào đừng

Tình huống Hợp không?
Brainstorm kiến trúc, review, planning bằng model mạnh trong ChatGPT rồi để nó tự đụng vào repo Hợp
Muốn agent làm việc trên máy khác, khỏi chạy lệnh trên laptop Hợp
Một người hoặc một nhóm nhỏ tin nhau Hợp
Hạ tầng đa khách hàng, người lạ dùng chung một instance Không
Cần "sandbox chống đối thủ" Không

Lý do dòng cuối: executor dùng chung kernel với host. Đây là một miền tin cậy duy nhất, không phải sandbox cho nhiều bên không tin nhau.


3/ Dùng từng bước

Bước 1: triển khai và bật xác thực. Làm theo tài liệu của dự án tại docs.harness.agentkit.best. Đọc mô hình bảo mật và kiểm tra secrets trước khi chạy, đừng để agent cài hộ rồi mới đọc.

Bước 2: kết nối client. Bài 10 ghi hai endpoint đang chạy:

  • Client hỗ trợ OAuth: https://harness.zuey.me/mcp

  • Client chỉ gửi được header tĩnh: https://api.harness.zuey.me/mcp, dùng API key lấy từ dashboard

Không phải giao diện ChatGPT nào cũng nhận cấu hình MCP từ xa. Kiểm tra gói và cấu hình của bạn trước.

Bước 3: bảo agent mở repo. Nó gọi workspace_open, rồi đọc AGENTS.md và tài liệu kiến trúc của repo.

Bước 4: làm việc. Tìm symbol, sửa file, chạy test, tạo commit. Push và mở PR thì chỉ nên cho làm khi bạn đã duyệt thao tác.

Bước 5: dọn. Đóng workspace, rồi kiểm tra còn tiến trình hay task nào chạy sót không.

Chạy cục bộ không cần VPS (chế độ stdio, chỉ POSIX; Windows dùng WSL):

cloud-harness-mcp --transport stdio --workspace /duong/dan/repo

Lưu ý: stdio dành cho client chạy được MCP cục bộ. ChatGPT thường kết nối qua MCP từ xa, nên đừng mong dán lệnh trên vào ChatGPT là chạy.


4/ Trạng thái từng phần

Phần Nhãn Ghi chú
MCP từ xa qua HTTP, workspace_open/workspace_close ✅ beta Đang chạy live
Chế độ cục bộ stdio ✅ POSIX; không phải sandbox của hệ điều hành
Dùng chung cho nhiều khách hàng không tin nhau 🗺️ Không phải mục tiêu hiện tại
Việc ChatGPT cho phép dùng kiểu này 🧪 Tuỳ gói, tuỳ điều khoản OpenAI. Tui không khẳng định được OpenAI chấp thuận

Bản ổn định gần nhất theo bài 10 là 0.76.2, mã nguồn MIT: bestagentkits/cloud-harness-mcp.


Tóm lại

1/ Cloud Harness là tay chân MCP cho model: model nghĩ ở ChatGPT, việc thật chạy ở harness.

2/ Dùng cho một người hoặc nhóm tin nhau. Không phải sandbox đa khách hàng.

3/ Quota và điều khoản là chuyện của gói bạn đang trả. MCP là giao thức hợp lệ, nhưng bạn tự chịu trách nhiệm tuân thủ điều khoản dịch vụ.

4/ Đọc mô hình bảo mật, bảo vệ API key và quyền GitHub trước khi chạy.


Nguồn

Tìm hiểu sâu hơn trong tài liệu

Trang tham chiếu cho từng lệnh, skill, hook và thiết lập nhắc đến trong bài.

Đọc tài liệu →

Chia sẻ bài viết