@keenable/pi-search
Keenable web search + page fetch tools for the Pi coding agent (pi.dev). Keyless by default.
Package details
Install @keenable/pi-search from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@keenable/pi-search- Package
@keenable/pi-search- Version
0.1.1- Published
- Jun 18, 2026
- Downloads
- not available
- Author
- ilya.bogin
- License
- MIT
- Types
- extension, skill
- Size
- 18.8 KB
- Dependencies
- 0 dependencies · 3 peers
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
],
"skills": [
"./skills"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@keenable/pi-search
Web search + page fetch for the Pi coding agent, powered by Keenable. Pi ships with no web tools by design — this package adds two:
keenable_search— web search built for AI agents.keenable_fetch— fetch a URL and extract its content as markdown.
Keyless by default (no signup); set KEENABLE_API_KEY to raise rate limits
and enable realtime search.
Install
pi install npm:@keenable/pi-search
That's it — the tools and the keenable-web-search skill load on next start.
The agent can now search the web and read pages.
To try it for one run without installing:
pi -e npm:@keenable/pi-search
Configuration
| Env var | Purpose |
|---|---|
KEENABLE_API_KEY |
Optional. Lifts rate limits and enables realtime mode. Create one at keenable.ai/console. |
KEENABLE_API_URL |
Optional. Override the API base URL (must be https:// with a host; http:// allowed only for loopback). Defaults to https://api.keenable.ai. |
Tools
keenable_search
query (required) · mode (pro|realtime) · site · published_after ·
published_before · acquired_after · acquired_before (dates are
YYYY-MM-DD). Returns a JSON list of {title, url, description, published_at, acquired_at}.
keenable_fetch
url (required, http(s)). Returns the page content as markdown plus
{title, description, author, published_at}.
Typical flow: keenable_search to find URLs → keenable_fetch to read them →
cite the source.
Alternative: MCP
Already using pi-mcp-adapter or an
MCP bridge? You can instead point it at the hosted Keenable MCP server
(https://api.keenable.ai/mcp, tools search_web_pages / fetch_page_content).
The native package above is recommended for Pi — it avoids the per-server MCP
context cost and ships the usage skill.
Notes
- Loaded as TypeScript via jiti — no build step.
- No third-party runtime dependencies (uses the global
fetch). - The REST API is an internal detail of this package; use the tools, not raw REST.
License
MIT