Hướng Dẫn DeepSeek Harness: Xây Dựng Môi Trường Phát Triển AI Agent Local
Vào ngày 13 tháng 8 năm 2026, DeepSeek đã mã nguồn mở khung runtime cho Agent của mình mang tên DeepSeek Harness (thường được gọi là dsh). So với các coding agent phổ biến hiện nay, dsh tiếp cận theo hướng mô-đun hóa ở cấp độ thấp hơn. Nó không trói buộc lập trình viên vào bất kỳ LLM cụ thể nào; thay vào đó, khung hoạt động này triển khai triết lý "mọi thứ đều là plugin", cho phép bạn tự lắp ráp và tùy chỉnh các thành phần chức năng để xây dựng các AI Agent được may đo riêng.
Trong thực tế, khi một Agent đã hoạt động, các tác vụ như chỉnh sửa mã nguồn hoặc thay đổi cấu hình hệ thống đòi hỏi các công cụ phát triển cơ sở mạnh mẽ. Bài viết này sẽ hướng dẫn cách kết hợp dsh với ServBay để xây dựng một môi trường phát triển AI Agent local hoàn chỉnh, tích hợp dịch vụ web, cơ sở dữ liệu, một AI Gateway cục bộ và hệ thống quản lý LLM.

1. Kiến Trúc và Định Vị của DeepSeek Harness
Trong thiết kế kiến trúc của DeepSeek, một Agent được định nghĩa là Model + Harness. Model chịu trách nhiệm lập luận logic, trong khi Harness kết nối mô hình với môi trường vận hành vật lý. dsh tập trung trọng tâm vào lớp Harness này.
Được xây dựng trên lõi plugin Cordis, dsh được viết bằng TypeScript và mã nguồn mở theo giấy phép MIT. Thiết kế kiến trúc của nó có ba đặc điểm chính:
- Mọi thứ đều là Plugin (Everything is a Plugin): Tích hợp LLM, bộ công cụ, ngữ cảnh phiên, sandbox, bộ lưu trữ, vòng lặp runtime chính và các thành phần giao diện người dùng đều là các plugin dạng mô-đun có thể tháo lắp và thay thế dễ dàng.
- Khả năng truy vết tiến trình (Traceable Execution Paths): Các prompt, chuỗi tư duy trung gian, đối số gọi công cụ, kết quả trả về và việc điều phối các sub-agent đều được ghi vào một file log chỉ cho phép ghi tiếp (append-only), hỗ trợ phát lại phiên và gỡ lỗi trạng thái rẽ nhánh.
- Chế độ chạy linh hoạt (Flexible Runtime Modes): Hỗ trợ chế độ giao diện Web (Web UI) cho tương tác hàng ngày, chế độ không giao diện (Headless CLI) cho CI/CD hoặc scripting, và chế độ máy chủ (Server) để cung cấp API.
Tính đến ngày 21 tháng 8 năm 2026, chỉ một thời gian ngắn sau khi ra mắt, dsh đã đạt đến phiên bản 0.1.1-rc.1, với hệ sinh thái plugin mở rộng lên hơn 1.800 mục.

2. Lớp Môi Trường Vật Lý: Tại Sao Nên Dùng ServBay?
Mặc dù dsh xử lý logic khung cốt lõi của Agent runtime, Agent vẫn cần các cơ sở hạ tầng như cơ sở dữ liệu, máy chủ web và chứng chỉ SSL để thực thi các tác vụ chỉnh sửa và triển khai mã nguồn.
Ví dụ, nếu bạn hướng dẫn Agent "thiết lập một blog WordPress", nó cần thực hiện một chuỗi hành động:
- Tạo cơ sở dữ liệu MySQL và cấu hình quyền người dùng.
- Khởi động môi trường PHP tương thích.
- Cấu hình máy chủ ảo Nginx và proxy ngược (reverse proxy).
- Tạo chứng chỉ SSL và liên kết tên miền phát triển cục bộ.
Nếu Agent cố gắng cài đặt và cấu hình riêng lẻ các dịch vụ này trên hệ thống máy chủ vật lý bằng các lệnh shell tiêu chuẩn, quá trình này rất dễ gặp thất bại do xung đột dependency hoặc sự khác biệt trong môi trường hệ thống của máy chủ.
ServBay hoạt động như một bộ quản lý phát triển AI, tích hợp hơn 50 dịch vụ phát triển có sẵn (bao gồm MySQL, PostgreSQL, Redis, MongoDB, PHP, Node.js và Go) đồng thời hỗ trợ gốc cả tính năng MCP Server và AI Gateway. Điều này tạo nên một sự kết hợp ăn ý: dsh quản lý logic lập luận và điều phối các bước của Agent, trong khi ServBay cung cấp các môi trường cục bộ riêng biệt để thực thi các bước đó một cách an toàn.
3. Cấu Hòn Môi Trường Từng Bước
Bước 1: Thiết Lập Môi Trường Node.js Trong ServBay
dsh yêu cầu môi trường Node.js phiên bản 22.19 trở lên. ServBay cho phép bạn cài đặt và quản lý các phiên bản Node.js chỉ với một cú nhấp chuột, không cần tải xuống thủ công hay cấu hình nvm phức tạp:
- Mở bảng điều khiển ServBay và đi tới Services (Dịch vụ).
- Chọn phiên bản mới nhất của Node.js 22.x, sau đó tiến hành cài đặt và kích hoạt.
- Sau khi cài đặt, bạn có thể gọi trực tiếp lệnh
nodevànpmtrong terminal của mình.

Lưu ý: Hãy đảm bảo phiên bản Node.js của bạn tối thiểu là 22.19. Trong các bản phát hành trước đó, việc thiếu hỗ trợ cho
createZstdDecompressvàAbortSignal.timeoutcó thể khiếndshbị crash khi thực thi (được ghi nhận trong các cuộc thảo luận chính thức #100 và #311).
Đồng thời, hãy đảm bảo bạn đã lấy DeepSeek API key từ platform.deepseek.com để thêm vào tệp cấu hình của dsh.
Bước 2: Cài Đặt và Chạy dsh
Sau khi môi trường Node.js đã sẵn sàng, hãy thực thi lệnh sau trong terminal để tải và khởi động dsh:
npx -y @deepseek-ai/dsh web
Quá trình tải các dependency ban đầu mất khoảng từ 1 đến 3 phút. Sau khi khởi động thành công, terminal sẽ hiển thị dòng thông báo:
dsh web: http://127.0.0.1:3080

Mở địa chỉ này trên trình duyệt của bạn để truy cập giao diện Web UI. Để tăng tốc độ khởi động cho các phiên làm việc sau, chúng tôi khuyên bạn nên cài đặt gói này ở chế độ toàn cục (global):
npm install -g @deepseek-ai/dsh
dsh web
Trong giao diện của dsh, bạn có thể chọn cấp độ lập luận (inference tier) ngay cạnh hộp nhập liệu. Đối với các thao tác tệp thông thường hoặc thực thi script cơ bản, việc chọn cấp độ low (hoặc tắt tính năng deep thinking) sẽ giảm độ trễ lập luận trước các lượt gọi công cụ. Hãy chuyển sang cấp độ high hoặc max khi cần tái cấu trúc logic phức tạp.
Bước 3: Cấu Hình ServBay MCP Server
Model Context Protocol (MCP) là một tiêu chuẩn tương tác mở. MCP Server tích hợp sẵn của ServBay giúp hiển thị các API quản lý dịch vụ cục bộ một cách an toàn cho các AI Agent.
Hãy chỉnh sửa tệp cấu hình toàn cục của dsh tại ~/.dsh/settings.yaml và thêm khai báo kết nối ServBay bên dưới khối mcpServers:
mcpServers:
servbay:
command: servbay-mcp-server
args: []
env: {}
Sau khi cấu hình, Agent chạy trong dsh sẽ được cấp quyền để quản lý môi trường local:
- Khởi động, dừng và tải lại hơn 50 dịch vụ phát triển, bao gồm Nginx, MySQL, Redis và MongoDB.
- Tự động tạo các tên miền phát triển cục bộ (ví dụ:
*.servbay.host) và cấp chứng chỉ SSL tương ứng. - Chuyển đổi linh hoạt môi trường runtime như các phiên bản PHP (5.6 đến 8.4) hoặc Node.js.
- Đọc và kiểm tra log đầu ra của dịch vụ để khắc phục các lỗi môi trường.
4. Thực Hành Thực Tế: Triển Khai Website và Cơ Sở Dữ Liệu Bằng Prompt
Sau khi MCP Server đã được kết nối, hãy nhập prompt sau vào giao diện Web UI của dsh:
"Hãy giúp tôi thiết lập môi trường phát triển WordPress với các bước sau:
- Khởi động dịch vụ MySQL 8.0 và PHP 8.3.
- Tạo một cơ sở dữ liệu có tên là
wp_db.- Liên kết tên miền
myblog.servbay.hostvà tạo chứng chỉ SSL cho HTTPS."

Khi nhận được nhiệm vụ, Agent sẽ phân rã các bước hướng dẫn bằng logic runtime của dsh và lần lượt gọi các API của ServBay thông qua giao thức MCP:
graph TD
dsh[dsh Agent] -->|MCP Call| s1[Enable MySQL & PHP 8.3]
dsh -->|MCP Call| s2[Create wp_db Database]
dsh -->|MCP Call| s3[Bind myblog.servbay.host & Issue SSL]
s1 --> servbay[ServBay Dev Environment]
s2 --> servbay
s3 --> servbay
Bảng Trajectory (Bản đồ tiến trình) ở góc trên bên phải hiển thị các API endpoint cụ thể được gọi bởi Agent và phản hồi trạng thái định dạng JSON. Toàn bộ kiến trúc trang web local được xây dựng tự động mà không yêu cầu lập trình viên phải nhập thủ công lệnh SQL hoặc chỉnh sửa tệp cấu hình Nginx.

So Sánh: Có MCP và Không Có MCP
| Hoạt động | Không có ServBay MCP | Có ServBay MCP |
|---|---|---|
| Khởi động MySQL | Agent đưa ra hướng dẫn thiết lập; lập trình viên tự thực hiện thủ công. | Agent trực tiếp gọi API để khởi động dịch vụ và xác minh trạng thái hoạt động. |
| Tạo Cơ sở dữ liệu | Agent hiển thị các lệnh SQL; lập trình viên tự đăng nhập và thực thi. | Agent kích hoạt công cụ tạo cơ sở dữ liệu, trả về tên database và thông tin kết nối. |
| Cấu hình Website HTTPS | Agent hiển thị các template cấu hình Nginx và các bước tạo chứng chỉ. | Agent ánh xạ tên miền local, cấp chứng chỉ SSL và cấu hình proxy định tuyến chỉ trong một cuộc gọi duy nhất. |
Sự khác biệt rất rõ ràng: việc kết nối với MCP Server đã chuyển dịch vai trò của Agent từ một cố vấn thụ động (chỉ biết cung cấp danh sách hướng dẫn) thành một người thực thi chủ động trực tiếp xử lý công việc.
5. Quản Lý Token và Tối Ưu Hóa Chi Phí Qua AI Gateway
Các luồng công việc Agent phức tạp thường đòi hỏi gửi yêu cầu tới nhiều LLM bên ngoài khác nhau. Việc lưu trữ trực tiếp API key thô bên trong các tệp cấu hình dự án cục bộ dễ dẫn đến nguy cơ rò rỉ nếu các lệnh push vô tình tải các tệp đó lên các kho lưu trữ công khai. Ngoài ra, các vòng lặp lập luận và gọi công cụ liên tục sẽ tiêu thụ một lượng token đáng kể.
AI Gateway tích hợp sẵn của ServBay hoạt động như một cổng định tuyến và proxy tập trung cho các API LLM (có thể truy cập qua https://gateway.servbay.host).
1. Quản Lý Tập Trung Các Backend LLM
Trong bảng điều khiển ServBay AI Gateway, bạn can cấu hình các API đám mây từ các nhà cung cấp khác nhau cùng các mô hình local chạy trên Ollama thành các kênh thượng nguồn thống nhất, giúp quản lý tập trung các chính sách định tuyến và phân nhóm.
2. Cập Nhật Cấu Hình Nhà Cung Cấp dsh
Định tuyến endpoint nhà cung cấp của dsh sang địa chỉ Gateway cục bộ của bạn và sử dụng khóa ảo (virtual key) do gateway tạo ra:
providers:
- name: servbay-gateway
baseUrl: https://ai.servbay.host/v1
apiKey: sb_vk_dev_project_alpha
models:
- deepseek-v4-flash
- deepseek-v4-pro
- qwen-2.5-coder-local
3. Lợi Ích Khi Sử Dụng AI Gateway
- Bảo mật thông tin đăng nhập: Các API key gốc của bạn luôn được lưu trữ mã hóa an toàn bên trong ServBay. Các ứng dụng bên ngoài chỉ tương tác qua các khóa ảo do gateway cấp. Nếu khóa ảo bị lộ, bạn có thể thu hồi nó ngay lập tức trong bảng điều khiển ServBay mà không ảnh hưởng đến các khóa gốc.
- Tự động chuyển đổi mô hình dự phòng (Seamless Model Fallback): Bạn có thể cấu hình các quy tắc failover trong bảng điều khiển Gateway. Nếu API DeepSeek trên đám mây gặp tình trạng giới hạn tần suất gọi hoặc timeout, các yêu cầu sẽ tự động được chuyển hướng sang một mô hình mã nguồn mở chạy local trên Ollama để đảm bảo luồng công việc không bị gián đoạn.
- Giám sát tiêu thụ token: Gateway ghi lại lưu lượng token sử dụng và chi phí cho từng yêu cầu cụ thể, giúp bạn dễ dàng theo dõi ngân sách phát triển dự án. Do
dshthực hiện các vòng lặp lập luận trước mỗi lượt gọi công cụ, việc giám sát chi phí giúp tránh các hóa đơn API phát sinh ngoài tầm kiểm soát. - Thay đổi mô hình không cần đổi cấu hình: Để chuyển đổi từ DeepSeek V4 Flash sang V4 Pro, hoặc định tuyến yêu cầu sang mô hình Ollama local, bạn chỉ cần điều chỉnh các quy tắc định tuyến trong bảng điều khiển Gateway. Các cấu hình dự án
dshcủa bạn sẽ được giữ nguyên vẹn hoàn toàn.
6. Các Câu Hỏi Thường Gặp (FAQ)
Tại sao việc cài đặt dsh lại mất nhiều thời gian?
Quá trình cài đặt ban đầu qua npx sẽ tải xuống hơn 500 gói NPM, việc này có thể mất tới 8 phút trên một số hệ thống Windows. Chúng tôi khuyên bạn nên cài đặt gói này trên toàn cục bằng lệnh npm install -g @deepseek-ai/dsh để tăng tốc độ khởi động cho các phiên làm việc sau. Nếu bạn muốn bỏ qua bước cấu hình Node.js thủ công, ServBay cung cấp tính năng cài đặt Node.js nhanh chóng với nhiều tùy chọn phiên bản.
dsh hỗ trợ những mô hình nào?
dsh sử dụng mặc định các mô hình deepseek-v4-flash và deepseek-v4-pro. Tuy nhiên, kiến trúc mô-đun của nó cho phép bạn kết nối với bất kỳ backend mô hình nào tương thích với định dạng API OpenAI. Việc kết hợp dsh với ServBay AI Gateway giúp bạn quản lý đồng thời các backend của DeepSeek, OpenAI, Anthropic, Google và Ollama dưới một cổng kết nối duy nhất.
ServBay MCP Server có bị xung đột với cấu hình MCP của Claude Code không?
Không. Model Context Protocol là một tiêu chuẩn mở. ServBay MCP Server có thể nhận kết nối đồng thời từ nhiều công cụ Agent khác nhau (bao gồm dsh, Claude Code, Cursor và Codex). Mỗi công cụ duy trì tệp cấu hình độc lập của riêng mình.
Các khóa của AI Gateway có an toàn không?
Tất cả các API key gốc đều được lưu trữ bảo mật bên trong hệ thống mã hóa nội bộ của ServBay và không bao giờ bị tải lên bất kỳ máy chủ bên ngoài nào. Các khóa ảo do gateway tạo ra có thể được hủy bỏ ngay lập tức từ bảng điều khiển local nếu phát hiện nguy cơ rò rỉ.
dsh đã sẵn sàng cho môi trường production chưa?
Phiên bản hiện tại của dsh là 0.1.0-rc.6 (và các bản RC tiếp theo) vẫn đang trong giai đoạn thử nghiệm (pre-release). Các API cốt lõi và giao diện plugin của nó vẫn đang liên tục được tối ưu hóa và cập nhật. Tài liệu hướng dẫn dsh-handbook do cộng đồng biên soạn có ghi nhận một số lỗi đã biết và kinh nghiệm triển khai thực tế, đây là những nguồn tham khảo giá trị trước khi bạn có ý định đưa nó vào vận hành thực tế.
7. Kết Luận
Việc mã nguồn mở DeepSeek Harness đã mang đến cho các lập trình viên một khung làm việc rõ ràng và có tính mô-đun cao để tự xây dựng Agent runtime cho riêng mình. Bằng cách kết hợp nó với kho dịch vụ local đa dạng của ServBay, cùng MCP Server và AI Gateway tích hợp sẵn, bạn có thể nhanh chóng xây dựng được một môi trường phát triển local an toàn, dễ giám sát và đạt hiệu quả cao.
Tài nguyên tham khảo:
- Kho lưu trữ chính thức của
dsh: github.com/deepseek-ai/deepseek-harness - Sách hướng dẫn dsh từ cộng đồng: github.com/Electricitysheep/dsh-handbook
- Trang web chính thức của ServBay: servbay.com
Lưu ý: Bài viết này dựa trên phiên bản dsh 0.1.0-rc.6 và các bản cập nhật RC mới nhất. Do dự án vẫn đang trong giai đoạn pre-release, các tính năng và API có thể thay đổi trong các bản phát hành tiếp theo.
All Rights Reserved