idea: skill-slack 입출력 전담 구조 분리 아이디어
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
8773503482
commit
66b0b91772
53
journey/ideas/260323_skill_slack_입출력_전담_구조_분리_아이디어.md
Normal file
53
journey/ideas/260323_skill_slack_입출력_전담_구조_분리_아이디어.md
Normal file
@ -0,0 +1,53 @@
|
||||
---
|
||||
type: ideas
|
||||
tags: [ideas, skill-slack, rb8001, gateway, architecture, refactoring]
|
||||
adopted_by:
|
||||
---
|
||||
|
||||
# 260323 skill-slack 입출력 전담 구조 분리 아이디어
|
||||
|
||||
## 현재 구조
|
||||
|
||||
rb8001이 Slack SDK(`chat_postMessage`, Block Kit, 이벤트 수신)를 직접 호출하고 있어 입력·판단·출력 경계가 섞여 있다.
|
||||
|
||||
```
|
||||
Slack → rb8001(이벤트 수신 + 판단 + 처리 + Slack SDK 직접 호출) → Slack
|
||||
└─ skill-slack(보조: 콜드메일, 리스트 등 일부 기능)
|
||||
```
|
||||
|
||||
## 문제
|
||||
|
||||
- rb8001에 Slack 프로토콜 코드(Block Kit, 스레드, 파일 업로드)가 섞여 있어 다른 채널(웹, API) 확장 시 분리 어려움
|
||||
- skill-slack의 역할이 모호 — 일부 기능만 담당하고 나머지는 rb8001이 직접 처리
|
||||
- Block Kit 같은 출력 포맷 개선이 rb8001 코드 수정을 요구
|
||||
|
||||
## 제안 구조
|
||||
|
||||
```
|
||||
Slack → Gateway → rb8001(판단·처리, CEU 단위체 중심) → skill-slack(입출력 전담) → Slack
|
||||
```
|
||||
|
||||
| 컴포넌트 | 역할 |
|
||||
|----------|------|
|
||||
| Gateway | 프로토콜 라우팅 (Slack/웹/API → 내부 메시지 표준화) |
|
||||
| rb8001 | 의도 판단, RAG 검색, LLM 호출, 응답 생성 (채널 무관) |
|
||||
| skill-slack | Slack 전용 입출력 — 이벤트 수신, Block Kit 포맷, 스레드 관리, 파일 업로드 |
|
||||
|
||||
## 기대 효과
|
||||
|
||||
- rb8001에서 Slack SDK 의존 제거 → 채널 독립적 코어
|
||||
- 출력 포맷(Block Kit, 줄바꿈, 표)을 skill-slack에서 단독 관리
|
||||
- 새 채널(웹 대시보드, API) 추가 시 skill-web만 붙이면 됨
|
||||
|
||||
## 제약
|
||||
|
||||
- 리팩토링 범위가 크고 현재 RAG 작업과 별개 트랙
|
||||
- rb8001의 `slack/message_service.py`, `slack/file_service.py` 등 이동 필요
|
||||
- 기존 동작 회귀 테스트 필요
|
||||
|
||||
## 관련 파일
|
||||
|
||||
- `rb8001/app/services/slack/message_service.py`
|
||||
- `rb8001/app/services/slack/file_service.py`
|
||||
- `robeing/skill-slack/`
|
||||
- `robeing/robeing-gateway/`
|
||||
Loading…
x
Reference in New Issue
Block a user