AI agent self-host tốt nhất năm 2026: So sánh 5 lựa chọn
So sánh OpenClaw, Hermes, Dify, OpenHands và Agent Zero: điểm mạnh, yêu cầu VPS, cách chạy an toàn và công cụ phù hợp cho từng nhu cầu.
Các AI agent self-host tốt nhất năm 2026, tóm tắt
Các AI agent self-host tốt nhất năm 2026 gồm OpenClaw cho trợ lý cá nhân mà bạn truy cập từ các ứng dụng chat, Hermes Agent cho cùng mục đích trên một server nhỏ nhất có thể, Dify cho team xây dựng ứng dụng trên language model, OpenHands cho việc lập trình tự động và Agent Zero cho framework đa mục đích, trong đó các agent tự tạo sub-agent. Cả 5 đều là open source và đều chạy trên VPS do bạn kiểm soát. Bài tổng hợp này so sánh chúng theo mục đích sử dụng, cách xây dựng, yêu cầu đối với server và mức độ bảo mật mà từng thiết kế đòi hỏi, để bạn chọn đúng công cụ trước khi cài đặt.
Chúng tôi chạy từng công cụ trên server thực tế. Mỗi phần bên dưới đều liên kết đến hướng dẫn setup và hardening đầy đủ cho công cụ đó.
Một AI agent self-host là gì
AI agent là một vòng lặp bao quanh language model. Model đọc tình huống, quyết định thực hiện một hành động, server của bạn thực hiện hành động đó, rồi kết quả được đưa vào lượt tiếp theo của vòng lặp. Các hành động này là tools: chạy shell command, đọc hoặc ghi file, điều khiển browser, gọi API. Chương trình bao quanh đó — gồm vòng lặp, tools, permissions và session state — chính là agent harness thực sự là gì. Đây mới là phần bạn thực sự lựa chọn khi so sánh 5 project bên dưới, vì model phía sau chúng có thể là cùng một model. Nếu muốn xem đầy đủ cơ chế hoạt động, xây dựng AI agent của riêng bạn trên VPS sẽ trình bày từ đầu về vòng lặp, tools và memory. Nếu việc đó vượt quá mức bạn muốn làm hôm nay, lộ trình từng bước để học agent từ đầu sẽ trình bày cùng nội dung theo thứ tự, với một thứ nhỏ cần xây dựng ở mỗi giai đoạn. Web search là một bổ sung phổ biến. Nếu bạn đã chạy SearXNG của riêng mình, bạn có thể kết nối nó làm search backend cho agent, giúp giữ riêng tư cho các truy vấn nhưng cũng có nghĩa agent sẽ đọc những trang mà bất kỳ ai cũng có thể viết.
Self-host nghĩa là agent runtime, memory, tools và secrets của agent nằm trên server của bạn thay vì trên platform của người khác. Bản thân language model thường vẫn là một hosted API, vì các model mạnh nhất không vừa với memory của một server nhỏ. Bạn có thể chạy hoàn toàn local bằng cách serve model với Ollama trên cùng VPS, nhưng cần đủ RAM cho một model có năng lực.
Lý do self-host agent là quyền kiểm soát: lịch sử hội thoại, file, API keys và mọi command agent chạy đều nằm trên máy do bạn sở hữu. Cũng chính điều này khiến bạn phải thận trọng. Agent có thể chạy command trên server của bạn chỉ an toàn trong phạm vi các giới hạn bạn đặt ra. Vì vậy, phần so sánh bên dưới xem security posture là một tiêu chí chính, không phải chú thích phụ.
Năm agent đặt cạnh nhau
Dữ liệu đằng sau biểu đồ này
[
{
"tool": "OpenClaw",
"primary_use": "Personal assistant with full server access",
"interface": "Chat apps (Telegram, WhatsApp, Slack, Discord)",
"isolation_model": "One gateway process, on loopback by default",
"ram_floor": "Small VPS; more if it drives a browser",
"security_posture": "Safe network default; operator must harden the rest",
"maturity": "390,000+ stars by October 2026; March 2026 CVE history"
},
{
"tool": "Hermes Agent",
"primary_use": "Lightweight personal assistant with memory",
"interface": "Chat apps (Telegram, Discord)",
"isolation_model": "Single process, runs fine under systemd",
"ram_floor": "A $5 VPS is enough",
"security_posture": "Connects outward only; no inbound port needed",
"maturity": "New (February 2026), from Nous Research"
},
{
"tool": "Dify",
"primary_use": "LLM app platform for teams",
"interface": "Web UI and API",
"isolation_model": "Docker Compose stack of 16 services",
"ram_floor": "4 GB and 2 CPU cores minimum",
"security_posture": "Ships on plain HTTP port 80; needs TLS and a proxy in front",
"maturity": "Established, fast release pace"
},
{
"tool": "OpenHands",
"primary_use": "Autonomous coding agent",
"interface": "Agent Canvas web UI on port 8000",
"isolation_model": "Host process, or per-conversation Docker containers",
"ram_floor": "4 GB",
"security_posture": "Loopback by default; Docker access is root equivalent, so use a disposable VPS",
"maturity": "Established (formerly OpenDevin)"
},
{
"tool": "Agent Zero",
"primary_use": "General purpose multi-agent framework",
"interface": "Web UI on container port 80; you pick the host port",
"isolation_model": "All agents inside one Docker container",
"ram_floor": "2 GB minimum; 4 GB recommended",
"security_posture": "A plain -p publishes the UI on every interface; bind it to loopback",
"maturity": "Active, Docker-first"
}
]Hai mô hình trong bảng này quyết định phần lớn công việc bảo mật. Các agent cá nhân là OpenClaw và Hermes kết nối với bạn qua các ứng dụng chat, nên chúng chỉ kết nối ra ngoài và hoàn toàn không cần inbound port. Các công cụ ưu tiên web là Dify, OpenHands và Agent Zero đều cung cấp giao diện qua HTTP. Dify và Agent Zero mặc định publish giao diện trên mọi interface, nên network posture là việc đầu tiên cần xử lý sau khi cài đặt; OpenHands hiện bind vào loopback theo mặc định, nên việc cần làm là giữ nguyên cấu hình đó.
OpenClaw: agent cá nhân có nhiều khả năng nhất
OpenClaw là một AI agent cá nhân chạy trên server của bạn và cho phép bạn tương tác qua Telegram, WhatsApp, Slack hoặc Discord. Nó có thể chạy shell command, điều khiển browser, đọc và ghi file, nên đây là công cụ có nhiều khả năng nhất trong danh sách này, đồng thời cũng là công cụ có mức truy cập sâu nhất vào máy của bạn. OpenClaw dùng giấy phép MIT và có hơn 390,000 GitHub star tính đến tháng 10 năm 2026. Đây là một trong những project có nhiều star nhất trên nền tảng này, nên hệ sinh thái và cộng đồng của nó lớn hơn nhiều so với mọi agent khác ở đây.
Có 2 thông tin cần định hướng quyết định của bạn. Thứ nhất, network side ban đầu khá an toàn: gateway, tức process duy nhất điều khiển mọi thứ, mặc định listen trên địa chỉ loopback, nên không thể truy cập từ Internet trừ khi bạn tự expose nó. Thứ hai, project này có lịch sử bảo mật đáng chú ý. Đầu tháng 3 năm 2026, 46 CVE của OpenClaw được công bố vào National Vulnerability Database trong vòng 3 ngày. Cuối tháng đó, một lỗ hổng leo thang đặc quyền nghiêm trọng, CVE-2026-32922, được chấm 9.9 trên 10 và đã được khắc phục trong version 2026.3.11. Mô hình bảo mật của OpenClaw đặt phần hardening chủ yếu lên bạn, với tư cách operator. Cả 2 thông tin trên không phải là lý do để tránh OpenClaw. Chúng là lý do để cài đặt nó theo cách thận trọng. Nội dung chạy OpenClaw an toàn trên VPS hướng dẫn chính xác việc này từng bước.
Hermes Agent: agent cá nhân nhẹ nhất
Hermes Agent do Nous Research phát triển và được phát hành vào tháng 2 năm 2026, nên đây là công cụ mới nhất trong danh sách này. Đây là một agent cá nhân có bộ nhớ persistent về các dự án của bạn, tự viết các skill có thể tái sử dụng trong quá trình hoạt động, và liên lạc với bạn qua các ứng dụng chat như Telegram và Discord. Hermes không phụ thuộc vào model cụ thể, nên bạn có thể trỏ nó đến bất kỳ language model nào mình muốn.
Điểm đáng chú ý là Hermes yêu cầu rất ít tài nguyên. Hermes cài đặt bằng một lệnh duy nhất và chạy ổn định trên VPS $5, vì agent là runtime chứ không phải model; phần tính toán nặng được thực hiện bởi API mà bạn kết nối. Hermes kết nối đến model và các ứng dụng chat của bạn, nên không cần mở inbound port. Nhờ vậy, bề mặt mạng gần như bằng 0. Đánh đổi thực tế so với OpenClaw là độ trưởng thành: Hermes mới chỉ vài tháng tuổi, còn các integration và cộng đồng của OpenClaw lớn hơn nhiều. Hướng dẫn setup đầy đủ, bao gồm lý do bạn nên download và đọc curl install script trước khi chạy, có tại tự host Hermes Agent trên VPS.
Dify: nền tảng cho các nhóm
Dify là một loại công cụ khác. Thay vì để một agent phục vụ một người, đây là một nền tảng có thể tự host để xây dựng ứng dụng trên language model: giao diện web để thiết kế chat app, agent và pipeline truy xuất, một API để gọi chúng từ code của bạn, cùng một nơi để quản lý prompt, dataset và model key. Một nhóm nhỏ có thể triển khai nền tảng này để mọi người cùng xây dựng trên một nền tảng private dùng chung, thay vì rải API key trong các script. Nếu nhu cầu của nhóm bạn gần với việc cấp sandbox riêng cho từng người hơn là xây dựng ứng dụng dùng chung, OneCLI áp dụng mô hình mỗi người một agent nhưng vẫn giữ model key trong một gateway duy nhất.
Phạm vi này đồng nghĩa với nhiều thành phần phải quản lý hơn. Dify được phát hành dưới dạng Docker Compose stack gồm 16 service: 7 service lõi, 8 thành phần hỗ trợ gồm một database Postgres, một Redis cache và một vector database, cùng một task chạy một lần. Tài liệu cài đặt của Dify đặt mức tối thiểu là 2 CPU core và 4 GB RAM, vì vậy hãy xem 4 GB là mức sàn, không phải mức đủ thoải mái. Công việc bảo mật cũng khác: web server đi kèm Dify lắng nghe HTTP thuần trên port 80 ở mọi interface, và visitor đầu tiên truy cập trang cài đặt sẽ tạo tài khoản admin. Hãy bind nó vào loopback, đặt một TLS reverse proxy phía trước và tạo tài khoản admin ngay lập tức. Tự host Dify trên VPS hướng dẫn toàn bộ quá trình cài đặt và từng bước khắc phục trên.
OpenHands: agent lập trình tự động
OpenHands, trước đây có tên là OpenDevin, là một agent kỹ thuật phần mềm tự động. Bạn giao nhiệm vụ bằng ngôn ngữ tự nhiên, sau đó nó lập kế hoạch, viết code, chạy command, đọc output và lặp lại cho đến khi hoàn thành. Ứng dụng hiện tại của nó, Agent Canvas, cài đặt từ npm hoặc chạy dưới dạng Docker image, cung cấp web UI trên port 8000 (dưới /canvas đối với Docker image), hoạt động với mọi model từ hosted API đến model local được cung cấp qua Ollama, đồng thời có thể điều khiển các coding agent khác như Claude Code và Codex. Hướng dẫn self-hosting của project cho biết 2 vCPU và 4 GB RAM là đủ cho một user. Ứng dụng cũ chạy bằng Docker trên port 3000 hiện được liệt kê là Local GUI legacy trong tài liệu OpenHands, nên tutorial mở localhost:3000 đang mô tả interface cũ.
Một đặc điểm thiết kế cần chi phối toàn bộ setup: dù bạn chạy theo cách nào, agent vẫn có quyền truy cập thực tế vào host. Nếu không có sandbox, agent server chạy trực tiếp trên host và có toàn quyền truy cập filesystem. Nếu muốn cấp cho mỗi conversation một container riêng, user chạy agent phải có quyền invoke Docker. Tài liệu Docker cũng cảnh báo rằng docker group cấp đặc quyền ở mức root, vì bất cứ thứ gì có thể giao tiếp với Docker daemon đều có thể start một container mount toàn bộ filesystem của host. Docker image chạy trong một container duy nhất là lựa chọn giới hạn chặt nhất, nhưng folder project được mount vào đó vẫn có thể được agent ghi đầy đủ. Vì vậy, bạn không thể sandbox OpenHands hoàn toàn khỏi những tài nguyên quan trọng trên host. Network default là điểm tốt: các launcher bind vào loopback và Docker quickstart publish trên 127.0.0.1:8000, nên hãy giữ nguyên cấu hình đó. Biện pháp thực tế cho các rủi ro còn lại là chọn vị trí triển khai phù hợp: dùng một VPS riêng, có thể hủy bỏ, không chứa dữ liệu hay dịch vụ nào khác mà bạn quan tâm; tạo snapshot cho máy trước khi bắt đầu; và rebuild từ snapshot thay vì tin cậy một server đã chạy code do agent viết trong nhiều tuần. Phần setup, SSH tunnel đến UI và lý do cho các lựa chọn này có trong self-hosting OpenHands trên VPS.
Agent Zero: framework đa dụng
Agent Zero là một agent framework ưu tiên Docker. Agent chính có thể tạo các agent phụ để chia nhỏ công việc. Mỗi agent có thể thực thi code, điều khiển trình duyệt và chạy shell command trong cùng một Docker container. Bạn quản lý toàn bộ hệ thống từ web UI. Agent Zero có thể chạy trên phần cứng chỉ từ một VPS giá sáu đô la, nên đây là cách dễ nhất để thử nghiệm mô hình nhiều agent với chi phí thấp.
Có 2 điểm cần lưu ý để giữ an toàn. docker run trong hướng dẫn cài đặt của Agent Zero sử dụng -p 80:80. Các phương án mà tài liệu đề xuất khi cổng 80 đã được sử dụng (5080, hoặc 50080 trở lên trên VPS) cũng dùng cùng dạng -p không bảo vệ. Cách này publish web UI trên mọi network interface, kể cả trong hướng dẫn VPS chính thức có đặt reverse proxy phía trước. Vì vậy, trên VPS public, control panel của một hệ thống có thể chạy command sẽ có thể truy cập từ toàn bộ Internet ngay khi container khởi động. Thay vào đó, hãy publish nó trên loopback và truy cập qua SSH tunnel. Bạn cũng cần hiểu đúng giới hạn của container isolation: các agent chạy bên trong Docker container thay vì chạy trực tiếp trên host. Điều này giới hạn những gì code của chúng có thể truy cập, nhưng không bảo vệ cổng đã publish, thư mục dữ liệu bạn mount vào container hoặc API key bạn cung cấp cho nó. Phần việc trên host vẫn do bạn chịu trách nhiệm. Tự host Agent Zero trên VPS trình bày phần này, bao gồm cả việc bind vào loopback mà hầu hết tutorial bỏ qua.
Agent AI self-host nào phù hợp với bạn
- Bạn cần một trợ lý cá nhân có năng lực trong các ứng dụng chat và chấp nhận tự thực hiện các bước hardening nghiêm ngặt: OpenClaw.
- Bạn cần một agent cá nhân chạy trên server nhỏ và rẻ nhất, với bề mặt tấn công gần như không đáng kể: Hermes Agent.
- Team của bạn cần một nền tảng riêng dùng chung cho các ứng dụng LLM, có UI để người không phải developer vẫn sử dụng được: Dify.
- Bạn muốn agent viết code trong lúc bạn vắng mặt và có thể cấp cho nó một server dùng tạm: OpenHands.
- Bạn muốn thử nghiệm các agent có khả năng giao việc cho agent khác: Agent Zero.
Có một trường hợp nằm ngoài danh sách này. Nếu bạn cần một coding agent tương tác được điều khiển từ terminal, làm việc theo từng session thay vì chạy tự động, nhóm công cụ đó có bộ công cụ và hướng dẫn riêng: xem chạy OpenCode trên VPS để dùng tùy chọn open có nhiều star nhất, hoặc chạy coding AI agent trên VPS để xem các lựa chọn rộng hơn. Trường hợp thứ hai liên quan đến uptime hơn là năng lực: nếu mục đích của agent là tiếp tục hoạt động khi bạn vắng mặt, chạy KiroCrew như một agent luôn bật trình bày mô hình dùng pinned container và systemd để giữ memory và scheduled jobs sau reboot. Đây là phần mà phần lớn bản cài đặt agent thường để mặc cho hệ thống xử lý. Trường hợp thứ ba còn hẹp hơn: nếu agent được dùng để tự quét bảo mật thay vì hỗ trợ chung, self-host open-kritt trên VPS hướng dẫn cách thiết lập, bao gồm SSH tunnel đến UI và mức ngân sách cho provider cần quyết định trước lần quét đầu tiên.
Công việc bảo mật giống nhau với cả năm công cụ
Dù chọn agent nào, cách hardening cũng không thay đổi vì rủi ro không thay đổi: mọi công cụ này đều chạy lệnh hoặc code trên server của bạn, nên server phải giới hạn phạm vi ảnh hưởng của một sai sót. Agent được phép làm gì mà không cần dừng lại hỏi bạn cũng là một phần của quyết định này. Các chế độ cấp quyền của Claude Code trình bày rõ sự đánh đổi: trên server không có người giám sát, hãy hạn chế cấp quyền tự chạy không cần xác nhận.
Bốn thói quen có tác động lớn nhất. Chạy agent bằng một user riêng không có quyền đặc biệt, không bao giờ chạy bằng root. Khi đó, tài khoản chạy agent sẽ giới hạn mức độ thiệt hại, như giải thích trong chạy service bằng user không có quyền đặc biệt. Giữ mọi bề mặt điều khiển ở chế độ private: bind vào loopback cho web UI và gateway, rồi dùng SSH tunnel hoặc VPN khi cần truy cập. Không ai có thể tấn công một port mà họ không thể truy cập. Đặt firewall mặc định deny trước server và kiểm tra cả IPv6 lẫn IPv4. Bộ rule chỉ áp dụng cho IPv4 có thể để cùng service mở hoàn toàn trên IPv6. Đây chính là khoảng trống firewall IPv6 thường khiến nhiều self-hoster gặp sự cố. Lưu secret trong các file mà chỉ user của agent có thể đọc (mode 600). Nạp chúng qua service thay vì dán lên command line. Bài học tương tự cũng áp dụng khi một file là chìa khóa để truy cập mọi thứ khác: bảo mật thực tế của Vaultwarden phụ thuộc vào admin token và file backup, không chỉ vào vault đã mã hóa mà hai thành phần đó bảo vệ.
Ví dụ hoàn chỉnh cho toàn bộ cách làm này, bao gồm một systemd unit đã harden với NoNewPrivileges, ProtectSystem=strict, PrivateTmp và ProtectHome, là hướng dẫn hardening OpenClaw. Cùng công thức này có thể áp dụng cho mọi agent trên trang này. Một thói quen khác cũng quan trọng với cả năm công cụ: chủ động cập nhật. Các tiết lộ về OpenClaw vào March 2026 cho thấy một lỗ hổng nghiêm trọng trong agent có thể trở nên cấp bách nhanh đến mức nào. Agent vốn đã chạy lệnh, nên lỗi privilege escalation trong agent nghiêm trọng hơn nhiều so với lỗi tương tự trong một web app thông thường.
FAQ
Trợ lý AI tự host nào tốt nhất trong 2026?
Điều này phụ thuộc vào công việc. OpenClaw là trợ lý cá nhân có năng lực cao nhất và phổ biến nhất, với hơn 390,000 GitHub stars vào tháng 10 năm 2026. Hermes Agent là lựa chọn nhẹ nhất cho cùng vai trò. Dify là nền tảng tốt nhất cho đội ngũ xây dựng ứng dụng LLM. OpenHands là coding agent tự động mạnh nhất. Agent Zero là framework multi-agent linh hoạt nhất. Hãy chọn theo use case trước, sau đó cân nhắc lượng công việc hardening mà bạn sẵn sàng thực hiện.
Tôi có thể chạy AI agent tự host trên VPS giá rẻ không?
Có, với hầu hết các agent. Hermes Agent chạy được trên VPS $5. Agent Zero cần khoảng 2 GB RAM ngay từ đầu. Dify cần ít nhất 4 GB RAM và 2 CPU cores. OpenHands cần ít nhất 4 GB. Bản thân các agent khá nhẹ vì language model thường chạy qua hosted API. Nếu bạn cũng tự host model, hãy chọn cấu hình server theo model. Yêu cầu này lớn hơn nhiều so với yêu cầu của agent.
Tôi có cần GPU để tự host AI agent không?
Không. Agent là một runtime gồm vòng lặp, tools và memory. Tất cả đều là code thông thường có thể chạy trên VPS chỉ dùng CPU. GPU chỉ cần thiết nếu bạn muốn chạy chính language model trên phần cứng của mình thay vì gọi hosted API. Khi đó, model phải vừa trong memory. Hãy chọn cấu hình máy theo model trước khi tải model xuống.
AI agent tự host có an toàn không?
Mức độ an toàn phụ thuộc vào các giới hạn bạn đặt xung quanh agent. Mọi agent trong danh sách này đều chạy command hoặc code. Vì vậy, các rủi ro gồm control surface bị public, cài đặt bằng root và API keys bị lộ. Cách xử lý giống nhau cho cả năm agent: dùng unprivileged user, chỉ cho các interface bind vào loopback và truy cập qua SSH hoặc VPN, dùng firewall mặc định deny cho cả IPv4 và IPv6, đặt file permissions cho secrets và cập nhật prompt. Agent được cài theo cách này có thể chạy ở mức hợp lý. Agent bị expose trực tiếp trên public port thì không.