---
slug: "pi-switch-model"
source_type: "readme"
source_url: "https://cdn.jsdelivr.net/gh/timzolleis/pi-extensions@main/README.md"
repo: "https://github.com/timzolleis/pi-extensions"
source_file: "README.md"
branch: "main"
---
# pi-extensions

Single-purpose extensions for the [pi](https://pi.dev) coding agent, published
individually to npm.

## Packages

| Package | Description | Tools / commands |
| --- | --- | --- |
| [`switch-model`](https://github.com/timzolleis/pi-extensions/tree/HEAD/switch-model) | Free-form, LLM-driven model switching mid-conversation — no approval loop, no auto-restore. | `switch_model` |

## Install

Each package is published standalone on npm — install only what you need:

```bash
pi install npm:pi-switch-model
```

For local development against this checkout:

```bash
pi -e ~/code/pi-extensions/switch-model
```

## Develop

```bash
npm install          # installs all workspace packages from the repo root
npm run typecheck     # tsc --noEmit, per workspace
npm test              # node --test, per workspace
```

Each package under a top-level directory here is an independent npm package with its
own `package.json`, versioned and published on its own. This repo is the source; npm is
the distribution.

## License

[MIT](https://github.com/timzolleis/pi-extensions/tree/HEAD/LICENSE)
