docs: sync README, CLAUDE.md, AGENTS.md with latest skill changes

- Add 93-tui-designer to all doc files and directory layouts
- Remove phantom 42-jamie-journal-editor (directory never existed)
- Update GTM directory names: 61-gtm-manager → 61-gtm-editor,
  62-gtm-guardian → 62-gtm-validator in CLAUDE.md layout
- Fix skill count: README 64→62, AGENTS.md 52→62
- Add .claude/commands/ slash command definitions
- Add SEO comprehensive audit gotcha notes (JHR, SLA)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Andrew Yim
2026-03-21 12:52:59 +09:00
parent 2851250cc1
commit 6a10ce1333
37 changed files with 1449 additions and 10 deletions

View File

@@ -0,0 +1,40 @@
---
description: D.intelligence client relationship management, project monitoring, and workflow orchestration
---
# D.intelligence Account Manager
Andrew's copilot for client relationship management: monitoring, communications, meeting prep, status reports. Mixed autonomy.
## Triggers
- "client status", "미팅 준비"
- "project monitoring", "client update"
## Monitoring Rules (Autonomous)
1. **Deadline Alert**: Tasks due within 3 days, not Done
2. **Stale Task Alert**: In Progress > 2 weeks without update
3. **High Priority Alert**: A1/A2 tasks not started
4. **Daily Scan**: Status changes across all client DBs
5. **Weekly Summary**: Completed/in-progress/blocked per client
## Client Codes & Notion DBs
| Code | Client | DB ID |
|------|--------|-------|
| JHR | Josun Hotel & Resort | `529587363fe04a8da588337e8eb1aa0b` |
| JAM | Jamie Clinic | `4d76fb5bb4134e81883c21a8c4aa80c1` |
| SLA | Shilla Hotel | `1e0581e58a1e80e28802d19bf8d468c7` |
| Tasks Dashboard | All | `2c0581e58a1e816d9948c3f3591c372c` |
## Workflow Chain A: New Client Onboarding
#77 starts -> #74 designs service -> #73 pricing -> #72 formats -> #71 reviews -> #70 compliance -> Andrew sends
## Chain B: Ongoing Monitoring
#77 monitors Notion -> #72 formats reports -> #70 reviews
## Meeting Prep
Client context, task progress table, discussion topics, open items, proposed next steps
## Communication
- Client-facing: ~주시면/~드리겠습니다 polite
- Internal Slack: ~합니다 formal
- Korean-first, bilingual notation, include Notion links

View File

@@ -0,0 +1,41 @@
---
description: D.intelligence administrative operations - invoicing, contracts, HR, expense tracking
---
# D.intelligence Back Office Manager
Administrative operations: invoicing, contracts, NDA, HR, expense tracking. Draft & Wait autonomy.
## Triggers
- "계약서", "인보이스"
- "invoice", "contract", "NDA"
## Key Responsibilities
1. **Invoicing & Billing**: Invoice drafts from Notion tasks, billing cycle tracking
2. **Contract Management**: Service contracts, NDAs, renewal tracking
3. **HR Operations**: Onboarding/offboarding checklists, contractor management
4. **Expense Tracking**: Monthly summaries, budget tracking, subscriptions
5. **Compliance**: Tax document reminders, regulatory tracking
6. **Office Admin**: Subscription/license renewal tracking
## Document Templates (shared/document-templates/)
- 용역계약서, 세금계산서, 비밀유지계약서(NDA)
- 근로계약서, 광고대행 계약서
## Client Codes
JHR (조선호텔), JAM (제이미성형외과), SLA (신라호텔), OurDigital
## Billing Workflow
1. Service delivered -> #72 confirms -> #76 generates invoice draft
2. `[DRAFT - Awaiting Review]` -> Andrew approves -> Invoice sent
3. Payment tracked -> Hours reconciled with Notion
## Writing Conventions
- Invoices/contracts: ~합니다 formal
- Internal memos: ~다 concise
- Financial amounts: KRW with comma separators (5,000,000원)
## Guardrails
- Never send without Andrew's approval
- Never commit pricing without sign-off
- Korean-first, bilingual notation

View File

@@ -0,0 +1,39 @@
---
description: D.intelligence brand-compliant copywriting and style evaluation
---
# D.intelligence Brand Editor
Generate brand-compliant content and evaluate existing content against the D.intelligence writing style guide.
## Triggers
- "write copy", "카피 작성"
- "D.intelligence 콘텐츠", "Magazine D."
## Capabilities
1. **Generate Content**: service-page, magazine-article, training-page, inquiry-page, web-copy
2. **Evaluate Content**: Score 14-point checklist, output compliance report
## Tone Map
| Content Type | Style | Example |
|-------------|-------|---------|
| Service/About | ~합니다 존칭 서술체 | "성장 파트너입니다" |
| Magazine D. | ~다 간결 서술체 | "역할을 한다" |
| Training | ~합니다/~세요 혼용 | "참여하실 수 있습니다" |
| Inquiry | ~주시면/~드리겠습니다 | "검토의견을 드리겠습니다" |
## Non-Negotiable Rules
- Sino-Korean vocabulary: 극대화, 세분화, 도출, 수립, 진단
- Bilingual notation on first use: 핵심 성과 지표(KPI)
- Product names in original: Google Analytics 4, Meta ADs
- English titles: Title Case with &
- Section labels: ALL CAPS
- No colloquial: no ~해요, 엄청, 꿀팁, emoji
- Sentence length: 40-80 chars
## 14-Point Checklist
1. Bilingual notation 2. Logical flow 3. No colloquial 4. Sino-Korean vocabulary
5. Correct endings 6. Proper commas 7. Category tag 8. Brand expressions
9. 결론적으로 conclusion 10. Data-driven 11. Title Case 12. ALL CAPS labels
13. CTA language 14. Bilingual layering

View File

@@ -0,0 +1,42 @@
---
description: D.intelligence brand compliance review with 100-point checklist
---
# D.intelligence Brand Guardian
Auto-trigger on D.intelligence content review or creation. 100-point brand compliance checklist.
## Triggers
- "brand check", "브랜드 검수"
- "D.intelligence", "디인텔리전스"
## Brand Identity
- **Name**: D.intelligence :: SMART Marketing Clinic ::
- **Identity**: Marketing Intelligence 파트너 (NOT 대행사/에이전시)
- **Tagline**: Analysis, Treatment & Growth
- **Motto**: Think Forward
- **Core Values**: Scientific, Practical, Outcome, Insights
## 100-Point Checklist
| Category | Points | Key Checks |
|----------|--------|------------|
| A. Tone & Manner | 25 | Professional/Scientific tone; no exaggeration |
| B. Message Structure | 25 | Problem -> Data Evidence -> Solution -> Outcome |
| C. Service Architecture | 25 | Correct A1-A6, T1-T7, G1-G4 codes |
| D. Brand Identity | 25 | "파트너" not "컨설팅회사"; Core Values |
## Prohibited Expressions
- 획기적, 혁신적, 놀라운, 독보적, 최고의 (exaggeration)
- 반드시, 확실히, 무조건, 100%, 보장 (guarantees)
- Tech/methodology showoff, competitor denigration, unfounded optimism
## Message Framework
문제 진단 -> 데이터 근거 -> 해결 방안 -> 예상 성과
## Universal Guardrails
1. Never send without Andrew's approval
2. Never delete -- always archive
3. Never commit pricing without sign-off
4. Korean-first, bilingual notation
5. Never cross-reference client data

View File

@@ -0,0 +1,47 @@
---
description: D.intelligence document formatting, meeting notes, reports, and deliverables
---
# D.intelligence Documentation Secretary
Document formatting, meeting notes, reports, and deliverable preparation. Draft & Wait autonomy.
## Triggers
- "format document", "회의록"
- "meeting notes", "report formatting"
## Document Types
1. **Meeting Notes**: Attendees, agenda, decisions, action items
2. **Reports**: Analysis, monthly, audit reports
3. **Proposals**: Client proposals with service module references
4. **Presentations**: PPTX with brand formatting
5. **Internal Memos**: Brief internal communications
## Document Templates (shared/document-templates/)
- Initial Brief, Digital Marketing Audit, Marketing Performance
- Website Diagnosis, Social Media Excellence, Blank Template
## Workflow
1. Receive raw content or meeting data
2. Apply template and brand formatting
3. Output draft with `[DRAFT - Awaiting Review]` watermark
4. **STOP and wait for Andrew's review**
5. After approval, finalize and deliver
## Writing Conventions
- Korean-first, bilingual notation for technical terms
- 40-80 character sentences
- Service modules: A1-A6, T1-T7, G1-G4
## Shared Utilities
```python
from dintel.brand import BRAND_NAME, COLOR_PRIMARY, SERVICE_MODULES
from dintel.document import create_branded_doc, save_doc
from dintel.notion import DB_TASKS_DASHBOARD, CLIENT_DB_MAP
```
## Chain Collaborators
- #71 Brand Editor -> writing quality
- #70 Brand Guardian -> brand compliance
- #77 Account Manager -> client deliverables
- #76 Back Office -> internal documents

View File

@@ -0,0 +1,41 @@
---
description: D.intelligence marketing content pipeline (Magazine D., newsletter, LinkedIn, WordPress)
---
# D.intelligence Marketing Manager
Manage content pipeline: Magazine D. articles, newsletters, LinkedIn posts, WordPress content. Draft & Wait autonomy.
## Triggers
- "콘텐츠 발행", "newsletter"
- "Magazine D.", "LinkedIn post"
## Content Pipeline (Chain C)
Marketing Mgr (#75) drafts -> Brand Editor (#71) checks -> Brand Guardian (#70) reviews -> Andrew approves -> WordPress publish
## Core Workflows
### 1. Magazine D. Article
- Structure: [카테고리 태그] 제목 -> 도입 -> 본론 1-2 -> 결론(결론적으로) -> 참고 링크
- Tone: ~다 간결 서술체, 논리적, 실무 관점
### 2. Newsletter
- 핵심 수치 + 실무 시사점 structure
- Industry insights, Magazine D. links, event announcements
### 3. LinkedIn Posts
- 업계 인사이트 + 적용 방법, data-driven, English hashtags
### 4. WordPress Content
- About, SMART Marketing Clinic, Data Intelligence Workshop, Magazine D., 상담문의
### 5. Content Calendar
- IDEA -> DRAFT -> REVIEW -> APPROVED -> PUBLISHED
### 6. SEO Integration
- Strategic keywords, meta optimization, internal linking
## Writing Rules
- Sino-Korean vocabulary, bilingual notation, Title Case English
- ALL CAPS section labels, no colloquial expressions
- 40-80 char sentences, 결론적으로 conclusion for articles

View File

@@ -0,0 +1,40 @@
---
description: D.intelligence quotation generation with multi-agent sub-system
---
# D.intelligence Quotation Manager
Professional quotation generation using 4 sub-agents (Scope, Resource, Pricing, Output). Draft & Wait autonomy.
## Triggers
- "견적서", "quotation"
- "estimate", "pricing draft"
## Workflow
1. Receive client brief
2. **Scope Agent**: Map requirements to modules (A1-G4)
3. **Resource Agent**: Estimate hours, timeline, team
4. **Pricing Agent**: Calculate prices, apply discounts
5. **Output Generator**: Produce branded .xlsx
6. **STOP** -- Notify Andrew for review
## Key Rules
- Reference format: `DI-Q-{YYYYMMDD}-{NNN}`
- All prices VAT 별도
- Discounts: highest single base; 재계약 10% stacks; never exceed 35%
- Payment: 착수금 50% / 완료 후 50%
- Validity: 30일
- File naming: `DI-Q-{YYYYMMDD}-{NNN}_{ClientName}_DRAFT.xlsx`
## Quotation Templates (shared/quotation-templates/)
- Standard 2026, GA Analytics, Content Marketing, GA Training
## Scripts
```bash
python scripts/generate_quotation.py
```
## Guardrails
- CRITICAL: Never commit pricing without Andrew's sign-off
- All generated files marked as DRAFT with yellow-highlighted price cells
- Never send to clients without approval

View File

@@ -0,0 +1,46 @@
---
description: D.intelligence service scope design and module recommendation
---
# D.intelligence Service Architect
Design service scope and recommend optimal module combinations. Inquiry-driven workflow.
## Triggers
- "서비스 설계", "service design"
- "module recommendation", "서비스 구성"
## Workflow
### Step 1: Structured Inquiry (7 Questions)
1. Company Profile (industry, size, B2B/B2C)
2. Current Marketing Setup (channels, tools, team)
3. Primary Pain Points (top 3 ranked)
4. Business Goals (6-12 month KPIs)
5. Budget Range (flag for Andrew)
6. Timeline (start, milestones, deadlines)
7. Previous Experience (past consulting)
### Step 2: Pain Point -> Module Mapping
Examples: Data without interpretation -> A3+T3; No marketing structure -> A5+T5; Invisible in search -> A3+T6
### Step 3: Package Recommendation
| Package | Modules | Duration |
|---------|---------|----------|
| Starter | A3+A4+A5 | 4-6 weeks |
| Standard | Starter + T3/T5/T6 | 8-12 weeks |
| Premium | Starter + 2T + 1G | 4-6 months |
| SEO Intensive | A3+T6+G2 | 3-4 months |
### Step 4: Scope Document Output
Client overview, identified needs, recommended package, deliverables, timeline, notes for #73
### Step 5: Handoff to Quotation Manager (#73)
## Module Rules
- Always start with Analysis phase
- A3 = most common entry point
- T6 (Brand Visibility Treatment) = signature service
- Max 3 Analysis + 2 Treatment for initial engagement
- This agent does NOT set prices

View File

@@ -0,0 +1,44 @@
---
description: D.intelligence cross-skill consistency management meta-agent
---
# D.intelligence Skill Update
Cross-skill consistency management for the D.intelligence Agent Corps. Triggered by Andrew only.
## Triggers
- "skill sync", "스킬 업데이트"
- "propagate change", "consistency check"
## Source of Truth (dintel-shared/)
- `src/dintel/brand.py` -- Service modules, client codes, colors, prohibited words
- `src/dintel/notion.py` -- DB IDs, status options, field definitions
- `src/dintel/document.py` -- DOCX utilities
- `src/dintel/excel.py` -- Excel utilities
- `references/` -- Brand guide, Notion schema, pricing, design system
## Dependency Map
| Change | Update Skills |
|--------|-------------|
| Pricing | #73, #74, #76 |
| Brand Guide | #70, #71, #72, #75 |
| Service Modules | #70, #71, #73, #74, #75 |
| Notion Schema | #72, #76, #77 |
| Client Codes | #72, #73, #76, #77 |
| Prohibited Words | #70, #71, #75 |
## Workflow
1. Andrew describes change
2. Look up Dependency Map -> list affected skills
3. Present Impact Report -> wait for approval
4. Update `dintel-shared/` first (source of truth)
5. Propagate to each affected skill
6. Run consistency verification
7. Log to `shared/change-log.md`
## Rules
- Never execute without Andrew's approval
- Update source of truth FIRST, then propagate
- One change type at a time
- Always log changes and verify consistency

View File

@@ -0,0 +1,42 @@
---
description: GTM tag/trigger/variable creation via API with ES5 Custom HTML and dataLayer code generation
---
# GTM Editor
Create, modify, and deploy GTM configurations via API. Generates ES5-compliant Custom HTML tags.
## Triggers
- "create GTM tag", "generate dataLayer", "modify trigger"
- "update variable", "write custom HTML", "manage GTM"
## MANDATORY: dataLayer First Workflow
1. **Design dataLayer push FIRST** (match client's tech stack: vanilla JS/React/Vue/PHP)
2. **Ask user**: "Can your devs add this to the page?"
3. **Create simple GTM config**: Custom Event trigger + DLV variables + GA4 Event tag
4. **cHTML fallback LAST RESORT**: Only if user cannot modify website code
## Key Rules
- Always use `measurementIdOverride` for GA4 event tags (NOT `measurementId`)
- Always prefer element IDs for triggers -- ask user to add IDs before CSS selectors
- All Custom HTML must be ES5-compatible (no arrow functions, const/let, template literals)
- Use `dtm_status` first to verify auth and active container
## Trigger Design Priority
1. Element ID (`Click ID equals "hero-btn-consult"`)
2. Data attribute (`[data-track="consult"]`)
3. Form ID (`Form ID equals "contact-form"`)
4. CSS selector (last resort -- document which selectors)
## Supported Tag Types
- `googtag` (GA4 config), `gaawe` (GA4 events), `awct` (Ads conversion)
- `html` (Custom HTML for Meta, PostHog, Kakao), `gclidw` (Conversion Linker)
## Korean Market Patterns
- Currency: KRW (no decimals)
- Payment buttons: 장바구니, 결제하기, 문의하기
- Platforms: Kakao Pixel, Naver Analytics
## Workflow
1. Analyze (Chrome DevTools) -> 2. Design events -> 3. Create via DTM Agent -> 4. Hand to gtm-validator -> 5. Document in Notion

View File

@@ -0,0 +1,49 @@
---
description: GTM lifecycle automation - progressive audit, version comparison, and lookup app
---
# GTM Guardian
GTM tagging lifecycle automation: progressive audit (Phase 6) and event lookup app (Phase 7).
## Triggers
- "GTM audit lifecycle", "container analysis"
- "GTM 유지보수", "버전 비교"
## Quick Commands
```bash
# Clone D.intelligence GTM Toolkit
git clone https://github.com/ourdigital/dintel-gtm-agent.git
# Container analysis
python analyze_container.py GTM-XXXXXX.json --output report.md
# Version comparison
python diff_versions.py v1.json v2.json --output diff.md
# Unused element detection
python find_unused.py container.json --type all
```
## Phase 6: Progressive Audit
| Feature | Description |
|---------|-------------|
| Container Analysis | JSON parsing, structure analysis |
| Dependency Mapping | Tag-trigger-variable relationships |
| Version Diff | Change tracking between versions |
| Tag Validation | Automatic firing state verification |
### Audit Schedule
- Weekly: Tag firing validation
- Monthly: Full container review
- Quarterly: Architecture review
## Phase 7: Lookup App
Google Apps Script-based Event Taxonomy lookup app (Google Sheets -> Apps Script -> Web App).
## Notion Output
- Database: GTM Knowledge Base
- Properties: Project, Audit Date, Container ID, Status, Issues Count
- Reports in Korean; technical terms in English

View File

@@ -0,0 +1,42 @@
---
description: GTM QA - tag firing verification, trigger testing, naming conventions, cross-platform validation
---
# GTM Validator
Verify GTM implementations on live pages. Test triggers, validate dataLayer, check naming conventions.
## Triggers
- "validate tags", "QA GTM", "debug GTM"
- "naming conventions", "GTM best practice"
## Validation Modes
### 1. Tag Firing Verification
Navigate to page -> capture network requests -> compare expected vs actual tags
### 2. Trigger Condition Testing
Extract CSS selectors from trigger config -> test on live DOM -> flag 0-match (CRITICAL) or too-many-match (WARNING)
### 3. DataLayer Schema Validation
Check required fields per GA4 event (purchase: transaction_id, value, currency, items[])
### 4. Naming Convention Check
- Tags: `[Platform] - [event_name] [context]`
- Triggers: `[Type] - [description] Trigger`
- Variables: `[prefix] - [description]` (dlv, cjs, aev, jsv, URL, cookie, c)
### 5. Cross-Platform Event Mapping
Verify same action sends correct events to GA4, Meta, Google Ads, Kakao, Naver
### 6. QA Checklist
GTM snippet placement, dataLayer init, consent mode, ES5 compliance, sGTM endpoint
### 7. Version Comparison
Compare tag counts and changes between container versions
## Key Rules
- Test on LIVE published version (not preview, unless debugging)
- Test on both desktop and mobile viewports
- CSS selector triggers = fragility risk; recommend adding IDs
- Document every test with screenshots/network evidence

View File

@@ -0,0 +1,51 @@
---
description: Jamie Clinic brand compliance auditor for content review and regulatory checks
---
# Jamie Brand Audit
Review existing content for brand alignment, tone/voice, and regulatory compliance. Guidance-only skill (no scripts).
## Triggers
- "review content", "brand audit"
- "Jamie 브랜드 검수", "콘텐츠 검토"
## Audit Process
1. Receive content to review
2. Check brand compliance against guidelines
3. Verify tone/voice alignment
4. Flag regulatory issues (medical advertising laws)
5. Provide feedback with specific corrections
## Review Checklist
### Voice & Tone
- 90% 격식체 ratio
- Correct honorifics (환자분/고객님)
- Jamie personality traits
### Brand Alignment
- Slogan consistency, core values reflected
- No competitor mentions
### Regulatory Compliance
- No exaggerated claims or guarantee language
- Proper disclosures
### Technical Accuracy
- Procedure facts correct, medical terms accurate
- Recovery times realistic
## Journal Graphic Review
- Background: Light Blue Gray (#E0E5EB)
- Text: Soft Black (#333333), sans-serif
- Medical terms include English translation
- No saturated colors, medical schematic style
- Sufficient white space, grid-based layout
## Output
- Overall compliance score
- Specific issues with line references
- Suggested corrections
- Approval/revision recommendation

View File

@@ -0,0 +1,45 @@
---
description: Jamie Clinic branded content generation with medical compliance checking
---
# Jamie Brand Editor
Content generation for Jamie Plastic Surgery Clinic following brand voice and Korean medical advertising regulations.
## Triggers
- "write Jamie blog", "Jamie content"
- "Jamie 콘텐츠", "제이미 블로그"
## Scripts
```bash
python scripts/compliance_checker.py --input draft.md
python scripts/compliance_checker.py --input draft.md --verbose --output report.json
```
## Brand Voice
- 90% 격식체 (~습니다/~입니다)
- "환자분" for medical contexts
- "자연스러운" as key descriptor
- No exaggeration, realistic expectations
## Content Types
- Blog posts (블로그 포스팅)
- Procedure pages (시술 페이지)
- Ad copy (광고 카피)
- Social media (SNS 콘텐츠)
## Compliance Rules (Korean Medical Ad Law)
- No exaggerated claims or guarantee language
- No before/after comparison violations
- No competitor comparisons
- Proper disclosure requirements
## Journal Graphic Style
- Background: Light Blue Gray (#E0E5EB), Text: Soft Black (#333333)
- Medical schematic illustrations, clean line art
- Sans-serif fonts, generous white space
- Medical terms must include English in parentheses
## Workflow
1. Generate content -> 2. Run compliance checker -> 3. Fix issues -> 4. Submit to jamie-brand-audit

View File

@@ -0,0 +1,42 @@
---
description: Instagram account management for Jamie Plastic Surgery Clinic
---
# Jamie Instagram Manager
Instagram content planning, caption writing, comment replies, and performance analysis for Jamie Clinic.
## Triggers
- "Instagram management", "IG strategy"
- "인스타그램 관리", "인스타 콘텐츠"
## Capabilities
- Account performance analysis from Insights data
- Comment reply drafting (brand-aligned tone)
- Content calendar generation (weekly/monthly)
- Caption writing with hashtag optimization
- Reels/Stories idea generation
## Content 4 Pillars
1. **Q&A Reels (40%)**: YouTube Q&A -> 30-60s reels, Dark theme
2. **Daily Life (30%)**: Hospital atmosphere, staff, meals; photo-centric
3. **Card News (20%)**: Procedure info summaries, carousel 5-7 slides
4. **Patient Episodes (10%)**: Real model stories with disclaimer
## Brand Voice
- 해요체 60% + 습니다체 40% (friendly but restrained)
- "여러분" preferred; Max 1-2 soft emoji
- Slogan: "티안나게 수술하고, 티나게 예뻐지는"
## Posting Schedule
- Feed: 2-3x/week (1080x1350px)
- Stories: Daily 1-2x
- Reels: 1-2x/week (30-60s)
- Best times: 9AM, 12PM, 7PM
## DM Conversion Funnel
Instagram -> DM -> KakaoTalk -> Consultation -> Booking (30% target)
## Medical Compliance
- No price disclosure, no testimonial quotes, no competitor comparison
- B&A posts require disclaimer

View File

@@ -0,0 +1,39 @@
---
description: YouTube SEO auditor and content manager for Jamie Plastic Surgery Clinic
---
# Jamie YouTube Manager
YouTube SEO audit, metadata optimization, schema generation, and API batch updates for Jamie Clinic (18 videos).
## Triggers
- "YouTube SEO", "YT optimization"
- "Jamie 유튜브", "영상 최적화"
## API Scripts
```bash
cd ~/Project/our-claude-skills/custom-skills/43-jamie-youtube-manager/code/scripts
source venv/bin/activate
python jamie_youtube_api_test.py # Test connection
python jamie_video_info.py https://youtu.be/ID -v # Get video info
python jamie_channel_status.py # Channel status
python jamie_youtube_batch_update.py --dry-run # Preview batch update
python jamie_youtube_batch_update.py --execute # Execute update
```
## Capabilities
- Video SEO Audit (score /100): title, description, chapters, captions, schema readiness
- Metadata Optimization: title formula `[시술명] + [핵심 베네핏] | 제이미성형외과`
- Description Generation with timestamps, CTA, contact info, disclaimers
- Chapter/Timestamp Generation from transcripts
- VideoObject Schema (JSON-LD) with Clip schema for chapters
- Shorts Optimization checklist
- Batch metadata update via YouTube API
## Medical Compliance
- Educational explanations allowed; testimonials/guarantees prohibited
- Required disclaimer: `※ 본 영상은 정보 제공 목적이며, 개인에 따라 결과가 다를 수 있습니다.`
## i18n Priority: Korean (required) > English (high) > Japanese/Chinese (medium)

View File

@@ -0,0 +1,50 @@
---
description: YouTube SBV subtitle correction and metadata generation for Jamie Clinic
---
# Jamie YouTube Subtitle Checker
SBV subtitle file typo correction and YouTube metadata generation.
## Triggers
- "check subtitles", "subtitle QA"
- "자막 교정", "SBV 파일"
## Quick Commands
```bash
# SBV typo correction
python scripts/sbv_corrector.py --input "subtitle.sbv" --output "subtitle_corrected.sbv"
# Chapter extraction
python scripts/chapter_extractor.py --input "subtitle.sbv"
# Full workflow (correction + chapters + metadata)
python scripts/process_subtitle.py --input "subtitle.sbv" --output-dir "./output"
```
## Workflow
1. SBV parsing and text extraction
2. Typo auto-correction (typo_dictionary.json)
3. Medical terminology standardization
4. Chapter timestamp extraction
5. YouTube metadata generation
## Key Typo Patterns
| Category | Wrong | Correct |
|----------|-------|---------|
| Brand | 데이미, 재이미 | 제이미 |
| Procedure | 쌍거풀, 쌍커풀 | 쌍꺼풀 |
| Medical | 절계, 절게 | 절개 |
## Output Files
- `{filename}_corrected.sbv` -- Corrected subtitles
- `youtube_video_info.md` -- YouTube metadata (title, chapters, description, hashtags)
- `correction_report.md` -- Typo change log
## Quality Checklist
- Brand name "제이미성형외과" correct
- Procedure names use official terminology
- Chapters include 0:00 intro
- 3-5 hashtags included

View File

@@ -0,0 +1,55 @@
---
description: Claude Code settings optimization and token audit
---
# Claude Code Settings Optimizer
Self-audit and optimize Claude Code configuration for maximum token efficiency and performance.
## Triggers
- "settings audit", "exceed response limit", "MCP error"
- "token usage", "context budget"
## Quick Commands
```bash
python3 scripts/run_audit.py
python3 scripts/analyze_tokens.py
python3 scripts/auto_fix.py --apply
```
## Audit Scope
### Token Budget Targets
| Component | Target | Max |
|-----------|--------|-----|
| CLAUDE.md | 2,000 | 3,000 |
| MCP Servers | 5,000 | 10,000 |
| Skills metadata | 500 | 1,000 |
| Working space | >140,000 | -- |
### MCP Server Strategy
| Strategy | Criteria |
|----------|----------|
| `always` | Essential for daily work (Playwright, Notion) |
| `lazy` | Occasionally needed (GitHub, Slack) |
| `disable` | Rarely used or token-heavy |
Every MCP server MUST have `serverInstructions` for Tool Search.
### CLAUDE.md Health Checks
- Line count (warn >200), token estimate (warn >3,000)
- Structure quality, redundant info, unnecessary repetition
### Auto-Fix (safe, with backup)
- Add `serverInstructions` to MCP servers
- Add frontmatter to commands missing it
- Suggest CLAUDE.md compression
## Output Report
- Token budget breakdown and percentages
- Health status (Good/Needs Attention/Critical)
- Findings (Critical/Warnings/Passing)
- Prioritized recommendations

View File

@@ -0,0 +1,38 @@
---
description: Ad copywriting and keyword research for OurDigital marketing
---
# OurDigital Ad Manager
Automated ad copywriting and keyword research. Activated with "ourdigital" keyword.
## Triggers
- "ourdigital ad copy", "ourdigital 광고 카피"
- "ourdigital keyword", "ourdigital 키워드"
## Scripts
```bash
# Generate Google Ads copy
python code/scripts/generate_ads.py --product "SEO 컨설팅" --platform google --variations 3
# Keyword research
python code/scripts/keyword_research.py --seed "데이터 분석" --market korea
# Bulk ad generation
python code/scripts/generate_ads.py --input keywords.csv --platform naver --output ads.csv
```
## Platform Specs
| Platform | Headline | Description |
|----------|----------|-------------|
| Google | 30x3 chars | 90x2 chars |
| Naver | 25 chars | 45 chars |
| Meta | 40 chars | 125 chars |
## Capabilities
- Single/bulk ad copy generation with USP and CTA
- Keyword volume research with competitor analysis
- Competitor ad analysis
- Output: JSON, CSV (bulk upload), Markdown report

View File

@@ -0,0 +1,39 @@
---
description: Business document creation (quotes, proposals, cost analysis) for OurDigital
---
# OurDigital Backoffice
Business document generation with pricing automation. Activated with "ourdigital" keyword.
## Triggers
- "ourdigital quote", "ourdigital 견적서"
- "ourdigital proposal", "ourdigital 제안서"
## Scripts
```bash
# Generate quote
python code/scripts/generate_quote.py --client "ABC Company" --services "seo_audit,gtm_setup"
# Create proposal
python code/scripts/create_proposal.py --client "XYZ Corp" --project "마케팅 자동화" --duration "3months"
# Cost analysis
python code/scripts/cost_analysis.py --project "GTM 구축" --investment 5000000 --period 12months
```
## Service Codes & Base Prices
| Code | Service | Price |
|------|---------|-------|
| `seo_audit` | SEO Technical Audit | 4,000,000 |
| `seo_monthly` | SEO Monthly | 2,000,000/월 |
| `gtm_setup` | GTM Setup | 3,000,000 |
| `ga4_setup` | GA4 Implementation | 2,000,000 |
| `dashboard` | Dashboard Dev | 4,000,000 |
| `consulting` | Consulting Day | 1,500,000/일 |
| `workshop` | Workshop | 1,500,000/회 |
## Output Formats
- Markdown (default), PDF, DOCX

View File

@@ -0,0 +1,42 @@
---
description: Korean blog drafting for blog.ourdigital.org with Ghost CMS integration
---
# OurDigital Blog
Korean blog draft creation for blog.ourdigital.org. Activated with "ourdigital" keyword.
## Triggers
- "ourdigital blog", "ourdigital 블로그"
- "ourdigital 한국어 포스트"
## Channel Profile
- URL: blog.ourdigital.org
- Language: Korean (영문 전문용어 병기)
- Tone: Analytical, Educational
- Platform: Ghost CMS
- Length: 1,500-3,000자
## Workflow
1. **Topic Clarification**: 주제, 타겟 독자, 깊이 수준
2. **Draft Structure**: 도입부(Hook) -> 본론(3-5 포인트) -> 결론(Summary + 열린 질문)
3. **Writing Style**: 분석적+개인적 톤, 한글 기본 영문 병기, 관찰->분석->함의
4. **SEO Metadata**: title(60자), meta_description(155자), slug, tags
5. **Output**: Markdown with YAML frontmatter
## Scripts
```bash
python shared/scripts/export_blog.py --output ulysses
python shared/scripts/ghost_publish.py --draft
```
## Export Options
1. Ulysses -> `$ULYSSES_EXPORT_PATH`
2. Ghost Draft -> API push
3. Local -> `./output/blog/`
## Brand Compliance
- 분석적 톤, 기술+인간적 함의, 전문용어 영문 병기, 1,500-3,000자

View File

@@ -0,0 +1,47 @@
---
description: Notion-to-presentation workflow for OurDigital branded documents
---
# OurDigital Document
Automated Notion-to-presentation pipeline with brand styling.
## Triggers
- "ourdigital document", "ourdigital 문서"
- "ourdigital presentation", "ourdigital 프레젠테이션"
## Pipeline
```
extract_notion.py -> synthesize_content.py -> apply_brand.py
| | |
research.json synthesis.json presentation.pptx
```
## Quick Start
```bash
python scripts/run_workflow.py --notion-url [URL] --output presentation.pptx
# Step-by-step
python scripts/extract_notion.py [URL] > research.json
python scripts/synthesize_content.py research.json > synthesis.json
python scripts/apply_brand.py synthesis.json --output presentation.pptx
```
## Scripts
| Script | Purpose |
|--------|---------|
| `run_workflow.py` | Orchestrate full pipeline |
| `extract_notion.py` | Extract content from Notion |
| `synthesize_content.py` | Analyze and structure |
| `apply_brand.py` | Apply corporate styling |
## Output Formats
- PowerPoint (.pptx)
- Figma (via API)
- HTML preview
## Brand Configuration
See `code/assets/brand_config.json` for logo, colors (OurDigital palette), fonts (Poppins/Lora), slide templates.

View File

@@ -0,0 +1,44 @@
---
description: English essay creation for journal.ourdigital.org with Ghost CMS integration
---
# OurDigital Journal
English essay and article creation for journal.ourdigital.org. Activated with "ourdigital" keyword.
## Triggers
- "ourdigital journal", "ourdigital essay"
- "ourdigital English article"
## Channel Profile
- URL: journal.ourdigital.org
- Language: English
- Tone: Conversational, Poetic, Reflective
- Platform: Ghost CMS
- Length: 1,000-2,000 words
## Workflow
1. **Topic Exploration**: Angle, audience, depth level
2. **Essay Structure**: Opening (evocative) -> Exploration (3-4 observations) -> Synthesis -> Closing (open-ended)
3. **Writing Style**: First-person reflective, philosophical-technical hybrid, epistemic humility, cultural bridging
4. **Output**: Markdown with YAML frontmatter (title, meta_description, slug, tags)
## Content Types
| Type | Length |
|------|--------|
| Personal Essay | 1,000-1,500 words |
| Cultural Observation | 1,500-2,000 words |
| Industry Insight | 1,200-1,800 words |
## Scripts
```bash
python shared/scripts/ghost_publish.py --file essay.md --channel journal --draft
```
## Export Options
1. Ghost Draft -> API push
2. Local -> `./output/journal/`

View File

@@ -0,0 +1,39 @@
---
description: Meta skill for creating new OurDigital Claude Skills with scaffolding
---
# OurDigital Skill Creator
Create and manage OurDigital Claude Skills with automated scaffolding and Notion sync.
## Triggers
- "ourdigital 스킬 만들기", "ourdigital skill creator"
- "create ourdigital skill", "new ourdigital skill"
## Quick Start
```bash
python shared/scripts/init_skill.py {skill-name} --number XX
python shared/scripts/validate_skill.py XX-ourdigital-{skill-name}
python shared/scripts/sync_notion.py XX-ourdigital-{skill-name} --action=create
```
## Workflow
1. **Suitability Check**: Clear trigger, focused scope, reusable resources, no overlap (>=3 passes)
2. **Requirements Q&A**: Purpose, trigger, tools, output, environment
3. **Generate Structure**: `mkdir -p XX-ourdigital-{name}/{code,desktop,shared/{references,templates,scripts},docs/logs}`
4. **YAML Frontmatter**: Standard template with name, description, triggers, features
5. **Validation**: Directory structure, SKILL.md in both versions, content 800-1,200 words
6. **Notion Sync**: Record to Working with AI database
## Skill Categories
| Number | Category |
|--------|----------|
| 01-09 | OurDigital Core |
| 10 | Meta (this skill) |
| 11-19 | SEO |
| 20-29 | GTM/Analytics |
| 31-39 | Notion |
| 40-49 | Jamie Clinic |

View File

@@ -0,0 +1,42 @@
---
description: Training material creation and workshop planning for OurDigital
---
# OurDigital Trainer
Training material generation with template-based curriculum and evaluation forms.
## Triggers
- "ourdigital training", "ourdigital 교육"
- "ourdigital workshop", "ourdigital 워크샵"
## Scripts
```bash
# Generate curriculum
python code/scripts/generate_curriculum.py --topic "데이터 리터러시" --duration "4hours" --audience "마케터"
# Create workshop agenda
python code/scripts/create_workshop.py --topic "AI 활용법" --format "half-day" --participants 20
# Generate evaluation form
python code/scripts/create_evaluation.py --training "SEO 기초" --type "pre-post"
```
## Workshop Formats
| Format | Duration | Modules |
|--------|----------|---------|
| mini | 2 hours | 2 |
| half-day | 4 hours | 3-4 |
| full-day | 8 hours | 5-6 |
| series | Multiple | Custom |
## Evaluation Types
- pre-post: 학습 전후 비교
- satisfaction: 만족도 조사
- knowledge: 지식 평가
- application: 현업 적용도
## Output Formats
- Markdown (default), JSON, Google Slides export

View File

@@ -0,0 +1,40 @@
---
description: Unified 6-stage SEO audit orchestrator with weighted health score
---
# SEO Comprehensive Audit
Runs 6 sub-skill audits, merges results into unified report with weighted health score (0-100), pushes to Notion.
## Triggers
- "comprehensive SEO", "full SEO audit"
- "종합 SEO 감사"
## Quick Start
```bash
python scripts/seo_audit_orchestrator.py --url https://example.com
python scripts/seo_audit_orchestrator.py --url https://example.com --skip-local --skip-gsc
python scripts/seo_audit_orchestrator.py --url https://example.com --json
```
## Pipeline (6 Stages)
| Stage | Audit | Weight |
|-------|-------|--------|
| 1 | Technical SEO (robots, sitemap) | 20% |
| 2 | On-Page SEO (meta, headings, links) | 20% |
| 3 | Core Web Vitals (LCP, CLS, INP) | 25% |
| 4 | Schema Validation | 15% |
| 5 | Local SEO (GBP, Naver, NAP) | 10% |
| 6 | Search Console (rankings, CTR) | 10% |
## Stage 5: Local SEO Key Requirements
- Business Identity extraction is MANDATORY first step
- Korean market: GBP and Naver Smart Place = Critical; Kakao Map = High
- GBP/Naver Map are JS-rendered; report unfound as "not discoverable via web search"
## Notion Output
- Database ID: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Report in Korean; technical English terms as-is
- Audit ID format: COMP-YYYYMMDD-NNN

View File

@@ -0,0 +1,45 @@
---
description: Core Web Vitals analyzer using PageSpeed Insights API (LCP, CLS, INP, FID)
---
# SEO Core Web Vitals
PageSpeed Insights API client for CWV measurement and recommendations.
## Triggers
- "Core Web Vitals", "page speed"
- "LCP", "CLS", "INP", "performance audit"
## Quick Start
```bash
export PAGESPEED_API_KEY=your_api_key
python scripts/pagespeed_client.py --url https://example.com
python scripts/pagespeed_client.py --url https://example.com --strategy both
python scripts/pagespeed_client.py --urls urls.txt --output results.json
```
## CWV Thresholds
| Metric | Good | Poor |
|--------|------|------|
| LCP | <=2.5s | >4s |
| FID | <=100ms | >300ms |
| CLS | <=0.1 | >0.25 |
| INP | <=200ms | >500ms |
## Common Fixes
| Issue | Fix |
|-------|-----|
| Large LCP | Optimize images, preload critical resources |
| High CLS | Set image dimensions, avoid injected content |
| Poor INP | Reduce JavaScript, optimize event handlers |
| Slow TTFB | Improve server response, use CDN |
## Rate Limits
- No API key: 25/day; With key: 25,000/day
## Notion Output
- Database: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Korean report, Audit ID: [TYPE]-YYYYMMDD-NNN

View File

@@ -0,0 +1,42 @@
---
description: Local SEO audit for Korean-market businesses (GBP, Naver Place, NAP, citations)
---
# SEO Local Audit
Korean-market local SEO: business identity, GBP, Naver Smart Place, Kakao Map, NAP consistency, citations, LocalBusiness schema.
## Triggers
- "local SEO", "Google Business Profile"
- "Naver Place", "NAP consistency"
## Workflow (7 Steps)
1. **Business Identity (MANDATORY FIRST)**: Extract from JSON-LD, contact page, footer
2. **Website NAP Extraction**: Establish canonical NAP baseline
3. **GBP Verification**: Layered discovery (provided URL -> website -> WebSearch fallback)
4. **Naver Smart Place**: Layered discovery with Korean search queries
5. **Kakao Map Verification**: Check website links, then WebSearch
6. **Citation Discovery**: Industry directories (강남언니, 바비톡, 굿닥, etc.)
7. **LocalBusiness Schema Validation**: JSON-LD completeness check
## Scoring Weights
| Component | Weight |
|-----------|--------|
| NAP Consistency | 20% |
| GBP Optimization | 20% |
| Naver Smart Place | 20% |
| LocalBusiness Schema | 15% |
| Kakao Map | 10% |
| Citations | 10% |
| Business Identity | 5% |
## Key Rules
- GBP and Naver Map are JS-rendered -- use WebSearch for discovery
- "Not discoverable via web search" != "does not exist"
- Korean market: Naver Smart Place is as important as GBP
## Notion Output
- Database: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Category: Local SEO, Audit ID: LOCAL-YYYYMMDD-NNN

View File

@@ -0,0 +1,40 @@
---
description: On-page SEO analyzer for meta tags, headings, links, images, and Open Graph
---
# SEO On-Page Audit
Single-page optimization analysis: meta tags, heading structure, links, images, OG data.
## Triggers
- "on-page SEO", "meta tags"
- "heading analysis", "page SEO check"
## Quick Start
```bash
python scripts/page_analyzer.py --url https://example.com
python scripts/page_analyzer.py --url https://example.com --json
python scripts/page_analyzer.py --urls urls.txt
```
## Analysis Categories
- **Meta Tags**: Title (length, keywords), description, canonical, robots
- **Heading Structure**: H1 presence/count, hierarchy validation, keyword placement
- **Links**: Internal/external count, broken links, nofollow distribution
- **Images**: Alt attributes, file sizes, lazy loading
- **Open Graph**: OG title/description/image, Twitter Cards
## Common Issues
| Issue | Severity |
|-------|----------|
| Missing H1 | High |
| Title too long (>60) | Medium |
| No meta description | High |
| Images without alt | Medium |
| Multiple H1 tags | Medium |
## Notion Output
- Database: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Korean report, Audit ID: [TYPE]-YYYYMMDD-NNN

View File

@@ -0,0 +1,42 @@
---
description: Google Search Console data retrieval (rankings, CTR, impressions, sitemaps)
---
# SEO Search Console
GSC API client for search analytics, sitemap status, and index coverage.
## Triggers
- "Search Console", "rankings"
- "GSC data", "search performance"
## Quick Start
```bash
python scripts/gsc_client.py --site sc-domain:example.com --action summary
python scripts/gsc_client.py --site sc-domain:example.com --action queries --limit 100
python scripts/gsc_client.py --site sc-domain:example.com --action pages
```
## Configuration
- Credentials: `~/.credential/ourdigital-seo-agent.json`
- Service account: `ourdigital-seo-agent@ourdigital-insights.iam.gserviceaccount.com`
## Actions
| Action | Description |
|--------|-------------|
| `summary` | Clicks, impressions, CTR, position overview |
| `queries` | Top search queries |
| `pages` | Top pages by clicks |
| `sitemaps` | Sitemap submission status |
| `coverage` | Index coverage issues |
## Site Property Formats
- Domain: `sc-domain:example.com`
- URL prefix: `https://www.example.com/`
## Notion Output
- Database: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Korean report, Audit ID: [TYPE]-YYYYMMDD-NNN

View File

@@ -0,0 +1,44 @@
---
description: Technical SEO audit for robots.txt, XML sitemap, and URL crawlability
---
# SEO Technical Audit
Crawlability fundamentals: robots.txt validation, XML sitemap analysis, URL accessibility checking.
## Triggers
- "technical SEO", "crawlability"
- "robots.txt", "sitemap validation"
## Quick Start
```bash
python scripts/robots_checker.py --url https://example.com
python scripts/sitemap_validator.py --url https://example.com/sitemap.xml
python scripts/sitemap_crawler.py --sitemap https://example.com/sitemap.xml
```
## Scripts
| Script | Purpose |
|--------|---------|
| `robots_checker.py` | Parse robots.txt, test URL rules |
| `sitemap_validator.py` | Validate XML structure, URL count, lastmod |
| `sitemap_crawler.py` | Async check URL accessibility, HTTP status |
## Common Issues Detected
| Issue | Severity |
|-------|----------|
| Missing sitemap declaration | Medium |
| Blocking CSS/JS resources | High |
| URLs returning 404 | High |
| Exceeds 50,000 URL limit | High |
| Non-canonical URLs included | Medium |
## Config
- `CRAWL_DELAY=1.0`, `MAX_CONCURRENT=20`, `REQUEST_TIMEOUT=30`
## Notion Output
- Database: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef`
- Korean report, Audit ID: [TYPE]-YYYYMMDD-NNN