So sánh mọi harness AI mã nguồn mở

So sánh các harness mã nguồn mở (OpenCode, Pi, DeepSeek Harness, Hermes, OpenClaw...) theo 10 trục: model, sandbox, memory, độ sống, license.

Đã duyệt độc lập · cập nhật 26/10/2026 · 29 min

1. Harness quan trọng hơn model

Zombie Process mở đầu video (đăng ngày 10/10/2026) bằng một nhận định: năm nay, phần mềm quan trọng nhất trong editor của bạn không còn là model nữa. Đó là harness, tức vòng lặp bọc quanh model, cùng với tools, sandbox, memory và các quy tắc về context. Theo người dẫn, năm 2026 là năm các harness mã nguồn mở trở nên nghiêm túc.

Người dẫn đưa ra một loạt con số, tính đến video đăng ngày 10/10/2026: DeepSeek công bố harness của mình vào tháng 8 và nhận 100.000 sao trong hai ngày. OpenCode đã vượt mốc 200.000 sao. Hermes của Nous Research ở mức một phần tư triệu sao. OpenClaw, một gateway cho trợ lý cá nhân, là repo agent có nhiều sao nhất trên GitHub. Và Google đã lặng lẽ khai tử agent mã nguồn mở 100.000 sao của chính mình, thay bằng một agent closed source.

Người dẫn nói đã cài và chạy thử tất cả, và video là bản so sánh đầy đủ (video đăng ngày 10/10/2026).

2. Harness là gì, và hai thứ quan trọng hơn cả

Trước hết là một định nghĩa nhanh, vì mỗi người dùng chữ này một kiểu. Model là bộ não: GPT, Claude, Gemini, DeepSeek, Qwen, hoặc một model nào đó chạy trên GPU của chính bạn. Harness là mọi thứ còn lại: agent loop đưa tool call cho model, các file tool, việc thực thi shell, hệ thống permission, sandbox, phần quản lý context window, định dạng session, các memory file và hệ thống extension. Theo Zombie Process (video đăng ngày 10/10/2026), Claude Code là một harness, OpenCode cũng vậy. Model quyết định làm gì. Harness quyết định model được phép làm gì, và kết quả quay trở lại context ra sao.

Slide Model = the brain. Harness = everything else, với sơ đồ các lớp của harness
Slide định nghĩa trong video (đăng ngày 10/10/2026): vòng lặp prompt, model, tool calls, execute, append result, lặp tới khi model dừng; bên dưới là tools, edit format, permissions, sandbox, context/compaction, memory files, MCP, sessions, subagents, extension system; dưới cùng là model của bất kỳ provider nào.

Trong các thành phần đó, theo người dẫn (video đăng ngày 10/10/2026), có hai thứ quan trọng hơn phần còn lại. Thứ nhất là edit format: một thay đổi được đề xuất thật sự được ghi xuống đĩa như thế nào. Kiểu thay thế khớp chính xác (exact match replace) sẽ thất bại một cách ồn ào. Các patch grammar thì được tinh chỉnh cho từng model cụ thể. Người dẫn dẫn benchmark của Aider: chỉ riêng việc đổi edit format đã đưa một model từ 20% lên 61%.

Thứ hai là sandbox và mô hình permission: agent được chạm vào những gì mà không cần hỏi bạn. Theo người dẫn (video đăng ngày 10/10/2026), đó là khác biệt giữa một intern hữu ích và một đường phát tán ransomware.

Vì sao chuyện này quan trọng vào lúc quay video? Theo Zombie Process (video đăng ngày 10/10/2026), vì các frontier model đã hội tụ. Harness là nơi các công cụ vẫn còn khác nhau: sandboxing, quản lý context, memory, và việc bạn được phép chạy những model nào. Đó là các trục mà video dùng để so sánh mọi thứ.

3. Mười trục chấm điểm và cuộc đua sao trên GitHub

Video dùng mười trục, và mọi harness đều được chấm trên cả mười. Người dẫn nói sẽ không chấm trên thang 100 như vài bộ tiêu chí đã công bố, mà cho xem hành vi thật trên màn hình, với các lệnh gõ trực tiếp (video đăng ngày 10/10/2026). Bảng tiêu chí trên màn hình liệt kê mười trục cùng câu hỏi của từng trục:

  1. Model freedom: một vendor, hay bất kỳ model nào, kể cả model local?
  2. Sandbox: kernel của hệ điều hành cưỡng chế, prompt hỏi theo policy, hay không có gì?
  3. Edit format: exact replace, patch grammar, hay fuzzy cascade?
  4. Context và compaction: chuyện gì xảy ra khi context window đầy?
  5. Memory files: AGENTS.md, CLAUDE.md, hay định dạng riêng?
  6. Sessions: resume, fork, rewind, replay?
  7. Extensibility: hooks, skills, MCP, plugins?
  8. Surfaces: TUI, IDE, web, ứng dụng chat, SDK?
  9. Liveness và license: còn sống không? MIT hay Apache? Có thật sự mở?
  10. Setup burden: mất bao nhiêu phút tới task hữu ích đầu tiên.

Con số nổi bật, theo người dẫn (video đăng ngày 10/10/2026): harness của DeepSeek đạt 100.000 sao trong khoảng hai ngày sau khi ra mắt ngày 13/8, và tới cuối tháng thì đã nhích qua OpenCode để giành ngôi số sao thô, trong khi vẫn là một bản alpha 0.1 nói rõ là sẽ có breaking change. Người dẫn nói tốc độ tăng sao không phải là mức độ được dùng thật, nhưng nó cho biết sự chú ý đang đổ về đâu.

Biểu đồ cột số sao GitHub của các harness mã nguồn mở
Biểu đồ số sao GitHub trong video (đăng ngày 10/10/2026), ghi là ảnh chụp ngày 29/8/2026 và cập nhật 1 đến 9/10: OpenClaw 391K, Hermes 251K, OpenCode 212K, DeepSeek dsh 203K, Codex CLI 127K, Gemini CLI 107K, Pi 111K. Nhãn dán ghi "velocity ≠ adoption". Ở bản cập nhật tháng 10 trên biểu đồ, OpenCode đứng trên dsh.

Trong khi đó, hai repo lớn nhất tính theo số sao thô lại không phải coding agent theo nghĩa terminal. OpenClaw là một gateway nối các ứng dụng chat của bạn với AI agent, 390.000 sao. Hermes của Nous Research là một agent đa dụng đặt memory lên trước, một phần tư triệu sao. Người dẫn nói video sẽ nói tới cả hai, vì chúng làm mờ ranh giới của chính chủ đề này (số liệu tính đến video đăng ngày 10/10/2026).

Thêm một con số nữa, theo video đăng ngày 10/10/2026: Gemini CLI của Google, 107.000 sao, Apache 2.0, 6.000 pull request từ cộng đồng, bị ngừng cho người dùng cá nhân vào ngày 18/6/2026, và được thay bằng một file binary viết bằng Go, closed source, tên là Antigravity CLI. Câu chuyện này được dành hẳn một chương riêng ở phần sau.

4. Bốn nhóm harness: tối giản đối đầu tối đa

Theo Zombie Process (video đăng ngày 10/10/2026), mọi harness trong video đều thuộc một trong bốn "bộ tộc", và tất cả đang mặc cả quanh một trục trung tâm: chủ nghĩa tối giản (minimalism) đối đầu chủ nghĩa tối đa (maximalism). Ở một cực là một harness bốn tool với system prompt dưới một nghìn token. Ở cực kia là 13 tool dựng sẵn, 35 language server, năm agent và sáu surface khác nhau. Mọi thứ còn lại nằm đâu đó ở giữa.

Slide bốn bộ tộc trong video (đăng ngày 10/10/2026) chia như sau: Minimalists (Pi, mini-swe-agent, Aider, với câu "if I don't need it, it doesn't get built"); Maximalists (OpenCode, Qwen Code, batteries included và nhiều surface); Lab harnesses (Codex, Grok Build, dsh, Qwen, nơi các lab không còn để terminal cho bên thứ ba); và Always-on assistants (OpenClaw, Hermes, những agent có memory sống trong ứng dụng chat của bạn).

tối giản ⟷ tối đa MinimalistsPi, mini-swe-agent, Aider"if I don't need it, it doesn't get built" MaximalistsOpenCode, Qwen Codebatteries included, nhiều surface Lab harnessesCodex, Grok Build, dsh, Qwenlab tự làm harness cho terminal Always-on assistantsOpenClaw, Hermesagent có memory, sống trong app chat
Hình 4.1Bốn nhóm harness theo cách chia của Zombie Process (video đăng ngày 10/10/2026), xếp trên trục tối giản và tối đa.

5. OpenCode: cài đặt, provider và hai agent

Theo người dẫn (video đăng ngày 10/10/2026), OpenCode là lựa chọn được khuyên dùng mặc định là có lý do: đây là coding agent mã nguồn mở đầy đủ nhất mà vẫn không chịu khoá bạn vào một model. License MIT, kiến trúc client-server, và nó chạy ở mọi nơi: terminal, desktop, extension cho IDE, và một server headless mà điện thoại của bạn có thể nói chuyện cùng.

Cài đặt chỉ cần một lệnh. Sau đó là opencode auth login để chọn provider (lệnh này hiện trên màn hình mở đầu video, với danh sách integration để chọn). Theo người dẫn, triết lý của OpenCode lộ ra ngay ở bước này: Anthropic, OpenAI, Google, một dịch vụ API trung gian cho model, GitHub Copilot, model local qua Ollama, và hơn 75 provider qua models.dev. Người dẫn nói một key của dịch vụ trung gian đó chạy được mọi harness trong video (video đăng ngày 10/10/2026).

OpenCode có sẵn hai agent, chuyển qua lại bằng phím Tab. Build có toàn quyền: nó sửa file và chạy lệnh. Plan thì chỉ đọc: mặc định nó từ chối sửa file và hỏi trước khi chạy bất cứ thứ gì. Theo người dẫn (video đăng ngày 10/10/2026), đó là lượt đi đầu rẻ tiền khi gặp một repo lạ: khám phá, lập plan, rồi chuyển sang Build để thực thi. Ngoài ra còn một subagent tổng quát, gọi bằng @general, cho việc tìm kiếm và nghiên cứu nhiều bước.

Plan (chỉ đọc)khám phá repo lạtừ chối sửa, hỏi trước khi chạy Tabđổi agent@general cho việc tìm kiếm Build (toàn quyền)sửa file, chạy lệnhthực thi plan
Hình 5.1Cách dùng hai agent của OpenCode mà video gợi ý (đăng ngày 10/10/2026): đi lượt đầu bằng Plan, rồi bấm Tab sang Build.

6. OpenCode: ba tính năng và ba điểm trừ

Theo Zombie Process (video đăng ngày 10/10/2026), có ba tính năng tách OpenCode khỏi phần còn lại. Một là tích hợp LSP có sẵn: compiler phản hồi model sau mỗi lần sửa, nên model thấy lỗi type của chính nó thay vì phải đoán. Hai là undo bằng shadow git: /undo và /redo mà không đụng tới lịch sử git thật của bạn. Ba, và người dẫn gọi đây là kiến trúc không ai khác ghi lại trong tài liệu: một sự tách bạch client-server thật sự. opencode serve chạy một HTTP server headless, còn TUI chỉ là một client. Gập laptop lại thì session vẫn sống trên cái máy quan trọng. Terminal, desktop, IDE, web, Slack đều dùng chung một engine bên dưới.

Slide ba tính năng của OpenCode: LSP feedback loop, /undo, client/server
Slide ba tính năng của OpenCode trong video (đăng ngày 10/10/2026): LSP feedback loop; /undo bằng shadow-git, có cả /redo; và opencode serve chạy HTTP headless ở cổng 4096. Nhãn "nobody else documents this" là nhận định của video.

Rồi đến ba điểm trừ, theo người dẫn (video đăng ngày 10/10/2026). Một: không có sandbox ở cấp hệ điều hành. Permission của OpenCode là các quy tắc trong config, mạnh và chi tiết, nhưng không được kernel cưỡng chế như của Codex. Hai: độ rộng có cái giá của nó. Người dẫn nói "750 provider" nghĩa là nhiều bề mặt cấu hình hơn, còn slide điểm trừ trên màn hình ghi là hơn 75 provider. Ba: OpenCode không miễn nhiễm với chuyện chính trị của nền tảng. Vào tháng 1/2026, Anthropic buộc OpenCode bỏ việc đăng nhập bằng gói Claude Pro và Max. API key vẫn dùng được, và gói ChatGPT giờ chạy được trực tiếp. Theo người dẫn, đó chính là lý do các harness không phụ thuộc provider tồn tại, và cũng là lý do bạn đừng giả vờ rằng chuyện chính trị giữa các provider không với tới chúng.

Cho tự động hoá, opencode run chạy một task ở chế độ headless. Dự án cũng có một dịch vụ riêng gồm hơn 40 model được chọn lọc, tính giá theo token, cho ai không muốn tự mang key. Nhưng theo người dẫn (video đăng ngày 10/10/2026), phần lõi vẫn là MIT, không lưu code khi bạn dùng key của mình (BYOK), và toàn bộ có thể fork.

7. Pi: bốn tool và một prompt dưới 1.000 token

Nếu OpenCode là chủ nghĩa tối đa thì Pi là lập luận phản biện. Theo Zombie Process (video đăng ngày 10/10/2026), Pi do Mario Zechner làm ra, người đã rời bỏ Claude Code vì, theo lời ông, nó đã biến thành "một con tàu vũ trụ với 80% tính năng tôi không dùng". Pi đưa cho model bốn tool: read, write, edit, bash. System prompt cộng với phần mô tả tool nằm dưới một nghìn token. Không có prompt xin permission, không có plan mode, không có subagent dựng sẵn. Mọi thứ khác bạn tự thêm, hoặc nhờ chính Pi build cho bạn.

Cài đặt bằng installer có ghim phiên bản, installer này cũng lo luôn Node nếu máy chưa có; hoặc cài từ npm với tuỳ chọn bỏ qua script (ignore scripts). Theo người dẫn (video đăng ngày 10/10/2026), việc này là cố ý: tác giả của Pi coi các lifecycle script của dependency là code cần được review. Trong terminal, /login để chọn provider, /model để đổi model. Hơn 15 provider, 324 model trong danh mục. Người dẫn nói Pi thật sự không phụ thuộc model.

Bảng Pi minimalism scorecard
Bảng tóm tắt Pi trong video (đăng ngày 10/10/2026): 4 tool mặc định (read, write, edit, bash); system prompt cộng tools dưới 1.000 token; không có lớp permission, khuyên dùng container; không có plan mode, thay bằng viết một file PLAN.md; không có subagent, Pi tự gọi chính nó qua bash; hơn 15 provider, 324 model; extension bằng TypeScript và package npm/git.

8. Pi: extension, ba tầng script và chuyện an toàn

Đây là luận điểm thật của Pi, theo người dẫn (video đăng ngày 10/10/2026): thay vì ship tính năng, nó ship một điểm mở rộng. Extension viết bằng TypeScript có quyền truy cập tools, commands, phím tắt, events và toàn bộ giao diện terminal. Rồi skills, prompt template, theme. Bạn gói chúng thành Pi package và phân phối qua npm hoặc git. Và nếu không muốn tự build thì nhờ Pi build. Pi không phải một sản phẩm đóng kín: cần một command, một tool, một provider, một workflow hay một chỉnh sửa UI, cứ bảo Pi build, nó sẽ tự tuỳ biến chính nó ngay lúc đó.

Người dẫn nói lời phê bình thì tự nó hiện ra: "build nó thành extension" không xoá đi độ phức tạp, mà chỉ chuyển độ phức tạp sang từng người dùng. Và Pi đã quay ngược ở hai điểm ban đầu nó không muốn có: tính đến video đăng ngày 10/10/2026, Pi đã có MCP và auto-compaction.

Theo video (đăng ngày 10/10/2026), Pi có thể script theo ba tầng: print mode cho lệnh chạy một lần, JSON mode cho luồng sự kiện, RPC mode để tích hợp với process khác, cộng thêm một TypeScript SDK nhúng thẳng agent vào ứng dụng. OpenClaw, ở phần sau của video, là một ví dụ tích hợp Pi ngoài đời thật. Người dẫn nói đó là cách các mảnh ghép khớp với nhau.

Print modechạy một lần JSON modeluồng sự kiện RPC modetích hợp process TypeScript SDKnhúng agent
Hình 8.1Ba tầng script của Pi cộng với SDK, theo video đăng ngày 10/10/2026.

Điểm trừ được nói thẳng trong tài liệu của Pi: không có hệ thống permission. Pi chạy với đúng quyền của user của bạn, hết. Trên màn hình hiện dòng chữ lớn "No permission system. Runs as you. Full stop." README của Pi (đọc ngày 26/10/2026) ghi Pi không có hệ thống permission dựng sẵn, chạy với quyền của user và process đã khởi động nó, và khuyên container hoá hoặc sandbox nó. Người dẫn kể các lựa chọn: Docker, một sandbox có kiểm soát bằng policy, hoặc Gondolin, một extension micro-VM Linux đưa các tool dựng sẵn vào trong VM nhưng giữ phần xác thực provider ở máy host (video đăng ngày 10/10/2026).

Theo người dẫn (video đăng ngày 10/10/2026), đó là một thiết kế trung thực, nhưng là thiết kế mà bạn tự chịu trách nhiệm về an toàn. Prompt injection qua một file hay qua output của một lệnh sẽ chạm tới một shell thật.

Vậy Pi dành cho ai? Theo người dẫn (video đăng ngày 10/10/2026), cho những người muốn một harness mà họ đọc hiểu được. Một prompt nhỏ và ổn định thì dễ audit, dễ đánh giá và dễ mở rộng hơn một con tàu vũ trụ. Nếu bạn đang so sánh các model một cách công bằng, một harness tối giản và cố định cũng là thí nghiệm sạch nhất. Muốn đủ pin sẵn (batteries included) thì chọn OpenCode. Muốn làm chủ vòng lặp thì chọn Pi.

9. DeepSeek Harness: kiến trúc thú vị, bản alpha

Người dẫn gọi đây là câu chuyện lớn nhất trong mảng này (video đăng ngày 10/10/2026). DeepSeek công bố harness của riêng mình ngày 13/8/2026. Nó vượt 100.000 sao trong khoảng hai ngày và qua mặt OpenCode để lên vị trí đầu vào cuối tháng, trong khi vẫn là một bản alpha mà README dặn bạn chờ đón breaking change. Hai điều đúng cùng lúc: đây là kiến trúc thú vị nhất trong danh sách, và cũng là thứ kém sẵn sàng cho production nhất. Người dẫn khuyên đối xử với nó cho đúng: một VM dùng xong bỏ, không phải máy chính của bạn.

Không cần cài: chạy npx @deepseek-ai/dsh web, nó phục vụ một web UI ở localhost cổng 3080. Người dẫn lưu ý có một launch token nằm trong URL, hãy giữ link đó riêng tư. Nếu build từ source thì dùng pnpm install và pnpm run build, rồi chạy dsh web qua pnpm. Thông tin xác thực được tìm theo thứ tự ưu tiên: biến môi trường, file credentials được quản lý, rồi một file .env local (theo video đăng ngày 10/10/2026).

Theo người dẫn (video đăng ngày 10/10/2026), kiến trúc chính là điểm bán hàng. Mọi thứ là plugin, kể cả agent loop. Một profile là một chồng có thứ tự các lớp plugin bundle và patch, nằm dưới các override của bạn. dsh web chỉ là profile web. Profile headless chạy một session mới được lưu lại, in câu trả lời cuối rồi thoát: đó là viên gạch cho CI. Profile ACP phục vụ các editor client. Profile SDK phục vụ JSON-RPC. Còn --dump-config in ra cây cấu hình đã ghép, kèm comment cho biết file nào cung cấp từng dòng; người dẫn nói như vậy là nhiều khả năng soi cấu hình hơn những gì phần lớn harness cung cấp trong cả năm viết tài liệu.

Slide Profiles = stacks of plugin layers với các lệnh dsh
Slide kiến trúc của DeepSeek Harness trong video (đăng ngày 10/10/2026): các lớp patch overlay (lớp sau thắng), file cordis.patch.yml ở home và ở profile, plugin bundle kể cả agent loop; bên phải là các lệnh dsh theo từng profile.

Các lệnh trên slide:

dsh web
dsh --profile headless "run the tests"
dsh --profile acp   # editor clients
dsh --profile sdk   # JSON-RPC
dsh web --dump-config | head -40
dsh plugin add github:…/turtle-ui

Vòng lặp mặc định không phải phần lõi đặc quyền mà bạn phải vá; nó là một plugin bundle bạn thay được. Theo người dẫn (video đăng ngày 10/10/2026), đó là ván cược của DeepSeek: nếu harness nên mỏng, an toàn và thay được, thì hãy làm cho chính vòng lặp có thể hoán đổi.

Session là một log chỉ ghi nối (append-only), được nén trên đĩa, có thể resume, fork và replay. Log là nguồn sự thật duy nhất, không phải sản phẩm phụ của UI. Người dẫn nói nếu bạn từng mất một session agent bốn tiếng vì terminal bị crash, bạn sẽ hiểu vì sao điều này quan trọng (video đăng ngày 10/10/2026).

Theo video (đăng ngày 10/10/2026), có bốn mode, từ việc hằng ngày xuống tới một baseline tối giản chỉ hai tool; slide ghi standard, code, minimal và creator. Sandbox mặc định là chỉ đọc, an toàn hơn phần lớn harness khác, và người dẫn nói đó là điều bạn muốn ở một bản preview. Route model mặc định là DeepSeek chính thức với DeepSeek V4 Flash.

Và đây là phần cần nhớ, theo người dẫn (video đăng ngày 10/10/2026): bản tải miễn phí ra mắt chỉ vài ngày trước khi DeepSeek định giá lại phần context agent được cache. Flash với giá 14 cent cho mỗi triệu token input là mặc định tiết kiệm cho việc tìm kiếm và các chỉnh sửa máy móc. Pro với giá 1,74 đô là cho những task mà khả năng suy luận đáng đồng tiền. Harness mã nguồn mở không có nghĩa là chạy miễn phí; token là một dòng chi phí.

Danh sách điểm trừ dài, và theo người dẫn thì DeepSeek nói thẳng về nó (video đăng ngày 10/10/2026). Đây là một bản alpha hai tuần tuổi nằm trên đỉnh bảng xếp hạng độ phổ biến. Cấu hình của bản preview thay đổi giữa các lần nâng cấp. Permission của plugin là thứ bạn phải tự audit. Các định dạng tool call riêng cho từng model cần được test. Bạn tự lo phân tích lỗi. Và nó đặt DeepSeek lên trước: provider khác chạy qua plugin adapter, nhưng phần trau chuốt nhắm vào model DeepSeek.

Đánh giá của người dẫn (video đăng ngày 10/10/2026): đây là kiến trúc quan trọng nhất ở đây, nhưng không phải lựa chọn dùng hằng ngày vào lúc này. Nếu bạn dùng DeepSeek là chính và muốn một TUI terminal thật sự, cộng đồng đã build CodeWhale và Reasonix, sẽ nói tới ở phần sau.

10. Hermes: learning loop, cài đặt và skills

Hermes là chỗ video không còn chỉ nói về coding. Theo Zombie Process (video đăng ngày 10/10/2026), Hermes do Nous Research build, phòng lab đứng sau các model Hermes. Đây là một agent đa dụng với tuyên bố tham vọng nhất trong danh sách: một learning loop dựng sẵn. Nó tạo skill từ kinh nghiệm, cải thiện skill trong lúc dùng, tự nhắc chính nó lưu lại kiến thức, tìm trong các cuộc hội thoại cũ của nó, và xây một mô hình về con người bạn qua nhiều session.

Tính đến video đăng ngày 10/10/2026: một phần tư triệu sao, license MIT. Một installer duy nhất, lo luôn Python, Node, ripgrep và FFmpeg; điều kiện tiên quyết thật sự duy nhất là Git. Sau đó chạy hermes setup. Trên một bản cài mới, bạn có ba mode:

  • Quick setup với Nous Portal: một lần đăng nhập OAuth bao cả model lẫn tool gateway (web search, tạo ảnh, text-to-speech, cloud browser), theo video đăng ngày 10/10/2026.
  • Full setup: bạn tự đi qua từng provider (theo video đăng ngày 10/10/2026).
  • Blank slate: tắt hết trừ mức tối thiểu là thao tác file và terminal. Không web, không browser, không memory, không delegation, không MCP, nên không có gì bạn không chọn được nạp vào, kể cả sau một bản cập nhật (theo video đăng ngày 10/10/2026).

Sau đó có một lệnh mở giao diện hiện đại, hoặc gõ hermes trơn cho CLI cổ điển; theo người dẫn, hai cách dùng chung session, slash command và config (video đăng ngày 10/10/2026).

Skills là memory dạng quy trình (procedural memory): một cái tên, một mô tả và một quy trình từng bước trong file SKILL.md. Theo người dẫn (video đăng ngày 10/10/2026), Hermes đọc các mô tả ngắn mà không tốn gì, và chỉ nạp toàn bộ nội dung khi một task thật sự cần, nên thêm skill không làm phình mỗi request. Mỗi skill đã cài tự động trở thành một slash command, trong CLI lẫn trong bất kỳ nền tảng nhắn tin nào đã kết nối. Và nhờ learning loop, agent tự viết skill từ những gì đã chạy tốt. Người dẫn nói đó là tuyên bố "grows with you", và là phần đáng để tự test trên workflow của chính bạn.

Slide Procedural memory: skills load on demand của Hermes
Slide về memory và skills của Hermes trong video (đăng ngày 10/10/2026): bên trái là các lệnh /skills browse, /skills search kubernetes, /skills install openai/skills/k8s và cấu trúc SKILL.md; bên phải là một ví dụ chat minh hoạ, người dùng gõ /k8s deploy the staging manifest và bot áp dụng 4 bước từ SKILL.md, cùng dòng "refuses models under 64K context".

Bên trên đó, theo video (đăng ngày 10/10/2026), là memory bền vững qua các session, một user profile, các cuộc hội thoại cũ tìm được qua /insights, và cơ chế phát hiện vòng lặp bị kẹt. Hermes cũng từ chối khởi động với model có context dưới 64.000 token; người dẫn nói điều đó cho bạn biết chính xác nó nghĩ gì về context window nhỏ.

11. Hermes rời khỏi terminal

Đây là bước mà các harness terminal không làm, theo người dẫn (video đăng ngày 10/10/2026). hermes gateway setup kết nối Telegram, Discord, Slack, WhatsApp, Signal, email, Teams và Home Assistant. Khi đã kết nối, các slash command gần như giống hệt: /new, /model, /compress, /retry. Bạn nói chuyện với nó từ điện thoại trong khi nó làm việc trên một VPS năm đô. Một màn hình khác trong video cho thấy danh sách nền tảng để cấu hình còn dài hơn nữa, từ Mattermost, Signal, Discord, Email tới Slack, Telegram và WhatsApp.

Slide It leaves the terminal: hermes gateway setup và một khung chat Telegram minh hoạ
Slide gateway của Hermes trong video (đăng ngày 10/10/2026): lệnh hermes gateway setup, các nền tảng hỗ trợ, các slash command dùng chung, cron, voice mode, named bots, ACP; bên phải là khung chat minh hoạ trên Telegram, người dùng nhờ chạy backup đêm trên VPS và bot báo đã chạy dưới dạng cron job rồi báo hoàn tất.

Theo video (đăng ngày 10/10/2026), còn có cron để lên lịch task và gửi kết quả về nền tảng nhắn tin, voice mode, các bot có tên riêng với model và memory riêng, và ACP để editor điều khiển nó (hermes acp). Cấu hình skill và tool theo từng nền tảng bằng hermes tools. Các MCP server khai báo trong một khối YAML. Người dẫn nói Hermes thật sự là một loại sản phẩm khác, chỉ khoác áo coding agent.

Hai điểm trừ, theo người dẫn (video đăng ngày 10/10/2026). Một là phạm vi: hơn 60 tool, gateway, memory, cron, voice, bots. Đây không phải một lõi read, write, edit, bash mà bạn giữ được trong đầu, và bề mặt lớn thì cấu hình cũng lớn. Khi có gì đó không ổn, chạy hermes doctor, nó sinh ra để làm việc đó. Hai là nó cần một model thật sự: model context nhỏ bị từ chối ngay lúc khởi động, và con đường gói thuê bao Nous Portal là lối đi nhanh, nhưng đó là một hoá đơn.

Người dẫn chỉ ra một lệnh trong README: hermes claw migrate, con đường chuyển sang cho người đến từ OpenClaw. README của Hermes (đọc ngày 26/10/2026) vẫn nhắc lệnh này như cách viết cũ, kèm hướng dẫn chuyển từ OpenClaw. Theo người dẫn (video đăng ngày 10/10/2026), hai dự án mã nguồn mở lớn này đang cạnh tranh cho cùng một chỗ: agent cá nhân luôn bật. Và đó là phần tiếp theo.

12. OpenClaw: gateway cho trợ lý cá nhân

391.000 sao, repo agent mã nguồn mở lớn nhất trong video (tính đến video đăng ngày 10/10/2026). Theo người dẫn, OpenClaw không chủ yếu là một coding harness. Nó là một gateway tự host. Một process trên máy bạn hoặc trên server bắc cầu hơn 20 kênh chat, gồm Discord, iMessage, Slack, Teams, Telegram, WhatsApp, Matrix, Google Chat, tới các AI agent có dùng tool, có session, memory và định tuyến nhiều agent. Không có gói trả phí. Không có telemetry mặc định ngoài một lần kiểm tra phiên bản mà bạn tắt được. Không lab nào sở hữu nó; nó do một quỹ độc lập dạng 501(c)(3) vận hành.

Theo video (đăng ngày 10/10/2026), installer phát hiện hệ điều hành, cài Node nếu chưa có (khuyên dùng Node 24 LTS hoặc 26), cài OpenClaw rồi chạy bước onboarding. Nếu bạn cài thẳng qua npm, bạn tự chạy bước onboard kèm cài daemon. Wizard thiết lập gateway, workspace, các kênh và skills, rồi cài daemon chạy nền (launchd trên macOS, systemd trên Linux) để trợ lý luôn chạy. Sau đó openclaw gateway install làm cho nó cố định.

Sản phẩm không phải là gateway; theo người dẫn (video đăng ngày 10/10/2026), gateway là control plane. Sản phẩm là người trợ lý trả lời bạn ở bất cứ đâu bạn đang có mặt: cùng một agent, cùng memory, cùng skills trên mọi kênh đã cấu hình, cùng lúc. Nó nói và nghe trên macOS, iOS và Android, hiển thị một live canvas bạn điều khiển được, và nó agent-native: coding agent có dùng tool, có session và định tuyến nhiều agent là công dân hạng nhất. "Điện thoại của bạn hỏi, máy của bạn làm."

Vậy sao nó có mặt trong một bài so sánh harness? Theo người dẫn (video đăng ngày 10/10/2026), vì một bảng chấm điểm độc lập cho nó 65/100 trên 50 harness, điểm tuyệt đối cho surfaces và orchestration, gần đỉnh cho tự do chọn model, và điểm yếu nhất đúng ở chỗ bạn đoán: isolation và permissions. Nó chạy trên máy bạn, chạm được vào file của bạn và nghe lệnh từ các ứng dụng chat của bạn. Sự kết hợp đó đòi hỏi bạn đối xử với nó đúng như bản chất: một agent mạnh với tầm với rất xa.

Slide Why OpenClaw is in a harness video
Slide lý do OpenClaw có mặt trong video (đăng ngày 10/10/2026): 65/100 trong một bài review 50 harness, surfaces và orchestration 10/10, model layer 9/10, isolation 3/10, permissions 4/10; "a harness host" đọc và viết code qua các agent bạn kết nối; và hệ sinh thái Pi coi OpenClaw là ví dụ tích hợp tiêu biểu.

Điểm trừ, theo người dẫn (video đăng ngày 10/10/2026): nó là gateway, không phải một bạn lập trình cặp trong terminal. Với việc làm repo hằng ngày, các harness terminal tập trung hơn. Cấu hình là cái giá của một trợ lý 20 kênh. Và hệ sinh thái đang hợp nhất lại: Hermes có hẳn một lệnh chuyển từ OpenClaw, nên hãy theo dõi các tín hiệu còn sống của cả hai.

13. Vòng nhanh: Codex CLI, Qwen Code, Grok Build, Goose

Phần tiếp theo là một vòng nhanh qua mười harness. Mở màn, theo Zombie Process (video đăng ngày 10/10/2026): đúng, Codex CLI của OpenAI là mã nguồn mở, Apache 2.0, được viết lại bằng Rust (96% codebase). Nó có mô hình permission rõ ràng nhất trong lĩnh vực: sandbox mode kết hợp với approval policy, được hệ điều hành cưỡng chế, Seatbelt trên macOS, Landlock và seccomp trên Linux. Ở mode mặc định workspace-write, network bị tắt trừ khi bạn chủ động bật.

Theo video (đăng ngày 10/10/2026), Codex CLI đọc AGENTS.md, chỉ nói chuyện qua Responses API, đăng nhập bằng tài khoản ChatGPT, và có flag --oss để chạy một model local qua Ollama. Màn hình chào của Codex trong video cho ba lựa chọn: đăng nhập bằng ChatGPT, đăng nhập bằng device code, hoặc dùng API key của chính bạn. Điểm trừ: nó được tinh chỉnh cho model của OpenAI, extension cho VS Code vẫn đóng, và edit grammar được xây quanh kiểu tool calling của OpenAI.

sandbox mode× approval policymặc định: workspace-writenetwork tắt trừ khi bật hệ điều hànhcưỡng chế macOS: SeatbeltLinux: Landlock+ seccomp
Hình 13.1Mô hình permission của Codex CLI theo video đăng ngày 10/10/2026: sandbox mode kết hợp approval policy, do kernel cưỡng chế.

Tiếp theo là terminal agent của Alibaba, Qwen Code. Theo người dẫn (video đăng ngày 10/10/2026), nó bắt đầu là một fork của Gemini CLI rồi tách thành dự án riêng. Nếu bạn biết Claude Code thì bạn biết Qwen Code. Đa giao thức: API của OpenAI, Anthropic, Gemini và Qwen, cộng với Ollama và vLLM; plugin cho IDE, desktop, daemon, SDK, subagents, sandbox ở cấp hệ điều hành, định tuyến model có fallback. Và nó quan trọng vì một lý do lớn: khi Gemini CLI bị ngừng cho người dùng cá nhân, Qwen Code trên thực tế là bản fork mở còn sống của codebase đó. Nó đi tự nhiên với các model open-weight Qwen Coder.

Grok Build là harness chính thức của xAI và là lab mới nhất tham gia. Theo video (đăng ngày 10/10/2026): beta đóng vào tháng 5, mở mã nguồn theo Apache 2.0 vào giữa tháng 7, phiên bản 1.0 ngày 7/8. Bản mở bao toàn bộ harness: agent loop, lớp tool, giao diện terminal và hệ thống extension cho skills, plugins, hooks và MCP. Đây là một TUI viết bằng Rust, toàn màn hình, tương tác được bằng chuột, có plan mode để review task trước khi chạy, subagent chạy song song trong các git worktree, chế độ headless -p cho CI, và ACP để editor điều khiển. Điểm trừ: nó mới bốn tháng tuổi, và model của xAI là mặc định, dù một biến base URL tuỳ chỉnh cho phép bạn dùng model local.

Goose là ván cược đa dụng, theo người dẫn (video đăng ngày 10/10/2026): không chỉ code mà còn research, tự động hoá, việc với dữ liệu. Một file binary Rust duy nhất cộng app desktop, hơn 15 provider kể cả Ollama, và mọi thứ là một MCP extension, hơn 70 cái, với recipes để đóng gói một workflow. Mặc định nó khởi động ở chế độ tự chủ (autonomous). Câu chuyện năm 2026 của Goose là quản trị: vào tháng 4, Block đã tặng Goose cho Agentic AI Foundation mới của Linux Foundation, nên repo chuyển từ block/goose sang aaif-goose/goose và giờ trung lập với vendor. Điểm trừ: dùng .goosehints thay cho AGENTS.md, sandbox yếu hơn các công cụ của lab, và trải mỏng trên quá nhiều loại task.

14. Vòng nhanh: OpenHands, Cline, Aider, Crush

OpenHands, trước đây là OpenDevin: 85.000 sao, MIT, và theo người dẫn là lựa chọn tự chủ nhất ở đây (video đăng ngày 10/10/2026). Agent chạy bên trong một workspace Docker có sandbox, nơi nó có thể duyệt web, thực thi code và sửa file từ đầu tới cuối. Bên dưới, nó dùng một thư viện kết nối model nên hơn 100 provider chạy được, kể cả model local qua Ollama, llama.cpp và vLLM. Có một lệnh chạy một task duy nhất, chế độ headless cho job CI, resume để tiếp tục một conversation, và với bản 1.0 nó được build lại trên một Software Agent SDK mới. Có một bản hosted với giới hạn số conversation miễn phí mỗi ngày; tự host thì miễn phí. Điểm trừ: Docker là bắt buộc, việc bảo trì gói CLI không đều, và dự án hướng người dùng cài local sang agent canvas của nó.

Cline, theo người dẫn (video đăng ngày 10/10/2026), làm chủ một lớp tốt hơn bất kỳ ai: quản trị việc phê duyệt (approval governance). Plan mode trước, act mode sau, một checkpoint sau mỗi tool call, nên việc agent làm luôn có thể undo. Người dẫn nói đó là lý do các team trong ngành bị quản lý chặt chịu dùng nó. Một agent chạy trên VS Code, JetBrains, CLI và SDK; không phụ thuộc model, từ Anthropic, OpenAI, Gemini tới các dịch vụ API trung gian và model local. Rules nằm trong .clinerules hoặc AGENTS.md. Điểm trừ, và là điều cần biết: Cline CLI khởi động ở act mode với auto-approve bật sẵn, ổn trong container nhưng rủi ro trên máy làm việc của bạn; và plugin JetBrains không phải mã nguồn mở.

Slide Cline: Approval governance, done best
Slide về Cline trong video (đăng ngày 10/10/2026): Apache-2.0, khoảng 67K sao, IDE + CLI + SDK; plan mode lập checklist trước, act mode thực thi sau, checkpoint sau mỗi tool call; khung cảnh báo ghi CLI khởi động ở act mode với auto-approve bật mặc định, và plugin JetBrains không mở mã nguồn.

Aider là bản gốc, từ tháng 6/2023, và theo người dẫn (video đăng ngày 10/10/2026) vẫn giỏi nhất ở một việc cụ thể: chỉnh sửa có kỷ luật, gắn liền với git. Aider dựng một repo map bằng tree-sitter trên hơn một trăm ngôn ngữ, một bản tóm tắt cấu trúc có xếp hạng thay vì đổ nguyên file thô. Nó áp các chỉnh sửa phối hợp trên nhiều file và tự commit mỗi thay đổi, nên lịch sử của bạn sạch và đảo ngược được. Người dẫn gọi nó là ngoại lệ mã nguồn mở của câu "terminal agent chỉ biết grep": nó có truy xuất repository thật sự. Hơn một trăm model.

Giờ là phần thật thà, theo người dẫn (video đăng ngày 10/10/2026): không có release nào kể từ tháng 8/2025, và không có commit nào kể từ tháng 5/2026, theo hai trang theo dõi độc lập. Nó chưa chết hẳn, nhưng một harness chạy lệnh shell trên máy bạn, và một harness bị bỏ rơi sẽ không còn nhận bản vá bảo mật. Hãy kiểm tra commit cuối trước khi bạn gắn bó với nó.

Crush, của Charm (màn hình khởi động của nó hiện logo Charm™ CRUSH). Theo người dẫn (video đăng ngày 10/10/2026), đây là giao diện terminal đẹp nhất trong nhóm này, có đổi model giữa session và có hooks. Một lưu ý về license: FSL 1.1 MIT, chuyển về MIT thuần hai năm sau mỗi bản release; ổn để dùng, nhưng khác MIT nếu bạn nhúng hay bán lại nó vào lúc quay video (đăng ngày 10/10/2026). README của Crush (đọc ngày 26/10/2026) ghi license FSL-1.1-MIT. 28.000 sao, và người dẫn nói nó nhắc chúng ta rằng mã nguồn mở là một dải phổ: luôn đọc file license thật.

15. Vòng nhanh: CodeWhale, Reasonix và ba cái tên nữa

Hai dự án độc lập đáng biết vì chúng đáp ứng một nhu cầu thật, theo người dẫn (video đăng ngày 10/10/2026): một TUI dùng được ngay cho người dùng DeepSeek trong khi dsh còn là alpha. CodeWhale, 41.000 sao, khởi đầu với tên DeepSeek-TUI, viết bằng Rust, và giờ nói chuyện được với cả Ollama, vLLM và SGLang. Reasonix, 35.000 sao, sinh ra cho DeepSeek và được build cho các lượt chạy dài, không người trông, tiết kiệm token. Nếu model DeepSeek là thứ bạn dùng hằng ngày và bạn không muốn sống trong một bản developer preview, đây là các harness dành cho bạn.

Ba cái tên nữa, thật nhanh, theo video (đăng ngày 10/10/2026):

  • Kilo Code: MIT/Apache, hơn 500 model, không cộng phí khi dùng key của bạn, snapshot workspace dùng chung giữa VS Code, JetBrains và CLI; là đích chuyển sang của người dùng Roo Code cũ sau khi Roo Code bị archive (video đăng ngày 10/10/2026).
  • Continue: Apache 2.0, gắn vào CI dưới dạng PR check, nhưng là một trong hai dự án mà một bài phân tích độc lập đánh dấu là đã chuyển sang read-only trong năm 2026, nên hãy kiểm tra xem nó còn sống không trước (video đăng ngày 10/10/2026).
  • mini-swe-agent: khoảng 100 dòng, chỉ bash, không có tool API. Đó là baseline của giới nghiên cứu: giữ harness cố định để so sánh model một cách trung thực. Chi tiết vui: Hermes đóng gói nó làm một terminal backend (video đăng ngày 10/10/2026).

Người dẫn khép vòng nhanh bằng một câu: không phải harness nào cũng muốn thành một con tàu vũ trụ (video đăng ngày 10/10/2026).

16. Bài học từ Gemini CLI

Người dẫn gọi đây là năm phút quan trọng nhất của video, và nó không nói về một dự án mã nguồn mở nào, mà về chuyện đã xảy ra với một dự án (video đăng ngày 10/10/2026). Gemini CLI ra mắt tháng 6/2025 như một dự án mã nguồn mở đúng nghĩa: Apache 2.0, TypeScript, 104.000 sao, 6.000 pull request từ cộng đồng, được tặng cho Linux Foundation.

Theo người dẫn (video đăng ngày 10/10/2026), tại Google I/O ngày 19/5/2026, Google thông báo hợp nhất các agent tool của mình dưới thương hiệu Antigravity. Ngày 18/6, lệnh gemini ngừng phục vụ người dùng Free, Pro và Ultra, không có thời gian ân hạn, không có cảnh báo lúc gọi lệnh. Các pipeline CI gãy ngay sáng hôm đó. Bản thay thế, Antigravity CLI, gọi bằng agy, là một file binary Go closed source. Repo công khai của nó chỉ chứa một changelog, một README và một ảnh GIF. Hạn mức miễn phí đi từ một nghìn request mỗi ngày xuống một giới hạn hằng tuần tính theo compute mà người dùng nặng đốt hết rất nhanh. Giấy phép enterprise và API key trả phí vẫn giữ được quyền truy cập, đó là lý do repo cũ vẫn có commit.

Dòng thời gian The Gemini CLI kill-switch
Dòng thời gian trong video (đăng ngày 10/10/2026): tháng 6/2025 Gemini CLI ra mắt (Apache 2.0, TypeScript, 104K sao, 6K PR cộng đồng, tặng cho Linux Foundation); 19/5/2026 Google I/O hợp nhất dưới thương hiệu Antigravity; 18/6/2026 lệnh gemini ngừng phục vụ người dùng cá nhân, CI gãy sáng hôm đó; tháng 10/2026 Antigravity CLI (agy), binary Go closed source, hạn mức miễn phí theo compute hằng tuần.

Ba bài học, và theo người dẫn chúng áp dụng cho mọi harness trong video (đăng ngày 10/10/2026). Một: "vẫn còn trên GitHub" và "vẫn còn mở" là hai tuyên bố khác nhau. Một repo Apache cần backend độc quyền mới chạy được chỉ là một bộ xương, không phải phương án dự phòng. Trên màn hình là một câu trích từ một người đóng góp trong cộng đồng: "Essentially working for free on a code base that will only be used in enterprises?", cùng danh sách các điểm vướng khi chuyển đổi: đổi gemini thành agy trong mọi script, config MCP chuyển sang mcp_config.json, thiếu stdio mode lúc ra mắt.

Hai: coi agent của vendor là dependency được quản lý, chia việc ra hơn một harness, và giữ sẵn một đường chuyển đổi. Theo người dẫn (video đăng ngày 10/10/2026), đó là toàn bộ lập luận cho các công cụ không phụ thuộc provider vừa nói ở trên.

Ba: kiểm tra độ sống trước khi dùng: bản release cuối, commit cuối, ai đang trả tiền cho nó. Theo người dẫn (video đăng ngày 10/10/2026), Aider chững lại một cách lặng lẽ. Google khai tử một cách đột ngột. Roo Code bị archive. Một repository 19.000 sao tồn tại chỉ để bảo bạn đừng dùng nó. Số sao không có nghĩa là dự án còn sống, thậm chí không có nghĩa là nó còn mở.

17. So sánh trực diện: model, sandbox, AGENTS.md

Nếu chỉ một trục quyết định lựa chọn của bạn, theo người dẫn (video đăng ngày 10/10/2026) thì đó là tự do chọn model. OpenCode, Pi và Aider chạy được mọi thứ, kể cả trên GPU của bạn. Codex đặt OpenAI lên trước nhưng chính thức hỗ trợ Ollama. Gemini từng chỉ dùng Gemini, và giờ thì không còn cho người dùng cá nhân nữa. Năm 2026, trả tiền cho một harness chỉ dùng được model của một vendor trông rất khác so với không trả gì cho một harness đổi model theo từng task. Bảng so sánh trên màn hình cũng ghi Claude Code (closed) chỉ dùng Claude và không chạy model local.

Sandboxing chia lĩnh vực làm ba, theo video (đăng ngày 10/10/2026). Kernel cưỡng chế: Codex, Claude Code, và mặc định chỉ đọc của DeepSeek. Policy cưỡng chế: OpenCode, Cline, và mọi thứ có quy tắc permission. Và không có gì: Pi và Aider, giao chuyện an toàn cho container của bạn hoặc cho lịch sử git. Quy tắc từ các bài test độc lập: nếu bạn chĩa một harness chỉ có policy vào code không tin cậy, hãy đặt cả session vào container. Và nhớ mặc định tắt network của Codex: đó là tư thế an toàn cho một repo bạn vừa clone từ một người lạ.

Bảng Three postures: kernel, policy, none
Bảng sandboxing trong video (đăng ngày 10/10/2026): Codex CLI (Seatbelt / Landlock + seccomp, sandbox bật, network tắt ở workspace-write), Claude Code (Seatbelt / bubblewrap + proxy, network theo allowlist domain, opt-in), DeepSeek dsh (chỉ đọc mặc định), Gemini CLI (5 backend, opt-in -s), OpenCode (chỉ policy allow/ask/deny, nên container hoá cho code không tin cậy), Cline (checkpoint, CLINE_SANDBOX opt-in, CLI auto-approve mặc định), Pi và Aider (không có).

Một mẹo thực tế giúp tiết kiệm thời gian, theo người dẫn (video đăng ngày 10/10/2026): nếu bạn chạy từ ba công cụ trở lên trên cùng một repo, hãy viết AGENTS.md làm nền chung. Codex, OpenCode, Cline, Copilot và Pi đọc nó trực tiếp hoặc như phương án dự phòng. Claude Code đọc nó khi bạn không có CLAUDE.md. Chỉ vài công cụ còn đòi file riêng: tạo symlink cho chúng. Một file cho mọi harness. Bảng trên màn hình ghi Goose dùng .goosehints, Gemini và Qwen dùng GEMINI.md / QWEN.md (symlink), còn Aider không có file nào và nạp file bằng /read.

Lùi ra xa, theo người dẫn (video đăng ngày 10/10/2026), cả lĩnh vực là một cuộc mặc cả. Bên trái: một trăm dòng bash, rồi bốn tool của Pi, kỷ luật git của Aider, cái hộp nhỏ ưu tiên shell của Codex. Ở giữa: mọi thứ có sandbox và web UI. Bên phải: 13 tool và 35 language server của OpenCode, và các trợ lý luôn bật với hơn 60 tool cùng một gateway tới điện thoại của bạn. Không có câu trả lời đúng, nhưng hãy biết mình đang chọn gì, vì bên trái thì audit được, bên phải thì làm được nhiều, và bạn không thể có trọn cả hai.

Cùng một task, cùng một repo, cùng một model, năm harness. Theo video (đăng ngày 10/10/2026), màn hình cho thấy OpenCode, Pi, dsh, Hermes và Codex CLI cùng nhận một task: thêm một endpoint /health và cập nhật test. Người dẫn bảo hãy để ý những khác biệt không đến từ model: mỗi harness đề xuất chỉnh sửa ra sao, có xin permission không, có tự chạy test mà không cần nhắc không, và cái gì rơi vào lịch sử git của bạn. Đây là thí nghiệm người dẫn sẽ chạy trước khi chọn: lấy repository thật của bạn, một task máy móc nhàm chán, rồi đếm việc hoàn thành, số lần phải can thiệp và số lần thất bại. Một license runtime không đồng chẳng có nghĩa gì nếu bạn tiêu hết khoản tiết kiệm vào việc trông chừng nó.

18. Chọn harness nào

Bản ngắn gọn, theo Zombie Process (video đăng ngày 10/10/2026):

  • Muốn một harness, model nào cũng được, đủ pin sẵn: OpenCode (theo video đăng ngày 10/10/2026).
  • Muốn làm chủ một vòng lặp tối giản và đọc từng token của prompt: Pi (theo video đăng ngày 10/10/2026).
  • Đằng nào cũng trả tiền ChatGPT và muốn các mặc định an toàn nhất: Codex CLI (theo video đăng ngày 10/10/2026).
  • Muốn một agent biết học và theo bạn lên điện thoại: Hermes (theo video đăng ngày 10/10/2026).
  • Muốn một trợ lý tự host sống trong Discord và Telegram: OpenClaw (theo video đăng ngày 10/10/2026).
  • Muốn nghiên cứu hoặc viết lại chính agent loop và chấp nhận một bản alpha: DeepSeek Harness, trong một VM (theo video đăng ngày 10/10/2026).
  • Muốn kiểm soát từng chỉnh sửa trong IDE: Cline (theo video đăng ngày 10/10/2026).
  • Chạy không người trông: OpenHands (theo video đăng ngày 10/10/2026).
  • Và nếu bạn đang so sánh model: cố định harness, dùng mini-swe-agent hoặc Pi, để biến số duy nhất còn lại là model (theo video đăng ngày 10/10/2026).
Cây quyết định Pick by failure behavior and lock-in, not stars
Cây quyết định ở cuối video (đăng ngày 10/10/2026), tiêu đề "Pick by failure behavior & lock-in, not stars": coding agent trong terminal cho mọi model thì OpenCode hoặc Pi; một vendor thì Codex CLI, CodeWhale / Reasonix, hoặc dsh (chỉ trong VM); trong editor thì Cline; pair programming đặt git lên trước thì Aider (kiểm tra commit cuối); không người trông / CI thì OpenHands hoặc dsh --profile headless; trợ lý luôn bật thì OpenClaw hoặc Hermes.

Bốn điều cần kiểm tra mỗi lần, theo người dẫn (video đăng ngày 10/10/2026): license, độ sống, sandbox thật sự ra sao, và liệu bạn có thể rời đi mà mang theo được các model của mình không. Làm đủ bốn điều đó thì bạn không thể chọn sai, chỉ là chọn khác.

Phần mô tả video liệt kê lệnh cài cho từng harness, kèm ghi chú gốc (video đăng ngày 10/10/2026):

curl -fsSL https://opencode.ai/install | bash        # OpenCode
curl -fsSL https://pi.dev/install.sh | sh            # Pi
npx @deepseek-ai/dsh web                             # DeepSeek Harness (ALPHA, use a VM)
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash  # Hermes
curl -fsSL https://openclaw.ai/install.sh | bash     # OpenClaw
npm i -g @openai/codex                                # Codex CLI
npm i -g @qwen-code/qwen-code@latest                 # Qwen Code
curl -fsSL https://x.ai/cli/install.sh | bash        # Grok Build
uvx openhands                                        # OpenHands
pipx install aider-chat                              # Aider (check liveness!)

Nguồn và liên kết 12 nguồn

  1. Tên gốc: I Installed EVERY Open-Source AI Harness So You Don't Have To
  2. Sự kiện: YouTube
  3. Video gốc: https://www.youtube.com/watch?v=_a8C-pRSFeE youtube.com
  4. Kênh YouTube Zombie Process (Zombie Process): youtube.com/channel/UCHmETrU9jtMOPha--X3PExw youtube.com
  5. OpenCode, trang chính thức (đọc ngày 26/10/2026): opencode.ai; repo: github.com/anomalyco/opencode opencode.ai
  6. Pi, trang chính thức (đọc ngày 26/10/2026): pi.dev; repo với mục Permissions & Containerization trong README: github.com/earendil-works/pi pi.dev
  7. DeepSeek Harness, repo (đọc ngày 26/10/2026): github.com/deepseek-ai/deepseek-harness; tài liệu: deepseek-harness.github.io/deepseek-harness github.com
  8. Hermes Agent của Nous Research, tài liệu (đọc ngày 26/10/2026): hermes-agent.nousresearch.com/docs; repo: github.com/NousResearch/hermes-agent hermes-agent.nousresearch.com
  9. OpenClaw, trang chính thức (đọc ngày 26/10/2026): openclaw.ai; repo: github.com/openclaw/openclaw openclaw.ai
  10. Crush của Charm, repo với license FSL-1.1-MIT (đọc ngày 26/10/2026): github.com/charmbracelet/crush github.com
  11. Goose, repo sau khi chuyển về Agentic AI Foundation (đọc ngày 26/10/2026): github.com/aaif-goose/goose github.com
  12. Gemini CLI, thông báo "Gemini CLI Has Stopped Serving Requests for Individual Accounts" trong repo chính thức (đọc ngày 26/10/2026): github.com/google-gemini/gemini-cli/discussions/28017 github.com