Chuyển tới nội dung chính

Giám tuyển

Người phụ trách là thẻ bảo trì nền cho kỹ năng do đại lý tạo. Nó theo dõi tần suất mỗi kỹ năng được xem, sử dụng và vá lỗi, di chuyển các kỹ năng không được sử dụng từ lâu qua các trạng thái active → stale → archived và định kỳ đưa ra một bản đánh giá mô hình phụ trợ ngắn đề xuất hợp nhất hoặc trôi dạt các bản vá.

Nó tồn tại để các kỹ năng được tạo thông qua self-improvement loop không bị chồng chất mãi mãi. Mỗi khi tác nhân giải quyết một vấn đề mới và lưu một kỹ năng, kỹ năng đó sẽ xuất hiện trong

~/.Hermes/skills/

. Nếu không bảo trì, bạn sẽ có hàng tá sản phẩm gần như trùng lặp làm ô nhiễm danh mục và lãng phí mã thông báo.

Người phụ trách không bao giờ chạm vào các kỹ năng đi kèm (được gửi cùng với kho lưu trữ) hoặc các kỹ năng được cài đặt trong trung tâm (từ agentskills.io). Nó chỉ đánh giá các kỹ năng mà chính tác nhân đó đã tạo ra. Nó cũng không bao giờ tự động xóa — kết quả tồi tệ nhất là lưu trữ vào

~/.Hermes/skills/.archive/ ` và có thể phục hồi được.

Bài hát issue #7816.

Nó chạy như thế nào

Trình quản lý được kích hoạt bằng quá trình kiểm tra không hoạt động, không phải bằng cron daemon. Khi bắt đầu phiên CLI và trên một dấu tích định kỳ bên trong chuỗi cron-ticker của cổng, Hermes sẽ kiểm tra xem:

  1. Đã đủ thời gian kể từ lần chạy người quản lý cuối cùng ( `interval_hours

, mặc định 7 ngày) và 2. Tác nhân đã không hoạt động đủ lâu ( `min_idle_hours

, mặc định 2 giờ).

Nếu cả hai đều đúng, nó sẽ tạo ra một nhánh nền của `AIAgent

  • cùng một mẫu được sử dụng bởi các cú huých tự cải thiện trí nhớ/kỹ năng. Phân nhánh chạy trong bộ đệm nhắc nhở của riêng nó và không bao giờ chạm vào cuộc trò chuyện đang hoạt động.
First-run behavior

Trong lần cài đặt hoàn toàn mới (hoặc lần đầu tiên quá trình cài đặt trước của người quản lý đánh dấu sau `Hermes update

), người quản lý không chạy ngay lập tức. Quan sát đầu tiên đưa last_run_at thành "bây giờ" và trì hoãn lần vượt qua thực sự đầu tiên bằng một interval_hours đầy đủ. Điều này giúp bạn có đủ thời gian để xem lại thư viện kỹ năng của mình, ghim bất kỳ nội dung quan trọng nào hoặc chọn không tham gia hoàn toàn trước khi người phụ trách chạm vào nó.

Nếu bạn muốn xem người quản lý sẽ làm gì trước khi nó chạy thực sự, hãy chạy `Hermes curator run --dry-run

  • nó tạo ra cùng một báo cáo đánh giá mà không làm thay đổi thư viện.

Một cuộc chạy có hai giai đoạn:

  1. Chuyển đổi tự động (xác định, không có LLM). Các kỹ năng không được sử dụng cho stale_after_days (30) sẽ trở thành `stale

; các kỹ năng không được sử dụng cho archive_after_days (90) sẽ được chuyển sang

~/.Hermes/skills/.archive/

. 2. Đánh giá LLM (thẻ mô hình phụ trợ đơn, `max_iterations=8

). Tác nhân phân nhánh khảo sát các kỹ năng do tác nhân tạo, có thể đọc bất kỳ kỹ năng nào trong số chúng bằng skill_view và quyết định xem mỗi kỹ năng có nên giữ, vá (thông qua `skill_manage

), hợp nhất các kỹ năng chồng chéo hay lưu trữ thông qua công cụ đầu cuối hay không.

Các kỹ năng được ghim bị giới hạn đối với cả quá trình chuyển đổi tự động của người quản lý và công cụ skill_manage của chính đại lý. Xem Pinning a skill bên dưới.

Cấu hình

Tất cả cài đặt đều có trong config.yaml dưới curator: (không phải

.env

  • đây không phải là bí mật). Mặc định:
curator:
enabled: true
interval_hours: 168 # 7 days
min_idle_hours: 2
stale_after_days: 30
archive_after_days: 90

`
``Để tắt hoàn toàn, hãy đặt
`curator.enabled: false

.

### Chạy đánh giá về mẫu aux rẻ hơn

Thẻ đánh giá LLM của người phụ trách là một ô nhiệm vụ phụ thông thường —
`auxiliary.curator
` — cùng với Tầm nhìn, Nén, Tìm kiếm phiên, v.v. "Tự động" có nghĩa là "sử dụng mô hình trò chuyện chính của tôi"; thay vào đó hãy ghi đè vị trí để ghim một nhà cung cấp + mô hình cụ thể cho thẻ đánh giá.

**Dễ nhất —
`Hermes model

:**

`bash
Hermes model # → "Auxiliary models — side-task routing"

# → pick "Curator" → pick provider → pick model

`
``Bộ chọn tương tự có sẵn trong trang tổng quan web trong tab **Mô hình**.

**Cấu hình trực tiếp.YAML (tương đương):**

``` yaml
auxiliary:
curator:
provider: OpenRouter
model: Google/Gemini-3-flash-preview
timeout: 600 # generous — reviews can take several minutes

`
``Việc để
`provider: auto
` (mặc định) sẽ định tuyến quá trình đánh giá đi qua bất kể mô hình trò chuyện chính của bạn là gì, khớp với hành vi của mọi tác vụ phụ khác.

:::note[Legacy config]
Các bản phát hành trước đó sử dụng khối
`curator.auxiliary.\{provider,model}
` một lần. Đường dẫn đó vẫn hoạt động nhưng tạo ra một dòng nhật ký không dùng nữa — vui lòng di chuyển sang
`auxiliary.curator
` ở trên để người phụ trách dùng chung hệ thống ống nước (
`Hermes model

, tab Mô hình bảng điều khiển,
`base_url

,
`API_key

,
`timeout

,
`extra_body

) như mọi tác vụ phụ trợ khác.

:::

##CLI

``` bash
Hermes curator status # last run, counts, pinned list, LRU top 5
Hermes curator run # trigger a review now (blocks until the LLM pass finishes)
Hermes curator run --background # fire-and-forget: start the LLM pass in a background thread
Hermes curator run --dry-run # preview only — report without any mutations
Hermes curator backup # take a manual snapshot of ~/.Hermes/skills/
Hermes curator rollback # restore from the newest snapshot
Hermes curator rollback --list # list available snapshots
Hermes curator rollback --id <ts # restore a specific snapshot
Hermes curator rollback -y # skip the confirmation prompt
Hermes curator pause # stop runs until resumed
Hermes curator resume
Hermes curator pin <skill # never auto-transition this skill
Hermes curator unpin <skill
Hermes curator restore <skill # move an archived skill back to active

`

## Sao lưu và khôi phục

Trước mỗi lần người quản lý thực sự vượt qua, Hermes sẽ chụp ảnh nhanh tar.gz của

~/.Hermes/skills/
` tại

~/.Hermes/skills/.curator_backups/<utc-iso/skills.tar.gz

. Nếu một lượt lưu trữ hoặc hợp nhất nội dung nào đó mà bạn không muốn chạm vào, bạn có thể hoàn tác toàn bộ quá trình chạy bằng một lệnh:

`bash
Hermes curator rollback # restore newest snapshot (with confirmation)
Hermes curator rollback -y # skip the prompt
Hermes curator rollback --list # see all snapshots with reason + size

`
`Bản thân việc khôi phục có thể đảo ngược: trước khi thay thế cây kỹ năng, Hermes chụp một ảnh chụp nhanh khác được gắn thẻ
`pre-rollback to <target-id

, do đó, việc khôi phục nhầm lẫn có thể được hoàn tác bằng cách chuyển tiếp tới ảnh chụp nhanh đó bằng

`
--id

.

Bạn cũng có thể chụp ảnh nhanh thủ công bất kỳ lúc nào với
`Hermes curator backup --reason "before-refactor"

. Chuỗi

--reason
` nằm trong
`manifest.JSON
` của ảnh chụp nhanh và được hiển thị trong

--list

.

Ảnh chụp nhanh được cắt bớt thành
`curator.backup.keep
` (mặc định 5) để giới hạn mức sử dụng đĩa:

``` yaml
curator:
backup:
enabled: true
keep: 5

`
``Đặt
`curator.backup.enabled: false
` để tắt tính năng chụp nhanh tự động. Lệnh
`Hermes curator backup
` thủ công vẫn hoạt động khi các bản sao lưu bị vô hiệu hóa chỉ khi bạn đặt
`enabled: true
` trước tiên — cờ kiểm soát cả hai đường dẫn một cách đối xứng để không có cách nào vô tình bỏ qua ảnh chụp nhanh trước khi chạy khi chạy đột biến.

Hermes curator status
` cũng liệt kê năm kỹ năng ít được sử dụng gần đây nhất — một cách nhanh chóng để xem những kỹ năng nào có khả năng trở nên cũ kỹ tiếp theo.

Các lệnh con tương tự có sẵn dưới dạng lệnh gạch chéo

/curator
` bên trong phiên đang chạy (nền tảng CLI hoặc cổng).

## "do tác nhân tạo" nghĩa là gì

Một kỹ năng được coi là do tác nhân tạo nếu tên của nó **không** trong:
-

~/.Hermes/skills/.bundled_manifest
` (các kỹ năng được sao chép từ repo khi cài đặt) và

-

~/.Hermes/skills/.hub/lock.JSON
` (các kỹ năng được cài đặt qua
`Hermes skills install

).

Mọi thứ khác trong

~/.Hermes/skills/
` đều là trò chơi công bằng dành cho người quản lý. Điều này bao gồm:
- Kỹ năng được đại lý lưu qua
`skill_manage(action="create")
` trong khi trò chuyện.
- Kỹ năng bạn tạo thủ công bằng
`SKILL.md
` viết tay.
- Các kỹ năng được thêm vào thông qua thư mục kỹ năng bên ngoài mà bạn đã chỉ cho Hermes.

:::warning[Your hand-written skills look the same as agent-saved ones]
Nguồn gốc ở đây là **nhị phân** (gói/trung tâm so với mọi thứ khác). Người phụ trách không thể cho biết kỹ năng được viết bằng tay mà bạn dựa vào cho quy trình công việc riêng tư ngoài kỹ năng mà vòng lặp tự cải thiện đã lưu vào giữa phiên. Cả hai đều rơi vào nhóm "do đại lý tạo".

Trước lượt thực đầu tiên (7 ngày sau khi cài đặt theo mặc định), hãy dành chút thời gian để:
1. Chạy
`Hermes curator run --dry-run
` để xem chính xác người phụ trách sẽ đề xuất những gì.
2. Sử dụng
`Hermes curator pin <name
` để rào lại bất cứ thứ gì bạn không muốn chạm vào.
3. Hoặc đặt
`curator.enabled: false
` trong
`config.yaml
` nếu bạn muốn tự mình quản lý thư viện.

Các kho lưu trữ luôn có thể được phục hồi thông qua
`Hermes curator restore <name

, nhưng việc ghim trước sẽ dễ dàng hơn là theo đuổi việc hợp nhất sau thực tế.
:::

Nếu bạn muốn bảo vệ một kỹ năng cụ thể khỏi bị chạm vào — ví dụ: kỹ năng được viết bằng tay mà bạn dựa vào — hãy sử dụng
`Hermes curator pin <name

. Xem phần tiếp theo.

## Ghim một kỹ năng

Việc ghim bảo vệ kỹ năng khỏi bị xóa — cả kho lưu trữ tự động của người quản lý đều được chuyển và lệnh gọi công cụ
`skill_manage(action="delete")
` của đại lý. Khi một kỹ năng được ghim:
- **người quản lý** bỏ qua nó trong quá trình chuyển đổi tự động (
`active → stale → archived

) và thẻ đánh giá LLM của nó được hướng dẫn để nó yên.
- **Công cụ
`skill_manage
` của đại lý** từ chối
`delete
` trên đó, hướng người dùng vào
`Hermes curator unpin <name

. Các bản vá và chỉnh sửa vẫn được thực hiện, do đó, nhân viên hỗ trợ có thể cải thiện nội dung của kỹ năng được ghim khi các cạm bẫy xuất hiện mà không cần nhảy múa ghim/bỏ ghim/ghim lại.

Ghim và bỏ ghim bằng:

``` bash
Hermes curator pin <skill
Hermes curator unpin <skill

`
``Cờ được lưu dưới dạng

"pinned": true
` trên mục nhập kỹ năng trong

~/.Hermes/skills/.usage.JSON

, vì vậy nó tồn tại qua các phiên.

Chỉ các kỹ năng **do tác nhân tạo** mới có thể được ghim - các kỹ năng được đóng gói và cài đặt trong trung tâm ngay từ đầu không bao giờ bị đột biến bởi người quản lý và
`Hermes curator pin
` sẽ từ chối kèm theo thông báo giải thích nếu bạn thử.

Nếu bạn muốn một sự đảm bảo mạnh mẽ hơn là "không xóa" — ví dụ: đóng băng hoàn toàn nội dung của một kỹ năng trong khi tác nhân vẫn đọc nó — hãy chỉnh sửa

~/.Hermes/skills/<name/SKILL.md
` trực tiếp bằng trình chỉnh sửa của bạn. Ghim bảo vệ việc xóa theo hướng công cụ, không phải quyền truy cập hệ thống tệp của riêng bạn.

## Đo từ xa cách sử dụng

Người phụ trách duy trì một sidecar tại

~/.Hermes/skills/.usage.JSON
` với một mục nhập cho mỗi kỹ năng:

`JSON
{
"my-skill": {
"use_count": 12,
"view_count": 34,
"last_used_at": "2026-04-24T18:12:03Z",
"last_viewed_at": "2026-04-23T09:44:17Z",
"patch_count": 3,
"last_patched_at": "2026-04-20T22:01:55Z",
"created_at": "2026-03-01T14:20:00Z",
"state": "active",
"pinned": false,
"archived_at": null
}
}

`
``Bộ đếm tăng khi:
-
`view_count

: đại lý gọi
`skill_view
` về kỹ năng.

-
`use_count

: kỹ năng được tải vào lời nhắc của cuộc trò chuyện.
-
`patch_count

:
`skill_manage patch/edit/write_file/remove_file
` chạy theo kỹ năng.

Các kỹ năng được đóng gói và cài đặt trong trung tâm được loại trừ rõ ràng khỏi việc ghi dữ liệu đo từ xa.

## Báo cáo mỗi lần chạy

Mỗi lần chạy của người quản lý đều ghi một thư mục có dấu thời gian trong

~/.Hermes/logs/curator/

:

`
~/.Hermes/logs/curator/
└── 20260429-111512/
├── run.JSON # machine-readable: full fidelity, stats, LLM output
└── REPORT.md # human-readable summary

`

`REPORT.md
` là một cách nhanh chóng để xem một lần chạy nhất định đã làm gì - kỹ năng nào đã được chuyển đổi, người đánh giá LLM đã nói gì, kỹ năng nào đã được vá. Tốt cho việc kiểm tra mà không cần phải grep
`agent.log

.

### Đổi tên bản đồ trong phần tóm tắt

Nếu một lần chạy hợp nhất nhiều kỹ năng dưới một ô (hoặc được hợp nhất gần như trùng lặp), thì bản tóm tắt hiển thị cho người dùng được in ở cuối lần chạy sẽ bao gồm một bản đồ đổi tên rõ ràng hiển thị mọi cặp
`old-name → new-name
` mà người phụ trách đã áp dụng. Điều này bổ sung cho các dòng chuyển đổi theo từng kỹ năng, vì vậy khi có một làn sóng đổi tên, bạn có thể nhận ra chúng trong nháy mắt mà không làm khác biệt báo cáo JSON. Gợi ý cũng xuất hiện trong
`Hermes curator pin
` để bạn có thể ghim tên ô ngay lập tức nếu muốn khóa nhãn mới.

## Khôi phục kỹ năng đã lưu trữ

Nếu người quản lý đã lưu trữ thứ gì đó mà bạn vẫn muốn:

``` bash
Hermes curator restore <skill-name

`
``Thao tác này sẽ chuyển kỹ năng trở lại từ

~/.Hermes/skills/.archive/
` về cây đang hoạt động và đặt lại trạng thái của nó thành
`active

. Quá trình khôi phục sẽ từ chối nếu một kỹ năng đi kèm hoặc được cài đặt trong trung tâm đã được cài đặt dưới cùng tên (sẽ ẩn ngược dòng).

## Vô hiệu hóa theo môi trường

Người quản lý được bật theo mặc định. Để tắt nó:
- **Chỉ dành cho một cấu hình:** chỉnh sửa

~/.Hermes/config.yaml
` (hoặc cấu hình của cấu hình đang hoạt động) và đặt
`curator.enabled: false

.

- **Chỉ trong một lần chạy:**
`Hermes curator pause
` — tình trạng tạm dừng vẫn tiếp tục trong các phiên; sử dụng
`resume
` để kích hoạt lại.

Người phụ trách cũng từ chối chạy nếu
`min_idle_hours
` chưa trôi qua, do đó, trên máy phát triển đang hoạt động, nó đương nhiên chỉ chạy trong khoảng thời gian yên tĩnh.

## Xem thêm
- [Skills System](/docs/user-guide/features/skills) — cách các kỹ năng hoạt động nói chung và vòng tự hoàn thiện tạo ra chúng
- [Memory](/docs/user-guide/features/memory) — đánh giá nền song song giúp duy trì trí nhớ dài hạn
- [Bundled Skills Catalog](/docs/reference/skills-catalog)
- [Issue #7816](https://GitHub.com/NousResearch/Hermes-agent/issues/7816) — thảo luận về thiết kế và đề xuất ban đầu