zot/packages/provider
patriceckhart 1a24a204b4
Some checks are pending
ci / test (macos-latest) (push) Waiting to run
ci / test (ubuntu-latest) (push) Waiting to run
ci / test (windows-latest) (push) Waiting to run
fix: correct image MIME by content and re-encode for kitty
read tool and Anthropic builder derived an image's media type from its
file extension, so a .png file containing JPEG bytes was declared
image/png. Anthropic sniffs the real bytes and 400s the whole request
on a mismatch, breaking the session and making it impossible to resume.

- read tool now sniffs the real format from magic bytes (sniffImageMIME)
- Anthropic request builder reconciles declared MIME against the actual
  bytes on every outbound image, repairing already-persisted sessions on
  continue/resume
- kitty renderer re-encodes non-PNG images to PNG (f=100 is PNG-only),
  fixing empty image boxes for JPEG/GIF screenshots
2026-06-20 18:18:52 +02:00
..
auth Harden custom provider support 2026-06-16 20:17:25 +02:00
amazon_bedrock.go fix(bedrock): handle ImageBlock in tool results and user messages 2026-06-17 10:14:53 -04:00
amazon_bedrock_test.go test(bedrock): format image tool result regression test 2026-06-17 16:25:05 +02:00
anthropic.go feat(provider): adaptive thinking + xhigh effort for Opus 4.7/4.8 2026-05-29 14:21:38 +02:00
anthropic_image.go fix: correct image MIME by content and re-encode for kitty 2026-06-20 18:18:52 +02:00
anthropic_image_test.go fix: correct image MIME by content and re-encode for kitty 2026-06-20 18:18:52 +02:00
azure_openai.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
cache.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
catalog_builtin.go feat(provider): temporarily add claude-fable-5 to the Bedrock catalog 2026-06-10 07:50:47 +02:00
discover.go refactor: simplify OpenRouter context window selection 2026-06-09 23:45:31 +08:00
discover_openrouter_test.go fix(provider): clamp max_tokens to fit context window with proportional reserve 2026-06-09 19:29:48 +02:00
extra_models.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
extra_providers.go feat(provider): support custom providers defined in models.json 2026-06-16 09:53:25 -07:00
gemini.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
gemini_test.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
github_copilot.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
google_vertex.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
google_vertex_test.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
httpclient.go Scope --insecure TLS to explicit base URL, drop global transport override 2026-06-16 07:41:38 +02:00
httpclient_test.go Scope --insecure TLS to explicit base URL, drop global transport override 2026-06-16 07:41:38 +02:00
labels.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
merge.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
models.go feat(provider): temporarily add claude-fable-5 to the builtin catalog 2026-06-09 20:20:35 +02:00
openai.go fix(provider): keep /v4 base from getting a spurious /v1 chat path 2026-06-14 21:45:53 +02:00
openai_clamp_test.go fix(provider): clamp max_tokens to fit context window with proportional reserve 2026-06-09 19:29:48 +02:00
openai_codex.go fix(provider): deliver tool-result images to the OpenAI Responses route 2026-05-29 14:21:51 +02:00
openai_codex_test.go fix(provider): deliver tool-result images to the OpenAI Responses route 2026-05-29 14:21:51 +02:00
openai_responses.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
openai_url_test.go fix(provider): keep /v4 base from getting a spurious /v1 chat path 2026-06-14 21:45:53 +02:00
provider.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
provider_test.go provider: discover OpenRouter models live, drop baked-in catalog 2026-06-05 15:20:54 +02:00
reasoning.go feat(provider): adaptive thinking + xhigh effort for Opus 4.7/4.8 2026-05-29 14:21:38 +02:00
reasoning_test.go feat(provider): adaptive thinking + xhigh effort for Opus 4.7/4.8 2026-05-29 14:21:38 +02:00
refreshing.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
retry.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
retry_test.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
sse.go refactor: split source into packages/{provider,core,tui,agent} 2026-05-27 09:07:15 +02:00
usermodels.go Harden custom provider support 2026-06-16 20:17:25 +02:00
usermodels_test.go Harden custom provider support 2026-06-16 20:17:25 +02:00