# OurDigital Custom Claude Skill Project Plan > **Version**: 1.1 > **Created**: 2026-01-31 > **Updated**: 2026-01-31 > **Author**: OurDigital (Andrew Yim) > **Purpose**: Claude Desktop & Claude Code 기반 맞춤 Claude Skill 패키지 구현 가이드 --- ## 1. Background ### 1.1 OurDigital 프로필 **OurDigital**은 D.intelligence의 Entrepreneur **Andrew Yim**의 개인 활동 프로필이다. | 구분 | 내용 | |------|------| | **사업 영역** | Data Analysis, Data Analytics, Google Tag Manager, Data Intelligence Service | | **컨설팅 서비스** | SMB 영역 종합 컨설팅, 코칭 서비스 (OurDigital Lab 운영) | | **블로그 채널** | blog.ourdigital.org (Korean), journal.ourdigital.org (English), ourstory.day (Personal Essays) | ### 1.2 활동 영역 - **SEO Specialist**: Technical SEO, On-page SEO, AEO/GEO, Brand Visibility Audit - **Brand Marketing Consultant**: 브랜드 마케팅, 콘텐츠 마케팅, 디지털 마케팅, 로컬 마케팅 - **Data Analyst**: 데이터 분석, 마케팅 자동화, GTM 관리 - **AI/Data Literacy Evangelist**: AI 리터러시, 데이터 리터러시 교육 및 전파 ### 1.3 프로젝트 목적 OurDigital의 전문화된 맞춤 목적 도구를 **Claude Skill 패키지**로 구현하여: 1. 반복적인 워크플로우의 효율화 2. 일관된 브랜드 보이스와 품질 유지 3. 외부 AI 도구(Perplexity, Gemini, DALL-E 등)와의 효과적인 협업 4. 도메인 특화 지식의 체계적 관리 5. Claude Desktop과 Claude Code 환경 모두에서 일관된 운용 --- ## 2. Requirements ### 2.1 Claude Skill 적합성 기준 Anthropic의 Agent Skills 가이드 및 skill-creator 프레임워크에 따른 적합성 기준: | 기준 | 설명 | |------|------| | **명확한 트리거** | "언제 이 스킬을 사용할지"가 분명해야 함 | | **집중된 범위** | Unix 철학: 1-3가지 핵심 기능에 집중 (800-1,200 words) | | **재사용 가능한 리소스** | scripts/, references/, assets/로 번들할 가치 | | **Claude가 모르는 지식** | 절차적 지식, 도메인 특화 정보, 조직 고유 맥락 | | **명확한 경계** | 다른 스킬과 중복 없이 독립적 작동 | ### 2.2 OurDigital 스킬 트리거 규칙 ⭐ NEW **중요**: 다른 범용 스킬과의 충돌 방지를 위해, ourdigital 스킬은 반드시 `ourdigital` 키워드가 포함된 경우에만 트리거된다. | 트리거 패턴 | 예시 | |------------|------| | **명시적 호출** | "ourdigital 블로그 작성해줘", "ourdigital research 프롬프트" | | **스킬명 직접 호출** | "ourdigital-blog로 초안 작성", "ourdigital-designer 사용" | | **OurDigital 컨텍스트** | "OurDigital 브랜드 가이드 확인", "ourdigital 스킬 만들어줘" | **트리거되지 않는 경우**: "블로그 써줘", "리서치 해줘" (일반 요청은 범용 스킬 또는 Claude 기본 기능 사용) ### 2.3 Progressive Disclosure 설계 원칙 ``` Level 1: Metadata (name + description) - 항상 컨텍스트에 로드 (~100 words) Level 2: SKILL.md body - 스킬 트리거 시 로드 (<5k words, 권장 <2k words) Level 3: Bundled resources - 필요 시 Claude가 로드 (Unlimited) ``` ### 2.4 YAML Frontmatter 규약 ⭐ NEW Anthropic Claude Skill 권장 규약에 따른 메타데이터 표준: ```yaml --- name: ourdigital-skill-name description: | [트리거 조건 명시] ourdigital 키워드와 함께 사용 시 활성화. [핵심 기능 1줄 요약] Triggers: - "ourdigital [keyword1]", "ourdigital [keyword2]" - "ourdigital-skill-name [action]" Features: - 기능 1 - 기능 2 version: "1.0" author: OurDigital environment: Desktop | Code | Both dependencies: python: ">=3.11" packages: ["package1", "package2"] --- ``` ### 2.5 스킬 디렉토리 표준 구조 ⭐ UPDATED ``` ourdigital-skill-name/ ├── Desktop/ # Claude Desktop 버전 │ ├── SKILL.md # Desktop용 스킬 정의 │ ├── scripts/ # Desktop 환경용 스크립트 │ ├── references/ # 참조 문서 │ └── assets/ # 템플릿, 이미지 등 │ ├── Code/ # Claude Code 버전 │ ├── SKILL.md # Code용 스킬 정의 │ ├── scripts/ # Code 환경용 스크립트 │ ├── references/ # 참조 문서 │ └── assets/ # 템플릿, 이미지 등 │ ├── shared/ # 공통 리소스 │ ├── references/ # 공통 참조 문서 │ ├── assets/ # 공통 에셋 │ └── templates/ # 공통 템플릿 │ ├── docs/ # 문서화 ⭐ NEW │ ├── CHANGELOG.md # 변경 이력 │ ├── SETUP.md # 설치/설정 가이드 │ └── logs/ # 업데이트 로그 파일 │ └── README.md # 스킬 개요 ``` --- ## 3. Package Environment Standards ⭐ NEW ### 3.1 공통 환경 요건 OurDigital 스킬 패키지는 일관된 환경에서 운용되도록 다음 표준을 따른다: | 항목 | 표준 | 비고 | |------|------|------| | **Python 버전** | >= 3.11 | pyenv 또는 conda로 관리 | | **가상 환경** | `.venv-ourdigital/` | 프로젝트 루트에 위치 | | **환경 변수 파일** | `.env.ourdigital` | 민감 정보 포함, .gitignore 등록 | | **설정 파일** | `config/ourdigital.yaml` | 스킬 공통 설정 | ### 3.2 인증 및 자격증명 관리 ``` ~/.ourdigital/ ├── credentials/ │ ├── notion.json # Notion API 토큰 │ ├── ghost.json # Ghost Admin API 키 │ ├── google.json # Google API 자격증명 │ └── figma.json # Figma API 토큰 ├── config.yaml # 전역 설정 └── .env # 환경 변수 (심볼릭 링크) ``` ### 3.3 환경 변수 표준 ```bash # .env.ourdigital OURDIGITAL_ENV=development|production OURDIGITAL_CONFIG_PATH=~/.ourdigital/config.yaml OURDIGITAL_CREDENTIALS_PATH=~/.ourdigital/credentials/ # Notion NOTION_API_TOKEN=secret_xxxxx NOTION_WORKING_WITH_AI_DB=f8f19ede-32bd-43ac-9f60-0651f6f40afe # Ghost CMS GHOST_BLOG_URL=https://blog.ourdigital.org GHOST_BLOG_ADMIN_KEY=xxxxx GHOST_JOURNAL_URL=https://journal.ourdigital.org GHOST_JOURNAL_ADMIN_KEY=xxxxx ``` ### 3.4 패키지 의존성 관리 ``` ourdigital-skills/ ├── pyproject.toml # 전체 패키지 의존성 ├── requirements/ │ ├── base.txt # 공통 의존성 │ ├── desktop.txt # Desktop 전용 │ └── code.txt # Code 전용 └── setup.py # 패키지 설치 스크립트 ``` --- ## 4. Skill Architecture ### 4.1 전체 스킬 구성 (10개) ``` ┌─────────────────────────────────────────────────────────────────┐ │ META LAYER (기반 스킬) │ │ ┌─────────────────────────┐ ┌─────────────────────────────┐ │ │ │ ourdigital-skill-creator│ │ ourdigital-brand-guide │ │ │ │ (스킬 생성/관리) │ │ (브랜드 기준/스타일 가이드) │ │ │ └─────────────────────────┘ └─────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ CONTENT LAYER (콘텐츠 제작) │ │ ┌──────────────────┐ ┌──────────────────┐ ┌─────────────────┐ │ │ │ ourdigital-blog │ │ourdigital-journal│ │ourdigital- │ │ │ │ (한국어 블로그) │ │(영문 에세이) │ │research │ │ │ └──────────────────┘ └──────────────────┘ │(리서치 프롬프트) │ │ │ └─────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ PRODUCTION LAYER (제작 지원) │ │ ┌──────────────────┐ ┌──────────────────┐ ┌─────────────────┐ │ │ │ourdigital-document│ │ourdigital-designer│ │ourdigital- │ │ │ │(문서/프레젠테이션)│ │(비주얼 프롬프트) │ │ad-manager │ │ │ └──────────────────┘ └──────────────────┘ │(광고 카피) │ │ │ └─────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ SUPPORT LAYER (업무 지원) │ │ ┌─────────────────────────┐ ┌─────────────────────────────┐ │ │ │ ourdigital-trainer │ │ ourdigital-backoffice │ │ │ │ (교육자료/평가) │ │ (견적/계약/비용분석) │ │ │ └─────────────────────────┘ └─────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ ``` ### 4.2 개별 스킬 정의 #### 4.2.1 ourdigital-skill-creator (메타 스킬) | 항목 | 내용 | |------|------| | **역할** | 스킬 적합성 평가, 인터랙티브 요구사항 분석, 스킬 제작, 이력 관리 | | **트리거** | "ourdigital 스킬 만들기", "ourdigital skill 적합성", "ourdigital 스킬 제작" | | **핵심 기능** | 1) 니즈의 Claude Skill 적합성 평가 2) **인터랙티브 질의-응답 기반 요구사항 정의** 3) 최적화된 스킬 생성 4) **Notion DB 이력 관리** | | **특수 기능** | 수정 이력 관리, 학습 포인트 축적, Notion 연동 | **인터랙티브 워크플로우** ⭐ NEW: ``` 1. [니즈 파악] 사용자의 초기 요청 수신 ↓ 2. [적합성 검토] Claude Skill 적합성 평가 질문 ↓ 3. [요구사항 정의] 단계별 질의-응답 (최소 3~5개 질문) - 스킬 목적과 핵심 기능 - 트리거 조건과 사용 시나리오 - 필요한 외부 도구/리소스 - 기대 출력 형식 - Desktop/Code 환경 요구사항 ↓ 4. [스킬 생성] 요구사항 기반 스킬 초안 생성 ↓ 5. [검증] 사용자 확인 및 피드백 반영 ↓ 6. [저장] Notion DB + docs/ 이력 기록 ``` **번들 리소스:** ``` ourdigital-skill-creator/ ├── Desktop/ │ └── SKILL.md ├── Code/ │ └── SKILL.md ├── shared/ │ ├── scripts/ │ │ ├── init_skill.py │ │ ├── validate_skill.py │ │ └── sync_notion.py # Notion 연동 │ ├── references/ │ │ ├── suitability-criteria.md │ │ ├── skill-patterns.md │ │ └── qa-templates.md # 질의 템플릿 │ └── templates/ │ └── skill-template/ ├── docs/ │ ├── CHANGELOG.md │ └── logs/ └── README.md ``` --- #### 4.2.2 ourdigital-brand-guide (기준 참조 스킬) | 항목 | 내용 | |------|------| | **역할** | 글쓰기/페르소나/시각 스타일 기준 관리, 브랜드 적합성 판별 | | **트리거** | "ourdigital 브랜드 가이드", "ourdigital 스타일 체크", "ourdigital 톤앤매너" | | **핵심 기능** | 1) 글쓰기 스타일 기준 2) 페르소나 특징/스타일 3) 시각 요소 기준 4) 산출물 브랜드 적합성 판별 | --- #### 4.2.3 ourdigital-blog (콘텐츠 제작) | 항목 | 내용 | |------|------| | **역할** | 한국어 블로그 초안 작성, SEO 최적화 편집 | | **트리거** | "ourdigital 블로그", "ourdigital blog 초안", "ourdigital 한국어 포스트" | | **핵심 기능** | 1) 블로그 초안 작성 2) SEO 메타데이터 생성 3) Ghost CMS 포맷 | | **출력 채널** | blog.ourdigital.org (Ghost CMS) | --- #### 4.2.4 ourdigital-journal (콘텐츠 제작) | 항목 | 내용 | |------|------| | **역할** | 영문 에세이/리서치 작성 및 포스팅 | | **트리거** | "ourdigital journal", "ourdigital 영문 에세이", "ourdigital English article" | | **핵심 기능** | 1) 영문 에세이 작성 2) 리서치 기반 아티클 3) 학술적 글쓰기 스타일 | | **출력 채널** | journal.ourdigital.org (Ghost CMS) | --- #### 4.2.5 ourdigital-research (프롬프트 엔지니어링) | 항목 | 내용 | |------|------| | **역할** | Deep Research용 구조화된 프롬프트 생성 | | **트리거** | "ourdigital research 프롬프트", "ourdigital deep research", "ourdigital 조사 요청" | | **핵심 기능** | 1) 조사 목적/용도 확인 대화 2) 구조화된 리서치 프롬프트 생성 3) 외부 도구 최적화 | --- #### 4.2.6 ourdigital-document (문서 제작) | 항목 | 내용 | |------|------| | **역할** | 문서 구성/초안 작성, 프레젠테이션 프롬프트 생성 | | **트리거** | "ourdigital 문서", "ourdigital 기획서", "ourdigital 프레젠테이션" | | **핵심 기능** | 1) 문서 구성 및 개요 2) Word/Google Doc/Markdown 초안 3) Gamma/Figma용 프롬프트 | --- #### 4.2.7 ourdigital-designer (프롬프트 엔지니어링) | 항목 | 내용 | |------|------| | **역할** | Visual AI용 구조화된 프롬프트 생성, Figma 연동 | | **트리거** | "ourdigital 디자인", "ourdigital 비주얼", "ourdigital 이미지 생성" | | **핵심 기능** | 1) 디자인 방향 설정 2) AI 이미지 생성 프롬프트 3) Figma Connector 연동 | --- #### 4.2.8 ourdigital-ad-manager (마케팅 실행) | 항목 | 내용 | |------|------| | **역할** | 광고 카피라이팅, 키워드 검색량 조사 | | **트리거** | "ourdigital 광고 카피", "ourdigital 검색 광고", "ourdigital 키워드" | | **핵심 기능** | 1) 검색 광고 카피 2) 디스플레이 광고 카피 3) 브랜디드 콘텐츠 4) 키워드 검색량 웹 서치 | --- #### 4.2.9 ourdigital-trainer (교육 지원) | 항목 | 내용 | |------|------| | **역할** | 교육자료 구성, 진행 계획, 참여자 평가 | | **트리거** | "ourdigital 교육", "ourdigital 트레이닝", "ourdigital 워크샵" | | **핵심 기능** | 1) 주제별 교육자료 구성 2) 교육 진행 계획 3) 참여자 평가 설계 | --- #### 4.2.10 ourdigital-backoffice (업무 지원) | 항목 | 내용 | |------|------| | **역할** | 견적서, 서비스 소개서, 계약서, 비용 분석 | | **트리거** | "ourdigital 견적서", "ourdigital 계약서", "ourdigital 비용 분석" | | **핵심 기능** | 1) 견적서 작성 2) 서비스 소개서 3) 계약서 초안 (법적 검토 필요 명시) 4) 비용 분석 | --- ## 5. Development History Management ⭐ NEW ### 5.1 Notion Database 연동 **대상 데이터베이스**: [Working with AI](https://www.notion.so/dintelligence/f529bd7b67ce4033bb70ce951d65c9e8) | 필드 | 용도 | |------|------| | **Name** | 스킬명 + 버전 (예: "ourdigital-blog v1.2") | | **Type** | "Skill Development" | | **Category** | "OurDigital Skills" | | **AI used** | "Claude Opus" 또는 "Claude Code" | | **Topic** | 해당 스킬 카테고리 | **저장 시점**: - 스킬 신규 생성 시 - 스킬 수정/업데이트 시 - 버전 릴리즈 시 ### 5.2 로컬 문서 관리 각 스킬의 `docs/` 디렉토리에 다음 파일 유지: ```markdown # docs/CHANGELOG.md ## [1.1.0] - 2026-01-31 ### Added - 새로운 기능 설명 ### Changed - 변경된 기능 설명 ### Fixed - 수정된 버그 설명 ### Notion Ref - https://notion.so/page-id ``` ```markdown # docs/logs/2026-01-31-update.md ## 업데이트 정보 - **일시**: 2026-01-31 15:30 KST - **버전**: 1.0 → 1.1 - **작업자**: Andrew Yim - **Claude 세션**: [링크] ## 변경 내용 ... ## Notion 동기화 - DB 레코드 ID: xxx - 동기화 시간: 2026-01-31 15:35 KST ``` --- ## 6. Implementation Plan ### 6.1 구현 단계 ``` Phase 1: 기반 스킬 (Week 1-2) ├── ourdigital-skill-creator (Notion 연동 포함) └── ourdigital-brand-guide Phase 2: 핵심 콘텐츠 스킬 (Week 3-4) ├── ourdigital-blog ├── ourdigital-journal └── ourdigital-research Phase 3: 제작 지원 스킬 (Week 5-6) ├── ourdigital-document ├── ourdigital-designer └── ourdigital-ad-manager Phase 4: 업무 지원 스킬 (Week 7-8) ├── ourdigital-trainer └── ourdigital-backoffice ``` ### 6.2 Phase 1 상세 계획 #### Task 1.1: ourdigital-skill-creator 구현 | 단계 | 작업 | 산출물 | |------|------|--------| | 1 | 디렉토리 구조 생성 (Desktop/Code 분리) | `/ourdigital-skill-creator/` | | 2 | Desktop용 SKILL.md 작성 | `Desktop/SKILL.md` | | 3 | Code용 SKILL.md 작성 | `Code/SKILL.md` | | 4 | 인터랙티브 Q&A 템플릿 | `shared/references/qa-templates.md` | | 5 | Notion 동기화 스크립트 | `shared/scripts/sync_notion.py` | | 6 | 공통 환경 설정 | `pyproject.toml`, `.env.ourdigital` | | 7 | 검증 및 테스트 | 실제 스킬 생성 테스트 | ### 6.3 Claude Code 실행 가이드 ```bash # 프로젝트 루트 설정 cd /path/to/ourdigital-skills # 가상 환경 생성 python -m venv .venv-ourdigital source .venv-ourdigital/bin/activate # 의존성 설치 pip install -r requirements/base.txt # Phase 1 실행 (Claude Code) claude "OUR_SKILL_PROJECT_PLAN.md를 참조하여 ourdigital-skill-creator 스킬을 구현해줘. Code 버전으로 시작해줘." # 스킬 검증 python shared/scripts/validate_skill.py ourdigital-skill-creator # Notion 동기화 python shared/scripts/sync_notion.py ourdigital-skill-creator --action=create ``` --- ## 7. Quality Checklist ### 7.1 스킬 완성도 체크리스트 각 스킬 구현 완료 시 확인: - [ ] Desktop/SKILL.md 완성 (frontmatter 규약 준수) - [ ] Code/SKILL.md 완성 (frontmatter 규약 준수) - [ ] description에 `ourdigital` 트리거 키워드 포함 - [ ] SKILL.md body 800-1,200 words 이내 - [ ] shared/ 공통 리소스 완성 - [ ] docs/CHANGELOG.md 초기화 - [ ] 환경 변수 문서화 (docs/SETUP.md) - [ ] 실제 사용 시나리오 테스트 - [ ] Notion DB 레코드 생성 ### 7.2 스킬 간 의존성 확인 ``` ourdigital-skill-creator ──┬── 모든 스킬 생성/관리/이력 관리 │ ourdigital-brand-guide ────┼── 모든 산출물 품질 기준 │ ourdigital-blog ───────────┼── ourdigital-research (리서치 프롬프트) │ ourdigital-designer (피처드 이미지) │ ourdigital-document ───────┼── ourdigital-brand-guide (브랜드 적합성) │ ourdigital-designer (프레젠테이션 비주얼) ``` --- ## 8. Appendix ### 8.1 참조 문서 | 문서 | 위치 | 용도 | |------|------|------| | Anthropic Agent Skills | `/mnt/project/02-agent-skills.md` | 스킬 설계 원칙 | | skill-creator | `/mnt/skills/examples/skill-creator/` | 기본 스킬 생성 프레임워크 | | jamie-journal-editor | `/mnt/skills/user/jamie-journal-editor/` | 참조 패턴 (유사 블로그 에디터) | | ourdigital-research-publisher | `/mnt/skills/user/ourdigital-research-publisher/` | 기존 리서치 스킬 | ### 8.2 외부 도구 연동 | 도구 | 연동 방식 | 관련 스킬 | |------|----------|----------| | Ghost CMS | API / Admin | ourdigital-blog, ourdigital-journal | | Notion | MCP Connector + API | 전체 (문서 저장, 이력 관리) | | Perplexity | 프롬프트 생성 → 수동 실행 | ourdigital-research | | Gamma | 프롬프트 생성 → MCP | ourdigital-document | | Figma | MCP Connector | ourdigital-designer | | DALL-E/Midjourney | 프롬프트 생성 → 수동 실행 | ourdigital-designer | ### 8.3 버전 이력 | 버전 | 날짜 | 변경 내용 | |------|------|----------| | 1.0 | 2026-01-31 | 초기 프로젝트 계획 수립 | | 1.1 | 2026-01-31 | 트리거 규칙 추가, Desktop/Code 분리, 환경 표준화, Notion 이력 관리 | --- **End of Document**