pi-gemini-acp
Gemini ACP prompt, search, and research provider for Pi.
Package details
Install pi-gemini-acp from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-gemini-acp- Package
pi-gemini-acp- Version
0.8.0- Published
- May 4, 2026
- Downloads
- 1,104/mo · 1,104/wk
- Author
- brandonkramercc
- License
- MIT
- Types
- extension, skill
- Size
- 346.8 KB
- Dependencies
- 0 dependencies · 2 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
pi-gemini-acp
Gemini ACP prompt, search, and research provider for Pi.
pi-gemini-acp adds Gemini ACP tools for prompt, search, research, extraction, summarization, code review, translation, image analysis, and status while preserving local/no-key search over supplied documents.
Install
pi install npm:pi-gemini-acp
Requirements
- Node.js
>=22.18.0 - Pi
>=0.65.0 - Local authenticated Gemini ACP (
gemini --acpby default) for Gemini-backed tools. gemini_file_analyzeneeds filesystem-read permission, only reads explicit validated files, and prompts before trusting a new folder when Pi is interactive.gemini_image_describeneeds filesystem-read permission and confirmed ACP image/resource-link support for local image paths; base64 inputs are validation-only.
Tools
| Tool | Description |
|---|---|
gemini_status |
Check Gemini ACP command, auth, and capability status. |
gemini_prompt |
Send a general prompt to authenticated Gemini ACP. |
gemini_extract |
Extract JSON from supplied content using a schema-like shape. |
gemini_summarize |
Summarize one content item or safe public HTTP(S) URL. |
gemini_search |
Search with Gemini ACP, or search supplied local documents without ACP. |
gemini_research |
Collect sources, findings, citations, and optional safe hydration. |
gemini_file_analyze |
Analyze explicit local text/document files via validated ACP resource links. |
gemini_code_review |
Review caller-provided code/diffs; analysis-only, no path reads or edits. |
gemini_translate |
Translate text/batches with glossary and preservation rules. |
gemini_image_describe |
Analyze explicit local image paths via validated ACP resource links. |
gemini_get_result |
Retrieve stored full output by responseId. |
Commands
/gemini-config— inspect status, configure command args, manage permissions, or confirm workspace trust./gemini-model— choose and persist a Gemini model or alias such asproorflash.
Configuration
The default Gemini ACP provider config is:
{
"enabled": true,
"command": "gemini",
"args": ["--acp"],
"authenticated": true,
"searchGroundingAvailable": true
}
With authenticated, search-capable gemini --acp, Gemini-backed tools work from the default config.
Common commands
/gemini-config status
/gemini-config command gemini --acp
/gemini-config permissions filesystemRead
/gemini-config trust
Use /gemini-config with no arguments for the interactive picker. Custom command settings are saved to ~/.pi/gemini-acp/config/settings.json.
Safety notes
- Use Gemini CLI local auth; do not pass API keys to
/gemini-config command. permissionsgates ACP filesystem/terminal access.- Filesystem write and terminal access require
confirmRisk=true. - Use
/gemini-config trustonly when Gemini CLI requires workspace trust.
Environment overrides
export PI_GEMINI_ACP_COMMAND=gemini
export PI_GEMINI_ACP_ARGS="--acp"
export PI_GEMINI_ACP_IDLE_TTL_MS=900000
export PI_GEMINI_ACP_NO_PREWARM=1
export PI_GEMINI_ACP_SEARCH_EARLY_STOP=0
Runtime behavior
- Warm ACP subprocesses are reused for 15 minutes by default.
- Search prewarms on activation unless
PI_GEMINI_ACP_NO_PREWARM=1. - Search can cancel after complete streamed JSON unless
PI_GEMINI_ACP_SEARCH_EARLY_STOP=0. - Prompt calls still use fresh ACP sessions.
- Neutral cwd is used unless project context is required.
- Local/no-key mode only works over supplied documents/sources.
gemini_file_analyzeuses explicit validated files, filesystem-read permission, and a per-request allowlist.gemini_image_describeuses explicit validated image paths, filesystem-read permission, and a per-request allowlist; base64 inputs are validation-only.
Image description example
{
"imagePath": "/path/to/screenshot.png",
"mode": "detailed",
"instructions": "Describe this screenshot briefly, including visible text."
}
gemini_image_describe performs runtime ACP image/resource-link capability checks even when status output reports image capability as unknown.
Selecting a model
Run /gemini-model for the picker, or pass an alias/model id directly.
/gemini-model
/gemini-model pro
/gemini-model flash
/gemini-model gemini-3.1-pro-preview
Aliases include pro, flash, flash-lite, lite, and compatible versioned aliases such as 2.5-pro.
Validation
npm run typecheck
npm test
npm run test:tools
npm run smoke:gemini-acp
PI_GEMINI_ACP=1 npm run smoke:gemini-acp
npm pack --dry-run --json
smoke:gemini-acp skips by default unless PI_GEMINI_ACP=1 is set.