A TypeScript agent that loops through search, page reading and reasoning until it finds an answer or exhausts a token budget. It runs as a CLI or as an OpenAI-compatible server exposing /v1/chat/completions on port 3000, with streamed <think> blocks. Reasoning uses Gemini, OpenAI or a local OpenAI-style endpoint, and search and page reading go through Jina Reader.
Who it is for: Developers wanting a self-hosted deep-search agent behind an OpenAI-style API
Strengths
OpenAI-compatible server works with clients such as CherryStudio and Chatbox
Supports Gemini, OpenAI and local endpoints such as Ollama or LMStudio
Token budget caps the loop, with a final-answer fallback called Beast Mode
Hosted UI and API run the same codebase, so you can test before installing
Weaknesses
Search and page reading depend on the Jina Reader API and a Jina key
Local LLMs must handle structured output well; not every model works
Built for short answers, not long-form research reports
Last release was 2025-02-12, and the npm package is not recommended
What it needs
no GPU
Docker + Compose
Needs Jina Reader API key, Gemini or OpenAI API key, or a local OpenAI-compatible LLM endpoint, Node.js