> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sifi.life/llms.txt
> Use this file to discover all available pages before exploring further.

# 설정 구성

> 이 문서는 **[Genie Code](/blog/guides/genie-code/overview)** 섹션의 일부입니다.

> **최종 업데이트**: 2026-04-08

***

## 1. 설정 화면 구성 요소

| 설정 항목                      | 역할                | 영향 범위          | 설정 주체  |
| -------------------------- | ----------------- | -------------- | ------ |
| **MCP 서버**                 | 외부 도구 연동          | Agent 모드 세션    | 개인     |
| **패널 뷰**                   | Docked/Side 전환    | UI만            | 개인     |
| **User Instructions**      | 개인 지침             | 모든 세션          | 개인     |
| **Workspace Instructions** | 조직 지침             | 워크스페이스 전체      | 관리자    |
| **Skills**                 | 작업 템플릿 (Agent 전용) | User/Workspace | 개인/관리자 |

> **참고**
> **Workspace Instructions가 User Instructions보다 우선** 적용됩니다.

***

## 2. User Instructions 작성법

### 생성 방법

**UI**: Settings → User instructions → Add instruction file

**파일**: `/Workspace/Users/{email}/.assistant_instructions.md` (최대 20,000자)

### 좋은 예시 (데이터 엔지니어)

```markdown theme={null}
## 내 역할과 컨텍스트
- 데이터 엔지니어, Delta Lake 파이프라인 + SQL 분석
- 프로덕션: main_catalog, 개발: dev_catalog
- 클라우드: AWS (S3, Glue, Redshift)

## 코딩 스타일
- PEP 8, SQL 대문자 키워드, snake_case
- docstring 필수, 타입 힌트 (Python 3.10+)

## 선호 라이브러리
- PySpark (pandas 대신), Plotly, MLflow + scikit-learn

## 보안 규칙 (절대 위반 금지)
- 프로덕션(main_catalog.prod.*) 수정 금지
- DROP/DELETE/UPDATE 생성 금지
- 임시 결과: dev_catalog.sandbox.simyung
- 민감 컬럼(ssn, email, phone) 마스킹
- 자격 증명 하드코딩 금지

## 응답 스타일
- 코드 앞에 설명, 복잡한 쿼리에 인라인 주석, 한국어 응답
```

### 나쁜 예시

| 문제     | 예시                                   | 이유                         |
| ------ | ------------------------------------ | -------------------------- |
| 너무 모호  | "좋은 코드 짜줘"                           | 구체적 행동 변화 유도 불가            |
| 상충     | "간결하게" + "모든 에러 처리" + "상세 docstring" | 우선순위 미정                    |
| 무관한 지침 | "React 18, Tailwind, Docker"         | Databricks와 무관, 20,000자 낭비 |

> **팁**
> **자주 반복하는 지침만** 포함하세요. 일회성은 프롬프트에서 직접 지시하세요.

***

## 3. Workspace Instructions 설정

### 생성

관리자가 `/Workspace/.assistant_workspace_instructions.md` 생성 (일반 사용자는 읽기만 가능).

### 좋은 예시

```markdown theme={null}
## 코딩 표준
- Unity Catalog 3-level 네이밍 필수 (catalog.schema.table)
- try-except 에러 핸들링 필수, logging 모듈 사용 (print 금지)

## 네이밍 컨벤션
- Bronze: raw_{소스}_{엔티티}  Silver: clean_{도메인}_{엔티티}
- Gold: agg_{영역}_{메트릭}  임시: tmp_{작성자}_{목적}

## 데이터 접근 정책
- PII 테이블(hr.employees, crm.contacts): 마스킹 함수 필수
- 프로덕션(prod_catalog) DDL/DML 금지, 개발은 dev_catalog만

## SQL 스타일
- 대문자 키워드, 의미 있는 alias, CTE 우선, LIMIT 필수

## 보안
- 자격 증명 코드 포함 금지 → dbutils.secrets.get() 사용
- 외부 API 타임아웃 30초
```

### 역할 분리

| 구분    | User Instructions         | Workspace Instructions |
| ----- | ------------------------- | ---------------------- |
| 코딩    | 개인 선호 (들여쓰기, 주석 언어)       | 조직 표준 (네이밍, 에러 처리)     |
| 라이브러리 | 선호 (Plotly vs matplotlib) | 금지 (보안 취약)             |
| 데이터   | 자주 쓰는 스키마                 | PII 정책, 프로덕션 제한        |
| 보안    | 개인 sandbox                | 조직 전체 규칙               |
