create-pr について
create-prは、Pull Request作成を自動化するプラットフォーム非依存のスキルです。コード変更を分析してIssueとPRの説明を作成し、DCO署名付きコミット、プッシュ、関連項目の作成も実行できます。
主な機能
- 01diff内の関数・クラス・ファイル変更を分析
- 02構造化されたIssueとPRの説明を生成
- 03コミットにDCO署名を追加
- 04変更をプッシュしてIssueとPRを作成
- 05API利用不可時はブラウザー作成に切り替え
活用シーン
- 01コード変更からPRの説明を作成
- 02コミットにDCO署名を追加
- 03IssueとPRを作成して相互に関連付け
- 04コミットせず変更だけを分析
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ openharmonyinsight/ openharmony-skills --skill create-prインストール後、Claude Code で/create-prを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/commit-message-guide.mdcommon-issues.mdplatform-apis.mdpr-description-template.mdscripts/full_auto_pr.pyrepo_api.py詳細
PR 作成スキル v7.0.0
プラットフォームに依存しない、自動化された PR ワークフローです。
- コード変更を分析し、ロジックの変更を検出します(関数/クラスとファイル統計)
- Issue と PR のタイトルおよび説明を自動生成します
- DCO サインオフ(
Signed-off-by)付きで自動コミットします - 自動でプッシュします
- Issue を自動作成します(任意、API 経由)
- Issue と紐付けて PR を自動作成します(
Fixes #id)
クイックスタート
1) トークンを設定する(API 機能を利用する場合、初回のみ)
このスクリプトは、設定により複数のプラットフォームに対応します。
# For GitCode/GitLab
git config --global gitcode.token "your_token"
# For GitHub
git config --global github.token "your_token"
# Or use environment variables
export GITCODE_TOKEN="your_token"
export GITHUB_TOKEN="your_token"
トークンの権限:api、read_api、write_repository
2) 実行する
python scripts/create-pr/full_auto_pr.py
機能
git diffによる変更内容の詳細な分析- 以下を検出します。
- 追加/変更/削除された関数
- 追加/変更/削除されたクラス
- 変更量の多い上位ファイルと行数統計
- 実際の差分に基づき、構造化された Issue と PR の説明を生成します
- DCO サインオフ(
Signed-off-by: Name <email>)を自動追加します - リモートにプッシュします
- プラットフォーム API の設定時に、API 経由で Issue と PR を作成します
- PR を Issue に紐付けます(
Fixes #idを追加) - API を利用できない場合は、ウェブインターフェースに切り替えます
使用方法のオプション
python scripts/create-pr/full_auto_pr.py --target main
python scripts/create-pr/full_auto_pr.py --no-issue
python scripts/create-pr/full_auto_pr.py --no-commit
python scripts/create-pr/full_auto_pr.py --no-push
python scripts/create-pr/full_auto_pr.py --analyze-only
出力される成果物
生成される Issue の説明:
- 概要と変更の種類
- 影響を受けるコンポーネント
- 追加/変更/削除された関数とクラス
- 主なファイル変更と追加/削除行数
- ファイル種別の統計
- コミット履歴
- 差分の統計
生成される PR の説明:
- 概要(コミットに基づく)
- 変更内容(関数/クラスとコンポーネント別のグループ)
- テスト計画
- 関連 Issue(
Fixes #id)
ファイル
create-pr/
├── SKILL.md
├── CHANGELOG.md
├── README.md
├── examples/
│ └── example-workflow.md
├── references/
│ ├── commit-message-guide.md
│ ├── pr-description-template.md
│ ├── platform-apis.md
│ └── common-issues.md
└── scripts/
├── repo_api.py # Platform-agnostic API client + analyzer
└── full_auto_pr.py # End-to-end automation
プラットフォーム対応
このスクリプトは、Git リモート URL からプラットフォームを自動検出します。
- GitCode/GitLab:GitLab 互換の API v4 を使用します
- GitHub:GitHub REST API v3 を使用します
- その他:ウェブベースの PR 作成に切り替えます
注意事項
- DCO(Developer Certificate of Origin) をコミットメッセージに自動追加します
git config user.nameとgit config user.emailの設定が必要です- 各コミットに
Signed-off-by: Name <email>の行を追加します - PR が DCO 検証チェックに合格するようにします
- プラットフォーム API が設定されていない場合、または API が失敗した場合は、手動で PR を作成するためにブラウザーを開きます
- トークンは、git config、環境変数、または
~/.platform-tokenファイルで設定できます
コメント
Markdown 対応