openclaw/translation/vietnamese/docs/plugins/agent-tools.vi.md

68 lines
2.1 KiB
Markdown

---
summary: "Viết các công cụ (tools) cho Agent trong một plugin (định nghĩa schema, các công cụ tùy chọn, danh sách cho phép)"
read_when:
- Bạn muốn thêm một công cụ mới cho Agent thông qua một plugin
---
# Công cụ Agent trong Plugin
Các plugin của Moltbot có thể đăng ký các **công cụ dành cho Agent** (dưới dạng hàm JSON-schema). Các công cụ này sẽ được cung cấp cho mô hình AI (LLM) sử dụng trong quá trình hội thoại. Bạn có thể thiết lập công cụ là **bắt buộc** (luôn sẵn sàng) hoặc **tùy chọn** (phải bật thủ công).
## Cách đăng ký công cụ cơ bản
```ts
import { Type } from "@sinclair/typebox";
export default function (api) {
api.registerTool({
name: "ten_cong_cu_cua_toi",
description: "Mô tả công cụ làm gì đó",
parameters: Type.Object({
input: Type.String(),
}),
async execute(_id, params) {
// Thực hiện logic tại đây
return { content: [{ type: "text", text: params.input }] };
},
});
}
```
## Công cụ tùy chọn (Opt-in)
Các công cụ tùy chọn sẽ **không bao giờ** tự động được bật. Người dùng phải thêm chúng vào danh sách cho phép (`allowlist`) của từng Agent.
```ts
api.registerTool(
{
name: "cong_cu_quy_trinh",
// ... các thông số khác
},
{ optional: true }, // Đánh dấu là công cụ tùy chọn
);
```
Để bật công cụ này, bạn cấu hình trong `moltbot.json`:
```json5
{
"agents": {
"list": [
{
"id": "main",
"tools": {
"allow": ["cong_cu_quy_trinh"] // Thêm tên công cụ vào đây
}
}
]
}
}
```
## Các quy tắc và mẹo
- Tên công cụ không được trùng với các công cụ cốt lõi của hệ thống.
- Nên đặt công cụ ở chế độ `optional: true` nếu công cụ đó có thể gây ra các tác động bên ngoài hoặc yêu cầu các khóa bảo mật riêng.
---
Tài liệu liên quan: [Hệ thống công cụ](../../tools/index.vi.md), [Viết Plugin](./writing-plugins.vi.md).