From 70d2bf6fb6a8a04c89d07661f07f1942e43a40ce Mon Sep 17 00:00:00 2001 From: ilya-bov <111734093+ilya-bov@users.noreply.github.com> Date: Fri, 6 Mar 2026 15:56:39 +0300 Subject: [PATCH] chore(release): v0.1.3 --- README.md | 4 +- .../0.1.3-oauth-native-cli-providers.md | 52 +++++++++++++++++++ docs/releases/README.md | 1 + docs/releases/github-v0.1.3.md | 23 ++++++++ package-lock.json | 4 +- package.json | 2 +- src/app/api/health/route.ts | 2 +- 7 files changed, 82 insertions(+), 6 deletions(-) create mode 100644 docs/releases/0.1.3-oauth-native-cli-providers.md create mode 100644 docs/releases/github-v0.1.3.md diff --git a/README.md b/README.md index a4c87d8..b64ddd6 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,8 @@ The app runs as a Next.js service and stores runtime state on disk (`./data`). ## Releases -- Latest release snapshot: [0.1.2 - Dark Theme and Python Recovery](./docs/releases/0.1.2-dark-theme-python-recovery.md) -- GitHub release body : [v0.1.2](./docs/releases/github-v0.1.2.md) +- Latest release snapshot: [0.1.3 - OAuth Native CLI Providers](./docs/releases/0.1.3-oauth-native-cli-providers.md) +- GitHub release body : [v0.1.3](./docs/releases/github-v0.1.3.md) - Release archive: [docs/releases/README.md](./docs/releases/README.md) ## Contributing and Support diff --git a/docs/releases/0.1.3-oauth-native-cli-providers.md b/docs/releases/0.1.3-oauth-native-cli-providers.md new file mode 100644 index 0000000..cf6a5c1 --- /dev/null +++ b/docs/releases/0.1.3-oauth-native-cli-providers.md @@ -0,0 +1,52 @@ +# Eggent 0.1.3 - OAuth Native CLI Providers + +Date: 2026-03-06 +Type: Patch release snapshot + +## Release Name +`OAuth Native CLI Providers` + +This release upgrades Codex CLI and Gemini CLI integration to API-native OAuth transport, adds guided OAuth connection flow in Settings, and keeps Eggent tool/MCP behavior available in these modes. + +## What Is Included + +### 1) API-Native OAuth Transport for CLI Providers +- Added native OAuth transport for `codex-cli` and `gemini-cli` providers. +- Eggent now reads local CLI OAuth credentials and sends requests through provider APIs. +- Transport keeps Eggent-side tool loop behavior integrated with chat requests. + +### 2) Provider Auth Endpoints and Validation +- Added provider auth endpoints: + - `POST /api/provider-auth/connect` + - `GET /api/provider-auth/status` +- Added OAuth status checks for both CLI providers using local auth files. +- Enforced OAuth-only mode for `codex-cli` and `gemini-cli` in settings/API. + +### 3) Settings Wizard: Provider -> Method -> Connect -> Model +- Chat model wizard now includes explicit connection method step (`API key` or `OAuth`). +- For CLI providers, UI shows OAuth instructions and a connection status check action. +- Model list step remains dynamic and gated by selected connection method. + +### 4) Dynamic Model Discovery for Codex/Gemini CLI +- Added CLI model discovery service with short TTL cache. +- `/api/models` now attempts live model discovery for `codex-cli` and `gemini-cli`. +- Falls back to bundled model presets if discovery is unavailable. + +### 5) Provider Base URL Reliability Fixes +- Added base URL normalization for `anthropic` and `google` provider paths. +- Fixed invalid relative URL failures like `/messages` or `/models/...` when base URL is empty. + +## New in 0.1.3 + +- OAuth-native transport for Codex CLI and Gemini CLI providers. +- Provider auth connect/status API and OAuth credential checks. +- Updated chat model setup flow with method and connection steps. +- Dynamic CLI model discovery in model picker. +- URL normalization fixes for Anthropic and Google providers. +- Bumped package and health version to `0.1.3`. + +## Upgrade Notes + +- No data migration required. +- Existing OpenAI/Anthropic/Google/OpenRouter/Ollama API key setups continue to work. +- For `codex-cli` and `gemini-cli`, complete CLI login first, then use OAuth mode in Eggent settings. diff --git a/docs/releases/README.md b/docs/releases/README.md index c22ba96..cff05d8 100644 --- a/docs/releases/README.md +++ b/docs/releases/README.md @@ -4,5 +4,6 @@ This directory contains release summaries and publish-ready notes. | Version | Name | Date | Notes | | --- | --- | --- | --- | +| `0.1.3` | OAuth Native CLI Providers | 2026-03-06 | [Full snapshot](./0.1.3-oauth-native-cli-providers.md), [GitHub body](./github-v0.1.3.md) | | `0.1.2` | Dark Theme and Python Recovery | 2026-03-06 | [Full snapshot](./0.1.2-dark-theme-python-recovery.md), [GitHub body](./github-v0.1.2.md) | | `0.1.1` | Unified Context | 2026-03-03 | [Full snapshot](./0.1.1-unified-context.md), [GitHub body](./github-v0.1.1.md) | diff --git a/docs/releases/github-v0.1.3.md b/docs/releases/github-v0.1.3.md new file mode 100644 index 0000000..88cff91 --- /dev/null +++ b/docs/releases/github-v0.1.3.md @@ -0,0 +1,23 @@ +## Eggent v0.1.3 - OAuth Native CLI Providers + +Patch release focused on OAuth-native provider integration and reliability improvements for API transports. + +### Highlights + +- Added API-native OAuth transport for `codex-cli` and `gemini-cli` providers. +- Added provider auth endpoints for CLI OAuth connect/status checks. +- Updated Settings flow to `Provider -> Method -> Connect -> Model`. +- Added dynamic CLI model discovery with fallback presets. +- Fixed invalid URL failures for Anthropic and Google when base URL is missing/empty. +- Version bump to `0.1.3` across package metadata and `GET /api/health`. + +### Upgrade Notes + +- No migration step required. +- Existing API key providers continue to work as before. +- For CLI providers, run CLI login first (`codex login` / `gemini` OAuth login), then use OAuth mode in Eggent. + +### Links + +- Full release snapshot: `docs/releases/0.1.3-oauth-native-cli-providers.md` +- Installation and update guide: `README.md` diff --git a/package-lock.json b/package-lock.json index 7263d87..dfef82d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "design-vibe", - "version": "0.1.2", + "version": "0.1.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "design-vibe", - "version": "0.1.2", + "version": "0.1.3", "dependencies": { "@ai-sdk/anthropic": "^3.0.37", "@ai-sdk/google": "^3.0.21", diff --git a/package.json b/package.json index 2dadaba..9597009 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "design-vibe", - "version": "0.1.2", + "version": "0.1.3", "private": true, "scripts": { "dev": "next dev", diff --git a/src/app/api/health/route.ts b/src/app/api/health/route.ts index 1b76bd2..db6a0bc 100644 --- a/src/app/api/health/route.ts +++ b/src/app/api/health/route.ts @@ -2,6 +2,6 @@ export async function GET() { return Response.json({ status: "ok", timestamp: new Date().toISOString(), - version: "0.1.2", + version: "0.1.3", }); }