Commit graph

3964 commits

Author SHA1 Message Date
dependabot[bot] 8b730d1967
chore(deps): bump github.com/go-git/go-git/v5
Bumps the go_modules group with 1 update in the / directory: [github.com/go-git/go-git/v5](https://github.com/go-git/go-git).


Updates `github.com/go-git/go-git/v5` from 5.17.0 to 5.17.1
- [Release notes](https://github.com/go-git/go-git/releases)
- [Commits](https://github.com/go-git/go-git/compare/v5.17.0...v5.17.1)

---
updated-dependencies:
- dependency-name: github.com/go-git/go-git/v5
  dependency-version: 5.17.1
  dependency-type: direct:production
  dependency-group: go_modules
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 17:16:33 +00:00
Sathvik C 631d02cc27 style(youtube): remove unnecessary blank lines in GrabVisual function 2026-03-27 08:07:10 -05:00
dependabot[bot] 704ef832ca
chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates
Bumps the npm_and_yarn group with 1 update in the /web directory: [yaml](https://github.com/eemeli/yaml).


Updates `yaml` from 2.8.2 to 2.8.3
- [Release notes](https://github.com/eemeli/yaml/releases)
- [Commits](https://github.com/eemeli/yaml/compare/v2.8.2...v2.8.3)

Updates `yaml` from 1.10.2 to 1.10.3
- [Release notes](https://github.com/eemeli/yaml/releases)
- [Commits](https://github.com/eemeli/yaml/compare/v2.8.2...v2.8.3)

Updates `flatted` from 3.4.1 to 3.4.2
- [Commits](https://github.com/WebReflection/flatted/compare/v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: yaml
  dependency-version: 2.8.3
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: yaml
  dependency-version: 1.10.3
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: flatted
  dependency-version: 3.4.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-26 14:03:37 +00:00
github-actions[bot] 83b77a59bd chore(release): Update version to v1.4.442 2026-03-25 23:59:29 +00:00
Kayvan Sylvan 294954d7e6
Merge pull request #2075 from ksylvan/kayvan/pr-2063
refactor: extract OAuth and auth logic from Codex client module

Thanks @mikaelpr for the initial work on this.
2026-03-25 16:57:21 -07:00
Kayvan Sylvan c271816d2d feat: add i18n translations for Codex OAuth and error messages
- Add 17 new Codex-related i18n keys across all locale files
- Replace hardcoded English strings in OAuth flow with i18n lookups
- Internationalize Codex error messages in `errors.go`
- Localize token exchange and refresh failure messages
- Translate OAuth callback server responses and browser fallback text
- Add translations for usage limit and request status errors
- Cover DE, EN, ES, FA, FR, IT, JA, PL, PT-BR, PT-PT, ZH locales
2026-03-25 16:49:12 -07:00
Kayvan Sylvan 2e0abdd78a refactor: propagate context.Context through Vendor interface methods
- Add `context.Context` parameter to `ListModels` interface method
- Add `context.Context` parameter to `SendStream` interface method
- Thread caller context through `Chatter.Send` instead of using `context.Background()`
- Update all vendor implementations to accept context parameter
- Introduce `publicError` type wrapping Codex provider errors
- Normalize Codex error messages to lowercase for consistency
- Add context-aware `sendStreamUpdate` helper in Codex client
- Remove stale `context.Background()` calls from Anthropic and Azure AI Gateway
- Update all vendor test mocks and stubs with new signatures
- Pass HTTP request context from server handler into `chatter.Send`
2026-03-25 16:09:10 -07:00
Kayvan Sylvan 070c626b7b refactor: extract OAuth and auth logic from Codex client module
- Remove OAuth flow, PKCE, and token refresh from codex.go
- Remove auth transport round-trip retry logic
- Remove unused OAuth types and helper structs
- Remove JWT parsing and token expiry utilities
- Remove error mapping and usage limit detection helpers
- Remove browser-open and version normalization functions
- Add `.maestro/` directory to `.gitignore`
- Add test for `SendStream` HTTP error mapping and channel close
- Clean up unused imports from codex client package
2026-03-25 15:32:40 -07:00
Sathvik C f812188115 fix(youtube): resolve tesseract CLI args, racy error handling, timestamp overflow, and import ordering 2026-03-24 14:04:20 -05:00
Sathvik C 8aa7a703dc refactor(youtube): implement bounded OCR concurrency, context timeouts, and CLI argument security 2026-03-24 13:35:10 -05:00
Sathvik C f44d44b077 docs(youtube): document visual extraction flags in README 2026-03-24 13:24:08 -05:00
Sathvik C e42d8b8fec feat(youtube): make visual extraction parameters configurable via CLI flags 2026-03-24 13:21:22 -05:00
Sathvik C 8368ecf35f fix(youtube): support multi-line yt-dlp outputs and modern ffmpeg syntax 2026-03-24 13:19:29 -05:00
Sathvik C 086e196ade feat(youtube): implement FFmpeg and Tesseract visual extraction 2026-03-24 12:06:57 -05:00
github-actions[bot] 7773b82238 chore(release): Update version to v1.4.441 2026-03-22 15:00:32 +00:00
Kayvan Sylvan 63a3e17851
Merge pull request #2068 from danielmiessler/dependabot/go_modules/go_modules-9c5197dcb8
chore(deps): bump google.golang.org/grpc from 1.79.0 to 1.79.3 in the go_modules group across 1 directory
2026-03-22 07:58:19 -07:00
Kayvan Sylvan 398432d46b chore: incoming 2068 changelog entry 2026-03-22 07:54:47 -07:00
Kayvan Sylvan e5d0d7f630 chore: update Go module dependencies and remove deprecated Anthropic model aliases
- Bump `anthropic-sdk-go` from v1.23.0 to v1.27.1
- Upgrade AWS SDK Go v2 packages to latest patch versions
- Update `gin-gonic/gin` to v1.12.0 and `go-git` to v5.17.0
- Bump `ollama/ollama` from v0.16.2 to v0.18.2
- Upgrade `google.golang.org/api` to v0.272.0 and `genai` to v1.51.0
- Update OpenTelemetry packages to v1.42.0/v0.67.0
- Bump `golang.org/x` packages to latest minor versions
- Remove deprecated `ModelClaude4Sonnet20250514` and `ModelClaude4Opus20250514` aliases
- Add `go.mongodb.org/mongo-driver/v2` as new indirect dependency
2026-03-22 07:54:47 -07:00
dependabot[bot] e3200d5dc6 chore(deps): bump google.golang.org/grpc
Bumps the go_modules group with 1 update in the / directory: [google.golang.org/grpc](https://github.com/grpc/grpc-go).


Updates `google.golang.org/grpc` from 1.79.0 to 1.79.3
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.79.0...v1.79.3)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.79.3
  dependency-type: indirect
  dependency-group: go_modules
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-22 07:54:47 -07:00
github-actions[bot] 1007b04c17 chore(release): Update version to v1.4.440 2026-03-19 18:02:25 +00:00
Kayvan Sylvan 516a7a6e32
Merge pull request #2064 from JasonYeYuhe/docs/chinese-translation
docs: add Chinese translation (README.zh.md)
2026-03-19 11:00:02 -07:00
Kayvan Sylvan 51eadd9152 fix: Add missing sections to Chinese README 2026-03-19 10:55:50 -07:00
Kayvan Sylvan a76ca3572d chore: incoming 2064 changelog entry 2026-03-19 10:55:50 -07:00
Kayvan Sylvan aab4ef15f5 chore: add Claude MEMORY to .gitignore 2026-03-19 10:55:50 -07:00
Kayvan Sylvan 81aa983b03 chore: remove duplicate key in zh locale. 2026-03-19 10:55:50 -07:00
YE 71e3dcd94d Refine Chinese translations for better idiomaticity 2026-03-19 10:55:50 -07:00
YE 3c713c4fa8 docs: add Chinese translation (README.zh.md) 2026-03-19 10:55:50 -07:00
github-actions[bot] 5631f36962 chore(release): Update version to v1.4.439 2026-03-18 17:55:34 +00:00
Kayvan Sylvan 9791e4d10d
Merge pull request #2066 from octo-patch/feature/upgrade-minimax-m27
feat: upgrade MiniMax default model to M2.7
2026-03-18 10:53:10 -07:00
Kayvan Sylvan 86f49f222a chore: incoming 2066 changelog entry 2026-03-18 10:41:27 -07:00
Kayvan Sylvan 7023e15d0a
Merge branch 'main' into feature/upgrade-minimax-m27 2026-03-18 10:40:50 -07:00
github-actions[bot] 403612c046 chore(release): Update version to v1.4.438 2026-03-18 17:35:32 +00:00
Kayvan Sylvan b387dcb42c
Merge pull request #2061 from praxstack/fix/chat-streaming-deadlock-and-strategy-unification
fix(chat): prevent streaming deadlock and unify strategy handling
2026-03-18 10:33:03 -07:00
Kayvan Sylvan 4412a244ef chore: incoming 2061 changelog entry 2026-03-18 10:30:37 -07:00
octo-patch 42ecceab4f feat: upgrade MiniMax default model to M2.7
- Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to static model list
- Place M2.7 models at the top of the list as new defaults
- Retain all previous models (M2.5, M2.5-highspeed, M2.5-lightning, M2, M2.1, M2.1-lightning) as alternatives

MiniMax-M2.7 is the latest flagship model with enhanced reasoning and coding capabilities.
2026-03-18 13:33:09 +08:00
Prax Lannister 3dd498bc47 fix(chat): prevent streaming deadlock and unify strategy handling
## Bug: Streaming Deadlock in Chatter.Send

When a streaming error occurs, two goroutines can race to write to the
same buffered(1) error channel:

1. The SendStream goroutine returns an error and writes to errChan
2. The stream-update loop receives a StreamTypeError update and also
   writes to errChan

Since errChan has a buffer of 1, the second write blocks forever,
causing a goroutine leak and a deadlock — the caller never returns.

### Fix

Introduce `recordFirstStreamError()` which uses a non-blocking
select/default to safely send only the first error, discarding
subsequent ones. This prevents the deadlock while preserving the
original error for the caller.

### Scenario that triggers the deadlock (before this fix):

  1. Vendor stream emits a StreamTypeError update (e.g., rate limit)
  2. The update loop writes the error to errChan (buffer fills)
  3. SendStream also returns an error
  4. SendStream goroutine tries to write to errChan → BLOCKS FOREVER
  5. Chatter.Send never returns → user sees a hang

## Refactor: Unify Strategy Handling (Server + CLI)

The REST API server (chat.go) was loading strategy prompts inline by
reading JSON files directly with os.ReadFile, bypassing the core
Chatter layer entirely. This caused:

- Strategy prompts were prepended to UserInput instead of the system
  message, breaking the prompt architecture
- The StrategyName was not passed to GetChatter(), so the core layer
  had no knowledge of the strategy
- Duplicate strategy-loading logic between CLI and server paths

### Fix

- Pass StrategyName through to GetChatter() and ChatRequest so the
  core Chatter.BuildSession() handles strategy loading uniformly
- Extract `buildPromptChatRequest()` helper for clean request
  construction
- Remove inline os.ReadFile strategy loading from the server handler

## Refactor: Clean System Message Assembly

Replace raw string concatenation of context + pattern + strategy
prompts with `joinPromptSections()` which:

- Trims whitespace from each section
- Skips empty sections (no double newlines from missing context)
- Joins with a single newline separator

## Tests Added

- `TestChatter_BuildSession_SeparatesSystemSections`: Verifies
  strategy, context, and pattern are joined with newline separators
  in the correct order
- `TestChatter_Send_StreamingErrorUpdateAndReturnDoesNotDeadlock`:
  Regression test with 2-second timeout that catches the deadlock
  when both error paths fire simultaneously
- `TestBuildPromptChatRequest_PreservesStrategyAndUserInput`: Verifies
  the extracted helper preserves all fields including StrategyName
2026-03-18 04:42:03 +05:30
github-actions[bot] 16b2063369 chore(release): Update version to v1.4.437 2026-03-16 17:26:13 +00:00
Kayvan Sylvan f16fb8b06e
Merge pull request #2056 from mikaelpr/codex/add-codex-oauth-vendor
feat: add Codex vendor with OpenAI OAuth
2026-03-16 10:23:47 -07:00
Kayvan Sylvan 3c40a3462d feat: add OpenAI Codex vendor with browser-based OAuth authentication
- Add new Codex AI vendor plugin with OpenAI OAuth PKCE flow
- Implement browser-based login with automatic token refresh on 401
- Register Codex client in the plugin registry
- Allow explicit Codex model selection bypassing model listing
- Expose shared OpenAI `BuildResponseParams` and `ExtractText` helpers
- Move system/developer messages into Codex `instructions` field
- Add Codex i18n strings across all supported locales
- Add comprehensive unit tests for Codex OAuth, streaming, and retry
- Update README with Codex feature entry and provider listing
- Trim older changelog entries from README recent features section
2026-03-16 10:20:23 -07:00
github-actions[bot] c90d6d75f4 chore(release): Update version to v1.4.436 2026-03-15 22:02:42 +00:00
Kayvan Sylvan 0809a64c8d
Merge pull request #2060 from octo-patch/feature/add-minimax-m25-highspeed
feat: add MiniMax-M2.5-highspeed to static model list
2026-03-15 15:00:23 -07:00
Kayvan Sylvan 70977dfc0a chore: incoming 2060 changelog entry 2026-03-15 14:59:16 -07:00
github-actions[bot] 1271bb5fbd chore(release): Update version to v1.4.435 2026-03-15 19:10:39 +00:00
Kayvan Sylvan 36c5114b19
Merge pull request #2058 from danielmiessler/dependabot/npm_and_yarn/web/npm_and_yarn-67fcbebea9
chore(deps-dev): bump devalue from 5.6.3 to 5.6.4 in /web in the npm_and_yarn group across 1 directory
2026-03-15 12:08:21 -07:00
dependabot[bot] 73cd571624 chore(deps-dev): bump devalue
Bumps the npm_and_yarn group with 1 update in the /web directory: [devalue](https://github.com/sveltejs/devalue).

Updates `devalue` from 5.6.3 to 5.6.4
- [Release notes](https://github.com/sveltejs/devalue/releases)
- [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sveltejs/devalue/compare/v5.6.3...v5.6.4)

---
updated-dependencies:
- dependency-name: devalue
  dependency-version: 5.6.4
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-15 11:59:44 -07:00
Kayvan Sylvan 5689858ce5 chore: incoming 2060 changelog entry 2026-03-15 11:26:43 -07:00
octo-patch cb08f8e9e0 feat: add MiniMax-M2.5-highspeed to static model list
Add the MiniMax-M2.5-highspeed model variant to the static MiniMax
model list. This model offers the same performance as MiniMax-M2.5
but with faster inference speed.

API docs: https://platform.minimax.io/docs/api-reference/text-openai-api
2026-03-14 22:48:10 +08:00
github-actions[bot] fa022f4391 chore(release): Update version to v1.4.434 2026-03-09 15:52:14 +00:00
Kayvan Sylvan 9057f97739
Merge pull request #2052 from praxstack/feat/bedrock-bearer-token-auth
feat(bedrock): dynamic region fetching and AWS_PROFILE conflict fix
2026-03-09 08:49:51 -07:00
Kayvan Sylvan f0dbb73654 chore: attribution fixed for new GitHub handle and added ksylvan 2026-03-09 08:46:55 -07:00