name: codebase-onboarding description: 既存コードベースを新規参画者向けに解説するスキル。アーキテクチャ・主要モジュールと責務・代表的な処理フロー・開発の始め方・読み進める順序を整理してオンボーディング資料を生成する。「このコードベースを解説して」「全体像を教えて」「アーキテクチャを把握したい」「どこから読めばいい」「オンボーディング資料を作って」などで発動する。人が理解するための地図づくりを行う。 metadata: version: 1.0.0 tier: experimental category: document tags: - onboarding - codebase - architecture - documentation - knowledge
codebase-onboarding
初めてこのコードベースに触る人が、最短で全体像を掴み、自力で読み進められるようにする「地図」を作る。詳細仕様の網羅ではなく、理解の入口と道筋を与えることが目的。
code-to-specsは実装からの仕様抽出。本スキルは人間の学習順序に沿った俯瞰的ガイドを作る。
原則
- 実体に基づく — 実際のディレクトリ・ファイル・依存を調べて書く。推測で構成を語らない
- 俯瞰から詳細へ — まず全体像、次に主要モジュール、最後に深掘りポイント
- 読む順序を示す — 「まずここ、次にここ」を提示し、迷わせない
- 動かせるまで — ビルド・テスト・実行の手順をセットにする(読むだけで終わらせない)
ワークフロー
Step 1: 全体像を調査する
- リポジトリ構成を調べる: ディレクトリ構造・エントリポイント・ビルド設定・README/CONTRIBUTING
- 技術スタックを特定: 言語・フレームワーク・主要依存・データストア(マニフェストから)
- 広域の把握には
Exploreエージェントを活用し、命名規約・レイヤ構成を掴む
Step 2: アーキテクチャを掴む
- アプリの型を判定(モノリス/マイクロサービス/ライブラリ/CLI/フロント+API 等)
- レイヤ/モジュール分割と依存方向を把握する
- 主要な境界(API 層・ドメイン・データアクセス・外部連携)を特定する
Step 3: 主要モジュールと責務を整理する
- 重要度の高いディレクトリ/パッケージごとに「何を担うか」を1〜2行で要約する
- エントリポイントから主要な依存を辿り、中心となるモジュールを見極める
Step 4: 代表的な処理フローを辿る
- 典型的なユースケース(例: リクエスト受信→処理→応答、主要なバッチ)を1〜2本選び、関与するファイルを順に辿る
- フローは
mermaid-diagrammerでシーケンス図/フローチャート化する
Step 5: 開発の始め方を整理する
- セットアップ・ビルド・テスト・ローカル実行のコマンド(実在する設定から)
- 設定/環境変数、よくあるハマりどころ
- 貢献の流れ(ブランチ運用・レビュー)。CI 構成は実ファイルから確認
Step 6: オンボーディング資料を出力する
以下の構成で出力する:
# <プロジェクト名> オンボーディングガイド
## これは何か(1段落)
## 技術スタック
## アーキテクチャ概観(+ 図)
## ディレクトリ/モジュールマップ(表: パス → 責務)
## 代表的な処理フロー(+ シーケンス図)
## 開発の始め方(セットアップ/ビルド/テスト/実行)
## 読み進める順序(おすすめルート)
## 用語集 / 注意点・落とし穴
wiki-use / obsidian-use への保存や、リポジトリの docs/・README への取り込みを提案する。
ガードレール
| 制限 | 内容 |
|---|---|
| 事実性 | 実際のファイル/構成に基づく。存在しない構造・手順を書かない。不明は「要確認」 |
| 鮮度 | 推測でバージョンや手順を断定せず、設定ファイルの実値を参照する |
| 適切な粒度 | 全ファイルを列挙しない。理解に必要な主要素に絞り、深掘りは入口だけ示す |
| 機密 | 設定ファイル中の秘匿値(鍵・トークン)を資料に転記しない |