| title | CLI |
|---|---|
| description | สัญญาณและคำสั่งของ OpenCode CLI |
import { Tabs, TabItem } from "@astrojs/starlight/components"
OpenCode CLI จะเริ่มต้น TUI เป็นค่าเริ่มต้นเมื่อเรียกใช้โดยไม่มีอาร์กิวเมนต์
opencodeนอกจากนี้ยังรับคำสั่งและแฟล็ก ซึ่งช่วยให้คุณใช้ OpenCode ผ่านโปรแกรมได้
opencode run "Explain how closures work in JavaScript"เริ่ม TUI เพื่อใช้ OpenCode แบบโต้ตอบ
opencode [project]| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--continue |
-c |
ดำเนินการต่อจากเซสชันล่าสุด |
--session |
-s |
ID เซสชันเพื่อดำเนินการต่อ |
--fork |
แยกเซสชันเมื่อทำต่อ (ใช้กับ --continue หรือ --session) |
|
--prompt |
พรอมต์เริ่มต้นที่จะใช้ | |
--model |
-m |
โมเดลที่จะใช้ในรูปแบบ provider/model |
--agent |
เอเจนต์ที่จะใช้ | |
--port |
พอร์ตที่จะฟัง | |
--hostname |
ชื่อโฮสต์ที่จะฟัง |
OpenCode CLI ยังมีคำสั่งย่อยอีกมากมาย
จัดการเอเจนต์สำหรับ OpenCode
opencode agent [command]เชื่อมต่อกับเซิร์ฟเวอร์แบ็กเอนด์ OpenCode ที่กำลังทำงานอยู่ ซึ่งเริ่มต้นผ่านคำสั่ง serve หรือ web
opencode attach [url]วิธีนี้ช่วยให้คุณใช้ TUI กับแบ็กเอนด์ OpenCode ระยะไกลได้ ตัวอย่าง:
# Start the backend server for web/mobile access
opencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--dir |
ไดเร็กทอรีการทำงานเพื่อเริ่มต้น TUI ใน | |
--session |
-s |
ID เซสชันเพื่อดำเนินการต่อ |
สร้างเอเจนต์ใหม่
opencode agent createคำสั่งนี้จะแนะนำคุณตลอดกระบวนการสร้างเอเจนต์ใหม่ พร้อมพรอมต์ระบบและความสามารถของเครื่องมือ
แสดงรายชื่อเอเจนต์ที่พร้อมใช้งานทั้งหมด
opencode agent listจัดการการตรวจสอบสิทธิ์และข้อมูลรับรอง
opencode auth [command]OpenCode ได้รับการกำหนดค่าไว้ล่วงหน้าด้วยรายชื่อผู้ให้บริการทั่วไปที่ Models.dev ดังนั้นคุณเพียงแค่ต้องใส่คีย์ API สำหรับผู้ให้บริการที่คุณต้องการใช้ ข้อมูลนี้จะถูกเก็บไว้ที่ ~/.local/share/opencode/auth.json
opencode auth loginเมื่อ OpenCode เริ่มต้น ระบบจะโหลดข้อมูลรับรองจากไฟล์นี้ ดังนั้นคุณจึงไม่ต้องกังวลกับการตั้งค่าตัวแปรสภาพแวดล้อมหรือไฟล์ .env ในโปรเจ็กต์ของคุณ
แสดงรายการข้อมูลรับรองการตรวจสอบสิทธิ์ทั้งหมดที่กำหนดค่าไว้
opencode auth listหรือใช้นามแฝงสั้น
opencode auth lsออกจากระบบของผู้ให้บริการและลบข้อมูลรับรองออกจากไฟล์ auth
opencode auth logoutจัดการเอเจนต์ GitHub สำหรับเวิร์กโฟลว์อัตโนมัติ
opencode github [command]ติดตั้งเอเจนต์ GitHub ใน repository ของคุณ
opencode github installคำสั่งนี้จะสร้างเวิร์กโฟลว์ GitHub Actions และแนะนำคุณตลอดกระบวนการตั้งค่า เรียนรู้เพิ่มเติม
รันเอเจนต์ GitHub ด้วยตนเองหรือใน GitHub Actions
opencode github run| แฟล็ก | คำอธิบาย |
|---|---|
--event |
เหตุการณ์ GitHub เพื่อทริกเกอร์เอเจนต์ |
--token |
GitHub token |
จัดการเซิร์ฟเวอร์ Model Context Protocol (MCP)
opencode mcp [command]เพิ่มเซิร์ฟเวอร์ MCP ลงในการกำหนดค่าของคุณ
opencode mcp addคำสั่งนี้จะแนะนำคุณผ่านวิซาร์ดเพื่อกำหนดค่าเซิร์ฟเวอร์ MCP ใหม่
แสดงรายชื่อเซิร์ฟเวอร์ MCP ทั้งหมดที่กำหนดค่าไว้และสถานะ
opencode mcp listหรือใช้นามแฝงสั้น
opencode mcp lsยืนยันตัวตนกับเซิร์ฟเวอร์ MCP ที่ต้องการ OAuth
opencode mcp auth [name]หากไม่ระบุชื่อเซิร์ฟเวอร์ คุณจะได้รับแจ้งให้เลือกจากเซิร์ฟเวอร์ที่รองรับ OAuth ที่พร้อมใช้งาน
คุณยังสามารถแสดงรายการสถานะการตรวจสอบสิทธิ์ OAuth ได้:
opencode mcp auth listหรือใช้นามแฝงสั้น
opencode mcp auth lsลบข้อมูลรับรอง OAuth สำหรับเซิร์ฟเวอร์ MCP
opencode mcp logout [name]ดีบักการเชื่อมต่อเซิร์ฟเวอร์ MCP
opencode mcp debug <name>แสดงรายการโมเดลที่พร้อมใช้งานทั้งหมดจากผู้ให้บริการที่กำหนดค่าไว้
opencode models [provider]คำสั่งนี้จะแสดง ID โมเดลทั้งหมดในรูปแบบ provider/model
คุณสามารถใช้ชื่อโมเดลเหล่านี้ในการกำหนดค่า config ของคุณ
คุณยังสามารถส่งผ่านรหัสผู้ให้บริการเพื่อกรองโมเดลตามผู้ให้บริการรายนั้นได้
opencode models anthropic| แฟล็ก | คำอธิบาย |
|---|---|
--refresh |
รีเฟรชแคชโมเดลจาก models.dev |
--verbose |
แสดงรายละเอียดโมเดลเพิ่มเติม (รวมข้อมูลเมตาเช่นต้นทุน) |
--json |
แสดงผลลัพธ์เป็น JSON |
ใช้แฟล็ก --refresh เพื่ออัปเดตรายการโมเดลที่แคชไว้ มีประโยชน์เมื่อมีการเพิ่มโมเดลใหม่ให้กับผู้ให้บริการและคุณต้องการเห็นใน OpenCode
opencode models --refreshรัน OpenCode โดยไม่ต้องใช้ TUI โดยส่งพรอมต์โดยตรง
opencode run [message..]มีประโยชน์สำหรับการทำงานอัตโนมัติหรือเมื่อต้องการคำตอบอย่างรวดเร็วโดยไม่ต้องเปิด TUI ตัวอย่าง:
opencode run Explain the use of context in Goคุณยังสามารถแนบไปกับเซิร์ฟเวอร์ opencode serve ที่ทำงานอยู่ หรือใช้เซิร์ฟเวอร์ MCP แบบ headless:
# Start a headless server in one terminal
opencode serve
# In another terminal, run commands that attach to it
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--command |
คำสั่งที่จะรัน (ใช้ส่วนที่เหลือของ args เป็นอาร์กิวเมนต์) | |
--continue |
-c |
ดำเนินการต่อจากเซสชันล่าสุด |
--session |
-s |
ID เซสชันเพื่อดำเนินการต่อ |
--fork |
แยกเซสชันเมื่อทำต่อ (ใช้กับ --continue หรือ --session) |
|
--share |
สร้างลิงก์แชร์สำหรับเซสชัน | |
--model |
-m |
โมเดลที่จะใช้ในรูปแบบ provider/model |
--agent |
เอเจนต์ที่จะใช้ | |
--file |
-f |
แนบไฟล์ไปกับข้อความ |
--format |
รูปแบบเอาต์พุต: text (จัดรูปแบบ) หรือ json (JSON ดิบ) | |
--title |
ชื่อสำหรับเซสชัน (หากไม่ได้ระบุ จะสร้างจากพรอมต์) | |
--attach |
แนบไปกับเซิร์ฟเวอร์ opencode ที่ทำงานอยู่ (เช่น http://localhost:4096) | |
--port |
พอร์ตสำหรับเซิร์ฟเวอร์ภายในเครื่อง (หากไม่ได้ระบุ จะใช้พอร์ตสุ่ม) |
เริ่มต้นเซิร์ฟเวอร์ OpenCode headless ที่ให้บริการ API HTTP ดู เอกสารเซิร์ฟเวอร์ สำหรับรายละเอียด API เต็มรูปแบบ
opencode serveคำสั่งนี้จะเริ่มต้นเซิร์ฟเวอร์ HTTP ให้ API เข้าถึงฟังก์ชันการทำงานของ OpenCode ได้โดยไม่ต้องมี TUI นอกจากนี้ยังรองรับการตรวจสอบสิทธิ์พื้นฐาน HTTP (ชื่อผู้ใช้เริ่มต้นคือ opencode และรหัสผ่านระบุโดย OPENCODE_SERVER_PASSWORD)
| แฟล็ก | คำอธิบาย |
|---|---|
--port |
พอร์ตที่จะฟัง |
--hostname |
ชื่อโฮสต์ที่จะฟัง |
--mdns |
เปิดใช้งานการค้นหา mDNS |
--cors |
ต้นกำเนิดเพิ่มเติมที่อนุญาตสำหรับ CORS |
จัดการเซสชัน OpenCode
opencode session [command]แสดงรายการเซสชัน OpenCode ทั้งหมด
opencode session list| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--max-count |
-n |
จำกัดการแสดงผล N รายการล่าสุด |
--format |
รูปแบบ table หรือ json |
แสดงสถิติการใช้งานและค่าใช้จ่ายสำหรับ OpenCode ของคุณ
opencode stats| แฟล็ก | คำอธิบาย |
|---|---|
--days |
แสดงสถิติของ N วันที่ผ่านมา (ค่าเริ่มต้น: ตลอดเวลา) |
--tools |
แสดงสถิติการใช้เครื่องมือ |
--models |
แสดงรายละเอียดการใช้งานโมเดล (ซ่อนไว้ตามค่าเริ่มต้น) |
--project |
กรองตามโครงการ (ค่าเริ่มต้น: โครงการปัจจุบัน) |
ส่งออกประวัติเซสชันเป็น JSON
opencode export [sessionID]หากไม่ระบุรหัสเซสชัน คุณจะได้รับแจ้งให้เลือกจากรายการล่าสุด
นำเข้าเซสชันจากไฟล์ JSON หรือ URL ที่แชร์ของ OpenCode
opencode import <file>คุณสามารถนำเข้าไฟล์ในเครื่องหรือ URL ที่แชร์
opencode import session.json
opencode import https://opncd.ai/s/abc123เริ่ม OpenCode ในโหมดเซิร์ฟเวอร์พร้อมเว็บอินเตอร์เฟส
opencode webคำสั่งนี้จะเริ่มต้นเซิร์ฟเวอร์ HTTP และเปิดเว็บเบราว์เซอร์เพื่อเข้าถึง OpenCode ผ่านทางเว็บอินเตอร์เฟส รองรับการตรวจสอบสิทธิ์พื้นฐาน HTTP (ชื่อผู้ใช้เริ่มต้นคือ opencode และรหัสผ่านระบุโดย OPENCODE_SERVER_PASSWORD)
| แฟล็ก | คำอธิบาย |
|---|---|
--port |
พอร์ตที่จะฟัง |
--hostname |
ชื่อโฮสต์ที่จะฟัง |
--mdns |
เปิดใช้งานการค้นหา mDNS |
--cors |
ต้นกำเนิดเพิ่มเติมที่อนุญาตสำหรับ CORS |
เริ่มต้นเซิร์ฟเวอร์ ACP (Agent Client Protocol)
opencode acpคำสั่งนี้เริ่มต้นเซิร์ฟเวอร์ ACP ที่สื่อสารผ่าน stdin/stdout ด้วย nd-JSON
| แฟล็ก | คำอธิบาย |
|---|---|
--cwd |
ไดเร็กทอรีการทำงาน |
--port |
พอร์ตที่จะฟัง |
--hostname |
ชื่อโฮสต์ที่จะฟัง |
ถอนการติดตั้ง OpenCode และลบข้อมูลการกำหนดค่าทั้งหมด
opencode uninstall| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--keep-config |
-c |
เก็บไฟล์การกำหนดค่าไว้ |
--keep-data |
-d |
เก็บไฟล์ข้อมูล (เซสชันและสแน็ปช็อต) |
--dry-run |
แสดงสิ่งที่จะลบออกโดยไม่ต้องทำจริง | |
--force |
-f |
บังคับลบโดยไม่มีการแจ้งเตือน |
อัปเกรด OpenCode เป็นเวอร์ชันล่าสุดหรือเวอร์ชันที่ระบุ
opencode upgrade [target]อัปเกรดเป็นเวอร์ชันล่าสุด
opencode upgradeอัปเกรดเป็นเวอร์ชันที่ระบุ
opencode upgrade v0.1.48| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--method |
-m |
วิธีการติดตั้งที่ใช้ curl, npm, pnpm, bun, brew |
OpenCode CLI ยอมรับแฟล็กสากลต่อไปนี้สำหรับทุกคำสั่ง
| แฟล็ก | สั้น | คำอธิบาย |
|---|---|---|
--help |
-h |
แสดงความช่วยเหลือ |
--version |
-v |
พิมพ์เวอร์ชัน |
--print-logs |
พิมพ์บันทึกไปยัง stderr | |
--log-level |
ระดับการบันทึก (DEBUG, INFO, WARN, ERROR) |
OpenCode สามารถกำหนดค่าโดยใช้ตัวแปรสภาพแวดล้อม
| ตัวแปร | ชนิด | คำอธิบาย |
|---|---|---|
OPENCODE_AUTO_SHARE |
Boolean | แชร์เซสชันอัตโนมัติเมื่อสร้าง |
OPENCODE_GIT_BASH_PATH |
String | เส้นทางไปยัง Git Bash บน Windows |
OPENCODE_CONFIG |
String | เส้นทางไปยังไฟล์การกำหนดค่า |
OPENCODE_TUI_CONFIG |
String | เส้นทางไปยังไฟล์การกำหนดค่า TUI |
OPENCODE_CONFIG_DIR |
String | เส้นทางไปยังไดเร็กทอรีการกำหนดค่า |
OPENCODE_CONFIG_CONTENT |
String | เนื้อหาการกำหนดค่าแบบ inline JSON |
OPENCODE_DISABLE_AUTOUPDATE |
Boolean | ปิดใช้งานการอัปเดตอัตโนมัติ |
OPENCODE_DISABLE_PRUNE |
Boolean | ปิดใช้งานการลบข้อมูลเซสชันเก่า |
OPENCODE_DISABLE_TERMINAL_TITLE |
Boolean | ปิดใช้งานการตั้งชื่อหน้าต่าง terminal |
OPENCODE_PERMISSION |
String | การกำหนดค่าสิทธิ์แบบ inline JSON |
OPENCODE_DISABLE_DEFAULT_PLUGINS |
Boolean | ปิดใช้งานปลั๊กอินเริ่มต้น |
OPENCODE_DISABLE_LSP_DOWNLOAD |
Boolean | ปิดใช้งานการดาวน์โหลด LSP อัตโนมัติ |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS |
Boolean | เปิดใช้งานโมเดลทดลอง |
OPENCODE_DISABLE_AUTOCOMPACT |
Boolean | ปิดใช้งานการบีบอัดบริบทอัตโนมัติ |
OPENCODE_DISABLE_CLAUDE_CODE |
Boolean | ปิดใช้งานการนำเข้าจาก .claude (prompt + skills) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT |
Boolean | ปิดใช้งานการนำเข้า ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS |
Boolean | ปิดใช้งานการนำเข้า .claude/skills |
OPENCODE_DISABLE_MODELS_FETCH |
Boolean | ปิดใช้งานการดึงรายการโมเดลจากระยะไกล |
OPENCODE_FAKE_VCS |
String | เปิดใช้งาน VCS จำลองสำหรับการทดสอบ |
OPENCODE_DISABLE_FILETIME_CHECK |
Boolean | ปิดใช้งานการตรวจสอบเวลาแก้ไขไฟล์ |
OPENCODE_CLIENT |
String | ตัวระบุไคลเอนต์ (ค่าเริ่มต้นคือ cli) |
OPENCODE_ENABLE_EXA |
Boolean | เปิดใช้งานการใช้ Exa แทน ls หากมี |
OPENCODE_SERVER_PASSWORD |
String | รหัสผ่านสำหรับการตรวจสอบสิทธิ์พื้นฐาน serve/web |
OPENCODE_SERVER_USERNAME |
String | ชื่อผู้ใช้สำหรับการตรวจสอบสิทธิ์พื้นฐาน (ค่าเริ่มต้น opencode) |
OPENCODE_MODELS_URL |
String | URL ที่กำหนดเองสำหรับการดึงรายการโมเดล |
ตัวแปรสภาพแวดล้อมเหล่านี้เปิดใช้งานฟีเจอร์ทดลองที่อาจมีการเปลี่ยนแปลงหรือถูกลบออก
| ตัวแปร | ชนิด | คำอธิบาย |
|---|---|---|
OPENCODE_EXPERIMENTAL |
Boolean | เปิดใช้งานฟีเจอร์ทดลองทั้งหมด |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY |
Boolean | การค้นหาไอคอนทดลอง |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT |
Boolean | ปิดใช้งานการคัดลอกเมื่อเลือกใน TUI |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS |
Number | การหมดเวลาเริ่มต้นสำหรับคำสั่ง bash ในหน่วย ms |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX |
Number | ขีดจำกัดสูงสุดสำหรับโทเค็นเอาต์พุต LLM |
OPENCODE_EXPERIMENTAL_FILEWATCHER |
Boolean | เปิดใช้งานตัวเฝ้าดูไฟล์สำหรับไดเร็กทอรีทั้งหมด |
OPENCODE_EXPERIMENTAL_OXFMT |
Boolean | ใช้ oxfmt เป็นตัวจัดรูปแบบ |
OPENCODE_EXPERIMENTAL_LSP_TOOL |
Boolean | เปิดใช้งานเครื่องมือ LSP ทดลอง |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER |
Boolean | ปิดใช้งานตัวเฝ้าดูไฟล์ |
OPENCODE_EXPERIMENTAL_EXA |
Boolean | ฟีเจอร์ Exa ทดลอง |
OPENCODE_EXPERIMENTAL_LSP_TY |
Boolean | เปิดใช้งาน TY LSP สำหรับไฟล์ python |
OPENCODE_EXPERIMENTAL_MARKDOWN |
Boolean | ใช้ Markdown renderer แบบทดลอง |
OPENCODE_EXPERIMENTAL_PLAN_MODE |
Boolean | เปิดใช้งาน Plan mode |