Persistent Memory của Hermes Agent là hai file MEMORY.md và USER.md trong ~/.hermes/memories/, được nạp vào đầu mỗi phiên; bạn bật và giới hạn dung lượng trong khối memory: của ~/.hermes/config.yaml, rồi kiểm soát việc ghi bằng /memory approval on. Việc tự rút ra skill do tiến trình background review đảm nhận, chủ động gọi bằng /refine hoặc /learn.
Một trợ lý AI hữu ích là trợ lý càng làm lâu càng hiểu người dùng và làm việc gọn hơn. Hermes Agent theo đuổi điều đó bằng hai cơ chế: persistent memory và tự đúc kết quy trình thành skill. Bài thuộc nhóm hướng dẫn skills, memory và tích hợp Hermes Agent; muốn thêm bộ nhớ ngoài dạng RAG, vector database, xem cấu hình Long-Term Memory cho Hermes Agent.
Cập nhật 10/2026: cấu hình đối chiếu Hermes Agent v0.22.5. Ảnh chụp là bản tác giả làm tháng 9/2026.
Memory và skill trong Hermes Agent khác nhau như thế nào?
Memory trong Hermes Agent ghi nhớ thông tin ngắn, luôn có mặt trong mọi phiên: sự thật về môi trường, sở thích, quy ước. Skill ghi nhớ cách làm: quy trình, lệnh, kinh nghiệm, chỉ nạp khi việc khớp. Thông tin giống một ghi chú ngắn thì để memory; giống một tài liệu hướng dẫn thì viết thành skill.
Tiêu chí Persistent Memory Skill Mục đích Ghi nhớ thông tin Ghi nhớ cách thực hiện Nội dung Sự thật, sở thích, môi trường Quy trình, câu lệnh, kinh nghiệm Dung lượng MEMORY.md 2.200 ký tự, USER.md 1.375 ký tự Dài hơn nhiều Cách nạp Có mặt trong mọi phiên Chỉ nạp khi phù hợp Vị trí ~/.hermes/memories/ ~/.hermes/skills/ Hermes tự cập nhật Có Có Ví dụ “Project dùng Docker Compose” “Cách deploy project bằng Docker Compose”
Cách chia này khớp hướng dẫn chính thức. So sánh cách hai nền tảng xử lý bộ nhớ: persistent memory của Hermes Agent và OpenClaw.
Hermes Agent tự học từ cuộc trò chuyện như thế nào?
Hermes Agent tự học qua background self-improvement review: sau một số lượt trò chuyện, một tiến trình chạy nền xem lại phiên và tự hỏi có thông tin lâu dài nào đáng lưu vào memory, có quy trình nào đáng thành skill, skill nào cần sửa, người dùng vừa sửa cách làm nào. Nếu có, tiến trình dùng tool memory hoặc skill_manage để ghi.


Hermes thường có lý do tạo hoặc cập nhật skill khi:
- Vừa giải quyết một workflow nhiều bước.
- Đã thử nhiều cách và tìm được phương án chạy được.
- Người dùng sửa lại cách làm.
- Một lỗi khó đã xử lý xong.
- Quy trình vừa làm có khả năng lặp lại.
Đây là cơ chế thường gọi gọn là “Hermes tự rút ra skill”.
Chuẩn bị trước khi cấu hình Persistent Memory và skill
Trước khi cấu hình, cập nhật Hermes Agent lên bản mới và biết cách khởi động lại gateway, vì gateway trên VPS chỉ đọc lại config.yaml khi khởi động. Lệnh hermes gateway restart liệt kê các lượt chat, cron đang chạy và hỏi trước khi ngắt, an toàn hơn dừng tiến trình đột ngột.
hermes --version
Nếu cần cập nhật:
hermes update
Gateway đang chạy trên VPS, sau khi cập nhật hoặc đổi cấu hình quan trọng:
hermes gateway restart

Cách cấu hình Persistent Memory trong Hermes Agent
Cấu hình Persistent Memory gồm sáu bước: mở config.yaml, bật memory và đặt giới hạn ký tự, chọn chế độ ghi (tự động hay chờ duyệt), thử lưu một ghi nhớ, kiểm tra file trong ~/.hermes/memories/ và mở phiên mới để xác nhận Hermes nhớ. Trên VPS, mọi thao tác làm qua SSH.
Bước 1: Mở file cấu hình Hermes Agent
nano ~/.hermes/config.yaml
File đã có cấu hình model, API hay gateway thì giữ nguyên, chỉ thêm phần memory.
Bước 2: Bật Persistent Memory
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
memory_enabled: true: bật bộ nhớ lâu dài trong MEMORY.md.user_profile_enabled: true: cho lưu thông tin về người dùng trong USER.md.memory_char_limit: 2200: giới hạn MEMORY.md (khoảng 800 token).user_char_limit: 1375: giới hạn USER.md (khoảng 500 token).
Đây cũng là giá trị mặc định trong docs; khai rõ giúp dễ kiểm tra. Lưu bằng Ctrl + O → Enter, thoát bằng Ctrl + X.


Gateway đang chạy trên VPS thì khởi động lại để đọc cấu hình:
hermes gateway restart
Bước 3: Chọn cách Hermes ghi memory
Hermes cho chọn tự động ghi hoặc chờ bạn duyệt trước khi ghi. Người mới nên bật chế độ duyệt để biết Hermes lưu gì. Trong khung chat hoặc CLI:
/memory approval on
Lệnh này bật memory.write_approval và lưu vào cấu hình. Khi Hermes thấy thông tin đáng lưu, thay đổi vào danh sách chờ thay vì ghi thẳng.

Xem memory đang chờ:
/memory pending
Duyệt hoặc từ chối từng mục, hoặc tất cả:
/memory approve <id>
/memory reject <id>
/memory approve all
/memory reject all
Quen rồi và muốn tự động hơn thì tắt bước duyệt:
/memory approval off
Bước 4: Thử lưu một memory mới
Yêu cầu Hermes ghi nhớ một thông tin đơn giản, ví dụ: “Hãy ghi nhớ rằng project thử nghiệm của tôi dùng Node.js 24.” Nếu đã bật duyệt, kiểm tra và duyệt:
/memory pending
/memory approve all
Bước 5: Kiểm tra memory đã được lưu
cat ~/.hermes/memories/MEMORY.md
cat ~/.hermes/memories/USER.md
Nội dung vừa lưu xuất hiện trong file tương ứng là memory đã chạy. Dùng profile khác thì file nằm ở ~/.hermes/profiles/<tên>/memories/.
Bước 6: Mở phiên mới để kiểm tra
Memory nạp vào ngữ cảnh lúc phiên bắt đầu (dạng ảnh chụp cố định), nên ghi nhớ mới có hiệu lực từ phiên sau. Mở phiên mới:
/new
Hỏi lại, ví dụ: “Project thử nghiệm của tôi đang dùng phiên bản Node.js nào?” Hermes trả lời đúng là xong phần memory.
Cách cấu hình Hermes Agent tự rút ra skill
Cấu hình tự rút ra skill gồm mười bước: đặt chu kỳ nhắc tạo skill, bật background review, khởi động lại gateway, bật duyệt skill, cho Hermes làm một workflow, gọi /refine hoặc /learn, duyệt skill đang chờ và kiểm tra thư mục skill. Mục tiêu là để quy trình đã chạy được lưu lại, lần sau không phải mò từ đầu.
Ví dụ khi xử lý một việc trên VPS, Hermes kiểm tra môi trường, chạy lệnh, gặp lỗi, tìm cách sửa rồi hoàn thành. Quy trình đó có giá trị dùng lại thì Hermes lưu thành skill. Muốn tự viết skill bằng tay: cách viết skill cho Hermes Agent.
Bước 1: Mở file cấu hình Hermes Agent
nano ~/.hermes/config.yaml
Giữ nguyên phần model, API, gateway, memory hiện có; chỉ thêm cấu hình skill.
Bước 2: Đặt chu kỳ xem xét tạo skill
skills:
creation_nudge_interval: 10
creation_nudge_interval quy định sau bao nhiêu vòng gọi tool thì Hermes được nhắc xem có quy trình nào đáng lưu thành skill; đặt 0 để tắt nhắc. File cấu hình mẫu của Hermes (cli-config.yaml.example) dùng giá trị 15. Memory có khoá tương tự memory.nudge_interval (mặc định 10 lượt người dùng).

Muốn đánh giá thưa hơn để giảm token:
skills:
creation_nudge_interval: 20
Không đặt quá thấp: background review cũng gọi model và tiêu token.
Bước 3: Bật background review
auxiliary:
background_review:
enabled: true

Background review tạo một phiên đánh giá riêng sau lượt trò chuyện để xem có kiến thức đáng lưu, workflow nên thành skill, skill cần sửa hoặc lỗi cần tránh lần sau. Tính năng này bật mặc định; khai rõ trong config.yaml giúp dễ quản lý. Cấu hình lúc này:
skills:
creation_nudge_interval: 10
auxiliary:
background_review:
enabled: true
Muốn tắt tự đánh giá:
auxiliary:
background_review:
enabled: false
Tắt rồi vẫn chủ động gọi được bằng /refine. Khoá phải nằm dưới auxiliary:; khối background_review: đặt ở cấp ngoài cùng sẽ không được đọc. Model chính đắt thì có thể cho review chạy model rẻ hơn bằng auxiliary.background_review.provider và model.
Bước 4: Lưu cấu hình và khởi động lại Hermes
Trong nano, Ctrl + O → Enter để lưu, Ctrl + X để thoát, rồi:
hermes gateway restart
Cấu hình mới áp dụng cho các phiên tiếp theo.
Bước 5: Thiết lập quyền ghi skill
Giống memory, bạn chọn để Hermes tự tạo, sửa skill hay chờ duyệt. Người mới nên bật duyệt:
/skills approval on
Lệnh này bật skills.write_approval. Mọi thao tác tạo, sửa, xoá skill được đưa vào hàng chờ tại ~/.hermes/pending/skills/ thay vì ghi thẳng.

Quen rồi thì tắt:
/skills approval off
Bước 6: Cho Hermes làm một workflow
Hãy kiểm tra và triển khai project Node.js này lên VPS bằng PM2.
Trong lúc làm, Hermes có thể kiểm tra phiên bản Node.js, mã nguồn, cài dependency, tạo hoặc kiểm tra file .env, build, chạy bằng PM2, đọc log và sửa lỗi. Xong việc, Hermes có thể nhận ra đây là quy trình dùng lại được và đề xuất tạo skill.
Bước 7: Yêu cầu Hermes rút skill ngay
Không cần chờ chu kỳ tự chạy. Sau một workflow quan trọng, gõ:
/refine
/refine chạy ngay vòng xem lại memory và skill trên bản sao cuộc trò chuyện, không làm phiền phiên đang mở. Có thể chỉ rõ mục tiêu:
/refine Hãy rút quy trình triển khai Node.js vừa thực hiện thành skill
Bước 8: Dùng /learn để tạo skill từ một nội dung cụ thể
/learn Hãy học quy trình deploy Node.js vừa thực hiện và lưu thành skill
/learn Hãy ghi lại cách xử lý lỗi Docker vừa hoàn thành thành một skill dùng lại được
/learn chắt lọc một skill từ thứ bạn chỉ ra: thư mục, URL, quy trình vừa làm hoặc ghi chú dán vào. Phân biệt nhanh: /refine xem lại cả cuộc trò chuyện để tìm bài học; /learn yêu cầu học một nội dung cụ thể thành skill.
Bước 9: Kiểm tra skill đang chờ duyệt
/skills pending
/skills diff <id>
/skills approve <id>
/skills reject <id>
/skills approve all
/skills reject all
/skills diff hiện phần Hermes muốn thêm, sửa hoặc xoá (trên kênh chat bị cắt ngắn, xem đủ trên CLI). Cơ chế duyệt áp dụng cho cả skill tạo trong phiên chính lẫn skill do background review đề xuất.
Bước 10: Kiểm tra skill đã được tạo
ls ~/.hermes/skills/
find ~/.hermes/skills -name "SKILL.md"
Mỗi skill có file SKILL.md cho Hermes biết khi nào dùng, các bước, lệnh hay tool cần dùng và những lỗi cần tránh. Skill chỉ nạp khi cần, tiết kiệm ngữ cảnh hơn so với nhét workflow dài vào memory.
Ví dụ hoàn chỉnh
Vừa cùng Hermes deploy xong một website:
/learn Hãy lưu quy trình deploy website vừa thực hiện thành skill
/skills pending
/skills diff <id>
/skills approve <id>
find ~/.hermes/skills -name "SKILL.md"
Skill mới xuất hiện là quá trình học đã hoàn tất.
Khi nào nên lưu memory, khi nào nên tạo skill?
Lưu memory khi thông tin ngắn, có giá trị lâu dài, cần biết ở nhiều loại việc và liên quan người dùng hoặc môi trường. Tạo skill khi việc gồm nhiều bước, lặp lại, có lệnh hoặc trình tự cụ thể và có lỗi cần tránh. Biến môi trường trong .env không phải memory; đó là credential và cấu hình.
Nên lưu vào memory khi:
- Thông tin ngắn.
- Có giá trị lâu dài.
- Cần biết trong nhiều loại công việc.
- Liên quan người dùng hoặc môi trường.
- Không cần tài liệu hướng dẫn dài.

Nên tạo skill khi:
- Công việc gồm nhiều bước.
- Workflow sẽ lặp lại.
- Có câu lệnh hoặc trình tự cụ thể.
- Có nhiều lỗi cần tránh.
- Cần hướng dẫn chi tiết khi làm.
Một số lưu ý khi cấu hình Persistent Memory và tự rút ra skill
Persistent Memory hoạt động tốt khi được giữ gọn: memory chỉ chứa ghi chú ngắn vì có giới hạn và luôn nằm trong ngữ cảnh, quy trình dài chuyển sang skill, bật duyệt khi mới dùng và mỗi Hermes home chỉ dành cho một agent. Kiểm tra skill định kỳ vì phần mềm thay đổi.
- Không biến memory thành kho tài liệu: memory có giới hạn và vào ngữ cảnh mỗi phiên.
- Đưa quy trình dài sang skill: tiết kiệm ngữ cảnh hơn.
- Bật write_approval khi mới dùng: xem agent muốn học gì trước khi lưu.
- Không đặt creation_nudge_interval quá thấp: background review cũng tốn token.
- Kiểm tra skill định kỳ: quy trình cũ có thể không còn đúng sau khi phần mềm đổi.
- Dùng /refine sau workflow quan trọng: không cần chờ đánh giá tự động.
- Mỗi Hermes home cho một agent: hai tiến trình ghi chung một vùng memory sẽ trộn dữ liệu; agent thứ hai nên có profile riêng.

Khi nào không nên bật tự học?
Không nên để Hermes tự ghi memory và skill mà không duyệt khi dùng model nhỏ dễ đánh giá sai điều mình học, khi máy chứa dữ liệu nhạy cảm, hoặc khi nhiều người dùng chung một profile. Khi đó bật write_approval, hoặc tắt background review và chỉ dùng /learn khi cần.
- Model nhỏ hoặc model local yếu: bật duyệt để tránh lưu kết luận sai về bạn.
- Bot dùng chung trong nhóm: mỗi người một profile, hoặc tắt user profile (
user_profile_enabled: false). - Ngân sách token chặt: tắt background review, chạy
/refinethủ công. - Cần nhớ khối lượng tài liệu lớn: dùng memory provider ngoài, xem Long-Term Memory bằng RAG.
Kết luận
Persistent Memory và tự rút ra skill giúp Hermes Agent chuyển từ AI xử lý từng yêu cầu riêng lẻ sang trợ lý giữ được kiến thức và cải thiện quy trình theo thời gian. Memory giữ thông tin ngắn mà quan trọng; skill giữ workflow, lệnh và kinh nghiệm cần dùng lại.
Kết hợp background review, /refine và /learn với bước duyệt khi mới dùng, Hermes dần có thư viện skill sát với môi trường thật của bạn.
Muốn chạy Hermes Agent 24/7 mà không tự cài? VPS Hermes Agent của Tino cài sẵn Hermes Agent trên VPS NVMe đặt tại Việt Nam; bạn vẫn có quyền root để cấu hình. Xem cấu hình và giá trên trang sản phẩm.
Câu hỏi thường gặp
Memory đầy thì điều gì xảy ra?
Hermes không tự âm thầm xoá dữ liệu để ghi thêm. Khi vượt giới hạn, tool memory báo lỗi và agent phải rút gọn, gộp hoặc xoá mục không còn cần trước khi ghi lại.
Có cần tự viết SKILL.md không?
Không bắt buộc. Bạn có thể tự viết, cài skill có sẵn từ Skills Hub hoặc để Hermes tạo từ workflow đã làm, ví dụ /learn Hãy lưu quy trình vừa thực hiện thành skill. Cài skill có sẵn: cách thêm skill cho Hermes Agent.
Persistent Memory có còn sau khi đóng phiên không?
Có. MEMORY.md và USER.md lưu trên ổ đĩa và được nạp lại khi bắt đầu phiên mới. Ngoài hai file này, Hermes còn tìm lại hội thoại cũ bằng session_search trên SQLite ~/.hermes/state.db.
Có thể tắt hoàn toàn Persistent Memory không?
Có. Đặt memory_enabled: false và user_profile_enabled: false trong khối memory:; khi cả hai tắt, tool memory tích hợp bị gỡ khỏi danh sách tool của agent.
Có thể dùng hệ thống memory mạnh hơn MEMORY.md không?
Có. Hermes hỗ trợ một memory provider ngoài tại một thời điểm, chạy song song với memory tích hợp. RetainDB và ByteRover đi kèm; Honcho, Hindsight, Supermemory, Mem0, OpenViking, Holographic cài từ plugin catalog (từ v0.22.0), chọn bằng hermes memory setup. Tìm hiểu thêm: OpenViking là gì.
