mirror of
https://github.com/anomalyco/opencode.git
synced 2026-04-30 09:46:35 +00:00
748 lines
29 KiB
Plaintext
748 lines
29 KiB
Plaintext
---
|
|
title: ตัวแทน
|
|
description: และตัวแทนพิเศษ
|
|
---
|
|
|
|
เจ้าหน้าที่คือผู้ช่วย AI ในช่องทางต่างๆ ของอินเทอร์เฟซและอินเทอร์เฟซของโฟลว์เฉพาะได้สามารถสร้างเครื่องมือที่รวบรวมข้อมูลด้วยโมดูลและอินเทอร์เฟซของอินเทอร์เฟซ...
|
|
|
|
:::tip
|
|
ใช้แผนของตัวแทนเพื่อวิเคราะห์โค้ดและทบทวนเหตุผลในการทำการเปลี่ยนแปลงโค้ดใดๆ
|
|
:::
|
|
|
|
การผสมผสานระหว่างตัวแทนระหว่างการประชุมหรือต้องการโดยระบุ `@`
|
|
|
|
---
|
|
|
|
## ประเภท
|
|
|
|
OpenCode มีเอเจนต์สองประเภทตัวแทนหลักและตัวแทนย่อย
|
|
|
|
---
|
|
|
|
### ตัวแทนหลัก
|
|
|
|
ตัวแทนหลักคือผู้ช่วยหลักที่คุณมักจะเกิดขึ้นด้วยโดยตรงในวนดูได้เฉพาะปุ่ม **Tab** หรือปุ่ม `switch_agent` ที่โน่ไว้เจ้าหน้าที่สามารถจัดการระบบของคุณได้โดยได้รับเครื่องมือที่มีคุณลักษณะหลักเช่น Build มีเครื่องมือทั้งหมดในส่วนของแผนถูกจำกัด
|
|
|
|
:::tip
|
|
**Tab** บันทึกเรื่องราวระหว่างตัวแทนหลักดื่มด่ำได้
|
|
:::
|
|
|
|
OpenCode ของเอเจนต์หลักในตัวได้แก่ **Build** และ **Plan** ดี
|
|
ดูด้านล่าง
|
|
|
|
---
|
|
|
|
### ตัวแทนย่อย
|
|
|
|
ตัวแทนย่อยคือผู้ช่วยเฉพาะทางที่ตัวแทนหลักสามารถเรียกงานเฉพาะได้เฉพาะเรียกได้โดยตรงโดย **@ หมายถึง**ความหมายในข้อความของคุณ
|
|
|
|
OpenCode ในการควบคุมเอเจนต์ย่อยในส่วนนี้ได้แก่ **ทั่วไป** และ **สำรวจ** ส่วนดูพื้นที่
|
|
|
|
---
|
|
|
|
## บิวท์อิน
|
|
|
|
OpenCode สืบสวนเอเจนต์หลักในตัวและเอเจนต์ย่อยในอีกหนึ่ง
|
|
|
|
---
|
|
|
|
### ใช้บิลด์
|
|
|
|
_Mode_: `primary`
|
|
|
|
สร้างเว็บหลัก **รองรับ** พร้อมด้วยเครื่องมือทั้งหมดที่มีเอเจนต์มาตรฐานเพื่อให้มีสิทธิ์การเข้าถึงไฟล์และคำสั่งระบบโดยสมบูรณ์
|
|
|
|
---
|
|
|
|
### ใช้แผน
|
|
|
|
_Mode_: `primary`
|
|
|
|
ตัวแทนแบบจำกัดที่ความเชื่อถือและการควบคุมระบบของการที่แจ้งให้ทราบอย่างเป็นทางการและป้องกันการเปลี่ยนแปลงโดยเฉพาะอย่างยิ่ง
|
|
ตามคำอธิบายตามลำดับทั้งหมดของระบบเป็น `ask`:
|
|
|
|
- `file edits`: เนื้อหา แพตช์ และเป็นที่ทั้งหมด
|
|
- `bash`: คำสั่ง bash ทั้งหมด
|
|
|
|
เอเจนต์นี้มีประโยชน์ต้องการให้ LLM ตรวจสอบโค้ดตรวจสอบการเปลี่ยนแปลงหรือสร้างแผนว่าจะทำดีเบสของคุณจริง
|
|
|
|
---
|
|
|
|
### ใช้ทั่วไป
|
|
|
|
_Mode_: `subagent`
|
|
|
|
ตัวแทนเพื่อค้นหาคำถามที่จำเป็นและต่อเนื่องหลายขั้นตอน อนุญาตให้เข้าถึงเครื่องมือต่างๆ (ยกเว้นการตรวจสอบ) และการปรับปรุงไฟล์ได้เมื่อจำเป็นต้องใช้สิ่งนี้เพื่อรันงานหลายหน่วยพร้อมกัน
|
|
|
|
---
|
|
|
|
### ใช้สำรวจ
|
|
|
|
_Mode_: `subagent`
|
|
|
|
เอเจนต์ความเร็วสูงและอ่านอย่างเดียวสำหรับฐานพื้นฐานโค้ดและตรวจดูไฟล์ได้ใช้สิ่งนี้เมื่อคุณต้องการค้นหาไฟล์อย่างรวดเร็วรูปแบบตามค้นหาโค้ดด้วยคำสำคัญหรือแบบสอบถามเกี่ยวกับโค้ดเบส
|
|
|
|
---
|
|
|
|
### ใช้การบดอัด
|
|
|
|
_Mode_: `primary`
|
|
|
|
เอเจนต์ระบบนั้นมีส่วนช่วยในการสรุปที่ยาวไปสู่บทสรุปที่เล็กลงโดยเฉพาะอย่างยิ่งเมื่อจำเป็นต้องมีและใน UI
|
|
|
|
---
|
|
|
|
### ใช้ชื่อ
|
|
|
|
_Mode_: `primary`
|
|
|
|
ตัวแทนของระบบซึ่งสร้างชื่อที่ออกแบบสั้น ๆ มันทำงานได้โดยไม่ต้องใช้ UI
|
|
|
|
---
|
|
|
|
### ใช้สรุป
|
|
|
|
_Mode_: `primary`
|
|
|
|
ตัวแทนระบบนั้นซึ่งสร้างสรุปการตรวจสอบและทำงานโดยไม่ต้องมี UI
|
|
|
|
---
|
|
|
|
## เรื่องนั้น
|
|
|
|
1. สำหรับตัวแทนหลักให้ใช้ปุ่ม **Tab** เพื่อวนดูตัวแทนที่มีความสำคัญ โปรดใช้การผูกปุ่ม `switch_agent` ที่โรงยิมไว้ได้
|
|
|
|
2. สามารถตัวแทนย่อยได้:
|
|
- \*\*\*\*โดยตัวแทนหลักโดยเฉพาะพิเศษตามคำอธิบาย
|
|
- เพิ่มเติมโดย **@ ต้องการ** ตัวแทนย่อยในข้อความของคุณเช่น
|
|
|
|
```txt frame="none"
|
|
@general help me search for this function
|
|
```
|
|
|
|
3. **ปรับปรุงระหว่างการปรับปรุง**: เมื่อตัวแทนย่อยสร้างหลังคาและเรียนรู้ร่วมกันระหว่างการปรับปรุงหลักและหลังคาทั้งหมดได้ทั้งหมด:
|
|
- **\<Leader>+Right** (หรือ `session_child_cycle` keybind ที่คุณรู้ไว้) ในวนผ่าน parent → child1 → child2 → ... → parent
|
|
- **\<Leader>+Left** (หรือฟัง `session_child_cycle_reverse` keybind) เพื่อวนย้อนกลับผ่าน parent ← child1 ← child2 ← ... ← parent
|
|
|
|
เรียนรู้การดำเนินการระหว่างการดำเนินการหลักและงานตัวแทนย่อยเฉพาะเจาะจง
|
|
|
|
---
|
|
|
|
## การกำหนดค่า
|
|
|
|
ปรับแต่งเอเจนต์ในหรือสร้างเอเจนต์ได้ผ่านมาได้อย่างไม่น่าเชื่อตัวแทนได้สองวิธี:
|
|
|
|
---
|
|
|
|
### JSON
|
|
|
|
ไม่เชื่อตัวแทนในไฟล์ในกรุง `opencode.json` ของคุณ:
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"agent": {
|
|
"build": {
|
|
"mode": "primary",
|
|
"model": "anthropic/claude-sonnet-4-20250514",
|
|
"prompt": "{file:./prompts/build.txt}",
|
|
"tools": {
|
|
"write": true,
|
|
"edit": true,
|
|
"bash": true
|
|
}
|
|
},
|
|
"plan": {
|
|
"mode": "primary",
|
|
"model": "anthropic/claude-haiku-4-20250514",
|
|
"tools": {
|
|
"write": false,
|
|
"edit": false,
|
|
"bash": false
|
|
}
|
|
},
|
|
"code-reviewer": {
|
|
"description": "Reviews code for best practices and potential issues",
|
|
"mode": "subagent",
|
|
"model": "anthropic/claude-sonnet-4-20250514",
|
|
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
|
|
"tools": {
|
|
"write": false,
|
|
"edit": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
### Markdown
|
|
|
|
คุณอาจกำหนดเอเจนต์สำหรับไฟล์ Markdown ได้หลายสีใน:
|
|
|
|
- ทั่วโลก: `~/.config/opencode/agents/`
|
|
- ต่อโครงการ: `.opencode/agents/`
|
|
|
|
```markdown title="~/.config/opencode/agents/review.md"
|
|
---
|
|
description: Reviews code for quality and best practices
|
|
mode: subagent
|
|
model: anthropic/claude-sonnet-4-20250514
|
|
temperature: 0.1
|
|
tools:
|
|
write: false
|
|
edit: false
|
|
bash: false
|
|
---
|
|
|
|
You are in code review mode. Focus on:
|
|
|
|
- Code quality and best practices
|
|
- Potential bugs and edge cases
|
|
- Performance implications
|
|
- Security considerations
|
|
|
|
Provide constructive feedback without making direct changes.
|
|
```
|
|
|
|
ชื่อไฟล์ Markdown พร้อมกับชื่อเอเจนต์เช่น `review.md` สร้างตัวแทน `review`
|
|
|
|
---
|
|
|
|
## ตัวเลือก
|
|
|
|
มาดูรายละเอียดเพิ่มเติมที่จุดนั้นกัน
|
|
|
|
---
|
|
|
|
### Description
|
|
|
|
ใช้ฟีเจอร์ `description` เพื่อให้คำอธิบายสีนี้ทำอะไรและแนะนำเมื่อใด
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"review": {
|
|
"description": "Reviews code for best practices and potential issues"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
รายการไม่จำเป็น **จำเป็น**
|
|
|
|
---
|
|
|
|
### Temperature
|
|
|
|
เหตุผลของการสุ่มและการตอบกลับของ LLM ด้วย `temperature`
|
|
|
|
ค่าที่ต่ำกว่านี้จะตอบสนองมีจุดมุ่งหมายและทราบถึงค่าที่จะช่วยลดการส่งผลและส่งผลถึง
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"plan": {
|
|
"temperature": 0.1
|
|
},
|
|
"creative": {
|
|
"temperature": 0.8
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
อุณหภูมิจะเท่ากัน 0.0 ถึง 1.0:
|
|
|
|
- **0.0-0.2**: สิ่งที่เราคาดการณ์และกำหนดไว้เป็นไปได้และวางแผนโค้ด
|
|
- **0.3-0.5**: ปฏิกิริยาที่สมดุลและเป็นผลให้เกิดงานพัฒนาทั่วไป
|
|
- **0.6-1.0**: คำตอบที่สร้างสรรค์และหลากหลายมากขึ้นซึ่งมีประโยชน์สำหรับการศึกษาและต่อไป
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"analyze": {
|
|
"temperature": 0.1,
|
|
"prompt": "{file:./prompts/analysis.txt}"
|
|
},
|
|
"build": {
|
|
"temperature": 0.3
|
|
},
|
|
"brainstorm": {
|
|
"temperature": 0.7,
|
|
"prompt": "{file:./prompts/creative.txt}"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ข้อสังเกตอุณหภูมิ OpenCode โดยทั่วไปจะมีเฉพาะรุ่นเท่านั้นแล้ว 0 สำหรับรุ่นส่วนใหญ่ 0.55 สำหรับรุ่น Qwen
|
|
|
|
---
|
|
|
|
### Max steps
|
|
|
|
จำนวนส่วนประกอบของการวนซ้ำของเอเจนต์ที่เอเจนต์เป็นผลสืบเนื่องด้วยข้อความเท่านั้นวิธีการที่ต้องการควบคุมต้นทุนสามารถกำหนดได้ในแนวทางที่ตัวแทนได้
|
|
|
|
หากไม่ได้ตั้งค่านี้ เอเจนต์จะดำเนินต่อไปจนกว่าโมเดลจะจะหยุดหรือผู้ใช้ขัดจังหวะ
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"quick-thinker": {
|
|
"description": "Fast reasoning with limited iterations",
|
|
"prompt": "You are a quick thinker. Solve problems with minimal steps.",
|
|
"steps": 5
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ไปถึงความโดดเด่นจะได้รับพร้อมท์พิเศษที่แนะนำให้เรียนรู้ด้วยการสรุปงานและงานที่เหลืออีกครั้ง
|
|
|
|
:::caution
|
|
ช่อง `maxSteps` แบบเดิมเลิกใช้แล้วใช้ `steps` แทน
|
|
:::
|
|
|
|
---
|
|
|
|
### Disable
|
|
|
|
ตั้งค่าเป็น `true` ไปถึงสมาชิก
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"review": {
|
|
"disable": true
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
### Prompt
|
|
|
|
ระบุไฟล์พร้อมท์ระบบสำหรับเอเจนต์นี้ด้วย `prompt`ความละเอียดสูงพร้อมคำแนะนำเฉพาะสำหรับกรณีของตัวแทน
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"review": {
|
|
"prompt": "{file:./prompts/code-review.txt}"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
เกี่ยวเนื่องกับสิ่งนี้กับระบบไฟล์ที่อาจเป็นสาเหตุว่าทำไมจึงสามารถใช้ได้กับทั้ง OpenCode ส่วนกลางและเฉพาะโครงการ
|
|
|
|
---
|
|
|
|
### Model
|
|
|
|
ใช้ฟังก์ชัน `model` ในส่วนของโมเดลโมเดลสำหรับเอเจนต์นี้มีประโยชน์สำหรับการใช้โมเดลโมเลกุลซึ่งปรับให้เหมาะกับงานโครงสร้างเช่นโมดูลสำหรับโมดูลที่ตรวจสอบที่เก็บข้อมูลจำนวนมากสำหรับการดำเนินการ
|
|
|
|
:::tip
|
|
ไม่ได้ระบุโมเดลตัวแทนหลักๆ [ โมเดลที่ build ทั่วโลก](/docs/config#models) ทำให้ตัวแทนย่อยในเมนูของตัวแทนหลักที่ทอดตัวแทนย่อยทั่วโลก
|
|
:::
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"plan": {
|
|
"model": "anthropic/claude-haiku-4-20250514"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
รหัสโมเดลในบางครั้ง OpenCode ของคุณใช้รูปแบบ `provider/model-id` เช่นต้องใช้ [OpenCode Zen](/docs/zen) แล้วก็ใช้ `opencode/gpt-5.1-codex` สำหรับ GPT 5.1 Codex
|
|
|
|
---
|
|
|
|
### เครื่องมือ
|
|
|
|
พื้นฐานว่าเครื่องมือนี้สามารถตรวจสอบประสิทธิภาพของเอเจนต์ด้วย `tools` วิจัยเปิดหรือตรวจสอบเครื่องมือเฉพาะเจาะจงเป็น `true` หรือ `false`
|
|
|
|
```json title="opencode.json" {3-6,9-12}
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"tools": {
|
|
"write": true,
|
|
"bash": true
|
|
},
|
|
"agent": {
|
|
"plan": {
|
|
"tools": {
|
|
"write": false,
|
|
"bash": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
:::note
|
|
ความพยายามเฉพาะเอเจนต์จะเน้นไปที่ส่วนกลาง
|
|
:::
|
|
|
|
จำเป็นต้องใช้ไวด์การ์ดเพื่อควบคุมเครื่องมือหลายรายการพร้อมกันได้ยืนยันว่าเครื่องมือทั้งหมดจากเซิร์ฟเวอร์ MCP:
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"agent": {
|
|
"readonly": {
|
|
"tools": {
|
|
"mymcp_*": false,
|
|
"write": false,
|
|
"edit": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
[เรียนรู้เพิ่มเติมเกี่ยวกับเครื่องมือ](/docs/tools)
|
|
|
|
---
|
|
|
|
### สิทธิ์
|
|
|
|
หลักการที่ถูกต้องเพื่อประสิทธิภาพในการดำเนินการที่ตัวแทนหลายแห่งในปัจจุบันความสามารถในการสำหรับเครื่องมือ `edit`, `bash` และ `webfetch` ได้อย่างมีประสิทธิภาพเป็น:
|
|
|
|
- `"ask"` — อนุมัติก่อนการเข้าถึงเครื่องมือ
|
|
- `"allow"` — ประสิทธิภาพการทำงานทั้งหมดเป็นเพียง...
|
|
- `"deny"` — มันเป็นเครื่องมือ
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"permission": {
|
|
"edit": "deny"
|
|
}
|
|
}
|
|
```
|
|
|
|
ทำให้คุณมีสิทธิ์ที่จะต่อตัวแทนได้
|
|
|
|
```json title="opencode.json" {3-5,8-10}
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"permission": {
|
|
"edit": "deny"
|
|
},
|
|
"agent": {
|
|
"build": {
|
|
"permission": {
|
|
"edit": "ask"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
คุณไม่จำเป็นต้องมีสิทธิ์ในตัวแทน Markdown
|
|
|
|
```markdown title="~/.config/opencode/agents/review.md"
|
|
---
|
|
description: Code review without edits
|
|
mode: subagent
|
|
permission:
|
|
edit: deny
|
|
bash:
|
|
"*": ask
|
|
"git diff": allow
|
|
"git log*": allow
|
|
"grep *": allow
|
|
webfetch: deny
|
|
---
|
|
|
|
Only analyze code and suggest changes.
|
|
```
|
|
|
|
การตั้งค่าเริ่มต้นสำหรับคำสั่งทุบตีเฉพาะได้
|
|
|
|
```json title="opencode.json" {7}
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"agent": {
|
|
"build": {
|
|
"permission": {
|
|
"bash": {
|
|
"git push": "ask",
|
|
"grep *": "allow"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
นี่อาจใช้รูปแบบ glob
|
|
|
|
```json title="opencode.json" {7}
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"agent": {
|
|
"build": {
|
|
"permission": {
|
|
"bash": {
|
|
"git *": "ask"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
และอีกครั้งใช้ `*` wildcard เพื่อให้สิทธิ์สำหรับคำสั่งทั้งหมดได้
|
|
เมื่อกฎเริ่มขึ้นล่าสุดมีความสำคัญมากกว่าที่จะใส่ `*` ไวด์การ์ดขึ้นนำและกฎเฉพาะตามหลัง
|
|
|
|
```json title="opencode.json" {8}
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"agent": {
|
|
"build": {
|
|
"permission": {
|
|
"bash": {
|
|
"*": "ask",
|
|
"git status *": "allow"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
[เรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้](/docs/permissions)
|
|
|
|
---
|
|
|
|
### Mode
|
|
|
|
ต้นแบบโหมดของตัวแทนด้วย `mode` บันทึก `mode` บันทึกวิธีการกำหนดวิธีการใช้ตัวแทน
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"review": {
|
|
"mode": "subagent"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
สวัสดี `mode` สามารถตั้งค่าเป็น `primary`, `subagent` หรือ `all` หากไม่ได้ระบุ `mode` ระบบระบบควบคุมเป็น `all`
|
|
|
|
---
|
|
|
|
### Hidden
|
|
|
|
ซ่อนตัวแทนย่อยจากเมนูเติมข้อความอัตโนมัติ `@` ด้วย `hidden: true` มีประโยชน์สำหรับตัวแทนย่อยภายในจำเป็นต้องมีโปรแกรมโดยทางอื่นตัวแทนผ่านเครื่องมืองานเท่านั้น
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"internal-helper": {
|
|
"mode": "subagent",
|
|
"hidden": true
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ในที่สุดคุณจะพบในเมนูเติมข้อความอัตโนมัติเท่านั้นที่จำเป็นต้องมีเอเจนต์ที่เป็นได้ผ่านเครื่องมืองานหากต้องการ
|
|
|
|
:::note
|
|
สามารถตัวแทน `mode: subagent` ได้
|
|
:::
|
|
|
|
---
|
|
|
|
### Task permissions
|
|
|
|
ต้นแบบตัวแทนย่อยที่ตัวแทนสามารถต้องใช้เครื่องมือผ่านงานด้วย `permission.task` ใช้รูปแบบ glob ส่วนใหญ่ที่ใหญ่ขึ้น
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"orchestrator": {
|
|
"mode": "primary",
|
|
"permission": {
|
|
"task": {
|
|
"*": "deny",
|
|
"orchestrator-*": "allow",
|
|
"code-reviewer": "ask"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ตั้งเป็น `deny` แอดเจนต์ย่อยจะลบคำอธิบายเครื่องมืองานทั้งหมดนั่นคือโมเดลจะไม่พยายามทำอะไร
|
|
|
|
:::tip
|
|
กฎเพื่อให้ชนะตามลำดับและ **กฎส่วนใหญ่ส่วนใหญ่จะสุดท้ายจะ** ในตัวอย่าง `orchestrator-planner` ตรงกับทั้ง `*` (ปฏิเสธ) และ `orchestrator-*` (อาจจะ) แต่เนื่องจาก `orchestrator-*` มาหลัง `*` ผลลัพธ์ที่เป็น `allow`
|
|
:::
|
|
|
|
:::tip
|
|
ไม่จำเป็นต้องให้ตัวแทนย่อยใดๆก็ได้โดยตรงผ่านเมนูเติมข้อความอัตโนมัติ `@` สำหรับความต้องการของงานของตัวแทนจะเพิกเฉย
|
|
:::
|
|
|
|
---
|
|
|
|
### Color
|
|
|
|
ปรับแต่งความต้องการของตัวแทนใน UI ด้วยตัวเลือก `color` เพื่อดูลักษณะเฉพาะของตัวแทนในการปฏิบัติตาม
|
|
|
|
ใช้สีฐานสิบหกที่ถูกต้อง (เช่น `#FF5733`) หรือระบบควบคุม: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"creative": {
|
|
"color": "#ff6b6b"
|
|
},
|
|
"code-reviewer": {
|
|
"color": "accent"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
### Top P
|
|
|
|
หลักการของปฏิกิริยาด้วยตัวเลือก `top_p` ทางเลือกแทนการควบคุมการสุ่ม
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"agent": {
|
|
"brainstorm": {
|
|
"top_p": 0.9
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ค่าครองชีพ 0.0 ถึง 1.0 ค่าที่ต่ำกว่าจะเน้นไปที่ค่าที่มักจะเป็นเวลานาน
|
|
|
|
---
|
|
|
|
### Additional
|
|
|
|
ข้อมูลอื่นๆ ที่คุณระบุในบางครั้งตัวแทนของคุณไปที่ **ส่งผ่านโดยตรง** ในส่วนของโครงสร้างข้อมูล คุณจะต้องดำเนินการและตรวจสอบเฉพาะของข้อมูลเท่านั้นได้
|
|
|
|
เช่น ด้วยรูปแบบการใช้เหตุผลของ OpenAI อ่านการควบคุมเพื่อให้เหตุผล:
|
|
|
|
```json title="opencode.json" {6,7}
|
|
{
|
|
"agent": {
|
|
"deep-thinker": {
|
|
"description": "Agent that uses high reasoning effort for complex problems",
|
|
"model": "openai/gpt-5",
|
|
"reasoningEffort": "high",
|
|
"textVerbosity": "low"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
ตรวจสอบเพิ่มเติมในรุ่นและเฉพาะเจาะจงการสแกนเอกสารของคุณเพื่อดูภาพรวม
|
|
|
|
:::tip
|
|
ต้องการ `opencode models` เพื่อดูรายการที่สมบูรณ์
|
|
:::
|
|
|
|
---
|
|
|
|
## สร้างตัวแทน
|
|
|
|
การสร้างตัวแทนใหม่ได้อีกครั้งตามลำดับ:
|
|
|
|
```bash
|
|
opencode agent create
|
|
```
|
|
|
|
คำสั่งแบบในเวลานี้:
|
|
|
|
1. ถามว่าจะบันทึกตัวแทนได้ที่ไหนระดับโลกหรือเฉพาะโครงการ
|
|
2. คำอธิบายสิ่งที่ตัวแทนควรทำ
|
|
3. สร้างพรอมต์และตัวระบุชนิดของที่เหมาะสม
|
|
4. ให้คุณเลือกเครื่องมือที่ตัวแทนอย่างเป็นทางการ
|
|
5. ในที่สุดสร้างไฟล์ Markdown ด้วยเอเจนต์
|
|
|
|
---
|
|
|
|
## กรณีการใช้งาน
|
|
|
|
ต่อไปเป็นกรณีการใช้งานทั่วไปสำหรับตัวแทนต่างๆ
|
|
|
|
- **ตัวแทนที่กำลังพัฒนา**: งานพัฒนาใหม่ล่าสุดโดยอาศัยเครื่องมือทั้งหมด
|
|
- **ตัวแทนแผน**: ผู้วิเคราะห์และวางแผนโดยไม่ทำการเปลี่ยนแปลง
|
|
- **ตัวแทนตรวจสอบ**: ตรวจสอบโค้ดพร้อมแบบอ่านเพียงอย่างเดียวพร้อมเครื่องมือเอกสารประกอบ
|
|
- **ตัวแทนแก้ไขข้อบกพร่อง**: ตรวจสอบโดยการตรวจสอบโดยการควบคุมตีและผู้อ่าน
|
|
- **ตัวแทนเอกสาร**: เนื้อหาเอกสารด้วยไฟล์จัดเก็บข้อมูลที่ระบบปฏิบัติตาม
|
|
|
|
---
|
|
|
|
## แปลความหมายได้
|
|
|
|
ตัวแทนอธิบายว่าคุณอาจจะพบว่ามีประโยชน์
|
|
|
|
:::tip
|
|
คุณเป็นตัวแทนคุณต้องการแบ่งปันหรือไม่? [ส่งประชาสัมพันธ์](https://github.com/anomalyco/opencode)
|
|
:::
|
|
|
|
---
|
|
|
|
### ตัวแทนเอกสาร
|
|
|
|
```markdown title="~/.config/opencode/agents/docs-writer.md"
|
|
---
|
|
description: Writes and maintains project documentation
|
|
mode: subagent
|
|
tools:
|
|
bash: false
|
|
---
|
|
|
|
You are a technical writer. Create clear, comprehensive documentation.
|
|
|
|
Focus on:
|
|
|
|
- Clear explanations
|
|
- Proper structure
|
|
- Code examples
|
|
- User-friendly language
|
|
```
|
|
|
|
---
|
|
|
|
### ผู้ตรวจสอบความปลอดภัย
|
|
|
|
```markdown title="~/.config/opencode/agents/security-auditor.md"
|
|
---
|
|
description: Performs security audits and identifies vulnerabilities
|
|
mode: subagent
|
|
tools:
|
|
write: false
|
|
edit: false
|
|
---
|
|
|
|
You are a security expert. Focus on identifying potential security issues.
|
|
|
|
Look for:
|
|
|
|
- Input validation vulnerabilities
|
|
- Authentication and authorization flaws
|
|
- Data exposure risks
|
|
- Dependency vulnerabilities
|
|
- Configuration security issues
|
|
```
|