Browser HarnessにHN反応、足りないブラウザ操作を途中で自分で書くLLM

HNがこのリポジトリに反応したのは、また一つブラウザ自動化ラッパーが出たからではない。READMEの冒頭から、このプロジェクトは CDP の上にほぼ直接乗った「薄い self-healing harness」だと打ち出している。要点は、作業中に必要な browser helper が足りなければ、モデルがその場で追加し、そのまま次の操作へ進むことだ。ブラウザとモデルの間に厚いフレームワークを置くのではなく、できるだけ何も挟まない発想である。

この設計は、最近のブラウザエージェントの流れと真っ向からぶつかる。多くのツールは、クリックや入力やアップロードを安全な抽象化の中へ閉じ込めようとする。Browser Harness は逆だ。helpers.py に必要な関数が無ければ、エージェントが書き足して先へ進めばよいという立場を取る。READMEでも upload_file() のような不足機能を実行中に追加する例を見せていて、小さなランタイムと raw CDP をそのまま武器にしている。

HNの反応が面白い。これをブラウザ版 just-in-time agentic coding と見て歓迎する人がいる一方で、自由度が増えるほど監査性と再現性は落ちるという指摘も強かった。セッションの途中でモデルが自分の道具を書き換え始めたら、失敗理由の追跡は難しくなる。Cloudflare のような bot 対策、Terms of Service、prompt injection の表面も広がる。raw CDP は柔軟だが、あとで壊れ方を説明する仕事は軽くならないというわけだ。

だからこの投稿は単なるデモ公開で終わらなかった。論点は「動くかどうか」ではなく、ブラウザエージェントに本当に必要なのは、より多くのレールなのか、それともレールを外す自由なのかという点にある。予測しきれない UI を相手にする現場ではかなり魅力的だが、運用と安全を背負う側にはかなり緊張感のある提案でもある。出典は GitHub リポジトリ と HN スレッド。