หากคุณกำลังมองหาวิธีที่จะนำความชาญฉลาดมาสู่ CI/CD pipeline ของคุณโดยไม่ต้องต่อสู้กับสคริปต์อัตโนมัติที่ซับซ้อน Claude Code Skills อาจเป็นสิ่งที่คุณต้องการอย่างแท้จริง เวิร์กโฟลว์ที่ขับเคลื่อนด้วย AI แบบกำหนดเองเหล่านี้จะทำให้ทุกอย่างเป็นไปโดยอัตโนมัติ ตั้งแต่การตรวจสอบความปลอดภัยก่อนการคอมมิตไปจนถึงการตรวจสอบการปรับใช้ คุณสามารถกำหนดสิ่งเหล่านี้ได้โดยใช้คำสั่งภาษาธรรมชาติ แทนที่จะเป็นสคริปต์เชลล์ที่เปราะบาง
สิ่งที่ทำให้ Claude Code Skills มีประสิทธิภาพสำหรับ CI/CD:
- การทำงานอัตโนมัติด้วยภาษาธรรมชาติ: กำหนดเวิร์กโฟลว์ด้วยภาษาอังกฤษธรรมดา ไม่ใช่ YAML ที่ซับซ้อน
- การตัดสินใจอย่างชาญฉลาด: AI สามารถวิเคราะห์บริบท แนะนำวิธีแก้ไข และปรับให้เข้ากับสถานการณ์ต่างๆ ได้
- เวิร์กโฟลว์ที่นำกลับมาใช้ใหม่ได้: สร้างครั้งเดียว เรียกใช้ได้ทุกที่ด้วยคำสั่งสแลชง่ายๆ
- การผสานรวมกับ Git: เชื่อมต่อโดยตรงกับเหตุการณ์ Git (pre-commit, pre-push, post-merge)
- ขยายได้: เข้าถึงเครื่องมือมากกว่า 15 รายการ รวมถึง Bash, การดำเนินการไฟล์, การค้นหาเว็บ และอื่นๆ
ในคู่มือนี้ เราจะสำรวจว่า Claude Code Skills คืออะไร วิธีสร้างเวิร์กโฟลว์ CI/CD แบบกำหนดเอง และตัวอย่างจริงที่คุณสามารถนำไปใช้ได้ในวันนี้
ทำความเข้าใจ Claude Code Skills
ทักษะคืออะไร?
Claude Code Skills คือเวิร์กโฟลว์ AI แบบกำหนดเองที่นำกลับมาใช้ใหม่ได้ ซึ่งขยายขีดความสามารถของ Claude Code ลองนึกภาพว่าเป็นสคริปต์อัจฉริยะที่สามารถ:
- ดำเนินการงานหลายขั้นตอนที่ซับซ้อนได้อย่างอิสระ
- ตัดสินใจโดยพิจารณาจากบริบท
- เข้าถึงไฟล์, รันคำสั่ง, ค้นหาเว็บ และอื่นๆ
- รักษาสถานะข้ามเซสชัน
- ผสานรวมกับเครื่องมือการพัฒนาที่มีอยู่ของคุณ

ต่างจากสคริปต์แบบดั้งเดิมที่ยึดตามตรรกะที่เข้มงวด ทักษะต่างๆ ใช้ความสามารถในการให้เหตุผลของ Claude เพื่อจัดการกับกรณีพิเศษ แนะนำการปรับปรุง และปรับให้เข้ากับเงื่อนไขที่เปลี่ยนแปลงไป
ทักษะทำงานอย่างไร
ทักษะทำงานผ่านกลไกหลักหลายอย่าง:
1. คำสั่งที่ผู้ใช้เรียกใช้ได้
# Run a skill with a slash command
/deploy-validation --env production
/security-review
/ci-pipeline-monitor --branch main
2. เครื่องมือที่อนุญาต
ทักษะระบุว่าสามารถใช้เครื่องมือใดได้บ้าง:
Bash: ดำเนินการคำสั่งเชลล์Read,Write,Edit: การดำเนินการกับไฟล์Glob,Grep: การดำเนินการค้นหาWebFetch,WebSearch: ข้อมูลภายนอกTask: สร้างเอเจนต์ย่อยสำหรับงานที่ซับซ้อน
3. ฮุกวงจรชีวิต
ทักษะสามารถเรียกใช้การดำเนินการ ณ จุดที่กำหนด:
SessionStart: เมื่อทักษะเริ่มต้นPreToolUse: ก่อนการดำเนินการเครื่องมือแต่ละครั้งPostToolUse: หลังการดำเนินการเครื่องมือแต่ละครั้งStop: เมื่อทักษะสิ้นสุดลง
4. ไฟล์วางแผน
ทักษะสามารถรักษาสถานะโดยใช้ไฟล์ Markdown เพื่อติดตามความคืบหน้า จัดเก็บผลการค้นหา และเปิดใช้งานเวิร์กโฟลว์ที่สามารถทำงานต่อได้
ทำไมทักษะถึงโดดเด่นใน CI/CD
สคริปต์ CI/CD แบบดั้งเดิมมักจะเสียหายได้ง่ายเมื่อเจอเงื่อนไขที่ไม่คาดคิด ทักษะนำความชาญฉลาดมาสู่การทำงานอัตโนมัติ:
- ความเข้าใจตามบริบท: สามารถอ่านบันทึก, เข้าใจข้อผิดพลาด และแนะนำวิธีแก้ไข
- พฤติกรรมที่ปรับเปลี่ยนได้: ปรับให้เข้ากับโครงสร้างและการกำหนดค่าโปรเจกต์ที่แตกต่างกัน
- การจัดทำเอกสารด้วยตนเอง: คำแนะนำภาษาธรรมชาติทำให้เวิร์กโฟลว์มีความโปร่งใส
- การกู้คืนข้อผิดพลาด: สามารถวินิจฉัยปัญหาและเสนอวิธีแก้ไขได้
- การเรียนรู้อย่างต่อเนื่อง: ปรับปรุงเวิร์กโฟลว์ตามผลลัพธ์
โครงสร้างทักษะ: ส่วนประกอบและโครงสร้าง
โครงสร้างไดเรกทอรี
ทักษะจะอยู่ใน .claude/skills/ โดยมีโครงสร้างดังนี้:
.claude/
├── skills/
│ ├── deploy-validation/
│ │ ├── SKILL.md # Skill manifest and instructions
│ │ ├── planning.md # State tracking (optional)
│ │ └── scripts/ # Helper scripts (optional)
│ ├── security-review/
│ │ └── SKILL.md
│ └── ci-monitor/
│ └── SKILL.md
└── skills.md # Index of all skills
ไฟล์ SKILL.md Manifest
ทุกทักษะเริ่มต้นด้วยส่วนหน้า YAML ตามด้วยคำแนะนำ Markdown:
---
name: deploy-validation
version: "1.0.0"
description: Validates deployment readiness with comprehensive checks
user-invocable: true
allowed-tools:
- Bash
- Read
- Edit
- Grep
- Glob
hooks:
SessionStart:
- matcher: command
command: "echo '[Deploy Validator] Starting pre-deployment checks...'"
Stop:
- matcher: command
command: "echo '[Deploy Validator] Checks complete. Review output above.'"
---
# Deployment Validation Skill
Comprehensive pre-deployment validation for production releases.
## Usage
```bash
/deploy-validation --env production
/deploy-validation --env staging --dry-run
/deploy-validation --skip-tests # Use cautiously
ทักษะนี้ทำอะไร
การตรวจสอบความถูกต้องก่อนการปรับใช้ที่ครอบคลุมสำหรับการเผยแพร่เวอร์ชันโปรดักชัน
การตรวจสอบสภาพแวดล้อม
- ตรวจสอบว่าตัวแปรสภาพแวดล้อมที่จำเป็นมีอยู่จริง
- ตรวจสอบไฟล์กำหนดค่า
- ยืนยันว่าการพึ่งพาบริการสามารถเข้าถึงได้
การตรวจสอบคุณภาพโค้ด
- รัน linting (ESLint, Pylint ฯลฯ)
- ตรวจสอบรูปแบบโค้ด
- ตรวจสอบว่าไม่มีคำสั่งดีบักหลงเหลืออยู่
การทดสอบ
- รันชุดการทดสอบหน่วย
- รันการทดสอบการผสานรวม
- ตรวจสอบเกณฑ์การครอบคลุมโค้ด
การตรวจสอบบิลด์
- คอมไพล์/สร้างแอปพลิเคชัน
- ตรวจสอบสิ่งประดิษฐ์ของบิลด์
- ตรวจสอบขนาดบันเดิลเทียบกับขีดจำกัด
การสแกนความปลอดภัย
- สแกนการพึ่งพาสำหรับช่องโหว่
- ตรวจสอบหาสิ่งที่เก็บเป็นความลับแบบฮาร์ดโค้ด
- ตรวจสอบสิทธิ์และการควบคุมการเข้าถึง
การตรวจสอบเอกสาร
- ตรวจสอบให้แน่ใจว่า CHANGELOG ได้รับการอัปเดตแล้ว
- ตรวจสอบว่าเอกสาร API ตรงกับโค้ด
- ตรวจสอบคู่มือการโยกย้ายข้อมูลหากจำเป็น
รายงานการปรับใช้
- สร้างรายงานที่ครอบคลุม
- บันทึกลงใน
deployment-reports/{timestamp}.md - ออกด้วยรหัสสถานะที่ระบุว่าผ่าน/ไม่ผ่าน
คำแนะนำสำหรับ Claude
เมื่อถูกเรียกใช้ ให้ทำตามขั้นตอนดังนี้:
- แยกวิเคราะห์อาร์กิวเมนต์จากบรรทัดคำสั่งเพื่อกำหนดสภาพแวดล้อมและตัวเลือก
- ตรวจสอบ git branch ปัจจุบันและ commit SHA
- ดำเนินการแต่ละขั้นตอนการตรวจสอบตามลำดับ
- สำหรับแต่ละความล้มเหลว ให้บันทึกปัญหาและดำเนินการต่อ (รวบรวมข้อผิดพลาดทั้งหมด)
- หลังจากตรวจสอบทั้งหมดแล้ว ให้สร้างรายงานสรุป
- หากการตรวจสอบที่สำคัญใดๆ ล้มเหลว ให้ออกด้วยรหัสข้อผิดพลาด 1
- หากการตรวจสอบทั้งหมดผ่าน ให้ออกด้วยรหัส 0 และแสดงข้อความสำเร็จ
---
## CI/CD Use Cases for Skills
### 1. Pre-Commit Validation
**ทักษะ: `/pre-commit-guard`**
ตรวจสอบการเปลี่ยนแปลงโดยอัตโนมัติก่อนการคอมมิต:
- การ Linting และการจัดรูปแบบ
- การสแกนความปลอดภัยสำหรับข้อมูลลับ
- การดำเนินการทดสอบหน่วย
- การตรวจสอบขนาดไฟล์
- การตรวจจับการเปลี่ยนแปลงที่ส่งผลกระทบ
**ประโยชน์**: ตรวจจับปัญหาได้ก่อนที่จะเข้าสู่ codebase
### 2. Pull Request Analysis
**ทักษะ: `/pr-review`**
การรีวิว PR อัจฉริยะที่:
- วิเคราะห์การเปลี่ยนแปลงโค้ดเพื่อหาปัญหาด้านคุณภาพ
- ตรวจสอบช่องโหว่ด้านความปลอดภัย
- ตรวจสอบการครอบคลุมการทดสอบ
- แนะนำการปรับปรุง
- สร้างความคิดเห็นรีวิว
**ประโยชน์**: การรีวิวโค้ดที่สอดคล้องและละเอียดถี่ถ้วน โดยไม่มีคอขวดจากคน
### 3. Automated Testing Workflows
**ทักษะ: `/test-runner`**
การดำเนินการทดสอบอัจฉริยะที่:
- ตรวจจับว่าการทดสอบใดเกี่ยวข้องกับการเปลี่ยนแปลง
- รันการทดสอบตามลำดับที่เหมาะสมที่สุด
- วิเคราะห์ความล้มเหลวและแนะนำวิธีแก้ไข
- สร้างรายงานความครอบคลุม
- ติดตามแนวโน้มประสิทธิภาพการทดสอบ
**ประโยชน์**: ได้รับข้อเสนอแนะที่เร็วขึ้นด้วยการเลือกการทดสอบอย่างชาญฉลาด
### 4. Deployment Validation
**ทักษะ: `/deploy-validator`**
การตรวจสอบก่อนการปรับใช้ รวมถึง:
- การตรวจสอบการกำหนดค่าสภาพแวดล้อม
- การตรวจสอบการพึ่งพา
- การตรวจสอบการโยกย้ายฐานข้อมูล
- การทดสอบความเข้ากันได้ของ API
- การตรวจจับประสิทธิภาพที่ถดถอย
**ประโยชน์**: ป้องกันความล้มเหลวในการปรับใช้ก่อนที่จะเกิดขึ้น
### 5. CI Pipeline Monitoring
**ทักษะ: `/ci-monitor`**
ตรวจสอบสถานะของไปป์ไลน์:
- ติดตามอัตราความสำเร็จของบิลด์
- ระบุการทดสอบที่ไม่เสถียร
- วิเคราะห์แนวโน้มประสิทธิภาพ
- แจ้งเตือนเมื่อประสิทธิภาพลดลง
- แนะนำการปรับปรุงประสิทธิภาพ
**ประโยชน์**: การบำรุงรักษาและการเพิ่มประสิทธิภาพไปป์ไลน์เชิงรุก
### 6. Release Automation
**ทักษะ: `/release-manager`**
ประสานงานกระบวนการเผยแพร่:
- การเพิ่มเวอร์ชัน
- การสร้าง Changelog
- การสร้างแท็ก
- การตรวจสอบสิ่งประดิษฐ์ของบิลด์
- การร่างบันทึกประจำรุ่น
**ประโยชน์**: การเผยแพร่ที่สอดคล้องและปราศจากข้อผิดพลาด
### 7. API Testing Automation
สำหรับทีมที่สร้าง API ให้ผสานรวม Claude Code Skills เข้ากับ [Apidog](https://apidog.com) เพื่อการตรวจสอบ API ที่ครอบคลุม:
- สร้างกรณีทดสอบ: สร้างการทดสอบ API จากข้อมูลจำเพาะ OpenAPI/Swagger
- รันการทดสอบอัตโนมัติ: ดำเนินการชุดทดสอบ Apidog ในไปป์ไลน์ของคุณ
- ตรวจสอบการตอบกลับ: ตรวจสอบรหัสสถานะ, สคีมา และเวลาตอบสนอง
- จำลองการพึ่งพา: ตั้งค่าเซิร์ฟเวอร์จำลองสำหรับการทดสอบแบบแยกส่วน
- ติดตามการครอบคลุม: ตรวจสอบการครอบคลุมการทดสอบปลายทาง API
**ตัวอย่างการผสานรวมทักษะ:**
```bash
/api-test-runner --collection ./tests/api-collection.json --env production
ประโยชน์: ตรวจจับการถดถอยของ API ก่อนการปรับใช้ด้วยการดีบักแบบเห็นภาพและรายงานละเอียด การผสานรวม CI/CD ของ Apidog ทำให้การเพิ่มการทดสอบ API เข้าไปในไปป์ไลน์ใดๆ เป็นเรื่องง่าย

การสร้างทักษะ CI/CD แรกของคุณ
มาสร้างทักษะที่ใช้งานได้จริง: เครื่องมือตรวจสอบความปลอดภัยที่ตรวจสอบโค้ดก่อนการคอมมิต
ขั้นตอนที่ 1: สร้างไดเรกทอรีทักษะ
mkdir -p .claude/skills/security-review
ขั้นตอนที่ 2: เขียน Skill Manifest
สร้างไฟล์ .claude/skills/security-review/SKILL.md:
---
name: security-review
version: "1.0.0"
description: Security scan for common vulnerabilities and secrets
user-invocable: true
allowed-tools:
- Bash
- Read
- Grep
- Glob
- Write
hooks:
SessionStart:
- matcher: command
command: "echo '[Security Review] Starting security scan...'"
Stop:
- matcher: command
command: "echo '[Security Review] Scan complete'"
---
# ทักษะการตรวจสอบความปลอดภัย
สแกนโค้ดเพื่อหาปัญหาด้านความปลอดภัยก่อนการคอมมิต
## การใช้งาน
```bash
/security-review # สแกนไฟล์ที่เปลี่ยนแปลงทั้งหมด
/security-review --all # สแกน codebase ทั้งหมด
/security-review --file src/auth.js # สแกนไฟล์เฉพาะ
รูปแบบการตรวจจับ
ทักษะนี้จะตรวจสอบหา:
ข้อมูลลับที่ฮาร์ดโค้ด
- คีย์ API
- รหัสผ่าน
- คีย์ส่วนตัว
- โทเค็นการเข้าถึง
ช่องโหว่ทั่วไป
- รูปแบบ SQL injection
- ช่องโหว่ XSS
- การแทรกคำสั่ง
- การเข้าถึงพาธที่ไม่ได้รับอนุญาต
การกำหนดค่าที่ไม่ปลอดภัย
- โหมดดีบักเปิดใช้งาน
- ค่าเริ่มต้นที่ไม่ปลอดภัย
- การยืนยันตัวตนหายไป
- การเข้ารหัสที่อ่อนแอ
ปัญหาการพึ่งพา
- แพ็คเกจที่มีช่องโหว่ที่ทราบ
- การพึ่งพาที่ล้าสมัย
- แพ็คเกจที่น่าสงสัย
คำแนะนำ
เมื่อถูกเรียกใช้:
กำหนดขอบเขตการสแกน
- หากมีแฟล็ก
--all: สแกน codebase ทั้งหมด - หากระบุ
--file: สแกนไฟล์นั้น - ค่าเริ่มต้น: สแกนเฉพาะไฟล์ที่จัดเตรียม/แก้ไขใน git
ค้นหาข้อมูลลับ
- ใช้ Grep เพื่อค้นหารูปแบบเช่น:
(api[_-]?key|password|secret|token)\s*[:=]\s*['"]\w+['"]-----BEGIN (RSA |)PRIVATE KEY------ รูปแบบข้อมูลลับทั่วไป (AWS, GitHub ฯลฯ)
- ละเว้นไฟล์ใน
.gitignore - ข้าม
node_modules,vendorฯลฯ
ตรวจสอบรูปแบบช่องโหว่
- SQL injection: SQL ดิบที่มีการต่อสตริง
- XSS: อินพุตของผู้ใช้ที่ไม่ได้ถูก escape ใน HTML
- Command injection: การรันเชลล์ด้วยอินพุตของผู้ใช้
- อ่านโค้ดด้วยเครื่องมือ Read เพื่อวิเคราะห์บริบท
สแกนการพึ่งพา
- ตรวจสอบ
package-lock.json,requirements.txtฯลฯ - ใช้ Bash เพื่อรันเครื่องมือสแกนความปลอดภัย:
npm auditสำหรับ Node.jspip-auditสำหรับ Pythonbundle auditสำหรับ Ruby
สร้างรายงาน
- แสดงรายการผลการค้นหาทั้งหมดพร้อม:
- พาธไฟล์และหมายเลขบรรทัด
- ประเภทปัญหาและความรุนแรง
- วิธีแก้ไขที่แนะนำ
- บันทึกลงใน
.claude/security-reports/{date}.md - แสดงสรุปในเทอร์มินัล
สถานะการออก
- ออก 0 หากไม่พบปัญหา
- ออก 1 หากมีปัญหาความรุนแรงสูง
- ออก 2 หากการสแกนไม่สามารถทำได้
### ขั้นตอนที่ 3: ลงทะเบียนทักษะ
เพิ่มลงใน `.claude/skills.md`:
```markdown
# ทักษะที่มี
## ความปลอดภัยและคุณภาพ
### /security-review
สแกนความปลอดภัยสำหรับช่องโหว่และข้อมูลลับ
- **เวอร์ชัน**: 1.0.0
- **การใช้งาน**: `/security-review [--all] [--file PATH]`
- **ควรใช้เมื่อ**: ก่อนการคอมมิต, ระหว่างการรีวิว PR
ขั้นตอนที่ 4: ทดสอบทักษะ
# ใน Claude Code
/security-review
ตอนนี้ Claude จะดำเนินการเวิร์กโฟลว์การตรวจสอบความปลอดภัย โดยตรวจสอบโค้ดของคุณเพื่อหาปัญหา
รูปแบบทักษะขั้นสูง
รูปแบบที่ 1: เวิร์กโฟลว์ที่มีสถานะพร้อมไฟล์วางแผน
สำหรับกระบวนการหลายขั้นตอน ให้ใช้ไฟล์วางแผนเพื่อติดตามความคืบหน้า:
---
name: release-manager
version: "1.0.0"
user-invocable: true
allowed-tools:
- Bash
- Read
- Write
- Edit
---
# ตัวจัดการการเผยแพร่
จัดการกระบวนการเผยแพร่ที่สมบูรณ์
## การจัดการสถานะ
ทักษะนี้ใช้ `planning.md` เพื่อติดตามความคืบหน้าในการเผยแพร่:
```markdown
# ความคืบหน้าในการเผยแพร่ v2.5.0
## ระยะที่ 1: การตรวจสอบก่อนการเผยแพร่ [เสร็จสิ้น]
- [x] รันชุดการทดสอบทั้งหมด
- [x] ตรวจสอบความครอบคลุมของโค้ด > 80%
- [x] สแกนหาปัญหาด้านความปลอดภัย
## ระยะที่ 2: การเพิ่มเวอร์ชัน [กำลังดำเนินการ]
- [x] อัปเดต package.json
- [ ] อัปเดต CHANGELOG.md
- [ ] อัปเดตเอกสาร
## ระยะที่ 3: การสร้างและแท็ก [รอการดำเนินการ]
- [ ] สร้างบิลด์สำหรับโปรดักชัน
- [ ] รัน smoke tests
- [ ] สร้าง git tag
- [ ] พุชไปยัง registry
## ระยะที่ 4: หลังการเผยแพร่ [รอการดำเนินการ]
- [ ] สร้าง GitHub release
- [ ] อัปเดตบันทึกประจำรุ่น
- [ ] แจ้งเตือนทีม
คำแนะนำ
ตรวจสอบว่ามี planning.md อยู่หรือไม่
- หากมี: ดำเนินการต่อจากระยะที่ไม่สมบูรณ์ล่าสุด
- หากไม่มี: สร้างไฟล์วางแผนใหม่
ดำเนินการแต่ละระยะ:
- อัปเดตช่องทำเครื่องหมายเมื่อภารกิจเสร็จสมบูรณ์
- บันทึกความคืบหน้าหลังจากแต่ละขั้นตอน
- หากถูกขัดจังหวะ สามารถดำเนินการต่อได้ในภายหลัง
สำหรับแต่ละภารกิจ:
- ตรวจสอบข้อกำหนดเบื้องต้น
- ดำเนินการ
- ตรวจสอบผลลัพธ์
- อัปเดตไฟล์วางแผน
### รูปแบบที่ 2: เวิร์กโฟลว์แบบมีเงื่อนไข
ทักษะสามารถปรับเปลี่ยนตามประเภทโปรเจกต์ได้:
```markdown
## คำแนะนำ
1. **ตรวจจับประเภทโปรเจกต์**
- ตรวจสอบ `package.json` → โปรเจกต์ Node.js
- ตรวจสอบ `requirements.txt` → โปรเจกต์ Python
- ตรวจสอบ `Cargo.toml` → โปรเจกต์ Rust
2. **รันการทดสอบที่เหมาะสม**
- Node.js: `npm test`
- Python: `pytest`
- Rust: `cargo test`
3. **สร้างรายงานความครอบคลุม**
- Node.js: ใช้ Jest/Istanbul
- Python: ใช้ pytest-cov
- Rust: ใช้ tarpaulin
รูปแบบที่ 3: การดำเนินการแบบขนาน
สำหรับงานที่ไม่ขึ้นต่อกัน ให้รันพร้อมกัน:
## คำแนะนำ
1. **การตรวจสอบแบบขนาน** (รันพร้อมกัน):
- Linting (ESLint, Prettier)
- การตรวจสอบชนิดข้อมูล (TypeScript)
- การสแกนความปลอดภัย (npm audit)
- การสร้างเอกสาร
2. **รวบรวมผลลัพธ์**
- รอให้งานทั้งหมดเสร็จสมบูรณ์
- รวบรวมผลการค้นหา
- รายงานความล้มเหลวใดๆ
รูปแบบที่ 4: การตัดสินใจแบบโต้ตอบ
ทักษะสามารถขออินพุตจากผู้ใช้ได้:
## คำแนะนำ
1. **วิเคราะห์ความเสี่ยงในการปรับใช้**
- ตรวจสอบการเปลี่ยนแปลงที่ส่งผลกระทบ
- ตรวจสอบสคริปต์การโยกย้ายข้อมูล
- ประเมินความซับซ้อนของการย้อนกลับ
2. **หากตรวจพบความเสี่ยงสูง**
- นำเสนอผลการค้นหาให้ผู้ใช้
- ถาม: "ปรับใช้ต่อไปหรือไม่? (yes/no/cancel)"
- หาก yes: ดำเนินการปรับใช้
- หาก no: ยกเลิกและบันทึกการตัดสินใจ
- หาก cancel: ออกโดยไม่ดำเนินการ
3. **หากความเสี่ยงต่ำ**
- อนุมัติการปรับใช้โดยอัตโนมัติ
- บันทึกการตัดสินใจเพื่อการตรวจสอบ
การผสานรวมทักษะกับ GitHub Actions
วิธีที่ 1: การเรียกใช้ทักษะโดยตรง
เพิ่ม Claude Code เข้าไปในเวิร์กโฟลว์ GitHub Actions ของคุณ:
# .github/workflows/security-scan.yml
name: Security Scan
on:
pull_request:
branches: [main, develop]
jobs:
security-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install Claude Code
run: |
curl -fsSL https://install.claude.com | sh
- name: Run Security Review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude /security-review --all
- name: Upload Report
if: always()
uses: actions/upload-artifact@v3
with:
name: security-report
path: .claude/security-reports/
วิธีที่ 2: GitHub Action แบบกำหนดเอง
สร้าง action ที่นำกลับมาใช้ใหม่ได้:
# .github/actions/claude-skill/action.yml
name: 'Run Claude Code Skill'
description: 'Execute a Claude Code skill in CI'
inputs:
skill-name:
description: 'ชื่อทักษะที่จะรัน'
required: true
skill-args:
description: 'อาร์กิวเมนต์ที่จะส่งไปยังทักษะ'
required: false
default: ''
api-key:
description: 'คีย์ API ของ Anthropic'
required: true
runs:
using: 'composite'
steps:
- name: Setup Claude
shell: bash
run: |
curl -fsSL https://install.claude.com | sh
- name: Run Skill
shell: bash
env:
ANTHROPIC_API_KEY: ${{ inputs.api-key }}
run: |
claude /${{ inputs.skill-name }} ${{ inputs.skill-args }}
การใช้งานในเวิร์กโฟลว์:
# .github/workflows/deploy.yml
name: Deploy
on:
push:
branches: [main]
jobs:
validate-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Pre-Deployment Validation
uses: ./.github/actions/claude-skill
with:
skill-name: deploy-validation
skill-args: '--env production'
api-key: ${{ secrets.ANTHROPIC_API_KEY }}
- name: Deploy
if: success()
run: ./deploy.sh production
- name: Post-Deployment Check
uses: ./.github/actions/claude-skill
with:
skill-name: health-check
skill-args: '--url https://api.example.com'
api-key: ${{ secrets.ANTHROPIC_API_KEY }}
วิธีที่ 3: การทดสอบแบบ Matrix
รันทักษะในสภาพแวดล้อมหลายแห่ง:
# .github/workflows/test-matrix.yml
name: Test Matrix
on: [push, pull_request]
jobs:
test:
strategy:
matrix:
node-version: [16, 18, 20]
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Run Test Skill
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude /test-runner --node-version ${{ matrix.node-version }}
การผสานรวม Git Hooks
การตั้งค่า Git Hooks
Git hooks ช่วยให้ทักษะทำงานโดยอัตโนมัติเมื่อเกิดเหตุการณ์ Git
Pre-Commit Hook
ป้องกันการคอมมิตที่ไม่ดีก่อนที่จะเกิดขึ้น:
# .git/hooks/pre-commit
#!/bin/bash
echo "กำลังรันการตรวจสอบความปลอดภัยก่อนการคอมมิต..."
# รันการตรวจสอบความปลอดภัยของ Claude Code
claude /security-review
if [ $? -ne 0 ]; then
echo "ล้มเหลว: ตรวจพบปัญหาด้านความปลอดภัย การคอมมิตถูกบล็อก"
echo "แก้ไขปัญหาข้างต้น หรือใช้ 'git commit --no-verify' เพื่อข้าม (ไม่แนะนำ)"
exit 1
fi
echo "ผ่าน: การตรวจสอบความปลอดภัยผ่าน"
exit 0
ทำให้สามารถรันได้:
chmod +x .git/hooks/pre-commit
Pre-Push Hook
ตรวจสอบก่อนที่จะพุชไปยังรีโมต:
# .git/hooks/pre-push
#!/bin/bash
echo "กำลังรันการตรวจสอบก่อนการพุช..."
# รับ branch ที่กำลังถูกพุช
BRANCH=$(git rev-parse --abbrev-ref HEAD)
# รันการตรวจสอบที่แตกต่างกันตาม branch
if [ "$BRANCH" = "main" ]; then
echo "กำลังพุชไปยัง main - กำลังรันการตรวจสอบแบบเต็มรูปแบบ..."
claude /deploy-validation --env production
elif [ "$BRANCH" = "develop" ]; then
echo "กำลังพุชไปยัง develop - กำลังรันการตรวจสอบ staging..."
claude /deploy-validation --env staging
else
echo "Feature branch - กำลังรันการตรวจสอบอย่างรวดเร็ว..."
claude /quick-check
fi
if [ $? -ne 0 ]; then
echo "ล้มเหลว: การตรวจสอบล้มเหลว การพุชถูกบล็อก"
exit 1
fi
echo "ผ่าน: การตรวจสอบผ่าน"
exit 0
Post-Merge Hook
รันหลังจากรวม branch แล้ว:
# .git/hooks/post-merge
#!/bin/bash
echo "การตรวจสอบหลังการรวม..."
# ตรวจสอบว่าการพึ่งพาเปลี่ยนแปลงไปหรือไม่
if git diff-tree -r --name-only --no-commit-id HEAD@{1} HEAD | grep -q "package-lock.json"; then
echo "การพึ่งพาเปลี่ยนแปลง - กำลังรันการตรวจสอบความปลอดภัย..."
claude /dependency-audit
fi
# ตรวจสอบว่ามีการโยกย้ายฐานข้อมูลอยู่หรือไม่
if git diff-tree -r --name-only --no-commit-id HEAD@{1} HEAD | grep -q "migrations/"; then
echo "ตรวจพบการโยกย้ายข้อมูล - กำลังตรวจสอบ..."
claude /migration-validator
fi
exit 0
การผสานรวม Husky
สำหรับทีมที่ใช้ Husky ในการจัดการ git hooks:
// package.json
{
"husky": {
"hooks": {
"pre-commit": "claude /security-review && claude /lint-check",
"pre-push": "claude /test-runner --quick",
"post-merge": "claude /dependency-audit"
}
}
}
หรือสำหรับ Husky v6+:
# .husky/pre-commit
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
claude /security-review
claude /lint-check
สรุป
Claude Code Skills เปลี่ยน CI/CD จากสคริปต์ที่เปราะบางให้เป็นเวิร์กโฟลว์อัจฉริยะที่ปรับเปลี่ยนได้ โดยการรวมการให้เหตุผลของ AI เข้ากับการทำงานอัตโนมัติแบบดั้งเดิม ทักษะสามารถ:
- เข้าใจบริบทและปรับตัวเข้ากับสถานการณ์ต่างๆ
- แนะนำการปรับปรุงแทนที่จะเพียงแค่รายงานความล้มเหลว
- เรียนรู้จากรูปแบบใน codebase ของคุณ
- จัดทำเอกสารด้วยตนเองผ่านคำแนะนำภาษาธรรมชาติ
หาก CI/CD pipeline ของคุณมี API endpoints การรวม Claude Code Skills เข้ากับ Apidog จะมอบสิ่งที่ดีที่สุดให้คุณทั้งสองอย่าง:
| คุณสมบัติ | ประโยชน์ |
|---|---|
| การทดสอบ API แบบเห็นภาพ | สร้างกรณีทดสอบโดยไม่ต้องเขียนโค้ด |
| การนำเข้า OpenAPI | สร้างการทดสอบโดยอัตโนมัติจากข้อมูลจำเพาะของคุณ |
| เซิร์ฟเวอร์จำลอง | ทดสอบการผสานรวมก่อนที่แบ็กเอนด์จะพร้อมใช้งาน |
| CI/CD CLI | รันการทดสอบ Apidog ในไปป์ไลน์ใดก็ได้ |
| การทำงานร่วมกันเป็นทีม | แบ่งปันชุดการทดสอบกับทีมของคุณ |
พร้อมที่จะปรับปรุงเวิร์กโฟลว์ API ของคุณแล้วหรือยัง? ดาวน์โหลด Apidog ฟรี และสร้างชุดการทดสอบ API ชุดแรกของคุณได้ในไม่กี่นาที
