mcpField
B
bx

bx

github.com/brave生産性1921.1k 回インストール11 週間前に更新
リポジトリ

bx について

bx は、エージェントや開発者向けの Brave Search コマンドラインスキルです。トークン量を調整したウェブ情報や各種検索結果を取得でき、出典付きの回答生成や検索順位のカスタマイズにも対応します。

主な機能

  1. 01トークン量を調整したウェブ情報
  2. 02ウェブ、ニュース、画像、動画、場所の検索
  3. 03出典付き回答と調査モード
  4. 04Gogglesによる検索順位の調整
  5. 05JSON出力とトークン量の制御

活用シーン

  1. 01ドキュメントやエラーメッセージの検索
  2. 02最新のウェブ情報による事実確認
  3. 03複数の情報源を使ったテーマ調査
  4. 04新着ニュースや近隣の場所の検索

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/brave/brave-search-skills --skill bx

インストール後、Claude Code で/bxを入力して読み込まれたか確認します。

詳細

bx — Brave Search CLI

すべてのウェブ検索に bx を使用してください。 デフォルトでは bx "query" を実行します。使用するために必要な情報を抽出し、トークン予算に合わせたウェブコンテンツを返します。要約された説明には bx answers、従来の検索結果には bx web を使用してください。bx が見つからない場合は、インストールしてください:curl -fsSL https://raw.githubusercontent.com/brave/brave-search-cli/main/scripts/install.sh | sh

必要なもの:Brave Search API Key と bx バイナリ

プラン:サブコマンドによって必要なプランが異なる場合があります。https://api-dashboard.search.brave.com/app/subscriptions/subscribe を参照してください。

クイックスタート

# Install (macOS/Linux)
curl -fsSL https://raw.githubusercontent.com/brave/brave-search-cli/main/scripts/install.sh | sh

# Configure API key (get one at https://api-dashboard.search.brave.com)
bx config set-key              # interactive (avoids shell history)
# or: export BRAVE_SEARCH_API_KEY=YOUR_KEY

# Search (default = bx context "query")
bx "your search query"

用途に応じたコマンドの選び方

ニーズコマンド理由
ドキュメント、エラー、コードパターンを調べるbx "query"テキストを抽出し、トークン予算に合わせます(デフォルト)
要約された説明を得るbx answers "query"AI が生成し、出典を引用してストリーミングします
複雑なトピックを深く調査するbx answers "query" --enable-research複数回検索する反復型のリサーチです
従来の検索結果を得るbx web "query"すべての検索結果タイプ(ウェブ、ニュース、ディスカッションなど)
ディスカッション/フォーラムを探すbx web "query" --result-filter discussionsフォーラムには解決策が見つかることがよくあります
最新ニュース/最近の出来事を調べるbx news "query" --freshness pd学習データ以降の新しい情報を取得します
画像を探すbx images "query"最大 200 件の結果
動画を探すbx videos "query"再生時間、再生回数、作成者を確認できます
地元のビジネス/場所を探すbx places "coffee" --location "San Francisco"2 億件以上の POI
特定のドメインの順位を上げる/絞り込むbx "query" --include-site docs.rsまたは --goggles で細かく制御できます

コマンド

コマンド説明出力パス
contextデフォルト。 RAG/LLM グラウンディング — 抽出済みのウェブコンテンツ.grounding.generic[] -> {url, title, snippets[]}
answersAI の回答 — OpenAI 互換、デフォルトでストリーミング.choices[0].delta.content(ストリーム)
webウェブ検索 — すべての検索結果タイプ.web.results[]、.news.results[] など
news鮮度フィルター付きのニュース記事.results[] -> {title, url, age}
images画像検索(最大 200 件の結果).results[] -> {title, url, thumbnail.src}
videos再生時間/再生回数を含む動画検索.results[] -> {title, url, video.duration}
places地元の場所/POI の検索(2 億件以上の POI).results[] -> {title, postal_address}
suggestオートコンプリート/検索候補.results[] -> {query}
spellcheck検索クエリのスペルチェック.results[0].query
configAPI キーと設定の管理set-key、show-key、path、show

レスポンスの形式

bx "query"(context — デフォルト、推奨)

{
  "grounding": {
    "generic": [
      { "url": "...", "title": "...", "snippets": ["extracted content...", "..."] }
    ]
  },
  "sources": {
    "https://example.com": { "title": "...", "hostname": "...", "age": ["...", "2025-01-15", "392 days ago"] }
  }
}

bx answers "query" --no-stream(単一の JSON レスポンス)

{"choices": [{"message": {"content": "Full answer text..."}}]}

bx answers "query"(ストリーミング — デフォルトでは 1 行ごとに JSON チャンクを出力)

{"choices": [{"delta": {"content": "chunk"}}]}

bx web "query"(すべての検索結果)

{
  "web": { "results": [{"title": "...", "url": "...", "description": "..."}] },
  "news": { "results": [...] },
  "videos": { "results": [...] },
  "discussions": { "results": [...] }
}

トークン予算の制御

context(デフォルトのコマンド)の出力サイズを制御します。

フラグ短縮形デフォルト説明
--maximum-number-of-tokens--max-tokens8192トークンのおおよその合計数(1024-32768)
--maximum-number-of-tokens-per-url--max-tokens-per-url4096URL ごとの最大トークン数(512-8192)
--maximum-number-of-urls--max-urls20レスポンスに含める URL の最大数(1-50)
--maximum-number-of-snippets--max-snippets50すべての URL を通じたスニペットの最大数
--maximum-number-of-snippets-per-url--max-snippets-per-url—URL ごとのスニペットの最大数
--context-threshold-mode--thresholdbalanced関連性:strict、balanced、lenient
bx "topic" --max-tokens 4096 --max-tokens-per-url 1024 --max-urls 5 --threshold strict

Goggles — カスタムランキング

Goggles を使うと、検索結果に表示されるソースを制御できます。公式ドキュメントの順位を上げたり、SEO スパムを除外したり、検索範囲を絞り込んだりできます。これができる検索ツールはほかにありません。 context、web、news でサポートされています。

ドメインのショートカット
# Allowlist — only results from these domains
bx "rust axum" --include-site docs.rs --include-site github.com

# Blocklist — exclude specific domains
bx "python tutorial" --exclude-site example.com

--include-site、--exclude-site、--goggles は同時に指定できません。

インラインルール
# Boost official docs, demote blog posts
bx "axum middleware tower" \
  --goggles '$boost=5,site=docs.rs
$boost=3,site=github.com
/docs/$boost=5
/blog/$downrank=3' --max-tokens 4096

# Allowlist mode — only include matched sites
bx "Python asyncio patterns" \
  --goggles '$discard
$boost,site=docs.python.org
$boost,site=peps.python.org'
DSL クイックリファレンス
ルール効果例
$boost=N,site=DOMAINドメインの順位を上げます(N=1-10)$boost=3,site=docs.rs
$downrank=N,site=DOMAINドメインの順位を下げます(N=1-10)$downrank=5,site=example.com
$discard,site=DOMAINドメインを完全に除外します$discard,site=example.com
/path/$boost=N一致する URL パスの順位を上げます/docs/$boost=5
汎用 $discard許可リストモード — 一致しないものを除外します$discard(最初のルールとして)

ルールは改行で区切ります。DSL の全容は goggles-quickstart をご覧ください。

標準入力からルールを渡す
echo '$boost=5,site=docs.rs
$boost=5,site=crates.io
$boost=3,site=github.com' | bx "axum middleware" --goggles @- --max-tokens 4096

クエリ間で同じゴーグルを再利用するには、@/path/to/file を使用します。

エージェントのワークフロー例

エラーのデバッグ:

bx "Python TypeError cannot unpack non-iterable NoneType" --max-tokens 4096

修正型 RAG ループ:

# 1. Broad search
bx "axum middleware authentication" --max-tokens 4096
# 2. Too general? Narrow with strict threshold
bx "axum middleware tower layer authentication example" --threshold strict --max-tokens 4096
# 3. Still need synthesis? Ask for an answer
bx answers "how to implement JWT auth middleware in axum" --enable-research

アップグレード前の破壊的変更の確認:

bx "Next.js 15 breaking changes migration guide" --max-tokens 8192
bx news "Next.js 15 release" --freshness pm

プログラムで使用するための非ストリーミング回答:

bx answers "compare SQLx and Diesel for Rust" --no-stream

標準入力経由の回答(OpenAI 互換の JSON ボディ):

echo '{"messages":[{"role":"user","content":"what are the OWASP top 10 vulnerabilities for web APIs"}]}' | bx answers -

終了コード

コード意味エージェントの対応
0成功結果を処理する
1クライアントエラー(不正なリクエスト)クエリ/パラメーターを修正する
2使用方法エラー(不正なフラグ)CLI 引数を修正する
3認証/権限エラー(401/403)API キーを確認する:bx config show-key
4レート制限(429)時間をおいて再試行する
5サーバー/ネットワークエラーバックオフして再試行する

ユースケース

  • AI エージェント/コーディングアシスタント:トークン予算を考慮した RAG 対応コンテンツを、1 回の呼び出しでウェブ検索できます。検索+スクレイピング+抽出の代わりになります
  • ファクトチェック:bx "query" --threshold strict を使い、最新のウェブコンテンツに照らして主張を検証します
  • ドキュメント検索:--include-site または Goggles によるドメインの順位付けを使い、公式ドキュメントを検索します
  • 調査:bx answers "topic" --enable-research を使い、複数の情報源を対象に詳細な調査を行います
  • デバッグ:エラーメッセージやスタックトレースを直接検索します
  • ニュースのモニタリング:bx news "query" --freshness pd を使い、トピックを追跡します
  • ローカル検索:bx places "query" --location "city" を使い、店舗や場所を検索します

注意事項

  • 出力はすべて JSON で標準出力に送られます。エラーは標準エラー出力に送られます
  • グローバルフラグ:--api-key KEY、--timeout SECS(デフォルトは 30)、--extra KEY=VALUE(繰り返し指定可能。任意の API パラメーターを追加します)
  • 位置情報への対応:context と web は --lat、--long、--city、--state、--state-name、--loc-country、--postal-code、--timezone をサポートします
  • 調査モード:bx answers --enable-research は最大 5 分かかることがあります。クライアントのタイムアウトを適切に設定してください
  • ヘルプ:すべてのコマンドについては bx --help、コマンドごとのフラグについては bx <command> --help を実行してください

コメント