เตรียมตั้งค่าโปรเจกต์ของคุณ
เพิ่ม OpenSpec เข้าสู่อโปรเจกต์: รัน init, ดูสิ่งที่ถูกเขียน และปรับแต่งมัน
เลือกตำแหน่งที่ OpenSpec จะอยู่
- ในรีโพของคุณ (ค่าเริ่มต้น): สเปกและเปลี่ยนแปลงจะอยู่เคียงข้างโค้ดที่它们อธิบาย และถูก versioned ร่วมกัน ส่วนที่เหลือของหน้านี้จะดำเนินตามเส้นทางนี้
- ในสตอร์ (Store): รีโพวางแผนแยกต่างหากที่รีโพอื่นที่ใช้ร่วมกันแชร์ สำหรับตั้งค่าแบบหลายรีโพ หรือเพื่อแยกการวางแผนออกจากรีโพโดยสิ้นเชิง Stores (beta) ครอบคลุมเมื่อใดที่คุ้มค่าและวิธีการตั้งค่า
เริ่มต้นโปรเจกต์ของคุณ
เมื่อติดตั้ง CLI แล้ว (Installation) รัน init ที่รากของโปรเจกต์ของคุณ ในเทอร์มินัลของคุณ:
cd <your-project>
openspec initInit จะถามว่าคุณใช้เครื่องมือ AI ตัวไหน, เขียนไฟล์ workflow สำหรับตัวที่คุณเลือก และรายงานสิ่งที่ได้มา:
OpenSpec Setup Complete
Created: Claude Code
6 skills and 6 commands in .claude/
Config: openspec/config.yaml (schema: spec-driven)รีสตาร์ท IDE ของคุณเพื่อให้คำสั่งใหม่มีผล
การรัน init ซ้ำนั้นปลอดภัย:
- เครื่องมือที่คุณตั้งค่าไว้แล้วจะแสดง
Refreshedแทนที่จะเป็นCreated - การรัน init ซ้ำโดยเลือกเครื่องมือใหม่จะเพิ่มเครื่องมือนั้น
- แฟล็ก
--toolsข้ามตัวเลือก (CLI reference)
ย้ายข้อมูลจาก project.md เดิม
Init ไม่คัดลอก openspec/project.md เดิมไปสู่ config.yaml มันจะเก็บไฟล์ไว้และแสดงคำขอการย้ายข้อมูลโดยมี AI ช่วย
ในแชท AI ของคุณ:
ทบทวน openspec/project.md และย้ายเนื้อหาที่เป็นประโยชน์ไปสู่อ openspec/config.yaml
รักษาบริบทให้กระชับ: รวมถึงเฉพาะข้อเท็จจริงเฉพาะโปรเจกต์ที่ต้องการระหว่างการสร้าง artifact, apply และ archive
ย้ายคำแนะนำเฉพาะ artifact ไปสู่ rules สำหรับ artifacts ที่ตรงกัน
ย้ายคำแนะนำสำหรับ apply หรือ archive ไปสู่ entry การทำงานที่ตรงกัน
ละเว้นเนื้อหาทั่วไป, ล้าสมัย หรือ啰嗦 อย่าลบ project.mdทบทวน config.yaml จากนั้นลบ project.md เมื่อพร้อม
สิ่งที่ถูกติดตั้งโดย init
การรัน init สร้างสองสิ่งในโปรเจกต์ของคุณ:
- โฟลเดอร์
openspec/ที่รากของรีโพ - ไฟล์ workflow (skills และ commands) ที่ถูกเพิ่มไปในโฟลเดอร์เครื่องมือ AI ของคุณ (
.agents/,.claude/, เป็นต้น)
Commit ทั้งหมดนี้เหมือนแหล่งโค้ดส่วนอื่น Init ไม่เปลี่ยนแปลงสิ่งอื่นใดในรีโพของคุณ (หากพบเศษซากจากเวอร์ชัน OpenSpec เก่า มันจะถามก่อนทำความสะอาด)
โฟลเดอร์ openspec/
ทุก artifact ของ OpenSpec อยู่ที่นี่ ที่รากของโปรเจกต์ของคุณ ดังนี้:
openspec/
├── config.yaml การตั้งค่าโปรเจกต์และบริบทสำหรับ AI
├── specs/ สเปกของคุณ (ว่างสำหรับตอนนี้)
└── changes/ การเปลี่ยนแปลงที่กำลังดำเนินการ (ว่างสำหรับตอนนี้)
└── archive/ การเปลี่ยนแปลงที่เสร็จสมบูรณ์ย้ายมาที่นี่Project config ครอบคลุม config.yaml
ไฟล์ workflow (skills และ commands)
เหล่านี้คือ workflows ของ OpenSpec การดำเนินการที่คุณจะใช้ขณะทำงาน นี่คือสิ่งที่ถูกติดตั้งเป็น skills ในโฟลเดอร์ .agents/ ร่วมที่เครื่องมือส่วนใหญ่ใช้:
.agents/skills/
├── openspec-explore/ คิดไอเดียก่อน
├── openspec-propose/ เสนอการเปลี่ยนแปลง
├── openspec-apply-change/ สร้างงานตามโจทย์ของ change
├── openspec-update-change/ แก้ไขแผนของ change
├── openspec-sync-specs/ ซิงก์อัพเดทสเปกของ change ไปยัง specs/
├── openspec-archive-change/ ย้าย change ที่เสร็จสมบูรณ์ไปยัง archive
├── openspec-verify-change/ ตรวจสอบว่าการ implement ตรงกับแผน (ไม่ได้รวมโดยค่าเริ่มต้น)
└── openspec-bulk-archive-change/ archive หลาย change พร้อมกัน (ไม่ได้รวมโดยค่าเริ่มต้น)นี่คือชุดค่าเริ่มต้นเพิ่มเติมอีกสอง workflows แบบเลือกได้ Profiles รายการสิบสองทั้งหมด
โดยค่าเริ่มต้นแต่ละ workflow ติดตั้งในสองรูปแบบ:
- Skill (
openspec-apply-change): คำสั่งที่ agent ของคุณหยิบขึ้นเองเมื่อคุณขอการทำงาน - Command (
/opsx:applyใน Claude Code): จุดเข้าถึงแบบพิมพ์สำหรับ workflow เดียวกัน ภายใต้ชื่อย่อ
ทั้งสองรูปแบบนี้เทียบเท่ากันโดยหน้าที่ skill และ command ของ workflow ใช้คำสั่งเดียวกัน
ทำไมต้องมีสองอย่าง: commands มาก่อน และทุกเครื่องมือระบุรูปแบบของมันเอง Skills เป็นมาตรฐานใหม่ที่ใช้ร่วมกันข้ามเครื่องมือ แต่ไม่ใช่ทุกเครื่องมือเรียก skill ได้โดยตรง ดังนั้น commands จึงยังจุดเข้าถึงสำหรับเครื่องมือเหล่านั้น
บางเครื่องมือติดตั้งในรูปแบบ skill เท่านั้น หากเครื่องมือรัน skills โดยตรง init จะข้าม commands และแจ้งให้ทราบ (Commands skipped for: codex (uses skills))
เราย่อมชอบ skills และคาดหวังว่าจะ retire commands ท้ายที่สุด
เปลี่ยนสิ่งที่ถูกติดตั้ง
ตัวเลือกแบบ interactive เปลี่ยนรูปแบบการส่งและชุด workflow (Profiles) ในเทอร์มินัลของคุณ:
openspec config profileนี่คือการสวิตช์สู่ skills เท่านั้น:
Current profile settings
Delivery: both
? ต้องการตั้งค่าอะไร? Delivery only
? โหมด delivery (วิธีติดตั้ง workflow): Skills only
การเปลี่ยนแปลงการตั้งค่า:
delivery: both -> skills
? นำการเปลี่ยนแปลงไปใช้กับโปรเจกต์นี้ตอนนี้หรือไม่? (Y/n) yตอบใช่จะนำไปใช้กับโปรเจกต์ปัจจุบันทันที โปรเจกต์อื่นจะหยิบมันขึ้นในการ openspec update ถัดไป การตั้งค่านี้ทั่วโลกต่อเครื่อง
Claude Code ไม่แสดง workflows
Claude Code โหลด workflows ของ OpenSpec จากหนึ่งหรือสองเส้นทางโปรเจกต์เหล่านี้ ขึ้นอยู่กับค่า delivery ของคุณ:
- Skills:
.claude/skills/openspec-*/SKILL.md - Commands:
.claude/commands/opsx/<id>.md
หากไฟล์ขาดหาย รีเฟรชโปรเจกต์ ในเทอร์มินัลของคุณ:
openspec updateหากไฟล์ commands มีแต่ /opsx: ไม่แสดงคำสั่ง OpenSpec อัปเดต Claude Code และรีสตาร์ท หาก commands ยังไม่โหลด เปิดใช้งาน skills อีกด้วย ในเทอร์มินัลของคุณ:
openspec config set delivery both
openspec updateรีสตาร์ท Claude Code จากนั้นรัน /openspec-propose ในแชทของมัน หาก workflow บางส่วนหายไป เปลี่ยน profile ของคุณ
การตั้งค่าเสร็จแล้ว Quickstart จะนำคุณไปทำ change แรกจากที่นี่