GitLab
OpenCode は GitLab の CI/CD パイプライン、または GitLab Duo を通じて GitLab のワークフローに統合されます。
どちらの場合も、OpenCode は GitLab ランナー上で実行されます。
GitLab CI
OpenCode は通常の GitLab パイプライン内で動作します。CI コンポーネント としてパイプラインに組み込むことができます。
ここでは、コミュニティが作成した OpenCode 用の CI/CD コンポーネント — nagyv/gitlab-opencode を使用しています。
機能
- ジョブごとにカスタム設定を使用:OpenCode をカスタム設定ディレクトリ (たとえば
./config/#custom-directory) で設定し、OpenCode の呼び出しごとに機能を有効または無効にできます。 - 最小限のセットアップ:CI コンポーネントがバックグラウンドで OpenCode をセットアップするため、OpenCode の設定と初期プロンプトを作成するだけで済みます。
- 柔軟性:CI コンポーネントは動作をカスタマイズするための複数の入力をサポートしています
セットアップ
-
OpenCode 認証 JSON を Settings > CI/CD > Variables の File 型の CI 環境変数として保存します。“Masked and hidden” に必ずチェックを入れてください。
-
以下の内容を
.gitlab-ci.ymlファイルに追加します。include: - component: $CI_SERVER_FQDN/nagyv/gitlab-opencode/opencode@2 inputs: config_dir: ${CI_PROJECT_DIR}/opencode-config auth_json: $OPENCODE_AUTH_JSON # The variable name for your OpenCode authentication JSON command: optional-custom-command message: "Your prompt here"その他の入力や使用例については、このコンポーネントの ドキュメント を参照してください。
GitLab Duo
OpenCode は GitLab のワークフローに統合されます。
コメント内で @opencode をメンションすると、OpenCode は GitLab CI パイプライン内でタスクを実行します。
機能
- Issue のトリアージ:OpenCode に Issue の調査と説明を依頼できます。
- 修正と実装:OpenCode に Issue の修正や機能の実装を依頼できます。 新しいブランチを作成し、変更を含むマージリクエストを発行します。
- セキュア:OpenCode は GitLab ランナー上で実行されます。
セットアップ
OpenCode は GitLab の CI/CD パイプラインで動作します。セットアップには次のものが必要です。
- GitLab 環境を設定する
- CI/CD をセットアップする
- AI モデル Provider の API キーを取得する
- サービスアカウントを作成する
- CI/CD 変数を設定する
- フロー設定ファイルを作成する
詳細な手順については、GitLab CLI agents ドキュメント を参照してください。
例
ここでは、GitLab で OpenCode を使用する方法の例をいくつか示します。
-
Issue を説明する
GitLab Issue に次のコメントを追加します。
@opencode explain this issueOpenCode は Issue を読み取り、明確な説明で返信します。
-
Issue を修正する
GitLab Issue で次のように入力します。
@opencode fix thisOpenCode は新しいブランチを作成し、変更を実装して、変更を含むマージリクエストを開きます。
-
マージリクエストをレビューする
GitLab マージリクエストに次のコメントを残します。
@opencode review this merge requestOpenCode はマージリクエストをレビューし、フィードバックを提供します。