Skip to content

การย้ายไปยัง OPSX

คู่มือนี้ช่วยให้คุณเปลี่ยนผ่านจากขั้นตอนการทำงาน OpenSpec แบบเดิมไปยัง OPSX การย้ายถูกออกแบบมาให้ราบรื่น—งานที่มีอยู่ของคุณจะได้รับการเก็บรักษาไว้ และระบบใหม่มีความยืดหยุ่นมากขึ้น

มีอะไรเปลี่ยนแปลงบ้าง?

OPSX แทนที่ขั้นตอนการทำงานแบบล็อกเฟสเดิมด้วยวิธีการที่ยืดหยุ่นและเน้นการกระทำ นี่คือการเปลี่ยนแปลงหลัก:

แง่มุมแบบเดิมOPSX
คำสั่ง/openspec:proposal, /openspec:apply, /openspec:archiveค่าเริ่มต้น: /opsx:propose, /opsx:apply, /opsx:archive (คำสั่งขั้นตอนการทำงานที่ขยายเป็นตัวเลือก)
ขั้นตอนการทำงานสร้างเอกสารทั้งหมดพร้อมกันสร้างทีละส่วนหรือทั้งหมด—เป็นทางเลือกของคุณ
การย้อนกลับขั้นตอนที่ยุ่งยากเป็นธรรมชาติ—อัปเดตเอกสารใดก็ได้ตลอดเวลา
การปรับแต่งโครงสร้างที่ตายตัวขับเคลื่อนด้วย Schema ปรับแต่งได้อย่างเต็มที่
การกำหนดค่าCLAUDE.md พร้อมเครื่องหมาย + project.mdการกำหนดค่าที่เรียบร้อยใน openspec/config.yaml

การเปลี่ยนแปลงในปรัชญา: งานไม่ใช่เส้นตรง OPSX หยุดแกล้งทำเป็นว่ามันเป็นเช่นนั้น


ก่อนเริ่มต้น

งานที่มีอยู่ของคุณปลอดภัย

กระบวนการย้ายข้อมูลได้รับการออกแบบโดยคำนึงถึงการรักษาข้อมูล:

  • การเปลี่ยนแปลงที่กำลังดำเนินการอยู่ใน openspec/changes/ — ถูกเก็บรักษาไว้ทั้งหมด คุณสามารถดำเนินการต่อด้วยคำสั่ง OPSX ได้
  • การเปลี่ยนแปลงที่จัดเก็บแล้ว — ไม่ได้รับผลกระทบ ประวัติของคุณยังคงสมบูรณ์
  • ข้อกำหนดหลักใน openspec/specs/ — ไม่ได้รับผลกระทบ สิ่งเหล่านี้คือแหล่งข้อมูลที่ถูกต้องของคุณ
  • เนื้อหาของคุณใน CLAUDE.md, AGENTS.md ฯลฯ — ถูกเก็บรักษาไว้ เฉพาะบล็อกเครื่องหมาย OpenSpec เท่านั้นที่ถูกลบออก สิ่งที่คุณเขียนไว้ทั้งหมดยังคงอยู่

สิ่งที่ถูกลบออก

เฉพาะไฟล์ที่จัดการโดย OpenSpec ซึ่งกำลังจะถูกแทนที่เท่านั้น:

สิ่งที่ทำไม
ไดเรกทอรี/ไฟล์คำสั่งแบบ slash แบบเดิมถูกแทนที่ด้วยระบบทักษะใหม่
openspec/AGENTS.mdตัวกระตุ้นเวิร์กโฟลว์ที่ล้าสมัยแล้ว
เครื่องหมาย OpenSpec ใน CLAUDE.md, AGENTS.md ฯลฯไม่จำเป็นอีกต่อไป

ตำแหน่งคำสั่งเดิมตามเครื่องมือ (ตัวอย่าง—เครื่องมือของคุณอาจแตกต่างกัน):

  • Claude Code: .claude/commands/openspec/
  • Cursor: .cursor/commands/openspec-*.md
  • Windsurf: .windsurf/workflows/openspec-*.md
  • Cline: .clinerules/workflows/openspec-*.md
  • Roo: .roo/commands/openspec-*.md
  • GitHub Copilot: .github/prompts/openspec-*.prompt.md (เฉพาะส่วนเสริม IDE; ไม่รองรับใน Copilot CLI)
  • และเครื่องมืออื่นๆ (Augment, Continue, Amazon Q ฯลฯ)

การย้ายข้อมูลจะตรวจจับเครื่องมือที่คุณได้กำหนดค่าไว้และล้างไฟล์เดิมของเครื่องมือเหล่านั้น

รายการที่ลบออกอาจดูยาว แต่ทั้งหมดนี้เป็นไฟล์ที่ OpenSpec สร้างขึ้นเดิม เนื้อหาของคุณเองจะไม่ถูกลบ

สิ่งที่ต้องให้ความสนใจ

มีไฟล์หนึ่งที่ต้องย้ายด้วยตนเอง:

openspec/project.md — ไฟล์นี้ไม่ได้ถูกลบโดยอัตโนมัติเพราะอาจมีบริบทของโปรเจกต์ที่คุณเขียนไว้ คุณจะต้อง:

  1. ตรวจสอบเนื้อหาของมัน
  2. ย้ายบริบทที่มีประโยชน์ไปยัง openspec/config.yaml (ดูคำแนะนำด้านล่าง)
  3. ลบไฟล์เมื่อพร้อม

เหตุผลที่เราทำการเปลี่ยนแปลงนี้:

project.md แบบเดิมเป็นแบบเชิงรับ—ตัวแทนอาจอ่านมัน อาจไม่อ่าน อาจลืมสิ่งที่อ่าน เราพบว่าความน่าเชื่อถือไม่สม่ำเสมอ

บริบทของ config.yaml ใหม่จะ ถูกฉีดเข้าไปในทุกคำขอการวางแผนของ OpenSpec ซึ่งหมายความว่าข้อตกลง เทคโนโลยี และกฎของโปรเจกต์ของคุณจะปรากฏอยู่เสมอเมื่อ AI กำลังสร้างชิ้นงาน ความน่าเชื่อถือสูงขึ้น

การแลกเปลี่ยน:

เนื่องจากบริบทถูกฉีดเข้าไปในทุกคำขอ คุณจะต้องกระชับ ให้ความสำคัญกับสิ่งที่สำคัญจริงๆ:

  • เทคโนโลยีและข้อตกลงหลัก
  • ข้อจำกัดที่ไม่ชัดเจนที่ AI จำเป็นต้องรู้
  • กฎที่มักถูกเพิกเฉยไปก่อนหน้านี้

ไม่ต้องกังวลว่าจะต้องสมบูรณ์แบบ เรายังคงเรียนรู้ว่าอะไรดีที่สุดที่นี่ และเราจะปรับปรุงวิธีการฉีดบริบทในขณะที่เราทดลอง


การเรียกใช้การย้ายข้อมูล

ทั้ง openspec init และ openspec update จะตรวจจับไฟล์เดิมและนำทางคุณผ่านกระบวนการล้างเดียวกัน ใช้คำสั่งใดก็ได้ที่เหมาะกับสถานการณ์ของคุณ:

  • การติดตั้งใหม่จะใช้โปรไฟล์ core (propose, explore, apply, archive) โดยค่าเริ่มต้น
  • การติดตั้งที่ย้ายแล้วจะเก็บรักษาเวิร์กโฟลว์ที่คุณติดตั้งไว้ก่อนหน้าโดยการเขียนโปรไฟล์ custom เมื่อจำเป็น

การใช้ openspec init

เรียกใช้คำสั่งนี้หากคุณต้องการเพิ่มเครื่องมือใหม่หรือกำหนดค่าเครื่องมือที่ตั้งค่าไว้ใหม่:

bash
openspec init

คำสั่ง init จะตรวจจับไฟล์เดิมและนำทางคุณผ่านการล้าง:

กำลังอัปเกรดเป็น OpenSpec ใหม่

OpenSpec ตอนนี้ใช้ทักษะตัวแทน ซึ่งเป็นมาตรฐานที่เกิดขึ้นใหม่ในตัวแทนเขียนโค้ด
สิ่งนี้จะทำให้การตั้งค่าของคุณง่ายขึ้นในขณะที่ยังคงทำงานเหมือนเดิม

ไฟล์ที่ต้องลบออก
ไม่มีเนื้อหาผู้ใช้ที่ต้องเก็บรักษา:
  • .claude/commands/openspec/
  • openspec/AGENTS.md

ไฟล์ที่ต้องอัปเดต
เครื่องหมาย OpenSpec จะถูกลบออก เนื้อหาของคุณจะถูกเก็บรักษา:
  • CLAUDE.md
  • AGENTS.md

ต้องให้ความสนใจ
  • openspec/project.md
    เราจะไม่ลบไฟล์นี้ มันอาจมีบริบทโปรเจกต์ที่มีประโยชน์

    openspec/config.yaml ใหม่มีส่วน "context:" สำหรับบริบทการวางแผน
    สิ่งนี้จะถูกใส่ในทุกคำขอของ OpenSpec และทำงานได้น่าเชื่อถือกว่า
    วิธี project.md แบบเดิม

    ตรวจสอบ project.md ย้ายเนื้อหาที่มีประโยชน์ไปยังส่วน context ของ config.yaml
    จากนั้นลบไฟล์เมื่อพร้อม

? อัปเกรดและล้างไฟล์เดิม? (Y/n)

สิ่งที่เกิดขึ้นเมื่อคุณตอบตกลง:

  1. ไดเรกทอรีคำสั่งแบบ slash แบบเดิมจะถูกลบออก
  2. เครื่องหมาย OpenSpec จะถูกนำออกจาก CLAUDE.md, AGENTS.md ฯลฯ (เนื้อหาของคุณยังคงอยู่)
  3. openspec/AGENTS.md จะถูกลบ
  4. ทักษะใหม่จะถูกติดตั้งใน .claude/skills/
  5. openspec/config.yaml จะถูกสร้างขึ้นด้วยสคีมาเริ่มต้น

การใช้ openspec update

เรียกใช้คำสั่งนี้หากคุณต้องการย้ายข้อมูลและรีเฟรชเครื่องมือที่มีอยู่ของคุณเป็นเวอร์ชันล่าสุด:

bash
openspec update

คำสั่ง update ยังตรวจจับและล้างไฟล์เดิม แล้วรีเฟรชทักษะ/คำสั่งที่สร้างขึ้นให้ตรงกับโปรไฟล์และการตั้งค่าการส่งมอบปัจจุบันของคุณ

สภาพแวดล้อมแบบไม่โต้ตอบ / CI

สำหรับการย้ายข้อมูลแบบสคริปต์:

bash
openspec init --force --tools claude

เครื่องหมาย --force จะข้ามพรอมต์และยอมรับการล้างโดยอัตโนมัติ


การย้าย project.md ไป config.yaml

openspec/project.md แบบเดิมเป็นไฟล์ markdown รูปแบบอิสระสำหรับบริบทโปรเจกต์ openspec/config.yaml ใหม่มีโครงสร้างและ—ที่สำคัญ—ถูกฉีดเข้าไปในทุกคำขอการวางแผน ดังนั้นข้อตกลงของคุณจะปรากฏอยู่เสมอเมื่อ AI ทำงาน

ก่อน (project.md)

markdown
# Project Context

This is a TypeScript monorepo using React and Node.js.
We use Jest for testing and follow strict ESLint rules.
Our API is RESTful and documented in docs/api.md.

## Conventions

- All public APIs must maintain backwards compatibility
- New features should include tests
- Use Given/When/Then format for specifications

หลัง (config.yaml)

yaml
schema: spec-driven

context: |
  Tech stack: TypeScript, React, Node.js
  Testing: Jest with React Testing Library
  API: RESTful, documented in docs/api.md
  We maintain backwards compatibility for all public APIs

rules:
  proposal:
    - Include rollback plan for risky changes
  specs:
    - Use Given/When/Then format for scenarios
    - Reference existing patterns before inventing new ones
  design:
    - Include sequence diagrams for complex flows

ความแตกต่างหลัก

project.mdconfig.yaml
Markdown รูปแบบอิสระYAML ที่มีโครงสร้าง
ข้อความก้อนเดียวแยกบริบทและกฎตามชิ้นงาน
ไม่ชัดเจนว่าใช้เมื่อใดบริบทปรากฏในทุกชิ้นงาน; กฎปรากฏเฉพาะในชิ้นงานที่ตรงกันเท่านั้น
ไม่มีการเลือกสคีมาฟิลด์ schema: ชัดเจนจะตั้งค่าเวิร์กโฟลว์เริ่มต้น

สิ่งที่ควรเก็บ สิ่งที่ควรทิ้ง

เมื่อย้ายข้อมูล ให้เลือกอย่างระมัดระวัง ถามตัวเองว่า: "AI ต้องการสิ่งนี้สำหรับ ทุก คำขอการวางแผนหรือไม่?"

ผู้สมัครที่ดีสำหรับ context:

  • เทคโนโลยี (ภาษา แฟรมเวิร์ก ฐานข้อมูล)
  • รูปแบบสถาปัตยกรรมหลัก (มอนิโรวิว ไมโครเซอร์วิส ฯลฯ)
  • ข้อจำกัดที่ไม่ชัดเจน ("เราไม่สามารถใช้ไลบรารี X เพราะ...")
  • ข้อตกลงที่สำคัญที่มักถูกเพิกเฉย

ย้ายไป rules: แทน

  • การจัดรูปแบบเฉพาะชิ้นงาน ("ใช้ Given/When/Then ในข้อกำหนด")
  • เกณฑ์การตรวจสอบ ("ข้อเสนอต้องรวมแผนย้อนกลับ")
  • สิ่งเหล่านี้ปรากฏเฉพาะในชิ้นงานที่ตรงกัน ทำให้คำขออื่นเบาลง

ละเว้นทั้งหมด

  • แนวทางปฏิบัติที่ดีทั่วไปที่ AI รู้อยู่แล้ว
  • คำอธิบายที่ยืดยาวที่สามารถสรุปได้
  • บริบททางประวัติศาสตร์ที่ไม่ส่งผลต่อการทำงานปัจจุบัน

ขั้นตอนการย้ายข้อมูล

  1. สร้าง config.yaml (ถ้ายังไม่ได้สร้างโดย init):

    yaml
    schema: spec-driven
  2. เพิ่มบริบทของคุณ (กระชับ—สิ่งนี้จะเข้าไปในทุกคำขอ):

    yaml
    context: |
      ข้อมูลพื้นฐานโปรเจกต์ของคุณอยู่ที่นี่
      ให้ความสำคัญกับสิ่งที่ AI จำเป็นต้องรู้จริงๆ
  3. เพิ่มกฎตามชิ้นงาน (ไม่บังคับ):

    yaml
    rules:
      proposal:
        - คำแนะนำเฉพาะข้อเสนอของคุณ
      specs:
        - กฎการเขียนข้อกำหนดของคุณ
  4. ลบ project.md เมื่อคุณย้ายเนื้อหาที่มีประโยชน์ทั้งหมดแล้ว

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

ต้องการความช่วยเหลือ? ใช้พรอมต์นี้

หากคุณไม่แน่ใจว่าจะกลั่นกรอง project.md ของคุณอย่างไร ให้ถามผู้ช่วย AI ของคุณ:

ฉันกำลังย้ายจาก project.md แบบเดิมของ OpenSpec ไปยังรูปแบบ config.yaml ใหม่

นี่คือ project.md ปัจจุบันของฉัน:
[วางเนื้อหา project.md ของคุณ]

ช่วยฉันสร้าง config.yaml ที่มี:
1. ส่วน `context:` ที่กระชับ (สิ่งนี้จะถูกฉีดเข้าไปในทุกคำขอการวางแผน ดังนั้นจงกระชับ—ให้ความสำคัญกับเทคโนโลยี ข้อจำกัดหลัก และข้อตกลงที่มักถูกเพิกเฉย)
2. `rules:` สำหรับชิ้นงานเฉพาะหากมีเนื้อหาเฉพาะชิ้นงาน (เช่น "ใช้ Given/When/Then" ควรอยู่ในกฎของ specs ไม่ใช่บริบทสากล)

ละเว้นสิ่งทั่วไปที่โมเดล AI รู้อยู่แล้ว จงเด็ดขาดเกี่ยวกับความกระชับ

AI จะช่วยคุณระบุว่าสิ่งใดจำเป็น vs. สิ่งใดสามารถตัดทอนได้


คำสั่งใหม่

ความพร้อมใช้งานของคำสั่งขึ้นอยู่กับโปรไฟล์:

ค่าเริ่มต้น (โปรไฟล์ core):

คำสั่งวัตถุประสงค์
/opsx:proposeสร้างการเปลี่ยนแปลงและสร้างชิ้นงานการวางแผนในขั้นตอนเดียว
/opsx:exploreคิดผ่านความคิดโดยไม่มีโครงสร้าง
/opsx:applyดำเนินการตามงานจาก tasks.md
/opsx:archiveทำให้สมบูรณ์และจัดเก็บการเปลี่ยนแปลง

เวิร์กโฟลว์ที่ขยาย (การเลือกแบบกำหนดเอง):

คำสั่งวัตถุประสงค์
/opsx:newเริ่มโครงสร้างการเปลี่ยนแปลงใหม่
/opsx:continueสร้างชิ้นงานถัดไป (ทีละชิ้น)
/opsx:ffเร่ง—สร้างชิ้นงานการวางแผนทั้งหมดพร้อมกัน
/opsx:verifyตรวจสอบว่าการดำเนินการตรงกับข้อกำหนด
/opsx:syncดูตัวอย่าง/ผสานข้อกำหนดโดยไม่ต้องจัดเก็บ
/opsx:bulk-archiveจัดเก็บการเปลี่ยนแปลงหลายรายการพร้อมกัน
/opsx:onboardเวิร์กโฟลว์การเริ่มต้นใช้งานแบบแนะนำทีละขั้นตอน

เปิดใช้คำสั่งที่ขยายด้วย openspec config profile จากนั้นเรียกใช้ openspec update

การแมปคำสั่งจากแบบเดิม

แบบเดิมที่เทียบเท่า OPSX
/openspec:proposal/opsx:propose (ค่าเริ่มต้น) หรือ /opsx:new แล้ว /opsx:ff (แบบขยาย)
/openspec:apply/opsx:apply
/openspec:archive/opsx:archive

ความสามารถใหม่

ความสามารถเหล่านี้เป็นส่วนหนึ่งของชุดคำสั่งเวิร์กโฟลว์ที่ขยาย

การสร้างชิ้นงานแบบละเอียด:

/opsx:continue

สร้างชิ้นงานหนึ่งชิ้นตามการพึ่งพา ใช้สิ่งนี้เมื่อคุณต้องการตรวจสอบทุกขั้นตอน

โหมดสำรวจ:

/opsx:explore

คิดผ่านความคิดกับผู้ร่วมงานก่อนที่จะมุ่งมั่นกับการเปลี่ยนแปลง


เข้าใจสถาปัตยกรรมใหม่

จากขั้นตอนที่ล็อกไว้สู่ความยืดหยุ่น

ขั้นตอนการทำงานเดิมบังคับให้ก้าวไปข้างหน้าแบบเส้นตรง:

┌──────────────┐      ┌──────────────┐      ┌──────────────┐
│   PLANNING   │ ───► │ IMPLEMENTING │ ───► │   ARCHIVING  │
│    PHASE     │      │    PHASE     │      │    PHASE     │
└──────────────┘      └──────────────┘      └──────────────┘

หากคุณอยู่ในขั้นตอนการนำไปใช้แล้วพบว่าการออกแบบผิดพลาด?
แย่แล้ว ประตูขั้นตอนไม่ได้อนุญาตให้คุณย้อนกลับได้ง่ายๆ

OPSX ใช้การกระทำ (actions) แทนขั้นตอน (phases):

         ┌───────────────────────────────────────────────┐
         │           ACTIONS (not phases)                │
         │                                               │
         │     new ◄──► continue ◄──► apply ◄──► archive │
         │      │          │           │             │   │
         │      └──────────┴───────────┴─────────────┘   │
         │                    any order                  │
         └───────────────────────────────────────────────┘

แผนภาพการพึ่งพา

สิ่งที่สร้างขึ้น (artifacts) ก่อตัวเป็นแผนภาพแบบมีทิศทาง การพึ่งพาเป็นตัวเปิดใช้งาน ไม่ใช่ประตูกั้น:

                        proposal
                       (root node)

              ┌─────────────┴─────────────┐
              │                           │
              ▼                           ▼
           specs                       design
        (requires:                  (requires:
         proposal)                   proposal)
              │                           │
              └─────────────┬─────────────┘


                         tasks
                     (requires:
                     specs, design)

เมื่อคุณรัน /opsx:continue มันจะตรวจสอบว่าสิ่งใดพร้อมแล้วและเสนอสิ่งที่สร้างขึ้นถัดไป คุณยังสามารถสร้างสิ่งที่สร้างขึ้นหลายรายการที่พร้อมแล้วได้ในลำดับใดก็ได้

ทักษะ (Skills) เทียบกับ คำสั่ง (Commands)

ระบบเดิมใช้ไฟล์คำสั่งเฉพาะสำหรับเครื่องมือ:

.claude/commands/openspec/
├── proposal.md
├── apply.md
└── archive.md

OPSX ใช้มาตรฐาน skills ที่กำลังเกิดขึ้น:

.claude/skills/
├── openspec-explore/SKILL.md
├── openspec-new-change/SKILL.md
├── openspec-continue-change/SKILL.md
├── openspec-apply-change/SKILL.md
└── ...

ทักษะได้รับการยอมรับในเครื่องมือเขียนโค้ด AI หลายตัวและให้ข้อมูลเมตาที่สมบูรณ์กว่า


การดำเนินการต่อการเปลี่ยนแปลงที่มีอยู่

การเปลี่ยนแปลงที่คุณกำลังดำเนินการอยู่ทำงานร่วมกับคำสั่ง OPSX ได้อย่างราบรื่น

มีการเปลี่ยนแปลงที่ใช้งานอยู่จากขั้นตอนเดิมหรือไม่?

/opsx:apply add-my-feature

OPSX อ่านสิ่งที่สร้างขึ้นที่มีอยู่และดำเนินการต่อจากจุดที่คุณหยุดไว้

ต้องการเพิ่มสิ่งที่สร้างขึ้นเพิ่มเติมในการเปลี่ยนแปลงที่มีอยู่หรือไม่?

/opsx:continue add-my-feature

แสดงสิ่งที่พร้อมจะสร้างโดยอ้างอิงจากสิ่งที่มีอยู่แล้ว

ต้องการดูสถานะ?

bash
openspec status --change add-my-feature

ระบบการกำหนดค่าใหม่

โครงสร้าง config.yaml

yaml
# Required: Default schema for new changes
schema: spec-driven

# Optional: Project context (max 50KB)
# Injected into ALL artifact instructions
context: |
  Your project background, tech stack,
  conventions, and constraints.

# Optional: Per-artifact rules
# Only injected into matching artifacts
rules:
  plan:
    - Include rollback plan
  specs:
    - Use Given/When/Then format
  design:
    - Document fallback strategies
  tasks:
    - Break into 2-hour maximum chunks

การแก้ไข Schema

เมื่อกำหนดว่าจะใช้ schema ใด OPSX จะตรวจสอบตามลำดับ:

  1. แฟล็ก CLI: --schema <name> (ลำดับความสำคัญสูงสุด)
  2. ข้อมูลเมตาของการเปลี่ยนแปลง: .openspec.yaml ในไดเรกทอรีของการเปลี่ยนแปลง
  3. การกำหนดค่าโปรเจกต์: openspec/config.yaml
  4. ค่าเริ่มต้น: spec-driven

Schema ที่มีอยู่

Schemaสิ่งที่สร้างขึ้นเหมาะสำหรับ
spec-drivenproposal → specs → design → tasksโปรเจกต์ส่วนใหญ่

แสดง schema ที่มีอยู่ทั้งหมด:

bash
openspec schemas

Schema แบบกำหนดเอง

สร้างขั้นตอนการทำงานของคุณเอง:

bash
openspec schema init my-workflow

หรือแยกสาขาจากที่มีอยู่:

bash
openspec schema fork spec-driven my-workflow

ดูรายละเอียดที่ การปรับแต่ง


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

"Legacy files detected in non-interactive mode"

คุณกำลังรันในสภาพแวดล้อม CI หรือแบบไม่โต้ตอบ ใช้:

bash
openspec init --force

คำสั่งไม่ปรากฏหลังการย้ายข้อมูล

รีสตาร์ท IDE ของคุณ ทักษะจะถูกตรวจจับเมื่อเริ่มต้น

"Unknown artifact ID in rules"

ตรวจสอบว่าคีย์ rules: ตรงกับ ID ของสิ่งที่สร้างขึ้นใน schema ของคุณ:

  • spec-driven: proposal, specs, design, tasks

รันคำสั่งนี้เพื่อดู ID ของสิ่งที่สร้างขึ้นที่ถูกต้อง:

bash
openspec schemas --json

การกำหนดค่าไม่ถูกนำไปใช้

  1. ตรวจสอบให้แน่ใจว่าไฟล์อยู่ที่ openspec/config.yaml (ไม่ใช่ .yml)
  2. ตรวจสอบไวยากรณ์ YAML
  3. การเปลี่ยนแปลงการกำหนดค่าจะมีผลทันที—ไม่ต้องรีสตาร์ท

project.md ไม่ได้ถูกย้ายข้อมูล

ระบบจงใจเก็บรักษา project.md ไว้เนื่องจากอาจมีเนื้อหาที่คุณกำหนดเอง ตรวจสอบด้วยตนเอง ย้ายส่วนที่มีประโยชน์ไปที่ config.yaml แล้วลบมัน

ต้องการดูว่าจะมีการล้างอะไรบ้าง?

รัน init แล้วปฏิเสธคำแนะนำการล้าง—คุณจะเห็นสรุปการตรวจจับทั้งหมดโดยไม่มีการเปลี่ยนแปลงใดๆ


สรุปอ้างอิงด่วน

ไฟล์หลังการย้ายข้อมูล

project/
├── openspec/
│   ├── specs/                    # ไม่เปลี่ยนแปลง
│   ├── changes/                  # ไม่เปลี่ยนแปลง
│   │   └── archive/              # ไม่เปลี่ยนแปลง
│   └── config.yaml               # ใหม่: การกำหนดค่าโปรเจกต์
├── .claude/
│   └── skills/                   # ใหม่: ทักษะ OPSX
│       ├── openspec-propose/     # โปรไฟล์แกนกลางเริ่มต้น
│       ├── openspec-explore/
│       ├── openspec-apply-change/
│       └── ...                   # โปรไฟล์ที่ขยายเพิ่ม new/continue/ff/ฯลฯ
├── CLAUDE.md                     # ลบเครื่องหมาย OpenSpec แล้ว เนื้อหาของคุณยังคงอยู่
└── AGENTS.md                     # ลบเครื่องหมาย OpenSpec แล้ว เนื้อหาของคุณยังคงอยู่

สิ่งที่หายไป

  • .claude/commands/openspec/ — ถูกแทนที่ด้วย .claude/skills/
  • openspec/AGENTS.md — ล้าสมัยแล้ว
  • openspec/project.md — ย้ายไปที่ config.yaml แล้วลบ
  • บล็อกเครื่องหมาย OpenSpec ใน CLAUDE.md, AGENTS.md ฯลฯ

สรุปคำสั่ง

text
/opsx:propose      เริ่มต้นอย่างรวดเร็ว (โปรไฟล์แกนกลางเริ่มต้น)
/opsx:apply        ดำเนินการตามงาน
/opsx:archive      เสร็จสิ้นและเก็บถาวร

# ขั้นตอนการทำงานที่ขยาย (หากเปิดใช้งาน):
/opsx:new          สร้างโครงสร้างการเปลี่ยนแปลง
/opsx:continue     สร้างสิ่งที่สร้างขึ้นถัดไป
/opsx:ff           สร้างสิ่งที่สร้างขึ้นสำหรับการวางแผน

ขอความช่วยเหลือ