このドキュメントは、IBM Bob(以降、Bob)とPremium Package for iを組み合わせて使用する際のIBM Bobへのプロンプトの例をご紹介しています。Bobを目の前にして、「さて、どうしよう…」「どんなリクエストをすればいいんだろう?」と迷ってしまう方に役立つガイドです。Premium Package for iを導入されていないBobユーザーの方やこれからBobを使ってみようという方にも参考になると思います。
IBM Bob Premium Package for i とは
Bob の AI 機能を IBM i アプリケーション開発環境に拡張するプレミアムパッケージです。Bob に IBM i への直接アクセスを与えることで、コード生成・説明・コンパイル・テスト・ドキュメント作成・レガシーアプリケーションのモダナイゼーションまで、アプリケーションライフサイクル全体を支援します。
| 機能 | 説明 |
|---|---|
| IBM i モード | IBM i 開発に特化した AI ペルソナ(IBM i Developer / IBM i Database) |
| ソースコード連携 | QSYS・IFS のソース読み書き、CL コマンド・SQL・PASE の直接実行 |
| スキル | RPG・CL・DDS・Db2・テストをカバーする専門知識の組み込みライブラリー |
| ワークフロー | RPG モダナイゼーション・ビジネスルール抽出・ユニットテスト・SQL インデックス最適化 |
Premium Package for iのスキル・ツール・ワークフローについては、こちらの記事を参考にしてください。
モードの選び方 — 3 ステップで始める
Step 1. モードを選択する
チャット下部のモード切替から IBM i Developer(コード生成・コンパイル・テスト・ドキュメント)または IBM i Database(SQL生成・チューニング・Db2レビュー)を選んでください。Bob が自動的に IBM i 接続情報をコンテキストに挿入します。
Step 2. ソースをエディターで開くか参照先を指定する
QSYS メンバー・IFS ストリームファイル・ローカルファイルのいずれでも OK。Bob はアクティブなファイルを自動的に参照するほか、mylib/qrpglesrc(hello) のようにパスで指定することもできます。また、@メンションでファイルを指定することもできます。チャット入力欄で @ を入力するとファイルピッカーが表示され、分析・参照させたいファイルを選択してコンテキストに追加できます。
| 指定方法 | 使い方 |
|---|---|
| アクティブファイル自動参照 | エディターで対象ファイルを開いておくと Bob が自動でコンテキストに含める |
| パス直接記述 |
MYLIB/QRPGLESRC(HELLO) のようにプロンプト内に記述する |
| @メンション | チャット欄で @ を入力 → ファイルピッカーで選択 |
💡 複数ファイルを同時に
@メンションすることもできます。例:@ORDHDR @ORDLINE の連携を説明して
ライブラリーリスト ワークスペースでメンションを使ってみましたが、ライブラリーリスト上にあるライブラリーをピックしてくれただけでした。それでもライブラリーをピックして、メンバー名を指定したら上手く読み込んでくれました。
Step 3. 下のテンプレートを貼って送る
シナリオに合ったプロンプトをコピーし、必要な箇所だけ書き換えて Bob に送信します。一発で完璧でなくても大丈夫。続けて追加指示できます。
プロンプトテンプレート
1. 既存プログラムの仕様書起こし RPG / COBOL IBM i Developer
QSYS メンバーや IFS ストリームファイルの RPG / COBOL ソースを渡して、そのまま仕様書を生成します。Bob は read_member ツールまたは read_stream_file ツールで直接ソースメンバーを読み取ります。
このプログラムを読んで、以下の形式で仕様書を作成してください。
【形式】
1. プログラム概要(目的・処理の全体像)
2. 入力(パラメータ・呼び出し元・使用ファイル一覧)
3. 出力(更新・作成するファイル・戻り値)
4. 主要処理フロー(番号付き手順)
5. エラー処理・例外条件
6. 他プログラム/サービスプログラムとの依存関係
出力は Markdown 形式でお願いします。
💡 「このプログラムは MYLIB/QRPGLESRC(HELLO) にあります」と補足すると、Bob が
read_memberツールで直接読み取ります。
2. テーブル定義からのデータ仕様書 DDS / DDL IBM i Database
DDS ファイルや CREATE TABLE 文を元に、フィールド一覧・キー構造・リレーションを整理した仕様書を作ります。Bob は search_qsys ツールや execute_sql_statement ツールを使ってライブのメタデータも参照できます。
このファイル定義(DDS または CREATE TABLE)を元に、
データ仕様書を以下の形式で作成してください。
【形式】
- テーブルの目的と業務上の役割
- フィールド一覧(フィールド名 / データ型 / 桁数 / 制約 / 業務的な意味)
- キー構造とアクセスパス(論理ファイル・インデックス)
- 他テーブルとのリレーション(推測できる範囲で)
- 主な更新タイミングと更新プログラム(分かる範囲で)
💡 IBM i Database モードでは
/erd MYLIBスラッシュコマンドを使うと、ライブラリー内のテーブルの ER図を Mermaid図として自動生成できます。
3. CL プログラムのジョブ仕様書 CL IBM i Developer
バッチジョブの CL プログラムから、運用担当者向けのジョブ仕様書・手順書を作成します。Bob は fetch_cl_command_doc ツールで CL コマンドの公式ドキュメントも参照します。
この CL プログラムについて、運用仕様書を作成してください。
【含めてほしい内容】
- ジョブの目的と実行タイミング(日次・月次・オンデマンド など)
- 前提条件(依存ジョブ・ファイル存在チェック など)
- 実行手順(コマンド単位で何をしているかを平易に説明)
- 異常終了時の動作とリカバリ方法
- 実行ログ・メッセージキューへの出力内容
- パラメータ一覧(あれば)
💡 「運用担当者向けに、技術的な用語はなるべく平易に説明してください」と付け加えると、非エンジニア向けの文体になります。
4. 改修時の変更仕様書(差分) 全言語 IBM i Developer
改修要件を伝えると、変更箇所・影響範囲・テスト観点をまとめた変更仕様書を作成します。Bob は search_qsys ツールで関連プログラムを横断して検索することもできます。
現行のプログラムと以下の変更要件を踏まえ、変更仕様書を作成してください。
【変更要件】
(ここに変更内容を記載してください)
【出力形式】
- 変更の背景と目的
- 変更箇所の特定(サブルーチン名・行番号など)
- 変更前後の処理比較(表形式)
- 影響範囲(呼び出し元・関連ファイル・他プログラム)
- テスト観点(正常系・異常系)
💡 要件が曖昧なときは先に「この要件をどう実装すべきか相談したい」と送ると、実装方針の提案から始めてもらえます。
5. 画面・帳票の機能仕様書 DSPF / PRTF IBM i Developer
ディスプレイファイルや プリンターファイルの定義から、画面仕様書・帳票仕様書を作成します。
このファイル定義(DSPF または PRTF)を元に、
画面仕様書(または帳票仕様書)を作成してください。
【含めてほしい内容】
- 画面/帳票の目的と利用シーン
- フィールド一覧(フィールド名 / 表示位置 / 入出力区分 / バリデーション)
- ファンクションキー一覧と動作(DSPF の場合)
- エラーメッセージ一覧
- 呼び出し元プログラムとの連携方法(パラメータの受け渡し)
💡 「画面イメージをテキスト図で作成してください」と追加すると、レイアウトの概略図も生成できます。
6. プログラム間の連携図・依存関係整理 全言語 IBM i Developer
複数のプログラムが関係する処理について、呼び出し関係や依存関係を整理します。Bob は search_qsys ツールでライブラリー内を横断検索して関係を特定します。
このプログラムを起点に、関連するプログラム・ファイル・
サービスプログラムの依存関係を整理してください。
【出力形式】
- 呼び出し階層(このプログラムが呼ぶもの/呼ばれるもの)
- 使用ファイル一覧(読み取り専用 / 更新 / 作成 を区別)
- 共有データエリア・データキューの使用状況(あれば)
- テキスト形式の連携図(Mermaid 記法で作成してください)
💡 Mermaid 記法で出力してもらうと、VSCode の Markdown プレビューやそのままチャットで図として表示できます。
おまけ
RPG モダナイゼーション(ワークフロー) RPG IBM i Developer
OPM RPG → ILE 変換、または ILE 固定フォーマット → フリーフォーマット への変換を自動的に実行します。チャット上部の「Start Workflow」ボタンから開始してください。
このワークフローは ローカル または ライブラリーリスト ワークスペースで利用できます。また、IBM i に接続している必要があります。
💡 OPM RPG(RPG II・III・400)と ILE 固定フォーマットの両方に対応しています。この違いは自動的に検出されます。
ビジネスルール抽出(ワークフロー) RPGLE IBM i Developer
ビジネスルール抽出ワークフローはRPGLEソースメンバーのみに対応しています
RPGLE / SQLRPGLE ソースを分析し、業務ルール・意思決定ロジック・検証ロジックを Mermaid 図付きの Markdown レポートとして抽出します。
このワークフローは ローカル・IFSホームディレクトリー・ライブラリーリスト ワークスペースで利用できます。
このワークフローによって作成されたドキュメントには、以下の項目が含まれています。
1.エクゼクティブサマリー
2.詳細ビジネスルール
3.エラーチェックと例外処理
4.処理上のルール
5.判断ロジック
6.データ整合性ルール
7.業務プロセスフロー
8.前提条件と注記
RPGソースコードから抽出したビジネスルールを8章に整理しており、①概要、②画面制御・処理ロジック・ステータス管理の詳細ルール、③入力検証・例外処理、④計算式、⑤判断分岐フロー、⑥使用されているファイルのデータ整合性要件、⑦Mermaidフロー図付きの業務プロセス全体フロー、⑧確認済みルール・推論ルール・曖昧点・技術制限の注記、で構成されたドキュメントです。
レポートは、IFS上の接続ユーザーのホームディレクトリーに保存されます。
💡 並列サブエージェントが各プロシージャ・サブルーチンを同時分析するため、ステップ数が多いプログラムでも高速に処理されます。
ER図(エンティティ関係図)生成(スラッシュコマンド) SQL / DDS /erd IBM i Database
IBM i Database / Developer モードで /erd コマンドを使うと、指定したライブラリーまたはテーブルの ER図 を Mermaid 形式で自動生成します。
/erd MYLIB
/erd MYAPP.ORDERS
/erd MYPROJ/CUSTOMER
💡
QSYS2.SYSTABLES・SYSCOLUMNS・SYSREFCSTを自動的に照会し、PK・FK・UQ マーカーを含む正確な ER図 を生成します。
Bob が使う主な IBM i ツール
プロンプトを送ると Bob が自動でこれらのツールを呼び出します。ツールの承認設定は Bob の設定で変更できます。
| ツール名 | 用途 | 利用可能なモード |
|---|---|---|
read_member |
QSYS 内のソースメンバーを読み取る | Developer / Database |
search_qsys |
QSYS 内のライブラリー・オブジェクト・メンバーを検索(regex も可) | Developer / Database |
write_member |
QSYS 内にソースメンバーを作成・上書きする | Developer |
read_stream_file |
IFS 内のストリームファイルを読み取る | Developer |
execute_cl_command |
IBM i 上で CL コマンドを実行する | Developer |
execute_sql_statement |
IBM i 上で SQL ステートメントを実行する | Developer / Database |
execute_pase_command |
IBM i 上で PASE コマンドを実行する | Developer |
convert_rpg_source |
CVTRPGSRC で RPG III/400 ソースを RPG IV 形式に変換する | Developer |
get_compile_actions / execute_compile_action
|
Code for IBM i のアクションを使ってソースをコンパイルする | Developer |
generate_rpg_unit_test_stub |
RPGLE の exported procedure から RPGUnit テストスタブを生成する | Developer |
run_rpg_unit_test_suite |
RPGUnit テストスイートをコンパイル・実行する(code coverage 対応) | Developer |
search_ibm_i_docs_with_rag |
公式 IBM i ドキュメントを RAG でセマンティック検索する | Developer / Database |
fetch_cl_command_doc |
CL コマンドの公式ドキュメントを取得する | Developer / Database |
search_sql_examples / fetch_sql_example
|
Db2 for i の SQL 使用例を検索・取得する | Developer / Database |
精度を上げる Tips
| ポイント | 説明と例 |
|---|---|
| 適切なモードを選ぶ | コード生成・コンパイル・テストは「IBM i Developer」、SQL作成・Db2チューニングは「IBM i Database」を使うと Bob の専門知識が最大限に活きます。 |
| ソースパスを明示する | 「MYLIB/QRPGLESRC(HELLO) を読んで」と指定すると Bob が read_member で直接読み取ります。ローカルファイルはエディターで開くと自動的に参照されます。 |
| 出力形式を指定する | 「Markdown 形式で」「Word に貼り付ける想定で平文で」「Mermaid 図で」のように使い道に合わせて形式を伝えると整った出力になります。 |
| 対象読者を伝える | 「開発者向けに技術的詳細も含めて」「運用担当者向けに平易な言葉で」のように読み手を指定すると文体と粒度が変わります。 |
| ワークフロー vs プロンプト | RPG モダナイゼーション・ビジネスルール抽出・テスト計画・SQL インデックス最適化は専用ワークフローを使うと多段階処理を自動化できます。 |
| スラッシュコマンドを活用 | チャットで / を入力すると IBM i 固有のコマンド一覧が表示されます。/erd や /review_SQL は繰り返し使えます。 |
| 言語・形式を明示する | 「これは ILE RPG のプログラムです」「DDS の論理ファイルです」と先に一言添えると、適切なスキルが自動的に読み込まれます。 |
| 追加質問で育てる | 一発で完璧でなくても大丈夫。「〇〇の部分を詳しく」「エラー処理だけ書き直して」「表形式に変えて」のように続けて指示できます。 |
よく使う追加指示フレーズ
| フレーズ | 効果 |
|---|---|
〇〇の部分だけ詳しく説明して |
特定セクションを深掘りする |
表形式に変えて |
箇条書きをテーブルに変換する |
もっと平易な言葉で書き直して |
非エンジニア向けに文体を変える |
テスト観点を追加して |
仕様書にテストケースを付け足す |
Mermaid のフローチャートで処理フローを図にして |
処理フローを図として出力する |
英語でも同じ内容を作って |
英語版仕様書を生成する |
この仕様書をレビューして不足がないか確認して |
生成済み仕様書の品質チェック |
/erd MYLIB |
ライブラリーのテーブル ER図を Mermaid 形式で生成する |
/review_SQL [ステートメント] |
SQL を包括的にレビューする(IBM i Database モード) |
このコードを free-format RPGLE にモダナイズして |
RPG モダナイゼーション ワークフローを起動する |
このプログラムのビジネスルールを抽出して |
Business Rules Extraction ワークフローを起動する |



