■前提
BobのAIは強力です
しかしプロンプトから指示すると、どのようなプロンプトだったか、どのような実行計画だったか、どのように実行計画を修正したかはプロンプトの結果ウィンドウにのみ表示されコピペしないと流れて消えてしまいます
この問題に対応するため、BobとGitlabを連携させ、Bobへの指示をGitlab-Issueに書込み、Bobの回答をGitlab-Issueのコメントに書き込ませます
こうすればBobの処理の流れはGitlab-Issueに残り、コードの修正内容はブランチにまとめられます
この方法はClaude CodeやKiro(AWS版Bob)で使われている方法です
これからのIBM iの開発はGitのみならず、AIでオープンソースの世界とつながっています
他のAI開発で使われている手法が参考になるのではないでしょうか?
■Glab
BobとGitlabを連携させるには、Gitlab純正CLIのglabコマンドのインストールと設定が必要です
BobはGitlabの情報取得・操作をglabコマンドのCLI経由で行います
◯Windowsへインストール
*winget
wingetが使えるならこちらが容易です
PS C:\Users\{ユーザ名}> winget install GLab.GLab
*インストーラ
wingetが使えない場合インストーラのダウンロードも可能です
https://gitlab.com/gitlab-org/cli/-/releases
から
glab_x.xxx.x_Windows_x86_64_installer.exe ※x.xxx.xはバージョン番号
をダウンロードしインストールする
*バージョン確認
バージョンが表示されたらインストール完了
PS C:\Users\{ユーザ名}> glab version
glab 1.107.0 (85b59ce)
◯Gitlabでパーソナルアクセストークンの発行
glabコマンドでGitlab認証を行うために、各アカウントでパーソナルアクセストークンを発行します
URL : https://{Gitサーバ}/-/user_settings/personal_access_tokens
[新しいトークンを追加]
| 項目名 | 値 |
|---|---|
| トークン名 | 任意 ※Bob用とか |
| 説明 | 任意 |
| 有効期限 | 標準だと1ヶ月、一番長くて1年です |
| [x]write_repository | にチェックを入れる |
| [x]api | にチェックを入れる |
[トークンを生成]
注意) 表示されるトークンは画面を閉じると二度と表示できません
確実にコピーして保存しましょう
◯glabにトークンの設定
*glabコマンド
PS C:\Users\{ユーザ名}> glab auth login --hostname {Gitサーバ}
| 項目名 | 値 |
|---|---|
| 認証方法 | Token |
| トークン | 上で発行したglpat-で始まるパーソナルトークン |
| Gitプロトコル | SSH |
| API プロトコル | HTTPS |
*直接編集
コマンドプロンプトを開き以下を追加
C:\Users\{ユーザ名}> notepad %LOCALAPPDATA%\glab-cli\config.yml
hosts:
{Gitサーバ}:
container_registry_domains: {Gitサーバ},{Gitサーバ}:443,registry.{Gitサーバ}
api_host: {Gitサーバ}
git_protocol: ssh
api_protocol: https
user: {gitアカウント}
token: glpat-*
◯glabの動作確認
PS C:\Users\{ユーザ名}> glab auth status
{Gitサーバ}
✓ Logged in to {Gitサーバ} as takami (C:\Users\高見禎成\AppData\Local\glab-cli\config.yml)
✓ Git operations for {Gitサーバ} configured to use ssh protocol.
✓ API calls for {Gitサーバ} are made over https protocol.
✓ REST API Endpoint: https://{Gitサーバ}/api/v4/
✓ GraphQL Endpoint: https://{Gitサーバ}/api/graphql/
✓ Token found: **************************
もしgitlab.comのエントリーがあると認証できていないのでERROR表示されます
気になるならconfig.ymlを編集してgitlab.comを削除しましょう