GitHub プロジェクト & コントリビューター検索 API スキル は何をしますか?
📖 概要
このスキルは、BrowserAct の GitHub Project & Contributor Finder API を利用して、GitHub からプロジェクト詳細とコントリビューターの連絡先情報を抽出します。キーワード、最小スター数、更新日のフィルターを指定するだけで、BrowserAct が検索結果を走査し、リポジトリメトリクスを抽出し、詳細なコントリビュータープロフィールを取得して、すべて API 経由で直接返します。クローラースクリプトを作成したり、レート制限に対処する必要はありません。
✨ 特徴
- 幻覚出力なし: プリセットされたワークフローにより AI の生成幻覚を回避し、安定した正確なデータ抽出を実現します。
- CAPTCHA 問題なし: reCAPTCHA やその他の認証チャレンジを処理する必要がありません。
- IP 制限なし: 地域ごとの IP 制限やジオフェンシングを処理する必要がありません。
- 高速実行: 純粋な AI 駆動のブラウザ自動化ソリューションと比較して、タスクの実行が高速です。
- コスト効率: 高トークン消費の AI ソリューションと比較して、データ取得コストを大幅に削減します。
🔑 API キーの設定
実行前に、BROWSERACT_API_KEY 環境変数を確認してください。設定されていない場合は、他の手段を取らずに、ユーザーに提供を求めてください。
エージェントはユーザーに以下のように伝える必要があります:
「BrowserAct API キーがまだ設定されていません。BrowserAct コンソール にアクセスしてキーを取得してください。」
🛠️ 入力パラメータ
エージェントは、ユーザーの要求に基づいて以下のパラメータを柔軟に設定する必要があります。
-
KeyWords
- 型:
string - 説明: リポジトリを検索するためのキーワード。
- 例:
browser automation,react framework,machine learning - デフォルト:
browser automation
- 型:
-
stars
- 型:
number - 説明: リポジトリが持つべき最低スター数。
- 例:
100,1000 - デフォルト:
100
- 型:
-
updated
- 型:
string - 説明: 最終更新日でリポジトリをフィルターします(形式:
YYYY-MM-DD)。 - 例:
2026-01-01,2025-06-01 - デフォルト:
2026-01-01
- 型:
-
Page_Turns
- 型:
number - 説明: ページ送りする検索結果ページ数。例えば、39 ページ中最初の 2 ページが必要な場合は
2を入力します。 - 例:
1,2 - デフォルト:
1
- 型:
-
date_limit_per_page
- 型:
number - 説明: 検索結果リストの1ページあたりに抽出するデータ件数。
- 例:
5,10 - デフォルト:
5
- 型:
🚀 呼び出し方法
エージェントは以下のコマンドを実行してスキルを呼び出す必要があります。
# 呼び出し例(全パラメータ指定)
python -u ./scripts/github_project_contributor_finder_api.py "browser automation" 100 "2026-01-01" 1 5
# 最小呼び出し(キーワードのみ、他はデフォルト値)
python -u ./scripts/github_project_contributor_finder_api.py "react framework"
⏳ 実行状況の監視
このタスクは自動ブラウザ操作を伴うため、実行に数分かかる場合があります。スクリプトは継続的にタイムスタンプ付きのステータスログ(例: [14:30:05] Task Status: running)を出力します。
エージェントのガイドライン:
- 待機中はターミナル出力を監視してください。
- 新しいステータスログが表示されている限り、タスクは正常に実行されています。処理が停止したと誤判断しないでください。
- ステータスが長時間変化しない場合、または出力が停止して最終結果が得られない場合にのみ、リトライを検討してください。
📊 データ出力
実行が成功すると、スクリプトは API レスポンスから構造化された結果を解析して表示します。
プロジェクトフィールド:
repository_name: GitHub リポジトリの名前。repository_url: リポジトリへの URL リンク。repository_owner_name: リポジトリの所有者/作成者。repository_description: リポジトリの簡単な説明。star_count: リポジトリが獲得したスター数。
コントリビューターフィールド:
user_name: コントリビューターの GitHub ユーザー名。profile_url: コントリビューターのプロフィールへの URL リンク。bio: コントリビューターの経歴または短い説明。repositories_summary: コントリビューターが所有する他のリポジトリの概要。personal_website: コントリビューターの個人ウェブサイトへのリンク。twitter: コントリビューターの Twitter ハンドル。
⚠️ エラーハンドリングとリトライ
スクリプトの実行中にエラーが発生した場合(例: ネットワーク変動やタスク失敗)、エージェントは以下のロジックに従う必要があります。
-
出力内容の確認:
- 出力に
"Invalid authorization"が含まれている場合、API キーが無効または期限切れです。リトライしないでください。ユーザーに API キーを再確認して正しいものを提供するよう促してください。 - 出力に
"concurrent"または"too many running tasks"が含まれている場合、同時実行タスク数の上限に達しています。リトライしないでください。ユーザーにプランのアップグレードを促してください。 エージェントはユーザーに以下のように伝える必要があります:「現在のタスクは、お使いの BrowserAct アカウントが同時実行タスクの上限に達したため実行できません。BrowserAct プランアップグレードページ にアクセスしてプランをアップグレードしてください。」
- 出力に上記のエラーキーワードが含まれていないにもかかわらずタスクが失敗した場合(例: 出力が
Error:で始まるか、空の結果を返す)、エージェントはスクリプトを1回自動的に再実行する必要があります。
- 出力に
-
リトライ制限:
- 自動リトライは1回に制限されています。2回目の試行も失敗した場合は、リトライを停止し、具体的なエラーをユーザーに報告してください。
🌟 典型的なユースケース
- 技術採用: 人気リポジトリからコントリビュータープロフィールとソーシャルリンクを収集し、候補者パイプラインを構築します。
- オープンソースの発見: キーワードとスター数でトレンドリポジトリを検索し、価値あるプロジェクトを見つけます。
- デベロッパーへのアウトリーチ: 活発なコントリビューターの個人ウェブサイトや Twitter ハンドルを収集し、デベロッパーツールのマーケティングに活用します。
- コミュニティ構築: 特定ドメインで活発なオープンソースコントリビューターを特定し、つながります。
- 競合分析: 競合プロジェクトに貢献している開発者を監視します。
- パートナーシップ開拓: 潜在的なコラボレーションやスポンサーシップのためにリポジトリ所有者を見つけます。
- 市場調査: リポジトリメトリクスと説明文を分析して技術トレンドを理解します。
- リード生成: 関連する技術スタックを持つプロジェクトを見つけて、デベロッパーツールのターゲットリードを生成します。
- 学術研究: 特定の研究分野で最近更新されたリポジトリを発見します。
- 人材マッピング: GitHub での貢献とプロフィールに基づいて、熟練した開発者のデータベースを構築します。