@arcadia64/pi-ddgs

extensionmaintained

Pi extension for web search and page fetch with curl_cffi + Chrome + Camoufox fallback chain. Backed by a local Docker service.

by · v1.1.0 · published 3w ago

$ pi install npm:@arcadia64/pi-ddgs
downloads/mo
245
stars
3
last push
3w ago
open issues
0

Signals

license: MITtestspi manifest: missinginstall size: —deps: 0peer deps: 0

Download trend

350 downloads · last 12 weeks (weekly)

README

pi-ddgs

Pi (pi-coding-agent) extension that gives the agent web search and page fetch via a local Docker backend with a three-tier anti-bot fallback (curl_cffi → real Chrome → Camoufox).

Source / backend / docs: github.com/Arcadia64/ddgs-api — the Docker backend lives there too. This package is the Pi extension half; you'll want to clone the repo and run the backend container alongside it.

Tools

NamePurpose
web_searchDuckDuckGo web search
web_search_newsDuckDuckGo news search
get_search_resultsRetrieve a previous search by ID (cached in memory, LRU-bounded)
fetch_urlFetch a URL and extract clean text. Auto-falls-back through three tiers: static (curl_cffi) → Chrome render → Camoufox render. Honors abort signal.

Install

You need the backend running first. Clone the repo and run:

docker compose up -d --build

Then install the Pi extension.

Option 1 — npm (cleanest)

pi install npm:@arcadia64/pi-ddgs

Or add it directly to ~/.pi/agent/settings.json:

{
  "packages": ["npm:@arcadia64/pi-ddgs"]
}

Pi auto-installs missing packages on startup.

Option 2 — local path (development)

Add the absolute path to the cloned pi-ddgs/ directory to packages:

{
  "packages": ["C:/absolute/path/to/ddgs-api/pi-ddgs"]
}

Reload Pi.

Config

Optional. Defaults work without a file. Drop a JSON file at ~/.pi/ddgs.json to override any field — see the full config table in the project README.

Common overrides:

{
  "ddgsApiUrl": "http://my-other-pc:8091",
  "defaultEngine": "camoufox",
  "safesearch": "off"
}

License

MIT