- 프로젝트명: 사내 AI PM 어시스턴트 (Paimy)
- 총 기간: 14주 (약 3.5개월)
- Phase 구성: 4개 Phase
- 작성일: 2025-02-04
| Phase | 범위 | 기간 | 주차 |
|---|---|---|---|
| Phase 1 | 슬랙-노션 코어 | 4주 | Week 1-4 |
| Phase 2 | Google Calendar 연동 | 3주 | Week 5-7 |
| Phase 3 | Gmail 연동 | 4주 | Week 8-11 |
| Phase 4 | 크로스 플랫폼 인텔리전스 | 3주 | Week 12-14 |
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M1.1 | 개발 환경 세팅 | Supabase 프로젝트 생성, MCP 서버 boilerplate 구축 | 개발 환경 완료 |
| M1.2 | Slack Bot 설정 | Bot 생성, OAuth 설정, Events API 구독 | Slack Bot 동작 확인 |
| M1.3 | Notion API 연동 | Integration 생성, DB 접근 권한 설정 | Notion API 호출 성공 |
| M1.4 | ID 매핑 테이블 구축 | user_mappings 테이블 생성, 초기 데이터 import |
매핑 데이터 완비 |
완료 기준
- Supabase 프로젝트 생성 및 테이블 스키마 정의
- Slack Bot이 메시지를 수신할 수 있음
- Notion API로 태스크 DB 조회 가능
- 전체 사용자 ID 매핑 완료
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M2.1 | 기본 조회 구현 | get_tasks() 함수, 사용자별 필터링 |
"내 태스크 보여줘" 동작 |
| M2.2 | 조건 검색 구현 | 마감일, 상태, 키워드 복합 필터 | 조건 기반 검색 동작 |
| M2.3 | LLM Tool Use 연동 | 자연어 → 함수 호출 파이프라인 | 자연어 쿼리 처리 |
완료 기준
- "내 태스크 보여줘" 명령 정상 동작
- "이번 주 마감인 태스크" 등 조건 검색 동작
- LLM이 사용자 의도를 파악하여 적절한 함수 호출
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M3.1 | 상태 변경 구현 | update_task() 함수, Status 필드 수정 |
"완료 처리해줘" 동작 |
| M3.2 | 속성 수정 구현 | 담당자, 마감일, 우선순위 변경 | 속성 변경 동작 |
| M3.3 | 대화 맥락 추적 | conversation_context 테이블, "그 태스크" 식별 |
맥락 기반 태스크 식별 |
| M3.4 | 피드백 메시지 | 변경 완료 알림 + 노션 링크 제공 | 사용자 피드백 완료 |
완료 기준
- 슬랙에서 태스크 상태 변경 가능
- 담당자, 마감일 등 속성 수정 가능
- "그 태스크"와 같은 맥락 참조 처리
- 변경 후 확인 메시지 발송
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M4.1 | 스케줄러 구축 | Cron job 설정 (09:00, 매시 정각 등) | 스케줄러 동작 |
| M4.2 | 일일 브리핑 | 오늘 마감 태스크 + 우선순위 높은 업무 요약 | 모닝 브리핑 발송 |
| M4.3 | 마감 리마인드 | 24시간 전, 3시간 전, 마감 경과 알림 | 리마인드 DM 발송 |
| M4.4 | 주간 리포트 | 지난주 완료/이번 주 마감/지연 태스크 집계 | 월요일 채널 리포트 |
완료 기준
- 매일 09:00 모닝 브리핑 자동 발송
- 마감 임박 태스크 리마인드 발송
- 매주 월요일 주간 리포트 채널 발송
슬랙에서 태스크 조회/변경, 일일·주간 브리핑 정상 동작
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M5.1 | GCP 프로젝트 설정 | OAuth 2.0 설정, Calendar API 활성화 | GCP 환경 완료 |
| M5.2 | OAuth 인증 플로우 | 사용자별 인증, 토큰 저장/갱신 로직 | 인증 플로우 동작 |
| M5.3 | ID 매핑 확장 | google_email 필드 활용, 매핑 검증 |
Calendar 접근 가능 |
완료 기준
- GCP 프로젝트 및 OAuth 설정 완료
- 사용자 인증 후 토큰 저장/갱신 자동화
- Slack ID ↔ Google Email 매핑 검증
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M6.1 | 일정 조회 구현 | get_calendar_events(), 기간/키워드 필터 |
"오늘 일정 보여줘" 동작 |
| M6.2 | 가용 시간 확인 | check_availability(), FreeBusy API 연동 |
빈 시간 탐색 동작 |
| M6.3 | 일정 생성 구현 | create_calendar_event(), 참석자 초대 |
"미팅 잡아줘" 동작 |
완료 기준
- 개인/팀원 일정 조회 가능
- 복수 참석자 가용 시간 확인 가능
- 자연어로 미팅 생성 및 참석자 초대
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M7.1 | 일정 수정/삭제 | update_calendar_event(), delete_calendar_event() |
일정 변경/취소 동작 |
| M7.2 | 미팅 리마인드 | 30분 전, 10분 전 알림 | 미팅 리마인드 발송 |
| M7.3 | 통합 브리핑 확장 | 모닝 브리핑에 오늘 일정 섹션 추가 | 통합 브리핑 완성 |
완료 기준
- 기존 일정 수정 및 취소 가능
- 미팅 전 슬랙 리마인드 발송
- 모닝 브리핑에 오늘의 일정 포함
슬랙에서 캘린더 조회/생성/수정, 미팅 리마인드 정상 동작
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M8.1 | Gmail API 설정 | OAuth scope 추가 (gmail.readonly) |
Gmail API 접근 |
| M8.2 | 메일 목록 조회 | get_emails(), 미읽은 메일 필터 |
"오늘 온 메일 보여줘" 동작 |
완료 기준
- Gmail API OAuth 인증 완료
- 미읽은 메일 목록 조회 가능
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M9.1 | 조건 검색 구현 | 발신자, 기간, 키워드 필터링 | 조건 기반 메일 검색 |
| M9.2 | 메일 상세 조회 | get_email_detail(), 본문 파싱 |
"그 메일 자세히 보여줘" 동작 |
| M9.3 | 대화 맥락 확장 | last_email_id 저장, "그 메일" 식별 |
메일 맥락 추적 |
완료 기준
- 발신자, 기간, 키워드로 메일 검색 가능
- 특정 메일 상세 내용 조회 가능
- "그 메일" 맥락 참조 처리
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M10.1 | LLM 분석 파이프라인 | 메일 본문 → 액션 아이템 추출 프롬프트 | 액션 아이템 식별 |
| M10.2 | 추출 정확도 튜닝 | 프롬프트 최적화, 테스트 케이스 검증 | 추출 품질 확보 |
| M10.3 | 일괄 분석 | 복수 메일 분석 → 통합 액션 리스트 | "오늘 메일 액션 아이템 정리" 동작 |
완료 기준
- 메일에서 액션 아이템 자동 추출
- 추출 정확도 80% 이상 달성
- 복수 메일 일괄 분석 가능
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M11.1 | 태스크 생성 연동 | create_task_from_email(), Source 필드 설정 |
메일→노션 태스크 생성 |
| M11.2 | 승인 플로우 | 슬랙 버튼으로 태스크 생성 확인 | 사용자 확인 후 생성 |
| M11.3 | 통합 브리핑 확장 | 모닝 브리핑에 주요 메일 알림 섹션 추가 | 메일 포함 브리핑 |
| M11.4 | 프라이버시 정책 적용 | 메일 본문 미저장, 원본 링크만 기록 | 데이터 정책 준수 |
완료 기준
- 메일 액션 아이템 → 노션 태스크 생성
- 사용자 확인 후 태스크 생성 플로우
- 모닝 브리핑에 주요 메일 요약 포함
- 메일 본문 미저장 정책 준수
메일 조회/검색, 액션 아이템 추출, 태스크 자동 생성 정상 동작
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M12.1 | 맥락 추적 고도화 | 복합 엔티티 추적 (태스크+미팅+메일 동시) | "그 건 관련 미팅" 식별 |
| M12.2 | 관계자 추천 정교화 | 태스크 참여자 + 메일 수신자 통합 분석 | 협업 대상 추천 개선 |
완료 기준
- 태스크-미팅-메일 간 복합 맥락 추적
- 협업 대상 추천 정확도 향상
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M13.1 | 태스크→미팅 생성 | create_meeting_for_task(), 담당자 캘린더 조율 |
"이 태스크 미팅 잡아줘" 동작 |
| M13.2 | 미팅 후 액션 기록 | 미팅 종료 후 DM, 자연어 파싱 → 태스크 생성 | 미팅 후속 태스크 생성 |
| M13.3 | 태스크-일정 연결 | task_event_mapping 테이블, 관련 미팅 링크 |
태스크↔미팅 양방향 연결 |
완료 기준
- 태스크 담당자 기반 미팅 자동 생성
- 미팅 종료 후 액션 아이템 입력 유도
- 태스크와 미팅 간 양방향 연결
| ID | 마일스톤 | 주요 태스크 | Deliverable |
|---|---|---|---|
| M14.1 | 알림 설정 개인화 | 브리핑 시간, 리마인드 주기 사용자 설정 | 개인화 설정 기능 |
| M14.2 | 에러 처리 강화 | API 실패 재시도, 사용자 친화적 에러 메시지 | 안정성 확보 |
| M14.3 | 통합 QA | 전체 플로우 E2E 테스트, 버그 수정 | 릴리즈 준비 완료 |
완료 기준
- 사용자별 알림 설정 가능
- 에러 상황 graceful 처리
- 전체 기능 E2E 테스트 통과
크로스 플랫폼 자동화 플로우, 개인화 설정 정상 동작
| Week | Phase | 마일스톤 ID | 마일스톤명 |
|---|---|---|---|
| 1 | 1 | M1.1 | 개발 환경 세팅 |
| 1 | 1 | M1.2 | Slack Bot 설정 |
| 1 | 1 | M1.3 | Notion API 연동 |
| 1 | 1 | M1.4 | ID 매핑 테이블 구축 |
| 2 | 1 | M2.1 | 기본 조회 구현 |
| 2 | 1 | M2.2 | 조건 검색 구현 |
| 2 | 1 | M2.3 | LLM Tool Use 연동 |
| 3 | 1 | M3.1 | 상태 변경 구현 |
| 3 | 1 | M3.2 | 속성 수정 구현 |
| 3 | 1 | M3.3 | 대화 맥락 추적 |
| 3 | 1 | M3.4 | 피드백 메시지 |
| 4 | 1 | M4.1 | 스케줄러 구축 |
| 4 | 1 | M4.2 | 일일 브리핑 |
| 4 | 1 | M4.3 | 마감 리마인드 |
| 4 | 1 | M4.4 | 주간 리포트 |
| 5 | 2 | M5.1 | GCP 프로젝트 설정 |
| 5 | 2 | M5.2 | OAuth 인증 플로우 |
| 5 | 2 | M5.3 | ID 매핑 확장 |
| 6 | 2 | M6.1 | 일정 조회 구현 |
| 6 | 2 | M6.2 | 가용 시간 확인 |
| 6 | 2 | M6.3 | 일정 생성 구현 |
| 7 | 2 | M7.1 | 일정 수정/삭제 |
| 7 | 2 | M7.2 | 미팅 리마인드 |
| 7 | 2 | M7.3 | 통합 브리핑 확장 |
| 8 | 3 | M8.1 | Gmail API 설정 |
| 8 | 3 | M8.2 | 메일 목록 조회 |
| 9 | 3 | M9.1 | 조건 검색 구현 |
| 9 | 3 | M9.2 | 메일 상세 조회 |
| 9 | 3 | M9.3 | 대화 맥락 확장 |
| 10 | 3 | M10.1 | LLM 분석 파이프라인 |
| 10 | 3 | M10.2 | 추출 정확도 튜닝 |
| 10 | 3 | M10.3 | 일괄 분석 |
| 11 | 3 | M11.1 | 태스크 생성 연동 |
| 11 | 3 | M11.2 | 승인 플로우 |
| 11 | 3 | M11.3 | 통합 브리핑 확장 |
| 11 | 3 | M11.4 | 프라이버시 정책 적용 |
| 12 | 4 | M12.1 | 맥락 추적 고도화 |
| 12 | 4 | M12.2 | 관계자 추천 정교화 |
| 13 | 4 | M13.1 | 태스크→미팅 생성 |
| 13 | 4 | M13.2 | 미팅 후 액션 기록 |
| 13 | 4 | M13.3 | 태스크-일정 연결 |
| 14 | 4 | M14.1 | 알림 설정 개인화 |
| 14 | 4 | M14.2 | 에러 처리 강화 |
| 14 | 4 | M14.3 | 통합 QA |
M1.4 (ID 매핑) → M2.1 (태스크 조회)
M2.3 (LLM Tool Use) → M3.1 (상태 변경)
M3.3 (대화 맥락) → M9.3 (메일 맥락 확장)
M5.2 (OAuth 인증) → M6.1 (일정 조회)
M5.2 (OAuth 인증) → M8.1 (Gmail API)
M10.1 (액션 아이템 추출) → M11.1 (태스크 생성 연동)
M6.3 (일정 생성) + M3.1 (태스크 수정) → M13.1 (태스크→미팅 생성)
| 리스크 | 영향 | 대응 방안 |
|---|---|---|
| LLM 자연어 해석 오류 | 잘못된 태스크 변경 | 사용자 확인 단계 필수화 |
| OAuth 토큰 만료 | GWS 기능 중단 | 자동 갱신 로직, 재인증 알림 |
| 액션 아이템 추출 부정확 | 사용자 신뢰 저하 | 프롬프트 튜닝, 확인 플로우 |
| API 호출 제한 | 기능 지연 | 캐싱, 배치 처리, 쿼터 모니터링 |
| ID 매핑 누락 | 기능 동작 불가 | 등록 안내, 주기적 검증 |
| 버전 | 날짜 | 작성자 | 변경 내용 |
|---|---|---|---|
| 1.0 | 2025-02-04 | - | 초안 작성 |