Mario Zechner
8fdd77b652
Release v0.27.9
2025-12-24 21:25:20 +01:00
Mario Zechner
a965b6f160
Release v0.27.8 - OAuth takes priority over settings.json API keys
2025-12-24 20:52:22 +01:00
Mario Zechner
60768b90f3
Add [Unreleased] section for next cycle
2025-12-24 18:31:13 +01:00
Mario Zechner
89630b0d44
Release v0.27.7
2025-12-24 18:30:53 +01:00
Mario Zechner
29379ea0a6
Fix thinking tag leakage by converting unsigned blocks to plain text
...
Closes #302
2025-12-24 18:15:19 +01:00
Mario Zechner
2b22c3ce75
Add [Unreleased] section to changelog
2025-12-24 14:00:04 +01:00
Mario Zechner
3eb460ee50
Release v0.27.6
2025-12-24 13:59:09 +01:00
Mario Zechner
705ba5d4f2
Improve compaction hooks: add signal, no timeout, SessionManager cleanup, docs
2025-12-24 13:54:05 +01:00
Mario Zechner
5aa53ded11
Add full-compaction hook example
2025-12-24 12:25:36 +01:00
Mario Zechner
bf313d2713
Release v0.27.5
2025-12-24 12:18:51 +01:00
Mario Zechner
9851ee3bdb
Add syntax highlighting to HTML export using highlight.js
2025-12-24 12:13:56 +01:00
Mario Zechner
20b24cf5a4
Fix symlinked skill directories not being discovered
...
Release v0.27.4
2025-12-24 03:32:54 +01:00
Mario Zechner
f8619c1564
Release v0.27.3
2025-12-24 02:46:23 +01:00
Mario Zechner
c57ed89110
Release v0.27.2
2025-12-23 03:48:52 +01:00
Mario Zechner
4492a3f304
Release v0.27.1
2025-12-22 19:28:26 +01:00
Mario Zechner
093bcecf95
Add [Unreleased] section for next cycle
2025-12-22 18:21:15 +01:00
Mario Zechner
b9b44f4cf4
Release v0.27.0
2025-12-22 18:20:10 +01:00
Mario Zechner
42d7d9d9b6
Add before/after session events with cancellation support
...
- Merge branch event into session with before_branch/branch reasons
- Add before_switch, before_clear, shutdown reasons
- before_* events can be cancelled with { cancel: true }
- Update RPC commands to return cancelled status
- Add shutdown event on process exit
- New example hooks: confirm-destructive, dirty-repo-guard, auto-commit-on-exit
fixes #278
2025-12-22 18:18:38 +01:00
Mario Zechner
7e1b632596
Release v0.26.1
2025-12-22 16:19:19 +01:00
Mario Zechner
42bc368e70
Release v0.26.0
2025-12-22 12:53:58 +01:00
Mario Zechner
11e743373d
Fix syntax highlighting stderr spam with malformed markdown, fixes #274
2025-12-22 00:23:01 +01:00
Mario Zechner
d5fd685901
Enable more biome lints and fix things
2025-12-21 22:56:20 +01:00
Mario Zechner
9c18439c4d
Release v0.25.3
2025-12-21 21:01:27 +01:00
Mario Zechner
ace3563f0e
Add tests for Gemini 3 models with thinkingLevel
2025-12-21 20:34:39 +01:00
Mario Zechner
329b3a0a36
Merge PR #264 : Add Gemini 3 preview models to google-gemini-cli provider
2025-12-21 20:31:19 +01:00
Mario Zechner
55ca650a40
Update README to include github-copilot, google-gemini-cli, google-antigravity providers
2025-12-21 20:17:12 +01:00
Luke Foster
ee9b498380
Add Gemini 3 preview models to google-gemini-cli provider
...
- Add gemini-3-pro-preview and gemini-3-flash-preview to Cloud Code Assist
- Handle thinkingLevel config for Gemini 3 (vs thinkingBudget for Gemini 2.x)
- Gemini 3 Pro: LOW/HIGH levels only
- Gemini 3 Flash: all four levels (MINIMAL/LOW/MEDIUM/HIGH)
2025-12-20 22:10:47 -06:00
Mario Zechner
299986f06b
Release v0.25.2
2025-12-21 02:59:03 +01:00
Mario Zechner
c97702cf91
Release v0.25.1
2025-12-21 02:43:47 +01:00
Mario Zechner
bf51dd4126
Fix Gemini multimodal tool results causing flaky responses
...
For Gemini 3, images are now nested inside functionResponse.parts per the docs.
For older models, images are sent in a separate user message.
See: https://ai.google.dev/gemini-api/docs/function-calling#multimodal
2025-12-21 02:41:27 +01:00
Mario Zechner
ce950ae96e
Clean-up
2025-12-20 22:15:30 +01:00
Mario Zechner
df07a74ad5
Release v0.25.0
2025-12-20 22:02:47 +01:00
Mario Zechner
a81dc5eaca
Add configurable OAuth storage backend and respect --models in model selector
...
- Add setOAuthStorage() and resetOAuthStorage() to pi-ai for custom storage backends
- Configure coding-agent to use its own configurable OAuth path via getOAuthPath()
- Model selector (/model command) now only shows models from --models scope when set
- Rewrite OAuth documentation in pi-ai README with examples
Fixes #255
2025-12-20 22:00:53 +01:00
Peter Steinberger
87fc6b5208
docs(ai): add queued steering changelog
2025-12-20 21:34:53 +01:00
Peter Steinberger
117af076c4
feat(ai): interrupt tool batch on queued messages
2025-12-20 21:34:53 +01:00
Mario Zechner
6a319f9c3c
Add OAuth providers to test suite and improve test coverage
...
Tests updated:
- abort.test.ts: Add Google Gemini CLI, add retries
- agent.test.ts: Add OAuth providers (Anthropic, GitHub Copilot, Gemini CLI, Antigravity), add retries, remove timeouts
- context-overflow.test.ts: Handle Cerebras 429 status code
- image-tool-result.test.ts: Add OAuth providers
- overflow.ts: Detect 429 as overflow for Cerebras
Removed obsolete debug/one-off tests:
- copilot-initiator.test.ts
- gemini-3-flash-tool-calling.test.ts
- google-thought-signature.test.ts
- mistral-debug.test.ts
- mistral-empty-assistant.test.ts
- mistral-sdk.test.ts
2025-12-20 21:34:19 +01:00
Mario Zechner
fb1fdb6006
Fix orphaned tool calls by inserting synthetic empty results
...
When a user interrupts a tool call flow (sends a message without providing
tool results), APIs like OpenAI Responses and Anthropic fail because:
- OpenAI requires tool outputs for function calls
- OpenAI requires reasoning items to have their following items
- Anthropic requires non-empty content for error tool results
Instead of filtering out orphaned tool calls (which breaks thinking signatures),
we now insert synthetic empty tool results with isError: true and content
'No result provided'. This preserves the conversation structure and satisfies
all API requirements.
2025-12-20 21:34:19 +01:00
Mario Zechner
95fcda5887
Broader testing, more providers.
2025-12-20 21:34:19 +01:00
Mario Zechner
2a0283ecfd
Fix token counts in google-gemini-cli.ts for anthropic models.
2025-12-20 21:34:18 +01:00
Mario Zechner
c359023c3f
Add Google Gemini CLI and Antigravity OAuth providers
...
- Add google-gemini-cli provider: free Gemini 2.0/2.5 via Cloud Code Assist
- Add google-antigravity provider: free Gemini 3, Claude, GPT-OSS via sandbox
- Move OAuth infrastructure from coding-agent to ai package
- Fix thinking signature handling for cross-model handoff
- Fix OpenAI message ID length limit (max 64 chars)
- Add GitHub Copilot overflow pattern detection
- Add OAuth provider tests for context overflow and streaming
2025-12-20 21:34:18 +01:00
Nico Bailon
81e820d01a
fix: preserve Gemini thought signatures for tool calls
2025-12-20 07:12:37 -08:00
Mario Zechner
b6fe07b618
feat(coding-agent): add Google Cloud Code Assist OAuth flow
...
- Add OAuth handler with PKCE flow and local callback server
- Automatic project discovery via loadCodeAssist/onboardUser endpoints
- Store credentials with projectId for API calls
- Encode token+projectId as JSON for provider to decode
- Register as 'google-cloud-code-assist' OAuth provider
2025-12-20 10:27:07 +01:00
Mario Zechner
36e17933d5
feat(ai): add Google Cloud Code Assist provider
...
- Add new API type 'google-cloud-code-assist' for Gemini CLI / Antigravity auth
- Extract shared Google utilities to google-shared.ts
- Implement streaming provider for Cloud Code Assist endpoint
- Add 7 models: gemini-3-pro-high/low, gemini-3-flash, claude-sonnet/opus, gpt-oss
Models use OAuth authentication and have sh cost (uses Google account quota).
OAuth flow will be implemented in coding-agent in a follow-up.
2025-12-20 10:20:30 +01:00
Mario Zechner
04dcdebbc6
docs: add changelog entry for Anthropic SDK retries
2025-12-20 09:57:03 +01:00
Mario Zechner
0fc6689dfb
fix(ai): re-enable SDK retries for Anthropic provider
...
The SDK default of 2 retries handles transient HTTP failures quickly,
while coding-agent retries handle persistent errors with user feedback.
2025-12-20 09:56:11 +01:00
Mario Zechner
3f307f8786
docs: add changelog entries for #251 and #253
2025-12-20 09:52:57 +01:00
Mario Zechner
c712901eb2
Merge pull request #251 from shellfyred/fix/gemini-baseurl-double-path
...
fix(ai): prevent double API version path in Google provider URL
2025-12-20 09:35:34 +01:00
Mario Zechner
085294b764
Release v0.24.5
2025-12-19 22:09:35 +01:00
Mario Zechner
f377c3c9c3
Release v0.24.4
2025-12-19 21:54:36 +01:00
Cyril
6ff405a976
fix(ai): prevent double API version path in Google provider URL
2025-12-19 20:41:07 +00:00