---
slug: "bytetrue-pi-web-search"
source_type: "readme"
source_url: "https://cdn.jsdelivr.net/gh/ByteTrue/pi-package-mono@main/README.md"
repo: "https://github.com/ByteTrue/pi-package-mono"
source_file: "README.md"
branch: "main"
---
# pi-package-mono

Personal [pi coding agent](https://pi.dev) extensions as an npm workspaces monorepo. Each package loads as TypeScript source via jiti — no build step required.

[Features](#packages) • [Local development](#local-development) • [Packages](#packages)

## Packages

| Package | Description |
|---|---|
| [`@bytetrue/pi-web-search`](https://github.com/ByteTrue/pi-package-mono/tree/HEAD/packages/pi-web-search) | `web_search` + `web_fetch` tools with zero-config Exa MCP free search, keyless Bing fallback, self-hosted SearXNG, and pluggable providers (Bocha, Tavily, Exa, Brave, Jina, Firecrawl). |
| [`@bytetrue/pi-vendor`](https://github.com/ByteTrue/pi-package-mono/tree/HEAD/packages/pi-vendor) | `/vendor` wizard for managing custom providers in `~/.pi/agent/models.json` — provider drafting, model enrichment, and `/models` import. |
| [`@bytetrue/pi-image-gen`](https://github.com/ByteTrue/pi-package-mono/tree/HEAD/packages/pi-image-gen) | `image_generate` tool and `/image-gen` settings command for OpenAI, Gemini, Qwen-Image, Ark, OpenRouter, and compatible gateways. |
| [`@bytetrue/pi-background-terminal`](https://github.com/ByteTrue/pi-package-mono/tree/HEAD/packages/pi-background-terminal) | OpenCode-style background PTY sessions for Pi: `pty_spawn`, `pty_list`, `pty_read`, `pty_write`, `pty_kill`, and a local web monitor. |

## Local development

```bash
# Install a package by local path (no npm publish needed)
pi install /absolute/path/to/pi-package-mono/packages/pi-web-search

# Or mount an extension for a quick trial run
pi -e /absolute/path/to/pi-package-mono/packages/pi-web-search

# Try image generation locally
pi install /absolute/path/to/pi-package-mono/packages/pi-image-gen

# Try background terminal locally
pi install /absolute/path/to/pi-package-mono/packages/pi-background-terminal
```

Run tests across all packages:

```bash
npm test
```

Run tests for a specific package:

```bash
npm --workspace @bytetrue/pi-web-search test

npm --workspace @bytetrue/pi-image-gen test

npm --workspace @bytetrue/pi-background-terminal test
```
