### 4.5 Workspace 스킬 vs User 스킬 선택 기준
스킬을 어디에 배치할지는 **누가 사용하는가** 와 **표준화가 필요한가** 로 결정합니다.
| 판단 기준 | Workspace 스킬 | User 스킬 |
|-----------|---------------|-----------|
| **사용 범위** | 팀 전체가 동일한 절차를 따라야 할 때 | 개인 업무에 특화된 반복 작업 |
| **표준화 필요성** | 파이프라인 템플릿, 배포 절차 등 일관성이 중요한 작업 | 개인 분석 패턴, 실험 워크플로 |
| **관리 권한** | 관리자가 버전 관리하며 업데이트 | 개인이 자유롭게 수정 |
| **예시** | 데이터 품질 검증, DLT 파이프라인 생성, 대시보드 표준 | 개인 리포트 자동화, 실험 결과 정리 |
> **팁**
처음에는 User 스킬로 만들어서 개인적으로 검증한 뒤, 팀에 유용하다고 판단되면 Workspace 스킬로 승격시키는 것이 안전한 접근법입니다. Workspace 스킬은 모든 사용자에게 영향을 미치므로, 충분히 검증된 절차만 올려야 합니다.
---
## 5. MCP 서버 연동
### 5.1 MCP 서버 추가 방법
MCP 서버는 Genie Code가 외부 도구를 호출할 수 있게 해주는 연결 통로입니다. Agent 모드에서만 동작합니다.
**설정 경로:**
1. Genie Code 패널 > **Settings** > **MCP servers**
2. **"Add MCP server"** 클릭
3. MCP 서버 이름, URL, 인증 정보 입력
4. 연결 테스트 후 저장
> **참고**
MCP 서버 연동의 상세 설정 방법과 아키텍처는 [MCP 연동](mcp) 페이지에서 자세히 다룹니다. 이 섹션에서는 **어떤 서버를 어떻게 조합하면 효과적인지** 에 집중합니다.
### 5.2 유용한 MCP 서버 조합
단일 MCP 서버도 유용하지만, 여러 서버를 **조합** 하면 워크플로 자동화의 진정한 가치가 드러납니다. 다음은 역할별로 검증된 조합입니다.
**데이터 엔지니어 추천 조합:**
| MCP 서버 | 활용 시나리오 |
|----------|-------------|
| **Databricks MCP** | Unity Catalog 탐색, SQL 실행, 파이프라인 관리 |
| **GitHub MCP** | 파이프라인 코드 검색, PR 생성, 코드 리뷰 |
| **Slack MCP** | 파이프라인 실패 알림, 팀 채널에 결과 공유 |
이 조합으로 가능한 워크플로 예시: "파이프라인 실패 원인을 분석하고, 수정 코드를 GitHub PR로 올리고, #data-eng 채널에 요약을 공유해줘"
**데이터 분석가 추천 조합:**
| MCP 서버 | 활용 시나리오 |
|----------|-------------|
| **Databricks MCP** | 테이블 탐색, 쿼리 실행, 대시보드 생성 |
| **Slack MCP** | 분석 결과를 팀/경영진 채널에 공유 |
| **JIRA MCP** | 분석 요청 티켓 관리, 완료 보고 |
**ML 엔지니어 추천 조합:**
| MCP 서버 | 활용 시나리오 |
|----------|-------------|
| **Databricks MCP** | 실험 관리, 모델 레지스트리, 서빙 엔드포인트 |
| **GitHub MCP** | 학습 코드 버전 관리, 모델 배포 파이프라인 |
| **Slack MCP** | 학습 완료 알림, 모델 성능 리포트 공유 |
---
## 6. Agent 모드 실전 팁
Agent 모드에서 Genie Code는 단순한 코드 생성기에서 **자율적으로 계획하고, 실행하고, 검증하는 AI 에이전트** 로 변환됩니다. 이 자율성은 강력하지만, 제대로 다루지 않으면 의도하지 않은 결과를 초래할 수 있습니다.
### 6.1 컨텍스트 격리 전략
Genie Code의 대화 세션은 **컨텍스트 윈도우** 를 공유합니다. 하나의 세션에서 여러 작업을 처리하면 이전 작업의 맥락이 새 작업에 영향을 줍니다.
**원칙: 하나의 세션 = 하나의 작업 단위**
| 상황 | 권장 행동 |
|------|----------|
| 새로운 데이터셋을 분석할 때 | 새 채팅 세션 시작 |
| 이전 분석과 관련 없는 코드를 작성할 때 | 새 채팅 세션 시작 |
| 이전 분석 결과를 기반으로 후속 작업할 때 | 같은 세션에서 계속 |
| 에러가 반복되어 세션이 혼란스러울 때 | 새 채팅 세션에서 문제를 깔끔하게 재정의 |
> **주의**
브라우저 탭을 전환하면 Agent 모드가 **일시정지** 됩니다. 장시간 작업을 실행 중일 때 탭을 떠나면 작업이 중단될 수 있습니다. 또한 **브라우저 새로고침** 은 현재 세션의 실행 상태를 초기화합니다.
### 6.2 권한 관리: "Always Allow" 주의
Agent 모드에서 Genie Code가 도구를 호출하거나 코드를 실행할 때, 사용자에게 **승인(Approve)** 을 요청합니다. 이때 **"Always Allow"** 옵션이 표시됩니다.
**"Always Allow"를 사용해도 되는 경우:**
- 읽기 전용 작업 (테이블 스키마 조회, SELECT 쿼리)
- sandbox/dev 환경에서의 개발 작업
**"Always Allow"를 사용하면 안 되는 경우:**
- 프로덕션 데이터에 대한 쓰기 작업
- 외부 시스템으로의 데이터 전송 (Slack 메시지, JIRA 티켓 생성)
- DROP, DELETE, UPDATE 등 파괴적 작업이 포함될 수 있는 경우
> **주의**
"Always Allow"는 편리하지만 **안전망을 제거** 합니다. Agent가 자율적으로 판단하여 실행하는 작업의 범위가 넓어질수록, 개별 액션 확인이 더 중요해집니다. 특히 프로덕션 환경에서는 매 액션을 직접 확인하는 것을 원칙으로 하세요.
### 6.3 작업 정의 방식: 목표 중심 + 제한 설정
Agent 모드에서는 **단계별 지시** 보다 **최종 목표 + 제한 조건** 을 주는 것이 더 효과적입니다. Agent가 스스로 최적 경로를 찾도록 하되, 넘지 말아야 할 경계를 명확히 하는 것입니다.
**비효과적인 프롬프트 (단계별 지시):**