30 Commits
Author SHA1 Message Date
Kai (Tam Nhu) Tran 04dc97aaa4 fix: persist codex target selections 2026-05-30 14:57:07 -04:00
Tam Nhu Tran dc8bbd85e7 fix: route OpenRouter profiles through v1 API 2026-05-05 11:44:58 -04:00
Tam Nhu Tran 2c817fae48 fix(cliproxy): update remaining stale imports in non-colocated tests
Fix auth-token-manager, quota-response-cache, stats-fetcher,
and proxy-detector import paths in tests/ outside cliproxy.
2026-04-29 17:26:51 -04:00
Tam Nhu Tran 52ac29e7a8 fix(api): constrain preset target defaults
- limit preset default targets to persisted API profile targets

- add regression coverage for preset target resolution and profile target persistence
2026-04-10 17:44:25 -04:00
Tam Nhu Tran 83255f4771 feat(api): add Hugging Face provider preset
- add the huggingface preset and hf alias to the shared preset catalog

- default the preset to Factory Droid because the documented path is generic chat completions

- cover the CLI and dialog behavior with preset metadata and UI tests
2026-04-10 17:29:25 -04:00
Tam Nhu Tran f379a4001f test(image-analysis): cover runtime auth and fallback 2026-04-02 15:44:13 -04:00
Tam Nhu Tran e260df7178 feat: add first-class CCS WebSearch runtime 2026-03-30 16:10:39 -04:00
Tam Nhu Tran f9c1238483 feat(profiles): expose codex runtime across surfaces
- update CLI, API, route, and dashboard surfaces to recognize the Codex runtime target

- normalize persisted codex targets back to claude so runtime-only behavior stays truthful

- add regression coverage for help text, route parsing, and profile storage normalization

Refs #773
2026-03-29 13:14:15 -04:00
Tam Nhu Tran 0821c68559 fix(websearch): restore hook recovery and force register 2026-03-28 10:37:20 -04:00
Tam Nhu Tran 0e6965d205 fix(websearch): harden settings-profile hook setup
- fail enabled settings-profile create and launch flows when hook preparation is still unusable

- refresh stale shared hook binaries without rewriting unchanged installs or failing benign races

- add rollback and regression coverage for disabled, stale, invalid, copy, import, and launch paths
2026-03-28 09:51:13 -04:00
Tam Nhu Tran 3af554275e test: isolate shared-state test suites for CI stability
- add dependency injection to export-command, binary-manager,
  codex-plan-compatibility, config-command, and usage-syncer
- override process.exit in api-export test to prevent silent
  termination in Bun's parallel test runner
- harden test-environment bootstrap with process.env isolation
- fix auth middleware to avoid config upgrade during checks
2026-03-25 16:41:41 -04:00
Tam Nhu Tran 287691fa04 feat(profiles): add cliproxy api profile bridge
- add backend and CLI flows for creating routed API profiles from CLIProxy providers

- add dashboard bridge CTAs, metadata, and guided create dialog mode

- cover bridge routes and dialog behavior with focused tests

Refs #649
2026-03-19 10:24:28 -04:00
Tam Nhu Tran 2d48e6a287 chore: resolve dev merge conflicts for GLMT deprecation 2026-03-17 15:55:25 -04:00
Tam Nhu Tran 5525098400 feat: deprecate GLMT user-facing surfaces 2026-03-17 15:49:29 -04:00
Tam Nhu Tran 93d94b597f fix(ui): add llama.cpp provider icon 2026-03-17 14:41:03 -04:00
Tam Nhu Tran 0337a32d99 feat(ui): improve API profile provider selector UX 2026-03-17 13:54:52 -04:00
Tam Nhu Tran 334f3697f9 test: cover invalid novita preset ids 2026-03-17 08:13:50 -04:00
Tam Nhu Tran 94fa96aa81 fix: correct novita preset endpoint and asset handling 2026-03-17 07:02:47 -04:00
Alex-wuhu a1a8cad2b3 feat(novita): add Novita AI provider preset
- Add novita preset with OpenAI-compatible endpoint
- Default model: deepseek/deepseek-v3.2
- Endpoint: https://api.novita.ai/openai
- API key via NOVITA_API_KEY env var
2026-03-13 16:28:47 +08:00
Kai (Tam Nhu) TranandGitHub 163f40be8a Merge pull request #693 from jellydn/feat/llamacpp-support
feat(api): add llama.cpp support as local model provider
2026-03-09 05:24:46 -04:00
Tam Nhu Tran 0b9a8526a7 merge(dev): port llama.cpp preset onto current catalog 2026-03-07 16:00:03 +07:00
Tam Nhu Tran 5bcad30762 Merge remote-tracking branch 'origin/dev' into pr-689-anthropic-direct-api
# Conflicts:
#	ui/src/components/profiles/profile-dialog.tsx
2026-03-07 15:59:44 +07:00
Tam Nhu Tran d6fc5dd64c fix: harden profile lifecycle validation and dashboard UX flows 2026-03-05 18:49:16 +07:00
Tam Nhu Tran 02c81743a0 feat: add API profile lifecycle discover/copy/export/import parity 2026-03-05 18:30:23 +07:00
BbChip0103andClaude Opus 4.6 fedb4d4cde feat(api): add Anthropic direct API key support
Support native Anthropic API keys (sk-ant-...) via `ccs api create --preset anthropic`.
Profiles use ANTHROPIC_API_KEY env var without BASE_URL, letting Claude CLI
authenticate natively with x-api-key header instead of proxy Bearer token.

- Add anthropic preset to provider catalog
- Branch profile-writer env structure (native vs proxy)
- Add validateAnthropicKey() preflight with x-api-key header
- Auto-detect api.anthropic.com URL in interactive flow
- Fix hasApiKey/isConfigured to recognize ANTHROPIC_API_KEY
- Update delegation-validator for native mode profiles
- Add Droid target API key fallback (ANTHROPIC_API_KEY)

Closes #688

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 13:13:10 +09:00
Tam Nhu Tran 3b38f1ac90 fix(ui): improve providers badge readability and albb preset 2026-03-04 00:39:02 +07:00
Tam Nhu Tran 8811e5320f feat(api): add Alibaba Coding Plan preset and providers promotion 2026-03-04 00:39:02 +07:00
Tam Nhu Tran f63e2cd5a3 fix(cliproxy): denylist deprecated agy 4.5 models 2026-03-03 03:10:53 +07:00
Tam Nhu Tran 0bf00b23d9 fix(profile): close km legacy kimi compatibility gaps 2026-02-19 13:02:56 +07:00
Tam Nhu Tran cf8070b5f0 fix(profile): handle km compatibility for legacy kimi api users 2026-02-19 12:43:41 +07:00