Beyond Tabs から Guida へ
Beyond Tabs は Guida より先にありました。
ニッチなプログラミング言語の仕事、イベント、リソースを手作業で選ぶサイトです。外から見ると単純に聞こえます。関連ページを見つけ、読み、掲載すべきか判断し、有用な部分を残し、それ以外を捨てる。実際には、この作業は扱いにくい中間地帯にあります。
純粋な手作業としては反復が多すぎる。完全な scraper に任せるには判断が多すぎる。そして、すべての有用なページが同じ形だと仮定する 1 本の壊れやすいスクリプトに落とすには、Web は変化が多すぎる。
その中間地帯から Guida は始まりました。
閲覧とスクレイピングの間にある作業
キュレーションされたサイトを維持するには、小さな Web 作業を大量に行う必要があります。ページを開く。関連性を判断する。タイトル、リンク、日付、会社、言語、短い説明を取り出す。ソースがまだ生きているか確認する。重複に気付く。別のリンクをたどる。すでに保存済みの情報と比較する。読者にとって役に立つ文脈を残す。
ブラウザー自動化はこの一部を助けます。ページを開き、DOM を問い合わせ、データを保存できます。しかしキュレーションは「この selector を保存する」だけではありません。重要なのは判断です。
- 本当に対象の言語に関係しているのか、それともキーワードのノイズか。
- ページはまだ現在の情報なのか。
- 本物の求人、イベント、リソースなのか。
- サイトのレイアウトが変わっていないか。
- 掲載する価値があるか。
安定したページ構造と狭い問いには、普通の scraping がよく効きます。Beyond Tabs では、半分は閲覧、半分は抽出、半分はレビューという作業が続きました。半分が多すぎますが、それが問題の本質でした。
1 回限りのスクリプトでは足りなかった
最初の答えは当然スクリプトでした。
それは役に立ちました。同時に、次の問題も見えました。有用なスクリプトには、小さな生態系が必要になります。
- 抽出データを保存する場所
- バッチで作業を処理する仕組み
- レビューが必要なページのキュー
- セッションをまたいで残るローカル状態
- 何が起きたかを調べる道具
- アプリを rebuild せずにスクリプトを変える方法
- 認証情報をスクリプトから分離する方法
ここまで来ると、問いは「このページを scrape できるか」ではなくなります。「この作業を普通にできるブラウザーとはどんなものか」です。
その答えが Guida です。
AI は制御の必要性を消さなかった
LLM は問題をより面白くしましたが、制御の必要性をなくしたわけではありません。
AI は乱れたページの解釈、要約、分類、selector の提案、関連性の判断、glue code の作成を助けます。しかし AI にブラウザーを操作させると、別の問題が出ます。境界が必要です。
Beyond Tabs のような作業で有用なのは、完全自律の閲覧ではありません。監督付き自動化です。
- ブラウザーは見える
- 操作は確認できる
- ナビゲーションは制限できる
- 機密性の高い操作は承認を必要とする
- ツール呼び出しは監査される
- 認証情報はローカルに残る
- 人間がループに残る
Guida の MCP は、単なる「AI がブラウザーをクリックできる」アダプターではありません。承認、監査、ドメイン、origin、認証情報の境界が製品の中心です。
ツールは一般化した
Guida が Beyond Tabs 専用の補助ツールで終わるなら、数本のスクリプトと表で十分でした。
そうはなりませんでした。
Guida は、160 以上のメソッドを持つ Scripting API、JavaScript/Lua/Janet ランタイム、ローカルワークスペース、キュー、ワーカー、ストレージ、検索、ネットワークキャプチャ、MCP 連携、承認フロー、監査履歴、認証情報の分離を持つプログラム可能な Windows ブラウザーへ広がりました。
一部の支援基盤は独立した公開パッケージにもなりました。JanetSharp は Janet を .NET デスクトップアプリへ組み込む過程から生まれました。StratQueue は、SQLite-backed の作業キューと差し替え可能な dequeue 戦略が必要になったことから生まれました。
これらは Guida 以外でも再利用できる基盤なので公開されています。Guida 本体は現在クローズドソースの Windows アプリとして配布され、製品固有のブラウザー自動化と Web scraping 層は当面クローズドのままです。この境界は重要です。再利用できる plumbing は Guida の外でも有用で、製品層には高リスクな能力と製品固有の guardrail が集中しているからです。