Skip to content

prを更新するスキル#3

Open
diggymo wants to merge 3 commits intomainfrom
feat/pr-description
Open

prを更新するスキル#3
diggymo wants to merge 3 commits intomainfrom
feat/pr-description

Conversation

@diggymo
Copy link
Copy Markdown
Owner

@diggymo diggymo commented May 5, 2026

No description provided.

@diggymo diggymo self-assigned this May 5, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

まず公式ドキュメントを確認してから、レビューコメントを作成します。
以上の調査結果をもとに、PR コメント用 Markdown を出力します。


Claude Code Plugin PR レビュー

全体サマリー

項目 判定
marketplace.json スキーマ ✅ 適合
plugin.json スキーマ ✅ 適合
ディレクトリ構造(pr-description) ⚠️ 要確認
version 整合性 ⚠️ 既存プラグインに不整合あり
README ✅ 問題なし
GH Actions ワークフロー変更 ❌ 複数の懸念あり

1. pr-description プラグイン — ディレクトリ構造の問題

[要修正]

公式ドキュメント(Create plugins / Plugins reference)が定める標準構造は次のとおりです。

plugins/pr-description/
├── .claude-plugin/
│   └── plugin.json          ✅ 正しい位置
├── skills/
│   └── pr-description/
│       └── SKILL.md         ← ここに置くべき
├── README.md                ✅

現在の構造では SKILL.md がプラグインルート直下に置かれています。

plugins/pr-description/
├── .claude-plugin/plugin.json
├── SKILL.md                 ❌ ← プラグインルート直下は非対応
└── README.md

公式ドキュメントには次の注記があります。

Common mistake: Don't put commands/, agents/, skills/, or hooks/ inside the .claude-plugin/ directory. Only plugin.json goes inside .claude-plugin/. All other directories must be at the plugin root level.

逆に言えば SKILL.md はルート直下ではなく skills/<name>/SKILL.md または commands/<name>.md に配置する必要があります。

修正案(推奨):

plugins/pr-description/skills/pr-description/SKILL.md

または旧形式(フラット commands/ 利用、ドキュメントでは新規プラグインへの使用を非推奨):

plugins/pr-description/commands/pr-description.md

備考: SKILL.md のフロントマターに name: pr-description / description: ... があるのは問題ありません。ただし /pr-description というコマンドとして呼び出す場合、プラグイン名前空間が付くため実際には /pr-description:pr-description になる点をREADMEに明記することを推奨します。


2. version の整合性(既存プラグイン)

[情報] — このPRの変更範囲外ですが、確認を推奨します。

公式ドキュメントによれば、plugin.jsonversion が marketplace エントリよりも優先されます。現在の状態:

プラグイン plugin.json の version marketplace.json の version
notify 1.0.2 1.0.1 ⚠️
grep-sessions 1.0.1 1.0.1
pr-description 1.0.0 1.0.0

notifymarketplace.json エントリが古いままです。動作への直接影響はありませんが(plugin.json が優先)、混乱を避けるために marketplace.jsonnotify エントリも "version": "1.0.2" に揃えることを推奨します。


3. GH Actions ワークフロー変更 — 複数の懸念

3-a. fork PR のガード削除 ❌ セキュリティ要修正

-    # fork からのPRでは id-token: write が降格されてOIDCが取れないのでスキップ
-    if: github.event.pull_request.head.repo.full_name == github.repository

このガードは fork PR 時の OIDC id-token 取得失敗を防ぐものです。削除した場合、fork からの PR で id-token: write が利用できず、ワークフローがエラーで失敗します。また、外部コントリビューターの PR が GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} を持つジョブを無条件にトリガーするため、最小権限の観点からも再考が必要です。

推奨: ガードを復活させるか、fork PR 向けに id-token を使わない別の認証パスを用意してください。

3-b. モデル名の確認 ⚠️

-      MODEL: claude-opus-4-7
+      MODEL: claude-sonnet-4-6

claude-sonnet-4-6 および claude-opus-4-7 は公式リリース済みモデル名として確認できませんでした(2025年5月時点のドキュメントに記載なし)。現在リリースされているモデルの正式 API ID(例: claude-sonnet-4-5)と一致しているか確認してください。誤ったモデル名はランタイムエラーになります。

3-c. ツール type バージョン文字列の確認 ⚠️

-  { type: "web_search_20250305", name: "web_search", max_uses: 3 },
-  { type: "web_fetch_20250910", name: "web_fetch", max_uses: 5 }
+  { type: "web_search_20260209", name: "web_search", max_uses: 3 },
+  { type: "web_fetch_20260209", name: "web_fetch", max_uses: 5 }

変更後のバージョン文字列 20260209(2026年2月9日付)は未来の日付であり、現在公開されている Anthropic API のツールバージョンとして確認できませんでした。旧バージョン(web_search_20250305 / web_fetch_20250910)は実在が確認されているバージョンです。未知のバージョン文字列はAPIエラーを引き起こします。

推奨: Anthropic 公式ドキュメントの Web search tool で現在サポートされている最新の type 文字列を確認したうえで更新してください。


4. marketplace.json / plugin.json スキーマチェック ✅

pr-description エントリは公式スキーマの必須フィールド(name, source)を満たしており、source"./" で始まる相対パス形式で正しいです。author.name, description, version, category もオプションフィールドとして適合しています。


5. README ✅

plugins/pr-description/README.md は使い方・前提条件・出力テンプレートを網羅しており、内容として問題ありません。


対応優先度まとめ

優先度 項目
🔴 必須 SKILL.mdskills/pr-description/SKILL.md に移動する
🔴 必須 fork PR ガードを復活させる(セキュリティ)
🟡 推奨 claude-sonnet-4-6 のモデル名を正式 API ID で確認・修正する
🟡 推奨 web_search_20260209 / web_fetch_20260209 のツールバージョン文字列を確認・修正する
🔵 任意 marketplace.jsonnotify エントリの version を 1.0.2 に揃える

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant