Community코딩 & 개발github.com

vibe64-dev/seed-nextjs

제네시스 프로젝트의 설명을 위한 Blueprint와 서브시스템 기반 Program을 생성, 조정 또는 검토합니다. 코드베이스를 도입하거나, 공개 작업을 문서화하거나, 구현 변경 후 설명을 업데이트할 때 사용합니다.

seed-nextjs란 무엇인가요?

이 스킬은 제네시스(Genesis) 프로젝트에서 두 가지 핵심 산출물인 **Blueprint**와 **Program**을 관리하는 규칙과 워크플로를 정의합니다. Blueprint는 제품이 무엇을 해야 하는지에 대한 간결하고 비기술적인 설명으로, 구현 세부사항을 언급하지 않고 사용자 의도에 초점을 맞춥니다. Program은 각 서브시스템이 제공하는 공개 작업(API, 함수, UI 작업 등)을 모듈별로 문서화하며, 소스 파일 구조를 반영하지 않고 '하나의 모듈 = 하나의 의미 있는 공개 작업' 원칙을 따릅니다. 또한 서브시스템 간의 책임, 소유 데이터, 협업 관계를 정의하는 `genesis/subsystems.md` 맵을 유지보수합니다. 이 스킬은 코드베이스 도입, 변경 후 설명 동기화, 검토 작업 등에서 일관된 문서화를 보장하여 AI 에이전트가 프로젝트를 더 쉽게 이해하고 작업할 수 있도록 돕습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/vibe64-dev/seed-nextjs/tree/HEAD/.agents/skills/genesis-program

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

제네시스 블루프린트 및 프로그램

블루프린트와 프로그램은 유지 관리되는 설명입니다. 증명, 소유권 또는 완전한 의미 모델이 아닙니다.

블루프린트

genesis/blueprint.md는 제품이 해야 할 일에 대한 짧고 응집력 있으며 비기술적인 설명입니다. 명시적인 사용자 의도를 선호합니다. 프레임워크, 패키지, 라우트 철자, 스키마, 소스 파일, 구현 계획, 테스트 또는 내부 아키텍처를 언급하지 마십시오.

변경이 의도적으로 관찰 가능한 제품 동작을 추가, 제거 또는 변경하는 경우에만 구현 후 블루프린트를 업데이트하십시오. 실수, 버그, 개인적인 설계 선택 또는 모호함을 제품 의도로 전환하지 마십시오.

프로그램

프로그램을 읽기 쉬운 디렉토리로 구성하십시오. 멤버십은 디렉토리 이름과 별도로 genesis/subsystems.md에만 선언됩니다:

genesis/program/billing/invoices.md
genesis/program/authentication/sessions.md

언어나 소스 레이아웃에 관계없이 서브시스템이 제공하는 각 의미 있는 공개 작업에 대해 하나의 모듈을 생성하십시오. 공개 작업에는 내보낸 함수 또는 메서드, API 액션, 명령, UI 작업 및 기타 관찰 가능한 진입점이 포함됩니다. 소스 파일을 그대로 반영하거나 모든 헬퍼를 문서화하지 마십시오.

각 모듈의 내용은 다음과 같습니다:

# 사람이 읽을 수 있는 경계 이름

경계가 존재하는 이유에 대한 한 문장 설명.

## 소스

- 메인: `정확한/작성된/메인/소스/경로`
- `정확한/작성된/지원/소스/경로`

## 공개 계약

의미 있는 입력, 출력, 효과, 실패 및 보장.

모든 모듈에는 정확히 하나의 - Main: 소스 항목이 필요합니다. 구현을 읽기 시작할 위치로 메인 소스를 명시적으로 선택하십시오. 실행 가능한 진입점일 필요는 없습니다. 모듈의 소유 서브시스템에 속해야 하며, 더 구체적인 중첩 디렉토리 소유자를 존중해야 합니다. 다른 소스는 다른 서브시스템의 공유 라이브러리를 인용할 수 있습니다. 소스 목록 순서, 임포트 또는 파일 이름에서 메인 파일을 유추하지 마십시오. 오래된 모듈을 조정할 때는 소스를 검사하고 앵커를 명시적으로 표시하십시오. 인덱싱이 자동으로 할당하지 않습니다.

선택적 ## 구현 맵 섹션은 미래 에이전트가 작업을 변경, 추적 또는 디버깅하는 데 실질적으로 도움이 되는 비공개 헬퍼 또는 심(seam)만을 명명할 수 있습니다. 정보 제공용이며 공개적인 보장이 아닙니다. 테스트는 증거이며 구현 소스가 아닙니다.

더 적고 명확한 모듈을 선호하십시오. 오래되고 중복된 설명을 제거하십시오. 하나의 소스는 여러 작업을 지원할 수 있습니다. 헬퍼 및 글루 파일은 어떤 프로그램 모듈에도 나타나지 않을 수 있습니다.

작업 경계

호출자가 초기 설명인지, 전체 프로그램 새로고침인지, 변경 후 집중 조정인지, 블루프린트 전용 작업인지, 읽기 전용 검토인지 결정합니다. 호출자의 편집 경계를 존중하십시오. 의도를 만들어내기보다는 모호함을 보고하십시오.

서브시스템

설명 및 새로고침 작업에서 genesis/subsystems.md를 프로그램과 함께 유지 관리하십시오. 블루프린트 전용 작업은 맵을 변경하지 않습니다. 검토는 읽기 전용으로 유지됩니다. 맵은 작성된 연관 권한이지만, 책임과 테이블 참조는 애플리케이션 소스 및 스키마에 대한 오류 가능성이 있는 설명으로 남아 있습니다.

다음의 정확한 버전-제로 문법을 사용하십시오:

# 서브시스템

## `forms` Forms

재사용 가능한 폼 렌더링, 유효성 검사 및 제출 캡처를 담당합니다.

### 소스
- 디렉토리 `packages/forms`

### 프로그램
- `genesis/program/forms/render.md`

### 소유 데이터
- 테이블 `database` `default` `form_definitions`

### 사용 데이터
- 없음.

서브시스템당 하나의 안정적인 소문자 하이픈 ID와 사람이 읽을 수 있는 제목을 사용하십시오. 각 항목에는 책임 설명과 Program, Data owned 및 Data used 섹션이 필요합니다. 책임 설명은 서브시스템의 전체 설명이며 맵 캡션이 아닙니다. 목적, 범위, 중요한 부분 및 다른 소유자와의 협업을 설명하십시오. 실질적인 기존 설명을 보존하고 시각화에 맞추기 위해 한 줄 레이블로 대체하지 마십시오. 소비자는 표시되는 미리보기를 단축할 수 있습니다. 간단한 지원 디렉토리는 짧은 설명만 있으면 될 수 있습니다.

필수 Source 섹션에는 백틱 경로가 있는 정확히 하나의 - Directory 항목이 포함됩니다. 프로젝트 루트에는 .을 허용하는 표준 프로젝트 상대 디렉토리입니다. 모든 서브시스템에는 하나의 디렉토리 루트가 있습니다. 분산 또는 여러 루트를 선언하지 마십시오. 상위 디렉토리 규칙을 쌓아 기본 서브시스템 루트를 검색하지만 완전하지는 않습니다. 에이전트는 실제 책임과 소스 증거에 따라 다른 곳에서 다른 루트를 인식하고 선언할 수 있습니다. 작성된 선언은 일반적인 인덱싱을 통해 지속됩니다. 작성된 맵은 준비가 되면 정식 소유자 목록입니다. 스택 루트는 도입 힌트이며 추가 소유자를 생성하거나 작성된 경계를 분할하지 않습니다. 인덱싱된 모든 소스를 포함하며 필요한 경우 남은 지원 파일에 대해 프로젝트 루트 소유자를 사용하십시오. UI 구성 요소 및 엔진 코드는 하나의 루트를 공유할 수 있습니다. UI 투영은 소유권을 변경하지 않습니다. 빈 섹션은 - 없음.이라고 말합니다. 새 빈 맵에는 # 서브시스템과 - 없음.만 포함됩니다. 모든 프로그램 모듈은 정확히 하나의 서브시스템에 속합니다. 프로그램 디렉토리 이름은 소유권을 할당하지 않습니다. 소스는 다른 서브시스템의 라이브러리를 인용할 수 있지만 작업이나 구현에 두 명의 소유자를 부여하지 않습니다. 글로브, 중복 작업 또는 중복 테이블 소유자를 사용하지 마십시오.

맵을 재생성하거나 의도적으로 분할할 때는 설명을 새 디렉토리 소유자와 조정하십시오. 해당 책임 설명과 명시적 프로그램 할당을 함께 전송하고 경계가 변경되지 않은 경우 안정적인 ID를 보존하십시오. 중첩 소유자를 포함하여 각 Program의 필수 메인 소스를 현재 소유자와 다시 확인하십시오. 라이브러리 참조는 자체 소유권을 유지합니다. 이전 소비자의 하드코딩된 이름, 디렉토리 레이아웃 또는 캐시된 목록보다는 현재 선언을 사용하십시오. 서브시스템과 Program을 검사하고 완료를 주장하기 전에 누락/중복 멤버십 및 유효하지 않은 메인 앵커를 해결하십시오.

테이블 ID는 선언된 Stack 리소스 ID, 스키마 및 테이블의 세 가지 별도 정확한 백틱 값입니다. default는 리소스의 기본 스키마를 의미합니다. 해당되는 경우 명시적 스키마를 사용하십시오. 호스트 데이터베이스 이름, 자격 증명, SQL 표현식 또는 환경 값을 기록하지 마십시오. 사용 데이터는 다른 선언된 서브시스템이 소유한 테이블을 참조합니다. 서브시스템은 Program 작업 없이 데이터를 소유하거나 작업만 있고 데이터가 없을 수 있습니다. 소유권을 할당하기 전에 실제 스키마/마이그레이션을 읽으십시오. 불확실한 경우 연관을 만들어내지 말고 보고하십시오.

변경이 서브시스템 책임, 프로그램 멤버십 또는 데이터 소유권/사용을 추가, 제거 또는 변경하는 경우 동일한 구현 단계에서 genesis/subsystems.md를 유지 관리하십시오. 관련 코드를 변경하기 전에 맵을 읽으십시오. 뚜렷한 책임이 입증되지 않는 한 기존 서브시스템을 재사용하십시오. 각 프로그램 모듈을 정확히 한 번 선언하십시오. 폴더는 멤버십을 결정하지 않습니다. 테이블 참조를 스키마/마이그레이션에 근거하십시오. Genesis는 데이터베이스를 검사하지 않습니다. 비공개 헬퍼 변경은 이러한 연결이 변경되지 않은 경우 맵 편집이 필요하지 않습니다.

genesis/subsystems.md가 없거나 기존 설명 애플리케이션에서 비어 있는 경우, 구현 전에 실제 소스, 스키마 및 기존 Program에서 생성하십시오. 이는 일반적인 설명적 도입이며 차단 요인이나 다시 허가를 요청할 이유가 아닙니다. 기존 Program 및 소스를 보존하고 관련 책임을 검사하여 가장 작은 진실된 맵을 완성하십시오. 초기화는 빈 파일을 생성할 수 있지만, 의미를 작성하는 것은 에이전트만의 몫입니다.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

관련 스킬