proof-of-commitment
Proof of Commitment
スターは嘘をつく。行動シグナルは嘘をつかない。
npmパッケージ、PyPIパッケージ、GitHubリポジトリを行動コミットメント(スター、README、ダウンロード数よりも偽造が困難なシグナル)に基づいてスコアリングするMCPサーバーおよびWebツールです。
サプライチェーンの問題
一般的なNode.jsプロジェクトに含まれる3つのパッケージが、現在非常に危険な状態にあります:
chalk — 週3億9900万ダウンロード、メンテナー1名
zod — 週1億3900万ダウンロード、メンテナー1名
axios — 週9600万ダウンロード、メンテナー1名(2026年4月1日に攻撃発生)
スターやREADMEの品質ではこれらは表面化しません。行動シグナルならそれが可能です。
今すぐ試す
ターミナル(インストール不要):
npx proof-of-commitment axios zod chalk
# or scan your own project:
npx proof-of-commitment --file package.json
# PyPI too:
npx proof-of-commitment --pypi litellm langchain requestsWebデモ(インストール不要): getcommit.dev/audit — パッケージを貼り付けるだけで、数秒でリスクスコアを確認できます。
MCPサーバー(インストール不要):
{
"mcpServers": {
"proof-of-commitment": {
"type": "streamable-http",
"url": "https://poc-backend.amdal-dev.workers.dev/mcp"
}
}
}Claude Desktop、Cursor、Windsurf、またはMCP互換のAIツールに追加してください。その後、以下のように質問します:
「私のpackage.jsonをサプライチェーンリスクについて監査して」 「axios、zod、chalk、lodashをスコアリングして。どれが最もリスクが高い?」 「vercel/aiは活発にメンテナンスされている?」
GitHub Action
CIパイプラインにサプライチェーン監査を追加します。package.jsonやrequirements.txtからパッケージを自動検出し、結果をPRコメントとして投稿し、GitHub Step Summaryに書き込み、オプションでCRITICALなパッケージがある場合に失敗させることができます。
# .github/workflows/supply-chain-audit.yml
name: Supply Chain Audit
on: [push, pull_request]
jobs:
audit:
runs-on: ubuntu-latest
permissions:
pull-requests: write # needed for PR comments
steps:
- uses: actions/checkout@v4
- uses: piiiico/proof-of-commitment@main
with:
fail-on-critical: false # set true to block merges
comment-on-pr: true # posts audit table directly on the PRcomment-on-pr: true(デフォルト)の場合、アクションは自動的に監査テーブルをプルリクエストのコメントとして投稿します。また、再実行時には同じコメントを更新するため、コメントスパムが発生しません。レビュアーはPRを離れることなくリスクテーブルを確認できます。
入力:
入力 | デフォルト | 説明 |
| (自動) | カンマ区切りのパッケージ名(設定されていない場合、 |
|
| CRITICALなパッケージが見つかった場合にワークフローを失敗させる |
|
| 自動検出時に監査する最大パッケージ数 |
|
| 監査結果をPRコメントとして投稿する( |
出力: has-critical、critical-count、audit-summary(Markdownテーブル、Step Summaryにも書き込まれます)。
PRコメント / Step Summary出力の例:
| Package | Risk | Score | Maintainers | Downloads/wk | Age |
|---------|-------------|-------|-------------|--------------|-------|
| chalk | 🔴 CRITICAL | 75 | 1 | 380M | 12.7y |
| zod | 🔴 CRITICAL | 83 | 1 | 133M | 6.1y |
| axios | 🔴 CRITICAL | 89 | 1 | 93M | 11.6y |READMEバッジ
あなたがメンテナンスしている、または依存しているパッケージにコミットメントスコアバッジを追加しましょう:
例:
パッケージ | バッジURL |
axios |
|
zod |
|
litellm |
|
色:🟢 健全 (75+) · 🟡 良好 (60–74) · 🟡 中程度 (40–59) · 🟠 高リスク (<40) · 🔴 CRITICAL (メンテナー1名 + 週1000万ダウンロード超)
バッジはCloudflareのエッジで5分間キャッシュされます。APIキーは不要です。
REST API
APIキー不要。インストール不要。
curl https://poc-backend.amdal-dev.workers.dev/api/audit \
-X POST \
-H "Content-Type: application/json" \
-d '{"packages": ["axios", "zod", "chalk", "lodash", "express"]}'{
"count": 5,
"results": [
{
"name": "chalk",
"ecosystem": "npm",
"score": 75,
"maintainers": 1,
"weeklyDownloads": 398397580,
"ageYears": 12.7,
"trend": "stable",
"riskFlags": ["CRITICAL"]
},
...
]
}7つのMCPツール
ツール | 説明 |
| 最大20個のnpm/PyPIパッケージに対するバッチリスク監査 |
| npmパッケージ単体の行動プロファイル |
| PyPIパッケージ単体の行動プロファイル |
| GitHubリポジトリのコミットメントスコア(存続期間、コミット頻度、コントリビューターの深さ) |
| ノルウェー企業登録簿 — 営業年数、従業員数、財務情報 |
| 同上(組織番号による検索) |
| ブラウザ拡張機能の行動データ(検証済みのユニーク訪問者数、リピート率) |
スコアの測定内容
各パッケージは0〜100でスコアリングされます:
存続期間 — パッケージはどれくらい存在しているか?放置されたパッケージは攻撃のために再アクティブ化されることがあります。
メンテナーの深さ — メンテナー1名 + 週数百万ダウンロード = LiteLLMが悪用された攻撃対象領域。
リリースの整合性 — 定期的なリリースは活発な監視のシグナルです。長い空白期間は脆弱性の蓄積を意味します。
ダウンロード傾向 — 成長中のパッケージはより多くの精査(および攻撃)を引き寄せます。安定しているものはプロファイルが低くなります。
リスクフラグ:
CRITICAL— メンテナー1名 + 週1000万ダウンロード超(LiteLLM/axiosの攻撃プロファイルと一致)HIGH— パッケージが1年未満 + 急速な採用WARN— 12ヶ月以上リリースなし
実際のデータポイント
chalk — score 75, 1 maintainer, 399M/week ⚑ CRITICAL
zod — score 83, 1 maintainer, 139M/week ⚑ CRITICAL
axios — score 89, 1 maintainer, 96M/week ⚑ CRITICAL (attacked Apr 1 2026)
lodash — score 88, 3 maintainers, 68M/week
express — score 91, 5 maintainers, 35M/week
litellm — score 74, 1 maintainer ⚑ CRITICAL (supply chain attack Mar 2026)なぜ行動シグナルなのか
LiteLLM攻撃(2026年3月)とaxios攻撃(2026年4月)は同じパターンをたどりました:認証情報の盗難 → 悪意のあるパッケージのプッシュ → 9700万台以上のマシンが露出。どちらのパッケージも、攻撃の前にこれらの指標によってCRITICALとスコアリングされていました。
宣言的なシグナル(スター、READMEの品質、CIバッジ)ではこのリスクを捉えられません。行動コミットメントなら捉えられます。
公式MCPレジストリに掲載
registry.modelcontextprotocol.io → io.github.piiiico/proof-of-commitmentスタック
レイヤー | テクノロジー |
バックエンド | Cloudflare Workers + D1 |
MCP | Model Context Protocol SDK |
データ | npm registry, PyPI, GitHub API, Brønnøysund (NO) |
ランディング | Astro + Cloudflare Pages |
より広範なビジョン
サプライチェーン監査は最初のツールに過ぎません。その根底にあるプリミティブはコミットメントグラフです。これは、あらゆるドメインにおいてコンテンツベースの信頼に取って代わる行動シグナルです。
コンテンツが簡単に偽造できる(レビュー、スター、README)場合、コミットメントがシグナルとなります。12年間で847回のリリースを行ってきたメンテナーは、2023年に一度だけ公開したメンテナーとは異なる種類のコミットメントを持っています。
同じ論理がWebサイト、企業、AIエージェントにも適用されます。2つのカードネットワークが独立してこのギャップを指摘しています。Mastercard Verifiable Intent §9.2は、行動的信頼を「カバーされていない」と明示しています。Visa TAPは、エージェントを識別しますが、それらを信頼すべきかどうかには答えていません。
Proof of Commitmentは、彼らが指摘している信頼のレイヤーです。
ローカルで実行
bun install
bun run dev:backend # local server with SQLite
bun run test:e2e # E2E test with mock World IDデプロイ:
bun run deploy # deploys to Cloudflare WorkersLatest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/piiiico/proof-of-commitment'
If you have feedback or need assistance with the MCP directory API, please join our Discord server