コード管理とは
コード管理は、ベースマキナのアクションの設定をTypeScriptのコードとしてGitリポジトリで管理できる機能です。
設定内容をコードとして管理することで、以下のメリットがあります。
- コードレビュー: 設定変更をPull Requestでレビューできる
- 差分検出: 設定変更の差分をCI上で自動検出し、PRにコメントとして表示できる
- 環境別の反映: 開発環境から検証環境、本番環境へ段階的に反映できる
- 型安全な設定: TypeScriptの型システムにより、設定ミスをコードの記述時に検出できる
- 変更履歴: Gitの履歴で設定変更の経緯を追跡できる
全体像
コード管理では、以下のツールを使用します。
| ツール | 説明 |
|---|---|
@basemachina/sdk (opens in a new tab) | @basemachina/sdk/oacからアクションの設定をTypeScriptで記述するためのSDK関数を提供 |
@basemachina/cli (opens in a new tab) | 設定の差分検出・反映や、Web管理アクションの取り込みを行なうCLIツール(bmコマンド) |
basemachina/bm-action (opens in a new tab) | OIDC認証・bm syncの実行・PRへのコメント投稿をまとめて扱うGitHub Actions用のComposite Action |
設定はTypeScriptファイル(basemachina.config.ts)に記述し、CLIコマンドbm syncで設定の差分検出や環境間の同期を行ないます。Web UIで作成した未取り込みのWeb管理アクションは、bm pullでリポジトリに取り込めます。GitHub Actionsと組み合わせることで、PRのマージをトリガーに自動で設定を反映できます。
始めるには
- 始め方に従ってプロジェクトをダウンロードし、リポジトリをセットアップする
- 設定ファイルを編集してアクションを定義する
- CLIコマンドで差分を確認し、反映する
- Web UIで作成したアクションがある場合は
bm pullで取り込む - CI/CDの設定でGitHub ActionsやGitLab CIを構成する
- 運用例を参考に開発・運用を行なう
AIエージェントとの連携
コード管理は、AIエージェントと組み合わせて作業を効率化できます。defineAction / defineConfigの編集やbm sync --dryでの差分プレビューを、Agent Skill bm-code-managementを通じてエージェントに任せられます。
詳しくはAI活用とは・Agent Skillをご参照ください。