From 8b5f0283279d7fb498f4bbd0109a1cab9fd8f53b Mon Sep 17 00:00:00 2001 From: happybell80 Date: Thu, 19 Mar 2026 23:12:22 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20credential=20=EC=84=A4=EC=A0=95=20?= =?UTF-8?q?=EA=B0=80=EC=9D=B4=EB=93=9C=EB=A5=BC=20README=EC=97=90=20?= =?UTF-8?q?=ED=86=B5=ED=95=A9=20(SSOT)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 공통 Slack credential/App 설정을 README 1곳에 두고, 개별 MD에서 링크. slack_basic_dialogue.md는 워크플로우 고유 설정만 유지. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../01_conversation/slack_basic_dialogue.md | 12 +++++++ workflow/README.md | 35 ++++++++++++++++--- 2 files changed, 43 insertions(+), 4 deletions(-) diff --git a/workflow/01_conversation/slack_basic_dialogue.md b/workflow/01_conversation/slack_basic_dialogue.md index 3b072cd..f6e4b62 100644 --- a/workflow/01_conversation/slack_basic_dialogue.md +++ b/workflow/01_conversation/slack_basic_dialogue.md @@ -35,6 +35,18 @@ Gateway 호출 - 대화 이력: `recent_conversations` → `previous_messages` 변환으로 OpenAI handler에 전달 - 감정 constraints: neutral/빈 감정에서 생략 +## n8n import 후 수동 설정 (필수) + +공통 credential 설정은 [워크플로우 README](../README.md) 참조. + +이 워크플로우 고유 설정: + +| 노드 | 항목 | 값 | +|------|------|---| +| Slack Trigger | Trigger On | `message` 또는 `app_mention` | +| Reply to Slack | Channel | `={{ $json.channel }}` | +| Reply to Slack | Other Options → Thread TS | `={{ $json.thread_ts }}` | + ## 검증 기준 - `로빙?` → 1문장 인사 - `난 지금 서울이야` → 1문장 확인, 과잉 제안 없음 diff --git a/workflow/README.md b/workflow/README.md index 40d048b..300a779 100644 --- a/workflow/README.md +++ b/workflow/README.md @@ -40,11 +40,38 @@ - 업로드, 검색, Grounding, 임베딩 브리지의 역할을 분리해서 봅니다. - 세부 절차는 각 흐름 문서에서 확인합니다. -## 사용 시 주의사항 +## n8n import 후 수동 설정 가이드 -- **Credential 설정**: 각 노드의 Slack, HTTP Request 노드에서 실제 환경의 Credentials(Token, API Key)를 설정해야 합니다. -- **IP 주소**: 현재 템플릿은 내부 IP(`192.168.219.*`)를 기본값으로 사용합니다. 환경이 다를 경우 일괄 변경이 필요합니다. -- **채널 ID**: Slack 노드에 설정된 `channelId`는 예시 값이므로, 실제 알림을 받을 채널 ID로 수정하십시오. +JSON을 n8n에 import하면 **credential과 일부 파라미터가 비어있습니다.** n8n은 credential을 암호화 DB에 저장하므로 JSON export/import에 포함되지 않습니다. + +### Slack Credential 설정 (9개 워크플로우 공통) + +1. n8n UI → Settings → Credentials → **Slack API** 추가 +2. 필요한 값: + - **Bot User OAuth Token**: `xoxb-...` (Slack App → OAuth & Permissions) + - **Signing Secret**: Slack App → Basic Information → Signing Secret +3. 각 Slack 노드(Trigger, Reply, Send)에서 이 credential 선택 + +### Slack App 설정 (Slack 관리자) + +1. [api.slack.com/apps](https://api.slack.com/apps) → 앱 선택 +2. **Event Subscriptions**: Request URL에 n8n webhook URL 입력 +3. **Subscribe to bot events**: `app_mention`, `message.channels`, `message.im` +4. **OAuth & Permissions** → Bot Token Scopes: `chat:write`, `channels:history`, `app_mentions:read`, `im:history` + +### IP 주소 + +- 현재 템플릿은 내부 IP(`192.168.219.*`)를 기본값으로 사용합니다. 환경이 다를 경우 일괄 변경이 필요합니다. + +### 채널 ID + +- Slack 노드에 설정된 `channelId`는 예시 값이므로, 실제 알림을 받을 채널 ID로 수정하십시오. + +### 주의사항 + +- credential은 환경 이동 시 매번 재설정 필요 +- webhook URL은 n8n 인스턴스마다 다르게 생성됨 +- Slack Trigger의 `Trigger On` 이벤트 유형도 수동 선택 필요 ---