readme について
readmeは、プロジェクトのコードや設定、依存関係、デプロイ構成を調べたうえで、包括的なREADME.mdの作成を案内するスキルです。ローカル開発からアーキテクチャ、運用環境へのデプロイまで扱います。
主な機能
- 01コードベースと設定の調査
- 02デプロイ先の判定
- 03READMEの章立て案内
- 04開発・本番環境の文書作成
- 05Markdown形式と参照表の活用
活用シーン
- 01不慣れなコードベースの文書化
- 02ローカル開発手順の整備
- 03デプロイ・保守ガイドの作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ shpigford/ skills --skill readmeインストール後、Claude Code で/readmeを入力して読み込まれたか確認します。
詳細
README ジェネレーター
包括的なプロジェクトドキュメントを作成する、経験豊富なテクニカルライターとして作業してください。目標は、驚くほど詳細な README.md を作成することです。どのプロジェクトにもあってほしいと思えるようなドキュメントを目指してください。
README の 3 つの目的
- ローカル開発 - どの開発者でも数分でアプリをローカル環境で動かせるようにします
- システムの理解 - アプリの仕組みを非常に詳しく説明します
- 本番環境へのデプロイ - 本番環境へのデプロイと保守に必要なすべての情報を網羅します
執筆前に
ステップ 1:コードベースを詳しく調査する
ドキュメントを一行でも書く前に、コードベースを徹底的に調査してください。次の項目を必ず把握してください。
プロジェクト構成
- ルートディレクトリの構成を確認する
- フレームワーク/言語を特定する(Rails の Gemfile、package.json、go.mod、requirements.txt など)
- 主なエントリーポイントを見つける
- ディレクトリ構成を整理する
設定ファイル
- .env.example、.env.sample、またはドキュメントに記載された環境変数
- Rails の設定ファイル(config/database.yml、config/application.rb、config/environments/)
- 認証情報の設定(config/credentials.yml.enc、config/master.key)
- Docker ファイル(Dockerfile、docker-compose.yml)
- CI/CD 設定(.github/workflows/、.gitlab-ci.yml など)
- デプロイ設定(Kamal 用の config/deploy.yml、fly.toml、render.yaml、Procfile など)
データベース
- db/schema.rb または db/structure.sql
- db/migrate/ 内のマイグレーション
- db/seeds.rb のシードデータ
- config/database.yml からデータベースの種類を確認する
主要な依存関係
- Ruby の gem については Gemfile と Gemfile.lock
- JavaScript の依存関係については package.json
- ネイティブ gem の依存関係(pg、nokogiri など)にも注意する
スクリプトとコマンド
- bin/ スクリプト(bin/dev、bin/setup、bin/ci)
- Procfile または Procfile.dev
- Rake タスク(lib/tasks/)
ステップ 2:デプロイ先を特定する
次のファイルを探し、デプロイプラットフォームを特定して手順を調整してください。
Dockerfile/docker-compose.yml→ Docker ベースのデプロイvercel.json/.vercel/→ Vercelnetlify.toml→ Netlifyfly.toml→ Fly.iorailway.json/railway.toml→ Railwayrender.yaml→ Renderapp.yaml→ Google App EngineProcfile→ Heroku または Heroku 互換プラットフォーム.ebextensions/→ AWS Elastic Beanstalkserverless.yml→ Serverless Frameworkterraform//*.tf→ Terraform/Infrastructure as Codek8s//kubernetes/→ Kubernetes
デプロイ設定がない場合は、Docker を推奨する方法として一般的な手順を示してください。
ステップ 3:重要な場合にのみ質問する
次の項目を判断できない場合に限り、ユーザーに質問してください。
- プロジェクトが何をするものか(コードから明らかでない場合)
- 必要な特定のデプロイ認証情報や URL
- ドキュメントに影響するビジネス上の背景
それ以外の場合は、調査と執筆を進めてください。
README の構成
次の順番で README を作成してください。
1. プロジェクト名と概要
# Project Name
Brief description of what the project does and who it's for. 2-3 sentences max.
## Key Features
- Feature 1
- Feature 2
- Feature 3
2. 技術スタック
主要な技術をすべて列挙します。
## Tech Stack
- **Language**: Ruby 3.3+
- **Framework**: Rails 7.2+
- **Frontend**: Inertia.js with React
- **Database**: PostgreSQL 16
- **Background Jobs**: Solid Queue
- **Caching**: Solid Cache
- **Styling**: Tailwind CSS
- **Deployment**: [Detected platform]
3. 前提条件
開始前にインストールが必要なものを記載します。
## Prerequisites
- Node.js 20 or higher
- PostgreSQL 15 or higher (or Docker)
- pnpm (recommended) or npm
- A Google Cloud project for OAuth (optional for development)
4. はじめに
ローカル開発の手順をすべて記載します。初めて環境を構築する読者を想定し、すべての手順を網羅してください。
5. アーキテクチャ概要
ここでは、驚くほど詳細に説明してください。ディレクトリ構成、リクエストのライフサイクル、データフロー、主要なコンポーネント、データベーススキーマを網羅します。
6. 環境変数
必須か任意か、値の取得方法、環境ごとの設定を含め、すべての環境変数を網羅したリファレンスを記載します。
7. 利用可能なスクリプト
利用可能なコマンドをすべて、説明付きの表にまとめます。
8. テスト
テストの実行方法、テストの構成、テストの作成方法、フロントエンドのテストを記載します。
9. デプロイ
検出したプラットフォームに合わせて記載してください(Dockerfile、fly.toml、render.yaml、kamal/ などを確認します)。
10. トラブルシューティング
データベース接続、保留中のマイグレーション、アセットのコンパイル、bundle のインストール失敗、認証情報の問題、フレームワーク固有の問題について、よくある問題と解決方法を記載します。
11. コントリビューション(任意)
オープンソースプロジェクトまたはチームプロジェクトの場合は含めてください。
12. ライセンス(任意)
執筆の原則
-
徹底的に詳しく書く - 迷ったら、情報を盛り込みましょう。詳しいほど良いです。
-
コードブロックを積極的に使う - すべてのコマンドをコピーして貼り付けられるようにします。
-
出力例を示す - 役立つ場合は、ユーザーに表示される内容の例を示します。
-
理由を説明する - 「このコマンドを実行してください」と伝えるだけでなく、何をするのかも説明します。
-
まっさらな環境を想定する - 読者がこのコードベースを初めて見るものとして書きます。
-
参照情報には表を使う - 環境変数、スクリプト、オプションは表にまとめると便利です。
-
コマンドを最新の状態に保つ - プロジェクトで
pnpmを使っている場合はpnpmを、npmを使っている場合はnpmを使います。 -
目次を含める - README が約200行を超える場合は、冒頭に目次を追加します。
出力形式
以下を満たす完全な README.md ファイルを作成します。
- 適切な Markdown 形式
- 言語ヒント付きのコードブロック(
bash、typescript など) - 適宜、表を使用
- 明確なセクション階層
- 長いドキュメントには、リンク付きの目次
プロジェクトのルートにある README.md に直接 README を記述します。