北海道情報大学 / 通信教育部 経営情報学部 システム情報学科
Git履歴からコミットメッセージやPRのメッセージを自動生成するCLIツール「git-scribe」を開発
Git のコミットメッセージや Pull Request を自動生成するための CLI ツールです。 ユーザーはリポジトリ内でコマンドを実行することで、AIを利用してメッセージを生成できます。目的は、開発者が手作業でメッセージを考える手間を省き、統一感のあるコミットログや PR を効率的に作成できるようにすることです。 Git のワークフローと統合された形で使える点が特徴になっています。 -------------------- 使用技術: このプロダクトは、Python 3.8 以上で開発されており、依存関係管理には高速なパッケージマネージャ「uv」を採用しています。pyproject.toml で明確に依存関係を定義し、開発環境の再現性と効率性を高めています。 requests gitpython rich typer toml pytest pytest-mock pytest-cov pre-commit ruff -------------------- 工夫点: git commit や gh pr create の主要オプションをそのまま受け付けるため、既存のワークフローを変更せずに利用できる コマンド実行前に必ず生成された内容をユーザーに提示し、確認・編集を経てから反映する設計になっている コミットメッセージや PR 説明文を LLM により一定の形式で整形し、履歴の一貫性を保てる プロンプトを ~/.config/git-scribe/ 配下で system 用と user 用に分け、役割指示とプロジェクト固有の指示を独立して管理できる git-scribe init コマンドで設定ディレクトリと雛形ファイルを生成し、API キーを config.toml に集約できる Pull Request 作成時にレビュアー、ラベル、マイルストーン、ドラフト指定などの属性を付与できる 依存関係管理と実行環境構築に uv を採用しており、セットアップやテスト実行を効率化している rich により CLI 出力を視認しやすくしている PyPI に公開しているため pip を使って簡単にインストール可能