---
read_when:
    - คุณต้องการตรวจสอบหรือสร้างการ์ด Workboard จากเทอร์มินัล
    - คุณต้องการสั่งรัน Worker ของ Workboard จาก CLI
    - คุณกำลังแก้ไขข้อบกพร่องของลักษณะการทำงานของ Workboard CLI หรือคำสั่งแบบสแลช
summary: เอกสารอ้างอิง CLI สำหรับการ์ด `openclaw workboard` การจัดส่ง และการเรียกใช้เวิร์กเกอร์
title: CLI กระดานงาน
x-i18n:
    generated_at: "2026-07-19T18:10:06Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 640260ea6f5959b3aee1cdce76f2501097bff79e9bf1741bdd9ff7a8b43e1a7f
    source_path: cli/workboard.md
    workflow: 16
---

`openclaw workboard` คือส่วนติดต่อผ่านเทอร์มินัลสำหรับ [Plugin Workboard](/th/plugins/workboard) ที่มาพร้อมระบบ ช่วยให้ผู้ปฏิบัติงานแสดงรายการการ์ด สร้างการ์ด ตรวจสอบการ์ดหนึ่งใบ และสั่งให้ Gateway ที่กำลังทำงานส่งงานที่พร้อมไปยังรอบการทำงานของผู้ปฏิบัติงาน subagent

เปิดใช้ Plugin ก่อนใช้คำสั่ง:

```bash
openclaw plugins enable workboard
openclaw gateway restart
```

## การใช้งาน

```bash
openclaw workboard list [--board <id>] [--status <status>] [--include-archived] [--json]
openclaw workboard create <title...> [--notes <text>] [--status <status>] [--priority <priority>] [--agent <id>] [--board <id>] [--labels <items>] [--json]
openclaw workboard show <id> [--json]
openclaw workboard move <id> --status <status> [--json]
openclaw workboard dispatch [--board <id>] [--max-starts <count>] [--admin] [--url <url>] [--token <token>] [--timeout <ms>] [--json]
```

คำสั่งนี้อ่านและเขียนฐานข้อมูล SQLite ที่ Plugin เป็นเจ้าของ ซึ่งเป็นฐานข้อมูลเดียวกับที่แดชบอร์ดและเครื่องมือเอเจนต์ Workboard ใช้ รหัสการ์ดเป็น UUID ส่วนคำสั่งที่รับรหัสการ์ดยังรับคำนำหน้ารหัสที่ระบุได้อย่างไม่กำกวมด้วย (เอาต์พุตข้อความแบบย่อแสดงอักขระ 8 ตัวแรก)

ค่าที่ใช้ได้สำหรับ `status`: `triage`, `backlog`, `todo`, `scheduled`, `ready`, `running`, `review`, `blocked`, `done` ค่าที่ใช้ได้สำหรับ `priority`: `low`, `normal`, `high`, `urgent`

## `list`

```bash
openclaw workboard list
openclaw workboard list --board default --status ready
openclaw workboard list --json
```

เอาต์พุตข้อความมีรูปแบบย่อ:

```text
7f4a2c10  ready     high    default agent-a  แก้ไข Heartbeat ของผู้ปฏิบัติงานที่ค้างอยู่
```

คอลัมน์ประกอบด้วยคำนำหน้ารหัส สถานะ ลำดับความสำคัญ รหัสบอร์ด รหัสเอเจนต์ซึ่งมีหรือไม่มีก็ได้ และชื่อเรื่อง

| แฟล็ก                 | วัตถุประสงค์                                       |
| -------------------- | --------------------------------------------- |
| `--board <id>`       | จำกัดผลลัพธ์ไว้ที่เนมสเปซของบอร์ดหนึ่งรายการ          |
| `--status <status>`  | จำกัดผลลัพธ์ไว้ที่สถานะ Workboard หนึ่งสถานะ         |
| `--include-archived` | รวมการ์ดที่เก็บถาวรไว้ในเอาต์พุตข้อความแบบย่อ |
| `--json`             | แสดงรายการการ์ดทั้งหมดเป็น JSON สำหรับเครื่อง      |

โดยค่าเริ่มต้น เอาต์พุตข้อความแบบย่อจะซ่อนการ์ดที่เก็บถาวรไว้ เพื่อให้ CLI ตรงกับ `/workboard list` ส่ง `--include-archived` เพื่อแสดงการ์ดเหล่านั้น เอาต์พุต JSON จะเก็บรายการการ์ดทั้งหมดไว้เสมอ รวมถึงการ์ดที่เก็บถาวร เพื่อรองรับระบบอัตโนมัติที่มีอยู่

## `create`

```bash
openclaw workboard create "Fix stale worker heartbeat" --priority high --labels bug,workboard
openclaw workboard create "Write Workboard docs" --status ready --agent docs-agent --board docs --notes "Cover CLI, slash command, dispatch, and SQLite state."
```

| แฟล็ก                    | วัตถุประสงค์                                 |
| ----------------------- | --------------------------------------- |
| `--notes <text>`        | บันทึกเริ่มต้นของการ์ด                      |
| `--status <status>`     | สถานะเริ่มต้น ค่าเริ่มต้นคือ `todo`          |
| `--priority <priority>` | ลำดับความสำคัญ ค่าเริ่มต้นคือ `normal`              |
| `--agent <id>`          | มอบหมายการ์ดให้เอเจนต์หรือรหัสเจ้าของ |
| `--board <id>`          | จัดเก็บการ์ดในเนมสเปซของบอร์ด     |
| `--labels <items>`      | ป้ายกำกับที่คั่นด้วยจุลภาค                  |
| `--json`                | แสดงการ์ดที่สร้างเป็น JSON สำหรับเครื่อง  |

`create` เขียนลงในสถานะ SQLite ของ Workboard โดยตรง การ์ดจะปรากฏทันทีในแท็บ Workboard ของ Control UI และในเครื่องมือ Workboard

## `show`

```bash
openclaw workboard show 7f4a2c10
openclaw workboard show 7f4a2c10 --json
```

เอาต์พุตข้อความจะแสดงบรรทัดการ์ดแบบย่อและบันทึก เอาต์พุต JSON จะส่งคืนระเบียนการ์ดทั้งหมด ซึ่งรวมถึงข้อมูลเมตาการดำเนินการ ความพยายาม ความคิดเห็น ลิงก์ หลักฐาน อาร์ติแฟกต์ บันทึกผู้ปฏิบัติงาน สถานะโปรโตคอล การวินิจฉัย และข้อมูลเมตาระบบอัตโนมัติ

สถานะหลักฐานใน JSON คือผลลัพธ์ที่ผู้ปฏิบัติงานรายงาน `passed` บันทึก
การประเมินตนเองของผู้ปฏิบัติงานต่อคำสั่งหรือการตรวจสอบที่แนบมา โดยไม่ใช่ผลลัพธ์
จากการตรวจสอบยืนยันที่เป็นอิสระ

## `move`

```bash
openclaw workboard move 7f4a2c10 --status review
openclaw workboard move 7f4a2c10 --status done --json
```

`move` เปลี่ยนสถานะของการ์ดโดยใช้เส้นทางผู้ปฏิบัติงานแบบกำหนดเองเส้นทางเดียวกับการลากการ์ดในแดชบอร์ด คำสั่งนี้รับรหัสการ์ดแบบเต็มหรือคำนำหน้าที่ระบุได้อย่างไม่กำกวม การพักเนื่องจากการขึ้นต่อกันและกำหนดการที่ยังทำงานอยู่ยังคงมีผล ผู้ปฏิบัติงานสามารถย้ายการ์ดที่มีการอ้างสิทธิ์ได้โดยไม่ต้องใช้โทเค็นการอ้างสิทธิ์ของเอเจนต์ โทเค็นการอ้างสิทธิ์ยังคงจำกัดขอบเขตไว้สำหรับการแก้ไขผ่านเครื่องมือเอเจนต์ และถูกปกปิดจากเอาต์พุต JSON

## `dispatch`

```bash
openclaw workboard dispatch
openclaw workboard dispatch --json
openclaw workboard dispatch --max-starts 10
openclaw workboard dispatch --admin
openclaw workboard dispatch --url http://127.0.0.1:18789 --token "$OPENCLAW_GATEWAY_TOKEN"
```

ก่อนอื่น `dispatch` จะเรียกเมธอด RPC `workboard.cards.dispatch` ของ Gateway ที่กำลังทำงาน ซึ่งใช้รันไทม์ subagent เดียวกับการดำเนินการส่งงานในแดชบอร์ด ดังนั้นการ์ดที่พร้อมจึงกลายเป็นรอบการทำงานของผู้ปฏิบัติงานที่ติดตามเป็นงาน พร้อมคีย์เซสชันที่เชื่อมโยงกัน `--max-starts` ใช้เมธอดแบบเพิ่มเติม `workboard.cards.dispatchWithOptions` เพื่อให้ Gateway รุ่นเก่าปฏิเสธตัวเลือกก่อนเริ่มผู้ปฏิบัติงานใดๆ หลังอัปเกรด ให้รีสตาร์ต Gateway ก่อนใช้แฟล็กนี้ การ์ดที่กำหนดเอเจนต์ไว้จะใช้คีย์เซสชัน subagent ที่จำกัดขอบเขตตามเอเจนต์ ส่วนการ์ดที่ไม่ได้กำหนดเอเจนต์จะยังคงใช้คีย์ subagent ที่ไม่จำกัดขอบเขต เพื่อคงเอเจนต์เริ่มต้นที่กำหนดค่าไว้ของ Gateway

ลูปการส่งงาน:

1. เลื่อนรายการลูกที่การขึ้นต่อกันพร้อมแล้วไปเป็น `ready`
2. บล็อกการอ้างสิทธิ์ที่หมดอายุหรือรอบการทำงานของผู้ปฏิบัติงานที่หมดเวลา
3. บันทึกข้อมูลเมตาการส่งงานในการ์ดที่พร้อม
4. เลือกการ์ดที่พร้อมและยังไม่มีการอ้างสิทธิ์เป็นชุดขนาดเล็ก
5. อ้างสิทธิ์การ์ดที่เลือกแต่ละใบให้ผู้ส่งงานหรือเอเจนต์ที่กำหนด
6. เริ่มรอบการทำงานของผู้ปฏิบัติงาน subagent ด้วยบริบทการ์ดที่มีขอบเขตจำกัดและโทเค็นการอ้างสิทธิ์ของการ์ด
7. จัดเก็บรหัสรอบการทำงานของผู้ปฏิบัติงาน คีย์เซสชัน การเชื่อมโยงงานเมื่อบัญชีแยกประเภทงานของ Gateway รายงานข้อมูลดังกล่าว สถานะการดำเนินการ และบันทึกผู้ปฏิบัติงานไว้ในการ์ด

การคัดเลือกเป็นแบบระมัดระวัง โดยค่าเริ่มต้น การส่งงานหนึ่งครั้งจะเริ่มผู้ปฏิบัติงานไม่เกินสามราย ข้ามการ์ดที่เก็บถาวรหรือมีการอ้างสิทธิ์อยู่แล้ว และเริ่มการ์ดเพียงหนึ่งใบต่อเจ้าของหรือเอเจนต์ในการประมวลผลหนึ่งรอบ การ์ดที่มีเจ้าของเป็นงานที่กำลังทำงานหรืออยู่ระหว่างรีวิวจะถูกเก็บไว้สำหรับการส่งงานครั้งถัดไป ส่ง `--max-starts <count>` พร้อมจำนวนเต็มบวกเพื่อเปลี่ยนขีดจำกัดต่อรอบ กฎหนึ่งการ์ดต่อเจ้าของยังคงมีผล ดังนั้นจำนวนที่เริ่มจริงอาจต่ำกว่า

หากการเริ่มผู้ปฏิบัติงานล้มเหลวหลังจากมีการอ้างสิทธิ์การ์ด Workboard จะบล็อกการ์ดนั้น ล้างการอ้างสิทธิ์ และบันทึกความล้มเหลวไว้ในข้อมูลเมตาการดำเนินการของการ์ดและบันทึกผู้ปฏิบัติงาน ทำให้การเริ่มที่ล้มเหลวยังคงมองเห็นได้แทนที่จะส่งการ์ดกลับเข้าคิวโดยไม่แจ้งให้ทราบ

หากไม่ได้ระบุเป้าหมาย Gateway อย่างชัดเจน และ Gateway ภายในเครื่องใช้งานไม่ได้หรือยังไม่เปิดเผยเมธอดการส่งงานของ Workboard CLI จะถอยกลับไปใช้การส่งงานแบบข้อมูลเท่านั้นกับสถานะ Workboard ภายในเครื่อง การส่งงานแบบข้อมูลเท่านั้นยังคงเลื่อนลำดับการขึ้นต่อกัน ล้างการอ้างสิทธิ์ที่ค้าง และบล็อกรอบการทำงานที่หมดเวลาได้ แต่จะไม่เริ่มผู้ปฏิบัติงาน ความล้มเหลวด้านการรับรองความถูกต้อง สิทธิ์ และการตรวจสอบความถูกต้อง รวมถึงความล้มเหลวของเป้าหมาย `--url` หรือ `--token` ที่ระบุไว้อย่างชัดเจน จะถูกรายงานโดยตรงแทนการเรียกใช้การถอยกลับ

เอาต์พุตข้อความรายงานการเริ่มผู้ปฏิบัติงาน:

```text
การส่งงานเสร็จสมบูรณ์: เริ่มแล้ว=2 ล้มเหลว=0
```

เอาต์พุตการถอยกลับระบุไว้อย่างชัดเจน:

```text
Gateway ใช้งานไม่ได้; ส่งงานแบบข้อมูลเท่านั้น: เลื่อนแล้ว=1 บล็อกแล้ว=0
```

เอาต์พุต JSON มีผลลัพธ์การส่งงาน การส่งงานที่รองรับโดย Gateway อาจมี `started` และ `startFailures` ส่วนการถอยกลับแบบข้อมูลเท่านั้นมี `gatewayUnavailable: true` โทเค็นการอ้างสิทธิ์ถูกปกปิดจากเอาต์พุต JSON ของการ์ด

ในแดชบอร์ด ผลลัพธ์การส่งงานเดียวกันจะแสดงเป็นข้อมูลสรุปสั้นๆ เพื่อให้ผู้ปฏิบัติงานเห็นจำนวนการ์ดที่เริ่ม เลื่อน บล็อก เรียกคืน หรือล้มเหลวได้โดยไม่ต้องเปิดรายละเอียดการ์ด

## ความสอดคล้องกับคำสั่งแบบทับ

ช่องทางที่รองรับคำสั่งสามารถใช้คำสั่งแบบทับที่ตรงกัน:

```text
/workboard list
/workboard show 7f4a2c10
/workboard create แก้ไข Heartbeat ของผู้ปฏิบัติงานที่ค้างอยู่
/workboard move 7f4a2c10 --status review
/workboard dispatch
```

การส่งงานด้วยคำสั่งแบบทับยังใช้รันไทม์ subagent ของ Gateway จึงมีพฤติกรรมการอ้างสิทธิ์ การเริ่มผู้ปฏิบัติงาน และความล้มเหลวเช่นเดียวกับเส้นทาง Gateway ของแดชบอร์ดและ CLI

`/workboard list` และ `/workboard show` เป็นคำสั่งอ่านสำหรับผู้ส่งคำสั่งที่ได้รับอนุญาต `/workboard create`, `/workboard move` และ `/workboard dispatch` แก้ไขสถานะบอร์ด และต้องมีสถานะเจ้าของบนส่วนติดต่อแชต หรือเป็นไคลเอนต์ Gateway ที่มี `operator.write` หรือ `operator.admin`

## สิทธิ์

โดยปกติ เส้นทางการส่งงานของ CLI จะร้องขอขอบเขต Gateway `operator.write` และ `operator.read` การ์ดที่ผูกกับเวิร์กสเปซจะทำงานโดยตรงในเวิร์กสเปซของเอเจนต์ที่กำหนดค่าไว้อย่างแน่นอน คำขอ worktree จะถูกจำกัดให้แคบลงเฉพาะไดเรกทอรีนั้น แทนที่จะอนุญาตให้โฮสต์สร้างโค้ดที่ควบคุมโดยรีโพซิทอรี ผู้ปฏิบัติงานที่เลือกต้องมีสิทธิ์เข้าถึงแซนด์บ็อกซ์ Docker ที่เขียนได้และไม่ใช้ร่วมกันสำหรับเวิร์กสเปซนั้นโดยเฉพาะ มีแฮชคอนเทนเนอร์ที่ทำงานอยู่ซึ่งตรงกับเมานต์และนโยบายที่ร้องขอ และไม่มีความสามารถในการหลบออกไปยังโฮสต์ ส่ง `--admin` เพื่อร้องขอ `operator.admin` อย่างชัดเจน อนุญาตให้ใช้เช็กเอาต์อื่นของโฮสต์ และใช้การตั้งค่า worktree ที่มีการจัดการตามปกติ การเชื่อมต่อจะล้มเหลวหากขอบเขตดังกล่าวไม่ได้รับอนุมัติสำหรับไคลเอนต์ โทเค็น Gateway แบบอ่านอย่างเดียวสามารถตรวจสอบข้อมูล Workboard ผ่านเมธอดอ่าน แต่ไม่สามารถสร้างการ์ดหรือส่งงานให้ผู้ปฏิบัติงานได้ นอกเหนือจากนี้ ข้อจำกัดของเวิร์กสเปซจะไม่เปลี่ยนแปลงการย้ายการ์ดด้วยตนเองสำหรับผู้เรียกที่มีสิทธิ์แก้ไข Workboard

คำสั่ง `list`, `create`, `show` และ `move` ภายในเครื่องทำงานกับไดเรกทอรีสถานะ OpenClaw ภายในเครื่องที่โปรไฟล์ปัจจุบันใช้ ใช้ `--dev` หรือ `--profile <name>` กับคำสั่งระดับบนสุด `openclaw` เมื่อต้องการใช้รูทสถานะอื่น

## การแก้ไขปัญหา

### ไม่มีการ์ดปรากฏ

ยืนยันว่าเปิดใช้ Plugin สำหรับโปรไฟล์และรูทสถานะเดียวกัน:

```bash
openclaw plugins inspect workboard --runtime --json
```

หากแดชบอร์ดแสดงการ์ดแต่ CLI ไม่แสดง ให้ตรวจสอบว่าทั้งสองคำสั่งใช้การตั้งค่า `--dev` หรือ `--profile` เดียวกัน

### การส่งงานระบุว่าเป็นแบบข้อมูลเท่านั้น

เริ่มหรือรีสตาร์ต Gateway:

```bash
openclaw gateway restart
openclaw gateway status --deep
```

จากนั้นลอง `openclaw workboard dispatch` อีกครั้ง การถอยกลับแบบข้อมูลเท่านั้นมีประโยชน์สำหรับการล้างสถานะภายในเครื่อง แต่รอบการทำงานของผู้ปฏิบัติงานต้องใช้ Gateway ที่ทำงานอยู่

### การส่งงานไม่เริ่มสิ่งใด

ตรวจสอบว่ามีการ์ด `ready` ที่ไม่มีการอ้างสิทธิ์ที่ใช้งานอยู่อย่างน้อยหนึ่งใบ:

```bash
openclaw workboard list --status ready
```

ระบบอาจข้ามการ์ดเมื่อเจ้าของเดียวกันมีงานที่กำลังทำงานหรืออยู่ระหว่างรีวิวอยู่แล้ว ย้ายงานที่เสร็จสมบูรณ์ไปยัง `done` ปลดการอ้างสิทธิ์ที่ค้างผ่านเครื่องมือ Workboard หรือเรียกใช้การส่งงานอีกครั้งหลังจากผู้ปฏิบัติงานที่ใช้งานอยู่ทำงานเสร็จ

## ที่เกี่ยวข้อง

- [Plugin Workboard](/th/plugins/workboard)
- [ข้อมูลอ้างอิง CLI](/th/cli)
- [คำสั่งแบบทับ](/th/tools/slash-commands)
- [Control UI](/th/web/control-ui)
