# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Repository Overview

**GitHub**: https://github.com/ourdigital/our-claude-skills

This is a Claude Skills collection repository containing:
- **custom-skills/**: 65 custom skills for OurDigital workflows, SEO, GTM, Jamie Brand, NotebookLM, Notion, D.intelligence Agent Corps, Reference Curation, Mac Optimizer, TUI Designer, and Multi-Agent Collaboration
- **example-skills/**: Reference examples from Anthropic's official skills repository
- **official-skills/**: Notion integration skills (3rd party)
- **reference/**: Skill format requirements documentation

## Custom Skills Summary

### OurDigital Core (01-10)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 01 | ourdigital-brand-guide | Brand standards & writing style reference | "brand guide", "writing style" |
| 02 | ourdigital-blog | Korean blog creation (blog.ourdigital.org) | "write blog post", "블로그 작성" |
| 03 | ourdigital-journal | English essay/article (journal.ourdigital.org) | "write essay", "journal article" |
| 04 | ourdigital-research | Research → Blog workflow | "research this", "blog post" |
| 05 | ourdigital-document | Notion → Presentation workflow | "create document", "Notion export" |
| 06 | ourdigital-designer | Visual storytelling, image prompts | "create image prompt", "visual design" |
| 07 | ourdigital-ad-manager | Ad copywriting & keyword research | "ad copy", "keyword research" |
| 08 | ourdigital-trainer | Training material creation | "create training", "교육 자료" |
| 09 | ourdigital-backoffice | Business document creation | "create proposal", "견적서" |
| 10 | ourdigital-skill-creator | Meta skill for creating skills | "create skill", "init skill" |

### SEO Tools (11-34)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 11 | seo-comprehensive-audit | Unified 6-stage SEO audit orchestrator | "comprehensive SEO", "full SEO audit" |
| 12 | seo-technical-audit | Robots.txt, sitemap, crawlability | "technical SEO", "crawlability" |
| 13 | seo-on-page-audit | Meta tags, headings, links | "on-page SEO", "meta tags" |
| 14 | seo-core-web-vitals | LCP, CLS, FID, INP metrics | "Core Web Vitals", "page speed" |
| 15 | seo-search-console | GSC data analysis | "Search Console", "rankings" |
| 16 | seo-schema-validator | Structured data validation | "validate schema", "JSON-LD" |
| 17 | seo-schema-generator | JSON-LD generation — Mode 1 from existing site, Mode 2 from collected sources → claims register → drafts → validate (16) | "generate schema", "create JSON-LD", "source-to-schema", "schema from site" |
| 18 | seo-local-audit | NAP, GBP, citations | "local SEO", "Google Business Profile" |
| 19 | seo-keyword-strategy | Keyword expansion, intent, clustering, gaps | "keyword research", "keyword strategy" |
| 20 | seo-serp-analysis | Google/Naver SERP features, competitor positions | "SERP analysis", "SERP features" |
| 21 | seo-position-tracking | Rank monitoring, visibility scores, alerts | "rank tracking", "position monitoring" |
| 22 | seo-link-building | Backlink audit, toxic links, link gaps | "backlink audit", "link building" |
| 23 | seo-content-strategy | Content audit, decay, briefs, clusters | "content strategy", "content audit" |
| 24 | seo-ecommerce | Product page audit, product schema | "e-commerce SEO", "product SEO" |
| 25 | seo-kpi-framework | Unified KPIs, health scores, ROI | "SEO KPI", "SEO performance" |
| 26 | seo-international | Hreflang, content parity, multi-language | "international SEO", "hreflang" |
| 27 | seo-ai-visibility | AI search citations, brand radar, SOV | "AI visibility", "AI search" |
| 28 | seo-knowledge-graph | Entity SEO, Knowledge Panel, PAA | "knowledge graph", "entity SEO" |
| 29 | seo-gateway-architect | Gateway page strategy | "SEO strategy", "gateway pages" |
| 30 | seo-gateway-builder | Gateway page content | "build gateway page" |
| 31 | seo-competitor-intel | Competitor profiling, benchmarking, threats | "competitor analysis", "competitive intel" |
| 32 | seo-crawl-budget | Log analysis, bot profiling, crawl waste | "crawl budget", "log analysis" |
| 33 | seo-migration-planner | Site migration planning, redirect mapping | "site migration", "domain move", "사이트 이전" |
| 34 | seo-reporting-dashboard | Executive reports, HTML dashboards, aggregation | "SEO report", "SEO dashboard", "보고서" |

### Notion Tools (31-39)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 31 | notion-organizer | Notion workspace management | "organize Notion", "workspace cleanup" |
| 32 | notion-writer | Content writing to Notion | "write to Notion", "export to Notion" |

### Jamie Clinic (40-49)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 40 | jamie-brand-editor | Branded content generation | "write Jamie blog", "Jamie content" |
| 41 | jamie-brand-audit | Content review/compliance | "review content", "brand audit" |
| 42 | jamie-faq-entry | KakaoTalk Kanana chatbot Q&A entries | "카나나 답변", "Kanana Q&A", "카카오 상담 답변" |
| 43 | jamie-youtube-manager | YouTube SEO audit & management | "YouTube SEO", "YT optimization" |
| 44 | jamie-youtube-subtitle-checker | YouTube subtitle validation | "check subtitles", "subtitle QA" |
| 45 | jamie-instagram-manager | Instagram account management | "Instagram management", "IG strategy" |
| 46 | jamie-journal-editor | Journal/blog content for journal.jamie.clinic | "Jamie journal", "제이미 저널", "진료실 이야기" |
| 47 | jamie-marketing-editor | Multi-channel marketing content & ad copy | "Jamie marketing", "제이미 마케팅", "광고 카피" |

### NotebookLM Tools (50-59)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 50 | notebooklm-agent | Q&A from notebooks with citations | "ask NotebookLM", "query notebook", "노트북 질문" |
| 51 | notebooklm-automation | Notebook/source/artifact management | "create notebook", "add sources", "노트북 관리" |
| 52 | notebooklm-studio | Content generation (podcasts, videos, quizzes) | "create podcast", "generate video", "make quiz", "팟캐스트 만들기" |
| 53 | notebooklm-research | Web/Drive research and source discovery | "research topic", "find sources", "리서치" |

**Prerequisites:** `pip install notebooklm-py && playwright install chromium && notebooklm login`

### GTM/GA Tools (60-69)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 60 | gtm-audit | GTM audit — page scan, site audit, gap analysis, tag design | "GTM audit", "scan page", "tracking coverage", "gap analysis" |
| 61 | gtm-editor | GTM tag/trigger/variable creation via API, ES5 Custom HTML, dataLayer | "create GTM tag", "generate dataLayer", "modify trigger", "manage GTM" |
| 62 | gtm-validator | GTM QA — tag firing, trigger testing, naming conventions, cross-platform | "validate tags", "QA GTM", "debug GTM", "naming conventions" |

### D.intelligence Agent Corps (70-79)

| # | Skill | Purpose | Autonomy | Trigger |
|---|-------|---------|----------|---------|
| 70 | dintel-brand-guardian | Brand compliance review (100pt checklist) | Auto | "brand check", "브랜드 검수" |
| 71 | dintel-brand-editor | Brand-compliant copywriting & style evaluation | Auto + Ask | "write copy", "카피 작성" |
| 72 | dintel-doc-secretary | Document formatting, meeting notes, reports | Draft & Wait | "format document", "회의록" |
| 73 | dintel-quotation-mgr | Quotation generation (4 sub-agents) | Draft & Wait | "견적서", "quotation" |
| 74 | dintel-service-architect | Service scope design & module recommendation | Inquiry-driven | "서비스 설계", "service design" |
| 75 | dintel-marketing-mgr | Content pipeline (Magazine D., newsletter, LinkedIn) | Draft & Wait | "콘텐츠 발행", "newsletter" |
| 76 | dintel-backoffice-mgr | Invoicing, contracts, NDA, HR operations | Draft & Wait | "계약서", "인보이스" |
| 77 | dintel-account-mgr | Client relationship management & monitoring | Mixed | "client status", "미팅 준비" |
| 79 | dintel-skill-update | Cross-skill consistency management (meta-agent) | Triggered | "skill sync", "스킬 업데이트" |

**Shared infrastructure:** `_dintel-shared/` (Python package + reference docs)

**Install:** `cd custom-skills/_dintel-shared && ./install.sh --all`

**User Guide:** `custom-skills/_dintel-shared/USER-GUIDE.md`

### Reference Curator & Multi-Agent (90-91)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 90 | reference-curator | Modular skill suite for reference documentation | See sub-skills below |
| 91 | multi-agent-guide | Multi-agent collaboration setup | "set up multi-agent", "agent guardrails" |

**Pipeline Orchestrator (Recommended):**

| Command | Purpose |
|---------|---------|
| `/reference-curator` | Full pipeline orchestration with QA loop handling |

```bash
# Full pipeline from topic
/reference-curator "Claude Code best practices" --max-sources 5

# From URLs (skip discovery)
/reference-curator https://docs.anthropic.com/en/docs/prompt-caching

# With auto-approve and fine-tuning output
/reference-curator "MCP servers" --auto-approve --export-format fine_tuning
```

**Individual Sub-skills:**

| Skill | Command | Purpose |
|-------|---------|---------|
| reference-discovery | `/reference-discovery` | Search & validate authoritative sources |
| web-crawler | `/web-crawler` | Multi-backend crawling (Firecrawl/Node/aiohttp/Scrapy) |
| content-repository | `/content-repository` | MySQL storage with version tracking |
| content-distiller | `/content-distiller` | Summarization & key concept extraction |
| quality-reviewer | `/quality-reviewer` | QA loop with approve/refactor/research routing |
| markdown-exporter | `/markdown-exporter` | Export to markdown or JSONL for fine-tuning |

### System & Utility Tools (80-82)

| # | Skill | Purpose | Trigger |
|---|-------|---------|---------|
| 80 | claude-settings-optimizer | Claude settings optimization & token audit | "settings audit", "exceed response limit", "MCP error" |
| 81 | mac-optimizer | macOS system health audit & optimization (Claude Code only) | "audit my mac", "system health", "clean up caches", "check security", "update packages" |
| 82 | our-gdrive-organizer | Organize a Google Drive folder under OurDigital conventions: refresh README index, refresh per-subfolder READMEs, propose renames + moves | "/organize", "organize the Drive folder", "refresh the index", "rescan the folder" |

## Skill Structure (root `SKILL.md` + dual-platform packaging)

**Going-forward standard.** Each skill has a root `SKILL.md` (the official Agent Skills
format — natively loadable by Claude Code / Desktop / API) plus the OurDigital `code/` +
`desktop/` packaging. Reference implementations: `16-seo-schema-validator`,
`17-seo-schema-generator`. To migrate an older skill, follow
`reference/SKILL-MIGRATION-GUIDE.md` (additive — no rewrite).

```
XX-skill-name/
├── SKILL.md                 # Root directive — official Agent Skills format (LOADABLE)
├── scripts/                 # Runnable scripts (single source of truth)
├── references/              # Heavy docs, loaded on demand
├── templates/               # Optional
├── fixtures/                # Optional sample/test inputs
│
├── code/                    # Claude Code packaging
│   ├── CLAUDE.md            # Redirects to ../SKILL.md + ../scripts (no duplication)
│   └── scripts/             # Legacy/aux tools only
│
├── desktop/                 # Claude Desktop packaging
│   ├── SKILL.md             # Desktop directive with YAML frontmatter
│   ├── skill.yaml           # Extended metadata (optional)
│   └── tools/               # MCP tool documentation
│
├── shared/                  # Shared resources (optional)
└── README.md                # Overview
```

Older skills may still be `code/` + `desktop/` only (no root `SKILL.md`) — valid, but not
directly loadable. Migrate incrementally, not in bulk.

### Layer roles

| Layer | Role |
|-------|------|
| root `SKILL.md` | Canonical, loadable directive + bundled resources |
| `code/` | Claude Code packaging; `CLAUDE.md` redirects to the root |
| `desktop/` | Claude Desktop view; `SKILL.md` + `skill.yaml` + `tools/` |

### SKILL.md frontmatter (root + desktop)

```markdown
---
name: skill-name-kebab-case        # clean name: dir minus the NN- prefix
description: |
  What it does + when to use. Triggers: keyword1, keyword2, 한국어 트리거.
---

# Skill Title

Content starts here...
```

**Naming convention:** the directory keeps its `NN-` prefix for ordering
(`16-seo-schema-validator/`), but the skill `name:` is the **clean** form without it
(`name: seo-schema-validator`). Names must be kebab-case and globally unique.
Whole frontmatter ≤ 1024 chars. Full rules + migration recipe: `reference/SKILL-MIGRATION-GUIDE.md`.

## Directory Layout

```
our-claude-skills/
├── custom-skills/
│   ├── _ourdigital-shared/         # Shared config, installer, dependencies
│   ├── _dintel-shared/             # D.intelligence shared infra (Python pkg, refs, installer)
│   │
│   ├── 01-ourdigital-brand-guide/
│   ├── 02-ourdigital-blog/
│   ├── 03-ourdigital-journal/
│   ├── 04-ourdigital-research/
│   ├── 05-ourdigital-document/
│   ├── 06-ourdigital-designer/
│   ├── 07-ourdigital-ad-manager/
│   ├── 08-ourdigital-trainer/
│   ├── 09-ourdigital-backoffice/
│   ├── 10-ourdigital-skill-creator/
│   │
│   ├── 11-seo-comprehensive-audit/
│   ├── ...                          # 12-34 (SEO tools)
│   ├── 34-seo-reporting-dashboard/
│   │
│   ├── 31-notion-organizer/
│   ├── 32-notion-writer/
│   │
│   ├── 40-jamie-brand-editor/
│   ├── 41-jamie-brand-audit/
│   ├── 42-jamie-faq-entry/
│   ├── 43-jamie-youtube-manager/
│   ├── 44-jamie-youtube-subtitle-checker/
│   ├── 45-jamie-instagram-manager/
│   ├── 46-jamie-journal-editor/
│   ├── 47-jamie-marketing-editor/
│   │
│   ├── 50-notebooklm-agent/
│   ├── 51-notebooklm-automation/
│   ├── 52-notebooklm-studio/
│   ├── 53-notebooklm-research/
│   │
│   ├── 60-gtm-audit/
│   ├── 61-gtm-editor/
│   ├── 62-gtm-validator/
│   │
│   ├── 70-dintel-brand-guardian/
│   ├── 71-dintel-brand-editor/
│   ├── 72-dintel-doc-secretary/
│   ├── 73-dintel-quotation-mgr/
│   ├── 74-dintel-service-architect/
│   ├── 75-dintel-marketing-mgr/
│   ├── 76-dintel-backoffice-mgr/
│   ├── 77-dintel-account-mgr/
│   ├── 79-dintel-skill-update/
│   │
│   ├── 80-claude-settings-optimizer/
│   ├── 81-mac-optimizer/
│   ├── 82-our-gdrive-organizer/
│   │
│   ├── 90-reference-curator/       # Modular reference documentation suite
│   │   ├── 01-reference-discovery/
│   │   ├── 02-web-crawler-orchestrator/
│   │   ├── 03-content-repository/
│   │   ├── 04-content-distiller/
│   │   ├── 05-quality-reviewer/
│   │   ├── 06-markdown-exporter/
│   │   ├── 07-pipeline-orchestrator/
│   │   ├── commands/
│   │   ├── shared/
│   │   └── install.sh
│   │
│   ├── 91-multi-agent-guide/
│   │
│   └── 92-tui-design-template/
│
├── example-skills/skills-main/
├── official-skills/
└── reference/
```

## Skill Design Principles

1. **One thing done well** - Each skill focuses on a single capability
2. **Root `SKILL.md` first** - Ship a loadable root `SKILL.md`; keep `code/`+`desktop/` as packaging
3. **Directives under 1,500 words** - Concise, actionable; push detail into `references/`
4. **Self-contained** - Bundle scripts/refs as relative paths; one source of truth (no script dupes)
5. **Code-first development** - Build and self-test the runnable version first
6. **Progressive numbering** - Logical grouping by domain

## Creating New Skills

```bash
# Use the skill creator
python example-skills/skills-main/skill-creator/scripts/init_skill.py <skill-name> --path custom-skills/
```

New skills must include a root `SKILL.md` (the hybrid pattern above); model them on
`16-seo-schema-validator` / `17-seo-schema-generator`.

## Key Reference Files

- `reference/SKILL-MIGRATION-GUIDE.md` - Add a root `SKILL.md` to an existing skill (hybrid pattern, going-forward standard)
- `reference/SKILL-FORMAT-REQUIREMENTS.md` - Dual-platform format specification
- `example-skills/skills-main/skill-creator/SKILL.md` - Skill creation guide
- `AGENTS.md` - Agent routing guide for Task tool
