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

Tích hợp trình soạn thảo ACP

Hermes Agent có thể chạy như một máy chủ ACP, cho phép các biên tập viên tương thích với ACP nói chuyện với Hermes qua stdio và kết xuất:

  • tin nhắn trò chuyện
  • hoạt động của công cụ
  • khác biệt về tập tin
  • lệnh đầu cuối
  • lời nhắc phê duyệt
  • luồng suy nghĩ / phản hồi

ACP rất phù hợp khi bạn muốn Hermes hoạt động giống như một tác nhân mã hóa gốc biên tập viên thay vì CLI hoặc bot nhắn tin độc lập.

Những gì Hermes phơi bày trong chế độ ACP

Hermes chạy với bộ công cụ hermes-acp tuyển chọn được thiết kế cho quy trình làm việc của biên tập viên. Nó bao gồm:

  • công cụ tập tin: read_file , write_file , patch , search_files
  • công cụ đầu cuối: terminal , process
  • công cụ web/trình duyệt
  • bộ nhớ, việc cần làm, tìm kiếm phiên
  • kỹ năng
  • exec_code và delegate_task
  • tầm nhìn

Nó cố tình loại trừ những thứ không phù hợp với UX của trình soạn thảo thông thường, chẳng hạn như gửi tin nhắn và quản lý cronjob.

Cài đặt

Cài đặt Hermes bình thường, sau đó thêm ACP bổ sung:

pip install -e '.[acp]'

Thao tác này sẽ cài đặt phần phụ thuộc agent-client-protocol và kích hoạt:

  • hermes acp
  • hermes-acp
  • python -m acp_adapter

Khởi chạy máy chủ ACP

Bất kỳ thao tác nào sau đây đều khởi động Hermes ở chế độ ACP:

hermes acp

hermes-acp

python -m acp_adapter

Hermes đăng nhập vào stderr để thiết bị xuất chuẩn vẫn được dành riêng cho lưu lượng JSON-RPC ACP.

Thiết lập trình chỉnh sửa

Mã VS

Cài đặt tiện ích mở rộng máy khách ACP, sau đó trỏ nó vào thư mục acp_registry/ của repo.

Đoạn cài đặt ví dụ:

{
"acpClient.agents": [
{
"name": "hermes-agent",
"registryDir": "/path/to/hermes-agent/acp_registry"
}
]
}

Zed

Đoạn cài đặt ví dụ:

{
"agent_servers": {
"hermes-agent": {
"type": "custom",
"command": "hermes",
"args": ["acp"],
},
},
}

JetBrains

Sử dụng plugin tương thích với ACP và trỏ nó vào:

/path/to/hermes-agent/acp_registry

Bản kê khai sổ đăng ký

Bản kê khai đăng ký ACP có tại:

acp_registry/agent.json

Nó quảng cáo một tác nhân dựa trên lệnh có lệnh khởi chạy là:

hermes acp

Cấu hình và thông tin đăng nhập

Chế độ ACP sử dụng cấu hình Hermes giống như CLI:

  • ~/.hermes/.env
  • ~/.hermes/config.yaml
  • ~/.hermes/skills/
  • ~/.hermes/state.db

Độ phân giải của nhà cung cấp sử dụng trình phân giải thời gian chạy thông thường của Hermes, do đó ACP kế thừa thông tin xác thực và nhà cung cấp được định cấu hình hiện tại.

Hành vi của phiên

Các phiên ACP được theo dõi bởi trình quản lý phiên trong bộ nhớ của bộ điều hợp ACP trong khi máy chủ đang chạy.

Mỗi phiên lưu trữ:

  • ID phiên
  • thư mục làm việc
  • mô hình đã chọn
  • lịch sử cuộc trò chuyện hiện tại
  • hủy bỏ sự kiện

AIAgent cơ bản vẫn sử dụng đường dẫn ghi nhật ký/lưu trữ thông thường của Hermes, nhưng ACP list/load/resume/fork nằm trong phạm vi quy trình máy chủ ACP hiện đang chạy.

Hành vi của thư mục làm việc

Các phiên ACP liên kết cwd của trình soạn thảo với ID tác vụ Hermes để các công cụ tệp và terminal chạy liên quan đến không gian làm việc của trình soạn thảo chứ không phải cwd quy trình máy chủ.

Phê duyệt

Các lệnh đầu cuối nguy hiểm có thể được chuyển trở lại trình chỉnh sửa dưới dạng lời nhắc phê duyệt. Các tùy chọn phê duyệt ACP đơn giản hơn luồng CLI:

  • cho phép một lần
  • cho phép luôn
  • phủ nhận

Khi hết thời gian chờ hoặc có lỗi, cầu phê duyệt sẽ từ chối yêu cầu.

Khắc phục sự cố

Tác nhân ACP không xuất hiện trong trình chỉnh sửa

Kiểm tra:- người chỉnh sửa được chỉ vào đường dẫn acp_registry/ chính xác

  • Hermes đã được cài đặt và trên PATH của bạn
  • ACP bổ sung đã được cài đặt ( pip install -e '.[acp]' )

ACP khởi động nhưng lập tức báo lỗi

Hãy thử những kiểm tra sau:

hermes doctor
hermes status
hermes acp

Thiếu thông tin xác thực

Chế độ ACP không có luồng đăng nhập riêng. Nó sử dụng thiết lập nhà cung cấp hiện có của Hermes. Định cấu hình thông tin xác thực với:

hermes model

hoặc bằng cách chỉnh sửa ~/.hermes/.env .

Xem thêm