Skip to Content
ユーザーガイドGitHub Actions

Github Actions:qwen-code-action

概要

qwen-code-action は、Qwen Code CLI  を介して Qwen Code  を開発ワークフローに統合する GitHub Action です。日常的なコーディングタスクのための自律エージェントとして動作するとともに、必要なときに作業を迅速に委任できるオンデマンドのコラボレーターとしても機能します。

これを使用して、GitHub リポジトリ内で Qwen Code  と会話形式で(例:@qwencoder fix this issue)プルリクエストレビュー、Issue のトリアージ、コード分析や修正などを行うことができます。

機能

  • 自動化: イベント(例:Issue のオープン)やスケジュール(例:毎晩)に基づいてワークフローをトリガーします。
  • オンデマンドコラボレーション: Issue やプルリクエストのコメントで Qwen Code CLI をメンション(例:@qwencoder /review)することでワークフローをトリガーします。
  • ツールで拡張可能: Qwen Code モデルのツール呼び出し機能を活用して、GitHub CLI  (gh) などの他の CLI と連携できます。
  • カスタマイズ可能: リポジトリ内の QWEN.md ファイルを使用して、Qwen Code CLI にプロジェクト固有の指示やコンテキストを提供できます。

クイックスタート

わずか数分でリポジトリに Qwen Code CLI を導入できます。

1. Qwen API キーを取得する

DashScope (Alibaba Cloud の AI プラットフォーム)から API キーを取得します。

2. GitHub Secrets に追加する

API キーを QWEN_API_KEY という名前の Secret としてリポジトリに保存します。

  • リポジトリの Settings > Secrets and variables > Actions に移動します。
  • New repository secret をクリックします。
  • Name: QWEN_API_KEY、Value: ご自身の API キーを入力します。

3. .gitignore を更新する

.gitignore ファイルに以下のエントリを追加します。

# qwen-code-cli settings .qwen/ # GitHub App credentials gha-creds-*.json

4. ワークフローを選択する

ワークフローをセットアップするには、2つのオプションがあります。

オプション A: セットアップコマンドを使用 (推奨)

  1. ターミナルで Qwen Code CLI を起動します。

    qwen
  2. ターミナルの Qwen Code CLI で、次のように入力します。

    /setup-github

オプション B: 手動でワークフローをコピーする

  1. examples/workflows ディレクトリから、リポジトリの .github/workflows ディレクトリにビルド済みワークフローをコピーします。 注: qwen-dispatch.yml ワークフローも必ずコピーしてください。これがワークフローを実行するトリガーとなります。

5. 試してみる

プルリクエストレビュー:

  • リポジトリでプルリクエストを開き、自動レビューを待ちます。
  • 既存のプルリクエストに @qwencoder /review とコメントして、手動でレビューをトリガーします。

Issue のトリアージ:

  • Issue を開き、自動トリアージを待ちます。
  • 既存の Issue に @qwencoder /triage とコメントして、手動でトリアージをトリガーします。

一般的な AI アシスタンス:

  • Issue またはプルリクエストで、@qwencoder に続けてリクエストを入力します。
  • 例:
    • @qwencoder explain this code change
    • @qwencoder suggest improvements for this function
    • @qwencoder help me debug this error
    • @qwencoder write unit tests for this component

ワークフロー

このアクションは、さまざまなユースケースに対応するビルド済みワークフローを提供します。各ワークフローは、リポジトリの .github/workflows ディレクトリにコピーし、必要に応じてカスタマイズできるように設計されています。

Qwen Code Dispatch

このワークフローは Qwen Code CLI の中央ディスパッチャーとして機能し、トリガーイベントとコメントで指定されたコマンドに基づいて、適切なワークフローにリクエストをルーティングします。ディスパッチワークフローのセットアップ方法の詳細なガイドについては、Qwen Code Dispatch ワークフロードキュメント を参照してください。

Issue トリアージ

このアクションは、GitHub Issues を自動的、またはスケジュールに従ってトリアージするために使用できます。動作する Issue トリアージのセットアップ例については、自動 Issue トリアージワークフロー  を参照してください。

プルリクエストレビュー

このアクションは、プルリクエストがオープンされたときに自動的にレビューするために使用できます。プルリクエストレビューシステムのセットアップ方法の詳細なガイドについては、GitHub PR レビューワークフロードキュメント を参照してください。

Qwen Code CLI アシスタント

このタイプのアクションは、プルリクエストや Issue 内で汎用的な会話型の Qwen Code AI アシスタントを呼び出し、さまざまなタスクを実行するために使用できます。汎用 Qwen Code CLI ワークフローのセットアップ方法の詳細なガイドについては、Qwen Code アシスタントワークフロードキュメント を参照してください。

設定

入力

  • qwen*api_key: *(任意)_ Qwen API の API キー。

  • qwen*cli_version: *(任意、デフォルト: latest)_ インストールする Qwen Code CLI のバージョン。“latest”、“preview”、“nightly”、特定のバージョン番号、または git ブランチ、タグ、コミットを指定できます。詳細については、Qwen Code CLI リリース  を参照してください。

  • qwen*debug: *(任意)_ デバッグログと出力ストリーミングを有効にします。

  • qwen*model: *(任意)_ Qwen Code で使用するモデル。

  • prompt: (任意、デフォルト: You are a helpful assistant.) Qwen Code CLI の --prompt 引数 に渡される文字列。

  • settings: (任意) CLI のプロジェクト設定を構成するために .qwen/settings.json に書き込まれる JSON 文字列。 詳細については、設定ファイルに関するドキュメント  を参照してください。

  • use*qwen_code_assist: *(任意、デフォルト: false)_ デフォルトの Qwen Code API キーの代わりに Code Assist を使用して Qwen Code モデルにアクセスするかどうか。 詳細については、Qwen Code CLI ドキュメント  を参照してください。

  • use*vertex_ai: *(任意、デフォルト: false)_ デフォルトの Qwen Code API キーの代わりに Vertex AI を使用して Qwen Code モデルにアクセスするかどうか。 詳細については、Qwen Code CLI ドキュメント  を参照してください。

  • extensions: (任意) インストールする Qwen Code CLI 拡張機能のリスト。

  • upload*artifacts: *(任意、デフォルト: false)_ アーティファクトを GitHub Action にアップロードするかどうか。

  • use*pnpm: *(任意、デフォルト: false)_ qwen-code-cli のインストールに npm の代わりに pnpm を使用するかどうか。

  • workflow*name: *(任意、デフォルト: ${{ github.workflow }})_ テレメトリー目的で使用される GitHub ワークフロー名。

出力

  • summary: Qwen Code CLI 実行からの要約出力。

  • error: Qwen Code CLI 実行からのエラー出力(存在する場合)。

リポジトリ変数

以下の値はリポジトリ変数として設定し、すべてのワークフローで再利用することを推奨します。または、個々のワークフローでアクション入力としてインラインで設定したり、リポジトリレベルの値を上書きすることもできます。

名前説明タイプ必須必要な場合
DEBUGQwen Code CLI のデバッグログを有効にします。変数いいえなし
QWEN_CLI_VERSIONインストールする Qwen Code CLI のバージョンを制御します。変数いいえCLI バージョンを固定する場合
APP_IDカスタム認証用の GitHub App ID。変数いいえカスタム GitHub App を使用する場合

リポジトリ変数を追加するには:

  1. リポジトリの Settings > Secrets and variables > Actions > New variable に移動します。
  2. 変数名と値を入力します。
  3. 保存します。

リポジトリ変数の詳細については、GitHub の変数に関するドキュメント  を参照してください。

Secrets

以下の Secrets をリポジトリに設定できます。

名前説明必須必要な場合
QWEN_API_KEYDashScope からの Qwen API キー。はいQwen を呼び出すすべてのワークフローで必須。
APP_PRIVATE_KEYGitHub App の秘密鍵(PEM 形式)。いいえカスタム GitHub App を使用する場合。

Secret を追加するには:

  1. リポジトリの Settings > Secrets and variables > Actions > New repository secret に移動します。
  2. Secret 名と値を入力します。
  3. 保存します。

詳細については、暗号化された Secrets の作成と使用に関する公式 GitHub ドキュメント  を参照してください。

認証

このアクションは、GitHub API と、オプションで Qwen Code サービスへの認証を必要とします。

GitHub 認証

GitHub への認証方法は 2 つあります。

  1. デフォルトの GITHUB_TOKEN: よりシンプルなユースケースでは、ワークフローが提供するデフォルトの GITHUB_TOKEN を使用できます。
  2. カスタム GitHub App (推奨): 最も安全で柔軟な認証のために、カスタム GitHub App を作成することを推奨します。

Qwen 認証と GitHub 認証の両方の詳細なセットアップ手順については、認証ドキュメント を参照してください。

拡張機能

Qwen Code CLI は、拡張機能を通じて追加機能で拡張できます。これらの拡張機能は、それぞれの GitHub リポジトリからソースコードとしてインストールされます。

拡張機能のセットアップと設定方法の詳細については、拡張機能ドキュメント を参照してください。

ベストプラクティス

自動ワークフローのセキュリティ、信頼性、効率性を確保するために、ベストプラクティスに従うことを強く推奨します。これらのガイドラインは、リポジトリのセキュリティ、ワークフロー構成、監視などの主要な領域をカバーしています。

主な推奨事項:

  • リポジトリの保護: ブランチ保護とタグ保護の実装、プルリクエスト承認者の制限。
  • 監視と監査: アクションログの定期的な確認、OpenTelemetry の有効化によるパフォーマンスと動作の詳細な分析。

リポジトリとワークフローを保護するための包括的なガイドについては、ベストプラクティスドキュメント を参照してください。

カスタマイズ

リポジトリのルートに QWEN.md ファイルを作成して、Qwen Code CLI にプロジェクト固有のコンテキストと指示を提供します。これは、特定のリポジトリに対してモデルが従うべきコーディング規約、アーキテクチャパターン、その他のガイドラインを定義するのに便利です。

コントリビューション

コントリビューションを歓迎します! 始め方の詳細については、Qwen Code CLI の コントリビューションガイド を参照してください。

Last updated on