
{
"meta": {
"id": "spec_pm_001",
"name": "Slack 문의 답변 자동화",
"description": "JIRA와 Google Drive를 검색하여 Slack 문의에 답변",
"version": "1.2.0",
"status": "active"
},
"trigger": {
"description": "Slack #product-questions 채널에 질문이 올라올 때",
"conditions": [
{
"type": "app_event",
"app": "Slack",
"event": "message_received"
},
{
"type": "content_match",
"pattern": ".*스펙.*|.*어떻게.*|.*언제.*|.*확인.*"
}
],
"operator": "AND"
},
"workflow": {
"description": "질문 분석 → JIRA 검색 → Drive 검색 → 답변 작성",
"steps": [
{
"order": 1,
"id": "step_analyze_question",
"action": "extract_keywords",
"app": "Slack",
"description": "질문에서 검색 키워드 추출",
"output": "search_keywords"
},
{
"order": 2,
"id": "step_search_jira",
"action": "search",
"app": "JIRA",
"description": "JIRA에서 관련 티켓 검색",
"input": "search_keywords",
"output": "jira_results"
},
{
"order": 3,
"id": "step_read_jira",
"action": "read_content",
"app": "JIRA",
"description": "검색된 티켓 내용 확인",
"input": "jira_results",
"output": "jira_info"
},
{
"order": 4,
"id": "step_search_drive",
"action": "search",
"app": "Google Drive",
"description": "Google Drive에서 관련 문서 검색",
"input": "search_keywords",
"output": "drive_results",
"condition": "question_type == 'spec'"
},
{
"order": 5,
"id": "step_read_drive",
"action": "read_content",
"app": "Google Drive",
"description": "검색된 문서에서 관련 내용 추출",
"input": "drive_results",
"output": "drive_info",
"condition": "drive_results.length > 0"
},
{
"order": 6,
"id": "step_compose_reply",
"action": "compose_text",
"app": "Slack",
"description": "검색 결과를 바탕으로 답변 작성",
"input": [
"jira_info",
"drive_info"
],
"output": "reply_text"
},
{
"order": 7,
"id": "step_send_reply",
"action": "send_message",
"app": "Slack",
"description": "답변 전송",
"input": "reply_text"
}
]
},
"decisions": {
"description": "검색 범위 및 답변 포맷 기준",
"rules": [
{
"id": "rule_search_scope",
"condition": "question_type == 'spec'",
"action": "search_both_jira_and_drive",
"description": "스펙 관련 질문은 JIRA와 Drive 모두 검색",
"source": "user_confirmed"
},
{
"id": "rule_jira_link",
"condition": "jira_results.length > 0",
"action": "include_jira_link",
"description": "관련 티켓이 있으면 JIRA 링크 포함",
"source": "user_confirmed"
},
{
"id": "rule_drive_link",
"condition": "question_type == 'spec' && drive_results.length > 0",
"action": "include_drive_link",
"description": "스펙 질문이고 문서가 있으면 Drive 링크 포함",
"source": "user_confirmed"
},
{
"id": "rule_keyword_extraction",
"condition": "always",
"action": "extract_feature_and_action",
"description": "기능명 + 상태/동작 조합으로 검색어 생성",
"source": "user_confirmed"
}
]
},
"boundaries": {
"always_do": [
{
"id": "always_summarize",
"description": "링크만 보내지 않고 핵심 내용 요약 포함",
"source": "user_confirmed"
},
{
"id": "always_jira_link",
"description": "관련 JIRA 티켓 링크 포함",
"source": "user_confirmed"
}
],
"ask_first": [
{
"id": "ask_no_results",
"condition": "jira_results.length == 0 && drive_results.length == 0",
"description": "검색 결과가 없으면 PM에게 확인",
"source": "user_confirmed"
},
{
"id": "ask_multiple_matches",
"condition": "jira_results.length > 3",
"description": "관련 티켓이 3개 초과면 어떤 것이 맞는지 확인",
"source": "inferred"
}
],
"never_do": [
{
"id": "never_guess",
"description": "검색 결과 없이 추측으로 답변하지 않음",
"source": "user_confirmed"
},
{
"id": "never_outdated",
"description": "6개월 이상 된 문서는 최신 여부 확인 없이 인용하지 않음",
"source": "inferred"
}
]
},
"quality": {
"description": "답변 품질 기준",
"required_fields": [
{
"field": "summary",
"description": "핵심 내용 요약 (2-3문장)"
},
{
"field": "jira_link",
"description": "JIRA 티켓 링크"
},
{
"field": "drive_link",
"description": "Drive 문서 링크 (스펙 질문 시)",
"conditional": true
}
],
"format": {
"tone": "professional_friendly",
"max_length": "300자",
"structure": [
"요약",
"상세 링크",
"추가 질문 유도"
]
}
},
"exceptions": [
{
"id": "exc_urgent",
"condition": "message contains '긴급' or '장애'",
"action": "notify_pm_immediately",
"description": "긴급/장애 문의는 자동 답변 없이 PM에게 즉시 알림",
"source": "inferred"
},
{
"id": "exc_confidential",
"condition": "document marked as 'confidential'",
"action": "ask_pm_before_sharing",
"description": "기밀 문서는 공유 전 PM 확인",
"source": "inferred"
}
],
"tools": [
{
"type": "app",
"name": "Slack",
"required": true,
"permissions": [
"read_messages",
"send_messages"
]
},
{
"type": "service",
"name": "JIRA",
"required": true,
"permissions": [
"search",
"read_issues"
]
},
{
"type": "service",
"name": "Google Drive",
"required": true,
"permissions": [
"search",
"read_files"
]
}
]
}2026.01.15 - 2026.01.31
총 세션
47회
총 이벤트
1,284
평균 처리 시간
4분 12초
종합 신뢰도
94.2%