본문으로 건너뛰기

Skill Design Patterns

skill을 빠르게 시작하기 위한 다섯 가지 구조적 템플릿. 패턴을 하나 고르고, skillshare new로 템플릿을 생성한 다음, 거기서부터 커스터마이즈하세요.

빠른 시작

skillshare new my-skill -P <pattern>을 사용해 원하는 패턴의 템플릿을 생성하세요. 대화형 선택기를 원한다면 skillshare new my-skill을 실행하세요.


Part 1: 빠른 참조​

패턴 개요​

패턴하는 일사용 시점
Tool Wrapperagent에게 라이브러리/API 사용법을 가르침agent에게 도메인 특화 관례가 필요할 때
Generator템플릿으로부터 구조화된 출력을 생성함일관된 문서/코드 형식이 필요할 때
Reviewer체크리스트에 대해 점수를 매기거나 감사함코드 리뷰, 보안 감사, 품질 검사
Inversionagent가 행동하기 전에 사용자를 인터뷰함요구사항 수집, 프로젝트 계획
Pipeline체크포인트가 있는 다단계 워크플로우검증 게이트가 필요한 복잡한 작업

어떤 패턴을 사용해야 하나요?​

유스케이스 카테고리​

skill을 생성할 때, 도메인을 나타내는 category로 태그를 붙일 수도 있습니다:

카테고리설명예시
library라이브러리 및 API 참조billing-lib, internal-platform-cli
verification제품 검증signup-flow-driver, checkout-verifier
data데이터 조회 및 분석funnel-query, grafana
automation업무 프로세스 및 팀 자동화standup-post, weekly-recap
scaffold코드 스캐폴딩 및 템플릿new-migration, create-app
quality코드 품질 및 리뷰adversarial-review, testing-practices
cicdCI/CD 및 배포babysit-pr, deploy-service
runbookRunbook 및 장애 대응oncall-runner, log-correlator
infra인프라 운영orphan-cleanup, cost-investigation

카테고리는 SKILL.md frontmatter에 저장되며 패턴과는 독립적입니다 — 어떤 패턴이든 어떤 카테고리와도 조합할 수 있습니다.


Part 2: 상세 예시​

Tool Wrapper​

관례와 사용 예시를 임베드하여 agent에게 특정 라이브러리, 프레임워크, API 사용법을 가르칩니다.

agent는 관례를 한 번 로드한 다음, 해당 라이브러리를 다루는 코드를 작성하거나 리뷰할 때마다 이를 적용합니다. 이는 도메인 특화 지식을 여러분의 머릿속이 아니라 반복 가능한 skill 안에 두게 해줍니다.

SKILL.md 예시:

---
name: billing-lib
description: >-
Conventions for the billing-lib SDK. Use when writing or reviewing
code that imports billing-lib or handles payment flows.
pattern: tool-wrapper
category: library
---

# Billing Lib

## Core Conventions

Load and follow the rules in `references/conventions.md` before writing any code.

## When Reviewing Code

- Check that all API calls follow the conventions
- Verify error handling matches the library's patterns
- Ensure imports and initialization are correct

## When Writing Code

- Follow the conventions from `references/conventions.md`
- Use idiomatic patterns for this library/API
- Include error handling for common failure modes

디렉터리 구조:

billing-lib/
├── SKILL.md
└── references/
└── conventions.md # API patterns, error codes, initialization

변형: 일부 tool-wrapper skill은 복사해서 붙여넣을 수 있는 스니펫이 있는 references/examples.md를 포함하거나, 버전 업그레이드를 위한 references/migration.md를 포함합니다.


Generator​

스타일 가이드에 따라 템플릿을 채워서 구조화된 출력(문서, config 파일, 코드)을 만듭니다. agent가 사용자로부터 변수를 수집한 다음, 매번 일관된 출력을 생성합니다.

SKILL.md 예시:

---
name: rfc-writer
description: >-
Generates RFC documents following the team template. Use when user
says "write an RFC", "new proposal", or "design doc".
pattern: generator
category: scaffold
---

# RFC Writer

## Steps

### Step 1: Load Style Guide

Read `references/style-guide.md` for formatting and naming rules.

### Step 2: Load Template

Read `assets/template.md` as the base structure.

### Step 3: Gather Input

Ask the user what they need generated. Collect all required variables.

### Step 4: Generate

Fill in the template following the style guide. Ensure all placeholders are replaced.

### Step 5: Deliver

Present the generated output. Ask if adjustments are needed.

디렉터리 구조:

rfc-writer/
├── SKILL.md
├── assets/
│ └── template.md # RFC skeleton with placeholders
└── references/
└── style-guide.md # Formatting, section ordering, naming

변형: 일부 generator는 스타일 가이드를 생략하고 모든 규칙을 템플릿에 직접 넣습니다. 다른 것들은 서로 다른 문서 유형을 위해 assets/에 여러 템플릿을 포함합니다.


Reviewer​

정의된 체크리스트에 대해 작업을 채점하거나 감사합니다. agent가 대상을 읽고, 각 기준을 적용한 다음, 심각도 등급과 pass/fail 점수가 포함된 구조화된 보고서를 만듭니다.

SKILL.md 예시:

---
name: pr-review
description: >-
Reviews pull requests against the team quality checklist. Use when
user says "review this PR", "check this code", or "audit quality".
pattern: reviewer
category: quality
---

# PR Review

## Steps

### Step 1: Load Checklist

Read `references/review-checklist.md` for the complete list of review criteria.

### Step 2: Understand

Read the code/document under review. Identify its purpose and scope.

### Step 3: Apply Rules

Evaluate each checklist item. Classify findings by severity:
- **Critical**: Must fix before proceeding
- **Warning**: Should fix, may cause issues later
- **Info**: Suggestion for improvement

### Step 4: Report

Produce a review report with:
1. Summary (pass/fail + one-line verdict)
2. Findings (severity, location, description)
3. Score (percentage of checklist items passed)
4. Top 3 recommended fixes

디렉터리 구조:

pr-review/
├── SKILL.md
└── references/
└── review-checklist.md # Criteria with severity weights

변형: 일부 reviewer skill은 각 규칙에 대해 좋은/나쁜 코드를 보여주는 references/examples.md를 포함합니다. 다른 것들은 가중치 채점을 위한 references/scoring-rubric.md를 추가합니다.


Inversion​

일반적인 상호작용을 뒤집습니다: 사용자가 agent에게 무엇을 할지 말하는 대신, agent가 행동에 나서기 전에 요구사항을 수집하기 위해 사용자를 인터뷰합니다. 이는 "먼저 만들고 나중에 묻는" 문제를 방지합니다.

SKILL.md 예시:

---
name: project-planner
description: >-
Plans a new project by interviewing the user about goals, constraints,
and success criteria. Use when user says "plan a project", "new feature
spec", or "help me think through this".
pattern: inversion
category: automation
---

# Project Planner

**DO NOT start building until all phases are complete.**

## Phase 1: Discovery

Ask the user these questions before proceeding:
- What is the goal?
- Who is the audience?
- What does success look like?

## Phase 2: Constraints

Ask the user about constraints:
- What are the technical limitations?
- What is the timeline?
- Are there existing patterns to follow?

## Phase 3: Synthesis

Based on the answers, load `assets/template.md` and produce a plan.
Present the plan for approval before executing.

디렉터리 구조:

project-planner/
├── SKILL.md
└── assets/
└── template.md # Plan document skeleton

변형: 일부 inversion skill은 인라인 대신 references/interview-questions.md에 고정된 질문 목록을 둡니다. 다른 것들은 질문을 하기 전에 기존 프로젝트 컨텍스트를 읽는 Phase 0을 추가합니다.


Pipeline​

각 단계마다 검증 게이트가 있는 다단계 워크플로우를 오케스트레이션합니다. agent는 진행하기 전에 각 체크포인트를 통과해야 하며, 이는 복잡한 작업에서 연쇄적인 실패를 방지합니다.

SKILL.md 예시:

---
name: deploy-staging
description: >-
Deploys to staging with pre-flight checks and rollback plan. Use when
user says "deploy to staging", "push to staging", or "staging release".
pattern: pipeline
category: cicd
---

# Deploy Staging

## Steps

### Step 1: Prepare

Gather inputs and validate prerequisites:
- Confirm branch is clean (`git status`)
- Run tests (`make test`)
- Check CI status

### Step 2: Gate Check

Present the plan to the user.

**Do NOT proceed until user confirms.**

### Step 3: Execute

Run the deployment pipeline. After each stage, verify output before continuing:
1. Build: `make build`
2. Push: `make push-staging`
3. Health check: `curl -sf https://staging.example.com/health`

### Step 4: Quality Check

Review results against `references/quality-checklist.md`.
Report pass/fail status for each criterion.

디렉터리 구조:

deploy-staging/
├── SKILL.md
├── references/
│ └── quality-checklist.md # Post-deploy verification criteria
├── assets/
│ └── rollback-plan.md # Steps to undo if something fails
└── scripts/
└── healthcheck.sh # Automated health verification

변형: 일부 pipeline은 agent가 실행하는 자동화가 담긴 scripts/ 디렉터리를 포함합니다. 다른 것들은 롤백 지침을 SKILL.md 본문에 직접 임베드합니다.


패턴은 조합됩니다​

이 패턴들은 고정된 틀이 아니라 building block입니다. 실제 필요에 맞게 조합하세요:

  • Pipeline + Reviewer: 완료로 표시하기 전에 체크리스트에 따라 배포를 채점하는 품질 리뷰 단계로 끝나는 배포 파이프라인.
  • Inversion + Generator: 먼저 목표와 제약 사항에 대해 사용자를 인터뷰한 다음(Inversion), 수집된 정보로 템플릿을 채우는(Generator) RFC skill.
  • Tool Wrapper + Reviewer: 관례를 가르치면서(Tool Wrapper) 기존 코드의 준수 여부도 감사할 수 있는(Reviewer) 라이브러리 skill.

하나의 패턴으로 시작한 다음, skill의 범위가 성장함에 따라 추가 패턴을 레이어로 쌓으세요.


참고​