Skip to Content

/moai mx

コードベースをスキャンして @MX コードレベルアノテーションを追加するコマンドです。AI エージェントがコードコンテキストを迅速に理解できるよう自動的にコメントを挿入します。

一行要約: /moai mx は「コードナビゲーション標識」を自動設置します。危険なコード、重要な関数、テスト不足などを @MX タグでマーキングし、AI エージェントのコード理解を向上させます。

スラッシュコマンド: Claude Code で /moai:mx と入力すると、このコマンドを直接実行できます。/moai だけ入力すると、利用可能なすべてのサブコマンドの一覧が表示されます。

概要

@MX タグはコードに付与するメタデータアノテーションです。AI エージェントがコードを読む際に、重要な関数、危険なパターン、未完了の作業を即座に把握できるようにします。/moai mx は 3 パススキャンでコードベースを分析し、適切なタグを自動挿入します。

@MX タグタイプ

タグ用途使用タイミング
@MX:ANCHOR不変契約fan_in >= 3 (3 箇所以上から呼び出し)
@MX:WARN危険ゾーン複雑度 >= 15、goroutine/async パターン
@MX:NOTEコンテキスト伝達マジックナンバー、ビジネスルールの説明
@MX:TODO未完了作業テスト不足、SPEC 未実装

使用方法

# コードベース全体をスキャン > /moai mx --all # プレビュー (変更なしで確認のみ) > /moai mx --dry # P1 優先度のみ (高 fan_in 関数) > /moai mx --priority P1 # 既存タグを強制上書き > /moai mx --all --force # 特定言語のみスキャン > /moai mx --all --lang go,python # fan_in しきい値を下げる > /moai mx --all --threshold 2

サポートされるフラグ

フラグ説明
--allコードベース全体をスキャン/moai mx --all
--dryプレビューのみ - ファイル変更なしでタグ表示/moai mx --dry
--priority P1-P4優先度レベルフィルター (デフォルト: 全て)/moai mx --priority P1
--force既存の @MX タグを上書き/moai mx --force
--exclude PATTERN追加の除外パターン (カンマ区切り)/moai mx --exclude "vendor/**"
--lang LANGS特定言語のみスキャン (デフォルト: 自動検出)/moai mx --lang go,ts
--threshold Nfan_in しきい値のオーバーライド (デフォルト: 3)/moai mx --threshold 2
--no-discoveryPhase 0 コードベース検出をスキップ/moai mx --no-discovery
--team言語別並列スキャン (エージェントチームモード)/moai mx --team

優先度レベル

優先度条件タグタイプ
P1fan_in >= 3 (3 箇所以上から呼び出し)@MX:ANCHOR
P2goroutine/async、複雑度 >= 15@MX:WARN
P3マジックナンバー、docstring 不足@MX:NOTE
P4テスト不足@MX:TODO

実行プロセス

/moai mx は 3 パスで実行されます。

Phase 0: コードベース検出

16 言語対応の自動検出を行います。言語別の設定ファイルとコメント構文を特定します。

Pass 1: 全ファイルスキャン

全ソースファイルをスキャンし、優先度キューを生成します:

  • Fan-in 分析: 関数/メソッドの参照回数カウント
  • 複雑度検出: 行数、分岐数、ネスト深度
  • パターン検出: 言語固有の危険パターン

Pass 2: 選択的深層読み込み

P1 と P2 ファイルを深層分析し、正確なタグ説明を生成します。

Pass 3: バッチ編集

ファイルあたり 1 回の Edit 呼び出しでタグを挿入します。既存の @MX タグは保持されます (--force 除く)。

バッチチェックポイント

大規模スキャン (50+ ファイル) はバッチ処理を使用します:

  • バッチサイズ: 50 ファイル/反復
  • 自動コミット: 各バッチ完了後に中間結果をコミット
  • 進捗追跡: .moai/cache/mx-scan-progress.json
  • 再開可能: 中断されたスキャンの続行

レートリミット検出時、現在のバッチを保存してグレースフルに停止します。/moai mx を再実行すると最後のチェックポイントから再開されます。

他のワークフローとの統合

ワークフローMX 統合方法
/moai sync同期中にMX検証を自動実行 (SPEC-MX-002)
/moai editファイル編集時に@MXタグを自動検証 (v2.7.8+)
/moai runDDD ANALYZE フェーズで自動トリガー
/moai reviewMX タグコンプライアンスチェックを含む

よくある質問

Q: @MX タグはコード実行に影響しますか?

いいえ、@MX タグはコメントとしてのみ存在します。コード実行やパフォーマンスには一切影響しません。

Q: 既存のタグがある場合はどうなりますか?

デフォルトでは既存タグを保持します。--force フラグを使用すると上書きされます。

Q: 自動生成ファイルもタグ付けされますか?

いいえ。.moai/config/sections/mx.yaml の除外パターンに基づき、生成ファイル、vendor、mock ファイルは自動的にスキップされます。

関連ドキュメント

Last updated on