Commit Graph
256 Commits
Author SHA1 Message Date
Dang Dinh QuanandCopilot b1288c5064 * feat(kiro): wire aws identity center device flow into provider oauth (#587)
* feat(kiro): wire aws identity center device flow into provider oauth

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2026-04-15 11:44:46 +07:00
decolua 224981d537 Fix bug 2026-04-14 12:51:23 +07:00
decolua 6bec1e085b Enhance Windows Tailscale installation process by adding support for curl and verifying installation success. Update fallback mechanism for Tailscale binary to include well-known Windows path. 2026-04-14 11:52:52 +07:00
decolua 1fa05eb2ab Refactor execSync and spawn calls to include windowsHide option for better compatibility on Windows environments. 2026-04-14 11:48:59 +07:00
decolua 04cdb75839 Add proactive token refresh lead times for providers and implement Codex proxy management 2026-04-14 11:41:06 +07:00
decolua 4bff21cb80 Enhance CodexExecutor with compact URL support 2026-04-14 10:18:27 +07:00
decolua 6a6e2fcd77 Fix : noAuth support for providers and adjusted MITM restart settings. 2026-04-14 10:14:50 +07:00
decolua 41c079baba - Improved dashboard access control by blocking tunnel/Tailscale access when disabled. 2026-04-13 17:38:09 +07:00
decolua 96ddec822d Fix Bug 2026-04-13 16:49:34 +07:00
decolua 3b1a608e8d Fix codex cache session id 2026-04-13 15:52:01 +07:00
decolua 4c28a1671d Enhance provider models and chat handling with new thinking configurations 2026-04-13 12:04:57 +07:00
decolua ee1271b6fd Update GitHub Actions workflow for Docker image 2026-04-13 10:30:33 +07:00
decolua 89eb26dee2 Enhance proxy functionality with Vercel relay support 2026-04-13 10:08:24 +07:00
decolua b3feb96740 Enhance TTS functionality and security settings
- Integrated Google TTS languages from a separate module for better maintainability.
- Updated local device voice fetching to support both macOS and Windows, improving cross-platform compatibility.
- Enhanced dashboard route protection by adding dynamic settings for login requirements and tunnel access.
- Introduced UI elements for managing security settings related to API key requirements and dashboard access via tunnel.
- Added default TTS response example in the media provider page for better user guidance.
- Updated constants to reflect changes in TTS provider configurations.

This commit improves the overall user experience and security of the TTS features.
2026-04-11 14:56:35 +07:00
decolua ed17a8ffac Feat : Tailscale 2026-04-11 11:36:33 +07:00
Omar Nahhas SanchezandAgent Zero 838d9a7a04 fix: add 5s timeout to fetchCompatibleModelIds and skip upstream connections (#541)
The fetchCompatibleModelIds() function had no timeout on its fetch() call,
causing /v1/models to hang indefinitely when an openai-compatible provider
was unreachable or slow to respond.

Additionally, upstream/cross-instance connections (provider IDs containing
a UUID suffix like openai-compatible-chat-XXXXXXXX) would trigger recursive
/models fetches between instances, creating infinite loops.

Fixes:
- Add AbortController with 5-second timeout to the fetch() call
- Skip dynamic model fetching for upstream/cross-instance connections
  (detected by UUID suffix pattern in provider ID)
- Existing try/catch already handles abort errors gracefully

Co-authored-by: Agent Zero <agent@agent-zero.local>
2026-04-10 10:30:07 +07:00
raccoonwannafly f8a267746a fix: enable Apply button when models are selected
Fix button state condition - check selectedModels.length instead of selectedModel.

Co-authored-by: raccoonwannafly <130273473+raccoonwannafly@users.noreply.github.com>
Made-with: Cursor
2026-04-10 10:27:21 +07:00
decolua 1a25c6e3b5 feat: multi-model support for OpenCode CLI config with subagent integration
- Allow selecting multiple models for 9router provider
- Merge models instead of overwriting (backwards-compatible)
- Support setting active model via click or Apply
- Click active model to clear default (model = '')
- Remove individual models via X button (persists to config)
- Add PATCH endpoint for clearing active model
- Update GET to return normalized model list
- Preserve subagent model configuration for explorer subagent

Made-with: Cursor
2026-04-10 10:22:42 +07:00
decolua 3c96e8d6d1 Feat : tts 2026-04-10 10:17:53 +07:00
decolua 39545cf4c8 Fix combo modal 2026-04-09 10:16:11 +07:00
decolua 507a5dbfea fix: OpenRouter custom models not showing after being added 2026-04-08 16:51:23 +07:00
tuanaiseo 1f3d3a8f7f fix(security)(app): unauthenticated server shutdown endpoint enables d (#519)
The shutdown API calls `process.exit(0)` on POST without any authentication or authorization checks. Any party that can reach this endpoint can terminate the server process, causing immediate service disruption.

Affected files: route.js

Signed-off-by: tuanaiseo <221258316+tuanaiseo@users.noreply.github.com>
2026-04-08 15:39:09 +07:00
PayneandClaude Opus 4.6 32a746181a fix: update Cursor client version to 3.1.0 for Composer 2 compatibility (#525)
Cursor's API now rejects requests with outdated client versions,
returning [400]: Update Required for Composer 2. Bump
x-cursor-client-version from 2.3.41 to 3.1.0 across all three
locations where it is set.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 15:37:51 +07:00
decolua 00448b389b Fix bug 2026-04-07 11:35:25 +07:00
decolua 401772cb9a Fix bug strip image 2026-04-07 10:18:59 +07:00
decolua fca829aa2a Fix bug 2026-04-06 17:36:04 +07:00
decolua 307be3b63d Fix bug 2026-04-06 17:32:44 +07:00
Anurag Saxena 7db4b9834e fix: make API key optional for ollama-local provider validation (closes #492) (#493) 2026-04-06 15:10:15 +07:00
thuanhuynhh ebb8d4eeb6 Cập nhật /v1/models hỗ trợ OpenAI/Anthropic Compatible (#497)
Sửa lỗi /v1/models chỉ biết lấy model từ danh sách tĩnh hoặc từ providerSpecificData.enabledModels. Với API Key Compatible Providers, endpoint test /api/providers/<id>/models vẫn lấy được model động từ upstream, nhưng /v1/models lại không fallback sang danh sách động đó. Ngoài ra alias trả ra cũng đang dùng providerId nội bộ thay vì prefix trong cấu hình.

Đã fix để OpenAI/Anthropic Compatible dùng đúng prefix làm alias public nếu chưa có enabledModels, /v1/models sẽ tự fetch động từ upstream /models
2026-04-06 15:09:58 +07:00
Manuel B.andClaude Opus 4.6 6ec5890283 fix(github): sync top-level copilotToken after proactive refresh (#507)
checkAndRefreshToken() updated providerSpecificData.copilotToken but
not the top-level creds.copilotToken. GithubExecutor.buildHeaders()
reads the top-level key, so every request after a proactive refresh
still sent the expired token, causing 401 "IDE token expired".

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-06 15:02:09 +07:00
decolua 57cfaccceb Fix ModelSelectModal 2026-04-05 21:25:00 +07:00
decolua 333e704b2a MODEL_CAPS 2026-04-04 23:24:24 +07:00
decolua 5448eedbdd Feat : embedding dev 2026-04-04 15:07:07 +07:00
decolua 341a1c6490 Fix Model Price 2026-04-04 14:40:49 +07:00
decolua d84489dba4 - Introduce default MITM router base URL and update related components to handle it.
- Add input for MITM router base URL in MitmServerCard component.
2026-04-04 11:25:58 +07:00
Anurag Saxena 2e740ad7e4 fix: pass isFree prop to ModelRow for custom models (closes #461) (#480) 2026-04-04 08:53:11 +07:00
Anurag Saxena 7f4f75a807 fix: pass HOME explicitly in sudo inlineCmd so MITM server resolves correct data dir (closes #478) (#482) 2026-04-04 08:52:31 +07:00
Anurag Saxena 006c337de5 fix: use which instead of command -v for openclaw CLI detection (closes #457) (#489) 2026-04-04 08:49:59 +07:00
decolua 93b8668e9e Fix AG 2026-04-01 11:48:38 +07:00
decolua 9708541f6d Fix bug 2026-03-31 15:44:19 +07:00
Vishal Raj V 8640503b36 feat(kilo): fetch free models from Kilo API + Windows build fixes (#455)
- Add /api/providers/kilo/free-models endpoint with 1hr cache
- Fetch and merge Kilo free models with hardcoded models for kilocode provider
- Display 'Free' badge on models fetched from Kilo API
- Fix Windows build: add cross-env, remove --webpack flag, add turbopack config
- Add outputFileTracingExcludes for Windows system directories
2026-03-31 09:22:21 +07:00
kwanLeeFrmVi 054facb08b fix(gemini): preserve thoughtSignature via tool_call ID smuggling + fix ELOCKED mutex
- Encode thoughtSignature into tool_call.id using _TSIG_ delimiter and base64url
- Decode _TSIG_ on request to restore thoughtSignature for Gemini multi-turn thinking
- Track pendingThoughtSignature across parts for deferred signature attachment
- Add LocalMutex (2-layer locking) to prevent ELOCKED on concurrent DB access
- Increase lockfile retries from 5 to 15 for multi-process robustness
- Restore db.json seed on first run to prevent ENOENT on lockfile.lock
- Use process.env.BASE_URL fallback in models test route
- Remove gemini-3-flash-lite-preview from provider models

Co-authored-by: kwanLeeFrmVi <quanle96@outlook.com>
Closes #450

Made-with: Cursor
2026-03-30 16:57:28 +07:00
kwanLeeFrmVi 1c160cc8d9 feat(claude-code): spoof TLS fingerprint and stabilize headers for Anthropic
- Add claudeHeaderCache.js to intercept and cache live Claude Code client headers
- Forward cached headers dynamically to api.anthropic.com via default.js
- Strip first-party identity headers (x-app, claude-code-* beta) for non-Anthropic upstreams
- Validate and sanitize tool call IDs to match Anthropic pattern (^[a-zA-Z0-9_-]+$)
- Skip thinking blocks when applying cache_control; fix max_tokens buffer (+1024)
- Strip cache_control from thinking blocks in openai-to-claude translator
- Comment out thoughtSignature in Gemini translator (kept for reference)
- Expand .gitignore to match all deploy*.sh variants

Co-authored-by: kwanLeeFrmVi <quanle96@outlook.com>
Closes #433

Made-with: Cursor
2026-03-30 16:27:28 +07:00
decolua e6299eef56 Fix Bug 2026-03-30 12:21:24 +07:00
decolua abbf8ec86f feat: add GitLab Duo and CodeBuddy support, update observability settings 2026-03-30 11:28:07 +07:00
decolua bf99c600f1 Fix Bug 2026-03-27 11:45:54 +07:00
Anurag Saxena fcc8320753 feat: add OpenCode provider support (#387)
Adds OpenCode (https://github.com/opencode-ai/opencode) as a supported
provider. OpenCode is an open-source terminal AI coding assistant with
an OpenAI-compatible API running locally.

Changes:
- open-sse/config/providers.js: add opencode baseUrl (localhost:4096)
  with openai format (fully compatible, no custom headers needed)
- open-sse/services/model.js: add 'oc' alias → opencode
- src/shared/constants/providers.js: add opencode to subscription
  providers with alias 'oc', icon 'terminal', color #E87040

Usage after setup: use model prefix 'oc/<model>' to route through
a running OpenCode instance (e.g. oc/claude-sonnet-4-5).

Closes #378
2026-03-27 11:17:23 +07:00
decolua 3f47038933 fix: rename tunnelUrl to tunnelPublicUrl for clarity in CLIToolsPageClient 2026-03-27 11:03:49 +07:00
Anurag Saxena a6c764d772 fix: use better-sqlite3 for Cursor auto-import, drop sqlite3 CLI requirement (closes #395) (#411) 2026-03-27 10:45:11 +07:00
Anurag Saxena 2f0fd348c5 fix: add deprecation warning for Gemini CLI provider (closes #362) (#406) 2026-03-27 10:41:35 +07:00