feat: add D.intelligence Agent Corps (9 skills + shared infra)

Add 9 agent skills (#70-#77, #88) for D.intelligence business operations:
brand guardian, brand editor, doc secretary, quotation manager, service
architect, marketing manager, back office manager, account manager, and
skill update meta-agent. Includes shared Python package (dintel), reference
docs, document/quotation templates, service module CSVs, cross-device
installer, and comprehensive user guide.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 00:49:04 +09:00
parent 72a6be6a74
commit 338176abbe
71 changed files with 15054 additions and 2 deletions

View File

@@ -0,0 +1,57 @@
# 71 — D.intelligence Brand Editor & Copywriter
**Agent #71** in the [D.intelligence Agent Corps](../../dintel-shared/README.md).
Brand-compliant content generation and evaluation for [D.intelligence](https://dintelligence.co.kr).
## What It Does
1. **Content Generation** — Write new content (service pages, Magazine D. articles, training pages, inquiry pages, web copy) following D.intelligence's Korean writing style guide
2. **Content Evaluation** — Audit existing content against a 14-point brand compliance checklist with scoring and fix recommendations
## Agent Corps Context
| Field | Value |
|-------|-------|
| Agent # | 71 |
| Skill Name | `dintel-brand-editor` |
| Version | 1.1.0 |
| Collaborates With | **#70 Brand Guardian** (compliance review), **dintel-shared** (shared constants) |
This agent uses shared brand constants from `dintel-shared/src/dintel/brand.py` for colors, terminology, and style rules.
## Triggers
- "write D.intelligence content", "D.intelligence 카피라이팅"
- "create Magazine D. article", "Magazine D. 아티클 작성"
- "evaluate brand compliance", "브랜드 검수"
- "brand tone check", "브랜드 가이드 체크리스트"
- "서비스 소개 작성", "웹 카피 작성"
## Brand Reference
Based on the [D.intelligence Brand Guide](https://www.notion.so/dintelligence/Review-D-intelligence-Brand-Guide-31c581e58a1e805eb980cf01ccc9a8d4) from Notion.
## Universal Guardrails
1. **Never send to clients without Andrew's approval** — All client-facing content must be reviewed and approved by Andrew before delivery.
2. **Never delete — always archive** — Move outdated content to archive; never permanently delete.
3. **Never commit pricing without Andrew's sign-off** — Pricing, quotes, and fee-related content require explicit approval.
4. **Korean-first, bilingual notation for jargon** — Korean is the primary language; technical/English terms use 한글(English) bilingual notation on first use.
5. **Never cross-reference client data without consent** — Client data is siloed; do not mix or reference across client accounts without explicit permission.
## Structure
```
71-dintel-brand-editor/
├── code/
│ ├── CLAUDE.md # Claude Code directive
│ └── scripts/
│ └── generate_credential.py # DOCX credential generator
├── desktop/
│ ├── SKILL.md # Claude Desktop skill
│ └── references/
│ └── dintelligence_brand_guide.md # Full writing style guide
├── shared/
│ └── notion-schema-reference.md # Notion DB schemas
└── README.md
```

View File

@@ -0,0 +1,100 @@
# D.intelligence Brand Editor & Copywriter
> **Agent #71** | `dintel-brand-editor` v1.1.0 | D.intelligence Agent Corps
Generate brand-compliant content and evaluate existing content against the D.intelligence writing style guide.
## Agent Corps Context
- **Agent #71** — Brand Editor & Copywriter
- **Collaborates with**: Agent #70 (Brand Guardian) for compliance review
- **Shared constants**: `dintel-shared/src/dintel/brand.py` (colors, terminology, style tokens)
## Universal Guardrails
1. **Never send to clients without Andrew's approval** — All client-facing content requires Andrew's review.
2. **Never delete — always archive** — Move outdated content to archive; never permanently delete.
3. **Never commit pricing without Andrew's sign-off** — Pricing and fee content requires explicit approval.
4. **Korean-first, bilingual notation** — Korean primary; jargon uses 한글(English) notation on first use.
5. **Never cross-reference client data without consent** — Client data is siloed by account.
## Quick Reference
- **Brand**: D.intelligence — Marketing Intelligence 파트너
- **Website**: dintelligence.co.kr
- **Slogan**: Think Forward
- **Concept**: SMART Marketing Clinic
- **Brand Guide**: `../../dintel-shared/references/dintelligence_brand_guide.md`
- **Shared Constants**: `../../dintel-shared/src/dintel/brand.py`
## Source Files — Company Credential
The current company credential deck lives in the Service Package repository:
| File | Path |
|------|------|
| Company Credential 2025 (PPTX) | `Source Files/회사소개/D.intelligence - Company Credential 2025.pptx` |
| Company Credential 2025 (PDF) | `Source Files/회사소개/D.intelligence-Company-Credential-2025.pdf` |
| Andrew Yim Profile (TXT) | `Source Files/문서 양식/D.intelligence_Profile_Andrew_Yim_2026.txt` |
When generating or updating credential content, reference these as the current baseline.
## Usage
### Generate Content
```bash
# Identify content type, then write following the brand guide
# Content types: service-page | magazine-article | training-page | inquiry-page | web-copy
```
1. Determine content type → select matching tone (see Tone Map below)
2. Read the brand guide reference for full rules
3. Draft content following vocabulary, structure, and punctuation rules
4. Run the 14-point checklist before delivering
### Evaluate Content
Audit any text against the D.intelligence brand guide:
1. Read the brand guide reference
2. Score each of 14 checklist items as PASS/FAIL/N/A
3. Output compliance report with percentage score and priority fixes
## Tone Map
| Content Type | Ending Style | Example |
|-------------|-------------|---------|
| Service/About | ~합니다 존칭 서술체 | "성장 파트너입니다" |
| Magazine D. | ~다 간결 서술체 | "역할을 한다" |
| Training | ~합니다/~세요 혼용 | "참여하실 수 있습니다" |
| Inquiry | ~주시면/~드리겠습니다 | "검토의견을 드리겠습니다" |
## Non-Negotiable Rules
- Sino-Korean vocabulary: 극대화, 세분화, 도출, 수립, 진단 (not 늘리기, 나누기, etc.)
- Bilingual notation on first use: 핵심 성과 지표(KPI)
- Product names in original: Google Analytics 4, Meta ADs, Mixpanel
- English titles: Title Case with & (not "and")
- Section labels: ALL CAPS
- No colloquial: no ~해요, 엄청, 꿀팁, ㅎㅎ, emoji
- Sentence length: 40~80 chars, complex structures preferred
- Magazine D. articles end with 결론적으로 summary
- Article titles: [Category] + question/topic format
## 14-Point Checklist
1. English bilingual notation for industry terms
2. Logical flow: background → explanation → examples → conclusion
3. No colloquial expressions
4. Sino-Korean formal vocabulary
5. Correct sentence endings per content type
6. Proper comma usage for clause separation
7. [Category] tag in title (Magazine D. only)
8. Brand connective expressions (~을 통해, ~함으로써)
9. 결론적으로 conclusion (articles only)
10. Data/logic-driven, no emotional language
11. English titles in Title Case
12. Section labels in ALL CAPS
13. CTA language (training=EN, inquiry=KR)
14. Bilingual layering (EN title + KR explanation)

View File

@@ -0,0 +1,500 @@
#!/usr/bin/env python3
"""
D.intelligence Company Credential Generator
Brand-compliant DOCX following the D.intelligence Korean Writing Style Guide.
Tone: ~합니다 존칭 서술체 (service/company intro style)
Agent #71 (dintel-brand-editor) v1.1.0 — D.intelligence Agent Corps
Shared brand constants: dintel-shared/src/dintel/brand.py
"""
from docx import Document
from docx.shared import Inches, Pt, Cm, RGBColor
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.enum.table import WD_TABLE_ALIGNMENT
from docx.oxml.ns import qn
import os
# ── Brand Colors ──────────────────────────────────────
# See also: dintel-shared/src/dintel/brand.py for canonical values
BRAND_DARK = RGBColor(0x1A, 0x1A, 0x2E) # Dark navy
BRAND_PRIMARY = RGBColor(0x2D, 0x2D, 0x44) # Primary text
BRAND_ACCENT = RGBColor(0xC8, 0xD6, 0x2C) # Lime/yellow accent
BRAND_GRAY = RGBColor(0x66, 0x66, 0x66) # Body text gray
BRAND_LIGHT_BG = RGBColor(0xF5, 0xF5, 0xF0) # Light background
BRAND_WHITE = RGBColor(0xFF, 0xFF, 0xFF)
OUTPUT_PATH = os.path.expanduser("~/Documents/D.intelligence_Company_Credential.docx")
def set_cell_shading(cell, color_hex):
"""Set cell background color."""
shading = cell._element.get_or_add_tcPr()
shading_elem = shading.makeelement(qn('w:shd'), {
qn('w:fill'): color_hex,
qn('w:val'): 'clear',
})
shading.append(shading_elem)
def add_section_label(doc, label_text):
"""Add ALL CAPS section label (brand rule: section labels in ALL CAPS)."""
p = doc.add_paragraph()
p.space_before = Pt(24)
p.space_after = Pt(4)
run = p.add_run(label_text.upper())
run.font.size = Pt(9)
run.font.color.rgb = BRAND_ACCENT
run.font.bold = True
run.font.name = "Arial"
def add_heading_bilingual(doc, en_title, kr_subtitle=None):
"""Add bilingual heading: English Title Case + Korean subtitle (brand rule: bilingual layering)."""
h = doc.add_heading(level=2)
h.space_before = Pt(4)
h.space_after = Pt(8)
run = h.add_run(en_title)
run.font.size = Pt(16)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Arial"
if kr_subtitle:
p = doc.add_paragraph()
p.space_before = Pt(0)
p.space_after = Pt(12)
run = p.add_run(kr_subtitle)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Malgun Gothic"
def add_body(doc, text, bold_phrases=None):
"""Add body paragraph in 존칭 서술체 with brand formatting."""
p = doc.add_paragraph()
p.space_after = Pt(10)
p.paragraph_format.line_spacing = Pt(20)
if bold_phrases:
remaining = text
for phrase in bold_phrases:
if phrase in remaining:
before, _, after = remaining.partition(phrase)
if before:
run = p.add_run(before)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_PRIMARY
run.font.name = "Malgun Gothic"
run = p.add_run(phrase)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_PRIMARY
run.font.bold = True
run.font.name = "Malgun Gothic"
remaining = after
if remaining:
run = p.add_run(remaining)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_PRIMARY
run.font.name = "Malgun Gothic"
else:
run = p.add_run(text)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_PRIMARY
run.font.name = "Malgun Gothic"
def add_service_table(doc, services):
"""Add service table with brand styling."""
table = doc.add_table(rows=1, cols=2)
table.alignment = WD_TABLE_ALIGNMENT.CENTER
# Header
hdr = table.rows[0].cells
for i, text in enumerate(["Service", "Description"]):
hdr[i].text = text
for paragraph in hdr[i].paragraphs:
for run in paragraph.runs:
run.font.size = Pt(9)
run.font.bold = True
run.font.color.rgb = BRAND_WHITE
run.font.name = "Arial"
set_cell_shading(hdr[i], "1A1A2E")
# Rows
for en_name, kr_desc in services:
row = table.add_row().cells
# English service name
p0 = row[0].paragraphs[0]
run0 = p0.add_run(en_name)
run0.font.size = Pt(9)
run0.font.bold = True
run0.font.color.rgb = BRAND_DARK
run0.font.name = "Arial"
# Korean description
p1 = row[1].paragraphs[0]
run1 = p1.add_run(kr_desc)
run1.font.size = Pt(9)
run1.font.color.rgb = BRAND_GRAY
run1.font.name = "Malgun Gothic"
doc.add_paragraph() # spacer
def build_credential():
doc = Document()
# ── Page setup ──
section = doc.sections[0]
section.page_width = Cm(21)
section.page_height = Cm(29.7)
section.top_margin = Cm(2.5)
section.bottom_margin = Cm(2.5)
section.left_margin = Cm(2.5)
section.right_margin = Cm(2.5)
# ── Default font ──
style = doc.styles["Normal"]
font = style.font
font.name = "Malgun Gothic"
font.size = Pt(10)
font.color.rgb = BRAND_PRIMARY
# ════════════════════════════════════════════════════
# COVER PAGE
# ════════════════════════════════════════════════════
for _ in range(6):
doc.add_paragraph()
# Brand name
title = doc.add_paragraph()
title.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = title.add_run("D.intelligence")
run.font.size = Pt(36)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Arial"
# Slogan
slogan = doc.add_paragraph()
slogan.alignment = WD_ALIGN_PARAGRAPH.CENTER
slogan.space_before = Pt(8)
run = slogan.add_run("Think Forward")
run.font.size = Pt(14)
run.font.color.rgb = BRAND_ACCENT
run.font.italic = True
run.font.name = "Arial"
# Tagline
tagline = doc.add_paragraph()
tagline.alignment = WD_ALIGN_PARAGRAPH.CENTER
tagline.space_before = Pt(24)
run = tagline.add_run("Analysis, Treatment & Growth")
run.font.size = Pt(11)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
# Subtitle
subtitle = doc.add_paragraph()
subtitle.alignment = WD_ALIGN_PARAGRAPH.CENTER
subtitle.space_before = Pt(8)
run = subtitle.add_run("Company Credential")
run.font.size = Pt(12)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
# Date
date_p = doc.add_paragraph()
date_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
date_p.space_before = Pt(36)
run = date_p.add_run("2026")
run.font.size = Pt(10)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
# ── Page break ──
doc.add_page_break()
# ════════════════════════════════════════════════════
# ABOUT D.INTELLIGENCE
# ════════════════════════════════════════════════════
add_section_label(doc, "ABOUT D.INTELLIGENCE")
add_heading_bilingual(doc, "Brand Overview", "브랜드 소개")
add_body(
doc,
"D.intelligence는 디지털 마케팅과 데이터 분석의 경계를 허물고, "
"고객의 지속가능한 성장을 이끄는 Marketing Intelligence 파트너입니다.",
bold_phrases=["Marketing Intelligence 파트너"]
)
add_body(
doc,
"데이터 인텔리전스 기반의 마케팅 전략 진단 및 컨설팅 서비스를 제공하며, "
"\"SMART Marketing Clinic\"이라는 콘셉트 아래 데이터 분석, 진단, 교육 서비스를 운영합니다. "
"이를 통해 전문성과 신뢰감을 핵심 브랜드 가치로 전달합니다.",
bold_phrases=["SMART Marketing Clinic"]
)
# Mission & Vision
add_section_label(doc, "MISSION & VISION")
add_heading_bilingual(doc, "Mission")
add_body(
doc,
"데이터 기반 의사결정으로 기업의 지속가능한 성장을 실현하는 "
"Marketing Intelligence 파트너입니다."
)
add_heading_bilingual(doc, "Vision")
add_body(
doc,
"AI 기반 마케팅 인텔리전스 서비스 플랫폼을 구축하여, "
"고객사의 데이터 활용 역량을 극대화하고, "
"마케팅 의사결정의 정확성과 속도를 혁신하는 것을 목표로 합니다."
)
# Brand Keywords
add_section_label(doc, "BRAND KEYWORDS")
kw_p = doc.add_paragraph()
kw_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
kw_p.space_before = Pt(16)
kw_p.space_after = Pt(16)
for i, kw in enumerate(["Context", "Content", "Connection"]):
run = kw_p.add_run(kw)
run.font.size = Pt(18)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Arial"
if i < 2:
sep = kw_p.add_run(" | ")
sep.font.size = Pt(18)
sep.font.color.rgb = BRAND_ACCENT
sep.font.name = "Arial"
doc.add_page_break()
# ════════════════════════════════════════════════════
# WHAT WE DO — Services
# ════════════════════════════════════════════════════
add_section_label(doc, "WHAT WE DO")
add_heading_bilingual(
doc,
"SMART Marketing Clinic",
"Data Intelligence Audit, Digital Analytics Consulting & Data Storytelling"
)
add_body(
doc,
"D.intelligence는 데이터 기반의 사용자 경험 여정(User Experience Journey) 진단을 통해 "
"디지털 광고, 콘텐츠 마케팅, 검색 최적화(SEO), 웹 & 앱 최적화 서비스를 제공하며, "
"이를 통해 비즈니스 성과 중심의 마케팅 솔루션을 함께하는 성장 파트너입니다.",
bold_phrases=["사용자 경험 여정(User Experience Journey)", "성장 파트너"]
)
add_service_table(doc, [
(
"SMART Measurement & Audit",
"핵심 성과 지표(KPI) 설정, 성과 측정 계획 수립, 채널 퍼포먼스 리포팅, "
"사용자 경험 모델링, 성과 관리 체계 디자인"
),
(
"Marketing Intelligence Audit",
"디지털 마케팅 채널 성과 진단, 사용자 여정 분석을 통한 "
"마케팅 전략의 효율성 극대화 및 개선 방향 도출"
),
(
"Data Analytics Consulting",
"Google Analytics 4, Mixpanel 등 디지털 애널리틱스 도구의 진단, 설정, "
"최적화를 지원하는 전문 컨설팅 서비스"
),
(
"Performance Dashboard Design",
"퍼포먼스 대시보드 설계, 구축, 자동화를 통해 "
"데이터 기반 의사 결정을 지원하는 시각화 서비스"
),
(
"Data Storytelling Design",
"발견된 데이터 인사이트를 목표 청중에게 효과적으로 전달하여, "
"공통의 문제의식과 실천의 방향을 제시하는 데이터 시각화, 인터랙티브 프레젠테이션 디자인"
),
(
"Data Literacy Training",
"생산적인 데이터 활용을 위한 개인 역량과 조직 문화 차원의 "
"데이터 리터러시 증진을 돕는 교육, 워크숍 운영"
),
])
doc.add_page_break()
# ════════════════════════════════════════════════════
# OUR ROLE — Positioning
# ════════════════════════════════════════════════════
add_section_label(doc, "OUR ROLE")
add_heading_bilingual(doc, "Core Positioning", "핵심 역할 정의")
roles = [
("Data Intelligence Counselor", "데이터 인텔리전스 기반의 마케팅 전략 진단 파트너로서, 고객사의 디지털 마케팅 성과를 정밀하게 분석하고, 데이터에 기반한 실행 가능한 전략을 수립합니다."),
("Marketing Data Translator", "마케팅, 데이터, IT 부서 간의 언어적 장벽을 해소하는 데이터 통역사로서, 각 부서의 요구사항을 데이터의 관점에서 해석하고 연결합니다."),
("Data Literacy Enabler", "조직 내 데이터 리터러시 증진을 이끄는 엑셀러레이터로서, 구성원 개개인의 데이터 활용 역량을 강화하고, 데이터 기반 의사결정 문화를 구축합니다."),
]
for en_title, kr_desc in roles:
h = doc.add_heading(level=3)
h.space_before = Pt(16)
h.space_after = Pt(4)
run = h.add_run(en_title)
run.font.size = Pt(12)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Arial"
add_body(doc, kr_desc)
doc.add_page_break()
# ════════════════════════════════════════════════════
# DATA INTELLIGENCE WORKSHOP
# ════════════════════════════════════════════════════
add_section_label(doc, "DATA INTELLIGENCE WORKSHOP")
add_heading_bilingual(doc, "Training & Education", "교육 프로그램")
add_body(
doc,
"D.intelligence는 실무 중심의 데이터 리터러시 교육 프로그램을 운영합니다. "
"Google Analytics 4 기본부터 고급 활용 테크닉까지, 마케팅 실무자의 데이터 역량 강화를 "
"체계적으로 지원합니다."
)
programs = [
("GA4 코어 트레이닝 캠프", "Google Analytics 4의 핵심 기능을 집중적으로 학습하는 실무 트레이닝 프로그램입니다."),
("마케팅 애널리틱스 1Day 챌린지", "\"1 Insight per Day\" — 마케터를 위한 애널리틱스 트리트먼트 하루에 한 가지! 한 주에 하나씩 업무에 바로 활용할 수 있는 마케팅 애널리틱스 완전정복 프로그램입니다."),
]
for name, desc in programs:
h = doc.add_heading(level=3)
h.space_before = Pt(12)
h.space_after = Pt(4)
run = h.add_run(name)
run.font.size = Pt(11)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Malgun Gothic"
add_body(doc, desc)
# Approach
add_section_label(doc, "3 STEP APPROACH")
approach_p = doc.add_paragraph()
approach_p.space_before = Pt(8)
for i, (step_en, step_kr) in enumerate([
("Analysis", "현황 진단 및 데이터 분석"),
("Treatment", "맞춤형 솔루션 설계 및 적용"),
("Growth", "지속적 성과 관리 및 성장 지원"),
], 1):
run = approach_p.add_run(f" {i}. {step_en} ")
run.font.size = Pt(10)
run.font.bold = True
run.font.color.rgb = BRAND_DARK
run.font.name = "Arial"
run = approach_p.add_run(f"{step_kr}")
run.font.size = Pt(10)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Malgun Gothic"
if i < 3:
approach_p.add_run("\n")
doc.add_page_break()
# ════════════════════════════════════════════════════
# WHY D.INTELLIGENCE — Differentiators
# ════════════════════════════════════════════════════
add_section_label(doc, "WHY D.INTELLIGENCE")
add_heading_bilingual(doc, "Core Differentiators", "핵심 차별화 요소")
differentiators = [
("데이터 기반 의사 결정 체계 수립",
"단편적인 보고서 제공을 넘어, 고객사의 비즈니스 목표에 부합하는 "
"핵심 성과 지표(KPI) 설정부터 성과 관리 체계 디자인까지, "
"데이터 기반 의사 결정의 전 과정을 체계적으로 지원합니다."),
("마케팅-데이터-IT 간 통합 커뮤니케이션",
"마케팅 부서의 전략적 요구와 데이터 부서의 기술적 역량, "
"IT 부서의 인프라 환경을 유기적으로 연결함으로써, "
"조직 내 데이터 활용의 효율성을 극대화합니다."),
("실무 중심의 교육 및 역량 강화",
"이론에 그치지 않는 실무 중심의 교육 커리큘럼을 통해, "
"마케팅 실무자가 데이터를 직접 분석하고 활용할 수 있는 역량을 구축합니다."),
("엔드투엔드(End-to-End) 서비스 제공",
"진단, 컨설팅, 대시보드 구축, 데이터 스토리텔링, 교육에 이르기까지, "
"마케팅 인텔리전스의 전 영역을 아우르는 통합 서비스를 제공합니다."),
]
for title, desc in differentiators:
h = doc.add_heading(level=3)
h.space_before = Pt(12)
h.space_after = Pt(4)
run = h.add_run(title)
run.font.size = Pt(11)
run.font.color.rgb = BRAND_DARK
run.font.bold = True
run.font.name = "Malgun Gothic"
add_body(doc, desc)
doc.add_page_break()
# ════════════════════════════════════════════════════
# CONTACT — Inquiry
# ════════════════════════════════════════════════════
add_section_label(doc, "CONTACT")
add_heading_bilingual(doc, "상담문의", "Get in Touch")
add_body(
doc,
"D.intelligence의 서비스에 관심을 가져주셔서 감사합니다. "
"디지털 마케팅 성과 진단, 데이터 애널리틱스 컨설팅, 대시보드 구축, "
"데이터 리터러시 교육 등에 관한 문의 사항이나 기대 사항을 남겨주시면, "
"최선을 다해 구체적이고 명료한 검토의견을 드리도록 하겠습니다."
)
# Contact info
doc.add_paragraph()
contact_items = [
("Website", "dintelligence.co.kr"),
("Email", "contact@dintelligence.co.kr"),
]
for label, value in contact_items:
p = doc.add_paragraph()
p.space_after = Pt(4)
run = p.add_run(f"{label}: ")
run.font.size = Pt(10)
run.font.bold = True
run.font.color.rgb = BRAND_DARK
run.font.name = "Arial"
run = p.add_run(value)
run.font.size = Pt(10)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
# Footer
doc.add_paragraph()
doc.add_paragraph()
footer_p = doc.add_paragraph()
footer_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = footer_p.add_run("D.intelligence")
run.font.size = Pt(9)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
copyright_p = doc.add_paragraph()
copyright_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = copyright_p.add_run("Copyright 2026 D.intelligence. All rights reserved.")
run.font.size = Pt(8)
run.font.color.rgb = BRAND_GRAY
run.font.name = "Arial"
# ── Save ──
doc.save(OUTPUT_PATH)
print(f"Credential saved: {OUTPUT_PATH}")
if __name__ == "__main__":
build_credential()

View File

@@ -0,0 +1,146 @@
---
name: dintel-brand-editor
description: |
This skill should be used when the user asks to "write D.intelligence content",
"create Magazine D. article", "evaluate brand compliance", "check brand tone",
"D.intelligence 브랜드 검수", "브랜드 가이드 체크리스트", "Magazine D. 아티클 작성",
"서비스 소개 작성", "D.intelligence 카피라이팅", or mentions D.intelligence brand writing.
Provides brand-compliant Korean copywriting and content evaluation for dintelligence.co.kr.
Agent #71 in the D.intelligence Agent Corps. Works with Brand Guardian (#70).
version: 1.1.0
---
# D.intelligence Brand Editor & Copywriter
> **Agent #71** | `dintel-brand-editor` v1.1.0 | D.intelligence Agent Corps
Generate brand-compliant content and evaluate existing content against the D.intelligence writing style guide.
## Agent Corps Context
- **Agent #71** — Brand Editor & Copywriter
- **Collaborates with**: Agent #70 (Brand Guardian) for compliance review
- **Shared constants**: `dintel-shared/src/dintel/brand.py` (colors, terminology, style tokens)
## Universal Guardrails
1. **Never send to clients without Andrew's approval** — All client-facing content requires Andrew's review.
2. **Never delete — always archive** — Move outdated content to archive; never permanently delete.
3. **Never commit pricing without Andrew's sign-off** — Pricing and fee content requires explicit approval.
4. **Korean-first, bilingual notation** — Korean primary; jargon uses 한글(English) notation on first use.
5. **Never cross-reference client data without consent** — Client data is siloed by account.
## Brand Identity (Quick Reference)
- **Brand**: D.intelligence — Marketing Intelligence 파트너
- **Mission**: 데이터 기반 의사결정으로 기업의 지속가능한 성장을 실현
- **Slogan**: Think Forward
- **Keywords**: Context, Content, Connection
- **Concept**: SMART Marketing Clinic
- **Website**: dintelligence.co.kr
## Two Core Workflows
### Workflow 1: Content Generation
To generate new D.intelligence branded content:
1. **Identify content type** — determine which tone applies:
- Service/About pages → ~합니다 존칭 서술체
- Magazine D. articles → ~다 간결 서술체
- Training/Workshop pages → ~합니다/~세요 안내체 혼용
- Inquiry pages → ~주시면/~드리겠습니다 정중한 요청체
- Web copy (headings, labels, CTAs) → bilingual layering rules
2. **Load the brand guide** — read `references/dintelligence_brand_guide.md` for the full style reference including tone matrix, vocabulary rules, sentence patterns, and punctuation conventions.
3. **Draft content** following these non-negotiable rules:
- Use formal Sino-Korean (한자어) vocabulary: 극대화, 세분화, 도출, 수립, 진단
- Average sentence length 40~80 characters, complex sentence structures preferred
- First occurrence of industry terms: 한글(영문) or 영문(한글) bilingual notation
- Product/tool names in original language: Google Analytics 4, Mixpanel, Meta ADs
- English titles in Title Case with ampersand (&)
- Section labels in ALL CAPS
- No colloquial expressions: avoid ~해요, 엄청, 꿀팁, 이모지
4. **Apply content structure pattern** per type:
- Magazine D.: [카테고리] title → intro → 본론1 → 본론2 → 결론적으로 summary → references
- Service page: English heading → Korean subtitle → detail paragraph (what/why/how)
- Web copy: English title + Korean explanation (bilingual layering)
5. **Run the checklist** from Workflow 2 before delivering.
### Workflow 2: Content Evaluation (Brand Compliance Audit)
To evaluate existing content against the D.intelligence brand guide:
1. **Load the brand guide** — read `references/dintelligence_brand_guide.md`.
2. **Run the 14-point checklist** against the content:
| # | Check Item | Section |
|---|-----------|---------|
| 1 | Industry terms use English bilingual notation | 4.1 |
| 2 | Logical flow: background → explanation → examples → conclusion | 6.2 |
| 3 | No colloquial expressions (~해요, 엄청, 꿀팁, ㅎㅎ) | 8 |
| 4 | Sino-Korean formal vocabulary used (극대화 not 최대한 늘리기) | 4.3 |
| 5 | Correct sentence ending for content type (존칭체 vs 서술체) | 2.2 |
| 6 | Proper comma usage to separate clauses | 5.1 |
| 7 | [Category] tag in title (Magazine D. only) | 5.5 |
| 8 | Brand-specific connective expressions used (~을 통해, ~함으로써) | 3.2 |
| 9 | Conclusion starts with 결론적으로 (articles only) | 7.2 |
| 10 | Data/logic-driven, no emotional or exaggerated language | 2.1 |
| 11 | English titles in Title Case | 10.8 Rule 2 |
| 12 | Section labels in ALL CAPS | 10.8 Rule 3 |
| 13 | CTA language correct (training=English, inquiry=Korean) | 10.8 Rule 5 |
| 14 | Bilingual layering (EN title + KR explanation) applied | 10.8 Rule 1 |
3. **Score each item** as PASS / FAIL / N/A with specific evidence.
4. **Output the evaluation report** in this format:
```
## D.intelligence Brand Compliance Report
**Content Type**: [type]
**Overall Score**: [X]/[applicable items] ([percentage]%)
### Results
| # | Check | Result | Evidence/Fix |
|---|-------|--------|-------------|
### Priority Fixes
[List top 3 issues with suggested corrections]
### Revised Content (if requested)
[Brand-compliant rewrite]
```
## Key Terminology (Always Available)
| Term | Context |
|------|---------|
| SMART Marketing Clinic | Brand concept — service umbrella |
| 데이터 인텔리전스 | Brand identity core |
| Marketing Intelligence 파트너 | Relationship positioning |
| 검토의견 | Consulting deliverable term |
| 성장 파트너 | Customer relationship |
| 사용자 경험 여정 | Customer journey analysis |
| Data Intelligence Counselor | Role title — About page |
| Marketing Data Translator | Role title — About page |
| Data Literacy Enabler | Role title — About page |
## Expressions to Avoid → Use Instead
| Avoid | Use Instead |
|-------|------------|
| ~해요 / ~이에요 | ~합니다 / ~입니다 |
| 엄청 / 진짜 / 너무 | 매우 / 크게 / 상당히 |
| 쉽게 말하면 | 구체적으로 |
| 꿀팁 / 꿀정보 | 핵심 포인트 / 주요 사항 |
| ~거든요 / ~잖아요 | ~이기 때문이다 / ~이므로 |
## Additional Resources
### Reference Files
- **`references/dintelligence_brand_guide.md`** — Complete D.intelligence Korean writing style guide with all 12 sections: tone & voice, sentence structure, vocabulary, punctuation, content patterns, web copywriting set, and compliance checklist. Load when generating or evaluating content.
- **`dintel-shared/src/dintel/brand.py`** — Shared brand constants (colors, terminology, style tokens) used across the Agent Corps.

View File

@@ -0,0 +1,439 @@
# D.intelligence 브랜드 한국어 라이팅 스타일 가이드
> Source: [Notion — D.intelligence Brand Guide](https://www.notion.so/dintelligence/Review-D-intelligence-Brand-Guide-31c581e58a1e805eb980cf01ccc9a8d4)
---
## Mission & Vision
- **Mission**: 데이터 기반 의사결정으로 기업의 지속가능한 성장을 실현하는 Marketing Intelligence 파트너
- **Vision**: AI 기반 마케팅 인텔리전스 서비스 플랫폼
## Brand Definition (최종안)
> D.intelligence는 디지털 마케팅과 데이터 분석의 경계를 허물고, 고객의 지속가능한 성장을 이끄는 **Marketing Intelligence 파트너**이다.
---
## 1. 브랜드 개요
D.intelligence는 데이터 인텔리전스 기반의 마케팅 전략 진단 및 컨설팅 서비스를 제공하는 브랜드이다.
**"SMART Marketing Clinic"**이라는 콘셉트 아래 데이터 분석, 진단, 교육 서비스를 운영하며, 전문성과 신뢰감을 핵심 브랜드 가치로 전달한다.
---
## 2. 톤 & 보이스 (Tone & Voice)
### 2.1 전체 톤
| 항목 | 특성 | 설명 |
|------|------|------|
| 전문성 | ★★★★★ | 업계 전문 용어와 기술적 표현을 적극 활용 |
| 격식 | ★★★★☆ | 존칭체와 간결한 서술체를 문맥에 따라 혼용 |
| 권위감 | ★★★★☆ | 데이터와 논리에 기반한 단정적 서술 |
| 친근감 | ★★☆☆☆ | 감정적, 구어적 표현은 최소화 |
| 실용성 | ★★★★★ | 구체적 사례, 실천 과제 중심의 서술 |
### 2.2 문체 유형별 톤 구분
#### (1) 서비스 소개 및 회사 소개 페이지 — ~합니다 존칭 서술체
예시: "D.intelligence는 데이터 기반의 사용자 경험 여정 진단을 통해 디지털 광고, 콘텐츠 마케팅, 검색 최적화, 웹 & 앱 최적화 서비스를 제공하며, 이를 통해 비즈니스 성과 중심의 마케팅 솔루션을 함께하는 성장 파트너입니다."
#### (2) Magazine D. (블로그/아티클) — ~다 간결 서술체
예시: "디지털 마케팅 전략의 핵심은, 데이터를 기반으로 한 의사 결정 과정에 있다."
예시: "이런 세분화된 접근 방식은 마케팅 메시지의 관련성을 높이고, 전환율을 증가시키는 데 중요한 역할을 한다."
#### (3) 교육/워크숍 페이지 — ~합니다/~세요 안내체 혼용
예시: "한 주에 하나씩 업무에 바로쓰는 마케팅 애널리틱스 완전정복"
예시: "레슨은 진행 과정과 상관없이 관심 주제별로 언제든 참여하실 수 있습니다."
#### (4) 상담문의 페이지 — ~주시면/~드리겠습니다 정중한 요청체
예시: "기대 사항 등을 남겨주시면, 최선을 다해 구체적이고 명료한 검토의견을 드리도록하겠습니다."
---
## 3. 문장 구조 및 문법 규칙
### 3.1 문장 길이
- 평균 40~80자 내외의 중장문 위주
- 쉼표(,)로 절을 구분하여 가독성 유지
- 논리적 흐름을 갖춘 복문 구조 선호
- 지나치게 짧은 문장은 지양
예시 (복문 구조): "특정 행동을 보인 사용자 그룹에게만 타겟팅하여 광고를 전달함으로써, 광고 비용 대비 효율을 크게 높일 수 있다."
### 3.2 접속 표현 패턴
| 표현 | 용도 | 빈도 |
|------|------|------|
| ~을 통해 | 수단, 방법 제시 | ★★★★★ |
| ~함으로써 | 결과, 효과 연결 | ★★★★☆ |
| ~에 기여한다 | 성과 강조 | ★★★★☆ |
| ~하는 데 있다 | 핵심 포인트 강조 | ★★★★☆ |
| ~의 관점에서 | 시각 제시 | ★★★☆☆ |
| 이를 통해 | 앞 내용과 연결 | ★★★★★ |
| 따라서 | 논리적 귀결 | ★★★★☆ |
| 결론적으로 | 마무리 요약 | ★★★☆☆ |
### 3.3 문장 종결 패턴
**Magazine D. 아티클 종결:**
~다 / ~한다 / ~할 수 있다 / ~에 기여한다 / ~역할을 한다 / ~중요하다 / ~필요하다
예시: "이는 광고 캠페인의 효과를 최적화하고 불필요한 광고 지출을 줄이는 데 도움이 된다."
**서비스 및 회사 소개 종결:**
~입니다 / ~파트너입니다 / ~서비스입니다 / ~돕는 ...입니다 / ~드리겠습니다
예시: "D.intelligence는 생산적인 데이터 활용을 위한 개인 역량과 조직 문화 차원의 데이터 리터러시 증진을 돕는 엑셀러레이터입니다."
---
## 4. 어휘 및 용어 사용 규칙
### 4.1 외래어 및 영문 용어 병기 원칙
한글과 영문을 적극적으로 병기하는 것이 브랜드의 핵심 특징이다.
**규칙 1: 업계 표준 용어는 영문 그대로 사용**
| 사용 | 지양 |
|------|------|
| Google Analytics 4 | 구글 분석 도구 4 |
| KPI | 핵심 성과 지표(만 단독 사용) |
| SEO | 검색 엔진 최적화(만 단독 사용) |
| ROI | 투자 수익률(만 단독 사용) |
| Technical SEO | 기술적 검색 최적화 |
**규칙 2: 첫 등장 시 한글(영문) 또는 영문(한글) 형태로 병기**
예시: "핵심 성과 지표(KPI) 설정"
예시: "프로덕트 애널리틱스 Product Analytics"
예시: "사용자 행동 속성(Behaviors)과 사용자 정보(Demographics)"
**규칙 3: 제품명 및 서비스명은 원어 그대로 표기**
예시: Mixpanel, Google Analytics 4, Meta ADs, Looker Studio
### 4.2 브랜드 고유 핵심 용어 사전
| 용어 | 설명 | 사용 맥락 |
|------|------|----------|
| SMART Marketing Clinic | 브랜드 핵심 콘셉트 | 서비스 총칭 |
| 데이터 인텔리전스 | 데이터 기반 마케팅 분석 | 브랜드 정체성 |
| Data Intelligence Counselor | 전문 역할 명칭 | About 페이지 |
| Marketing Data Translator | 데이터 통역사 | About 페이지 |
| Data Literacy Enabler | 데이터 리터러시 촉진자 | About 페이지 |
| 검토의견 | 컨설팅 결과 전달물 | 상담문의 |
| 성장 파트너 | 고객과의 관계 정의 | 서비스 설명 |
| 데이터 기반 의사 결정 | 핵심 가치 | 전 페이지 공통 |
| 마케팅 인텔리전스 | 마케팅 분석 총칭 | 서비스 설명 |
| 사용자 경험 여정 | 고객 여정 분석 | 서비스 설명 |
### 4.3 한자어 전문 어휘 사용 경향
브랜드는 한자어 기반의 격식 있는 전문 어휘를 선호한다.
| 선호 표현 | 비선호 표현 |
|----------|----------|
| 극대화 | 최대한 늘리기 |
| 세분화 | 나누기, 쪼개기 |
| 도출 | 끌어내기 |
| 수립 | 세우기 |
| 진단 | 살펴보기 |
| 구축 | 만들기 |
| 증진 | 높이기 |
| 배분 | 나누기 |
| 활용 | 쓰기 |
| 준수 | 지키기 |
---
## 5. 구두점 및 표기법
### 5.1 쉼표(,)
문장 내 절 구분과 항목 나열 시 적극 활용한다.
예시: "디지털 광고, 콘텐츠 마케팅, 검색 최적화, 웹 & 앱 최적화 서비스를 제공하며"
### 5.2 마침표(.)
모든 서술 문장은 마침표로 종결한다. 제목과 헤딩에는 생략한다.
### 5.3 파이프(|) 기호
유사한 개념을 병렬 표기할 때 사용한다.
예시: "문의 | 상담 요청 사항"
예시: "디지털 애널리틱스 진단 | 설정 문의"
### 5.4 괄호
영문 용어 병기 또는 보충 설명 시 소괄호를 사용한다.
예시: "핵심 성과 지표(KPI)"
예시: "기기 기반 식별자(Device ID)"
### 5.5 대괄호([])
Magazine D. 기사 제목에서 카테고리 태그로 사용한다.
예시: "[Google Analytics 4] 잠재고객, 무엇이고 왜 설정해야 할까?"
예시: "[Meta ADs] 광고예산을 효율적으로 결정하는 방법"
### 5.6 작은따옴표
강조하고자 하는 핵심 단어에 사용한다.
예시: "'필수 요소'다"
---
## 6. 콘텐츠 구조 패턴
### 6.1 서비스 소개 페이지 구조
[영문 서비스명 (헤딩)]
[한국어 서비스 부제 또는 설명 한 줄]
[상세 설명 문단 — 무엇을, 왜, 어떻게의 순서]
예시:
- H3: SMART Measurement & Audit
- P: 디지털 마케팅 성과를 극대화하기 위한 핵심 성과 지표(KPI) 설정, 성과 측정 계획 수립, 채널 퍼포먼스 리포팅...데이터 기반 의사 결정을 지원하는 진단, 컨설팅 서비스
### 6.2 Magazine D. 아티클 구조
[대괄호 카테고리] 제목 — 질문형 또는 화제 제시형
도입: 주제의 배경 및 중요성 서술
본론 1: 핵심 개념 설명 (첫째, 둘째 등 순서 표현)
본론 2: 구체적 사례 및 활용법 제시
결론: '결론적으로' 시작, 핵심 메시지 요약
참고 링크: [출처명] 제목 형식
### 6.3 제목(헤딩) 작성 규칙
**아티클 제목 패턴:**
- 질문형: "~무엇이고 왜 설정해야 할까?"
- 방법 제시형: "~효율적으로 결정하는 방법"
- 주의점 제시형: "~어떻게 사용해야 할까? 사용 시 주의점은?"
**서비스 헤딩 패턴:**
- 영문 헤딩 + 한국어 부제 조합
**교육 헤딩 패턴:**
- 캐치프레이즈 + 부제 조합
- 예시: "마케터를 위한 애널리틱스 트리트먼트 하루에 한 가지!"
- 예시: "1 Insight per Day"
---
## 7. 자주 사용하는 표현 및 구문 패턴
### 7.1 가치 제안 구문
| 패턴 | 예시 |
|------|------|
| ~을 통해 ~을 돕는 [역할]입니다 | "성장을 돕는 SMART Marketing Clinic입니다" |
| ~을 위한 ~을 지원하는 서비스 | "데이터 기반 의사 결정을 지원하는 진단, 컨설팅 서비스" |
| ~의 효율성을 극대화하고 | "마케팅 캠페인의 효율성을 극대화하고" |
| ~에 크게 기여한다 | "효과적으로 배분하는 데 크게 기여한다" |
### 7.2 논리 전개 구문
| 패턴 | 예시 |
|------|------|
| 첫째. / 둘째. | "첫째. 잠재고객 설정을 통해..." |
| ~라고 가정해보자 | "제품을 구매하지 않은 사용자가 있다고 가정해보자" |
| 결론적으로, | "결론적으로, GA4에서 잠재고객 설정은..." |
| 예를 들어, | "예를 들어, 가격이 높아 관여도 역시 높은..." |
| 이런 관점에서 | "이런 관점에서, GA4 잠재고객 설정은..." |
### 7.3 나열 구문
명사구 나열 시 쉼표 구분 후 마지막에 동사구로 마무리한다.
예시: "핵심 성과 지표(KPI) 설정, 성과 측정 계획 수립, 채널 퍼포먼스 리포팅, 사용자 경험 모델링, 성과 관리 체계 디자인까지"
---
## 8. 피해야 할 표현
| 피해야 할 표현 | 대신 사용할 표현 | 이유 |
|-------------|-------------|------|
| ~해요 / ~이에요 | ~합니다 / ~입니다 | 구어체 지양 |
| 엄청 / 진짜 / 너무 | 매우 / 크게 / 상당히 | 격식 유지 |
| 쉽게 말하면 | 구체적으로 | 전문성 유지 |
| 꿀팁 / 꿀정보 | 핵심 포인트 / 주요 사항 | 브랜드 격식 유지 |
| ㅎㅎ / ㅋㅋ / 이모지 | (사용하지 않음) | 전문 브랜드 톤 |
| ~거든요 / ~잖아요 | ~이기 때문이다 / ~이므로 | 논리적 서술체 유지 |
---
## 9. 참고 링크 표기법
Magazine D. 아티클 하단 참고 자료 표기 형식:
참고 링크
[출처명] 제목 또는 설명
예시:
- [Meta Business] 어드밴티지+ 타겟 정보
- [Jon Loomer] How Advantage+ Audience Works
- [madgicx] The Advantages and Disadvantages of Meta Advantage+ Tools
---
## 10. 웹 카피라이팅 세트 (Web Copywriting Set)
### 10.1 브랜드 슬로건 및 태그라인
| 구분 | 카피 | 사용 위치 |
|------|------|----------|
| 브랜드 슬로건 | Think Forward | 홈페이지 히어로 섹션 |
| 브랜드 키워드 | Context, Content, Connection | 홈페이지 가치 제안 |
| 서비스 태그라인 | Analysis, Treatment & Growth | 홈페이지 서비스 소개 상단 |
| 서비스 서브 태그라인 | Data Intelligence Audit, Digital Analytics Consulting & Data Storytelling | SMART Marketing Clinic 섹션 |
### 10.2 역할 타이틀 (Role Titles)
| 타이틀 | 한국어 설명 | 사용 위치 |
|--------|----------|----------|
| Data Intelligence Counselor | 데이터 인텔리전스 기반 진단 파트너 | 홈페이지, About |
| Marketing Data Translator | 마케팅-데이터-IT 간 데이터 통역사 | 홈페이지, About |
| Data Literacy Enabler | 데이터 리터러시 증진 엑셀러레이터 | 홈페이지, About |
| D.Mentor | Magazine D. 필진 프로필 명칭 | Magazine D. |
| Data Analytics Consultant | 필진 직책 표기 | Magazine D. |
| Data Analyst & Marketing Intelligence Advisor | 필진 전문분야 표기 | Magazine D. |
### 10.3 서비스명 (Service Titles)
모든 서비스명은 영문으로 작성하며, 아래에 한국어 설명을 부제로 배치한다.
| 서비스명 (영문) | 한국어 부제 |
|-------------|----------|
| SMART Measurement & Audit | KPI 설정, 성과 측정 계획 수립, 성과 관리 체계 디자인 |
| Marketing Intelligence Audit | 디지털 마케팅 채널 성과 진단, 사용자 여정 분석 |
| Data Analytics Consulting | 디지털 애널리틱스 진단, 설정, 최적화 컨설팅 |
| Performance Dashboard Design | 퍼포먼스 대시보드 설계, 구축, 자동화 |
| Data Storytelling Design | 데이터 시각화, 인터랙티브 프레젠테이션 디자인 |
| Data Literacy Training | 데이터 리터러시 교육, 워크숍 운영 |
### 10.4 교육 프로그램명 및 캐치프레이즈
| 프로그램명 | 캐치프레이즈 |
|----------|----------|
| GA4 코어 트레이닝 캠프 | (별도 캐치프레이즈 없음) |
| 마케팅 애널리틱스 1Day 챌린지 | 1 Insight per Day |
| | 마케터를 위한 애널리틱스 트리트먼트 하루에 한 가지! |
| | Google Analytics 4 기본부터 고급 활용 테크닉 완전 정복! |
**교육 페이지 라벨:**
| 영문 라벨 | 사용 위치 |
|---------|----------|
| 1 DAY TREATMENT | 교육 단위 설명 |
| 3 STEP APPROACH | 학습 방법론 |
| 8 WEEKS PER ANALYTICS | 교육 기간 안내 |
| Course Content | 커리큘럼 섹션 제목 |
| NOT ENROLLED | 수강 상태 표시 |
| Get Started | CTA 버튼 |
| Take this Course | CTA 버튼 |
### 10.5 섹션 라벨 (Section Labels)
| 라벨 | 사용 위치 | 역할 |
|------|----------|------|
| ABOUT D.INTELLIGENCE | 홈페이지 상단 | 브랜드 소개 섹션 식별자 |
| WHAT WE DO | 홈페이지 서비스 섹션 | 서비스 소개 섹션 식별자 |
| Fact Sheet | About 페이지 | 회사 기본 정보 섹션 |
| Location | About 페이지 | 위치 안내 섹션 |
| D.intelligence Sector Magazine | Magazine D. 페이지 | 매거진 섹션 식별자 |
| Current Status | 교육 페이지 | 수강 상태 섹션 |
| Price | 교육 페이지 | 가격 정보 섹션 |
### 10.6 네비게이션 메뉴명
| 메뉴명 | 언어 | 비고 |
|--------|------|------|
| About | 영문 | 회사 소개 |
| SMART Marketing Clinic | 영문 | 서비스 소개 |
| Data Intelligence Workshop | 영문 | 교육 프로그램 |
| Magazine D. | 영문 | 블로그/매거진 |
| 상담문의 | 한국어 | CTA 버튼 (강조색 배경) |
### 10.7 Magazine D. 기사 제목 카테고리 태그
| 태그 | 사용 예시 |
|------|----------|
| [Google Analytics 4] | [Google Analytics 4] 잠재고객, 무엇이고 왜 설정해야 할까? |
| [Meta ADs] | [Meta ADs] 어드밴티지+ 타겟, 어떻게 사용해야 할까? |
| [Mixpanel] | Mixpanel 소개 및 기본 기능: Google Analytics 4과 비교하여 |
### 10.8 웹 카피라이팅 작성 규칙
**규칙 1: 영문-한국어 이중 구조 (Bilingual Layering)**
브랜드의 웹 카피는 영문 타이틀 + 한국어 설명의 이중 구조를 기본으로 한다.
예시:
- 영문: "Data Storytelling Design"
- 한국어: "발견된 데이터 인사이트를 목표 청중에게 효과적으로 전달하여, 공통의 문제의식과 실천의 방향을 제시하는 데이터 시각화, 인터랙티브 프레젠테이션 디자인"
**규칙 2: 영문 타이틀 스타일**
- Title Case 사용 (각 단어의 첫 글자 대문자)
- 관사(a, an, the)와 전치사는 소문자 유지
- 앰퍼샌드(&) 사용 (and 대신)
- 간결한 명사구 중심 (3~5단어)
올바른 예시: Analysis, Treatment & Growth / SMART Measurement & Audit
**규칙 3: 섹션 라벨 스타일**
- ALL CAPS (전체 대문자) 사용
- 간결한 명사구 (1~3단어)
올바른 예시: ABOUT D.INTELLIGENCE / WHAT WE DO
**규칙 4: 캐치프레이즈 스타일**
- 짧고 임팩트 있는 구문
- 느낌표(!)로 종결하여 행동 유도
- 영문과 한국어 혼용 가능
올바른 예시: "Think Forward" / "1 Insight per Day" / "마케터를 위한 애널리틱스 트리트먼트 하루에 한 가지!"
**규칙 5: CTA(Call to Action) 버튼 스타일**
- 교육/워크숍 CTA는 영문 사용: "Get Started", "Take this Course"
- 상담/문의 CTA는 한국어 사용: "상담문의", "문의하기"
- CTA 버튼은 강조색(노란색/라임) 배경으로 시각적 차별화
**규칙 6: 푸터(Footer) 정보 표기**
- 회사명: 영문 로고 "D.intelligence" 사용
- 연락처, 주소 등 기본 정보는 한국어로 표기
- 저작권 표기: 영문 형식 사용
### 10.9 웹 카피 톤 매트릭스
| 페이지 유형 | 영문 카피 톤 | 한국어 카피 톤 |
|-----------|-----------|-------------|
| 홈페이지 히어로 | 임팩트, 비전 제시 | 브랜드 가치 서술 |
| 서비스 소개 | 전문적, 간결 | 상세 설명, 존칭체 |
| 교육 프로그램 | 동기부여, 행동 유도 | 안내, 설명체 |
| Magazine D. | 카테고리 태깅 | 논리적 서술체 |
| About | 포지셔닝, 역할 정의 | 비전 서술, 존칭체 |
| 상담문의 | (사용 안 함) | 정중한 요청체 |
---
## 11. 체크리스트: 브랜드 톤 적합성 검증
- [ ] 전문 용어는 영문 병기가 되어 있는가?
- [ ] 문장이 논리적 흐름(배경, 설명, 사례, 결론)을 따르는가?
- [ ] 구어체가 사용되지 않았는가?
- [ ] 한자어 기반 격식 어휘를 사용했는가?
- [ ] 서비스 페이지는 존칭체, 아티클은 서술체로 통일되었는가?
- [ ] 쉼표로 적절히 절을 구분했는가?
- [ ] 제목에 [카테고리] 태그가 포함되었는가? (Magazine D.)
- [ ] 브랜드 특유의 접속 표현을 활용했는가?
- [ ] 결론부에 결론적으로 로 시작하는 요약이 있는가? (아티클)
- [ ] 감정적, 과장된 표현 없이 데이터와 논리에 기반한 서술인가?
- [ ] 영문 타이틀은 Title Case로 작성되었는가?
- [ ] 섹션 라벨은 ALL CAPS로 표기되었는가?
- [ ] CTA 버튼이 적절한 언어(교육=영문, 문의=한국어)로 표기되었는가?
- [ ] 영문-한국어 이중 구조가 올바르게 적용되었는가?
---
이 스타일 가이드는 [dintelligence.co.kr](http://dintelligence.co.kr/) 웹사이트의 전체 페이지 (About, SMART Marketing Clinic, Data Intelligence Workshop, Magazine D., 상담문의) 콘텐츠를 분석하여 작성되었습니다.

View File

@@ -0,0 +1,140 @@
# D.intelligence Notion Database Schema Reference
> **Last verified**: 2026-03-08
> **Update policy**: Check and update schema when writing to Notion tasks. Structure rarely changes.
---
## DB1: Client Service Tasks Dashboard
- **ID**: `2c0581e58a1e816d9948c3f3591c372c`
- **Collection**: `collection://2c0581e5-8a1e-8178-aa9a-000b44537e0a`
- **Purpose**: Unified task tracker across all clients
### Schema
| Property | Type | Options/Notes |
|----------|------|---------------|
| Task Name | title | |
| Task Status | status | Not Started, Planning, In Progress, In Review, Waiting, Done, On Hold, Archived |
| Client Code | select | JHR, JAM, SLA, SHR, OurDigital |
| Client | relation | → Client DB (`collection://ac212daf-4eda-4a99-8c97-89699c846331`) |
| Priority | select | A1, A2, A3, B1, B2, B3, C1, C2, C3 |
| Service Line | select | SEO, Local SEO, Digital Ads, Content Marketing, Growth Package, AI Literacy, Data Literacy, Data Analytics, GTM/Tagging, Web Dev |
| Category | multi_select | SEO, 데이터 분석, 광고, 콘텐츠, 웹사이트, 리포트, 회의, 리서치, 교육, 프롬프트, 프로젝트 관리, 기타 |
| Type | select | Task, Audit, Report, Billing, Meeting, Project, Analysis, Research, Guide, Editorial, Ad Management |
| Tags | multi_select | SEO, Looker Studio, WordPress, Google Analytics, Google Tag Manager, Way of Working, Workshop, D.intelligence Services, WPForms, Membership, Infra, Policy, Transaction, D.intel, R&D, Research |
| Due Date | date | |
| Start Date | date | |
| Effort (hrs) | number | |
| Billable | checkbox | |
| Billing Month | date | |
| Assignee | person | |
| Notes | text | |
| Source DB | select | JHR-Original, JAM-Original, SLA-Original, New |
| URL | url | |
| Daily Work Plans | relation | → `collection://2ef581e5-8a1e-80b9-81cb-000b121910d3` |
| Google Drive File | relation | → `collection://2d0581e5-8a1e-8096-8577-000b5152a9f2` |
| JHR Related Tasks | relation | → JHR DB |
| JAM Related Tasks | relation | → JAM DB |
| SLA Related Tasks | relation | → SLA DB |
---
## DB2: Client Reference Library
- **ID**: `f0508d67b26042c1a0c7f2283f87eab4`
- **Collection**: `collection://b8ddab91-d3a7-4b84-86d7-35e46711598c`
- **Purpose**: Knowledge base of client-related references
### Schema
| Property | Type | Options/Notes |
|----------|------|---------------|
| Title | title | |
| Account Code | select | D.intelligence, JHR, JAM, SLA, SHR, OurDigital |
| Category | select | SEO, Data Analytics, Content Marketing, Digital Ads, etc. |
| AI Summary | text | Brief summary of key points (3-5 sentences) |
---
## DB3: 조선호텔앤리조트 디지털마케팅 (JHR)
- **ID**: `529587363fe04a8da588337e8eb1aa0b`
- **Collection**: `collection://931a663c-4b76-4903-858c-f801b973a1aa`
- **Purpose**: JHR client-specific task board
### Schema
| Property | Type | Options/Notes |
|----------|------|---------------|
| Task Name | title | |
| Task Status | status | Not Started, Planning, In Progress, In Review, Waiting, Done, On Hold, Archived |
| Account Code | select | JHR, JAM, SLA, SHR |
| Assign | person | |
| Billable | checkbox | |
| Blocked by | relation | self-referential |
| Blocking | relation | self-referential |
| Service Line | select | |
| AI summary | text | |
---
## DB4: The Shilla Hotels & Resorts SEO & Data Intelligence (SLA)
- **ID**: `1e0581e58a1e80e28802d19bf8d468c7`
- **Collection**: `collection://1e0581e5-8a1e-8070-96b0-000bd2aacc88`
- **Purpose**: SLA client-specific task board
### Schema
| Property | Type | Options/Notes |
|----------|------|---------------|
| Task Name | title | |
| Task Status | status | Not Started, Planning, In Progress, In Review, Waiting, Done, On Hold, Archived |
| Account Code | select | |
| Assign | person | |
| Billable | checkbox | |
| Backup Start Date | date | Backup before reset |
| Backup End Date | date | Backup before reset |
| Backup Task Status | status | Backup before reset |
| Service Line | select | |
---
## DB5: 제이미성형외과 디지털 마케팅 (JAM)
- **ID**: `4d76fb5bb4134e81883c21a8c4aa80c1`
- **Collection**: `collection://9f183ecb-9364-410e-91a7-a41a20455272`
- **Purpose**: JAM client-specific task board
### Schema
| Property | Type | Options/Notes |
|----------|------|---------------|
| Task Name | title | |
| Account Code | select | JHR, JAM, SLA, SHR |
| Assign | person | |
| Billable | checkbox | |
| Billing Month | select | Jan-Dec |
| AI 요약 | text | |
---
## Cross-Reference Map
```
Client Service Tasks Dashboard (central hub)
├── → Client DB (ac212daf)
├── → Daily Work Plans (2ef581e5)
├── → Google Drive Files (2d0581e5)
├── ↔ JHR DB (931a663c) via JHR Related Tasks
├── ↔ JAM DB (9f183ecb) via JAM Related Tasks
└── ↔ SLA DB (1e0581e5) via SLA Related Tasks
```
## Meeting Library Hub
- **Location**: Notion (exact DB ID to be confirmed on first use)
- **Purpose**: All meeting minutes and notes
- **Workflow**: Account Manager auto-posts meeting notes → optional Slack share