自律的に修正し続けるエージェント

2026年01月04日

AIは確率的に考えるため、放っておくと迷ったり、間違った方向に進みやすい。 そこで、リンターやスクリプトといった「更新可能なチェックリスト」を持たせることで、進むべき方向を定める。 チェッカーを装備し、自らの出力を客観的な定規で測り、自律的に修正し続けるエージェントとは、推論(AI)と検証(ツール)を分離し、自律的に軌道修正を行いながら品質を高め続けるシステムである。

具体的な運用はシンプルだ。まずAIにプロジェクトに必要なリンターを提案させて導入し、それらを実行した結果を「Markdownのチェックリストとして書き出す」ように指示する。 次に、生成されたチェックリストを上から順に修正させ、修正のたびに再検証を行う自律的なループを回させる。 もし修正結果と自分の感覚が乖離した場合は、ルール設定を書き換えるか、特例として無視するか、あるいは自分の違和感を捨てて標準に合わせるかを対話で決定する。 これが、システムを育てるプロセスとなる。


  • 構造 不確実だが柔軟な推論を行う AIモデル。 決定的で厳格な事実確認を行う リンターやスクリプト。 そして、観測した事実に基づいて対象を修正する コマンド実行能力。

  • 実装例 このコンセプトを具現化した現在の構成。 npm run fix: 自動修正可能なものは修正し、残ったエラーを報告させる。 npm run check: 修正はせずに現状の品質をチェックする。 ユーザーは細かいコマンドを覚えず、「きれいに掃除して」と命じるだけでいい。

  • Kickstart このシステムを起動するためのプロンプト(再現用)。

    プロジェクトの現状を分析し、最適な Linter および Formatter(Markdownlint, Prettier, Obsidian Linter等)を導入せよ。
    その後、全ファイルを検証し、エラー箇所をMarkdownのチェックリストとして書き出せ。
    修正はまだ行わず、まずは現状の可視化のみを行うこと
    
  • 自己修復サイクル 生成、検証、修正のサイクルを自律的に回す。 もしルールに違和感があれば、エラー箇所を提示して「なぜ?」と問いかける。 そこで整合性が取れないと判断されれば、コードではなくリンター設定の方を修正し、システム自体を最適化していく。

  • 結論 チェックリストを持つことで、迷いを捨てることができる。 自らブレーキを踏む権利を持つこのシステムは、代理人ではなくパートナーであり、Software for One を支える免疫系である。