เวิร์กโฟลว์ Spec-First
กำหนดข้อกำหนดก่อนเขียนโค้ด
ข้อกำหนดเบาๆ สำหรับการสร้างและจัดการโปรเจกต์ผู้ช่วย AI
ยินดีต้อนรับ นี่คือหน้าหลักสำหรับทุกอย่างเกี่ยวกับ OpenSpec
OpenSpec ช่วยให้คุณและผู้ช่วยเขียนโค้ด AI ตกลงกันว่าจะสร้างอะไรก่อนที่จะเขียนโค้ดแม้แต่บรรทัดเดียว คุณอธิบายการเปลี่ยนแปลงที่ต้องการ AI จะร่างข้อกำหนดสั้นๆ และรายการงานที่ต้องทำ ทั้งคู่ดูแผนงานเดียวกัน แล้วจึงเริ่มทำงาน ไม่ต้องพบกับปัญหาในครึ่งทางที่ AI สร้างสิ่งที่ผิดพลาดออกมาอีกต่อไป
หากคุณอ่านแค่ส่วนนี้อย่างเดียว ก็อ่านสองหน้านี้:
/opsx:propose จริงๆ (คำใบ้: ในแชท AI ไม่ใช่ในเทอร์มินัล) ส่วนนี้ทำให้คนส่วนใหญ่สับสนครั้งแรกหน้านี้มีความสำคัญมากกว่าที่ดูออกมา OpenSpec มีสองส่วน: เครื่องมือบรรทัดคำสั่งที่คุณเรียกใช้ในเทอร์มินัล และคำสั่งสแลชที่คุณส่งให้ผู้ช่วย AI ของคุณ การทราบว่าอันไหนเป็นอันไหนจะช่วยให้คุณหลีกเลี่ยงความสับสนที่พบบ่อยที่สุด
นิสัยที่ดีที่สุดที่ควรสร้างก่อน: เมื่อคุณไม่แน่ใจว่าจะสร้างอะไร ให้เริ่มด้วย
/opsx:exploreนี่คือพาร์ทเนอร์ในการคิดค้นที่ไม่มีความเสี่ยง ที่จะอ่านโค้ดของคุณ วิเคราะห์ตัวเลือก และทำให้ความคิดที่ยังไม่ชัดเจนเป็นแผนงานที่แน่นอนก่อนที่จะมีอาร์ติแฟกต์หรือโค้ดใดๆ คู่มือ สำรวจก่อน อธิบายเหตุผลทั้งหมด
ฉันใหม่ทั้งหมด เริ่มต้นด้วย เริ่มต้นใช้งาน แล้วดูเบื้องต้น แนวคิดหลักโดยสังเขป เมื่อเจอสิ่งที่ยังไม่เข้าใจ คำถามที่พบบ่อย และ พจนานุกรม จะอยู่ใกล้ๆ
ฉันมีปัญหาแต่ยังไม่มีแผน นี่เป็นกรณีที่พบบ่อย และมีคำตอบเฉพาะสำหรับกรณีนี้: สำรวจก่อน ใช้ /opsx:explore คิดร่วมกับ AI ก่อนที่จะยืนยันที่จะทำอะไรก็ตาม
ฉันมีโค้ดเดิมขนาดใหญ่ คุณไม่จำเป็นต้องสร้างเอกสารทั้งหมด การใช้ OpenSpec ในโปรเจกต์ที่มีอยู่แล้ว แสดงวิธีเริ่มต้นกับโค้ด brownfield จริงๆ โดยไม่ต้องพยายามทำทุกอย่างในครั้งเดียว
ฉันแค่ต้องการให้มันทำงานได้ ติดตั้ง รันคำสั่ง openspec init แล้วอ่าน วิธีทำงานของคำสั่ง เพื่อให้คำสั่งสแลชแรกของคุณถูกส่งไปยังสถานที่ที่ถูกต้อง
ฉันเรียนรู้จากตัวอย่าง หน้า ตัวอย่างและสูตรสำเร็จ จะพาคุณผ่านการเปลี่ยนแปลงจริงตั้งแต่ต้นจนจบ: ฟีเจอร์เล็กๆ แก้ไขบั๊ก รีแฟกเตอร์ และการสำรวจ
AI เพิ่งร่างแผนงานแล้ว ตอนนี้ทำอะไร? อ่านมัน ตรวจสอบการเปลี่ยนแปลง แสดงวิธีตรวจสอบในสองนาทีที่ช่วยให้คุณพบกับทางเลือกที่ผิดก่อนที่จะเสียค่าใช้จ่าย และ การเขียนข้อกำหนดที่ดี อธิบายองค์ประกอบของแผนงานที่คุ้มค่าที่จะอนุมัติ
ฉันทำงานเป็นทีม OpenSpec สำหรับทีม แสดงว่าการเปลี่ยนแปลงจะเชื่อมโยงกับ branch และ pull request อย่างไร และเพื่อนร่วมทีมจะตรวจสอบแผนงานก่อนที่จะเขียนโค้ด
ฉันมาจากเวิร์กโฟลว์เก่า คู่มือการย้ายข้อมูล อธิบายสิ่งที่เปลี่ยนแปลงและเหตุผล และรับรองว่าประโยชน์เดิมของคุณยังคงอยู่
ฉันต้องการปรับให้เหมาะกับกระบวนการของทีม การปรับแต่ง อธิบายการกำหนดค่าโปรเจกต์ สคีมที่กำหนดเอง และบริบทที่ใช้ร่วมกัน
มีอะไรผิดพลาด การแก้ปัญหา รวบรวมปัญหาที่คนส่วนใหญ่พบจริงๆ พร้อมวิธีแก้
| เอกสาร | ให้คุณอะไร |
|---|---|
| เริ่มต้นใช้งาน | ติดตั้ง เริ่มต้นใช้งาน และรันการเปลี่ยนแปลงแรกของคุณตั้งแต่ต้นจนจบ |
| สำรวจก่อน | ใช้ /opsx:explore คิดผ่านไอเดียก่อนที่จะยืนยันที่จะทำ |
| วิธีทำงานของคำสั่ง | สถานที่ที่คำสั่งสแลชทำงาน ความหมายของ "โหมดโต้ตอบ" เทอร์มินัล vs แชท |
| แนวคิดหลักโดยสังเขป | โมเดล Mentality ทั้งหมดในหนึ่งหน้า: ข้อกำหนด การเปลี่ยนแปลง Delta คลังเก็บ |
| ติดตั้ง | npm, pnpm, yarn, bun, Nix และวิธีตรวจสอบว่าติดตั้งสำเร็จ |
| เอกสาร | ให้คุณอะไร |
|---|---|
| เวิร์กโฟลว์ | รูปแบบทั่วไปและเวลาที่ควรใช้แต่ละคำสั่ง |
| ตัวอย่างและสูตรสำเร็จ | คำแนะนำการใช้จริงตั้งแต่ต้นจนจบ สามารถคัดลอกวางได้ทันที |
| การเขียนข้อกำหนดที่ดี | รูปแบบของข้อกำหนดและสถานการณ์ที่แข็งแกร่ง และวิธีปรับขนาดการเปลี่ยนแปลงให้เหมาะสม |
| ตรวจสอบการเปลี่ยนแปลง | การตรวจสอบในสองนาทีบนแผนงานที่ร่างแล้วก่อนที่จะเขียนโค้ดแม้แต่บรรทัดเดียว |
| OpenSpec สำหรับทีม | ว่าการเปลี่ยนแปลงจะเชื่อมโยงกับ branch pull request และการตรวจสอบอย่างไร |
| การใช้ OpenSpec ในโปรเจกต์ที่มีอยู่แล้ว | การนำ OpenSpec ไปใช้กับโค้ด brownfield ขนาดใหญ่ |
| แก้ไขและปรับปรุงการเปลี่ยนแปลง | อัปเดตอาร์ติแฟกต์ กลับไปแก้ไขปรับปรุง และปรับให้สอดคล้องกับการแก้ไขด้วยตนเอง |
| คำสั่ง | แหล่งอ้างอิงสำหรับทุกคำสั่งสแลช /opsx:* |
| CLI | แหล่งอ้างอิงสำหรับทุกคำสั่งเทอร์มินัล openspec |
| เอกสาร | ให้คุณอะไร |
|---|---|
| แนวคิด | คำอธิบายแบบยาวเกี่ยวกับ ข้อกำหนด การเปลี่ยนแปลง อาร์ติแฟกต์ สคีม และคลังเก็บ |
| เวิร์กโฟลว์ OPSX | ทำไมเวิร์กโฟลว์จึงเป็นแบบไหลลื่นแทนที่จะล็อกตามขั้นตอน พร้อมการวิเคราะห์สถาปัตยกรรมอย่างลึก |
| พจนานุกรม | คำจำกัดความของทุกคำศัพท์ในที่เดียว |
| เอกสาร | ให้คุณอะไร |
|---|---|
| การปรับแต่ง | การกำหนดค่าโปรเจกต์ สคีมที่กำหนดเอง และบริบทที่ใช้ร่วมกัน |
| หลายภาษา | สร้างอาร์ติแฟกต์ในภาษาที่ไม่ใช่ภาษาอังกฤษ |
| เครื่องมือที่รองรับ | เครื่องมือ AI มากกว่า 25 รายการที่ OpenSpec รองรับ และสถานที่ที่ไฟล์จะถูกบันทึก |
| เอกสาร | ให้คุณอะไร |
|---|---|
| คำถามที่พบบ่อย | คำตอบด่วนสำหรับคำถามที่คนถามบ่อยที่สุด |
| การแก้ปัญหา | วิธีแก้ปัญหาที่แน่นอนสำหรับข้อผิดพลาดที่แน่นอน |
| คู่มือการย้ายข้อมูล | การย้ายจากเวิร์กโฟลว์เก่าไปใช้ OPSX |
| เอกสาร | ให้คุณอะไร |
|---|---|
| Stores: คู่มือผู้ใช้ | วางแผนใน repo ของตัวเองเมื่องานของคุณข้าม repos หรือทีม |
| สัญญาเอเจนต์ (Agent Contract) | ส่วน CLI ที่สามารถอ่านโดยเครื่องที่เอเจนต์ขับเคลื่อน |
1. Install npm install -g @fission-ai/openspec@latest
2. Initialize cd your-project && openspec init
3. Explore (in your AI chat) /opsx:explore ← optional, but a great habit
4. Propose (in your AI chat) /opsx:propose add-dark-mode
5. Build (in your AI chat) /opsx:apply
6. Archive (in your AI chat) /opsx:archiveขั้นตอน 1 และ 2 จะเกิดขึ้นในเทอร์มินัลของคุณ ส่วนที่เหลือจะเกิดขึ้นในแชทของผู้ช่วย AI ของคุณ การแบ่งส่วนนี้เป็นสิ่งเดียวที่ควรจำ และ วิธีทำงานของคำสั่ง อธิบายเหตุผลอย่างแน่นอน ขั้นตอน 3 เป็นตัวเลือก แต่การเริ่มด้วย /opsx:explore เมื่อคุณไม่แน่ใจเป็นนิสัยที่คุ้มค่าที่ควรสร้างที่สุด
openspec feedback "your message" ส่งความคิดเห็นตรงจากเทอร์มินัลของคุณ (คำสั่งนี้จะเปิด GitHub issue อัตโนมัติ)พบกับสิ่งที่ผิดพลาด ล้าสมัย หรือสับสนในเอกสารเหล่านี้? นี่คือบั๊ก กรุณาเปิด issue หรือ PR การปรับปรุงเอกสารเป็นส่วนหนึ่งของข้อเสนอที่มีค่าที่สุดที่คุณสามารถทำได้