A3S Docs
A3S Search

CLI

Command-line interface for quick searches with multiple output formats

CLI

A3S Search includes a command-line tool for quick searches from the terminal.

Installation

# Homebrew (macOS / Linux)
brew tap a3s-lab/tap https://github.com/A3S-Lab/homebrew-tap
brew install a3s-search

# From crates.io
cargo install a3s-search

# From source
cd crates/search && cargo install --path .

Update

# Homebrew
brew update && brew upgrade a3s-search

# cargo install (re-installs latest from crates.io)
cargo install a3s-search

Uninstall

# Homebrew
brew uninstall a3s-search
brew untap a3s-lab/tap   # optional: remove the tap itself

# cargo
cargo uninstall a3s-search
# Default search (DuckDuckGo + Wikipedia)
a3s-search "rust programming"

# Specific engines
a3s-search "rust" -e ddg,wiki,brave,bing

# Chinese engines
a3s-search "人工智能" -e sogou,360

# Google (Chrome auto-installed if needed)
a3s-search "rust" -e g,ddg

# Chinese headless engines
a3s-search "Rust 编程" -e baidu,bing_cn

Options

Prop

Type

Output Formats

Default

Human-readable output with title, URL, snippet, and metadata:

$ a3s-search "rust language"

1. The Rust Programming Language
   https://www.rust-lang.org/
   A language empowering everyone to build reliable and efficient software.
   Score: 3.50 | Engines: ddg, brave, bing

2. Rust (programming language) - Wikipedia
   https://en.wikipedia.org/wiki/Rust_(programming_language)
   Rust is a multi-paradigm, general-purpose programming language...
   Score: 2.70 | Engines: wiki, ddg

JSON

$ a3s-search "rust" -f json

Machine-readable JSON with full result metadata.

Compact

$ a3s-search "rust" -f compact

Tab-separated output: score\ttitle\turl — useful for piping to other tools.

Available Engines

# List all available engines
a3s-search engines

Prop

Type

Proxy

# HTTP proxy
a3s-search "rust" -p http://127.0.0.1:8080

# SOCKS5 proxy
a3s-search "rust" -p socks5://127.0.0.1:1080

Chrome Auto-Install

When using headless engines (g, baidu, bing_cn), Chrome is required. A3S Search handles this automatically:

# First run: Chrome is auto-downloaded if not installed
a3s-search "rust" -e g
# Downloading Chrome for Testing v145.0.7632.46 (mac-arm64)...
# Chrome for Testing installed successfully!

# Subsequent runs: uses cached Chrome instantly
a3s-search "rust" -e g

# Or set CHROME env var to use a specific binary
CHROME=/usr/bin/chromium a3s-search "rust" -e g

On this page