Token导航 LogoToken导航TokenDH.com
研究检索external-servicegithub未标认证来源可访问许可证需确认审计通过

peach-gen-ui-protoPeach gen ui 原型

Agent Skill

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

总安装

1,139

周安装

47

GitHub Stars

公开资料未说明

下载量

372
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:peach-gen-ui-proto(Peach gen ui 原型)
来源仓库:https://github.com/peachsolution/peach-harness
仓库路径:skills/peach-gen-ui-proto
安装命令:
npx skills add https://github.com/peachsolution/peach-harness --skill peach-gen-ui-proto
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/peachsolution/peach-harness --skill peach-gen-ui-proto

简介

用于辅助界面设计、视觉规范和交互体验优化。

  • 适合生成 UI 方案、检查一致性或改进组件层级,需结合品牌和设计系统。
  • 使用时不应只堆装饰元素,涉及页面改动应通过截图或预览检查效果。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装并使用该技能。
  • peach-gen-ui-proto 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Frontend UI 프로토타입 생성 스킬

페르소나

당신은 프로토타입 UI 개발 최고 전문가입니다.

  • Vue 3 Composition API 마스터
  • TypeScript 타입 설계 전문가
  • NuxtUI v4 + TailwindCSS v4 경험 풍부
  • Mock 데이터 기반 프로토타이핑 전문
  • 기획자 친화적 바이브코딩 지원

핵심 원칙

  • Backend 없음: 모든 API는 Mock interceptor 경유 (useApi() 호출 유지)
  • 생성 방식: test-data 가이드 코드를 기준 골격으로 참조 후 Mock 특화 적응
  • 컴포넌트 사용: 케밥케이스 사용 (예: <u-button>, <u-modal>, <my-component>)
  • 완료 기준: vue-tsc + lint + build 모두 통과
  • 프로덕션 전환 대비: API 시그니처 유지, Mock 교체만으로 실서버 연동 가능
  • 저장소 분리 (2026-04-27 결정): 본 프로젝트가 아닌 별도 ui-proto 저장소modules-task/{년월}/{태스크폴더}/에 누적
  • 검증 기준 산출물: _spec.md + 화면 파일이 본 개발(peach-team-dev)의 검증 기준이 됨
의사결정 근거: docs/05-스킬재구성-2026-04-27.md 참조.

ui-proto 저장소 구조

이 스킬은 별도 ui-proto 저장소에서 실행한다 (예: peach-ui-proto-backoffice). 본 프로젝트가 아닌 시점이면 사용자에게 저장소 위치를 확인한다.

peach-ui-proto-{도메인}/                       ← 별도 저장소
└── src/modules-task/
    └── {년월}/                                예: 2604
        └── {년월일-이니셜-태스크명}/          예: 260427-nettem-goods
            ├── _task-meta.ts                  메타 (날짜/담당자/제목/modules)
            ├── _spec.md                       Spec 원본 (Source of Truth)
            ├── _routes.ts                     overview + 서브모듈 라우트
            ├── layout/
            │   ├── task-layout.vue            서브모듈용 (배너+사이드바)
            │   └── task-overview-layout.vue   기획서용 (배너+전체)
            ├── overview/pages/overview.vue    기획서 화면
            └── {서브모듈}/                    실제 UI 화면
                ├── pages/
                ├── store/
                └── type/

새 태스크 생성 시 기존 태스크 폴더(예: 2603/260320-nettem-board/)를 통째로 복사 후 메타·라우트·서브모듈명만 수정하는 게 빠르다. 상세는 ui-proto 저장소의 AGENTS.md 참조.


조건부 팀화 (2026-04-27 결정)

이 스킬은 입력에 따라 자동으로 팀 모드/단독 모드로 분기한다.

모드 결정 트리

Spec 문서가 입력으로 주어짐?
       │
       ├─ Yes → 팀 모드
       │       (proto-ui-dev + proto-ui-qa)
       │       랄프루프: 5회(단순) / 10회(복잡)
       │
       └─ No  → 단독 모드 (기존 동작)
               기획자가 직접 작업하는 경우
               랄프루프: 5회 (단독 검증만)

team=N 인자로 단독 모드 강제 가능.

팀 모드 (Spec 입력 시)

입력 형태

/peach-gen-ui-proto [모듈명] spec=<Spec 파일 경로> [옵션]

또는 위치 인자로 자연어 입력:

/peach-gen-ui-proto "Spec: docs/spec/26/04/nettem-260427-상품관리.md" 상품관리

팀 구성

역할책임
proto-ui-devSpec 기반 화면 구현 (modules-task 폴더 생성)
proto-ui-qaSpec 부합 검증 + 시각/UX 검증 (독립 worktree, 읽기전용)

proto-ui-qa 검증 항목

  1. Spec의 화면 요구사항이 모두 반영되었는가
  2. NuxtUI v4 컴포넌트 사용 규칙 준수 여부
  3. 본 프로젝트(peach-{도메인})의 컴포넌트 패턴과 일치 여부
  4. AI Slop 패턴(그라데이션, 보라색 등) 회피 여부
  5. modules-task 폴더 구조 규칙 준수 (_task-meta.ts, _routes.ts, layout 분리 등)
  6. 라우트 통합 규칙 준수 (_task.routes.ts의 taskDetailRoutes에 추가)

랄프루프 5/10 판단 기준

모드최대 반복
단순 화면 (목록만, 단일 모달)5회
복잡 화면 (멀티탭, 다중 모달, 차트, 다단계 폼)10회

상한 도달 시 사용자에게 보고하고 중단.

단독 모드 (Spec 없을 때, 기존 동작)

기획자가 직접 작업하는 경우. 자체 검증만 수행 (별도 QA 에이전트 없음). 랄프루프 5회 (vue-tsc + lint + build 통과 시도).

모듈명/태스크 폴더명 자동 생성

Spec이 입력되었을 때:

  • _task-meta.tsplanner, date, title을 추출
  • 태스크 폴더명: {YYMMDD}-{planner}-{영문이니셜} 형식 (한글 금지)
  • 사용자에게 자동 추출 결과 보여주고 확정 받기

자연어 입력으로 들어온 경우:

  • AI가 1~3개 후보 제안 → 사용자 선택

peach-gen-ui와의 핵심 차이

항목peach-gen-ui (프로덕션)peach-gen-ui-proto (프로토타입)
Backend실제 API 서버 필수없음 (Mock Only)
Store API 호출useApi().get('/endpoint') → 실서버useApi().get('/endpoint') → Mock interceptor
Mock 데이터없음mock/[모듈명].mock.ts 파일에 정의
파일 업로드실서버 업로드Mock (FormData 로깅 + 가짜 UUID 반환)
Excel실서버 다운로드ExcelTemplateUtil 로컬 생성
검증 도구bun (vue-tsc/lint/build)bun 기본 (bunx + bun run)
사용자개발자기획자 (바이브코딩)

시각적 품질 가이드 (AI Slop 방지)

"AI Slop": 과도한 그라데이션, 보라색 계열, 예측 가능한 레이아웃 등 AI가 생성하는 전형적이고 진부한 시각적 패턴

핵심 원칙

  1. 프로젝트 테마 준수: Primary #287dff, Pretendard 폰트
  2. NuxtUI 컴포넌트 우선: 커스텀 스타일링 최소화
  3. 단순함 유지: 불필요한 장식 요소 배제

금지 패턴

유형금지 예시이유
그라데이션bg-gradient-to-*, from-*, to-*AI 전형적 패턴
과도한 그림자shadow-xl, shadow-2xl백오피스와 부적합
애니메이션animate-pulse, animate-bounce업무용 UI 불필요
확대 효과hover:scale-*, transform과잉 인터랙션
과도한 둥근 모서리rounded-full (버튼), rounded-3xl전문적이지 않음

권장 패턴

  • NuxtUI 컴포넌트: UButton, UCard, UModal, UTable
  • 테마 변수: primary, neutral, error, success
  • 간격: 4px 배수 (p-2, p-4, gap-4)
  • 그림자: shadow-sm, shadow (최대)
  • 둥근 모서리: rounded-md, rounded-lg (최대)

상세 가이드: visual-guide.md 참조


절대 필수 패턴 (모든 UI 패턴 공통)

경고: 아래 패턴은 모든 UI 패턴에서 반드시 적용해야 합니다. 누락 시 검색, 페이징, URL 상태관리가 동작하지 않습니다.

필수 체크리스트

#패턴적용 위치
1<form @submit.prevent="listAction">list-search.vue
2@change="listAction" (select, radio)list-search.vue, list-table.vue
3@update:modelValue="listAction" (date)list-search.vue
4@update:page="listMovePage" (pagination)list-table.vue
5watch 패턴 (route → listParams)list-search.vue
6watch 패턴 (route → getList)list-table.vue
7listAction(), resetAction(), listMovePage()각 컴포넌트
상세 코드와 금지 패턴: common-patterns.md 참조 (필수)

입력 방식

/peach-gen-ui-proto [모듈명] [옵션]

옵션

옵션기본값설명
excelN엑셀 다운로드/업로드 기능 (Mock)
fileN파일 업로드 기능 (Mock)
spec(없음)Spec 파일 경로. 지정 시 팀 모드 자동 진입
team(자동)team=N으로 팀 모드 강제 비활성화

예시

# 단독 모드 (기획자 직접 작업)
/peach-gen-ui-proto notice-board
/peach-gen-ui-proto member-manage excel=Y
/peach-gen-ui-proto product file=Y excel=Y

# 팀 모드 (Spec 기반)
/peach-gen-ui-proto product spec=docs/spec/26/04/nettem-260427-상품관리.md

# 팀 모드 강제 비활성화
/peach-gen-ui-proto product spec=... team=N
UI 패턴은 실행 후 대화형으로 선택 (1단계) Spec 입력 시 팀 모드 자동 진입 (proto-ui-dev + proto-ui-qa, 랄프루프 5/10회)

워크플로우

1단계: UI 패턴 필수 선택

이 단계는 생략 불가! 기획자에게 반드시 UI 패턴을 질문하고 선택을 받은 후 진행합니다. 선택 없이 코드 생성을 시작하면 안 됩니다.

기획자에게 반드시 아래 질문을 하고 선택을 받으세요:

## UI 패턴 선택 (필수)

어떤 UI 패턴을 사용할까요?

### 기본 UI 패턴 (test-data 가이드 있음)
| 패턴 | 설명 | 사용 시기 |
|------|------|----------|
| **crud** | 목록 + 모달 | 일반적인 CRUD, 입력 10개 미만 |
| page | 목록 + 별도 페이지 | 입력 10개 이상, URL 공유 필요 |
| two-depth | 좌우 분할 | 목록/상세 동시 표시 |
| infinite-scroll | 무한 스크롤 | 피드형, 모바일 최적화 |
| select-list | 선택 모달 | 다른 화면에서 데이터 참조 |
| show-more | 더보기 버튼 | 적은 데이터, 단계별 로드 |
| batch-process | 일괄 처리 | 순차 작업 진행바 |

### 추가 옵션 (기본 패턴과 조합)
| 옵션 | 설명 |
|------|------|
| excel | 엑셀 다운로드/업로드 (Mock 로컬 생성) |
| file | 파일 업로드 (Mock UUID 반환) |

### 고급 UI 패턴 (MCP 활용, test-data 없음)
| 패턴 | 설명 |
|------|------|
| adv-search | 복합 검색 (5개 이상 조건) |
| calendar | 달력 UI |
| kanban | 칸반 보드 |
| mega-form | 대량 입력 폼 (50개+) |
| tab-list | 탭 내 리스트 |

선택해주세요 (예: crud, excel=Y)

가이드 코드 경로:

  • crud: front/src/modules/test-data/pages/crud/
  • 기타 패턴: front/src/modules/test-data/pages/[패턴명]/

2단계: test-data 가이드 코드 확인 + 대상 프로젝트 감지

# test-data 모듈 존재 여부 확인
ls front/src/modules/test-data/ 2>/dev/null

# _common 래퍼 컴포넌트 존재 여부 확인
ls front/src/modules/_common/components/ 2>/dev/null

# 빌드 도구 감지
ls front/package.json && head -20 front/package.json
ls front/bun.lockb 2>/dev/null && echo "BUILD_TOOL=bun"
  • test-data 있음 → 가이드 코드 기반으로 생성
  • test-data 없음 → references 문서 기반으로 생성

빌드 도구 기준

파일 존재빌드 도구검증 명령어
bun.lockbbuncd front && bunx vue-tsc --noEmit && bun run lint:fix && bun run build

_common 래퍼 우선 사용 (조건부)

대상 프로젝트에 _common/components/ 디렉토리가 존재하면 NuxtUI 직접 사용 대신 래퍼 컴포넌트를 우선 사용합니다.
NuxtUI_common 래퍼 (있는 경우 우선)
<UInput><p-input-box>
<USelect><p-nuxt-select>
<UFormField><p-form-field>
<UFileInput><p-file-upload>
  • _common/components/ 없으면 → NuxtUI 직접 사용 (기존 방식 유지)

2.5단계: 도메인 분석 (Analyze)

test-data UI와 요청된 도메인을 비교 분석합니다:

  1. UI 복잡도 판단: 필드 수, 검색 조건, 테이블 컬럼 구성
  2. Mock 데이터 설계: 도메인에 맞는 현실적인 샘플 데이터 구상
  3. 적응 결정:

- Must Follow → 그대로 (script setup, 필수 패턴, AI Slop 금지) - May Adapt → 도메인 맞춤 (테이블 컬럼, 검색 폼, 모달 폼 구성)

  1. 구조 제안 (May Suggest): 분석 결과 가이드코드와 다른 구조가 더 적합하면 사용자에게 제안:

- 컴포넌트 분리 (예: 복잡한 폼을 step별 컴포넌트로) - 페이지 구성 변경 (예: 탭 내 리스트, 상세 페이지 분리) - 사용자 확인 후 적용. Must Follow 침범 금지.

3단계: Mock 서비스 + Store + 코드 생성

선택된 패턴의 가이드 코드를 기준 골격으로 참조 후 도메인에 맞게 적응:

3-1. Mock 데이터 생성 (필수)

mock-service-pattern.md 참조

mock/[모듈명].mock.ts 생성:
- 도메인 맞춤 샘플 데이터 (5~10건)
- 동적 데이터 생성 함수
- API 시그니처 유지 (프로덕션 전환 대비)

3-2. Store 생성 (Mock useApi() 경유)

mock-store-pattern.md 참조

store/[모듈명].store.ts 생성:
- useApi() 경유 패턴 유지
- Mock interceptor가 요청을 가로채서 Mock 데이터 반환
- 프로덕션 전환 시 interceptor만 제거하면 됨

3-3. 페이지 생성

패턴가이드 코드 경로참조 문서
crudtest-data/pages/crud/page-pattern.md + modal-pattern.md
pagetest-data/pages/crud/ + detail-page.vuepage-pattern.md
two-depthtest-data/pages/two-depth/two-depth-pattern.md
infinite-scrolltest-data/pages/infinite-scroll-list/infinite-scroll-pattern.md
select-listtest-data/pages/select-list/select-list-pattern.md
batch-processtest-data/modals/list-table-progress.modal.vuebatch-process-pattern.md

필수 표준 패턴: common-patterns.md 참조

  • Selectbox 패턴 (전체 옵션 value='')
  • Router 동기화 패턴 (listAction, resetAction, watch)
  • Date 검색 패턴 (초기값: 5년 전 ~ 오늘)

4단계: 검증 & 완료

# bun 프로젝트 기준
cd front && bunx vue-tsc --noEmit  # 타입 체크
cd front && bun run lint:fix      # 린트
cd front && bun run build         # 빌드
에러 발생 시: 원인 분석 → 코드 수정 → 다시 검증 → 통과할 때까지 반복

생성 파일 구조

front/src/modules/[모듈명]/
├── mock/
│   └── [모듈명].mock.ts          # Mock 데이터 + 동적 생성 함수
├── type/
│   └── [모듈명].type.ts          # 타입 정의 (백엔드 동일 구조)
├── store/
│   └── [모듈명].store.ts         # Pinia Option API (Mock useApi() 경유)
├── pages/
│   ├── list.vue                  # 목록 페이지 (껍데기)
│   ├── list-search.vue           # 검색 영역
│   ├── list-table.vue            # 테이블 영역
│   └── detail-page.vue           # 상세 페이지 (page 패턴)
├── modals/
│   ├── insert.modal.vue          # 등록 모달
│   ├── update.modal.vue          # 수정 모달
│   └── detail.modal.vue          # 상세 모달
├── _[모듈명].routes.ts           # 라우트 정의
└── _[모듈명].validator.ts        # Yup 검증 스키마

Bounded Autonomy (자율 적응 규칙)

Must Follow (절대 준수)

  • <script setup> 필수
  • NuxtUI 컴포넌트 우선, AI Slop 금지
  • 필수 패턴: listAction, resetAction, listMovePage, watch 패턴
  • @submit.prevent="listAction", @change="listAction" 패턴
  • 모듈 경계: _common만 import
  • Mock 데이터는 mock/ 디렉토리에 분리
  • useApi() 경유 패턴 유지 (프로덕션 전환 대비)

May Adapt (분석 후 보완)

  • 테이블 컬럼 구성 (도메인 필드에 맞춤)
  • 검색 폼 구성 (필드 수에 따른 레이아웃)
  • 모달/페이지 폼 구성 (입력 필드 그룹핑)
  • Mock 데이터 구성 (도메인 특수 샘플)
  • UI 상호작용 흐름 (도메인 특수 UX)

May Suggest (제안 후 사용자 확인)

  • 컴포넌트 분리 (예: 복잡한 폼을 step별 컴포넌트로)
  • 페이지 구성 변경 (예: 탭 내 리스트, 상세 페이지 분리)
  • UI 패턴 변경 제안 (예: crud → page가 더 적합)

Suggest 시: 이유를 사용자에게 제시하고 확인 후 적용. Must Follow 침범 금지.

Adapt 조건

보완 시 반드시: (1) 이유 설명 (2) Must Follow 미침범 (3) vue-tsc + lint + build 통과


완료 조건

┌─────────────────────────────────────┐
│ 완료 체크리스트                     │
│ □ UI 패턴 선택 완료                 │
│ □ Mock 데이터 생성 완료             │
│ □ Store (Mock 경유) 생성 완료       │
│ □ 페이지/모달 컴포넌트 생성         │
│ □ vue-tsc (타입체크) 통과           │
│ □ lint 통과                         │
│ □ build 성공                        │
└─────────────────────────────────────┘
빌드 성공 없이 완료 선언 금지!

완료 후 안내

UI 프로토타입 생성이 완료되었습니다.

**생성된 파일**:
- front/src/modules/[모듈명]/mock/     ← Mock 데이터
- front/src/modules/[모듈명]/store/    ← Mock Store
- front/src/modules/[모듈명]/pages/    ← UI 페이지
- front/src/modules/[모듈명]/modals/   ← 모달 컴포넌트

**검증 결과**:
- vue-tsc: 통과
- lint: 통과
- build: 통과

**확인 방법**:
cd front && bun run dev
# 브라우저에서 http://localhost:3000/[모듈명]/list 접속

**프로덕션 전환 시**:
1. mock/ 디렉토리 삭제
2. Store에서 Mock interceptor 제거
3. 실제 API 엔드포인트 연결
→ useApi() 호출 코드는 그대로 유지됩니다.

조건부 참조 가이드 (토큰 절약)

중요: 선택된 패턴의 참조 파일만 읽으세요! 모든 references를 한 번에 로드하지 마세요.

필수 참조 (반드시 읽기 - 생략 금지!)

경고: 아래 파일은 어떤 패턴을 선택하든 반드시 먼저 읽어야 합니다! 이 파일을 읽지 않으면 검색, 페이징, URL 상태관리 패턴이 누락됩니다.

패턴별 참조 매핑

선택 패턴읽어야 할 파일
crudbasic/page-pattern.md + basic/modal-pattern.md
pagebasic/page-pattern.md
two-depthbasic/two-depth-pattern.md
infinite-scrollbasic/infinite-scroll-pattern.md
select-listbasic/select-list-pattern.md
batch-processbasic/batch-process-pattern.md
adv-searchadvanced/adv-search-pattern.md
calendaradvanced/calendar-pattern.md
kanbanadvanced/kanban-pattern.md
mega-formadvanced/mega-form-pattern.md
tab-listadvanced/tab-list-pattern.md

옵션별 추가 참조

옵션읽어야 할 파일
excel=Yoptions/excel-pattern.md
file=Yoptions/file-upload-pattern.md
validator 필요options/validator-pattern.md

조건부 참조

상황읽어야 할 파일
로딩 상태 필요core/loading-state-pattern.md
에러 처리 필요core/error-handling-pattern.md

references 전체 목록 (참고용)

카테고리파일용도
core/mock-service, mock-store, store, type, common, loading-state, error-handling, ui-patterns, visual-guide, common-component-guide핵심 가이드
basic/page, modal, two-depth, infinite-scroll, select-list, batch-process기본 UI 패턴
advanced/adv-search, calendar, kanban, mega-form, tab-list고급 패턴
options/excel, file-upload, validator추가 옵션
guides/validation, completion프로세스 가이드
team/proto-ui-dev-agent, proto-ui-qa-agent팀 모드 (Spec 입력 시) 서브에이전트 정의

참조

  • 가이드 코드 (필수): front/src/modules/test-data/
  • Mock 데이터: front/src/modules/[모듈명]/mock/
  • Store: front/src/modules/[모듈명]/store/
test-data 가이드 코드를 기준 골격으로 참조하되, Mock 특화 + 도메인 특성에 맞게 Bounded Autonomy 범위 내에서 적응

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.15%
按下载量换算127

Claude

28.87%
按下载量换算107

Cursor

18.53%
按下载量换算69

Gemini CLI

9.26%
按下载量换算34

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills