web-search について
web-search は、ウェブ検索やページ取得、Markdown 形式での抽出を行うエージェント向けコマンドラインスキルです。ローカルのブラウザデーモンでセッションを維持できます。
主な機能
- 01ローカルブラウザでウェブ検索
- 02検索結果からページを取得
- 03ページをMarkdownとして抽出
- 04常駐ブラウザデーモンの管理
活用シーン
- 01エージェント回答用のウェブ情報収集
- 02検索結果から指定ページを取得
- 03必要に応じたページ全文の抽出
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ogulcancelik/ agent-skills --skill web-searchインストール後、Claude Code で/web-searchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreLICENSEpackage.jsonREADME.mdweb-search.jslib/bot-protection.jsbrowser-bin.jscdp.jsdaemon-client.jsdaemon.jsdebug-dump.jsextract.jsfetch.jsfingerprint.jshttp-fetch.jssearch-cache.jssearch.jstest/bot-protection.test.jsbrowser-bin.test.jsdaemon-client.test.jsextract.test.jsfingerprint.test.jssearch-cache.test.jssearch-ddg.test.jssearch-google.test.js詳細
ウェブ検索
同梱の CLI を使ってローカルブラウザーで検索し、検索結果にアクセスして、エージェントのコンテキストとして使えるクリーンな Markdown にページを抽出します。永続的なブラウザーデーモンにより、ボット検出による失敗を減らし、ブラウザーの起動コストの繰り返しを避けられます。
エントリーポイントは {baseDir}/web-search.js です。{baseDir} は、この SKILL.md を含む絶対パスのディレクトリです。必ずこの絶対パスを指定して実行してください。呼び出し元のプロジェクトディレクトリから ./web-search.js を実行しないでください。
セットアップ
依存関係が不足している場合は、スキルディレクトリで bun install を実行してください。
CLI は Chromium 系ブラウザーを自動検出します。検出結果を上書きするには、
WEB_SEARCH_BROWSER_BIN または --browser-bin <path> を使用します。
検索と取得
{baseDir}/web-search.js "query"
{baseDir}/web-search.js "query" -n 10
{baseDir}/web-search.js --from <result-set-id> --fetch 1,3,5
{baseDir}/web-search.js --url https://example.com
{baseDir}/web-search.js --url https://example.com --full
検索のたびに結果セット ID が出力されます。番号付きの検索結果を取得する際は、必ずその ID を --from とともに渡してください。結果セットは 10 分後に期限切れになります。ページのテキスト全体が必要な場合にのみ --full を使用してください。
ブラウザーデーモン
直接呼び出すと、デフォルトでローカルデーモンを使用し、ブラウザーセッションを維持します。
{baseDir}/web-search.js --daemon status
{baseDir}/web-search.js --daemon start
{baseDir}/web-search.js --daemon stop
{baseDir}/web-search.js --daemon restart
{baseDir}/web-search.js --no-daemon --url https://example.com
トラブルシューティング
1 つのページがブロックされても、サイト固有の通常の失敗として扱ってください。1 回再試行するか、別の検索結果を使うか、ブラウザーの状態を変更する前に直接 URL を試してください。
タイムアウト、デーモンエラー、または複数回の試行にわたるブロックが繰り返し発生する場合:
{baseDir}/web-search.js --daemon statusを確認します。{baseDir}/web-search.js --daemon restartを実行して、再試行します。- ブロックが続く場合は、ステータス出力の
health.profileDirを確認します。デーモンを停止し、その隠しスキルプロファイルディレクトリのみを削除してから、デーモンを再起動します。これにより、ユーザーの通常のブラウザープロファイルに触れることなく、古くなった Cookie とブラウザーストレージがリセットされます。
1 回ブロックされただけでプロファイルを消去しないでください。プロファイルのリセットは、失敗が続く場合の最終手段です。
レポート
実際に検索または取得した URL を情報源として使用してください。ウェブ上の情報をもとに回答する際は、それらの URL を引用してください。