@heyhuynhgiabuu/pi-search
Unified search toolkit for pi — web search, code search, docs lookup, and repo documentation in one extension.
Package details
Install @heyhuynhgiabuu/pi-search from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@heyhuynhgiabuu/pi-search- Package
@heyhuynhgiabuu/pi-search- Version
0.2.3- Published
- Jun 16, 2026
- Downloads
- 130/mo · 16/wk
- Author
- killerkidbo
- License
- MIT
- Types
- extension
- Size
- 44.9 KB
- Dependencies
- 1 dependency · 1 peer
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-search
pi-search is a standalone pi extension that bundles the search and research tools you reach for most often into one package.
It combines:
- real-time web search via Exa AI
- technical docs and API search via Exa AI web search
- official documentation lookup via Context7
- public repository documentation and Q&A via DeepWiki
- structured source citations on Exa-backed retrieval tools
The goal is simple: install one extension and get a practical research toolkit for current docs, code examples, library references, and repository architecture.
Tools
| Tool | Source | Description |
|---|---|---|
websearch |
Exa AI | Real-time web search. No API key required. |
codesearch |
Exa AI | Technical doc/example search tuned for programming queries and powered by Exa web search. No API key required. |
context7 |
Context7 | Resolve library IDs and fetch library documentation. Optional CONTEXT7_API_KEY for higher rate limits. |
deepwiki |
DeepWiki | Read generated docs and ask repo-grounded questions for public GitHub repositories. No API key required. |
web_fetch |
Exa AI | Fetch a webpage's full content as clean markdown. Use after websearch/codesearch to read a specific result. |
Install
pi install npm:@heyhuynhgiabuu/pi-search
Or load locally during development:
pi -e ./src/index.ts
Optional for higher Context7 rate limits:
export CONTEXT7_API_KEY=your_key_here
Configuration
Create ~/.pi/agent/pi-search.json to customize the extension.
Disable specific tools
{
"disabledTools": ["context7", "codesearch"]
}
Valid tool names: websearch, codesearch, context7, deepwiki, web_fetch.
If the file doesn't exist or is invalid JSON, all tools are enabled by default.
Usage
websearch({ query: "Next.js 15 server actions" })
codesearch({ query: "Go context.WithCancel usage" })
context7({ operation: "resolve", libraryName: "react" })
context7({ operation: "query", libraryId: "/reactjs/react.dev", topic: "hooks" })
deepwiki({ operation: "ask", repo: "facebook/react", question: "How does reconciliation work?" })
When to use which tool
websearch→ current information, blog posts, docs, release notes, discussionscodesearch→ programming docs, API examples, framework usage, and technical referencescontext7→ official library documentation after resolving the right library IDdeepwiki→ generated documentation and Q&A for public GitHub repositories
DeepWiki limitations
deepwiki uses Devin's public, no-auth DeepWiki MCP endpoint. It only supports public GitHub repositories. Treat results as generated documentation that can be incomplete or stale; use the repository source for exact code truth.
Citations
websearch, codesearch, and web_fetch return source metadata in details.citations when source URLs are available. Their text output also includes a ## Sources section with numbered source markers so the model can see the same source IDs that are exposed as structured metadata.
Important limitation: these citations are attached to individual tool results. They do not prove which sources a final assistant response used unless the Pi host/runtime links assistant messages to tool calls and tool result details.
Development
npm install
npm run typecheck
npm run lint
npm test
License
MIT — huynhgiabuu