เครื่องมือที่รองรับ
เครื่องมือโค้ดดิ้ง AI ใดบ้างที่ OpenSpec รองรับ และไวยากรณ์คำสั่งของแต่ละเครื่องมือ
ทุกเครื่องมือในตารางจะทำงานเวิร์กโฟลว์ของ OpenSpec แบบเดียวกัน สกิลและคำสั่งของมันคือคำสั่งเวิร์กโฟลว์เดียวกัน ข้อแตกต่างเพียงอย่างเดียวคือสิ่งที่คุณพิมพ์ รูปแบบที่คำสั่ง init ติดตั้งคือค่าการส่งมอบ (delivery setting) ซึ่งอธิบายไว้ใน การตั้งค่าโปรเจกต์ของคุณ
ตารางการรองรับ
การเรียกใช้งานที่แสดงคือของเวิร์กโฟลว์ apply ทุกเวิร์กโฟลว์มีรูปแบบเดียวกัน ID ต้องถูกส่งไปยัง openspec init --tools <id> เพื่อข้ามตัวเลือก (picker) (CLI)
| เครื่องมือ | id ของ --tools | สกิล (Skills) | การเรียกใช้สกิล | คำสั่ง (Commands) | การเรียกใช้คำสั่ง |
|---|---|---|---|---|---|
| Amazon Q Developer | amazon-q | .amazonq/skills/ | /openspec-apply-change | .amazonq/prompts/ | @opsx-apply |
| Amp | amp | .agents/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| Antigravity | antigravity | .agents/skills/ | /openspec-apply-change | .agents/workflows/ | /opsx-apply |
| AtomCode | atomcode | .atomcode/skills/ | /openspec-apply-change | .atomcode/commands/ | /opsx-apply |
| Auggie (Augment CLI) | auggie | .augment/skills/ | /openspec-apply-change | .augment/commands/ | /opsx-apply |
| IBM Bob | bob | .bob/skills/ | /openspec-apply-change | .bob/commands/ | /opsx-apply |
| Claude Code | claude | .claude/skills/ | /openspec-apply-change | .claude/commands/opsx/ | /opsx:apply |
| Cline | cline | .cline/skills/ | /openspec-apply-change | .clinerules/workflows/ | /opsx-apply |
| CodeArts | codeartsagent | .codeartsdoer/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| CodeBuddy Code (CLI) | codebuddy | .codebuddy/skills/ | /openspec-apply-change | .codebuddy/commands/opsx/ | /opsx:apply |
| Code Studio | codestudio | .codestudio/skills/ | /openspec-apply-change | .codestudio/prompts/ | /opsx-apply |
| Codex | codex | .agents/skills/ | $openspec-apply-change | ไม่มี | ไม่มี |
| Continue | continue | .continue/skills/ | /openspec-apply-change | .continue/prompts/ | /opsx-apply |
| CoStrict | costrict | .cospec/skills/ | /openspec-apply-change | .cospec/openspec/commands/ | /opsx-apply |
| Crush | crush | .crush/skills/ | /openspec-apply-change | .crush/commands/opsx/ | /opsx:apply |
| Cursor | cursor | .cursor/skills/ | /openspec-apply-change | .cursor/commands/ | /opsx-apply |
| DeepSeek Harness | dsh | .dsh/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| Devin Desktop (formerly Windsurf) | devin | .devin/skills/ | /openspec-apply-change | .devin/workflows/ | /opsx-apply |
| EasyCode | easycode | .easycode/skills/ | /openspec-apply-change | .easycode/commands/opsx/ | /opsx:apply |
| Factory Droid | factory | .factory/skills/ | /openspec-apply-change | .factory/commands/ | /opsx-apply |
| ForgeCode | forgecode | .forge/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| Gemini CLI | gemini | .gemini/skills/ | /openspec-apply-change | .gemini/commands/opsx/ | /opsx:apply |
| GigaCode | gigacode | .gigacode/skills/ | /openspec-apply-change | .gigacode/commands/ | /opsx-apply |
| GitHub Copilot | github-copilot | .github/skills/ | /openspec-apply-change | .github/prompts/ | /opsx-apply |
| Grok Build | grok | .grok/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| GSD | gsd | .agents/skills/ | ขอให้ใช้ openspec-apply-change | ไม่มี | ไม่มี |
| Hermes Agent | hermes | .hermes/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| iFlow | iflow | .iflow/skills/ | /openspec-apply-change | .iflow/commands/ | /opsx-apply |
| Junie | junie | .junie/skills/ | /openspec-apply-change | .junie/commands/ | /opsx-apply |
| Kilo Code | kilocode | .kilocode/skills/ | /openspec-apply-change | .kilo/command/ | /opsx-apply |
| Kimi Code | kimi | .kimi-code/skills/ | /skill:openspec-apply-change | ไม่มี | ไม่มี |
| Kiro | kiro | .kiro/skills/ | /openspec-apply-change | .kiro/prompts/ | /opsx-apply |
| Lingma | lingma | .lingma/skills/ | /openspec-apply-change | .lingma/commands/opsx/ | /opsx:apply |
| MiniMax Code | minimax-code | ~/.minimax/skills/ (ระดับระบบ) | /openspec-apply-change | ไม่มี | ไม่มี |
| Mistral Vibe | vibe | .vibe/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| Oh My Pi | oh-my-pi | .omp/skills/ | /openspec-apply-change | .omp/commands/ | /opsx-apply |
| OpenCode | opencode | .opencode/skills/ | /openspec-apply-change | .opencode/commands/ | /opsx-apply |
| Pi | pi | .pi/skills/ | /openspec-apply-change | .pi/prompts/ | /opsx-apply |
| Qoder | qoder | .qoder/skills/ | /openspec-apply-change | .qoder/commands/opsx/ | /opsx:apply |
| Qwen Code | qwen | .qwen/skills/ | /openspec-apply-change | .qwen/commands/ | /opsx-apply |
| Trae | trae | .trae/skills/ | /openspec-apply-change | .trae/commands/ | /opsx-apply |
| Veai | veai | .veai/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| Warp | warp | .warp/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
| ZCode | zcode | .zcode/skills/ | /openspec-apply-change | .zcode/commands/opsx/ | /opsx:apply |
| Zoo Code | roocode | .roo/skills/ | /openspec-apply-change | .roo/commands/ | /opsx-apply |
| อื่นๆ / แบบสากล (Universal) | agents | .agents/skills/ | /openspec-apply-change | ไม่มี | ไม่มี |
- การเรียกใช้สกิล (Skill invocation): การที่เครื่องมือจะลงทะเบียนสกิลเป็นรายการที่พิมพ์ได้หรือไม่นั้นเป็นพฤติกรรมของตัวเครื่องมือเอง ตัวคอลัมน์แสดงการสะกดที่ OpenSpec ใช้ในไฟล์ที่สร้างและในข้อความที่คำสั่ง init พิมพ์ออกมา ตรวจสอบเอกสารของเครื่องมือของคุณหากการพิมพ์นั้นไม่มีผล
- รูปแบบไฟล์คำสั่ง (Command file formats): เครื่องมือส่วนใหญ่รับไฟล์คำสั่งแบบ
.mdEasyCode และ Gemini CLI ใช้.tomlContinue ใช้.promptและ Code Studio, Kiro และ GitHub Copilot ใช้.prompt.mdการสะกดที่คุณพิมพ์นั้นเหมือนกันไม่ว่ากรณีใด
หมายเหตุเฉพาะเครื่องมือ
เครื่องมือที่ไม่ได้ระบุไว้ในที่นี่จะทำงานตามอย่างที่ว่าในแถวของมันพอดี
Amp
- สกิลระดับโปรเจกต์ (Project skills): Amp อ่านสกิลของ OpenSpec จาก
.agents/skills/ - ไม่มีไฟล์คำสั่ง (No command files): Amp รันสกิลโดยตรง ดังนั้น init จึงข้ามการสร้างคำสั่ง
- โฟลเดอร์ที่ใช้ร่วมกัน (Shared folder): Amp ใช้
.agents/skills/ร่วมกับ Antigravity, Codex, Zed Agent และเป้าหมายagentsOpenSpec เขียนต้นไม้สกิลเพียงครั้งเดียว
Antigravity
- โฟลเดอร์ปัจจุบัน (Current folder): Antigravity รุ่น v1.20.5 ขึ้นไปจะอ่านสกิลและเวิร์กโฟลว์ระดับเวิร์กสเปซจาก
.agents/ - โฟลเดอร์รุ่นเก่า (Legacy folder): หลังจาก OpenSpec เขียนไฟล์แทนที่แล้ว จะลบไฟล์ที่สร้างที่เทียบเท่าใน
.agent/ไฟล์ custom และไฟล์ที่สร้างที่ถูกแก้ไขจะยังอยู่ใน.agent/ให้คุณตรวจสอบ - สกิลที่ใช้ร่วมกัน (Shared skills): Antigravity ใช้
.agents/skills/ร่วมกับ Amp, Codex, Zed Agent และเป้าหมายagentsOpenSpec เขียนต้นไม้สกิลนั้นเพียงครั้งเดียวในขณะที่ยังเขียนคำสั่งของ Antigravity ไปที่.agents/workflows/
Cline
Cline อ่านคำสั่งจาก .clinerules/workflows/ ไม่ใช่จากโฟลเดอร์ .cline/ ของมัน สกิลจะอยู่ที่ .cline/skills/
Codex
- CLI และส่วนขยาย IDE: กล่าวถึง
$openspec-proposeร่วมกับไอเดียของคุณ หรือรัน/skillsเพื่อเลือกสกิล Codex ไม่ยอมรับ/openspec-propose(ปัญหาจาก upstream) - แอปเดสก์ทอป (Desktop app): เปิด Skills ในแถบด้านข้างและเลือก
openspec-proposeเอกสารเรื่องสกิลของ OpenAI อธิบายอินเทอร์เฟซทั้งสอง - ไม่มีไฟล์คำสั่ง (No command files): Codex รันสกิลโดยตรง ดังนั้น init จึงข้ามคำสั่งด้วยซ้ำเมื่อการส่งมอบรวมถึงคำสั่ง และพิมพ์
Commands skipped for: codex (uses skills) - โฟลเดอร์ที่ใช้ร่วมกัน (Shared folder): สกิลของ Codex จะอยู่ใน
.agents/skills/ซึ่งเป็นต้นไม้เดียวกันกับที่ Amp, Antigravity, Zed Agent และเป้าหมายagentsใช้ การเลือกมากกว่าหนึ่งเป้าหมายจะรักษาต้นไม้ที่เข้ากันได้แบบเดียวไว้ และ handoffs ของมันจะสะกดทั้ง$openspec-*และ/openspec-*เมื่อ Codex เป็นเจ้าของ - เส้นทางรุ่นเก่า (Legacy path): สกิลที่ติดตั้งอยู่ภายใต้
.codex/skills/โดยเวอร์ชันเก่าจะถูกย้ายในopenspec updateถัดไป
DeepSeek Harness
- รูตโปรเจกต์ (Project root): DSH ใช้บรรพบุรุษ
.gitที่ใกล้ที่สุด หรือ директорі текущий (current directory) หากอยู่นอก Git รันopenspec init --tools dshที่นั่น สำหรับโปรเจกต์ OpenSpec แบบช่อนอก (nested) ให้เพิ่มเส้นทาง 절대 (absolute path) ไปยัง directorий.dsh/skills/ของมันไปยังcustomSkillDirsของ DSH สกิลที่ Git-root จะชนะถ้าชื่อทับกัน (กฎการค้นพบจาก upstream) - ลำดับความสำคัญ (Priority):
.dsh/skills/มีความสำคัญมากกว่าสกิลที่มีชื่อเดียวกันใน.agents/skills/ - การส่งมอบ (Delivery): ใช้
skillsหรือbothหากใช้commandsจะไม่ติดตั้งเวิร์กโฟลว์ DSH แต่อย่างใด เปลี่ยนค่าการส่งมอบด้วยopenspec config profileจากนั้นรันopenspec init --tools dshใหม่
Devin Desktop (formerly Windsurf)
- Agent สองตัว (Two agents): ไฟล์คำสั่งใน
.devin/workflows/ทำงานได้เฉพาะใน Devin Desktop เท่านั้น Devin Local รันเฉพาะสกิล ดังนั้นสกิลที่สร้างจะอ้างอิง/openspec-<skill>ซึ่งทำงานได้ในทั้งสองตัว - การเปลี่ยนชื่อ (Rename):
--tools windsurfยังคงชี้ไปdevinโปรเจกต์ที่มีไฟล์ OpenSpec อยู่ภายใต้โฟลเดอร์รุ่นเก่า.windsurf/จะได้รับข้อเสนอให้ย้ายในopenspec updateถัดไป
GitHub Copilot
- ส่วนขยาย IDE (การส่งมอบแบบคำสั่ง) (IDE extensions (command delivery)): VS Code, JetBrains และ Visual Studio จะโหลด
.github/prompts/opsx-<id>.prompt.mdเป็น/opsx-<id>หากคำสั่งหายไปแม้ไฟล์ยังคงอยู่ ให้รีสตาร์ท IDE - Copilot CLI (การส่งมอบแบบสกิล) (Copilot CLI (skill delivery)): CLI จะเพิกเฉยต่อ
.github/prompts/และโหลด.github/skills/openspec-*/SKILL.mdแทน เรียกใช้สกิลเป็น/openspec-<skill>หากสกิลหายไปแม้ไฟล์ยังคงอยู่ ให้รัน/skills reloadจากนั้น/skills info openspec-proposeเพื่อยืนยันการค้นพบ
GSD
- สกิลระดับโปรเจกต์ (Project skills): GSD อ่านเวิร์กโฟลว์ของ OpenSpec จาก
.agents/skills/ - การเรียกใช้ (Invocation): ให้ GSD ใช้สกิล
openspec-<workflow>GSD ยังสามารถเลือกสกิลที่ตรงกันผ่านค่าตั้งค่าการค้นพบสกิลของมันได้ - ไม่มีไฟล์ subagent (No subagent files):
.gsd/agents/รองรับนิยาม subagent ของ GSD OpenSpec ไม่เขียนสกิลเวิร์กโฟลว์ไปที่นั่น
Hermes Agent
Hermes โหลดเฉพาะจาก ~/.hermes/skills/ เป็นค่าเริ่มต้น เพิ่มโฟลเดอร์ .hermes/skills/ ของโปรเจกต์ไปยัง skills.external_dirs ใน ~/.hermes/config.yaml; init จะพิมพ์ข้อความเตือนนี้หลังติดตั้ง
MiniMax Code
- ระดับระบบเท่านั้น (Global only): สกิลจะไปอยู่ที่
~/.minimax/skills/ไม่มีการเขียนอะไรภายในรีปอ - ปลอดภัยข้ามโปรเจกต์ (Safe across projects): การส่งมอบแบบเฉพาะคำสั่งจะรักษาสกิลระดับระบบไว้ ดังนั้นการตั้งค่าของโปรเจกต์หนึ่งจึงไม่สามารถลบสกิลที่โปรเจกต์อื่นใช้
Warp
- สกิลเสมอ (Skills always): สกิลจะไปที่
.warp/skills/แม้ว่าการส่งมอบจะเป็นcommandsก็ตาม เพราะ Warp ไม่มีไฟล์คำสั่งและเรียกใช้สกิลโดยตรง - สิ่งที่ OpenSpec เป็นเจ้าของ (What OpenSpec claims): เฉพาะ
.warp/skills/การตั้งค่า Warp และWARP.mdไม่ถูกสร้างหรือแก้ไข
อื่นๆ / แบบสากล (โฟลเดอร์ .agents สกิลที่ใช้ร่วมกัน) (Other / Universal (shared .agents skills))
- เมื่อใดจึงเหมาะ (When it fits): เครื่องมือใดๆ ก็ตามที่อ่านโฟลเดอร์
.agents/skills/ที่ใช้ร่วมกัน รวมถึงเครื่องมือที่ไม่มีแถวในตาราง นี่คือตัวเลือกสำหรับกรณีที่คุณไม่มีการระบุเครื่องมือในรายการ ช่องค้นหาของตัวเลือก init จะพบมันด้วยuniversal,other,generic,custom,proprietary,unlisted,unsupported,vendor-neutralหรือagents.md - ควบคู่ไปกับเป้าหมายอื่น (Alongside other targets): Amp, Antigravity, Codex, Zed Agent และเป้าหมายนี้ใช้ต้นไม้สกิลทางกายภาพร่วมกันเพียงหนึ่ง ต้น OpenSpec จะบันทึกตัวเขียนหนึ่งรายการใน
.openspec-targetและเขียนต้นไม้นั้นเพียงครั้งเดียวต่อการรัน ไฟล์คำสั่งแยกของแต่ละเครื่องมือยังคงถูกสร้าง - สิ่งที่ OpenSpec เป็นเจ้าของ (What OpenSpec claims): เฉพาะโฟลเดอร์
openspec-*และตัวมาร์กเกอร์.openspec-targetสิ่งอื่นใดภายใต้.agents/จะไม่ถูกแตะต้อง AGENTS.md: ไม่ถูกสร้างหรือแก้ไข เป้าหมายคือโฟลเดอร์.agents/ไม่ใช่ไฟล์