@arcadia64/pi-ddgs

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

Package details

extension

Install @arcadia64/pi-ddgs from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@arcadia64/pi-ddgs
Package
@arcadia64/pi-ddgs
Version
1.0.1
Published
Apr 28, 2026
Downloads
235/mo · 235/wk
Author
arcadia64
License
MIT
Types
extension
Size
17.5 KB
Dependencies
0 dependencies · 3 peers
Pi manifest JSON
{
  "extensions": [
    "./index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

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

Name Purpose
web_search DuckDuckGo web search
web_search_news DuckDuckGo news search
get_search_results Retrieve a previous search by ID (cached in memory, LRU-bounded)
fetch_url Fetch 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