ossperks check
リポジトリがOSS特典プログラムの対象となるかどうかを自動的にチェックします。
使用方法
ossperks check [オプション]エイリアス: ossperks ck
任意のGitリポジトリ内から実行してください。パブリックリポジトリの場合、引数やトークンは不要です。
オプション
| フラグ | 説明 |
|---|---|
--repo <owner/repo> | リポジトリを明示的に指定します(例:vercel/next.js) |
--provider <provider> | Gitプロバイダー:github、gitlab、codeberg、または gitea(デフォルト:github) |
-p, --program <id> | 特定のプログラムのみをチェックします(例:--program vercel) |
-i, --interactive | プログラムを対話的に選択します(カテゴリー別にグループ化;TTYのみ、--jsonまたは--programとは併用不可) |
--json | 生のJSONを出力します |
-h, --help | ヘルプを表示します |
動作の仕組み
ossperks check は完全に自動で実行されます:
ossperks check
│
▼
package.jsonを読み込み (repositoryフィールド)
│ ← 見つからない場合は?
▼
.git/configを読み込み (remote.origin.url)
│
▼
プロバイダーを検出 (github.com / gitlab.com / codeberg.org / gitea.com)
│
├─ GitHub → GET /repos/:owner/:repo
├─ GitLab → GET /api/v4/projects/:id
├─ Codeberg → GET /api/v1/repos/:owner/:repo
└─ Gitea → GET /api/v1/repos/:owner/:repo
│
▼
RepoContext (スター数、ライセンス、経過日数、アクティビティ...)
│
▼
すべてのプログラムの適格性ルールと照合
│
▼
結果を出力リポジトリの検出
--repo が指定されていない場合、ツールは以下の2つの場所から順にリポジトリURLを読み取ります:
package.json内のrepositoryフィールド.git/config内のremote.origin.url
GitHub、GitLab、Codeberg、GiteaのHTTPS / SSH URL形式に対応しています。
適格性の照合
適格性文字列は、以下のような自然言語のルールです:
「オープンソースプロジェクトである必要があります」→ OSI承認ライセンスをチェック「GitHubスターが少なくとも100以上必要です」→stars >= 100をチェック「プロジェクトは少なくとも3ヶ月以上経過している必要があります」→ リポジトリの経過期間をチェック「アクティブにメンテナンスされている必要があります」→ 最近のコミットをチェック
照合はヒューリスティックに行われます — ルールテキストから閾値とキーワードを解析します。判断が難しいケースは、明確な不合格ではなく?(不明)としてフラグが立てられます。
使用例
# 現在のリポジトリから全プログラムをチェック
ossperks check
# リポジトリ内にいなくても特定のリポジトリをチェック
ossperks check --repo vercel/next.js
# GitLabプロジェクトをチェック
ossperks check --repo group/project --provider gitlab
# 特定のプログラムのみをチェック
ossperks check --program vercel
# チェックするプログラムを対話形式で選択(ターミナルUI)
ossperks check --interactive
# スクリプト用のJSON出力
ossperks check --json出力
✅ my-project — MIT · 412スター · 最終プッシュ3日前
48プログラムの適格性 — 12件適格、8件要確認、28件不適格
✅ Vercel for Open Source 適格の可能性あり — オープンソースプロジェクト
✅ Netlify Open Source Plan 適格の可能性あり — オープンソースプロジェクト
⚠️ GitHub Copilot Pro for Open Source Maintainers 要確認 — 手動レビューが必要
❌ DigitalOcean Open Source Credits 不適格の可能性あり — GitHubスター数が不足ステータス:
- ✅ 適格の可能性あり — 解析されたすべての適格性ルールが一致
- ⚠️ 要確認 — 少なくとも1つのルールが自動評価できませんでした
- ❌ 不適格の可能性あり — 1つ以上のルールが明らかに一致しません
申請前に必ずプログラムの公式ページで確認してください。