Tôi chạy một nền tảng agent tự host tên Hive trên phần cứng sẵn có — vài container Proxmox, mấy máy Apple Silicon, và một proxy gom mọi model về sau một endpoint tương thích OpenAI. Ai cũng tưởng phần thú vị là model. Không phải. Phần thú vị là playbook: một nhóm nhỏ các tổ hợp lặp lại, biến cùng một nền tảng thành năm chuyên gia khác nhau.

Một ô chat với LLM phía sau chỉ là đồ chơi. Nó nói về pull request của bạn được nhưng không review được, mô tả kế hoạch test được nhưng không chạy được. Thứ khiến Hive trụ lại không phải model thông minh hơn — mà là cho agent đôi tay, rồi học xem tay nào giao cho agent nào. Đây là toàn bộ playbook.

Hai lựa chọn, rồi ghép Lego

Mỗi workflow là hai quyết định.

Engine. Fast là một tool-loop — model gọi tool, đọc kết quả, gọi tool khác, trả lời. Gọn và rẻ; dùng khi bạn đã biết hình dạng công việc. Smart là Claude Agent SDK chạy tự chủ — nó tự lập kế hoạch, đi nhiều bước, tự xử lý phần bạn không nói rõ. Fast cho “làm cái này,” smart cho “tự tìm cách.”

Surface. Chat là tương tác. Origin là bảng kanban các lần chạy tự chủ — giao một thẻ rồi đi làm việc khác. Automation kích hoạt agent theo lịch, theo webhook, hoặc qua tin nhắn Telegram.

Chọn engine, giao tool, chọn surface. Tất cả bên dưới chỉ là vậy.

1. Code — ba số

Sai lầm là dùng số nặng nhất cho mọi thứ.

  • Chat: agent fast với run_code (chạy sandbox) và run_tests (clone repo, tự nhận npm/pytest/go/make, chạy) cho các đoạn code nhỏ và “test còn xanh không?”.
  • Giao việc: cursor_code đẩy task cho một Cursor Cloud Agent — nó clone repo, sửa, mở PR; một thay đổi nhanh trong lúc tôi vẫn chat.
  • Tự chủ: Origin với harness smart clone repo, lập kế hoạch, code, test, tự review, và mở PR, phát từng bước lên timeline.

Rồi vòng lặp khép lại: một agent reviewer chạy pr_review (tách mô tả PR thành từng khẳng định, kiểm chứng từng cái với diff) và đăng kết luận bằng github_pr_review — duyệt và gắn nhãn qa-pass, hoặc yêu cầu sửa kèm chi tiết.

2. Research — phải có phần đuôi

Research vô nghĩa nếu bốc hơi vào một cuộc chat không ai đọc lại.

Agent fast với web_search, fetch_url, wikipedia để thu thập; một luật trong harness — tìm trước, trích nguồn, rồi mới trả lời — giữ nó trung thực. Câu hỏi lớn giao cho engine smart, nó tự lập lộ trình tìm kiếm. Phần đuôi mới là điểm mấu chốt: save_knowledge / save_context ghi kết quả vào một knowledge base dùng chung có tìm kiếm ngữ nghĩa, để mọi agent có search_knowledge nhớ lại mãi mãi. Chat dùng-một-lần trở thành trí nhớ tổ chức.

3. QC — gồm cả các agent

Hai mục tiêu: code, và các agent.

run_tests là cổng rẻ. Cái làm tôi tin một lần deploy hơn hẳn là browser_agent — nó lái một Chromium thật: điều hướng, click, gõ, điền form, đăng nhập web app. Thông tin đăng nhập lấy từ Vaultwarden (model không bao giờ thấy mật khẩu) và một session bền giữ đăng nhập qua nhiều bước. “Đăng nhập, tạo đơn hàng, xác nhận tổng tiền, chụp màn hình” chạy thẳng trên bản preview thật. Một lỗi trở thành github_create_issue kèm ảnh chụp chỗ hỏng.

Và các agent trôi lệch ngay khi bạn động vào harness — nên một eval harness ghim hành vi bằng golden set và chạy mỗi lần lưu. Eval là unit test cho prompt. QC mà bỏ qua các agent là QC có điểm mù.

4. BA — đầu ra là một file

Đây là nơi việc thiếu đôi tay của ô chat gây đau nhất, và là nơi tool đền đáp rõ nhất, vì đầu ra là một tài liệu ai đó mở ra đọc.

Agent thu thập trước — calendar, recent_emails, search_knowledge — rồi save_context để chốt bức tranh. Sau đó nó viết ra sản phẩm: generate_docx (markdown → BRD Word), generate_pptx (dàn ý → slide cho stakeholder), generate_xlsx (JSON → backlog / ma trận yêu cầu), mỗi cái là một link tải. Cuối cùng github_create_issue hoặc Linear (qua MCP) biến từng yêu cầu thành ticket. Từ khảo sát tới backlog — spec, slide và ticket — trong một cuộc trò chuyện.

5. Ops — con ngựa thồ lặng lẽ

Một agent smart với bash và quyền chỉ đọc là một auditor (auditor AWS read-only của tôi là mẫu: chạy lệnh thật, hiện output thật, không bao giờ thử ghi vì đằng nào cũng bị chặn). Kiểm tra nhẹ hơn dùng agent fast với http_request (từ chối địa chỉ nội bộ). Bất kỳ agent nào cũng chạy không cần trông coi qua trigger theo lịch, webhook, hoặc tin Telegram, kết quả đẩy về bằng telegram_send.

Sự kết hợp mới là điểm mấu chốt

Không agent nào ở đây ấn tượng khi đứng một mình. Giá trị nằm ở tấm vải nối chúng: research nuôi KB, agent BA đọc KB và viết BRD, Origin hiện thực spec, agent QA browser-test bản preview, reviewer duyệt PR. Mỗi bước là một chuyên gia hẹp làm tốt một việc.

Đó là bài học khi xây nó: đừng đuổi theo một trợ lý biết-tuốt — đó chỉ là cái bẫy ô-chat trong một cái hộp to hơn. Hãy dựng một hộp công cụ gồm các chuyên gia hẹp và một tấm vải nối chúng lại. Model thì bạn thuê; playbook thì bạn tự xây. Và đòn bẩy nằm ở playbook.

Xuất nội dung

Bình luận