github-profile-beautifier について
github-profile-beautifierは、gh CLIで取得したリポジトリ、言語、starのデータからGitHubプロフィール用READMEを生成するスキルです。プロジェクト紹介、統計カード、技術バッジをテーマ別テンプレートに反映し、並べ替えや表示形式を選べます。
主な機能
- 01gh CLIでGitHubデータを取得
- 02リポジトリを選別して並べ替え
- 03言語の分布を集計
- 045種類のテーマテンプレートに反映
- 05プロジェクト、統計、技術構成を表示
活用シーン
- 01GitHubプロフィール用READMEを新規作成
- 02既存プロフィールの見せ方を更新
- 03採用担当者向けにプロジェクトを紹介
- 04リポジトリ統計と言語情報を表示
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ wu529778790/ shenzjd-skills --skill github-profile-beautifierインストール後、Claude Code で/github-profile-beautifierを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdtemplates/dracula.mdminimalist.mdprofessional.mdradical.mdREADME.mdthemes.jsontokyonight.md詳細
GitHub Profile Beautifier
ワンクリックで見栄えのよい GitHub プロフィール README を生成します。リポジトリを自動検出し、技術スタックを分析して、プロジェクトとテーマをインテリジェントにおすすめします。
概要
ユーザーの GitHub データ(リポジトリ、言語、star)に基づいて、統計カード、プロジェクト紹介、技術スタックのバッジを含むプロフィール README を自動生成します。gh CLI を使用してデータを取得し、完全な README.md ファイルを出力します。5 種類のテーマと 3 種類の並べ替え方法を提供します。
使用するタイミング
- ユーザーが GitHub プロフィールページを作成したい(既存の README の有無を問わない)
- ユーザーが新しい GitHub プロフィール README を生成したい
- ユーザーが既存の README を見栄えよくしたい
- ユーザーがプロジェクトや技術スタックを紹介したい
- ユーザーが
/github-profile-beautifier [username]を入力した - ユーザーが就職活動に向けて GitHub プロフィールを改善したい
- ユーザーが統計カードやコントリビューショングラフを追加したい
- ユーザーが採用担当者向けに特定のプロジェクトを強調したい
- ユーザーが技術スタックを視覚化した、プロフェッショナルなプロフィールを作成したい
使用しないタイミング:
- ユーザーが既存の README に小さな変更を加えたいだけの場合
- ユーザーがすでに完成度の高い README を持っていて、わずかな調整だけをしたい場合
- ユーザーが GitHub 以外のプラットフォーム(個人サイトやブログなど)で個人ページを作成したい場合
- ユーザーが履歴書や CV を作成したい場合(別のツールが必要です)
- ユーザーがポートフォリオサイトを作成したい場合(GitHub Pages または Netlify を使用してください)
基本パターン
ステップ 0:パラメーターを解析する
ユーザーの入力から username、--sort(デフォルトは smart)、--theme(デフォルトは radical)を抽出します。パラメーターが不足している場合は、対話形式で確認します。
ステップ 1:ユーザー情報を取得する
# 检查 gh CLI
if ! command -v gh >/dev/null 2>&1; then
echo "⚠️ gh CLI 未安装"
echo "安装方式: brew install gh"
echo "或使用 GitHub API 作为备选方案"
# 备选方案:使用 GitHub API
if command -v curl >/dev/null 2>&1 && command -v python3 >/dev/null 2>&1; then
echo "使用 GitHub API 获取用户信息..."
curl -s "https://api.github.com/users/$USERNAME" | python3 -c "
import sys,json
data=json.load(sys.stdin)
print(f'Login: {data.get(\"login\",\"N/A\")}')
print(f'Name: {data.get(\"name\",\"N/A\")}')
print(f'Bio: {data.get(\"bio\",\"N/A\")}')
"
else
echo "❌ 无法获取用户信息,请安装 gh CLI,或 curl + python3"
exit 1
fi
else
# 验证用户存在
gh api users/$USERNAME > /dev/null 2>&1 || { echo "用户不存在"; exit 1; }
# 捕获用户信息和仓库到变量(供 Step 3 模板填充)
USER_JSON=$(gh api users/$USERNAME)
LOGIN=$(echo "$USER_JSON" | jq -r '.login // ""')
NAME=$(echo "$USER_JSON" | jq -r '.name // ""')
BIO=$(echo "$USER_JSON" | jq -r '.bio // ""')
REPOS_JSON=$(gh repo list $USERNAME --limit 50 --json name,description,primaryLanguage,url,updatedAt,stargazerCount,isFork)
fi
ステップ 2:リポジトリを分析する
- fork ではないリポジトリを絞り込みます(すべて fork の場合は、すべてのリポジトリを使用します)
- 並べ替え方法:
stars(star 数順)、updated(更新日時順)、smart(star 数、更新日時、説明の品質を総合的に評価) - 言語の分布を集計します
ステップ 3:テンプレートデータを準備する
すべてのテンプレートで共通する項目:username、name、bio、typing_lines、website、blog、email、linkedin
プロジェクト変数:projects(name、description、url、stars、tech)
技術スタックの変数はテーマによって異なります:
- radical / tokyonight / dracula / minimalist →
languages+tools - professional →
frontend+backend+tools(言語に基づいてフロントエンドとバックエンドを分類する必要があります)
言語/ツールの色は templates/themes.json から取得します。連絡先フィールドは任意で、テンプレートでは {{#if}} を使用して空の値を処理します。
ステップ 4:README を生成する
対応するテーマのテンプレートを読み込み、変数を埋めて、完全な README.md を出力します。
使用可能なテーマテンプレート:templates/radical.md(カラフル)、templates/tokyonight.md(青紫)、templates/dracula.md(ダークパープル)、templates/minimalist.md(ミニマル)、templates/professional.md(ビジネス向け)。すべてのテーマで templates/themes.json のカラー設定と templates/README.md のテンプレートドキュメントを共通して使用します。
Snake コントリビューショングラフ: ダークテーマにはヘビ型のコントリビューショングラフが含まれます。表示するには、ユーザーが事前に platane/snk を fork し、GitHub Actions を設定する必要があります。設定しない場合は 404 が表示されます。
クイックリファレンス
| パラメーター | 説明 | デフォルト値 |
|---|---|---|
username | GitHub ユーザー名 | 対話形式で確認 |
--sort | stars / smart / updated | smart |
--theme | radical / tokyonight / dracula / minimalist / professional | radical |
/github-profile-beautifier username
/github-profile-beautifier username --sort stars --theme tokyonight
よくある間違い
| 間違い | 正しい方法 | 理由 |
|---|---|---|
| 外部 API を使って統計データを取得する | gh コマンドを使用してローカルで取得する | API は不安定な場合があります |
| テーマの色をハードコードする | themes.json から読み込む | ユーザーが簡単にカスタマイズできるようにするため |
| すべてのリポジトリを表示する | Top 5 のプロジェクトをインテリジェントにおすすめする | 情報過多を防ぐため |
| gh CLI がインストールされているか確認しない | 実行前に確認する | 実行時エラーを防ぐため |
| ユーザーが存在しない場合の処理をしない | 先にユーザーの存在を確認する | 無効な操作を防ぐため |
| fork リポジトリを主要プロジェクトとして一覧表示する | fork ではないリポジトリを絞り込む | fork は個人の能力を示すものではないため |
| snake コントリビューショングラフの設定を忘れる | ユーザーに platane/snk の fork を促す | ダークテーマでは 404 の画像が表示されるため |
| 言語によるフロントエンドとバックエンドの分類を混同する | professional テーマでは機能に基づいて分類する | 言語だけの分類ではアーキテクチャのスキルを示せないため |
| 空の bio フィールドを処理しない | テンプレートで {{#if}} を使って空の値をスキップする | 空のフィールドが不自然なプレースホルダーとして表示されるため |