guideme: AIでコード修正をガイド、直接生成はしない

guideme: AIでコード修正をガイド、直接生成はしない

Sophia Bennett
32
original

ベテラン開発者が、自作のAIスキル「guideme」を使って手書きコードを支援する方法を紹介。guidemeはパッチを生成せず、コード修正の指針を出力し、シニアエンジニアがアーキテクチャの問題に集中できるようにする。記事は、AIプログラミングにおける「最短経路」を好む傾向の欠点と、人間とAIの協働でより堅牢なコードを書く方法を考察している。

この2年間で、AIコーディングアシスタントは「おもちゃ」から、多くのチームにとって標準装備へと変貌を遂げた。自動補完、関数生成、さらにはモジュール全体の生成まで、数秒で完了する。しかし、コード生成がこれほど安価になった今日、あるシニアエンジニアによる告白形式の記事が、異なる視点を提示している。彼は今もコアコードを手書きし続け、AIに「代わりにやってもらう」のではなく「手伝ってもらう」方法を見つけたという。

AIの「最短経路」志向

筆者は数多くの「vibecoding」プロジェクトからひとつの法則を導き出した。AIはほぼ常に、既存コードのリファクタリングよりも新規コードの追加を好む。このやり方は「AIが私のコードベースを空にしてしまった」といった極端な事故こそ防げるものの、別の落とし穴をもたらす——アーキテクチャ上の問題を静かに未来へ先送りしてしまうのだ。

例えば、エンジニアがAIに機能の実装を依頼し、ある細部の指定を忘れたとする。AIはそれを自分で補完してしまう。重複したロジックをつなぎ合わせたり、多重のif-elseを積み上げたりすることはあっても、「この要件はインターフェースを変えない限りきれいには実装できません」と自ら指摘することはほとんどない。経験豊富なエンジニアなら、実装に着手した時点で違和感に気づき、小規模なリファクタリングで解決策がはるかに明確になることを見抜けるものだ。この判断こそ、現在のAIに最も欠けている能力である。

さらに厄介なのは、AIが生成したコードは往々にしてフォーマットが整い、コメントも完備され、見た目が美しいことだ。しかし、その奥に潜む本当の問題——アーキテクチャの歪み、冗長なコード、未処理のエッジケース——は表面の下に隠れている。コードレビューの場では、こうした欠陥は最も見落とされやすい。

guideme:「どう書くか」を「どこを直すか」へ

AIの「近視眼」に対抗するため、筆者は自分用に guideme というSKILL.mdを設計した。その動作はClaudeのLearning Modeにいくぶん似ているが、対象とするのは新人ではなくシニアエンジニアだ。

このスキルは、コピーしてそのまま貼り付けられるコードブロックを生成しない。代わりに、引き継ぎタスクのように、変更が及ぶファイル、変更すべき内容、その理由をエンジニアに伝え、関連モジュールのアーキテクチャ概要を添える。実装部分は完全にエンジニア自身に委ねられる。

  • 変更範囲を明確にし、コンテキストを提供する
  • 設計の動機を説明し、説教じみた基礎解説は避ける
  • 手作業での実装を求め、アーキテクチャの問題を浮き彫りにする

筆者は強調する——ガイドを自らの手で実装することこそ、レビューでは見落とされていたアーキテクチャ上の近道を発見する決定的な瞬間なのだと。機械が生成したコードは「詰まる」こともなければ、ここに設計上の矛盾があると教えてくれることもない。しかし人間にはそれができる。

AIプログラミングツールの次の一歩

この事例は、AIプログラミングツールの進化にとって大きな示唆を与える。AIの価値はコード補完にとどまらず、コードへの理解をより深める手助けにもあるということだ。AIを「自動補完ツール」として使うより、「道案内役」として使うほうが良い。

チームにとっても、これは重要な気づきをもたらす。AIが生成したコードをレビューする際、表面上の整然さに惑わされてはいけない。構造が合理的か、不要な遠回りをしていないかに、より注意を払う必要がある。将来、より成熟

AIプログラミング経験コードリファクタリングコードレビュー手書きコードプログラミング支援guidemeシニアエンジニアAI生成コードの落とし穴

共有

コメント

0
0/500 文字

コメントはまだありません

最初のコメントを書きましょう

もっと見る

類似ツール

Cursor

Cursor

VS Codeをベースに二次開発されたインテリジェントコードエディターで、「ネイティブ搭載AI」をコアセールスポイントとしています。プラグインに依存せず、AIをエディターの基層に深く統合し、プロジェクト全体のコンテキストコードベースを理解することができ、VS Codeのすべての設定とプラグインのシームレスな移行をサポートします。

Google Antigravity

Google Antigravity

Antigravityは、Gemini 3 Pro、Claude Sonnet 4.5、GPT-OSSなどの複数モデルをサポートしており、開発者は同じ環境内でタスクに最適なモデルを選択できます。

Codex

Codex

OpenAI Codexは、OpenAIが開発したAIプログラミングモデル兼アシスタントであり、自然言語の指示を対応するソースコードに翻訳し、開発者にインテリジェントな補完やコード生成などの機能を提供します。このモデルは、2021年にOpenAI APIのコードモデルとして初めてリリースされ、GitHub Copilotの中核的サポートを担っていました。OpenAIの技術進化に伴い、Codexは2025年に「AIプログラミングエージェント」として新たな姿で復帰し、複雑な要件を理解し、コードの自動記述やデバッグを実行することで、開発効率とソフトウェアの提供速度を大幅に向上させています。

Kiro

Kiro

KiroはAWSが提供するAIプログラミングIDEであり、仕様駆動開発モデルを採用し、自然言語の要求を明確な仕様書とタスクに変換します。その後、組み込みのAIエージェントがコードを生成し、デバッグと最適化を行い、大規模プロジェクト開発の全プロセスを支援します。

Trae

Trae

Trae(公式サイト trae.ai)は、ByteDanceによって開発されたAIネイティブな統合開発環境(IDE)です。単なるプログラミングアシスタントではなく、「協働パートナー」として、大規模言語モデル(LLM)を深く統合し、開発者が要件定義からコード構築、デバッグ、デプロイまで、より知的で自動化されたソフトウェア開発を実現することを支援します。

Claude

Claude

Claudeは、米国のAI企業Anthropicが開発した知的言語インタラクションプラットフォームです。深いテキスト理解、情報整理、コード支援、タスク分析などの能力を統合し、チャット対話を超えて、長文要約、画像解析、論理的推論、プログラミング支援など、より複雑な問題に対応できます。一部の単純な質問応答ボットと比べて、Claudeは推論ロジックと拡張機能を備えた知的ツールと言えます。

オープンソース代替

guidellm:LLM推論性能を評価・最適化するオープンソースツール

guidellmは、vLLMチームによって開発されたオープンソースツールで、本番環境における大規模言語モデル(LLM)の推論性能を評価・最適化するためのものです。負荷試験、レイテンシ分析、スループット評価を提供し、開発者がボトルネックを特定してデプロイ構成を調整するのに役立ちます。プロジェクトは主にPythonで記述されており、Apache-2.0ライセンスを採用しています。収集時点で1214スターを獲得しています。

Kun:ローカル優先のAIエージェントワークスペース

Kunはローカル優先のAIエージェントワークスペースです。共有GUIおよびTUIランタイムを通じて、コーディング、ライティング、デザイン、リサーチ、自動化を統合します。プロジェクトは主にTypeScriptで開発されており、ライセンスはOtherです。収集時点で4813個のGitHubスターを獲得しています。

ai-gateway:Envoy Gateway ベースの統一 AI ゲートウェイ

ai-gateway は、Envoy Gateway をベースにしたオープンソースプロジェクトで、複数の生成 AI サービスへのアクセスを管理する統一 API ゲートウェイを提供します。AI アプリケーションの統合と運用を簡素化し、ロードバランシング、キャッシュ、レート制限などの機能をサポートしています。このプロジェクトは Go 言語で開発され、Apache-2.0 ライセンスを採用しています。

go-micro:AIとマイクロサービスを融合したGoフレームワーク

go-microは、AIエージェントツールセットとマイクロサービスアーキテクチャを融合したオープンソースのGoプログラミング言語フレームワークです。MCP、A2Aプロトコル、および複数のLLM統合をサポートしています。このプロジェクトはApache-2.0ライセンスを採用し、主にGo言語で開発されています。収集時点で、このプロジェクトはGitHubで22755のスターを獲得しています。

terax-ai:軽量Tauriデスクトップ開発環境

terax-aiはTauriベースのデスクトップ開発環境で、サイズはわずか7-8MBです。GPUターミナル、CodeMirrorエディタ、Gitツール、および複数のプロバイダーに対応したAIエージェントを統合し、開発者に一体型の開発体験を提供します。プロジェクトは主にTypeScriptで書かれており、Apache-2.0ライセンスを採用しています。

jar-analyzer: Java JARパッケージ解析GUIツール、AIアシスタント統合

jar-analyzer は、オープンソースの Java JAR パッケージ解析 GUI ツールで、AI アシスタントを統合しています。JAR DIFF、メソッド呼び出しグラフ探索、DFS 呼び出しチェーン分析、汚染分析、および制御フローグラフのプログラム分析などの強力な機能を提供し、Java 開発者やセキュリティ研究者に適しており、コード監査とリバースエンジニアリングのタスクを簡素化します。プロジェクトの主要言語は Java で、GPL-3.0 ライセンスを採用しており、収集時点で 2111 個のスターを保有しています。