AIコーディングツールに「1行直して」と言っただけなのに
フリーランスエンジニアのやまもんです。
最近、AIを使ってコードを書くのが当たり前になってきましたよね。GitHub Copilot、Cursor、Claude Code……選択肢はどんどん増えている。自分も日常的にAIの力を借りながら開発しています。
でも、こんな経験ありませんか?
「47行目の空リストチェックを直して」と頼んだだけなのに、300行まるごと書き換えられて返ってくる。
しかも、自分が時間をかけてチューニングしたロジックが「改善」の名のもとに消えている。いや、頼んでないんだが。
自分はこれを何度もやらかされて、そのたびに git diff で差分を睨みながら「どこが変わった?」「なんでここ触った?」と格闘していました。正直、手で直したほうが早かったんじゃないかと思う瞬間が何度もあった。
この記事では、AIコーディングツールの「余計なお世話」問題と、フリーランスとしてどう付き合っていけばいいのかを、自分の実体験をもとに書いていきます。
AIコード修正の「あるある」問題
全ファイル書き換え問題の正体
多くのAIコーディングツールの仕組みは、ざっくり言うとこうです。
- ファイル全体をAIに送る
- AIがファイル全体を書き換えて返す
- 人間が数百行の差分から、実際に変わった2〜3行を探す
- 気づいたら関係ないところも壊れている
これ、1回や2回なら笑えるんですけど、納期が迫っているプロジェクトで起きるとシャレにならない。
フリーランスって、自分のコードに全責任を持つわけじゃないですか。会社員なら「AIがやりました」で済むかもしれないけど(済まないか)、フリーランスは成果物の品質がそのまま信頼に直結する。AIが勝手に変えた部分にバグがあったら、それは自分の責任です。
「親切すぎるAI」の罠
面白いのが、AIは悪意があって書き換えているわけじゃないんですよね。むしろ「せっかくだからここも改善しておきますね!」という善意(?)でやっている。
変数名をリファクタリングしてくれたり、エラーハンドリングを追加してくれたり。一見ありがたいんだけど、頼んでいない変更は基本的にリスクです。
特に既存のコードベースで作業しているとき、そのコードには「なぜそうなっているのか」という文脈がある。AIにはその文脈が見えていないことが多いので、善意の改善が実はプロジェクト固有の制約を壊していた、なんてことが起きる。
「外科手術型」のAIコード修正という考え方
最近、この問題に対するアプローチとして注目されているのが、ファイル全体を書き換えるのではなく、必要な箇所だけをピンポイントで修正する「パッチ方式」です。
考え方はシンプルで、AIが修正を返すときに「この部分を探して」「こう置き換えて」という指示形式にする。修正対象のブロックがファイル内で一意に特定できなければ、パッチは適用されない。つまり、曖昧な修正やサイレントな破壊が起きにくい仕組みになっている。
自分がこの考え方を知ったとき、「それだよそれ!」と膝を打ちました。
全ファイル書き換えがデフォルトだった時代から、ようやくAIも「必要最小限の変更」という発想が出てきた。これはエンジニアリングの基本中の基本で、変更は小さければ小さいほど安全という原則そのものですよね。
フリーランスが実践すべきAIコーディングとの付き合い方
自分がこの1年ほどAIコーディングツールを使い倒して学んだことを共有します。
1. AIへの指示は「外科医への依頼」のつもりで
「このファイルを良くして」みたいなざっくりした指示は危険です。AIは言われたとおりに「良く」しようとして、あちこち触りまくる。
代わりに、修正箇所を明確に指定するのが大事。「47行目の if not data: のチェックが抜けているから追加して。他は一切変えないで」くらい具体的に言う。
最近のツールはこういう「ピンポイント指示」への対応がどんどん良くなっていて、Claude Codeなんかは差分ベースの編集(Edit機能)が標準搭載されています。ファイル全体を書き換えるんじゃなくて、指定した箇所だけを置換する仕組み。自分はこれを知ってからだいぶストレスが減りました。
2. 差分レビューは絶対にサボらない
どんなに信頼できるツールでも、AIが出力した変更はかならず git diff で確認する。これはフリーランスとしての最低限の品質管理です。
自分は修正を適用する前に、必ずコミットを打つようにしています。そうすれば、AIの変更が想定外だったときにすぐ戻せる。バックアップを取ってから作業する、という当たり前のことなんですが、AIの出力を「正しいはず」と信じてそのまま受け入れてしまう人が意外と多い。
3. 「AIに任せる範囲」を決めておく
AIが得意な作業と、人間がやったほうがいい作業は明確に分かれます。
AIに任せて効率が上がるもの:
- テストコードの雛形生成
- 定型的なCRUD処理
- エラーメッセージの改善
- ドキュメントの下書き
人間がやるべきもの:
- ビジネスロジックの設計判断
- パフォーマンスに関わるチューニング
- セキュリティに関わる実装
- 既存コードとの整合性確認
自分はこの線引きをしてから、AIに振り回される時間が大幅に減りました。全部AIに任せようとするから破綻するんですよね。
4. 自動改善ループの可能性と注意点
最近のAI開発ツールの中には、「目標を設定したら、AIが自動的にコードを修正→実行→結果を確認→再修正」というループを回せるものも出てきています。たとえば「精度スコアが0.85を超えるまで最大20回トライ」みたいな設定ができる。
これ、うまくハマると本当に強力です。自分が寝ている間にモデルの精度が上がっている、なんて体験は最高。
ただし、注意点もある。ループの各ステップで何が変わったかを追跡できる仕組みがないと、いつの間にか意図しない方向に最適化されていた、ということが起きます。フリーランスの案件で使う場合は、各イテレーションの変更ログを残しておくのが鉄則です。
フリーランスにとってのAIコーディングツールの価値
ぶっちゃけ、AIコーディングツールは使い方次第で生産性が2倍にも半分にもなると思っています。
全ファイル書き換え問題に象徴されるように、AIの出力を鵜呑みにすると痛い目を見る。でも、ピンポイント修正の考え方を理解して、適切な指示の出し方を身につければ、フリーランスの武器としてこれほど心強いものはない。
自分の場合、AIコーディングツールを使いこなせるようになったことで、以前なら半日かかっていた修正作業が1時間で終わることもザラにあります。その浮いた時間で新しい案件の提案書を書いたり、技術のキャッチアップをしたり。時間単価を上げるという意味で、AIは最高の投資だと感じています。
もちろん、ツールの月額コストは経費として考える必要があります。GitHub Copilotが月10ドル、Cursorが月20ドル、Claude Proが月20ドル……積み重なるとそれなりの金額。でも、1時間でも稼働時間が減ればペイする計算なので、自分は迷わず投資しています。確定申告では「通信費」や「研究開発費」として処理できるので、フリーランスなら忘れずに経費計上しましょう。
まとめ
- AIコーディングツールの「全ファイル書き換え」問題は多くのエンジニアが経験する悩み。ピンポイント修正(パッチ方式)という解決策が広がりつつある
- フリーランスはAIの出力を鵜呑みにせず、差分レビューとバックアップを徹底することが品質管理の基本
- AIに任せる範囲を決め、指示を具体的にすることで、生産性を上げながらリスクを最小化できる
AIとの付き合い方を覚えれば、フリーランスの働き方は確実に変わります。「便利だけど怖い」から「頼れる相棒」に変えていきましょう。
【PR】フリーランスエンジニアにおすすめのツール
freee会計
AIツールのサブスク代を経費計上する話を書きましたが、自分はフリーランスの確定申告にfreee会計を使っています。クレジットカードの明細を自動取得してくれるので、CopilotやCursorの月額費用も勝手に仕分けされていく。確定申告の時期に慌てなくて済むのが本当に助かっています。
エックスサーバー
開発した成果物をデプロイする環境として、エックスサーバーを使っています。個人開発やクライアントワークのステージング環境として安定感があって、フリーランスの仕事を裏で支えてくれる存在です。SSH接続もできるので開発者にとって使い勝手が良い。
SkillHacks
AIツールの進化は速いですが、プログラミングの基礎力があってこそ使いこなせるもの。スキルアップを考えている方にはSkillHacksもおすすめです。自分は基礎を固め直したいときに動画教材を活用しています。買い切りなのでサブスク疲れしないのもポイント。


コメント