# Bundled Pi Extensions

This public base stack pins extra public Pi packages in `stack/packages.json`. The renderer appends them after the base stack package in project `.pi/settings.json`.

All entries are pinned to exact npm versions or git commits. Do not switch them to floating `latest`, `main`, or unversioned specs.

Business/private packages do not belong here. Put them in a private overlay package or private project settings.

## Package list

| Package | Pinned version/ref | Purpose |
|---|---:|---|
| `pi-mcp-adapter` | `2.9.0` | MCP adapter. Connects Pi to Model Context Protocol servers/tools. |
| `pi-web-access` | `0.10.7` | Web search, URL fetch, GitHub repo content, PDFs, YouTube/video analysis. Also provides web-access skills. |
| `pi-btw` | `0.4.1` | Parallel side conversations via `/btw`. Useful for quick side research without derailing main thread. |
| `pi-rtk-optimizer` | `0.8.2` | Token/tool-output optimization and command rewriting. |
| `@marckrenn/pi-sub-bar` | `1.5.0` | Provider usage widget above editor. |
| `@tmustier/pi-usage-extension` | `0.3.2` | Session usage statistics dashboard. |
| `pi-command-history` | `0.1.2` | Folder-based persistent command history with Ctrl+Up/Down recall. Useful, but keep separate from raw session-history sync plans. |
| `davebcn87/pi-autoresearch` | `ccba1bae...` | Autoresearch experiment loop: benchmark iterations, logging, keep/discard workflow. |
| `pi-caveman` | `1.0.7` | Caveman terse-output mode to reduce assistant verbosity/tokens. |
| `fluxgear/pi-thinking-steps` | `d0a59a4f...` | Thinking-step workflow/package from git source. Keep pinned because source package metadata is not local npm metadata. |
| `@geminixiang/pi-simplify` | `0.1.0` | `/simplify` review for reuse, quality, efficiency cleanup candidates. |
| `pi-execution-time` | `0.1.3` | Footer prompt execution timer while agent works. |
| `@plannotator/pi-extension` | `0.20.1` | Plannotator annotation/review UI for plans, messages, code, and PRs. |
| `pi-goal` | `0.1.5` | Persistent `/goal` autonomous loop with completion/budget control. |
| `@vanillagreen/pi-session-manager` | `1.5.1` | Session manager overlay for browsing/searching/resuming/renaming/deleting sessions. Useful operational UI, not repo sync. |
| `@ramarivera/pi-skill-selector` | `0.1.16` | `$` skill fuzzy picker that inserts `/skill:name`. |
| `pi-mono-multi-edit` | `1.7.3` | Enhanced multi-edit support: batch edits and Codex-style patches. |
| `pi-discord-remote` | `0.2.4` | Discord remote-control integration; creates per-session channels. |
| `pi-cache-graph` | `1.0.2` | Context cache distribution/statistics visualization. |
| `pi-context-usage` | `1.0.2` | Context window usage visualization. |
| `pi-intercom` | `0.6.0` | Local Pi session-to-session communication plus related skills. |
| `pi-subagents` | `0.28.0` | Subagent delegation: single/parallel/chains, clarification UI, prompts/skills. |
| `@ogulcancelik/pi-herdr` | `0.2.5` | Herdr workspace/tab/pane orchestration, watches, agent status waits. |
| `browse97` | `1.0.3` | Chrome/CDP browser automation tools: tabs, snapshots, clicks, forms, uploads, JS eval. |
| `pi-dynamic-workflows` | `1.0.1` | Dynamic workflow orchestration with agent fan-out/fan-in. |

## Session-related note

`pi-command-history` and `@vanillagreen/pi-session-manager` stay included because they are useful day-to-day extensions. This still does not mean this base stack manages raw Pi session history, repo session sync, or encrypted session archive.

## Notes

- Packages run with full system permissions if they contain extensions. Review source before bumping.
- Git packages are pinned by commit hash because remote branches/tags can move or disappear.
- Keep this list public-safe. No internal URLs, private package names, business prompts, or secret-adjacent config.
- When adding a package, pin exact version/ref and run:

```bash
node bin/render-settings.mjs --project .
node bin/check-pi-env.mjs --project .
npm run check
```

## Update flow

1. Check latest candidate version or commit.
2. Review package source/changelog.
3. Edit `stack/packages.json`.
4. Re-render `.pi/settings.json`.
5. Run checks.
6. Commit/PR the version bump.

Do not rely on `pi update --extensions` to move pinned specs. It reconciles installs to the pinned refs; it does not choose new versions for this stack.
