# Write

ローカルファイルシステム上で新しいファイルを作成するか、既存のファイルの内容を完全に置換します。対象パスのすべてを置換するため、本当の作成や意図的な完全書き換えのために予約すべきです。

## 使用タイミング

- まだ存在しない新しいソースファイル、テスト、または設定を作成
- フィクスチャ、スナップショット、またはデータファイルをゼロから生成
- 段階的な `Edit` がやり直すよりも複雑になる完全書き換え
- ユーザーが明示的に生成を依頼した、スキーマ、マイグレーション、ビルドスクリプトなどのアーティファクトを出力

## パラメータ

- `file_path` (string, required): 書き込むファイルの絶対パス。親ディレクトリはすでに存在している必要があります。
- `content` (string, required): ファイルに書き込む完全なテキスト。これがファイル本体全体になります。

## 例

### 例 1: 新しいヘルパーモジュールを作成
`file_path: "/Users/me/app/src/utils/slugify.ts"` で `Write` を呼び出し、実装を `content` として提供します。ファイルがまだ存在しないことを確認してからのみ使用してください。

### 例 2: 派生アーティファクトを再生成
スキーマソースが変更された後、新しく生成された JSON を `content` として使って 1 回の `Write` 呼び出しで `/Users/me/app/generated/schema.json` を書き直します。

### 例 3: 小さなフィクスチャファイルを置換
すべての行が変わる使い捨てテストフィクスチャの場合、`Write` は一連の `Edit` 呼び出しより明確です。最初にファイルを読み、スコープを確認してから上書きしてください。

## 注意事項

- 既存ファイルを上書きする前に、現在のセッションで `Read` を呼び出す必要があります。`Write` は見ていない内容を上書きすることを拒否します。
- ファイルの一部だけに触れる変更には `Edit` を優先してください。`Edit` は差分だけを送信するため、より速く、安全で、レビューしやすくなります。
- ユーザーが明示的に依頼しない限り、Markdown ドキュメント、`README.md`、チェンジログファイルを積極的に作成しないでください。
- ユーザーがそのスタイルを要求しない限り、絵文字、マーケティング文、装飾バナーを追加しないでください。
- `Bash` の `ls` 呼び出しで最初に親ディレクトリが存在することを確認してください。`Write` は中間フォルダを作成しません。
- テンプレートや後処理はないので、永続化したい内容を正確に提供してください。
