mcpField
W
Wigolo

Wigolo

ローカル
knockoutez.github.io検索5.5k4 日前に更新

Wigolo について

Wigolo は AI エージェント向けのローカルファースト Web ツールで、検索、取得、クロール、抽出、リサーチの機能を提供します。コーディングエージェント向けの MCP サーバーとして動作するほか、REST API や SDK からも利用できます。コアツールは API キーを必要とせず、データは ~/.wigolo/ に保存されます。

主な機能

  1. 01複数エンジンによる Web 検索と結果スコア
  2. 02ヘッドレスブラウザへの自動切り替えによるページ取得
  3. 03robots.txt に従う複数ページのクロール
  4. 04ページからの構造化データ抽出
  5. 05変更検出を備えたローカルキャッシュ

活用シーン

  1. 01コーディングエージェントへのリアルタイムな Web 検索とページ取得の提供
  2. 02セルフホスト型エージェントから REST 経由で Web ツールを呼び出す
  3. 03複数の情報源をもとに出典付きのリサーチレポートを作成する

MCP 対応

本プロジェクトは MCP サーバーであり、npx -y wigolo により MCP クライアントに登録して、search、fetch、crawl、extract などの Web ツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"wigolo": {
"command": "npx",
"args": [
"-y",
"wigolo"
],
"env": {
"YOUR_API_KEY": "<YOUR_API_KEY>"
}
}
}
}
起動コマンドnpx -y wigolo
設定が必要な環境変数
YOUR_API_KEYシークレットYour API key for the service

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmwigolo0.2.1

ツール

10

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
urlstringはい取得する URL
render_jsenumいいえJavaScript のレンダリングモード(デフォルト:auto)auto | always | never
use_authbooleanいいえ保存済みの認証情報を使用します(デフォルト:false)
max_charsnumberいいえ返す最大文字数(強制的に切り詰め)
max_content_charsnumberいいえMarkdown を段落または見出しの境界で N 文字にスマートに切り詰め、[... content truncated] マーカーを付加します。AI エージェントでは max_chars より優先して使用してください。
sectionstringいいえ見出しテキストで特定のセクションを抽出します
section_indexnumberいいえセクション一致のインデックス(デフォルト:0)
screenshotbooleanいいえスクリーンショットを撮影します(デフォルト:false)
headersobjectいいえ追加の HTTP ヘッダー
force_refreshbooleanいいえキャッシュをバイパスし、ネットワークから最新のコンテンツを取得します。頻繁に更新されるページ(ニュース、変更履歴、ダッシュボード)で使用します。
max_tokens_outnumberいいえ出力全体のトークン予算上限です。cl100k-base BPE を使用します。OpenAI 以外のトークナイザーでは、カウントに約 5~15% のずれが生じる場合があります。max_tokens_out と max_chars の両方が設定されている場合は、max_tokens_out が優先されます。
include_full_markdownbooleanいいえレスポンスに Markdown 本文全体を含めます。複数結果を返すツールではデフォルトは false で、証拠の抜粋のみを返します。true に設定すると全体を含めます。
citation_formatenumいいえ引用の表示形式。'numbered'(デフォルト)はインラインの [N] マーカーを使用し、'json' は citations[] 配列を返し、'anthropic_tags' は <source id='...'> タグで出典を囲みます。numbered | anthropic_tags | json
actionsarrayいいえコンテンツを抽出する前に実行するブラウザー操作の順序。指定するとブラウザーでのレンダリングが強制されます(HTTP を優先するルーティングをバイパスします)。
modeenumいいえcache=HTTP のみ。古いキャッシュも使用します。default=JS 検出を行う標準的な取得。stealth=ブラウザーで完全にレンダリングします。cache | default | stealth

詳細

wigolo — エージェント向けの頼れるウェブ

AI エージェント向けのローカルファーストなウェブインテリジェンス — API キー不要、クラウド不要、従量課金なし。

対応  Claude Code · Cursor · Codex · Gemini CLI · OpenCode · VS Code · Windsurf · Zed · Antigravity
さらに  LangChain · CrewAI · LlamaIndex · Vercel AI SDK · n8n とセルフホスト可能なエージェント · あらゆる MCP クライアント · プレーンな REST

npm npm downloads GitHub stars CI node MCP license status follow on X Discord

Trendshift の wigolo KnockOutEZ%2Fwigolo | Trendshift

スポンサー
TestMu AI

クイックスタート · ツール · wigolo の特徴 · Discord · スポンサー · ベンチマーク · ドキュメント · 使用例 · ライセンス · フィードバック · FAQ

Discord でコミュニティに参加しましょう — 質問、サポート、開発中の機能について話せます。

新機能やアップデートを継続的にリリースしています。wigolo の活用方法や新しい使い方については、X の @yourtowhid をフォローしてください。コラボレーションやフィードバックもこちらからお寄せください · LinkedIn でも発信しています。


wigolo は、ウェブ関連のあらゆる機能を AI エージェントが利用できる単一のインターフェースとして提供します。**検索、取得、クロール、抽出、キャッシュ、類似検索、調査、**自律的な情報収集ループに対応しています。エージェントが動作する場所ならどこでも利用できます。コーディングエージェントのそばで MCP サーバーとして動かすことも、セルフホスト型エージェントが稼働するマシン上で REST/MCP エンドポイントとして動かすことも、SDK を使って独自アプリに組み込むこともできます。コアツールに API キーは不要で、処理するデータが ~/.wigolo/ の外に出ることもなく、エージェントが考える量に応じて料金が増えることもありません。

wigolo のデモ — Claude Code が wigolo を通じて、API キーなしでウェブ上の最新情報について回答
## クイックスタート
npx wigolo init                              # set up the local engine — any system
npx wigolo init --agents=claude-code,cursor  # …or set up + wire your day-to-day agents in one command

macOS、Linux、Windowsで、Node ≥ 20 と約1.5 GBの空きディスク容量が必要です。引数なしの init を実行するとローカルエンジンがセットアップされます。ブラウザーエンジンとオンデバイスモデルがダウンロードされ、ヘルスチェックが実行されて、各コンポーネントの状態が報告されます。--agents を追加すると、指定したエージェントも同じ実行で設定されるため、普段使っているコーディングエージェントを1つのコマンドですぐに使えるようになります。

  • 対応エージェント — --agents には、claude-code · cursor · codex · gemini-cli · opencode · vscode · windsurf · zed · antigravity のいずれかを指定できます(カンマ区切り)。wigolo が MCP 設定と、対応している場合は各エージェント向けの手順を作成します。
  • その他のセットアップ — 任意の MCP クライアント、エージェントフレームワーク、セルフホストのエージェントでは、それぞれの MCP 設定に npx -y wigolo を登録します。インストールガイドには、各クライアント用の正確な設定ブロックのほか、Docker、Homebrew、単一ファイルのバイナリを使う方法も記載されています。
  • 対応エージェントは順次追加 — 対応リストは拡大を続けています。エージェントを追加するPRも歓迎します。CONTRIBUTING.mdをご覧ください。
  • 対話型セットアップ — --interactive はプレーンテキスト形式のフローで、--wizard はターミナル上で完結するフル機能のTUIです。
  • ダウンロードを後回しにする — --no-warmup を指定すると、初回使用時までダウンロードを保留します。コンポーネントのダウンロードに失敗してもセットアップは失敗しません。init は準備できていないコンポーネントと具体的な修正方法を報告し、セットアップを続行します。

init はデフォルトで無人実行されるため、スクリプトやCIでも安全に使えます。セットアップの問題は、エージェントが初めて呼び出す前に、コンポーネントごとのレポートで確認できます。**検索、取得、クロール、抽出、キャッシュ、類似項目の検索はAPIキーなしで利用できます。**いつでも正常な状態か確認できます。

npx wigolo doctor

すべてをきれいに削除するには、npx wigolo config --uninstall --yes を実行します。インストールガイドを任意のAIアシスタントに貼り付けてセットアップを任せることもできます。ガイドは単体で完結するように書かれています。

おすすめ — research と agent 用の無料キー

検索、取得、クロール、抽出、キャッシュ、類似項目の検索は完全にキー不要です。research、agent、および search format=answer は、LLMを使って情報を統合し、出典を付けた回答を作成します。LLMがない場合は、エージェントが回答を組み立てられるように、要約と根拠をそのまま返します。無料のGeminiキーを使えば、完成した回答を得られます。

export WIGOLO_LLM_PROVIDER=gemini
export GEMINI_API_KEY=<free-key>      # grab one at aistudio.google.com/apikey — the free tier is plenty

anthropic · openai · groq など、任意のプロバイダーを利用できます。または、WIGOLO_LLM_PROVIDER=ollama(あるいはOpenAI互換URL)を指定すれば、完全にローカルで、キー不要のまま使えます。シェルまたはエージェントのMCP env ブロックで設定してください。プロバイダー、モデル、キー不要で使えるローカルモデルの選択肢については、設定ガイドをご覧ください。

エージェントに返される内容

すべての検索結果は、エージェントが活用できる根拠です。元の情報源における正確な位置に紐づいた抜粋、エージェントが引用できる引用ID、確認可能なスコアが含まれています(実際の形式を簡略化したもの)。

{
  "results": [{
    "title": "Logical replication - PostgreSQL docs",
    "url": "https://www.postgresql.org/docs/current/logical-replication.html",
    "excerpt": "Logical replication is a method of replicating data objects…",
    "citation_id": "src-1",
    "source_span": { "start": 1042, "end": 1305 },          // byte-exact provenance
    "evidence_score": { "final": 0.86, "semantic": 0.91, "lexical": 0.78, "engine_consensus": 3 }
  }],
  "citations": [{ "id": "src-1", "url": "…" }],
  "freshness_signal": { "published": "2026-05-12", "confidence": "high" }
}

関連性の低い結果は、wigolo独自のスコアリング機能によって不要な情報としてフラグ付けされます。失敗したエンジンは報告され、古いキャッシュにはその旨が示されるため、エージェントは常に根拠の状態を把握できます。各ツールの完全なレスポンス仕様については、ツールリファレンスをご覧ください。

ツール

ツール機能
🔎 search複数の検索エンジンを使ったウェブ検索(18 個の直接アダプター)に、順位統合、ML による再ランク付け、結果ごとの説明可能なスコアを組み合わせます。複数のクエリを並列で幅広く検索するには、配列を渡してください。ドメインや期間を指定したり、完全一致フレーズを検索したり、画像検索結果を返したりできます。
📄 fetch段階的なルーターを通じて URL を 1 つ読み込みます。ボット対策チャレンジや SPA シェルに遭遇すると、プレーンな HTTP からヘッドレスブラウザーエンジンへ自動的に切り替わります。Markdown とメタデータ、リンクを整形して取得します。PDF、単一見出しの section、認証済みセッション、ページ操作(クリック/入力/スクロール/スクリーンショット)に対応します。
🕸️ crawl複数ページをクロールします。BFS、DFS、サイトマップ、またはマップのみの方式を選択できます。ドメインごとのレート制限、robots.txt の遵守、定型部分の重複排除にも対応します。
🧩 extractページから構造化データを取得します。テーブル、メタデータ、JSON-LD、ブランド情報、名前付きスキーマ(Article/Recipe/Product/…)、または任意のカスタム JSON Schema に対応します。
💾 cacheキーワード検索またはハイブリッドなセマンティック検索で、これまでに取得したすべての情報を検索できます。統計情報の確認、キャッシュの消去、変更の検出にも対応します。
🧲 find_similarキーワード検索、セマンティック検索、ライブウェブ検索を 3 方向で統合し、URL またはコンセプトに類似したページを検索します。
🧠 research質問を分解 → サブクエリを並列実行 → 情報源を取得 → 引用付きレポート(またはホスト LLM が作成する構造化ブリーフ)を合成します。
🤖 agent自律的な情報収集ループです。計画 → 検索 → 取得 → 抽出 → 合成を、ステップログ、時間制限、任意の出力スキーマとともに実行します。
🔁 diff + ⏱️ watch前回の訪問からページで何が変わったかを正確に確認できます。必要に応じて再チェックし、変更を Webhook に送信します。

すべてのツールは、ターミナル(wigolo search "…" --json)、NDJSON パイピングに対応した対話型シェル(wigolo shell)、REST、SDK からも実行できます。CLI リファレンスをご覧ください。すべてのパラメーターを網羅したツールごとのガイドはdocs/tools.mdに、実行可能な例はexamples/にあります。

特長

wigolo は有料ツールの無料版ではなく、有料ツールに匹敵する機能を備えるように構築されています。エージェント向けに特化したウェブレイヤーとして、エージェントが直接呼び出す MCP と REST のインターフェースと、有料サービスが料金を課す検索・抽出品質を提供します。その特長は次のとおりです。

  • エージェント向けに構築。 1 回の MCP 呼び出しで、複数の検索エンジンにまたがる多数のクエリを並列実行します。これは逐次的なホスト側ツールループでは再現できません。すべての結果に、透明性のある結果ごとのスコアが付与され、出力は予算を考慮します。
  • 出力に誠実。 古いキャッシュ、取得の失敗、バックエンドの性能低下、出力の切り詰めを結果に明示します。ボット対策が施されたページを読み取れない場合は、チャレンジページをコンテンツとして返すのではなく、blocked_by_challenge と明示したエラーを返します。
  • クエリごとの費用は 0 ドル。再検索も無料。 デフォルトの検索では、直接アダプターを通じて公開検索エンジンを利用します。再ランカーと埋め込みモデルはデバイス上で実行されます。すべての応答がキャッシュされるため、同じ内容を再度問い合わせても即座に結果が返り、費用もかかりません。
  • デフォルトでプライベート。 キャッシュ、埋め込み、モデル、設定はすべて ~/.wigolo/ に保存されます。合成に LLM を使用するよう明示的に選択しない限り、情報が第三者に送られることはありません。

実際の検索結果の例を、詳しく見てみましょう。失敗した検索エンジンと関連性の低い結果も含まれています。それらも回答の一部だからです。

wigolo の検索結果の構成:説明可能なスコアの内訳、ライブ検索エンジンのテレメトリー、表面化した性能低下、自動検出された低品質データ — 実際のクエリをライブで取得した例
## ベンチマーク

4つのツールはすべて同じ中核的な答えにたどり着き、そのうち1つだけが、バイト位置で固定された証拠を逐語的に返しました。

1回のコールドクエリを、単一の Claude Fable 5 セッション内で実行し、4つのウェブツール(組み込みの WebSearch、wigolo、Tavily、Exa)に同等の条件で振り分け、証拠だけをもとにエージェントが評価しました。4つすべてが同じ答えと同じトップソースにたどり着き、その同等性は画面上で確認できます。逐語的な抜粋をバイトオフセットで示されるソース範囲に固定して返し、説明可能なスコア内訳と、エンジンごとのリアルタイムテレメトリーも提供したのは wigolo だけです。また、wigolo 自身のスコアラーは、弱い結果を2件ジャンクとして判定しました。クラウドツールにも利点があります。Exa は公式ドキュメントの比較マトリックスを完全に表示しました。自分でもクエリを実行すれば、同じ傾向が確認できます。

Claude Fable 5 を使った実際のクエリにおける wigolo と、組み込みの WebSearch、Tavily、Exa の比較
比較
wigoloFirecrawlExaTavily
複数エンジンによるウェブ検索✅✅✅✅
取得と構造化抽出✅✅✅✅
サイト全体のクロールとマップ化✅✅—✅
バイトオフセットで示されるソース範囲に固定された逐語的な抜粋✅———
結果ごとの説明可能なスコア内訳✅———
永続的なローカルメモリ — 即時再クエリ、オフライン対応✅———
クエリデータを手元のマシンに保持✅———
API キー/アカウント不要必要必要必要
クエリあたりのコスト$0従量課金従量課金従量課金

2026年7月時点の機能状況 — 最新の状況は各ベンダーのドキュメントをご確認ください。

最後の行の差は、エージェントがまとめて何度も問い合わせるため、さらに大きくなります。

料金メーター:従量課金のクラウド API はクエリのたびに料金が増える一方、wigolo は常に0ドル — 料金のイメージ図

エディターの枠を超えて

同じ10個のツールを、用途に合ったインターフェイスを通じて、あらゆる種類のエージェントで利用できます。コーディングエージェントには MCP、それ以外には REST、組み込みには SDK、導入にはフレームワーク用ラッパーを利用できます。

REST API — wigolo serve

1つのプロセスで、MCP トランスポートと並行してプレーン JSON の REST API を公開します。MCP クライアントは不要で、curl だけで利用できます。

wigolo serve                          # 127.0.0.1:3333 — loopback is open; off-loopback requires a token

curl -sX POST http://127.0.0.1:3333/v1/search \
  -H 'Content-Type: application/json' \
  -d '{"query":"local-first software","max_results":5}'

POST /v1/{tool} ですべての10個のツールを利用でき、GET /openapi.json は OpenAPI 3.1 の仕様を返し、/mcp と /sse は同じポートからリモート MCP クライアントにサービスを提供します。ループバック以外にバインドするとベアラートークンが必須になるため、サーバーはデフォルトで安全側に動作します。n8n、Hermes スタイルのアシスタント、または任意のセルフホスト型エージェントから接続できます。→ REST API

SDK — TypeScript と Python

型付きの軽量クライアントです。ローカルモードが組み込まれており、デーモンを自動で検出または起動します。別途 serve を実行する必要はありません。

TypeScript — npm install wigolo-sdk(依存関係ゼロ;Node / Bun / Deno / エッジ対応):

import { createLocalClient } from 'wigolo-sdk/local';

const { client, close } = await createLocalClient();   // reuse a running daemon, or spawn one
const res = await client.search({ query: 'local-first web search', max_results: 5 });
console.log(res.results.map((r) => r.title));
await close();                                          // stops the daemon only if this call spawned it

Python — pip install wigolo(標準ライブラリのみ;同期・非同期に対応):

from wigolo import local_client

with local_client() as client:                          # reuse a healthy daemon, or spawn one
    res = client.search(query="local-first web search", max_results=5)
    for r in res["results"]:
        print(r["title"], r["url"])

→ SDK と組み込みモード

フレームワーク連携

すでにお使いのフレームワークに wigolo のツールを追加できます。キャッシュ、find_similar、research、agent を含む10個すべてのツールを利用できます。これらの機能は、多くのフレームワークのウェブツールには含まれていません。

フレームワークパッケージ利用できる機能
LangChainwigolo-langchain各ツールを BaseTool として利用できるほか、検索/find_similar を使った RAG 用の BaseRetriever も利用可能
CrewAIwigolo-crewaiwigolo_tools() → ツール一式を任意のクルーに渡せます
LlamaIndexwigolo-llamaindex取得/クロール/検索したページをドキュメントとして読み込む BaseReader
Vercel AI SDKwigolo-vercel-ai-sdkgenerateText/streamText 用のツールファクトリー。エッジに適しています

→ フレームワーク連携

Docker
# stdio MCP — wire it into any MCP client as command: docker
docker run -i --rm -v wigolo-data:/data ghcr.io/knockoutez/wigolo

# HTTP server for remote / multi-client use
docker run -p 3333:3333 -v wigolo-data:/data \
  -e WIGOLO_API_TOKEN=a-long-random-secret \
  ghcr.io/knockoutez/wigolo serve --host 0.0.0.0

slim イメージはモデルをボリュームに遅延ロードします。ghcr.io/knockoutez/wigolo:latest-full はブラウザーエンジンを事前インストールします。バージョン付きリリースでも同じ -full サフィックスが使われます(例:0.3.1-full)。Docker Hub では towhid69420/wigolo としても公開されています。→ インストールとすべての配布チャネル

エージェントスキル

11 個のスキルカタログが、各ツールをうまく操作する方法をコーディングエージェントに教えます。init でインストールされ、wigolo skills add|list|remove で管理できます。→ スキル

セルフホストする場合の注意点が 1 つあります。チャレンジで保護されたサイトの中には IP の評判を評価するものがあるため、データセンターの IP では、自宅の接続なら通過できるブロックを突破できないことがあります。wigolo はそのような失敗を明示します。また、セルフホスティングガイドでは、オプトイン方式のプロキシによる解決策を説明しています。

Star 履歴

時間の経過に伴う wigolo の GitHub スター数

GitHub API から毎日更新されます。wigolo が役に立ったら、⭐を付けてください。

アーキテクチャ

単一の Node プロセスが MCP(stdio 経由の JSON-RPC)を処理します。重い処理はすべてローカルで遅延ロードされるため、キーなしのインストールでは、使用しない機能にコストはかかりません。

flowchart TD
    A["🤖 AI agent<br/>any MCP client · REST · SDK"]
    A -->|MCP over stdio| B["<b>wigolo</b><br/>10 tools · dynamic instructions<br/>in-process browser pool + cache + models"]

    B --> C{"Tool layer"}
    C --> T1["search · fetch · crawl · extract"]
    C --> T2["cache · find_similar · research · agent"]

    T1 --> F["⚙️ Fetch router<br/>tiered escalation, learned per domain"]
    T1 --> S["⚙️ Search<br/>18 engines → rank fusion → ML rerank<br/><i>explainable evidence score</i>"]
    T2 --> DB[("🗄️ Local cache<br/>keyword + vector index")]
    T2 --> ML["🧠 On-device ML<br/>embeddings + reranker"]

    F -.->|optional| LLM["☁️ LLM<br/>synthesis only · opt-in"]
    S -.->|optional| SX["🔀 Aggregator backend<br/>opt-in legacy / hybrid"]

    F --> WEB["🌍 Public web"]
    S --> WEB

    style B fill:#7c3aed,stroke:#5b21b6,color:#fff
    style WEB fill:#0ea5e9,stroke:#0369a1,color:#fff
    style DB fill:#1e293b,stroke:#334155,color:#fff
    style LLM stroke-dasharray: 5 5
    style SX stroke-dasharray: 5 5
  • モデルよりコードを優先。 決定論的な処理は LLM に任せません。正規化、順位融合、重複排除、スキーマ照合などが該当します。モデルは判断が必要な処理に限り、オプトイン方式で、リクエストごとに上限を設けて使用します。LLM が補完したフィールドはソースと照合し、ソースに存在しない場合は null にします。
  • シグナル駆動のルーティング。 フェッチの段階を進めて実ブラウザーに切り替えるのは、ドメインの推測ではなく、SPA の兆候、チャレンジページの本文、コンテンツの不足といった観測可能なシグナルに基づきます。ドメインごとに学習し、サイトで不要になれば学習を解除します。wigolo tune list で学習内容を正確に確認できます。
  • ブラウザーと同じ方法でページを読み取ります。 段階的なフェッチでは、インタースティシャルのチャレンジが終わるまで待機し、ドメインごとにクリアランスを再利用します。robots.txt を遵守し、ドメインごとのレート制限を適用し、研究用途に適した規模で動作します。ブロックが解除されない場合は、失敗の内容を明示して報告します。

設定

クリーンインストール後は、そのまま使用できます。次の 3 つの設定で出力品質が向上します。

# 1. Synthesis — the biggest lever (research / agent / search-answer write real prose)
export WIGOLO_LLM_PROVIDER=gemini                   # or anthropic / openai / groq / ollama (keyless)
export GEMINI_API_KEY=<your-key>

# 2. Wider retrieval funnel
export WIGOLO_SEARCH=hybrid                         # core engines + aggregator fallback
export WIGOLO_GITHUB_TOKEN=...                      # GitHub code search 10 → 30 req/min

# 3. Land more fetches, stay warm
export WIGOLO_TLS_TIER=auto                         # per-domain learned fetch hardening
export WIGOLO_EAGER_WARMUP=1                        # pay the ~1s model load up front

呼び出しごとに効果のある使い方: 並列に幅広く検索するにはクエリの 配列(["a","b","c"])を使い、重要なクエリには search_depth: "deep" を指定し、ドキュメント検索では include_domains を厳密なフィルターとして使います。完全なリファレンスでは、すべての環境変数、設定ファイルのキー、検索バックエンド、キャッシュ TTL、配信上限を説明しています。設定ガイドをご覧ください。

ドキュメントとサンプル

docs/ — 完全なマニュアル: はじめに · インストールと配布チャネル · 設定 · ツールリファレンス · CLI とシェル · REST API · SDK と統合 · セルフホスティング · エージェントスキル · プラグイン · トラブルシューティングと FAQ · プライバシーとセキュリティ

examples/ — すべて実行可能で、それぞれに README(多くはターミナル録画も)が付属します。ワンショット CLI、NDJSON シェルパイプライン、curl による REST、TypeScript と Python の SDK、Vercel AI SDK ツール、セルフホストした n8n からリモート wigolo への接続、Webhook による監視、独自の検索エンジンプラグインの作成を扱っています。ドキュメントはサイトの wigolo.app/docs でも閲覧できます。

ベータ版とフィードバック

wigolo はパブリックベータです。ここに記載されている機能はすべて動作し、7,600 件のテストスイートで検証されています。安定しており、ベータ版であるのは仕上がりをさらに磨くためです。十分な数の人に使われ、試され、スターを付けられて、v1 と呼ぶにふさわしいものになるまで、ベータ版を続けます。皆さんのフィードバックが今後の方向性を形作ります。報告はすべて確認しており、通常はその日のうちに目を通します。

wigolo が皆さんの環境に欠かせない存在になったら、支援する方法は 3 つあります。⭐ スターを付ける(オープンソースが見つけられやすくなります)、**☕ コーヒーを贈る(オープンソース版が製品の全機能を備えており、その資金は機能制限ではなく開発に充てられます)、またはコードを書いた唯一の開発者に直接届くメール**を送る方法です。

トラブルシューティング

wigolo doctor は、問題のあるコンポーネントと、それを修正するための正確な環境変数またはコマンドを表示します。wigolo doctor --fix はよくある問題を修復し、wigolo verify はすべてのコンポーネントのヘルスチェックを行います。init 中にコンポーネントが失敗しても wigolo の動作には影響しません。init は引き続き終了コード 0 で終了し、コアの検索/取得/クロール/抽出/キャッシュ機能は、モデルもブラウザーもなくても動作します。よくある問題と対処法:

  • ダウンロードが遅い、または失敗する — wigolo warmup --all(または --browser/--embeddings/--reranker)を再実行してください。処理は再開され、失敗時には再試行されます。
  • Linux でブラウザーが起動しない — wigolo warmup --browser を実行して OS ライブラリをインストールしてください(または正確なコマンドが表示されます)。
  • ネイティブビルドエラー/特殊な Node 環境 — LTS の Node 22 または 24、あるいは Node 26(サポート対象。LTS になるまでは Current)を使用してください。
  • プロキシ経由の場合 — USE_PROXY=true と PROXY_URL を設定してください。TLS を検査するプロキシでは NODE_EXTRA_CA_CERTS も追加してください。
  • エージェントが毎回の呼び出しで許可を求める — クライアントでツールを許可してから、クライアントを再起動してください。ルールはセッション開始時に読み込まれます。詳細。

完全なガイドでは、症状ごとの修正方法、「X が失敗した場合も動作する機能」の一覧、プラットフォームに関する注意事項(linux-arm64 を含む)、オフラインでのインストール方法を説明しています:docs/troubleshooting.md。

FAQ

無料ですか?何か裏がありますか?

意図的に、裏はありません。コストのかかる処理(ランキング、埋め込み、ブラウザーエンジン)はお使いのハードウェア上で実行されるため、クエリごとの費用を回収する必要も、利用量を計測する理由もありません。商用ライセンスとスポンサーによって運営されており、AGPLにより、クローズドなホスト型製品へ移行することは法的に防がれています。

品質は本当に有料サービスと同等ですか?

上記のベンチマークセクションは、再現可能な4者同時実行のライブベンチマークです。日常的なエージェントのクエリでは同等の結果が得られ、有料ツールは一部の高度な抽出が必要なケースで優位に立ち、クロールではwigoloが最も強みを発揮します。すべての結果にスコアが表示されるため、誰かの言葉を鵜呑みにする必要はありません。

公開検索エンジンにブロックされたり、使えなくなったりしませんか?

まさにその状況を想定して設計されています。18のエンジンをランクフュージョンで統合しているため(どれか1つが失敗しても結果への影響はわずかです)、ドメインごとの学習機能を備えた段階的な取得方式と、オプションのアグリゲーターへのフォールバックも用意されています。機能が低下したバックエンドは出力で報告され、ローカルキャッシュにより、すでに取得したものは引き続き利用できます。

このようなスクレイピングは問題ありませんか?

wigoloは、ブラウザーと同じ方法で公開ウェブを読み取ります。デフォルトでrobots.txtを尊重し、ドメインごとにレート制限を設け、1台のマシン上で1つのエージェントが使う調査用途に適した規模で動作します。意図的に、節度ある運用を重視しています。

仕事で使えますか?

はい。企業として、またはwigoloを使って商用製品を開発する場合は、商用ライセンスを取得するか、プロジェクトをご支援ください。LICENSING.mdをご覧ください。

なぜディスク容量が1.5 GB必要なのですか?

これはデバイス上で動作する頭脳です。ブラウザーエンジン一式に加え、クラウドサービスが自社側で実行し、料金を請求するランキングモデルと埋め込みモデルが含まれます。ディスクに保存した後は、すべてのクエリで無料で利用できます。

利用できる場所

Homebrew、curl | sh、および単一ファイルのバイナリについては、インストールガイドをご覧ください。1台のマシンでは配布経路を1つだけ使用してください。どの経路も~/.wigoloを共有します。

スポンサー

wigoloの保守を支え、誰もが無料で利用できるようご支援くださっているスポンサーの皆様に感謝します。ご支援はすべて開発に役立てられます。

TestMu AI

TestMu AI(旧LambdaTest)は、18,000社を超える企業から信頼されている、世界初のフルスタック型エージェントAI品質エンジニアリングプラットフォームです。

wigoloは誰でも無料で利用できます。 ご自身または所属企業で保守を支援していただける場合、スポンサーをさらに募集しています。**[email protected]**までご連絡いただくか、スポンサー特典とSPONSORS.mdの規約をご覧ください。Buy Me a Coffeeでの単発のご支援も歓迎します。

コントリビューション

バグ報告、機能リクエスト、PRを歓迎します。**CONTRIBUTING.md**をご覧ください。ツールハンドラーは薄く保ち、テストを追加し、PRを作成する前にテストスイートを実行してください。カスタム検索エンジンや抽出器を作成する場合は、プラグインシステムから始めるのがおすすめです。約100行で検索エンジンを追加する方法をご覧ください。テンプレートはexamples/plugin-search-engineにあります。

ライセンス

**GNU AGPL-3.0に基づく無料のオープンソースであり、今後もその方針を維持します。企業の方、またはwigoloで収益を得ている方は、商用ライセンスを取得するか、プロジェクトをご支援ください。それがメンテナンスを続ける支えになります。LICENSING.md**をご覧ください。

脆弱性の報告については**SECURITY.mdを、名称の使用についてはTRADEMARK.md**をご覧ください。


wigoloはオープンソースで無料の、積極的にメンテナンスされているプロジェクトです。 従量課金の検索費用を節約できたなら、⭐を付けたり、問題を報告したり、**☕ コーヒー**をご支援いただくことで、持続的な運営を支えていただけます。

@KnockOutEZが開発・メンテナンスしています · [email protected] · X · LinkedIn

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。