---
slug: "pi-sakana-provider"
source_type: "readme"
source_url: "https://cdn.jsdelivr.net/gh/Jabbslad/pi-sakana-provider@master/README.md"
repo: "https://github.com/Jabbslad/pi-sakana-provider"
source_file: "README.md"
branch: "master"
---
# pi-sakana-provider

Sakana AI custom provider for Pi.

This package registers provider id `sakana` via `pi.registerProvider()` and uses Pi's built-in `openai-responses` API implementation against `https://api.sakana.ai/v1`.

## Models

| Model | Reasoning | Input | Context window | Max output |
| --- | --- | --- | --- | --- |
| `fugu` | yes | text, image | 1,000,000 | 65,536 |
| `fugu-ultra` | yes | text, image | 1,000,000 | 131,072 |
| `fugu-ultra-20260615` | yes | text, image | 1,000,000 | 131,072 |

All Fugu models are reasoning models. Sakana only accepts reasoning efforts
`high` and `xhigh` (`max` is an alias of `xhigh`); any other value is rejected.
Pi thinking levels are mapped accordingly: `minimal`, `low`, `medium`, and
`high` all send `high`; `xhigh` sends `xhigh`; `off` sends no effort (the API
then uses its default).

Context windows match Sakana's published model catalog. Max-output values are
not published in the catalog; the values above are conservative defaults.

## Benchmarks

See the official [benchmark comparison on Sakana's models page](https://console.sakana.ai/models) — Fugu and Fugu Ultra vs. other frontier models across coding, reasoning, scientific, and agentic suites.

![Sakana Fugu benchmark comparison](https://github.com/Jabbslad/pi-sakana-provider/raw/HEAD/assets/benchmark.png)

## Usage

Set your Sakana API key:

```bash
export SAKANA_API_KEY=...
```

Load once for testing (run from the repo root):

```bash
pi -e . --provider sakana --model fugu-ultra
```

Install from npm:

```bash
pi install npm:pi-sakana-provider
```

Or install from a local checkout (run from the repo root):

```bash
pi install .
```

Or add the package to `~/.pi/agent/settings.json` (the npm name, or a path
relative to that file / an absolute path):

```json
{
  "packages": ["pi-sakana-provider"],
  "defaultProvider": "sakana",
  "defaultModel": "fugu-ultra",
  "defaultThinkingLevel": "xhigh"
}
```

## License

MIT — see [LICENSE](https://github.com/Jabbslad/pi-sakana-provider/tree/HEAD/LICENSE).
