開発者ポートフォリオスキル
基本ポリシー
ユーザーがアップロードしたLinkedIn PDF/エクスポート、または貼り付けられたプロフィールテキストを唯一の情報源として使用します。LinkedInをスクレイピングしたり、LinkedInの認証をバイパスしたりしないでください。ユーザーがLinkedIn URLのみを提供した場合は、プロフィールPDF/エクスポートをアップロードするか、プロフィールテキストを貼り付けるよう依頼してください。
GitHubへの書き込みを行う前に、gh auth status を確認し、必要に応じて gh auth login が必要であることをユーザーに伝えてください。ユーザーが明示的に自動公開を要求しない限り、プッシュ前にレビュー可能なドラフトを作成することを推奨します。
スクリプトと参照パスは、このスキルディレクトリからの相対パスで解決してください。生成されたREADMEファイル、ポートフォリオ設定、GitHubコミットにローカルの絶対ファイルシステムパスをコピーしないでください。
ワークフロー
-
入力の収集
- LinkedIn PDF/エクスポートのパス、または貼り付けられたLinkedInテキスト。
- GitHubユーザー名。認証済みの場合は
gh api user --jq .loginから取得することも可能。 - オプションのターゲットリポジトリ名。デフォルト:
- ポートフォリオ:
<github-username>.github.io - プロフィールREADME:
<github-username>
- ポートフォリオ:
- オプションのポートフォリオテンプレートソース。デフォルト:
https://github.com/yashrajnayak/developer-portfolio。
-
プロフィールテキストの抽出
- PDFの場合:
python scripts/extract_linkedin_pdf.py \ --input <linkedin.pdf> \ --out <workspace>/linkedin-profile.txt - 貼り付けテキストの場合は、
linkedin-profile.txtとして保存します。
- PDFの場合:
-
プロフィールデータの正規化
references/profile-schema.mdを読み込みます。linkedin-profile.txtをnormalized-profile.jsonに変換します。- 情報はソースに忠実に保ちます。雇用主、日付、学位、認定資格、指標などを捏造しないでください。
- GitHubユーザー名が判明している場合は、
github_usernameを含めます。 - ポートフォリオのベースURLが判明している場合は、
portfolio_urlを含めます。
-
ポートフォリオ設定の生成
- 実行:
python scripts/write_portfolio_config.py \ --profile normalized-profile.json \ --out config.json \ --github-username <github-username> \ --portfolio-url https://<github-username>.github.io - 生成された
config.jsonを、クローン/フォークしたdeveloper-portfolioテンプレートリポジトリにコピーします。 - テンプレートリポジトリの検証/ビルドコマンドが利用可能な場合は実行します:
npm run validate npm run build
- 実行:
-
プロフィールREADMEの生成
- 実行:
python scripts/write_profile_readme.py \ --profile normalized-profile.json \ --out README.md - この出力はGitHubプロフィールリポジトリ
<github-username>/<github-username>用です。
- 実行:
-
GitHub CLIでの公開
references/github-publish.mdを読み込みます。- 認証確認:
gh auth status gh api user --jq .login - プッシュ前に、生成されたポートフォリオファイル内のローカルパスをスキャンします。テンプレートリポジトリに
npm run validateがある場合は、それを使用します。 - 意図的にコミットします。強制プッシュはしないでください。既存のユーザーリポジトリを、現在の内容を確認せずに上書きしないでください。
出力期待値
以下を返します:
- 使用されたソースPDF/テキスト。
- 生成されたパス:
normalized-profile.json、ポートフォリオconfig.json、プロフィールREADME.md。 - ターゲットGitHubリポジトリ。
- 実行された検証コマンド。
- GitHubプッシュが完了したか、認証不足/レビュー依頼によりブロックされたか。
参照
references/profile-schema.md: 正規化されたプロフィールJSONの契約とマッピングルール。references/github-publish.md: 安全なGitHub CLI公開フロー。