Commit Graph

61 Commits

Author SHA1 Message Date
Tinh To
511afdb8b1 Bump version to 1.2.9-beta.0 2026-01-08 13:12:25 +07:00
tctinh
a3791965b7 chore: bump version to 1.2.8 for release 2026-01-08 12:37:24 +07:00
Tinh To
b37bb538ff Bump version to 1.2.8-beta.4 2026-01-08 12:35:17 +07:00
github-actions[bot]
d0c549baf4 chore: bump version to 1.2.8-beta.3 [skip ci] 2026-01-06 20:16:48 +00:00
github-actions[bot]
295aa1aa6f chore: bump version to 1.2.8-beta.2 [skip ci] 2026-01-05 17:29:09 +00:00
tctinh
9cbc1b3043 chore: update version to 1.2.8-beta.2 in package.json 2026-01-06 00:28:22 +07:00
tctinh
f713005f38 feat: add file locking and multi-session PID offset
- File locking via proper-lockfile for concurrent write safety
- Atomic writes with temp file + rename pattern
- Merge-on-write pattern to preserve concurrent changes
- PID-based offset so different sessions start at different accounts
- Remove unused import (extractVariantThinkingConfig)
2026-01-05 23:23:37 +07:00
Muhammad Septian
88c5dd091e Merge branch 'dev' into multi-account-issue 2026-01-02 10:32:37 +07:00
tctinh
ee80aeaba4 fix: apply cross-model signature sanitization to single requests
Fixes #70 - Gemini thoughtSignature persisting when switching to Claude

Root cause: sanitizeCrossModelPayloadInPlace() was only called for batched
requests, not for single requests. Gemini's thoughtSignature in tool metadata
persisted and caused Claude to reject with 'Invalid signature in thinking block'.

Bumps version to 1.2.8-beta.0
2026-01-01 10:34:48 +07:00
tctinh
a6489f3cc2 chore: release v1.2.7 - pin version for official release 2026-01-01 08:56:09 +07:00
github-actions[bot]
31ef265b60 chore: bump version to 1.2.7-beta.7 [skip ci] 2025-12-31 16:24:34 +00:00
tctinh
85b82e6c2d chore: bump version to 1.2.7-beta.7 and remove unused getPublicModelName function
fix: gemini cli model endpoint not working
2025-12-31 23:23:50 +07:00
Younghoon CHOI _^
a7704694f1 Merge branch 'dev' into fix/port-in-use-error-message 2025-12-31 22:50:30 +09:00
bi9choi
c89a7b8070 chore: bump version to 1.2.7-beta.6 2025-12-31 22:49:39 +09:00
Tinh To
a5ef5d235e Bump version to 1.2.7-beta.5 2025-12-31 01:42:48 +07:00
tctinh
2455a7d4a3 fix: cross-model signature sanitization for Gemini-Claude session switching
Fixes 'Invalid signature in thinking block' error when switching models mid-session.

Root cause: Gemini stores thoughtSignature in metadata.google on tool call parts,
but existing strippers only checked top-level signatures. When switching to Claude
with a tool call, the foreign signature caused validation errors.

Changes:
- Add cross-model-sanitizer module for bi-directional sanitization (Gemini<->Claude)
- Integrate sanitizer into request pipeline for Claude models
- Add 42 new tests (28 unit + 14 integration)
- Add E2E test scripts for 5-model verification

Tested with: Gemini, Claude (Anthropic), Claude (Google), OpenAI, all passing.
2025-12-30 11:15:38 +07:00
tctinh
df244b8709 fix: update version to 1.2.7-beta.3 in package.json 2025-12-29 23:21:35 +07:00
tctinh
d2006b6bb4 bump version to 1.2.7-beta.2 in package.json 2025-12-28 16:13:56 +07:00
tctinh
77ac0395e7 Clear version mismatch in package.json: 2025-12-28 00:39:42 +07:00
github-actions[bot]
1aa03f3bb8 chore: bump version to 1.2.7-beta.1 [skip ci] 2025-12-27 17:37:24 +00:00
tctinh
16f4bb07a1 feat: add E2E testing scripts and simplify Gemini Flash model config
- Add test-models.ts for validating all supported model endpoints
- Add test-regression.ts for multi-turn regression testing (Issue #50)
- Consolidate Gemini 3 Flash variants (low/medium/high) into single model
- Fix schema structure by flattening nested signature_cache properties
- Extract streaming transformer utilities to dedicated module
2025-12-28 00:04:57 +07:00
tctinh
ba2891bf57 Update README.md and bump beta version 2025-12-27 16:47:32 +07:00
tctinh
7bef0105ef Merge remote-tracking branch 'origin/dev' into feature/gemini-cli-routing 2025-12-27 11:21:11 +07:00
tctinh
bedbd54a2d chore: bump dev to 1.2.7-beta.0
Keeping dev ahead of main for next development cycle.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-26 22:11:07 +07:00
tctinh
b08f155c28 chore: bump version to 1.2.6
Starting fresh with 1.2.6 release to avoid confusion with previous 1.2.5.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-26 22:09:57 +07:00
tctinh
a661b5cdec fix: restore main version to 1.2.5 [skip ci] 2025-12-26 22:03:45 +07:00
tctinh
1725139e75 chore: bump version to 1.2.6-beta.0 for next development cycle
Start 1.2.6 development cycle after 1.2.5 release.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-26 21:49:41 +07:00
tctinh
68968e52af fix: restore version to 1.2.5 and add CI/CD safeguards
- Fix version from 1.2.5-beta.7 back to official 1.2.5
- Add prerelease version check in release workflow to prevent publishing beta versions as official
- Add branch verification in beta workflow to prevent accidental runs on main branch

This prevents the issue where dev branch with beta versions was merged into main,
causing the main branch to have a prerelease version number.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-26 21:46:32 +07:00
github-actions[bot]
3b2be6f2db chore: bump version to 1.2.5-beta.7 [skip ci] 2025-12-26 14:39:00 +00:00
Tinh To
53409276f1 Bump version from 1.2.5-beta.6 to 1.2.5 2025-12-26 21:38:51 +07:00
github-actions[bot]
7158d4926b chore: bump version to 1.2.5-beta.6 [skip ci] 2025-12-26 11:01:24 +00:00
tctinh
59a108819e chore: update version to 1.2.5-beta.5 and add zod-to-json-schema dependency 2025-12-26 17:57:21 +07:00
tctinh
e4cb087ee9 refactor: remove medium tier models and update model resolution logic 2025-12-26 17:49:43 +07:00
tctinh
7c43511f7a feat: add prefix-based quota routing for Gemini CLI vs Antigravity
- Add 'antigravity-' prefix to route to Antigravity quota
- Models without prefix route to Gemini CLI quota
- Claude/GPT models auto-route to Antigravity (only available there)
- Gemini 3 tiers: Pro supports low/high, Flash supports minimal/low/medium/high
- Add thinkingLevel param for Gemini CLI, keep tier in model name for Antigravity

Resolves #51
2025-12-26 17:36:20 +07:00
github-actions[bot]
13f90a7a1c chore: bump version to 1.2.5-beta.4 [skip ci] 2025-12-26 07:57:43 +00:00
github-actions[bot]
4b1adb3fa3 chore: bump version to 1.2.5-beta.3 [skip ci] 2025-12-26 07:53:18 +00:00
github-actions[bot]
4cb7bc5ea8 chore: bump version to 1.2.5-beta.2 [skip ci] 2025-12-26 05:56:05 +00:00
github-actions[bot]
7afcf560b3 chore: bump version to 1.2.5-beta.1 [skip ci] 2025-12-26 05:08:02 +00:00
tctinh
5dcfb293bd chore: set version to 1.2.5-beta.0 for dev releases 2025-12-26 11:56:22 +07:00
tctinh
1f23cc18c2 ci: auto-increment beta versions on dev branch
- Workflow now auto-detects highest existing beta (from tags + npm)
- Increments to next beta: X.Y.Z-beta.N -> X.Y.Z-beta.(N+1)
- Updates package.json automatically with [skip ci]
- No manual version bumping needed for dev releases
- Bump base version to 1.2.6 for next release cycle
2025-12-26 11:51:12 +07:00
tctinh
6c1e3b7b40 feat: Implement session recovery module for handling recoverable errors
- Added recovery functionality for tool_result_missing, thinking_block_order, and thinking_disabled_violation errors.
- Introduced constants and types for session recovery.
- Created storage utilities for reading and writing session data.
- Enhanced debug logging capabilities in debug.ts.
- Refactored debug state management for better initialization and access.
2025-12-26 02:09:15 +07:00
tctinh
dd5ea5556f feat: update Claude model handling to strip all thinking blocks, eliminating signature errors, improve parsing tool and thinking logic reference to CLIProxyAPI 2025-12-24 14:35:12 +07:00
tctinh
9e430af3e6 feat: implement thinking signature safeguards and enhance filtering mechanisms 2025-12-23 14:40:27 +07:00
Noe
5b10ab7e3a v1.2.2 2025-12-22 23:30:23 +01:00
Noe
97d9b344a2 chore: bump version to 1.2.1 2025-12-21 12:40:38 +01:00
Noe
b169a3c0c9 Merge remote-tracking branch 'origin/main' into claude-improvements 2025-12-17 19:26:07 +00:00
Noe
26edee5310 feat: add support for Gemini 3 Flash 2025-12-17 17:47:18 +00:00
Noe
314ac9d427 feat(claude): add multi-turn thinking signature caching and real-time SSE streaming
Implement comprehensive support for Claude thinking models with interleaved
thinking in multi-turn conversations:

- Add signature caching system to preserve and restore thinking block
  signatures across conversation turns, preventing "invalid signature" errors
- Enable real-time SSE streaming with immediate forwarding of thinking tokens
- Add interleaved-thinking-2025-05-14 beta header for Claude thinking models
- Implement smart system hints to encourage thinking during tool use
- Add VALIDATED mode for tool calling on Claude models
- Ensure output token limits accommodate thinking budgets
- Filter and sanitize thinking blocks, removing SDK-injected cache_control
- Add comprehensive test suites for auth, cache, and request-helpers modules
- Update build config to exclude test files from production builds
- Document streaming and thinking features in README
2025-12-17 15:52:40 +00:00
Noe
debcfb7443 fix: add modalities support for input/output in configuration and improve toast notifications in plugin 2025-12-17 00:18:21 +00:00
Noe
c42a90d645 feat(auth): add login mode selection and improve rate limit handling
- Add CLI prompt to choose between adding accounts or starting fresh
- Implement automatic retry with backoff for single-account rate limits
- Show toast notifications for account switching and rate limit status
- Clear stale account storage when OpenCode auth state changes
- Add sleep helper function with abort signal support
- Improve README with clearer step-by-step setup instructions

TUI flow now adds accounts non-destructively; CLI flow offers choice.
2025-12-17 00:09:17 +00:00