Argo:AI エージェント向けの統合検索と証拠検証

中文 · English · 日本語 · 한국어 · Español

紹介 · 比較 · 証明 · 仕組み · 導入 · 機能 · 設定 · 更新

license python version engines mcp

> **これは taxueseek の DeepSeek Harness プラグイン群のひとつ**。仲間たち:[dsh-files](https://github.com/taxueseek/dsh-files)(ファイル送信・ドキュメント読取) · [dsh-snippets](https://github.com/taxueseek/dsh-snippets)(スニペットお気に入り) · [dsh-healthcheck](https://github.com/taxueseek/dsh-healthcheck)(読み取り専用ヘルスチェック) · [dsh-plugin-guard](https://github.com/taxueseek/dsh-plugin-guard)(プラグインセキュリティ監査) · [taxue-dsh-artisan](https://github.com/taxueseek/taxue-dsh-artisan)(プロンプト逆引き&マルチプロバイダー画像生成)—— 全プラグインは[プロフィール](https://github.com/taxueseek)へ ## モデル内蔵検索 / AI 検索 / 横断検索より強い点 > 要するに:前三者は **人** が情報を探すためのもの。Argo は **Agent** が検索と検証を一本でやるためのもの。差は UI ではなく成果物——人向けの要約ページやリンク一覧対、Agent が並べ替え・再検証でき、文脈を膨らませない証拠。

左:人向けの 3 種の既定検索。右:Agent が吸収できる Argo の証拠 JSON

| 次元 | モデル内蔵検索 | AI 検索(要約型) | 横断検索 / 検索エンジン | **Argo** | |------|----------------|-------------------|-------------------------|----------| | 結果の形 | つなぎ合わせた長文 | 人向け要約ページ | SERP リンク一覧 | **コンパクト JSON:証拠候補 + 信頼度分解** | | 垂直の問い(相場 / 化学式) | 汎用ウェブ | 汎用ウェブして要約 | 汎用ウェブ | **垂直ソース直結、答え型** | | 証拠の信頼度 | スコアなし | 構造化スコアなし | スコアなし | **selection · absorption · freshness · 合意** | | 同じクエリ | 毎回ネットワーク | 毎回ネットワーク | ページキャッシュ | **二層キャッシュ(メモリ + SQLite)、ホットクエリ約 10ms** | | コスト制御 | 制御不能 | 1 回が高い | 無料だが手間 | **予算モード、無料優先、Key はすべて任意** | | 多言語 | モデル任せ | モデル任せ | エンジン任せ | **言語検出 + エンジン言語パラメータ + 多言語ルーティング** | > 仕組みとして Argo は検索を **証拠パイプライン** として扱う:言語検出 → ドメイン経路 → 多エンジン召回 → RRF 融合 → 証拠速評。Agent が並べ替え、`fetch` で核验し、文脈に収まる材料を返す。 --- ## 2026 年、検索で何が変わったか 1. **リンクから証拠へ。** エージェントには並べ替え可能・検証可能・コンテキストに収まる構造化データが必要 — Argo は信頼度内訳付き JSON を返す。 2. **コンテキストが第一コスト。** エージェントプロファイルは 1 回約 3.7KB、フィールドとバイト予算はゲートで固定。 3. **サイトは AI 向け資料を備え始めた。** llms.txt と `.md` 直出しが主要ドキュメントサイトに普及 — フェッチチェーンはレベル 0 で自動探知、r.jina.ai リーダーもfallback。 4. **無料オープン生態系で足りる。** 政府・学術・標準・セキュリティの公開 API とキーレス エンジンで大部分をカバー(198 ソースが無設定)。 5. **品質は測定可能。** ランキング金標・融合利得アブレーション・負のルーティング制御。 > v2.8.9 はこの全てを実装:237 ソース / 92 ドメイン / 198 無設定。 --- ## これは何か **Argo は AI エージェント向けの多言語検索インフラです。** 現実の検索は「1 言語 + 1 検索ボックス」ではありません。A 株の株価を聞く人もいれば、World Cup を聞く人も、日本語でアニメを探す人も、IMDb で監督を調べる人もいます。Argo の出発点はシンプルです——**領域・言語・意図に応じて経路を選び**、適切なソースへ問題を届け、常に一般的なウェブタイトルを浚うだけにはしない。ウェブ検索とローカルファイル検索を一体で使えます。 > 出力は「リンク一覧」ではなく **証拠候補 + 信頼度分解** です。経路が正しければ、証拠が立ちます。 ### 「検索 API を一枚包んだだけ」との違い | よくあるやり方 | Argo | |----------------|------| | 1 エンジン・1 Key に固定 | 多エンジン自動ルーティング、無料優先・予算制御 | | 何でも汎用ウェブ検索 | **垂直ソース優先**:相場・映像・スポーツ・マクロ・化学など答え型の結果 | | 中英だけ最適化 | **言語検出 + エンジン言語パラメータ + 言語横断フォールバック** | | スニペット要約で終了 | 選択閾値 × 証拠密度 × 鮮度 × 多ソース合意 | | 1 エンジン障害で全体停止 | サーキットブレーカ、負キャッシュ、段階的復旧(垂直汚染を防止) | | 毎回ネットワーク | 二層キャッシュ(メモリ + SQLite)、ホットクエリ約 10ms | | 日常も研究も同じ遅さ | **日常はエンジンを絞り、研究で広げる** | | 長い JSON で文脈が膨張 | MCP 応答をコンパクト化、snippet 制御可 | --- ## 聞き方に合わせたルーティング

4 つの実ルート:金融・映像・多言語・地理

| こう聞くと | だいたいこう動く | |------------|------------------| | python asyncio error handling | プログラミング QA ドメイン → StackOverflow/StackExchange 公式 API、スコアと採答マーカー付き | | AAPL / 米株プレマーケット | 米株ドメイン、A 株と分離 | | 肖申克的救赎 主演 / Inception director | 映像ドメイン → IMDb など | | 梅西 俱乐部 / 库里 球队 | スポーツ → TheSportsDB など | | 埃菲尔铁塔在哪 / where is Eiffel Tower | 地理エンティティ → OpenStreetMap など | | NASA founding year / 国务院职能 | 組織 → Wikidata など | | 周杰伦 专辑 / Taylor Swift album | メディア → iTunes など | | アニメ おすすめ / 한국 영화 추천 | 日/韓を検出 → 言語に合うソース、中国語専用サイトを避ける | | 米国 CPI、日本 インフレ率 | マクロ;国別振り分け(自国の一次ソース優先) | | log4j CVSS / nodejs 22 end of life | セキュリティ → NVD 公式;ライフサイクル → endoflife.date | | attention is all you need | 学術 → arXiv/OpenAlex/CrossRef のメタデータと DOI リンク | | 阿司匹林 分子式 | 化学 → PubChem 系 | | 台積電バリュエーション議論(深掘り) | サブ問題分割 + 並列ソース、垂直を boost | --- ## 仕組み

クエリ → 言語とドメイン → 多エンジン → RRF → 証拠 → 統一 JSON

``` クエリ ├─ 意図の曖昧さ解消(任意) ├─ クエリ書き換え(任意;ルーティングは元の意図を見る) ├─ 言語検出 + 言語嗜好 ├─ ルート(ドメイン規則 + TF-IDF + 予算 + 言語補完 + ホットパスキャッシュ) ├─ 多エンジン召回(ブレーカ / 負キャッシュ / 並列) ├─ 空結果の段階復旧(緩和 → 同族/汎用 → 言語横断;汚染防止) ├─ RRF 融合 + 任意リランク ├─ 証拠の速評(権威 · 密度 · 鮮度 · 合意) └─ 統一 JSON(engine_outcomes / recovery 含む) ``` ### 証拠スコア(簡易) ``` selection ≈ ドメイン権威。SERP / リダイレクト殻は大きく減点 absorption ≈ 数字 / 定義 / 比較 / 開示などの証拠密度 freshness ≈ 公開時刻(「2015 年以来」のような歴史比較年は無視) 総合 ≈ 0.40·selection + 0.35·absorption + 0.15·freshness + 0.10·エンジン分 ``` 結果には `selection`、`absorption`、`credibility_fast`、`evidence_flags` などが付き、エージェントが直接並べ替えできます。 ### エージェント利用の規律(推奨) 1. **高影響の問い**(ポジション、安全、真偽):search → 速評を見る → top を `fetch` → 結論 2. **数字**:计算方式(定義・範囲)を明示し、矛盾は並列表示、無理に合成しない 3. **SERP / リダイレクト**:本文ソースにしない 4. **SNS**:世論・物語として扱い、事実の真値にしない 5. **ファクトチェック**:ソース / 比較 / 主体など層化したクエリを足す --- ## クイックスタート どれか 1 つで十分です。**インストールの来源は GitHub のみ**(`npx github:taxueseek/argo` または `install.sh`)、現在推奨 **v2.8.9**。**`npm install argo-search` は使わないでください**——npm registry 上のそれは**非公式の古い v1.0.1**(本リポジトリ外、機能不足、更新されない)。本パッケージは `private: true` で npm 誤公開を防ぎます。 **ゼロ設定で動く**:API Key なしなら無料エンジン + ローカル `local_*`。Key があるソースは品質が上がりやすく、無いものは自動スキップ。 ### 方法一:インストールスクリプト(本機長期利用向け) ```bash curl -fsSL https://raw.githubusercontent.com/taxueseek/argo/main/scripts/install.sh | bash ``` ホームと Skill リンク指定: ```bash curl -fsSL https://raw.githubusercontent.com/taxueseek/argo/main/scripts/install.sh \ | bash -s -- --home "$HOME/.local/share/argo" --link "$HOME/.claude/skills/argo" ``` 確認: ```bash python3 ~/.local/share/argo/scripts/search.py "python asyncio error handling" --json python3 ~/.local/share/argo/scripts/search.py --list-engines ``` ### 方法二:GitHub から MCP(エージェントへ即接続) **Node.js 18+** と **Python 3.9+** が必要。初回: ```bash pip3 install pyyaml ``` ```bash npx -y github:taxueseek/argo ``` クライアント設定例(Claude Code / Cursor / Kimi など): ```json { "mcpServers": { "argo": { "command": "npx", "args": ["-y", "github:taxueseek/argo"] } } } ``` より安定・Node 不要:方法一で入れた後、ローカル Python を指す: ```json { "mcpServers": { "argo": { "command": "python3", "args": ["/path/to/argo/scripts/mcp_server.py"] } } } ``` Python が特殊なパスのとき:`export ARGO_PYTHON=/path/to/python3`(npx 入口のみ参照)。 ### DeepSeek Harness 一行プラグイン DeepSeek Harness では 2 通り: ```bash # A:mcp__argo__* ツール 12 個(メインパッケージ bundle、MCP 全量と同じ) dsh plugin --profile web add "github:taxueseek/argo" # B:検索ツール + wide_research 並列研究オーケストレーション(サブパッケージ) dsh plugin --profile web add "github:taxueseek/argo#main&path:packages/dsh-plugin" ``` インストール後に `dsh web` を再起動。詳細は `packages/dsh-plugin/`。 ### 方法三:Release ソースパッケージ [Releases](https://github.com/taxueseek/argo/releases) から最新の **`argo-x.y.z.tar.gz`** を入手(`x.y.z` は最新リリース番号に読み替え): ```bash tar -xzf argo-x.y.z.tar.gz cd argo-x.y.z pip3 install pyyaml python3 scripts/search.py "Python asyncio" --json python3 scripts/mcp_server.py ``` ### 方法四:git clone(開発 / ソース改変) ```bash git clone https://github.com/taxueseek/argo.git cd argo pip3 install pyyaml bash scripts/install.sh --link ~/.claude/skills/argo # 任意 python3 scripts/search.py --list-engines ``` ### 方法五:Skill ディレクトリへ(シンボリックリンク、単一来源) ```bash python3 scripts/link_source.py --to ~/.claude/skills/argo python3 scripts/link_source.py --to ~/.agents/skills/argo cp installs.local.yaml.example installs.local.yaml python3 scripts/link_source.py python3 scripts/link_source.py --check ``` ### 方法六:Python ライブラリとして ```python import sys sys.path.insert(0, "/path/to/argo/scripts") from search import super_search result = super_search("Python asyncio", n=5, mode="fast") for item in result["results"]: print(item["title"], item.get("credibility_fast"), item["url"]) ``` ```bash # bin/argo を PATH に入れた場合 argo search "Python asyncio" argo research "2026 公募ファンド保有構造" argo evidence "検証したい主張" ``` --- ## 対応プラットフォーム | プラットフォーム | 接続 | 説明 | |------------------|------|------| | **Claude Code** | MCP / Skill | `npx` または `mcp_server.py`;`link_source.py` 可 | | **Kimi / Grok Build** | MCP Server | 同上 | | **Cursor / Cline / Continue** | MCP | MCP 対応 IDE プラグイン | | **CLI** | `search.py` / `bin/argo` | スクリプト、cron、手動調査 | | **Python プロジェクト** | `from search import super_search` | ライブラリ呼び出し | ### インストール後チェック ```bash python3 --version # 3.9+ が必要 python3 -c "import yaml; print('PyYAML OK')" python3 -m pytest tests/test_unit.py -q # 任意 python3 scripts/search.py --list-engines ``` --- ## できること | 機能 | 説明 | 入口 | |------|------|------| | 統合検索 | ルート → 召回 → 融合 → 速評 | `search.py` / `argo_search` | | ローカルファイル検索 | 本機のコード/ノート/記憶(非ネット) | `argo_local_search` | | ローカルテキストプレビュー | ホワイトリスト内プレビュー(fail-closed) | `argo_local_read` | | 再計算 | 制限付きサブプロセスで数値再計算(既定拒否) | `argo_recompute` | | 深掘り調査 | サブ問題、多ソース、ギャップ提示 | `research.py` / `argo_research` | | 信頼度評価 | 権威 / 密度 / 鮮度 / 交差検証 | `evidence.py` / `argo_evidence` | | 意図の曖昧さ解消 | 多義語、ブランド衝突、戦略提案 | `clarify.py` / `argo_clarify` | | ページ取得 | HTTP 優先、必要ならブラウザ | `argo_fetch`(`mode=extract` で構造化) | | スクショ / PDF | 画面キャプチャ、PDF 構造抽出 | `argo_screenshot` / `argo_pdf` | | サイトクロール | 一覧ページの一括取得 | `argo_crawl` | | SNS / 世論 | 微博 / 小红书 / B 站 / Reddit / X など | `argo_social_search` | ### 予算モード | モード | 向き | 振る舞い | |--------|------|----------| | `fast` | 簡単な問い、速度優先 | 無料エンジン優先、有料リランク省略 | | `auto` | 日常デフォルト | コストと品質の折衷 | | `deep` | 調査・総説 | 品質優先、エンジン増可 | | `budget` | 枠が厳しい | クォータ制御、使い切ると劣化 | ### 現時点の能力概要(v2.8.9) - **ローカルデータ融合(v2.8.4 新)**:研究作業パッケージに `file_inputs`(手元一次データ、sha256/血統を登記)+ `recompute`(サンドボックス再計算);dossier は `local_sources` を出す - **MCP 一発注入(v2.8.4 新)**:`argo mcp inject` で Claude Code / Cursor / Windsurf / Codex / OpenCode / Cline(アトミック書き込み + バックアップ + 可逆。来源 `mcp/clients.yaml`) - **構造化検索の強化(v2.8.4 新)**:クエリ正規化 + 変体 + 複雑さゲート;SNS 構文優先;TF-IDF は中国語エンジンを捨てた後も候補を見る;`--include-local` - **Keenable(v2.8.4 新)**:汎用ウェブ検索エンジン追加(L1 宣言的 HTTP、無料体験、`ARGO_KEENABLE_API_KEY`) - **237 ソース、92 ドメイン**(198 は設定不要):一般ウェブ + 金融 / マクロ / 映像 / スポーツ / 地理 / 組織 / メディア / 化学 / 学術 / コード(来源:`config.yaml`) - **12 の MCP ツール**:検索、研究、証拠、曖昧さ解消、取得、スクショ、PDF、SNS、ローカル、クロール、ローカルプレビュー、再計算 - **多言語検索**:中・英・日・韓・キリル・タイ・アラビア・ヘブライ・ギリシャ・デーヴァナーガリーなど。ルーティングとエンジンパラメータが言語に追従。非中国語クエリは知乎 / 搜狗微信 / A 株スナップショットなど中国語専用源を避ける - **垂直復旧の門禁**:空結果復旧で pypi / npm / 速報などを映像・スポーツへ「混ぜない」 - **日常は速く、研究は厚く**:`engine_policy` で日常 combo を締め、deep / research で長尾を開放 --- ## エンジンとルーティング 設定上およそ **218** ソース、**89** ドメイン(`config.yaml` と `--list-engines` が基準)。 ### 直結・垂直(抜粋) | エンジン | 用途 | コスト傾向 | |----------|------|------------| | anysearch / duckduckgo | 一般 / 技術 | 無料 | | sina_quote / tencent_quote / eastmoney | A 株 / 資金 | 無料 | | finviz / seeking_alpha | 米株・海外金融 | 設定次第 | | imdb / itunes / thesportsdb | 映像 / 音楽 / スポーツ | 主に無料 | | local_openstreetmap / wikidata / wikipedia | 地理 / 組織 / 百科 | 無料 | | arxiv / semantic_scholar / openalex | 学術 | 主に無料 | | pubchem / gbif / rfc_editor | 化学 / 種 / 標準 | 無料 | | github / stackoverflow / pypi / npm | コードとパッケージ | 設定次第 | | byted / bocha / metaso / octen | 中国語ウェブ / AI 検索 | API / 低コスト | | zhihu / wechat_sogou | 中国語意見 / 公式アカウント | API / 無料 | | tavily / felo / exa | 国際 / 意味検索 | 有料または枠 | | twitter / reddit / xiaohongshu / bilibili / weibo | SNS UGC | 無料(一部ログイン) | ### ローカルゼロコスト層(`local_*`) 独立した SearXNG は不要。主経路はプロセス内 HTML / RSS / JSON 解析(`local_bing`、`local_sogou`、`local_google`、`local_arxiv` など)。**多言語クエリ**ではエンジンの言語パラメータ(例:Bing `setlang`)を動的に書き換え、RRF 融合に参加します。 --- ## 使用例 ### 金融 ```bash python3 scripts/search.py "python asyncio error handling" --explain # 典型:stock_query → 相場スナップショット ``` ### 学術 ```bash python3 scripts/search.py "transformer attention mechanism paper" --json # domain は academic になりやすく、arxiv などを含む ``` ### 研究と検証 ```bash python3 scripts/research.py "2026 公募ファンド第2四半期 保有構造" --depth deep --json python3 scripts/search.py "同一クエリ" --json | \ python3 scripts/evidence.py "同一クエリ" --stdin --json ``` ### MCP ツール一覧(12) | ツール | 用途 | |--------|------| | `argo_search` | 統合検索 | | `argo_local_search` | ローカルファイル(非ネット) | | `argo_local_read` | ホワイトリスト内テキストプレビュー(fail-closed) | | `argo_recompute` | 制限付きサブプロセス再計算(既定拒否、要認可) | | `argo_research` | 深掘り研究(social-sentiment モード含む) | | `argo_evidence` | 信頼度評価 | | `argo_clarify` | 意図の曖昧さ解消 | | `argo_fetch` | スマート取得(`mode=extract` で構造化) | | `argo_crawl` | サイトクロール | | `argo_screenshot` | 画面キャプチャ | | `argo_pdf` | PDF 抽出 | | `argo_social_search` | 多プラットフォーム SNS(`mode=sentiment`) | --- ## インストールと設定 ### 環境要件 | 項目 | 要件 | |------|------| | Python | 3.9+(CLI と MCP コア) | | 依存 | `pip install pyyaml`(唯一のハード依存) | | Node.js | **`npx` 入口のみ** 18+ | | SearXNG | 不要(内蔵ローカルエンジン) | ### API Key(すべて任意) 未設定なら該当エンジンをスキップし、無料がバックストップ。**環境変数を使い**、本物の Key をリポジトリや Issue に書かないでください。 ```bash # 推奨(品質向上) export TAVILY_API_KEY="your_key" export BOCHA_API_KEY="your_key" export METASO_API_KEY="your_key" export ZHIHU_ACCESS_SECRET="your_key" # 任意 export BRAVE_API_KEY="your_key" export FELO_API_KEY="your_key" export GITHUB_TOKEN="your_key" export WEB_SEARCH_API_KEY="your_key" export ANYSEARCH_API_KEY="your_key" export OCTEN_API_KEY="your_key" export ARGO_KEENABLE_API_KEY="your_key" # 任意;Keenable 無料体験 ``` `config.yaml` には `{ENV_NAME}` プレースホルダのみ。平文の秘密はコミットしません。 ### キャッシュ 既定 SQLite は `config.yaml` の `cache.db_path`(通常 `~/.cache/unified-search/cache.db`)。 | 種別 | おおよその TTL | |------|----------------| | 金融 | 約 5 分 | | ニュース / リアルタイム | 約 10–15 分 | | 一般 | 約 1 時間 | | 研究 / 常緑 | 約 2–24 時間 | | 空結果 | ごく短い(失敗を固定しない) | ### FAQ **API Key なしで使える?** 使えます。ローカル無料エンジンと無料 API が多く、未設定時は自動で無料経路。 **インストールスクリプトと npx の違いは?** スクリプトは本機固定・設定変更・Skill 接続向き。npx は MCP を素早く載せる向き。コアは同じ Python。 **エンジン確認は?** `python3 scripts/search.py --list-engines`、または `--explain`。 **コードが複数コピーされる?** しません。`link_source.py` で単一来源 + シンボリックリンクを推奨。rsync 複製はしない。 --- ## CLI よく使う引数 ``` python3 scripts/search.py [options] クエリ --engine, -e エンジン、既定 auto --max-results, -n 件数、既定 5 --depth, -d fast | balanced | deep --mode fast | auto | deep | budget --no-cache キャッシュを飛ばす --explain ルーティング説明を表示 --json JSON 出力 --timeout, -t タイムアウト秒 --list-engines エンジン一覧 ``` --- ## 設計の取捨 1. **エージェントが吸収できることを先に、リンク数は後。** 2. **無料とローカルを先に、有料は任意の上乗せ。** 3. **失敗は観測可能に**:空結果 / タイムアウト / ブレーカを分け、黙って飲み込まない。 4. **設定駆動でエンジン拡張**、`config.yaml` が単一来源。 5. **単一来源インストール**:リンクし、rsync しない。 6. **SNS を真理庫にしない**;拡張と世論向きで、単独の真値には不向き。 --- ## 向いている用途 - Claude Code / Grok Build / Codex / Kimi など **エージェントの検索バックエンド** - **多言語・多領域**の日常 Q&A:中英日韓 + 金融 / 映像 / スポーツ / 学術 / コード - **再現可能・キャッシュ可能**なスクリプトとパイプライン - ファクトチェック、公開金融情報、エンティティの **多ソース対照** 単独で向きにくいもの:プラットフォーム内の高度なエンゲージメント順位付け、長期運用の最大召回アグリゲータ(外付け SearXNG 主経路は内蔵ローカルエンジンに置換済み)。 --- ## ディレクトリ(簡易) ``` argo/ ├── README.md # 中国語(既定) ├── README.en.md # English ├── README.ja.md # 日本語 ├── README.ko.md # 한국어 ├── README.es.md # Español ├── SKILL.md ├── package.json # npx 入口 ├── bin/argo.js # Node MCP 起動 ├── bin/argo # Python CLI ├── config.yaml # エンジンとドメイン(来源) ├── assets/readme/ # README ビジュアル ├── backends/ ├── mcp/ # 多クライアント MCP 注入の来源(clients.yaml) ├── scripts/ # search / research / mcp / install … ├── sub-skills/local-search/ ├── sub-skills/ego-search/ # ログイン態の専門検索(既定オフ) ├── tests/ └── docs/ ``` --- ## 最近の更新 ### v2.8.9:出力スリム化 + 検索の高速・充実化 + 海外メディアとファクトチェック源 5 個 - **軽量化**:デフォルト出力 −66%(同じ結果を三度書かない);同一クエリ −30%(ルーティング決定キャッシュ);低速回線の待ち時間 −36%(主源が 0.8 秒超えたら自動でバックアップ源を追加起射) - **充実**:リコール +35%、取得レイテンシ −30%;本文構造の保真 0/6 → 6/6(見出し・リスト・表が潰れなくなった);中国語コンテンツが系統的に低品質判定されなくなる - **追加**:ソース 232 → 237(キー不要 194 → 198、全て無料 — The Guardian、France 24、DW、ファクトチェック FactCheck.org / Full Fact の米英両口);死源 gdelt を廃止 - **信頼性**:数字が相互に矛盾する六つの記帳欠陥を修正;六段ファネルで「0 件」がどの層で潰れたか特定可能;オフライン再生ツールで変更効果を当日検証。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.9.md) ### v2.8.8:実ユーザー報告の修正 + 全面高速化 + ソース 232 個 - **修正**:推奨名でキーを設定してもエンジンが黙って 0 件になる問題(#12)、取得チェーンがプロキシを通らず GitHub 等が必ず失敗する問題(#13)——`ARGO_PROXY`・config のドメイン別ルール・標準プロキシ変数がすべて有効になり、`NO_PROXY` を尊重 - **高速化**:コマンド冷起動 2.1s → 0.55s;設定のプロセス間キャッシュ 50–82ms → 16–18ms;毎回の検索に各段の所要時間と予算消費を出力し、どこが遅いか推測不要(`--no-timing` で無効化) - **新規**:ソース 218 → 232(設定不要で使えるのは 184 → 194、すべてキー不要:中国系トレンド・セキュリティ脆弱性・オープンアクセス学術・スキルディレクトリ・Agent 検索)、直答 `argo answer`、Web 観測 `argo watch`、CLI/MCP ツール面の整列 - **安定性**:三 OS の慣例パス(`argo paths` 自己点検を追加)、Python 3.9 対応、沈黙していた劣化を正直に記帳。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.8.md) ### v2.8.7:ソースを 218 に拡充 + 修正一括 - **ソース拡充**:168 → 218 ソース、72 → 89 ドメイン(StackExchange Q&A、DOI メタデータ、脆弱性情報、製品ライフサイクルなど公式ソースを追加)、本文取得の直出チャネルを 3 本追加 - **修正一括**:マルチエンジンルーティング、ゼロ結果時のフォールバック、中国語リダイレクト、ローカル検索の劣化など。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.7.md) ### v2.8.6:検索の高速化 + 多ソース分担 - エンジンレーシング、知乎三ソース分担、言語/学術ディスパッチ拡大、死源ゲート ### v2.8.5:DSH プラグインツールのネイティブ化 + MCP 既定オフ + Windows 対応 - **プラグインツールのネイティブ化**:`argo_search` / `argo_fetch` がネイティブの一等ツールとして登録され、MCP 接続なしで既定使用可能;スキーマは唯一の来源 `mcp_tools.py` から自動生成され、両側で零ドリフト;`argo_research` 以外の 13 ツールは `nativeTools` で随時有効化可能 - **MCP 既定オフ**:3 形態の接続(随時マウントの MCP / 既定入口のネイティブツール / web_search seam);普段は常駐トークン消費ゼロ、14 ツール全量が必要なときは profile patch 1 枚で開く - **Windows 互換**(コミュニティ PR #11):一時パスはシステム temp、GBK エンコード修正、`python3`/`python` の実行時解決、symlink は権限なしで junction にフォールバック、PowerShell 一括インストール `install.ps1` を追加 - **クォータ自己修復**:HTTP 200 に隠れたリモートクォータ枯渇を検出し、ルーティングがそのエンジンを除外してバックアップ源へ切替、次クォータ期間で自動復帰 - **フェッチ全体 deadline**:`ARGO_FETCH_DEADLINE_S`(既定 60s)でフォールバック連鎖の総時間を上限化;429/503 の停止シグナルを尊重;tinyfish レンダリング + `.md` 変体プローブ ### v2.8.4:ローカルデータ融合 + ワンコマンド MCP 接続 - **深掘り研究が手元データを食べられる**:作業パッケージに `file_inputs`(手元の CSV / XLSX / 文献。ハッシュだけ登記、中身は入れない)+ `recompute`(サンドボックス再計算。食い違いはフラグ) - **MCP 接続は手で設定をいじらない**:`argo mcp inject` が Claude Code / Cursor / Windsurf / Codex / OpenCode / Cline に書く(アトミック書き込み + バックアップ + 復元) - **簡単なクエリは安いまま**:正規化 + 複雑さゲート + SNS/プラットフォーム構文優先 + 中国語エンジンを捨てても候補を見続ける - **Keenable** を無料体験のウェブ検索源として追加 - **セキュリティ**:recompute は外部プロセスの出網を遮断;ホストパスはインストール感知 > 詳細は下表と各版の[リリースノート](docs/)。 --- ## 更新履歴 | 版 | 内容 | |----|------| | **v2.8.9** | **出力スリム化 + 検索の高速・充実化 + 海外メディアとファクトチェック源 5 個**:デフォルト出力 15.5KB→5.2KB(−66%、`--envelope` で完全封筒を復元);ルーティング決定キャッシュで同一クエリ −30%;低速回線のディスパッチ −36%(直列ドメインは 0.8 秒超過で自動ヘッジ);取得チェーン五輪の刷新(リコール +35%、レイテンシ −30%、ロングテール P90 −8%)+ 本文構造の復元(見出し/リスト/表の保真 0/6→6/6)+ CJK 品質スコア修正;キー不要新源 The Guardian RSS / France 24 / DW / FactCheck.org / Full Fact(232→237、キー不要 194→198、ドメイン 90→92)、死源 gdelt 廃止;自己整合性欠陥六箇所を修正 + 六段ファネル帰属 + オフライン再生ツール(`scripts/replay_eval.py`)+ ポリシー後デプロイ門禁とシナリオ閾値契約。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.9.md) | | **v2.8.8** | **実ユーザー報告の修正(#12 キー別名の無言失敗、#13 プロキシ非対応の取得)+ 全面高速化 + ソース 218 → 232**:出口ディスパッチを統一(`ARGO_PROXY` / ドメイン別ルール / 標準プロキシ変数、`NO_PROXY` を尊重);キー読み取り 16 箇所を別名チェーンに統一;コマンド冷起動 2.1s→0.55s、設定キャッシュ 50–82ms→16–18ms、QPP 平坦度ゲート早停、`--list-engines --detail` を 152KB→51KB に圧縮;直答 `argo answer` と Web 観測 `argo watch` を追加、キー不要ソース 14 個(中国系トレンド・ライフスタイル/セキュリティ脆弱性/オープンアクセス学術/スキルディレクトリ/Agent 検索)、69 エンジンの分類を補正(`web_general` フォールバック比率 41%→20%、security ドメイン新設);三 OS 慣例パス(`argo paths`)+ Python 3.9 + 有界並列でタイムアウトを実効化;search.py をモジュール分割 3351→2526 行、22 エンジンの関連性ゴールデン、静的欠陥・出力契約門禁。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.8.md) | | **v2.8.7** | **218 ソース / 89 ドメイン + 本文直出 3 チャネル + ルーティング発火規律 + macro ゼロ結果修正**:バッチ 7/8/9 で累計 50 の新ソース(法令/規格/セキュリティ情報/学術/ニュース/エンタメ/エネルギー交通/法務行政)、stackexchange と doi エンジン;取得チェーン第 0 段に llms.txt と `.md` 直出プローブ、r.jina.ai リーダー段を追加;`--engine` カンマ複数指定の修正、tfidf 计算方式と route_reason、負方向ルーティング制御マトリクス、ランキング金標と融合利得アブレーション門禁;中国マクロ照会は国家統計局を前置、全域ゼロ結果リカバリが L3 を解放、救援エンジンを正直に記帳。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.7.md) | | **v2.8.6** | **hedged 競速 + 知乎三源分担 + 宣言的言語ディスパッチ + 到達性ゲート + 学術検索プロトコル**:先頭エンジンに猶予窓を設けた競速(速いエンジンは呼び出し 1 回で済む)、zhihu の全网検索/個人データ接続と餓死防止、サブクエリの言語・学術ディスパッチ(英語源と 17 の学術源を研究収集に接続)、エンジン言語メタデータと到達性ゲート(死に源の可視化)、geo 尾部 −56%、学術検索クエリ構築プロトコル。詳細は [リリースノート](docs/RELEASE_NOTES_v2.8.6.md) | | **v2.8.5** | **DSH プラグインツールのネイティブ化 + MCP 既定オフ + Windows 互換 + クォータ自己修復 + フェッチ deadline**:`argo_search`/`argo_fetch` がネイティブ一等ツールで既定可用(CLI 単発は MCP と同エンジン同ガード、スキーマ単一来源 + ドリフト門禁);3 形態接続、MCP は随時マウント既定オフ;Windows 互換(temp パス / GBK / インタプリタ解決 / junction / `install.ps1`、PR #11);クォータ自己修復ループ(200 業務エラー封筒検出 + ルート除外 + 周期自己修復);フェッチ全体 deadline(`ARGO_FETCH_DEADLINE_S`)+ tinyfish レンダリング + `.md` 変体プローブ;ホットリロード env と状態ディレクトリ単一来源。[リリースノート](docs/RELEASE_NOTES_v2.8.5.md) | | **v2.8.4** | **ローカルデータ融合 + 多クライアント MCP 注入 + 構造化検索 + Keenable**:研究 L1 の手元一次データ(`file_inputs` + `recompute` + `local_sources`);`argo mcp inject`(宣言的 `mcp/clients.yaml`);クエリ正規化 / 変体 / 複雑さゲート / SNS 構文優先 / TF-IDF 修正 / `--include-local`;Keenable(無料体験);セキュリティ強化。[リリースノート](docs/RELEASE_NOTES_v2.8.4.md) | | **v2.8.3** | **多言語ルーティング修正 + プロセス内 anysearch + weighted RRF**:ja/ko が対象言語を返す;独仏西伊は anysearch;weakest-link 降権(論文 2508.01405)。[リリースノート](docs/RELEASE_NOTES_v2.8.3.md) | | **v2.8.2** | **Windows + 証拠セマンティクス統一**:npm `os` 制限撤去;GBK クラッシュ対策の UTF-8;メインパッケージ `dsh.bundle`;`wide_research` 品質門禁。[リリースノート](docs/RELEASE_NOTES_v2.8.2.md) | | **v2.8.0** | **証拠クローズドループ + 求人 v3 + 天気双源**:`fetch_required` / `--verify`;`argo job`;wttr.in + Open-Meteo;Parallel / You.com。[リリースノート](docs/RELEASE_NOTES_v2.8.0.md) | | **v2.7.3** | エンジン層 HttpClient;TF-IDF で 25 垂直を活性化;70 ドメイン TTL;垂直の中英。[リリースノート](docs/RELEASE_NOTES_v2.7.3.md) | | **v2.7.2** | ログイン態の専門検索(ego-search、既定オフ);日韓クエリが中国語エンジンに混ざらない。[リリースノート](docs/RELEASE_NOTES_v2.7.2.md) | | **v2.7.1** | SSRF 強化 + ルーティング健全性の意味修復。[リリースノート](docs/RELEASE_NOTES_v2.7.1.md) | | **v2.6.0** | **多言語検索**(検出 / エンジンパラメータ / 言語横断フォールバック);映像・スポーツ・地理・組織・メディア垂直;recovery 汚染防止;能力族と行列回帰;約 120+ 源。[リリースノート](docs/RELEASE_NOTES_v2.6.0.md) | | **v2.5.1** | 金融/マクロ/化学の答え源を厚く;エンジン階層 + combo 予算;[v2.5.1](docs/RELEASE_NOTES_v2.5.1.md) | | **v2.5.0** | インストールスクリプト + npx;書き換えとルーティング分離;ホットパスキャッシュ;MCP コンパクト | | **v2.4.0** | 低分ルートのフォールバックと SNS 誤吸フィルタ;キャッシュ depth / ソフトヒット;ブレーカと負キャッシュ;`engine_outcomes` | | **v2.2–v2.3** | 証拠二段階、中国語ソース表、content_signals、fetch スタック、エンジン拡充 | | **v2.1** | SNS エンジン層(多プラットフォーム UGC) | | **v1.x** | 名称を Argo に統一、多エンジンルーティングと二層キャッシュ | --- ## 貢献 Issue と Pull Request を歓迎します。ルーティングや証拠ロジックを変えるときはテストを足してください: ```bash python3 -m pytest tests/test_unit.py tests/test_multilingual.py -q python3 scripts/regression_p0p1.py --offline python3 scripts/matrix_search_eval.py --offline python3 scripts/ab_eval_p0p1.py # 任意、オンライン含む ``` コミット前:本物の API Key、本機絶対パス、cookie などを含めないこと。本機 Skill パスは `installs.local.yaml`(gitignore 済み)。 ## License MIT License © 2026 [taxueseek](https://github.com/taxueseek)

README made with beautify-github-readme

--- > 良い検索は、もっと多く見せることではない。自信を持って結論できること——そしてまだ結論してはいけないときを知ることだ。