Accel Orbit 2026-11-01 アップデート内容
2026-11-01 のアップデートでは、iAP と連携するモバイルアプリの開発にも、AIエージェントを活用できるようになりました。 あわせて、スクリプト開発モデル(JSSP)で生成される画面のひな形と、テナント環境セットアップで取り込む XML の検証を見直し、生成物を手直しする手間を減らしています。
このアップデートのポイント
- iAP と連携するモバイルアプリ(iOS / Android)の開発を、AIエージェントに任せられます(Expo + smartlime、Accel CLI 2.0.0 以降)
- VS Code 拡張機能でも、モバイルプロジェクトの作成・更新ができるようになりました(Core 0.2.0、Accel CLI 2.0.0 を同梱。エクスプローラからの新規作成にも対応)
- 既定のテーマを imds に更新しました(一覧、登録フォーム、ウィザード、IM-Workflow、IM-共通マスタ検索などの生成精度が向上しました)
- JSSP から、自作の Java 処理を呼び出せるようになりました
- XML の検証を iAP の検証方法に合わせました(正しい XML がエラーになる問題を修正)
iAP と連携するモバイルアプリを開発できます
Accel CLI 2.0.0 から、iAP のユーザモジュールのプロジェクトに加えて、iAP と連携するモバイルアプリ(iOS / Android)のプロジェクト(モバイルプロジェクト)を作成できるようになりました。 アプリは Expo(React Native)と、iAP 連携ライブラリ smartlime で開発します。AIエージェントとの対話からアプリを作成できます。
smartlime とは
smartlime は、Expo で作るモバイルアプリから iAP を使うための SDK です。npm パッケージ @intra-mart/smartlime として公開されています(MIT ライセンス)。
iAP へのログイン、アクセストークンの保存と更新、iAP の API の呼び出しといった、iAP と連携するアプリに必ず必要な処理を、React のコンポーネントとフックとして提供します。
- iAP へのログイン — iAP を認可サーバとして、OAuth 2.0(認可コード + PKCE)でログインします。トークンは端末の安全な保存領域に保存され、自動で更新されます。アプリが iAP のユーザ名やパスワードを扱うことはありません。
- iAP の API の呼び出しと画面の表示 — IM-Workflow などの REST API を、アクセストークンを付けて呼び出せます。iAP の画面(ワークフローの申請画面など)を、アプリ内に表示することもできます。
- UI 部品 — ログイン画面、ユーザ・組織などの検索画面、iAP のカレンダーを、
@intra-mart/smartlime-uiとして提供します。
smartlime 3.0.0 は、Expo SDK 56 に対応しています。アプリの Expo SDK は、smartlime が新しい SDK に対応するまで上げないでください(対応する Expo SDK)。
モバイルプロジェクトの作成と、配備される資材
- プロジェクトの作成 —
accel initで、プロジェクトの種別に「モバイルプロジェクト(Expo + smartlime)」を選択します。連携する iAP のバージョンと Expo SDK(現在は SDK 56)を選ぶと、create-expo で作成したアプリのひな形に資材が配備されます。既存の Expo プロジェクトには、accel attachで資材を配備できます。手順は モバイルプロジェクトの作成 を参照してください。 - smartlime のスキル — smartlime の機能ごとの使い方と実装の手順をまとめたスキルが配置されます。作りたい機能を伝えると、AIエージェントは対応するスキルを参照し、smartlime の正しい作法で実装します。
- Expo 公式のスキル — Expo の作法は、Expo 公式のスキルとドキュメントで確認します。Claude Code では Expo 公式のプラグインが有効になり、Codex ではプロジェクトの作成時に Expo 公式のスキルを導入できます。Expo の MCP サーバも、Expo のアカウントでサインインすると利用できます。
- 利用できるエージェント — Claude Code と OpenAI Codex に対応しています。GitHub Copilot は、モバイルプロジェクトでは利用できません。
追加したスキルは次のとおりです(詳しくは スキルセット を参照)。
| スキル | 何ができるか |
|---|---|
smartlime-setup | smartlime の導入と、iAP と OAuth で接続するための初期設定(iAP 側の OAuth クライアントの登録内容を含む) |
smartlime-auth | ログイン・ログアウト、ログイン状態による画面の切り替え、ログインユーザの情報の取得 |
smartlime-api | iAP の REST API(IM-Workflow の API など)の呼び出し |
smartlime-webview | iAP の画面のアプリ内での表示(WebView) |
smartlime-search | ユーザ・組織・役職・パブリックグループ・ロールの検索と選択 |
smartlime-calendar | iAP のカレンダー(稼働日・休日)の表示と日付の選択 |
smartlime-assistant | IM-Copilot のアシスタントとの会話 |
smartlime-testing | smartlime を使うコードのテスト(Jest) |
アプリが連携する iAP には、モバイルアプリケーション連携(jp.co.intra_mart.im_smacolow)モジュールの導入と、アプリの OAuth クライアントの登録が必要です(iAP 側で必要なもの、OAuth クライアントの登録)。
作成から動作確認までの流れは、チュートリアル(モバイルアプリ編) を参照してください。
imds に準拠したひな形を更新しました
AIエージェントが画面を生成するときに手本にする、imds に準拠した画面のひな形(完成品サンプル・テンプレート)を更新しました。 imds の標準的な画面構成にそろえ、ひな形の誤りを修正して、ひな形のままでも動く状態にしています。
- レイアウト — 一覧・登録フォーム・ウィザード・インポート/エクスポート・カレンダー、IM-Workflow と IM-共通マスタ検索の画面を、ヘッダと操作ボタンを固定し、内容の部分だけをスクロールする構成にそろえました。表示領域の高さ・幅は、テーマに合わせて調整されます。
- 一覧画面 — 検索欄で、実際に絞り込みができるようになりました(これまでは検索欄を配置するだけでした)。データが無いときの表示(空状態)、表示件数の選択、ページ番号の省略表示を、imds の標準に合わせています。編集画面へは、先頭列(例: 商品名)のリンクから移動します。
- ファイルの配置先と遷移先 — 一覧画面・登録フォームのファイル構成と、編集画面への遷移先が、ルーティングの設定と食い違っていた点を修正しました。
- 登録フォーム — 登録・削除などのボタンを画面の下部に固定し、フォームが長くても常に操作できるようにしました。
- 登録フォームの API — 引数と同じ名前の変数を宣言し直していた誤りを修正しました。
- インポートのウィザード — ファイルの選択(ボタンまたはドラッグ&ドロップ)、ファイル形式の確認、選択したファイルの一覧表示までが動くようになりました。
- エクスポート — 対象の選択を、一覧画面と同じ構成(検索欄と、見出しを固定したテーブル)にしました。
- ポートレット — 同じポータル画面に複数配置したときに、ほかのポートレットの要素を操作してしまう場合がある書き方を修正しました。
- 部品の使い分け — テーブルの罫線・見出しの固定・行の高さのクラスを付ける基準、詳細検索(ポップオーバー)の構成、ボタンの配置と間隔を、imds の Storybook に合わせて明記しました。
- imds の構造 — 確認ダイアログのクラス名、チェックボックス列の指定、インポート結果のテーブルの構造など、imds のリファレンスと異なっていた点を修正しました。定義されていないクラス(
imds-textなど)も使わないようにしています。
IM-Workflow・IM-共通マスタ検索の画面を修正しました
- IM-Workflow(workflowOpenPage 方式) — 承認画面の戻るボタンが動作しない問題を修正しました(フォームの id と、スクリプトが参照する id が一致していませんでした)。
<imart type="workflowOpenPage">の内側に<form>を書くと、フォームが入れ子になって動作しない点の注意も追加しました。 - IM-Workflow(処理モーダル方式) — モーダルを閉じた後は、完了・キャンセルにかかわらず
imWorkflow.transition.afterProcess()を呼び出すようにしました(ひな形とリファレンスで説明が食い違っていました)。画面のヘッダには戻るボタンを配置し、imWorkflow.transition.returnTo()で呼び出し元に戻ります。申請画面では、Enter キーでページが再読み込みされないようにしました。 - IM-共通マスタ検索 — ユーザ・組織・会社・ロール・パブリックグループ・プライベートグループの検索ダイアログのひな形を、そのまま動く画面にしました。
- 検索ダイアログを開くボタンに、イベントが登録されない書き方を修正しました(画面の要素が作られる前に登録していました)。
- 選択結果が空のときにエラーになる問題を修正しました。空のときは、入力済みの値を保持します。
- 検索ダイアログの表示言語を、日本語固定から、ログインユーザのロケールに変更しました。
- 選択した値を消去するクリアボタンを追加しました。
- リファレンスにある単一選択の例で、値を取り出すキーが誤っていた点を修正しました。
JSSP から自作の Java 処理を呼び出せます
JSSP の標準 API では実現できない処理(例: Apache POI による Excel ファイルの操作)を Java で実装し、JSSP から呼び出せるようにするスキルを追加しました。 Java の処理を JSSP API(ラッパー)として公開するために必要なファイルを、AIエージェントがまとめて作成します。
| スキル | 何ができるか |
|---|---|
jssp-im-java-wrapper | Java の処理を JSSP から呼び出すためのラッパークラス、JSSP への登録ファイル、型定義(d.ts)の作成 |
- JSSP から Java のクラスを
Packages.*で直接参照する書き方は、引き続き規約で禁止しています。JSSP の API で実現できる処理には、ラッパーを作成しません。 - 登録ファイルはサーバの起動時に読み込まれます。デプロイした後は、サーバを再起動してから動作を確認してください。
- このスキルは、プロジェクトの作成時にスクリプト開発モデルと Java の両方を選択した場合に配置されます。
XML の検証を iAP の検証方法に合わせました
XML の検証(xml-validator)は、ロール・認可ポリシー・メニューグループ・マスタの設定を記載した XML を、iAP が実際に取り込める形で判定するようになりました。 これまでは、iAP が取り込める正しい形の XML でもエラーになっていました。 そのため、AIエージェントがエラーを消そうとして XML の形を変え、テナント環境セットアップで取り込みに失敗する場合がありました。
- XML の検証が間違っていた問題を修正しました — スキルの手順や iAP 同梱のサンプルと同じ形式の XML は、検証に引っかかることがなくなりました。
- iAP が取り込めない形をエラーとして通知します — エラーには直し方が含まれるため、AIエージェントはその内容に従って XML を修正します。
- 同じエラーが重複して表示される場合がある問題を修正しました
修正版の xml-validator(xml-validator-maven-plugin 1.2.0)は、資材を更新すると利用されます(アップデート方法)。
資材を更新しない場合は、プロジェクトの pom.xml の <build> → <plugins> に含まれる次の箇所のバージョンを、1.1.0 から 1.2.0 に書き換えてください。
<plugin>
<groupId>jp.co.intra_mart.harness</groupId>
<artifactId>xml-validator-maven-plugin</artifactId>
<version>1.2.0</version> <!-- 1.1.0 から書き換える -->
</plugin>
その他の改善
<imart>タグとコメント —<imart>タグは、HTML や JavaScript のコメントの中に書いても処理され、値が HTML のソースに出力されることを規約に追加しました。タグを無効にするときは、コメントにせず削除します。- 画面の検証 — 画面の生成後に行う検証(
jssp-page-verifier)で、imds の構造の検証(validate-imds.js)も行うようになりました(imds テーマの画面のみ)。画面間のパラメータの受け渡しの確認対象に、JavaScript でリンク先を組み立てる書き方も加えました。 - 型チェック — 型チェックのスクリプト(
check-types.sh)が、指定した対象を実際に検査したかを確認するようになりました。検査できなかった場合は「問題なし」と報告せず、原因を表示して終了します。 - 検証スクリプトの引数 —
validate-imds.jsに複数のパスを渡すと、エラーで停止するようにしました(これまでは 2 つ目以降のパスが無視されていました)。複数のファイルを検証するときは、共通の親ディレクトリを渡します。 .gitignore— Accel CLI が自動で追記していたエントリ(.accel/runtime/、node_modules)を、配備する.gitignoreに最初から含めるようにしました。
スクリプト開発モデル(JSSP)向けのスキルと規約の変更は、iAP 2025 Spring 以降のすべてのバージョン向けの資材に反映しています。 スキル資材はこちらで公開しています。
モバイルアプリ編のチュートリアルを追加しました(ドキュメント)
iAP と連携するモバイルアプリを、エージェントとの対話から作成する流れを解説する チュートリアル(モバイルアプリ編) を追加しました。
| ページ | 内容 |
|---|---|
| smartlime とは | smartlime でできること、iAP と連携する仕組み、iAP 側で必要なもの、対応する Expo SDK |
| モバイルプロジェクトの作成 | Accel CLI でモバイルプロジェクトを作成・更新する手順と、iAP のプロジェクトとの違い |
| スキルセット | モバイルプロジェクトに配備される規約ファイル(AGENTS.md)、smartlime のスキルセット、Expo 公式のスキル |
| AIネイティブ開発の流れ | smartlime の導入、OAuth クライアントの登録、開発ビルドでのログインの確認、ビルドと配布 |
あわせて、新規プロジェクトの作成 に、プロジェクトの種別の選択を追加しました。
Accel CLI 2.0.0 をリリースしました
- モバイルプロジェクトに対応しました —
initとattachを対話形式で実行すると、最初にプロジェクトの種別を選択します(attachは、package.jsonに Expo が含まれていればモバイルプロジェクトが初期選択されます)。非対話形式で--project-typeを指定しない場合は、これまでどおり iAP のプロジェクトとして扱います。 - モバイルプロジェクトでのコマンド —
updateで資材を更新できます。アプリの Expo SDK を上げた後に実行すると、新しい SDK 用の資材に切り替えるかを確認します。switchとpresetでは、エージェントだけを切り替えられます。deployは、モバイルプロジェクトでは利用できません(iAP のプロジェクトとの違い)。 - 追加したオプション —
--project-type、--expo-sdk、--expo-skills/--no-expo-skillsを追加しました。詳細は Accel CLI の README を参照してください。 - iAP のプロジェクトでの CLI の使い方に変更はありません。
- Accel CLI をライブラリとして組み込んで利用している場合は、互換性のない変更があります。設定の型(
AccelSettings)がモバイルプロジェクトの設定を含む型に変わり、UpdatePromptsに必須のメソッドが 2 つ追加されました。このため、メジャーバージョンを 2 に上げています。
Visual Studio Code 拡張機能がモバイルプロジェクトに対応しました
intra-mart e Builder for Accel Platform (Core) 0.2.0 で、同梱する Accel CLI を 2.0.0 に更新しました。CLI と同じく、モバイルプロジェクトも VS Code の画面から扱えます。
- モバイルプロジェクトの作成・更新・切り替え — 作成フォームの先頭で種別を選ぶと、モバイル用の入力項目(Expo SDK など)に切り替わります。資材の更新(update)と構成の切り替え(switch)にも対応しました。Expo SDK を上げた後に更新すると、新しい SDK 用の資材に切り替えるかをダイアログで確認します。
- 使えない操作は表示しない — モバイルプロジェクトでは、デプロイとビルドをサイドバーとコマンドパレットに表示しません。
- エクスプローラからプロジェクトを作成 — フォルダを開いていないとき、エクスプローラに新規作成のリンクを表示します。作成先の親フォルダを選ぶと、作成フォームが開きます。
- その他の修正 — フォームでプリセットを選んでも内容が反映されない場合がある不具合を修正しました。確認画面には、入力画面で表示している項目だけを表示します。サイドバーの説明が省略されているときは、マウスを重ねると全文を表示します。
Debug 拡張機能と拡張パックに変更はありません。
過去に提供した先行リリース資材からのアップデート方法
プロジェクトのルートで、次のコマンドを実行してください。
bunx @intra-mart/accel@latest update
Accel CLI 0.x からアップデートする場合は、--asset-ref=production-v1 を指定してください。
accel update が利用できない場合は、accel detach → accel attach で資材を入れ替えてください。
今回追加した jssp-im-java-wrapper を利用する場合は、更新時に機能の選択でスクリプト開発モデルと Java を選択してください。imds テーマ向けの手順と検証は、機能の選択でデザインシステムを選択している場合に配置されます。