---
title: ウォッチモード
description: ファイル変更時に自動で再パックする Repomix のウォッチモード。デバウンス、無視ルールの扱い、オプションの互換性について解説します。
---

# ウォッチモード

Repomix はコードベースを監視し、ファイルが変更されるたびに自動的に再パックできます。作業中も出力ファイルを最新に保てるため、継続的に更新されるスナップショットを AI アシスタントに渡したい場合に便利です。

## 使い方

`-w`（または `--watch`）フラグでウォッチモードを開始します。

```bash
repomix --watch
```

Repomix はまず一度パックし、その後も実行を続けて変更のたびに再パックします。通常のオプションと組み合わせることもできます。

```bash
# 特定のファイルだけを監視
repomix -w --include "src/**/*.ts"

# 出力ファイルと形式を指定して監視
repomix --watch -o output.md --style markdown
```

監視を停止するには `Ctrl+C` を押します。

## 動作の仕組み

- **初回パック**: Repomix はコードベースを一度パックし、監視中のファイル数を表示します。
- **変更検出**: 新規・変更・削除されたファイルがいずれも再パックのトリガーになります。
- **デバウンス**: 短時間に連続する変更（ブランチの切り替えや一括保存など）はまとめられます。最後の変更から 300 ms 待ってから再パックするため、立て続けの編集でも再構築は1回にまとまります。
- **タイムスタンプ**: 再構築のたびに Repomix はタイムスタンプ（`Rebuilt at HH:MM:SS`）を表示するので、出力が最後に更新された時刻が分かります。

## 無視されるファイル

ウォッチモードは通常実行と同じ無視ルールに従います。`.gitignore`、`.repomixignore`、組み込みのデフォルトパターン（`node_modules` や `.git` など）、および `--ignore` で渡したパターンを尊重します。無視されるディレクトリは監視対象から外れるため、大規模プロジェクトでもウォッチモードは効率的に動作します。

## オプションの互換性

ウォッチモードはローカルディレクトリでのみ動作するため、次のオプションとは併用できません（コマンドラインで指定した場合でも設定ファイルで指定した場合でも同様です）。

- `--remote` および引数として渡すリモートリポジトリ URL — ウォッチモードはローカル専用です
- `--stdout` および `--stdin` — ストリーミングモードには更新対象となる永続的な出力ファイルがありません
- `--split-output`
- `--skill-generate`
- `--copy` — 変更のたびに再パックするとクリップボードを繰り返し上書きしてしまいます

これらのいずれかを `--watch` と併用すると、Repomix は競合を説明するエラーを表示して終了します。

## 関連リソース

- [コマンドラインオプション](/ja/guide/command-line-options) - `--watch` を含む CLI の完全なリファレンス
- [基本的な使用方法](/ja/guide/usage) - Repomix の他の実行方法
- [設定](/ja/guide/configuration) - 設定ファイルでデフォルトの出力オプションを設定
