Configuration
modsearch uses an engine chain. The default channel is Antigravity CLI, which is free but requires browser sign-in. API credentials may be stored in ~/.modsearch/config.json with file mode 0600, or supplied through environment variables.
| Engine |
Capability |
Configuration |
Antigravity CLI |
Web search and page fetch |
Install agy and sign in |
Tavily |
Web search |
tavily.apiKey; TAVILY_API_KEY |
Exa |
Web search |
exa.apiKey; EXA_API_KEY |
Firecrawl |
Web search and page fetch |
firecrawl.apiKey; FIRECRAWL_API_KEY |
Grok Build |
X search |
Install grok and sign in |
local |
Page fetch |
Built in |
Each engine can be pointed at a compatible third-party or self-hosted service with its baseURL setting. Multiple configured engines are tried in order, with automatic failover.
Commands
The documented configuration form is modsearch config set <key> <value>, for example modsearch config set tavily.apiKey <key> or modsearch config set tavily.baseURL <url>. The CLI also provides configuration and health-check functions through its config and doctor commands.
How it behaves
The plugin connects the harness’s built-in web_search to the configured engine chain and supplies x_search for X and read_page for focused single-page reading. Results are returned as structured JSON evidence, including sources and citations. A search or fetch can be triggered through conversation when the agent needs current information or a URL read.
Requirements and limits
At least one search-capable engine is needed for web search. Antigravity CLI requires the agy installation and browser sign-in; Grok Build requires a SuperGrok or X Premium account. Tavily, Exa, and Firecrawl use their respective quotas or API-compatible endpoints. local provides page fetching only, so it does not replace a web-search engine.
Written from the project's own documentation and kept in sync with it. Where the two disagree, the source is authoritative — read the README on GitHub