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

Giao diện CLI

CLI của Hermes Agent là giao diện người dùng terminal đầy đủ (TUI) — không phải giao diện người dùng web. Nó có tính năng chỉnh sửa nhiều dòng, tự động hoàn thành lệnh gạch chéo, lịch sử hội thoại, ngắt và chuyển hướng cũng như đầu ra công cụ phát trực tuyến. Được xây dựng cho những người sống trong terminal.

Chạy CLI

# Bắt đầu một phiên tương tác (mặc định)
hermes

# Chế độ truy vấn đơn (không tương tác)
hermes chat -q "Xin chào"

# Với một model cụ thể
hermes chat --model "anthropic/claude-sonnet-4"

# Với một provider cụ thể
hermes chat --provider nous

# Sử dụng Nous Portal
hermes chat --provider openrouter

# Buộc sử dụng OpenRouter

# Với các bộ công cụ cụ thể
hermes chat --toolsets "web,terminal,skills"

# Bắt đầu với một hoặc nhiều skill được tải trước
hermes -s hermes-agent-dev,github-auth
hermes chat -s github-pr-workflow -q "mở một draft PR"

# Tiếp tục các phiên trước đó
hermes --continue

# Tiếp tục phiên CLI gần đây nhất (-c)
hermes --resume <session_id>

# Tiếp tục một phiên cụ thể theo ID (-r)

# Chế độ_verbose (đầu ra debug)
hermes chat --verbose

# Git worktree cách ly (để chạy nhiều agent song song)
hermes -w

# Chế độ tương tác trong worktree
hermes -w -q "Sửa issue #123"

# Truy vấn đơn trong worktree

Bố cục giao diện

Xem trước được tạo kiểu của bố cục Hermes CLI hiển thị biểu ngữ, khu vực hội thoại và lời nhắc nhập liệu cố định.

Biểu ngữ Hermes CLI, luồng hội thoại và lời nhắc nhập liệu cố định được hiển thị dưới dạng hình ảnh tài liệu ổn định thay vì nghệ thuật văn bản dễ vỡ.

Biểu ngữ chào mừng hiển thị nhanh model, phần phụ trợ terminal, thư mục làm việc, các công cụ có sẵn và các skill đã cài đặt của bạn.

Thanh trạng thái

Thanh trạng thái liên tục nằm phía trên khu vực nhập liệu, cập nhật theo thời gian thực:

 ⚕ claude-sonnet-4-20250514 │ 12.4K/200K │ [██████░░░░] 6% │ $0.06 │ 15m

Yếu tốMô tả
Tên modelModel hiện tại (cắt ngắn nếu dài hơn 26 ký tự)
Số lượng tokenToken ngữ cảnh đã sử dụng / cửa sổ ngữ cảnh tối đa
Thanh ngữ cảnhChỉ báo lấp đầy trực quan với ngưỡng được mã hóa màu
Chi phíChi phí phiên ước tính (hoặc n/a đối với các model không xác định/không có giá)
Thời lượngThời gian phiên đã trôi qua

Thanh này thích ứng với chiều rộng của terminal — bố cục đầy đủ ở ≥ 76 cột, nhỏ gọn ở mức 52–75, tối thiểu (chỉ kiểu model + thời lượng) dưới 52.

Mã màu ngữ cảnh:

Màu sắcNgưỡngÝ nghĩa
Xanh< 50%Nhiều không gian
Vàng50–80%Bắt đầu đầy đủ
Cam80–95%Đang tiếp cận giới hạn
Đỏ≥ 95%Gần tràn — hãy xem xét /compress

Sử dụng /usage để biết thông tin chi tiết bao gồm chi phí cho mỗi danh mục (token đầu vào và đầu ra).

Hiển thị tiếp tục phiên

Khi tiếp tục phiên trước đó ( hermes -c hoặc hermes --resume <id> ), bảng "Cuộc trò chuyện trước" sẽ xuất hiện giữa biểu ngữ và lời nhắc nhập liệu, hiển thị bản tóm tắt ngắn gọn về lịch sử cuộc trò chuyện. Xem Phiên — Tóm tắt cuộc hội thoại khi Tiếp tục để biết chi tiết và cấu hình.

Tổ hợp phím

PhímHành động
EnterGửi tin nhắn
Alt+Enter hoặc Ctrl+JDòng mới (đầu vào nhiều dòng)
Alt+VDán hình ảnh từ bảng nhớ tạm khi được terminal hỗ trợ
Ctrl+VDán văn bản và tùy tiện đính kèm hình ảnh vào clipboard
Ctrl+BBắt đầu/dừng ghi âm giọng nói khi bật chế độ giọng nói ( voice.record_key , mặc định: ctrl+b )
Ctrl+CNgắt tác nhân (nhấn đúp trong vòng 2 giây để buộc thoát)
Ctrl+DThoát
Ctrl+ZĐình chỉ Hermes ở chế độ nền (chỉ dành cho Unix). Chạy fg trong shell để tiếp tục.
TabChấp nhận gợi ý lệnh tự động (văn bản mờ) hoặc lệnh gạch chéo tự động hoàn thành

Lệnh gạch chéo

Nhập / để xem danh sách thả xuống tự động hoàn thành. Hermes hỗ trợ một tập hợp lớn các lệnh gạch chéo CLI, lệnh skill động và lệnh nhanh do người dùng xác định.

Các ví dụ phổ biến:

LệnhMô tả
/helpHiển thị lệnh trợ giúp
/modelHiển thị hoặc thay đổi model hiện tại
/toolsLiệt kê các công cụ hiện có
/skills browseDuyệt qua trung tâm skill và các skill tùy chọn chính thức
/background <prompt>Chạy lời nhắc trong phiên nền riêng biệt
/skinHiển thị hoặc chuyển đổi giao diện CLI đang hoạt động
/voice onBật chế độ giọng nói CLI (nhấn Ctrl+B để ghi)
/voice ttsChuyển đổi tính năng phát lại bằng giọng nói cho các câu trả lời của Hermes
/reasoning highTăng cường độ suy luận
/title My SessionĐặt tên cho phiên hiện tại

Để biết danh sách đầy đủ các lệnh tích hợp và CLI, hãy xem Tham khảo lệnh gạch chéo.

Để thiết lập, nhà cung cấp, điều chỉnh im lặng và nhắn tin/sử dụng giọng nói Discord, hãy xem Chế độ giọng nói.

mẹo

Các lệnh không phân biệt chữ hoa chữ thường - /HELP hoạt động giống như /help . Các skill được cài đặt cũng tự động trở thành lệnh gạch chéo.

Lệnh nhanh

Bạn có thể xác định các lệnh tùy chỉnh chạy lệnh shell ngay lập tức mà không cần gọi LLM. Chúng hoạt động trên cả nền tảng CLI và nhắn tin (Telegram, Discord, v.v.).

# ~/.hermes/config.yaml
quick_commands:
status:
type: exec
command: systemctl status hermes-agent
gpu:
type: exec
command: nvidia-smi --query-gpu=utilization.gpu,memory.used --format=csv,noheader

Sau đó nhập /status hoặc /gpu trong bất kỳ cuộc trò chuyện nào. Xem Hướng dẫn cấu hình để biết thêm ví dụ.

Tải trước skill khi khởi chạy

Nếu bạn đã biết những skill nào bạn muốn kích hoạt trong phiên này, hãy truyền chúng vào lúc bắt đầu:

hermes -s hermes-agent-dev,github-auth
hermes chat -s github-pr-workflow -s github-auth

Hermes tải từng skill được đặt tên vào lời nhắc phiên trước lượt đầu tiên. Cờ tương tự hoạt động ở chế độ tương tác và chế độ truy vấn đơn.

Lệnh gạch chéo skill

Mọi skill được cài đặt trong ~/.hermes/skills/ đều được đăng ký tự động dưới dạng lệnh gạch chéo. Tên skill trở thành lệnh:

/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor

# Chỉ cần tên skill sẽ tải nó và để agent hỏi bạn cần gì:
/excalidraw

Tính cách

Đặt tính cách được xác định trước để thay đổi giọng điệu của tác nhân:

/personality pirate
/personality kawaii
/personality concise

Các tính cách tích hợp bao gồm: helpful , concise , technical , creative , teacher , kawaii , catgirl , pirate , shakespeare , surfer , noir , uwu , philosopher , hype .

Bạn cũng có thể xác định các tính cách tùy chỉnh trong ~/.hermes/config.yaml :

personalities:
helpful: "You are a helpful, friendly AI assistant."
kawaii: "You are a kawaii assistant! Use cute expressions..."
pirate: "Arrr! Ye be talkin' to Captain Hermes..."


# Thêm của riêng bạn!

Nhập nhiều dòng

Có hai cách để nhập tin nhắn nhiều dòng:

  1. ** Alt+Enter hoặc Ctrl+J ** — chèn một dòng mới
  2. Tiếp tục dấu gạch chéo ngược — kết thúc một dòng bằng \ để tiếp tục:
❯ Write a function that:\
1. Takes a list of numbers\
2. Returns the sum

thông tin

Hỗ trợ dán văn bản nhiều dòng - sử dụng Alt+Enter hoặc Ctrl+J để chèn dòng mới hoặc chỉ cần dán nội dung trực tiếp.

Làm gián đoạn tác nhân

Bạn có thể ngắt lời tác nhân bất cứ lúc nào:

  • Nhập tin nhắn mới + Enter trong khi tác nhân đang làm việc — nó sẽ làm gián đoạn và xử lý các hướng dẫn mới của bạn
  • ** Ctrl+C ** — làm gián đoạn thao tác hiện tại (nhấn hai lần trong vòng 2 giây để buộc thoát)
  • Các lệnh terminal đang thực thi sẽ bị hủy ngay lập tức (SIGTERM, sau đó SIGKILL sau 1 giây)
  • Nhiều tin nhắn được gõ trong khi ngắt được kết hợp thành một lời nhắc

Chế độ nhập khi bận

Phím cấu hình display.busy_input_mode kiểm soát những gì xảy ra khi bạn nhấn Enter trong khi tác nhân đang hoạt động:

Chế độHành vi
"interrupt" (mặc định)Tin nhắn của bạn làm gián đoạn hoạt động hiện tại và được xử lý ngay lập tức
"queue"Tin nhắn của bạn được xếp hàng âm thầm và gửi ở lượt tiếp theo sau khi tác nhân kết thúc
# ~/.hermes/config.yaml
display:
busy_input_mode: "queue"

# hoặc "interrupt" (mặc định)

Chế độ xếp hàng rất hữu ích khi bạn muốn chuẩn bị các tin nhắn tiếp theo mà không vô tình hủy bỏ công việc đang thực hiện. Các giá trị không xác định sẽ quay trở lại "interrupt" .

Tạm dừng ở chế độ nền

Trên hệ thống Unix, nhấn ** Ctrl+Z ** để tạm dừng Hermes ở chế độ nền - giống như bất kỳ quy trình terminal nào. Shell in một xác nhận:

Hermes Agent has been suspended. Run `fg` to bring Hermes Agent back.

Nhập fg vào shell của bạn để tiếp tục phiên chính xác nơi bạn đã dừng lại. Điều này không được hỗ trợ trên Windows.

Hiển thị tiến trình công cụ

CLI hiển thị phản hồi sinh động khi tác nhân hoạt động:

Hoạt hình suy nghĩ (trong khi gọi API):

  ◜ (。•́︿•̀。) pondering... (1.2s)
◠ (⊙_⊙) contemplating... (2.4s)
✧٩(ˊᗜˋ*)و✧ got it! (3.1s)

Nguồn cấp dữ liệu thực thi công cụ:

  ┊ 💻 terminal `ls -la` (0.3s)
┊ 🔍 web_search (1.2s)
┊ 📄 web_extract (2.1s)

Chuyển qua các chế độ hiển thị với /verbose : off → new → all → verbose . Lệnh này cũng có thể được kích hoạt cho nền tảng nhắn tin — xem cấu hình.

Độ dài xem trước công cụ

Phím cấu hình display.tool_preview_length kiểm soát số lượng ký tự tối đa được hiển thị trong các dòng xem trước lệnh gọi công cụ (ví dụ: đường dẫn tệp, lệnh terminal). Giá trị mặc định là 0 , có nghĩa là không có giới hạn — đường dẫn và lệnh đầy đủ được hiển thị.

# ~/.hermes/config.yaml
display:
tool_preview_length: 80

# Cắt ngắn bản xem trước công cụ xuống 80 ký tự (0 = không giới hạn)

Điều này hữu ích trên các terminal hẹp hoặc khi đối số công cụ chứa đường dẫn tệp rất dài.

Quản lý phiên

Tiếp tục phiên

Khi bạn thoát khỏi phiên CLI, lệnh tiếp tục sẽ được in:

Resume this session with:
hermes --resume 20260225_143052_a1b2c3

Session: 20260225_143052_a1b2c3
Duration: 12m 34s
Messages: 28 (5 user, 18 tool calls)

Tùy chọn tiếp tục:

hermes --continue                          

# Tiếp tục phiên CLI gần đây nhất
hermes -c

# Dạng viết ngắn
hermes -c "my project"

# Tiếp tục một phiên có tên (mới nhất trong dòng dõi)
hermes --resume 20260225_143052_a1b2c3

# Tiếp tục một phiên cụ thể theo ID
hermes --resume "refactoring auth"

# Tiếp tục theo tiêu đề
hermes -r 20260225_143052_a1b2c3

# Dạng viết ngắn

Việc tiếp tục khôi phục toàn bộ lịch sử hội thoại từ SQLite. Tác nhân có thể xem tất cả các tin nhắn, lệnh gọi công cụ và phản hồi trước đó — cứ như thể bạn chưa từng rời đi.

Sử dụng /title My Session Name trong cuộc trò chuyện để đặt tên cho phiên hiện tại hoặc hermes sessions rename <id> <title> từ dòng lệnh. Sử dụng hermes sessions list để duyệt các phiên trước đây.

Lưu trữ phiên

Các phiên CLI được lưu trữ trong cơ sở dữ liệu trạng thái SQLite của Hermes trong ~/.hermes/state.db . Cơ sở dữ liệu giữ:

  • siêu dữ liệu phiên (ID, tiêu đề, dấu thời gian, bộ đếm token)
  • lịch sử tin nhắn
  • dòng dõi qua các phiên nén/tiếp tục
  • chỉ mục tìm kiếm toàn văn bản được sử dụng bởi session_search

Một số bộ điều hợp nhắn tin cũng lưu giữ các tệp bản ghi trên mỗi nền tảng cùng với cơ sở dữ liệu, nhưng bản thân CLI sẽ tiếp tục hoạt động từ kho phiên SQLite.

Nén ngữ cảnh

Các cuộc hội thoại dài sẽ tự động được tóm tắt khi đạt đến giới hạn ngữ cảnh:

# Trong ~/.hermes/config.yaml
compression:
enabled: true
threshold: 0.50

# Nén ở 50% giới hạn ngữ cảnh theo mặc định
summary_model: "google/gemini-3-flash-preview"

# Model được sử dụng để tóm tắt

Khi kích hoạt nén, các lượt giữa được tóm tắt trong khi 3 lượt đầu và 4 lượt cuối luôn được giữ nguyên.

Phiên nền

Chạy lời nhắc trong phiên nền riêng biệt trong khi tiếp tục sử dụng CLI cho công việc khác:

/background Analyze the logs in /var/log and summarize any errors from today

Hermes ngay lập tức xác nhận nhiệm vụ và gửi lại cho bạn lời nhắc:

🔄 Background task #1 started: "Analyze the logs in /var/log and summarize..."
Task ID: bg_143022_a1b2c3

Cách thức hoạt động

Mỗi lời nhắc /background tạo ra một phiên tác nhân hoàn toàn riêng biệt trong một chuỗi daemon:

  • Cuộc trò chuyện riêng biệt — tác nhân nền không biết gì về lịch sử phiên hiện tại của bạn. Nó chỉ nhận được lời nhắc bạn cung cấp.
  • Cấu hình tương tự — tác nhân nền kế thừa model, nhà cung cấp, bộ công cụ, cài đặt suy luận và model dự phòng của bạn từ phiên hiện tại.
  • Không chặn — phiên trước của bạn vẫn tương tác đầy đủ. Bạn có thể trò chuyện, chạy lệnh hoặc thậm chí bắt đầu nhiều tác vụ nền hơn.
  • Nhiều tác vụ — bạn có thể chạy nhiều tác vụ nền cùng một lúc. Mỗi người nhận được một ID được đánh số.

Kết quả

Khi tác vụ nền hoàn tất, kết quả sẽ xuất hiện dưới dạng bảng trong terminal của bạn:

╭─ ⚕ Hermes (background #1) ──────────────────────────────────╮
│ Found 3 errors in syslog from today: │
│ 1. OOM killer invoked at 03:22 — killed process nginx │
│ 2. Disk I/O error on /dev/sda1 at 07:15 │
│ 3. Failed SSH login attempts from 192.168.1.50 at 14:30 │
╰──────────────────────────────────────────────────────────────╯

Nếu tác vụ không thành công, thay vào đó bạn sẽ thấy thông báo lỗi. Nếu display.bell_on_complete được bật trong cấu hình của bạn, chuông terminal sẽ reo khi tác vụ kết thúc.

Trường hợp sử dụng

  • Nghiên cứu dài hạn — "/background nghiên cứu cơ bản về những phát triển mới nhất trong việc sửa lỗi lượng tử" trong khi bạn làm việc với mã
  • Xử lý tệp — "/background phân tích tất cả các tệp Python trong kho lưu trữ này và liệt kê mọi vấn đề bảo mật" trong khi bạn tiếp tục cuộc trò chuyện
  • Điều tra song song — bắt đầu nhiều tác vụ nền để khám phá các góc độ khác nhau cùng một lúc
thông tin

Phiên nền không xuất hiện trong lịch sử hội thoại chính của bạn. Chúng là các phiên độc lập có ID tác vụ riêng (ví dụ: bg_143022_a1b2c3 ).

Chế độ im lặng

Theo mặc định, CLI chạy ở chế độ im lặng:

  • Ngăn chặn việc ghi nhật ký dài dòng từ các công cụ
  • Cho phép phản hồi hoạt hình theo phong cách dễ thương
  • Giữ đầu ra sạch sẽ và thân thiện với người dùng

Đối với đầu ra gỡ lỗi:

hermes chat --verbose