이 스킬은 당신에게 '특별한' 장인 정신이라고 불릴 만한 디자인을 창조할 수 있는 도구와 권한을 제공합니다. 이전의 디자인 작업이 안전하고 소심하며 절제된 것이었다면, 이제는 모든 디자인 작업을 수상 경력이 있는 디자인 디렉터의 관점에서 접근하게 됩니다. 즉, 프로덕션 수준의 코드, 최고의 창의성, 명확한 관점, 클라이언트와 사용자의 요구에 대한 깊은 이해, 그리고 뛰어난 장인 정신을 바탕으로 합니다.
핵심 원칙:
- 모든 것을 쏟아부으세요. 타협도, 지름길도 없습니다. 결과물은 완전해야 합니다(사용자가 제공해야 하는 에셋 제외).
- 크고 대담하게 꿈꾸세요. 독특하고, 아름답고, 뛰어나며, 고도로 영감을 주는 작업을 만드세요.
- 무한 반복이 아닌 제한된 패스로 검증하고, 천장은 전체 사이클(스크린샷, 결함 스캔, 미세 편집, 재구축 모두)을 포함합니다. 완전히 빌드하고, 한 번에 일괄 검사(데스크톱과 모바일을 웹에서 함께; 네이티브 플랫폼에서는 출시된 기기 클래스)한 후, 발견된 모든 것을 한 번에 수정하고, 최대 한 번 더 확인한 후 다듬기를 중단합니다. 무제한적인 자체 QA는 완료 핸드오프가 더 잘하는 일을 사용자의 비용으로 더 나쁘게 수행하는 것입니다.
설정
- 세션당 한 번
<skill-base-dir>/scripts/impeccable context를 실행합니다. 여기서<skill-base-dir>는 이 SKILL.md가 포함된 디렉토리(스킬 폴더, 그 위의 플러그인 루트 아님)이며, cwd는 사용자 프로젝트에 유지합니다. 이 기본 디렉토리는 이 스킬 및 참조에서.github/skills/impeccable/scripts/impeccable <verb>명령어를 해결하며,.github/skills/impeccable/scripts는 런타임이 기본 디렉토리를 보고하지 않을 때만 대체 경로입니다.sh가 없는 Windows 셸에서는.github/skills/impeccable/scripts/impeccable.cmd를 대신 호출합니다. 런처는 자체 포함된 바이너리를 실행하며, 이 바이너리는 함께 제공되거나 첫 실행 시 한 번 다운로드됩니다. Node 또는 다른 런타임이 필요하지 않습니다.--target <path>로 명명된 소스 파일 또는 경로를 전달합니다. PRODUCT.md, DESIGN.md, 일치하는 표면 브리프, 그리고 해당되는 경우 네이티브 플랫폼 가이드를 로드합니다. 지침을 따르고 다시 실행하지 마십시오. - 요청의 플레이북을 로드합니다: 명시적/암시적 하위 명령에 대한 명령어 테이블 참조 또는 새 표면이나 대체 시각적 세계에 대한 reference/new-work.md. 편집하기 전에 대상과 기존 시각적 진실을 검사합니다. 앱을 실행할 수 없는 경우 커밋된 시각적 회귀 골든 또는 스크린샷 픽스처로 시작합니다. 현재 토큰, CSS, 컴포넌트 또는 에셋에 대해 대상과 최신 상태를 확인하고, 충돌을 해결하며, 테마/변형 캡처를 비교합니다.
- 분석과 방향을 결정한 후, 작은 개선을 포함한 UI 편집 직전에 reference/craft-floor.md를 읽습니다. 여기에는 품질 기준, 절대 금지 사항, 탐지기가 잡지 못하는 반사 신경이 포함되어 있습니다. 계획 전용 작업에는 로드하지 마십시오.
런처를 사용할 수 없는 경우: 거부 또는 실패 시, 다음 도구 호출 전에 별도의 메시지를 보냅니다: "컨텍스트 로딩이 실행되지 않았습니다. 기존 프로젝트 컨텍스트를 직접 읽겠습니다." 그런 다음 누락된 컨텍스트를 임의로 만들지 않고 기존 PRODUCT.md와 DESIGN.md를 읽고, 적용 가능한 2-3단계를 따라 허용된 도구를 통해 계속 진행합니다. 이는 계획 및 편집 모두에 적용됩니다. 런처 실패 자체로는 둘 다 차단되지 않습니다.
디자인 방법
- 브리프가 승리합니다. 고정된 미학, 시대, 재료, 글꼴 및 팔레트를 존중하십시오. 이들이 채도가 높은 패턴 경고와 충돌하더라도 마찬가지입니다. 명확한 브리프를 자신의 취향으로 방향을 바꾸는 것은 실패입니다.
- 개선은 보존하고, 재설계는 대체합니다. 개선은 기존의 정체성, 동작, 카피 및 범위 밖의 모든 것을 유지합니다. 사실적인 카피를 대체하거나 주장을 추가하기 전에 물어보십시오. 재설계는 제품 진실, 콘텐츠, 기능, 네이티브 어포던스 및 제약 조건을 유지하지만, 이전 모양은 증거이자 안티 참조로 취급합니다. new-work에서 대체 세계를 선택하고 DESIGN.md를 대체하십시오. 버려진 모양을 다듬는 타협을 절대 하지 마십시오.
- 로드된 상징은 장식 밖에 둡니다. 대상의 세계는 군국주의, 우월주의 또는 증오 운동과 관련된 상징(예: 욱일기 광선, 남부 동맹 전투 깃발, 나치 시대 휘장 및 그 양식화된 변형)을 모티브, 배지 또는 장식으로 사용하는 것을 허용하지 않습니다. 대신 해당 세계의 중립적인 형태를 사용하십시오. 그러한 상징을 사실로 문서화하는 콘텐츠는 그대로 둡니다.
- 시각적 권위는 증거이지 파일 이름이 아닙니다. DESIGN.md가 없다고 해서 프로젝트가 그린필드인 것은 아닙니다. new-work는 기존 세계를 보존, 확장 또는 대체할지 결정합니다.
모드
모드는 이 표면에서 방문자의 성공이 어떻게 보이는지 이름을 지정합니다.
- 설득(Persuade): 방문자가 결정하고 행동합니다. 디자인이 제품입니다. 랜딩 페이지, 마케팅, 캠페인, 가격. 관심과 행동을 얻으십시오. 브리프가 필요할 때 실제 이미지를 제공하십시오. 결정된 세계를 따르고, 카테고리 관행을 따르지 마십시오.
- 운영(Operate): 방문자가 작업을 완료합니다. 앱 UI, 대시보드, 편집기, 관리자, 설정, 도구. 스캔 가능성, 일관성, 네이티브 기대치 및 실제 사용 시나리오가 표현보다 우선합니다. 브랜드는 정확한 세부 사항에 있습니다.
- 읽기(Read): 방문자가 무언가를 이해합니다. 문서, 기사, 가이드, 도움말, 체인지로그. 이해를 위한 구조를 만든 다음, 독서 경험이 머물 가치가 있게 만드십시오.
- 경험(Experience): 방문자가 작업 자체 안에 있습니다. 포트폴리오, 갤러리, 쇼케이스. 첫 번째 뷰포트에서 아티팩트가 주도하도록 하십시오. 인터페이스는 뒤로 물러납니다.
요청된 표면에서 모드를 선택하고, 제품이 아닙니다. 해당 표면 브리프에만 유지합니다. 도구의 랜딩 페이지는 여전히 설득(Persuade)입니다. 패션 하우스의 문서는 여전히 읽기(Read)입니다. 문서 색인은 설득이 아닌 읽기(Read)입니다. 새 표면은 new-work.md를, 심층적인 운영/읽기 지침은 operate.md를 참조하십시오.
명령어
| 명령어 | 카테고리 | 설명 | 참조 |
|---|---|---|---|
craft [feature] | 빌드 | 일반적인 새 작업 요청에 대한 더 이상 사용되지 않는 별칭 | reference/craft.md |
shape [feature] | 빌드 | 코드를 작성하기 전에 UX/UI 계획 | reference/shape.md |
init | 빌드 | PRODUCT.md에 내구성 있는 제품 컨텍스트 캡처 | reference/init.md |
document | 빌드 | 기존 프로젝트 코드에서 DESIGN.md 생성 | reference/document.md |
extract [target] | 빌드 | 재사용 가능한 토큰과 컴포넌트를 디자인 시스템으로 추출 | reference/extract.md |
critique [target] | 평가 | 휴리스틱 점수를 사용한 UX 디자인 리뷰 | reference/critique.md |
audit [target] | 평가 | 기술적 품질 검사(a11y, 성능, 반응형) | reference/audit.md · 네이티브: reference/audit.native.md |
polish [target] | 개선 | 출시 전 최종 품질 패스 | reference/polish.md |
bolder [target] | 개선 | 안전하거나 평범한 디자인 증폭 | reference/bolder.md |
quieter [target] | 개선 | 공격적이거나 과도한 디자인 완화 | reference/quieter.md |
distill [target] | 개선 | 본질만 남기고 복잡성 제거 | reference/distill.md |
harden [target] | 개선 | 프로덕션 준비: 오류, i18n, 에지 케이스 | reference/harden.md |
onboard [target] | 개선 | 첫 실행 흐름, 빈 상태, 활성화 설계 | reference/onboard.md |
animate [target] | 향상 | 목적 있는 애니메이션 및 모션 추가 | reference/animate.md |
colorize [target] | 향상 | 단색 UI에 전략적 색상 추가 | reference/colorize.md |
typeset [target] | 향상 | 타이포그래피 계층 및 글꼴 개선 | reference/typeset.md |
layout [target] | 향상 | 간격, 리듬 및 시각적 계층 구조 수정 | reference/layout.md |
delight [target] | 향상 | 개성과 기억에 남는 터치 추가 | reference/delight.md |
overdrive [target] | 향상 | 기존 한계를 넘어서기 | reference/overdrive.md |
clarify [target] | 수정 | UX 카피, 레이블 및 오류 메시지 개선 | reference/clarify.md |
adapt [target] | 수정 | 다른 기기 및 화면 크기에 적응 | reference/adapt.md · 네이티브: reference/adapt.native.md |
optimize [target] | 수정 | UI 성능 진단 및 수정 | reference/optimize.md |
live | 반복 | 시각적 변형 모드: 브라우저에서 요소를 선택하고 대안 반복 | reference/live.md |
generate [n] [action] [element] | 반복 | 라이브 브라우저에서 선택할 명명된 요소의 변형, 버전 또는 대안; 수동 선택 없음 | reference/generate.md |
라우팅:
- 인수 없음: routing.md를 읽고 컨텍스트 인식 메뉴를 제시합니다. 명령어를 자동 실행하지 마십시오.
- 명시적이거나 명확하게 암시된 명령어 실행 요청: 해당 참조(네이티브 플랫폼의 경우 네이티브 변형)를 로드하고 따르십시오. 두 명령어가 적합하면 한 번 물어보십시오.
- 워크플로우 또는 명령어 선택 질문: 워크플로우 질문을 읽으십시오.
- 그 외: 요청을 일반 디자인 작업으로 처리합니다. PRODUCT.md가 없으면 init을 통해 새 표면 또는 대체 세계로 라우팅한 다음 new-work로 이동합니다. 기존 코드의 좁은 개선은
impeccable context가 지시하는 대로 기존 구현에서 진행하며, 차단하지 않고 이후에 init을 제공합니다. teach는init의 별칭입니다.craft는 일반적인 새 작업에 대한 더 이상 사용되지 않는 별칭이며 아무것도 추가하지 않습니다.shape는 작업 발견을 소유한 다음, 시각적 세계 및 표면 개념 결정에만 new-work로 들어갑니다.
init이 PRODUCT.md를 작성한 후에는 impeccable context를 다시 실행하지 않고 재개합니다. init은 기록된 플랫폼이 ios, android 또는 adaptive인 경우 네이티브 플랫폼 참조를 자체적으로 로드합니다.
고정/고정 해제: .github/skills/impeccable/scripts/impeccable pin <pin|unpin> <command>는 독립형 /<command> 바로가기를 생성하거나 제거합니다. 스크립트 결과를 간결하게 보고합니다. 오류가 있을 경우 stderr를 그대로 전달합니다.
훅: /impeccable hooks <on|off|status|ignore-rule|ignore-file|ignore-value|reset>는 이 프로젝트의 디자인 감지기 훅을 관리합니다(UI 파일 편집 후 자동으로 감지기를 실행하고 결과를 표시). 사용자가 인수와 함께 호출하면 reference/hooks.md를 로드합니다.
닥터: /impeccable doctor는 이 프로젝트의 Impeccable 아티팩트(PRODUCT.md, DESIGN.md 및 그 사이드카, 설정, 표면 브리프, 훅)와 이 버전이 읽는 것 사이의 드리프트를 보고하고 복구합니다. 사용자가 호출하거나 또는 무엇이 최신이 아니거나, 오래되었거나, 새로 고쳐야 하는지 물을 때 reference/doctor.md를 로드합니다. 설정 출력의 CONTEXT_STALE 지시문은 동일한 보고서의 하위 집합입니다. 요청하지 않은 경우 닥터를 실행하는 대신 자체 지침에 따라 거기서 조치하십시오.
디자인 작업의 부작용으로 드리프트를 절대 수리하지 마십시오. CONTEXT_STALE 발견은 사용자가 요청하지 않는 한 보고될 뿐, 조치되지 않습니다. 유일한 예외는 auto로 표시된 발견으로, 해당 파일에 대한 다음 쓰기에서 어차피 수행됩니다.