Design Guardian Skill
목적: AI 스타일을 회피하고 일관된 디자인을 유지하며, 모든 변경사항을 Obsidian에 자동 기록합니다.
핵심 원칙
1. 색상 절제
- •금지: 5가지 이상 원색, 무지개 그라디언트
- •권장: 2-3가지 색상, 단색 그라디언트
- •네온 허용: 절제하면 사용 가능
- •보라색 주의: 컨셉 아닐 때 권장하지 않음
2. SVG 아이콘 우선
- •1순위: Lucide/Heroicons SVG 아이콘
- •2순위: 최소한의 의미있는 이모지
- •금지: ✨🚀🔥💡🤖⚡🎯💻🌟⭐
3. Obsidian 자동 기록
- •모든 디자인 변경사항
- •AI 패턴 검사 결과
- •트러블슈팅 과정
자동 실행 조건
다음 파일 수정 시 자동으로 AI 패턴 검사:
- •
**/*.css - •
**/*.scss - •
**/*.module.css - •
**/*.tsx(스타일 관련) - •
**/*.jsx(스타일 관련)
검사 항목
1. 색상 검사
javascript
// 색상 개수 체크
const colors = extractHexColors(code);
if (colors.length > 3) {
warn(`색상이 ${colors.length}개입니다. 3개 이하 권장`);
}
// 무지개 그라디언트 체크
if (hasRainbowGradient(code)) {
error('무지개 그라디언트 감지! AI 스타일입니다.');
}
// AI 전형 조합 체크
const aiCombos = [
['#FF6B9D', '#FEC84B', '#8B5CF6'], // 핑크+노랑+보라
];
if (hasAIColorCombo(colors, aiCombos)) {
error('AI 전형 색상 조합 감지!');
}
// 보라색 과다 사용 체크 (컨셉 아닐 때)
if (!isConceptPurple && hasManyPurple(colors)) {
warn('보라색 과다 사용. AI 클리셰입니다.');
}
2. 이모지 검사
javascript
const bannedEmojis = ['✨', '🚀', '🔥', '💡', '🤖', '⚡', '🎯', '💻', '🌟', '⭐'];
const found = code.match(/[\u{1F300}-\u{1F9FF}]/gu);
if (found) {
const banned = found.filter(e => bannedEmojis.includes(e));
if (banned.length > 0) {
error(`금지 이모지 감지: ${banned.join(' ')}`);
suggest('SVG 아이콘으로 교체하세요');
}
}
3. 아이콘 검사
javascript
// SVG import 확인
if (!code.includes('lucide-react') && !code.includes('heroicons')) {
info('SVG 아이콘 라이브러리 사용을 권장합니다');
}
// HTML 내 이모지 확인
if (code.match(/<[^>]*>[\u{1F300}-\u{1F9FF}]/gu)) {
warn('HTML 내 이모지 발견. SVG로 교체 권장');
}
워크플로우
변경 전 (Before Hook)
code
1. 파일 내용 읽기 2. AI 패턴 검사 실행 - 색상 개수 체크 - 금지 이모지 체크 - 무지개 그라디언트 체크 - 보라색 과다 사용 체크 3. 문제 발견 시 경고 표시 4. 사용자에게 계속 여부 확인
변경 후 (After Hook)
code
1. 변경 내용 분석
2. Obsidian에 자동 기록
- 파일: Projects/디자인/01-변경기록/YYYY-MM-DD-{컴포넌트}-{변경}.md
- 템플릿: design-change-template.md 사용
3. AI 패턴 검사 결과 포함
4. Git 커밋 시 요약 추가
오류 메시지 예시
색상 과다
code
⚠️ AI 스타일 감지! 발견된 문제: - 총 6가지 색상 사용 (#FF6B9D, #FEC84B, #8B5CF6, #10B981, #00D9FF, #F59E0B) - 권장: 3가지 이하 권장 수정: Option 1 - 단색 중심 --primary: #FF6B9D --secondary: #1A1A1A --accent: #FFFFFF Option 2 - 네온 미니멀 --primary: #00FF00 --bg: #0A0A0A --text: #FFFFFF 계속 진행하시겠습니까? (Y/n)
금지 이모지
code
❌ 금지 이모지 감지!
Line 15: ✨ sparkles - AI 공식 상징
Line 23: 🚀 rocket - 스타트업 클리셰
권장 수정:
import { Sparkles, Rocket } from 'lucide-react';
<Sparkles className="w-5 h-5" />
<Rocket className="w-5 h-5" />
또는 텍스트로 교체:
"새로운 기능" (이모지 제거)
Obsidian 기록 형식
변경기록
markdown
--- title: Header-색상변경 date: 2025-10-20 component: Header type: color-change status: completed --- # Header 색상 변경 ## AI 패턴 검사 결과 - [x] 색상 3개 이하 - [x] 금지 이모지 없음 - [x] 무지개 그라디언트 없음 ## 변경 내용 Before: 6가지 색상 After: 2가지 색상 (네온 그린 + 다크) Tags: #디자인 #변경기록 #Header
설정 (obsidian-config.json)
json
{
"design": {
"designRules": {
"maxColors": 3,
"bannedEmojis": ["✨", "🚀", "🔥", "💡", "🤖", "⚡", "🎯", "💻", "🌟", "⭐"],
"preferSvgIcons": true,
"neonAllowed": true,
"purpleDiscouraged": true,
"purpleAllowedWhenConcept": true
}
}
}
사용 예시
CSS 파일 수정 시
css
/* ❌ 수정 전 */
.card {
background: linear-gradient(
#FF6B9D, #FEC84B, #8B5CF6, #00D9FF
);
}
/* [Design Guardian 실행] */
/* ⚠️ 4가지 색상 그라디언트 - AI 스타일! */
/* ✅ 수정 후 */
.card {
background: linear-gradient(
#00FF00, #00AA00
);
}
/* [Obsidian 자동 기록] */
/* Projects/디자인/01-변경기록/2025-10-20-Card-그라디언트수정.md */
관련 문서
- •[[색상-시스템]] - 색상 사용 규칙
- •[[아이콘-규칙]] - SVG 아이콘 가이드
- •[[AI-회피-패턴]] - AI 스타일 감지
- •[[금지-이모지-목록]] - 금지 이모지 전체 목록
- •[[금지-색상조합]] - 금지 색상 조합 목록
버전: 1.0.0 작성일: 2025-10-20 작성자: Design Guardian System