Playwrightのテスト落ちを自動修正!GitHub PRを勝手に作ってくれる「Libretto PR agents」が便利すぎる
Show HN: Libretto PR agents – Automatically fix failing playwright scripts
Show HN: Libretto PR agents – Automatically fix failing playwright scripts
「Libretto PR agents」は、Playwrightによるブラウザ自動化テストのメンテナンスを劇的に楽にする無料のTypeScriptライブラリです。既存のPlaywrightスクリプトに1行コードを追加するだけで、テスト失敗時にAIエージェントが自動で原因を解析し、修正用のGitHub PRを作成してくれます。数ヶ月前、私たちは決定論的(デターミニスティック)なブラウザ自動化を実現する「Libretto」をリリースしました。多くの業務系ワークフローにおいて、実行時に毎回AI判断を挟むような高コストなブラウザエージェントは不要です。むしろ、可読性が高く高速で低コストなPlaywrightスクリプトこそが最適解だと考えたからです。とはいえ、WebサイトのUI変更によるスクリプトの停止(フレイキーテスト)は悩みの種でした。すでに大量のPlaywrightスクリプトを抱えている現場にとって、メンテナンスのためにわざわざbrowser-useやstagehandのような新しいAIランタイムフレームワークへ全面移行するのは現実的ではありません。Libretto PR Agentは、失敗したブラウザセッションにCDP経由で接続し、ページに対してPlaywrightやJavaScriptを注入して問題を診断します。原因を特定したら、修正コードを提案するPRを自動作成します。使い方は以下の通りです。try { await automationLogic(page); } catch (error) { await playwrightDebugger.debugFailure(error, page); throw error; }このツールは完全無料でオープンソース、お好みのLLM APIキーを設定でき、あらゆるブラウザプロバイダー(セルフホスト含む)で動作します。ソースコードはこちらから確認できます: https://github.com/saffron-health/libretto/tree/main/packages/playwright-debugger 。既存のPlaywright資産を活かしつつ、AIによる自動修復を取り入れたいエンジニアの方、ぜひ使ってみてください。現在どのようなフローでデバッグを行っているか、またこのアプローチについてフィードバックをいただけると嬉しいです。
別に批判するつもりはないんだけど、あなたが使ってるプロンプトを使えば自分でスキルを作れるんじゃないの? https://github.com/saffron-health/libretto/blob/13380d589234335ced3691f0f51c6ff9a04a7f2c/packages/playwright-debugger/src/index.ts#L527 何がそんなに特別なの?「解決策はあるけど課題が見当たらない」って感じがして、このツールの価値がよくわからない。