diff --git a/packages/ai/CHANGELOG.md b/packages/ai/CHANGELOG.md index 12972551..1793709f 100644 --- a/packages/ai/CHANGELOG.md +++ b/packages/ai/CHANGELOG.md @@ -3,13 +3,14 @@ ## [Unreleased] ### Breaking Changes -- **setApiKey, resolveApiKey**: Removed. Callers must manage their own API key storage/resolution. -- **getApiKey**: Renamed to `getEnvApiKey`. Only checks environment variables for known providers. -- **OAuth storage removed**: All storage functions (`loadOAuthCredentials`, `saveOAuthCredentials`, `setOAuthStorage`, etc.) removed. Callers are responsible for storing credentials. + +- **OAuth storage removed** ([#296](https://github.com/badlogic/pi-mono/issues/296)): All storage functions (`loadOAuthCredentials`, `saveOAuthCredentials`, `setOAuthStorage`, etc.) removed. Callers are responsible for storing credentials. - **OAuth login functions**: `loginAnthropic`, `loginGitHubCopilot`, `loginGeminiCli`, `loginAntigravity` now return `OAuthCredentials` instead of saving to disk. - **refreshOAuthToken**: Now takes `(provider, credentials)` and returns new `OAuthCredentials` instead of saving. - **getOAuthApiKey**: Now takes `(provider, credentials)` and returns `{ newCredentials, apiKey }` or null. - **OAuthCredentials type**: No longer includes `type: "oauth"` discriminator. Callers add discriminator when storing. +- **setApiKey, resolveApiKey**: Removed. Callers must manage their own API key storage/resolution. +- **getApiKey**: Renamed to `getEnvApiKey`. Only checks environment variables for known providers. ## [0.27.7] - 2025-12-24 diff --git a/packages/coding-agent/CHANGELOG.md b/packages/coding-agent/CHANGELOG.md index 3688a30c..468f2279 100644 --- a/packages/coding-agent/CHANGELOG.md +++ b/packages/coding-agent/CHANGELOG.md @@ -2,6 +2,22 @@ ## [Unreleased] +### Changed + +- **Credential storage refactored**: API keys and OAuth tokens are now stored in `~/.pi/agent/auth.json` instead of `oauth.json` and `settings.json`. Existing credentials are automatically migrated on first run. ([#296](https://github.com/badlogic/pi-mono/issues/296)) + +- **SDK API changes** ([#296](https://github.com/badlogic/pi-mono/issues/296)): + - Added `AuthStorage` class for credential management (API keys and OAuth tokens) + - Added `ModelRegistry` class for model discovery and API key resolution + - Added `discoverAuthStorage()` and `discoverModels()` discovery functions + - `createAgentSession()` now accepts `authStorage` and `modelRegistry` options + - Removed `configureOAuthStorage()`, `defaultGetApiKey()`, `findModel()`, `discoverAvailableModels()` + - Removed `getApiKey` callback option (use `AuthStorage.setRuntimeApiKey()` for runtime overrides) + - Use `getModel()` from `@mariozechner/pi-ai` for built-in models, `modelRegistry.find()` for custom models + built-in models + - See updated [SDK documentation](docs/sdk.md) and [README](README.md) + +- **Settings changes**: Removed `apiKeys` from `settings.json`. Use `auth.json` instead. ([#296](https://github.com/badlogic/pi-mono/issues/296)) + ### Fixed - **Duplicate skill warnings for symlinks**: Skills loaded via symlinks pointing to the same file are now silently deduplicated instead of showing name collision warnings. ([#304](https://github.com/badlogic/pi-mono/pull/304) by [@mitsuhiko](https://github.com/mitsuhiko))