Community생산성 & 협업github.com

프로젝트 문서 자동 생성기

코드베이스 분석을 기반으로 ARCHITECTURE.md, API_ENDPOINTS.md, DATABASE_SCHEMA.md 등 구조화된 프로젝트 문서를 생성합니다. 새 프로젝트 시작, 기여자 온보딩, 문서 누락 또는 부실 시 사용하세요.

프로젝트 문서 자동 생성기란 무엇인가요?

이 스킬은 코드베이스 분석을 통해 정확하고 최신 상태의 프로젝트 문서를 자동 생성합니다. 사용자가 'generate docs', 'document architecture', 'create api docs' 등의 트리거를 입력하면, 프로젝트 루트를 스캔하여 Cloudflare Worker, React SPA, Astro, Next.js, Hono API 등 프로젝트 유형을 자동 감지합니다. 그 후 사용자가 원하는 문서 유형(ARCHITECTURE.md, API_ENDPOINTS.md, DATABASE_SCHEMA.md)을 선택하면 해당 소스 파일(패키지 파일, 라우트, 스키마, 마이그레이션 등)을 읽어 구조화된 문서를 생성합니다. 생성된 문서는 `docs/` 디렉토리에 저장되며, 기존 문서가 있을 경우 덮어쓰는 대신 업데이트 내용을 사용자에게 미리 보여줍니다. 실제 코드에 기반한 문서를 생성하므로 계획만 있는 아키텍처가 아닌 실제 시스템을 반영하며, 버전 정보와 실제 응답 형태를 포함하여 가독성을 높입니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jezweb/claude-skills/tree/HEAD/plugins/dev-tools/skills/project-docs

Installed? Explore more 생산성 & 협업 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

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

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

문서

프로젝트 문서 생성기

코드베이스를 분석하여 구조화된 프로젝트 문서를 생성합니다. 실제 코드를 반영한 문서를 만들며, 이상적인 아키텍처가 아닌 현재 상태를 기준으로 합니다.

사용 시점

  • 새 프로젝트에 초기 문서가 필요할 때
  • 문서가 누락되었거나 최신 상태가 아닐 때
  • 코드베이스에 누군가를 온보딩할 때
  • 리팩터 후 문서를 새로 고칠 때

워크플로우

1. 프로젝트 유형 감지

프로젝트 루트를 스캔하여 어떤 종류의 프로젝트인지 확인합니다:

표시기프로젝트 유형
wrangler.jsonc / wrangler.tomlCloudflare Worker
vite.config.ts + src/App.tsxReact SPA
astro.config.mjsAstro 사이트
next.config.jsNext.js 앱
package.json에 hono 포함Hono API
src/index.ts에 Hono 포함API 서버
drizzle.config.ts데이터베이스 계층 존재
schema.ts 또는 schema/데이터베이스 스키마 존재
pyproject.toml / setup.pyPython 프로젝트
Cargo.tomlRust 프로젝트

2. 생성할 문서 선택 요청

어떤 문서를 생성할까요?
1. ARCHITECTURE.md — 시스템 개요, 스택, 디렉토리 구조, 주요 흐름
2. API_ENDPOINTS.md — 라우트, 메서드, 파라미터, 응답 형태, 인증
3. DATABASE_SCHEMA.md — 테이블, 관계, 마이그레이션, 인덱스
4. 모두 생성

프로젝트에 맞는 문서만 제안합니다. 정적 사이트에 API_ENDPOINTS.md를 제안하지 않고, 데이터베이스가 없으면 DATABASE_SCHEMA.md를 제안하지 않습니다.

3. 코드베이스 스캔

요청된 각 문서에 대해 관련 소스 파일을 읽습니다:

ARCHITECTURE.md — 스캔 대상:

  • package.json / pyproject.toml (스택, 의존성)
  • 진입점 (src/index.ts, src/main.tsx, src/App.tsx)
  • 설정 파일 (wrangler.jsonc, vite.config.ts, tsconfig.json)
  • 디렉토리 구조 (상위 2레벨)
  • 주요 모듈 및 내보내기

API_ENDPOINTS.md — 스캔 대상:

  • 라우트 파일 (src/routes/, src/api/, 또는 index 인라인)
  • 미들웨어 파일 (인증, CORS, 로깅)
  • 요청/응답 타입 또는 Zod 스키마
  • 오류 처리 패턴

DATABASE_SCHEMA.md — 스캔 대상:

  • Drizzle 스키마 파일 (src/db/schema.ts, src/schema/)
  • 마이그레이션 파일 (drizzle/, migrations/)
  • 원시 SQL 파일 (존재하는 경우)
  • 시드 파일 (존재하는 경우)

4. 문서 생성

각 문서를 docs/ 디렉토리에 작성합니다 (디렉토리가 없으면 생성). 프로젝트에 이미 문서가 있으면 덮어쓰지 않고 업데이트를 제안합니다.

docs/ 디렉토리가 없는 소규모 프로젝트의 경우 프로젝트 루트에 작성합니다.

문서 템플릿

ARCHITECTURE.md

# 아키텍처

## 개요
[한 문단: 이 프로젝트의 기능과 구조]

## 스택
| 계층 | 기술 | 버전 |
|-------|-----------|---------|
| 런타임 | [예: Cloudflare Workers] | — |
| 프레임워크 | [예: Hono] | [버전] |
| 데이터베이스 | [예: D1 (SQLite)] | — |
| ORM | [예: Drizzle] | [버전] |
| 프론트엔드 | [예: React 19] | [버전] |
| 스타일링 | [예: Tailwind v4] | [버전] |

## 디렉토리 구조
[주석이 포함된 트리 — 상위 2레벨, 목적 설명 포함]

## 주요 흐름
### [흐름 1: 예: "사용자 인증"]
[단계별: 요청 → 미들웨어 → 핸들러 → 데이터베이스 → 응답]

### [흐름 2: 예: "데이터 처리 파이프라인"]
[시스템을 통한 단계별 흐름]

## 설정
[주요 설정 파일 및 제어 내용]

## 배포
[배포 방법, 필요한 환경 변수, 빌드 명령어]

API_ENDPOINTS.md

# API 엔드포인트

## 기본 URL
[예: `https://api.example.com` 또는 상대 경로 `/api`]

## 인증
[방식: Bearer 토큰, 세션 쿠키, API 키, 없음]
[토큰 출처, 획득 방법]

## 엔드포인트

### [그룹: 예: 사용자]

#### `GET /api/users`
- **인증**: 필수
- **파라미터**: `?page=1&limit=20`
- **응답**: `{ users: User[], total: number }`

#### `POST /api/users`
- **인증**: 필수 (관리자)
- **본문**: `{ name: string, email: string }`
- **응답**: `{ user: User }` (201)
- **오류**: 400 (유효성 검사), 409 (이메일 중복)

[각 엔드포인트에 대해 반복]

## 오류 형식
[표준 오류 응답 형태]

## 속도 제한
[해당되는 경우]

DATABASE_SCHEMA.md

# 데이터베이스 스키마

## 엔진
[예: Cloudflare D1 (SQLite), PostgreSQL, MySQL]

## 테이블

### `users`
| 열 | 타입 | 제약 조건 | 설명 |
|--------|------|-------------|-------------|
| id | TEXT | PK | UUID |
| email | TEXT | UNIQUE, NOT NULL | 사용자 이메일 |
| name | TEXT | NOT NULL | 표시 이름 |
| created_at | TEXT | NOT NULL, DEFAULT now | ISO 타임스탬프 |

### `posts`
[동일 형식]

## 관계
[외래 키, 조인 패턴, 캐스케이딩 규칙]

## 인덱스
[기본 키가 아닌 인덱스와 존재 이유]

## 마이그레이션
- 생성: `npx drizzle-kit generate`
- 로컬 적용: `npx wrangler d1 migrations apply DB --local`
- 원격 적용: `npx wrangler d1 migrations apply DB --remote`

## 시드 데이터
[시드 스크립트가 있는 경우 참조]

품질 규칙

  1. 계획된 것이 아닌 존재하는 것을 문서화 — 실제 코드를 읽고, 엔드포인트나 테이블을 임의로 만들지 마세요
  2. 버전 포함 — 기억에 의존하지 말고 package.json/lock 파일에서 추출하세요
  3. 실제 응답 형태 표시 — 코드의 TypeScript 타입 또는 Zod 스키마에서 복사하세요
  4. 스캔 가능하게 유지 — 단락보다 표, 산문보다 코드 블록을 선호하세요
  5. CLAUDE.md를 복제하지 마세요 — 아키텍처 정보가 이미 CLAUDE.md에 있으면 ARCHITECTURE.md로 옮기거나 참조하세요
  6. 간격 표시 — 명확한 목적이 없는 문서화되지 않은 라우트나 테이블을 발견하면 <!-- TODO: 목적 문서화 -->로 표시하세요

기존 문서 업데이트

이미 문서가 있는 경우:

  1. 기존 문서 읽기
  2. 현재 코드베이스와 차이점 비교
  3. 변경된 내용을 사용자에게 표시 (새 엔드포인트, 제거된 테이블, 업데이트된 스택)
  4. 사용자가 직접 작성한 메모나 섹션을 보존하면서 업데이트 적용

사용자가 문서에 추가한 커스텀 콘텐츠를 절대 자동으로 덮어쓰지 마세요.

Individual skills in this repo

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

jezweb/ai-image-generator

Generate AI images using Gemini or GPT APIs directly. Covers model selection (Gemini for scenes; GPT Image 2 for text rendering, batch variations, multi-reference compositing; GPT Image 1.5 for transparent icons), the 5-part prompting framework, API calling patterns, multi-turn editing, and quality assurance. Produces photorealistic scenes, icons, illustrations, OG images, posters, infographics, and product shots. Use when building websites that need images, creating marketing assets, or generating visual content. Triggers: 'generate image', 'ai image', 'create hero image', 'make an icon', 'generate illustration', 'create og image', 'poster', 'infographic', 'image variations', 'gpt-image-2', 'ai art', 'image generation'.

jezweb/aussie-business-english

Australian business English writing style for professional communications — warm, direct, EN-AU spelling (colour, organise, centre). Use whenever the user is writing for an Australian audience: emails, chat messages, proposals, client communications, blog posts, web copy, or any business writing. Apply to drafting, editing, and tone-checking professional text.

jezweb/claude-skills

Generate a complete, deployable landing page from a brief. Produces a single self-contained HTML file with Tailwind CSS (via CDN), responsive design, dark mode, semantic HTML, and OG meta tags. Sections: hero with CTA, features, social proof, pricing (optional), FAQ, footer. Use when building a marketing page, product launch page, coming soon page, or any standalone landing page. Triggers: 'landing page', 'create a page', 'marketing page', 'launch page', 'coming soon page', 'one-page site'.

jezweb/claude-skills

Agent skill at plugins/social-media/skills/social-media-posts/SKILL.md

jezweb/cloudflare-worker-builder

Scaffold and deploy Cloudflare Workers with Hono routing, Vite plugin, and Static Assets. Describe project, scaffold structure, configure bindings, deploy. Use whenever the user wants to create a Worker project, set up Hono on Cloudflare, configure D1 / R2 / KV / Queues bindings, or troubleshoot Worker export syntax, API route conflicts, HMR issues, or deployment failures.

jezweb/color-palette

Generate complete, accessible colour palettes from a single brand hex. Produces 11-shade scale (50-950), semantic tokens, dark mode variants, Tailwind v4 CSS output, WCAG contrast checks. Use whenever the user supplies a brand hex and asks for a palette, mentions setting up a design system, wants Tailwind theme colours from a brand colour, or asks to check colour accessibility / contrast.

jezweb/d1-drizzle-schema

Generate Drizzle ORM schemas for Cloudflare D1 databases with correct D1-specific patterns. Produces schema files, migration commands, type exports, and DATABASE_SCHEMA.md documentation. Handles D1 quirks: foreign keys always enforced, no native BOOLEAN/DATETIME types, 100 bound parameter limit, JSON stored as TEXT. Use when creating a new database, adding tables, or scaffolding a D1 data layer.

jezweb/elevenlabs-agents

Build conversational AI voice agents on the ElevenLabs platform. Configure agent + tools + knowledge base, integrate SDK (React / React Native / Swift / JS / server-side), test, deploy. Use whenever the user mentions ElevenLabs, building a voice agent, an AI phone system, an AI receptionist, conversational AI, or troubleshooting deprecated @11labs packages, webhook errors, CSP violations, localhost allowlist, or tool parsing errors.

jezweb/fastapi

Build Python APIs with FastAPI, Pydantic v2, and SQLAlchemy 2.0 async. Covers project structure, JWT auth, validation, and database integration with uv package manager. Prevents 7 documented errors. Use when: creating Python APIs, implementing JWT auth, or troubleshooting 422 validation, CORS, async blocking, form data, background tasks, or OpenAPI schema errors.

jezweb/favicon-gen

Generate custom favicons from logos, text, or brand colours. Produces favicon.svg, favicon.ico, apple-touch-icon.png, icon-192/512.png, and web manifest. Use whenever the user wants a favicon, mentions replacing a CMS default favicon, converting a logo into a favicon, creating branded initials icons, or troubleshooting favicon not displaying / iOS black square / missing manifest.

jezweb/github-release

Prepare and publish GitHub releases. Sanitizes code for public release (secrets scan, personal artifacts, LICENSE/README validation), creates version tags, and publishes via gh CLI. Trigger with 'release', 'publish', 'open source', 'prepare for release', 'create release', or 'github release'.

jezweb/google-apps-script

Build Google Apps Script automation for Sheets and Workspace. Custom menus, triggers (onEdit / time-driven / form submit), dialogs, sidebars, email batches, PDF export, external API. Use whenever the user wants to automate a Google Sheet, build a Sheets menu / sidebar / dialog, hit a Sheets row from email or a webhook, schedule a Sheets workflow, or asks 'how do I script this in Sheets'.

jezweb/google-chat-messages

Send Google Chat messages via incoming webhooks — text, rich cards (cardsV2), threaded replies. TypeScript types, card builder utility, widget reference inline. Use whenever the user wants to post to Google Chat from a script, build a chatbot reply, send a notification card, build a Google Chat webhook integration, or troubleshoot card / threading issues.

jezweb/hono-api-scaffolder

Scaffold Hono API routes for Cloudflare Workers. Produces route files, middleware, typed bindings, Zod validation, error handling, and API_ENDPOINTS.md documentation. Use after a project is set up with cloudflare-worker-builder or vite-flare-starter, when you need to add API routes, create endpoints, or generate API documentation.

jezweb/icon-set-generator

Generate cohesive, project-specific SVG icon sets for websites and applications. Use this skill whenever the user needs custom icons, an icon set for a website or app, icons for a client project, or mentions needing SVG icons that look consistent together. Also trigger when the user describes a project and icons would naturally be part of the deliverable — e.g. 'I'm building a site for a plumber' implies they'll need service icons. Trigger on: 'icons for', 'icon set', 'custom icons', 'SVG icons', 'make me icons', 'I need icons', 'website icons', 'project icons', or any request for consistent visual assets for a web project. Produces individual SVG files with a consistent style engine, not generic icon library lookups.

jezweb/image-processing

Process images for web development — resize, crop, trim whitespace, convert formats (PNG/WebP/JPG), optimise file size, generate thumbnails, create OG card images. Uses Pillow (Python) — no ImageMagick needed. Trigger with 'resize image', 'convert to webp', 'trim logo', 'optimise images', 'make thumbnail', 'create OG image', 'crop whitespace', 'process image', or 'image too large'.

jezweb/mcp-builder

Build MCP servers in Python with FastMCP. Define tools / resources / prompts, build the server, test locally, deploy to FastMCP Cloud or Docker. Use whenever the user mentions building an MCP server, exposing tools to LLMs, FastMCP, building a Claude integration, or troubleshooting FastMCP module-level server, storage, lifespan, middleware, OAuth, or deployment errors.

jezweb/nextjs

Build Next.js 16 apps with App Router, Server Components/Actions, Cache Components ("use cache"), and async route params. Includes proxy.ts and React 19.2. Prevents 25 documented errors. Use when: building Next.js 16 projects, or troubleshooting async params (Promise types), "use cache" directives, parallel route 404s, Turbopack issues, i18n caching, navigation throttling.

jezweb/project-health

All-in-one project configuration and health management. Sets up new projects (settings.local.json, CLAUDE.md, .gitignore), audits existing projects (permissions, context quality, MCP coverage, leaked secrets, stale docs), tidies accumulated cruft, captures session learnings, and adds permission presets. Uses sub-agents for heavy analysis to keep main context clean. Trigger with 'project health', 'check project', 'setup project', 'kickoff', 'bootstrap', 'tidy permissions', 'clean settings', 'capture learnings', 'audit context', 'add python permissions', or 'init project'.

jezweb/react-hook-form-zod

Build type-safe validated forms using React Hook Form v7 and Zod v4. Single schema works on client and server with full TypeScript inference via z.infer. Use when building forms, multi-step wizards, or fixing uncontrolled warnings, resolver errors, useFieldArray issues, performance problems with large forms.

관련 스킬