Hermes Agent: Chiếc Bàn Làm Việc Biết Nhớ

11 phút đọc English
Featured image for NousResearch/hermes-agent — Hermes Agent: Chiếc Bàn Làm Việc Biết Nhớ

TL;DR

  • Nỗi đau: Giải thích lại toàn bộ ngữ cảnh project mỗi phiên, như đào tạo thực tập sinh mới mỗi sáng.
  • Cách fix: Ba file bộ nhớ (MEMORY.md, USER.md, SOUL.md) tự cập nhật mỗi phiên, không cần nhắc lại.
  • Dành cho: Dev quản lý nhiều project song song, SRE cần agent on-call qua Telegram, researcher dùng GPU serverless.
  • Vũ khí bí mật: Agent tự tạo kỹ năng tái sử dụng sau task phức tạp và chia sẻ qua agentskills.io bằng lệnh /skills.
  • Nhận xét: 63k sao, MIT, chạy từ Android Termux đến Modal GPU serverless, nhưng thiết lập gateway nhắn tin vẫn đòi kiên nhẫn.

Tôi nhờ AI viết migration script cho project Rust. Buổi chiều nó làm tốt, tôi cảm ơn, nó gật đầu lịch sự. Sáng hôm sau quay lại, tôi hỏi tiếp về cái lỗi trong phần sqlx.

Nó nhìn tôi với ánh mắt của người vừa gặp lần đầu trong đời.

Không phải giả vờ. Nó thật sự không nhớ. Cả buổi chiều hôm qua, cái stack tôi đang dùng, chuyện tôi thích sqlx hơn diesel, chuyện indent bằng tab chứ không phải space, tất cả đều tan vào hư không. Mỗi phiên chat mới là một tờ giấy trắng tinh. Mỗi sáng tôi lại ngồi đào tạo lại từ đầu, mất mười lăm phút mới vào được nhịp làm việc cũ.

Cái bệnh này không phải do AI kém thông minh. Nó kém bộ nhớ.

Cái Bàn Làm Việc

Hermes Agent ra đời để trị cái bệnh đó. Về mặt kỹ thuật, đây là Python TUI framework bao quanh LLM của bạn, thêm vào một vòng lặp học khép kín. Câu ngắn cho người mới: nó làm cái vỏ bọc quanh bất kỳ AI model nào, và thêm vào đó bộ nhớ bền vững do chính agent tự quản lý.

Tưởng tượng hai người thợ mộc. Một người mỗi sáng bước vào căn phòng trống, phải đi tìm lại dụng cụ, tìm lại bản vẽ, cố nhớ xem hôm qua đóng cái kệ đến đâu. Người kia có cái bàn làm việc cố định: dụng cụ đúng chỗ, ghi chú đo đạc vẫn còn trên mặt bàn, tuần sau quay lại vẫn biết cần làm gì tiếp. Hermes Agent là cái bàn làm việc đó.

Cụ thể, bộ nhớ nằm trong ~/.hermes/memories/:

~/.hermes/memories/
├── MEMORY.md    # môi trường: OS, stack, quy ước project
├── USER.md      # bạn: sở thích, trình độ, phong cách code
└── SOUL.md      # tính cách: giọng điệu, kiểu phản hồi, nhân cách agent

Ba file này là trái tim của hệ thống. Agent đọc chúng vào đầu mỗi phiên. Nó không chỉ đọc mà còn tự viết lại chúng trong lúc trò chuyện: bạn bảo “tôi thích tab, không phải space,” nó cập nhật USER.md ngay và nhớ mãi.

SOUL.md là file mà tài liệu cũ hay bỏ qua. File này quyết định tính cách agent: cảm xúc, giọng điệu, kiểu phản hồi. Muốn nó ngắn gọn thẳng thắn hay cẩn thận tỉ mỉ? Viết vào SOUL.md. Không phải ẩn dụ, đây là config file thật.

Agent có ngân sách ký tự giới hạn cho các file này, khoảng 2.200 ký tự. Điều đó buộc nó phải chắt lọc: không ghi cả đoạn chat dài, chỉ đúc kết những gì quan trọng nhất. Giống bộ nhớ dài hạn của người: quên cái vụn vặt, giữ lại cái cốt yếu.

File bộ nhớ tự cập nhật chỉ là tầng đầu tiên của câu chuyện.

Cài Đặt và Lệnh

Một dòng lệnh:

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc   # hoặc source ~/.zshrc
hermes             # mở TUI ngay

Giao diện TUI mở ra với soạn thảo nhiều dòng và streaming output. Lần đầu, wizard dẫn qua cấu hình model và key. Hỗ trợ: Linux, macOS, WSL2, Android (Termux). Windows native không được hỗ trợ, dùng WSL2.

Bộ nhớ tự tải khi gõ hermes. Không có flag --continue, không cần làm gì thêm. Phiên mới tự kế thừa phiên cũ vì agent đọc ~/.hermes/memories/ khi khởi động.

LệnhLàm gì
hermesMở TUI, tải bộ nhớ tự động
hermes modelChọn LLM provider và model
hermes toolsCấu hình công cụ được bật
hermes gatewayThiết lập messaging gateway
hermes config setĐặt giá trị config riêng lẻ
hermes doctorChẩn đoán sự cố
hermes updateCập nhật lên phiên bản mới nhất

💡 Tip: Lần đầu dùng, đừng hỏi toán đố. Kể cho nó nghe về môi trường làm việc: OS, stack yêu thích, quy ước code. Nó ghi vào MEMORY.md và nhớ mãi. Phiên sau bước vào ngay chỗ cũ, không mất một phút giải thích.

“Chạy được trên terminal” vẫn chưa phải điểm hay nhất. Bộ nhớ bền vững là nền móng, nhưng cái được xây trên đó mới là câu chuyện.

Bảy Tình Huống Thực Chiến

Đây là vòng lặp bộ nhớ hoạt động trong thực tế:

Và trong thực chiến, agent đó có ích như thế nào:

  1. Nghỉ mà không quên việc. Tôi đang refactor codebase Go, giao Hermes handle phần test coverage. Nghỉ ba ngày. Hôm quay lại gõ hermes, nó nhắc luôn: module còn dang dở, hai file chưa xong, tôi thích dùng testify. Không mất một phút để vào nhịp.

  2. Debug từ điện thoại lúc hai giờ sáng. Server production alert. Tôi nhắn Telegram: “Check log service X, tìm panic trong 30 phút vừa rồi.” Hermes SSH vào server, grep log, tóm tắt lỗi, đề xuất fix. Sáng ra máy tính chỉ cần apply patch.

  3. Báo cáo mà không cần ngồi check tay. Cài cron: 8 giờ sáng mỗi ngày, Hermes tổng hợp issue GitHub mới, kết quả CI đêm qua, tình trạng deploy, giao tóm tắt đến Slack. Không cần dashboard, không cần ngồi chờ.

  4. Nghiên cứu song song. “Nghiên cứu 5 thư viện validation Python, tóm tắt tính năng, lập bảng so sánh.” Hermes spawn subagent song song, xử lý đồng thời, trả kết quả tổng hợp trong một lần. Thay vì đọc README từng cái một.

  5. Dev box serverless cho ML. Dự án cần GPU nhưng không muốn duy trì VM. Dùng backend Modal: agent ngủ giữa các phiên, chi phí gần bằng 0, thức dậy theo yêu cầu, GPU on demand. Không trả tiền idle.

  6. Ops từ Android. Trên Termux, dùng pip install "hermes-agent[termux]" thay vì [all]. Hermes chạy trên điện thoại, kết nối server nhà qua SSH backend. Pocket ops.

  7. Chia sẻ kỹ năng với cộng đồng. Sau khi thiết lập cụm Docker phức tạp, agent tự tạo kỹ năng tái sử dụng. Tải lên agentskills.io bằng /skills. Ba tuần sau, người khác tải xuống và dùng ngay.

Đây là những gì bộ nhớ bền vững cho phép làm được. Nhưng nếu cứ làm đi làm lại những task giống nhau từng lần, dù nhớ cũng chỉ giải quyết nửa bài toán.

Hệ Thống Kỹ Năng

Đây là tính năng bị bỏ qua hoàn toàn trong bài cũ, và cũng là điểm thú vị nhất của Hermes.

Sau khi hoàn thành một task phức tạp, agent tự động tạo “recipe” tái sử dụng, gọi là kỹ năng. Những kỹ năng này không phải prompt tĩnh: chúng là thủ tục thực thi được, tự cải thiện mỗi lần được gọi, và tương thích với chuẩn mở agentskills.io.

/skills                              # xem danh sách kỹ năng hiện có
/setup-docker-compose                # chạy kỹ năng trực tiếp

Ý nghĩa thực tế: bạn không chỉ dạy agent làm việc, bạn đang xây thư viện thủ tục ngày càng lớn. Thiết lập CI/CD phức tạp lần đầu mất hai tiếng. Lần sau, một lệnh.

Hermes Agent không chỉ nhớ ngữ cảnh, nó tích lũy năng lực. Sau vài tháng dùng, cái thư viện /skills của bạn trở thành vũ khí mà không nền tảng nào khác cho bạn được.

Nhưng dù kỹ năng có hay đến đâu, nếu agent chỉ ngồi trong terminal thì vẫn còn một khoảng trống lớn.

Nơi Nào Cũng Có Mặt

Sáu Backend Terminal

Hermes không bị khóa vào máy cục bộ. Nó hỗ trợ sáu loại backend:

  1. Local - máy của bạn, mặc định
  2. Docker - container cô lập, an toàn hơn cho task có rủi ro
  3. SSH - server từ xa, debug production từ điện thoại
  4. Daytona - serverless, ngủ khi không dùng, chi phí gần $0 giữa các phiên
  5. Singularity - môi trường HPC cho nghiên cứu
  6. Modal - GPU serverless, ngủ giữa các phiên, thức dậy khi cần

Daytona và Modal là điểm đáng chú ý: môi trường agent tồn tại trên cloud nhưng không tốn tiền khi không dùng. Không cần duy trì VM 24/7, không trả tiền idle.

Bảy Nền Tảng Nhắn Tin

hermes gateway setup   # cấu hình credentials
hermes gateway start   # khởi động tiến trình gateway

Hỗ trợ: Telegram, Discord, Slack, WhatsApp, Signal, Email, Home Assistant. Bảy kênh, cùng một agent, cùng một bộ nhớ.

Kết nốiTrường hợp dùng
Terminal TUILàm việc chính, soạn thảo nhiều dòng
Telegram / DiscordNhắn lệnh nhanh khi không ở máy tính
Signal / WhatsAppKênh riêng tư, ops bảo mật cao
EmailBáo cáo định kỳ, team không dùng chat
Home AssistantTự động hóa, cron jobs từ home hub

Chuyển đổi model bằng hermes model. Hỗ trợ Nous Portal, OpenRouter (200+ model), Anthropic, OpenAI, và bất kỳ endpoint tương thích OpenAI nào. Nghe thì đẹp. Nhưng có một số thứ cần biết trước khi đặt cược cả workflow vào đây.

Điểm Gãy

⚠️ Warning: Bộ nhớ Hermes nằm cục bộ trong ~/.hermes/memories/. Nếu đổi máy hoặc cài lại OS, phải sao chép thủ công thư mục này. Hiện chưa có đồng bộ cloud tích hợp. Quên bước này, trí nhớ mà agent xây dựng trong nhiều tháng sẽ biến mất.

Thiết lập gateway nhắn tin cần thời gian. Telegram và Discord cần tạo bot, quản lý token. Signal phức tạp hơn vì không có official API, phải qua thư viện third-party. Email cần SMTP credentials. Nếu chưa quen quản lý API key, đây sẽ là một buổi chiều khó chịu.

RL training đòi thêm bước. Tích hợp Atropos cần git submodule update --init --recursive. Không tự động.

Android Termux có một chữ khác nhau. Dùng pip install "hermes-agent[termux]" thay vì [all]. Sai một chữ là lỗi ngay.

Windows native không được hỗ trợ. Dùng WSL2.

Khi gặp vấn đề lạ, hermes doctor kiểm tra dependencies, gateway connections, và tình trạng config. Tiết kiệm được kha khá thời gian debug. Đây là framework của người làm thật: mạnh ở chỗ cần mạnh, thô ở chỗ ít người dùng. Cái bàn làm việc phải được bạn sắp xếp trước khi nó thật sự hữu dụng.

Mở Máy Buổi Sáng

Sáng hôm qua tôi gõ hermes lúc tám giờ.

Nó không hỏi tôi đang làm gì. Nó biết rồi. Nhắc luôn module còn dang dở, cái test chưa pass, convention tôi thích trong USER.md, thậm chí giọng điệu phản hồi vì đã định nghĩa sẵn trong SOUL.md. Ba mươi giây để vào nhịp, không một phút giải thích.

Cái thực tập sinh mà tôi từng phải đào tạo lại mỗi sáng, giờ đã thành cộng sự. Không giỏi hơn vì được học thêm, mà giỏi hơn vì không còn quên nữa.

63.168 người đang có cái bàn làm việc đó. Số tiếp theo là bạn hay không, câu đó chỉ mất một dòng lệnh để trả lời.


NousResearch/hermes-agent · MIT · 63168★ · docs

Hoang Yell

Hoang Yell

Một nhà phát triển phần mềm và là người kể chuyện kỹ thuật. Tôi dành thời gian để khám phá những repository mã nguồn mở thú vị nhất trên GitHub và trình bày chúng dưới dạng những câu chuyện dễ hiểu cho mọi người.