メインコンテンツまでスキップ

概要

共有の開発サーバでスクリプト開発を進めている場合、手元で書いたコードが共有サーバ環境でどのように動作するのか、ローカル環境だけでは確認しづらいケースがあります。 しかし、動作確認のために、共有サーバの本体環境へ直接手を入れたり、再デプロイ・再起動したりすることは、他の開発者に影響が出るかもしれません。

AIネイティブ開発支援機能は、この「サーバ上で自分のコードを試したいが、共有環境は壊したくない」という要求に応えるための機能です。 スクリプト開発モデルによる開発を、ローカルと共有開発サーバの間でスムーズに行えるようにします。 コーディングエージェント(Claude Code / OpenAI Codex / GitHub Copilot)を利用したAIネイティブ開発においても、iAP の開発環境に組み込むことで生産性の向上を図れます。

名称について

AIネイティブ開発支援機能は、Accel Orbit を構成する機能の 1 つです。 2025 Spring 〜 2026 Spring 向けには、旧称「開発支援モジュール(velbench)」のユーザモジュールとして提供しています。導入方法は セットアップ を参照してください。

できること​

手元(ローカル)で開発したスクリプト資材を、共有の開発サーバ上にそのまま持ち込んで動かせるようにする開発支援機能です。 VSCode などで開発したソースコード・設定ファイル・JAR などの資材を共有開発サーバへ転送(デプロイ)し、自分のログインセッションをその資材に「切り替える」ことで、リモート環境上で自分のコードを動作確認できます。

AIネイティブ開発支援機能を活用することには、次のような利点があります。

  • 資材反映・管理を簡易化:ステージングの作成・編集・削除、デプロイメントの作成・編集・削除、ステージング切替、テナント環境セットアップの実行、ルーティング確認、ログ確認など、開発環境の管理を容易に行えます。
  • ホットデプロイの実現:アプリケーションサーバの再起動や、war ファイルの再デプロイを行わずに、開発中の資材を即座に反映できます。
  • Accel CLI コマンドの利用:開発環境に対して、ローカルで作成した資材を Accel CLI 経由で直接デプロイすることが可能です。
  • MCP(Model Context Protocol)の利用:コーディングエージェントが開発サーバ上の設定やログ、注釈を取得することにより、アプリケーション生成に必要な情報の入手や、開発中のアプリケーションより発生したエラー情報を収集し、コーディングエージェントが生成するアプリケーションの改善に活用できます。

解決する課題​

AIネイティブ開発支援機能は、次のような課題を解決します。

  • ローカルだけでは再現しづらい、サーバ環境での動作を確認したい。
  • 共有サーバの本体環境を壊さずに、自分の変更だけを試したい。
  • チームで同じ作業環境を共有し、同じ資材で動作を確認したい。

開発者ごと・用途ごとに独立した作業スペースである ステージング環境 を作り、そこに資材をデプロイして、自分のセッションだけをその環境に切り替えて確認します。 切り替えを解除すれば、いつでも本体環境に戻れます。

対象ユーザー​

AIネイティブ開発支援機能は、次のような開発者を対象としています。

  • 共有開発サーバ上でスクリプト開発を行う開発者。
  • 自分のローカル資材をリモート環境で動かして確認したい開発者。

用途と制約​

AIネイティブ開発支援機能で構築する環境には、次の前提と制約があります。

  • AIネイティブ開発支援機能は、2025 Spring 以降の iAP 開発環境に組み込めます。2026 Autumn 以降は IM-Juggling でアプリケーション「Accel Orbit」を選択して、2026 Spring 以前はユーザモジュールとして追加します(セットアップ 参照)。
  • 現在提供中の AIネイティブ開発支援機能は、初期評価版であり、今後のバージョンアップにより仕様変更や機能追加が行われる可能性があります。
  • 本番運用は想定していません。本番環境では、用途やセキュリティ要件に応じた構成を別途検討してください。

基本コンセプト​

AIネイティブ開発支援機能は、3つの考え方で構成されています。

ステージング環境(Staging)​

共有開発サーバ上に作る、名前付きの独立した作業スペースです。

  • 自分で決めた ステージングID(例: my-app-staging)で識別します。
  • 1つのステージングには 参加者(オーナー)を登録でき、参加者は全員対等にそのステージングを操作できます。
  • ステージングの中に、後述の「デプロイメント」がぶら下がります。

デプロイメント(Deployment)​

ローカルの資材をステージング環境へ転送した1回分の単位です。

  • 同じステージングに対して、何度でもデプロイできます(デプロイのたびに新しいデプロイメントが作られます)。
  • そのステージングで有効になるのは、常に最新のデプロイメント1つだけです。
  • 新しくデプロイすると、それまで有効だった古い資材は自動的に無効化(アンデプロイ)され、最新のものに差し替わります。

ステージング切り替え(ステージング実行)​

自分のログインセッションを、特定のステージングに切り替える操作です。

  • 切り替えると、以降の自分のスクリプト実行は、本体環境ではなくそのステージングの資材で動くようになります。
  • 切り替えは自分のセッションだけに効きます。他の利用者には影響しません。
  • 「切替解除」すると、本体環境に戻ります。

ローカル開発からステージング環境への資材のデプロイと、自分のセッションの切り替えの関係を次の図に示します。

矢印は、ローカルからステージング環境への資材のデプロイと、セッションのステージングへの切り替えを表します。 ステージング環境には最新のデプロイメントだけが有効な資材として保持され、切り替え中のセッションはその資材で動作します。

各用語の定義は 用語集 を参照してください。