jezweb/claude-skills

コードベースの分析からプロジェクトドキュメント(ARCHITECTURE.md、API_ENDPOINTS.md、DATABASE_SCHEMA.md)を生成します。ソースコード、スキーマファイル、ルート、設定を読み取り、正確で構造化されたドキュメントを作成します。プロジェクトの開始時、コントリビューターのオンボーディング時、またはドキュメントが欠落していたり古くなっている場合に使用します。

claude-skills とは?

このスキルは、コードベースを分析して構造化されたプロジェクトドキュメントを自動生成するためのツールです。ARCHITECTURE.md(システム概要、スタック、ディレクトリ構造、主要フロー)、API_ENDPOINTS.md(ルート、メソッド、パラメータ、レスポンス形式、認証)、DATABASE_SCHEMA.md(テーブル、リレーションシップ、マイグレーション、インデックス)の3種類のドキュメントを生成できます。対応プロジェクトタイプはCloudflare Worker、React SPA、Astroサイト、Next.jsアプリ、Hono API、Pythonプロジェクト、Rustプロジェクトなど多岐にわたります。生成プロセスでは、まずプロジェクトタイプを検出し、ユーザーに生成するドキュメントを選択させ、関連ソースファイルをスキャンし、テンプレートに従ってドキュメントを生成します。品質ルールとして、実際に存在するコードのみを文書化し、バージョン情報を正確に抽出し、レスポンス形状を実際の型定義から取得することを重視しています。既存のドキュメントがある場合は上書きせず、差分を表示して更新するようユーザーに提案します。

対応✓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 内の honoHono API
src/index.ts 内の HonoAPIサーバー
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

# アーキテクチャ

## 概要
[1段落: このプロジェクトが何をするか、どのように構成されているか]

## スタック
| レイヤー | 技術 | バージョン |
|-------|-----------|---------|
| ランタイム | [例: 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.

関連スキル