ข้ามไปยังเนื้อหา

การมีส่วนร่วมในการสร้างปลั๊กอิน

คู่มือนี้อธิบายวิธีการสร้างปลั๊กอินใหม่และเพิ่มเข้าสู่ ตลาดกลาง f5-sales-demo

ปลั๊กอินทุกตัวอยู่ในไดเรกทอรีของตัวเองภายใต้ plugins/ และ ปฏิบัติตามโครงสร้างนี้:

  • โฟลเดอร์plugins/
    • โฟลเดอร์example-plugin/
      • โฟลเดอร์.claude-plugin/
        • plugin.json
      • โฟลเดอร์skills/
        • โฟลเดอร์example-skill/
          • SKILL.md
          • โฟลเดอร์references/
            • reference-data.md
      • โฟลเดอร์commands/
        • example-command.md
      • โฟลเดอร์agents/
        • example-agent.md
      • README.md
  1. สร้างไดเรกทอรีของปลั๊กอิน

    Terminal window
    mkdir -p plugins/example-plugin/.claude-plugin
    mkdir -p plugins/example-plugin/skills
    mkdir -p plugins/example-plugin/commands
  2. เขียน plugin.json

    สร้าง plugins/example-plugin/.claude-plugin/plugin.json:

    {
    "name": "example-plugin",
    "description": "What this plugin does",
    "version": "1.0.0",
    "author": {
    "name": "f5-sales-demo"
    },
    "homepage": "https://github.com/f5-sales-demo/marketplace/tree/main/plugins/example-plugin",
    "keywords": ["relevant", "keywords"],
    "license": "Apache-2.0",
    "repository": "https://github.com/f5-sales-demo/marketplace"
    }
  3. เพิ่ม skills

    สร้าง plugins/example-plugin/skills/example-skill/SKILL.md พร้อม frontmatter:

    ---
    name: example-skill
    description: One-line description of what this skill does
    ---
    Detailed instructions for Claude when this skill activates.

    วางข้อมูลอ้างอิงใดๆ ไว้ในไดเรกทอรีย่อย references/ ควบคู่กับ SKILL.md

  4. เพิ่ม commands

    สร้าง plugins/example-plugin/commands/example-command.md:

    ---
    description: What this command does
    argument_hint: "[optional-args]"
    allowed_tools:
    - Read
    - Glob
    - Grep
    ---
    Instructions for Claude when the user invokes this command.
  5. เพิ่มปลั๊กอินลงใน marketplace.json

    เพิ่มรายการเข้าไปในอาร์เรย์ plugins ใน .claude-plugin/marketplace.json:

    {
    "name": "example-plugin",
    "description": "What this plugin does",
    "version": "1.0.0",
    "author": { "name": "f5-sales-demo" },
    "source": "./plugins/example-plugin",
    "category": "productivity",
    "homepage": "https://github.com/f5-sales-demo/marketplace/tree/main/plugins/example-plugin",
    "license": "Apache-2.0",
    "keywords": ["relevant", "keywords"],
    "tags": ["searchable", "tags"],
    "repository": "https://github.com/f5-sales-demo/marketplace"
    }
  6. ทดสอบในเครื่อง

    ทดสอบปลั๊กอินของคุณโดยไม่ต้องเผยแพร่ด้วยการชี้ Claude Code ไปยังไดเรกทอรีในเครื่อง:

    Terminal window
    claude --plugin-dir ./plugins/example-plugin

    ตรวจสอบว่า skills เปิดใช้งานในบริบทที่ถูกต้องและ commands ให้ผลลัพธ์ตามที่คาดหวัง

  1. สร้าง GitHub issue ที่อธิบายปลั๊กอินใหม่
  2. สร้าง feature branch จาก main
  3. เพิ่มไดเรกทอรีปลั๊กอินของคุณและอัปเดต marketplace.json
  4. เพิ่มหน้าเอกสารที่ docs/plugins/example-plugin.mdx
  5. เปิด PR ที่เชื่อมโยงไปยัง issue ด้วย Closes #N
  6. แก้ไขความล้มเหลวของ CI และรวมโค้ดหลังจากการตรวจสอบผ่าน
  • ทำให้ skills มุ่งเน้น — skill หนึ่งตัวควรทำสิ่งเดียวได้ดี
  • ใช้ไฟล์อ้างอิง — วางชุดข้อมูลขนาดใหญ่ สคีมา และ ตารางค้นหาไว้ใน references/ แทนที่จะฝังไว้ใน SKILL.md
  • กำหนดขอบเขตอย่างชาญฉลาด — ตรวจสอบการเปลี่ยนแปลงที่ยังไม่ได้ commit เพื่อ จำกัดชุดการทำงานเมื่อเป็นไปได้
  • จัดกลุ่มผลลัพธ์ตามความรุนแรง — ใช้ระดับ ERROR, WARNING และ INFO เพื่อให้ผู้ใช้สามารถจัดลำดับความสำคัญในการแก้ไขได้
  • เขียน README — รวมตัวอย่างการใช้งานและคำอธิบาย ว่า skill และ command แต่ละตัวทำอะไร