Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/diegosouzapw/awesome-omni-skill --skill clarifyコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SOC 職業分類に基づく
SKILL.md を表示中
| name | clarify |
| description | 모호함 식별 및 명확화 질문 생성 |
| user-invocable | false |
사용자 요구사항에서 모호한 부분을 식별하고 명확화 질문 생성
| 카테고리 | 탐지 패턴 | 질문 예시 |
|---|---|---|
| 범위 | "회원", "주문" 같은 추상적 용어 | "회원은 어떤 정보를 가지나요?" |
| 기능 | "번역", "추천" 같은 동작 | "번역 결과를 저장하나요?" |
| 제약 | "지원", "허용" 같은 제한 | "언어 지원 범위는?" |
| 관계 | "A와 B" 같은 연결 | "회원과 주문의 관계는?" |
| 권한 | "누가", "어떻게" | "프로필 수정은 누가?" |
| 생명주기 | "생성", "삭제" | "탈퇴 시 데이터는?" |
from skills.clarify import identify_ambiguities
ambiguities = identify_ambiguities(
user_request="외국인 여행자용 번역 앱 만들어줘"
)
# 결과:
# [
# {
# "category": "범위",
# "ambiguity": "회원은 어떤 정보를 가지나요?",
# "priority": "high"
# },
# {
# "category": "기능",
# "ambiguity": "번역 결과를 저장하나요?",
# "priority": "high"
# },
# ...
# ]
from skills.clarify import generate_questions
questions = generate_questions(
ambiguities=ambiguities[:4], # 최대 4개
multiselect_threshold=3 # 3개 이상 옵션이면 multiSelect
)
# AskUserQuestion 형식으로 반환
| 옵션 수 | multiSelect | 이유 |
|---|---|---|
| 2개 | False | 예/아니오 |
| 3-4개 | True | 여러 선택 가능 |
| 5개 이상 | True + "기타" | 확장 가능 |
좋은 설명:
금지 키워드:
TECH_KEYWORDS = [
"FastAPI", "PostgreSQL", "MySQL",
"JWT", "OAuth", "REST", "GraphQL",
"S3", "GCS", "Firebase", "Supabase",
"Docker", "Kubernetes",
"UUID", "VARCHAR", "INT"
]
검사:
def is_technical_question(question: str) -> bool:
"""기술 질문인지 확인"""
lower_q = question.lower()
for keyword in TECH_KEYWORDS:
if keyword.lower() in lower_q:
return True
return False
"외국인 여행자용 번역 앱 만들어줘"
[
{
"category": "범위",
"text": "회원 정보 범위?",
"priority": "high"
},
{
"category": "기능",
"text": "번역 히스토리 저장?",
"priority": "high"
},
{
"category": "제약",
"text": "언어 지원 범위?",
"priority": "high"
},
{
"category": "권한",
"text": "인증 필요 여부?",
"priority": "medium"
}
]
{
"questions": [
{
"question": "회원 프로필에 어떤 정보가 필요한가요?",
"header": "회원 정보",
"multiSelect": True,
"options": [
{
"label": "기본 (이름, 이메일)",
"description": "최소한의 정보만"
},
{
"label": "프로필 사진",
"description": "선택적 이미지 추가"
},
{
"label": "선호 언어",
"description": "자동 언어 전환용"
}
]
},
{
"question": "번역 결과를 저장하나요?",
"header": "번역 히스토리",
"multiSelect": False,
"options": [
{
"label": "영구 저장",
"description": "모든 번역 기록 보관"
},
{
"label": "세션만",
"description": "앱 종료 시 삭제"
},
{
"label": "저장 안 함",
"description": "실시간만"
}
]
}
]
}