Commit Graph
3547 Commits
Author SHA1 Message Date
Tam Nhu Tran e6b363524b fix(cliproxy): remap codex haiku fallback on free plans 2026-03-16 14:31:55 -04:00
Tam Nhu Tran ce600a7f22 test(cliproxy): cover codex plan fallback edge cases 2026-03-16 14:00:38 -04:00
Tam Nhu Tran 551591ef18 fix(cliproxy): make codex defaults free-plan safe 2026-03-16 13:43:23 -04:00
semantic-release-bot 3783ddab38 chore(release): 7.54.0 [skip ci]
## [7.54.0](https://github.com/kaitranntt/ccs/compare/v7.53.0...v7.54.0) (2026-03-16)

### Features

* add proxy setup using undici and update undici version ([c542606](https://github.com/kaitranntt/ccs/commit/c54260658232215ccc6c23fc1df29db62c591ab6))
* **ci:** harden AI review with adversarial red-team prompt ([19f7091](https://github.com/kaitranntt/ccs/commit/19f70914a987bef9278d5e5e2dc77d31ef00c0b7)), closes [#731](https://github.com/kaitranntt/ccs/issues/731)
* **claude-extension:** add binding workflow ([a2f5310](https://github.com/kaitranntt/ccs/commit/a2f531016d29093c957c1000860fc83e2dc55cb4))
* **config:** add Claude IDE extension setup flow ([b82f10e](https://github.com/kaitranntt/ccs/commit/b82f10e63952db82ebe2e66fc584c5da231efb1d))
* **docker:** publish release images on stable tags ([25bb806](https://github.com/kaitranntt/ccs/commit/25bb806ecdbf7e7b3b68e20b3f0557f9503edefa))
* **i18n:** add Japanese dashboard locale ([8b5158b](https://github.com/kaitranntt/ccs/commit/8b5158bec5574c884c2937ac804bc9cb2f977538))

### Bug Fixes

* add missing newline at end of fetch-proxy-setup.ts ([3324053](https://github.com/kaitranntt/ccs/commit/33240534c3927eac037c0ebc703ffd44d4a3a65e))
* align proxy routing across fetch and downloader ([fd5d16f](https://github.com/kaitranntt/ccs/commit/fd5d16f3f3cebe9b965d30bbc5a05d73011f500e))
* **ci:** address code review findings for hardened AI review ([b528bcb](https://github.com/kaitranntt/ccs/commit/b528bcbf35bed16bc711ad903c41788e7cf4ad52))
* **ci:** load review prompt from base branch to prevent prompt injection ([dcb4635](https://github.com/kaitranntt/ccs/commit/dcb46356f3fb65dfe065433472d73f5707bd2ce3))
* **ci:** remove maintainability baseline gate blocking releases ([e6ae052](https://github.com/kaitranntt/ccs/commit/e6ae0525271eb631b0c8fff9c18f570f1dcb5b14))
* **ci:** use full path in warning and add workflows/ to deep review triggers ([7828780](https://github.com/kaitranntt/ccs/commit/78287807f8c441db74d17630b7dad3fede42e997))
* **cliproxy:** validate tier thinking against model caps ([88d1dc1](https://github.com/kaitranntt/ccs/commit/88d1dc1ddb6dc2807edf89045b808cdb77c0bf3b))
* **config:** guard Claude extension metadata ([56ba379](https://github.com/kaitranntt/ccs/commit/56ba37911a2fc1465c1f793614ac19e4d7bcf004))
* **copilot:** stop mutating config on read ([7bd4049](https://github.com/kaitranntt/ccs/commit/7bd404960270fddf29e1c2129c64d033221362cc))
* **docker:** harden release image publishing ([314053b](https://github.com/kaitranntt/ccs/commit/314053b35ce9a25ca216b711fcec5b87d0cd89fe))
* harden global fetch proxy handling ([f50c962](https://github.com/kaitranntt/ccs/commit/f50c9625de6cc4d93c5db439af9349cb5e36f14b))
* **i18n:** polish Japanese dashboard copy ([e28f87b](https://github.com/kaitranntt/ccs/commit/e28f87bc9c7067e4c3a8c2105c42bb9f5266f7e4))
* normalize stale copilot raptor-mini model ([c409a45](https://github.com/kaitranntt/ccs/commit/c409a4522c21d439657026aab2b915c4817142ea))
* **sidebar:** move claude extension to compatible ([337dd18](https://github.com/kaitranntt/ccs/commit/337dd188cc240e74ea2e434ca99280360c3f9ce1))

### Documentation

* **readme:** clarify copilot config save behavior ([298b591](https://github.com/kaitranntt/ccs/commit/298b591d1499ff0da16c00decbddb1e74cb5a0b2))
* **readme:** document Claude IDE extension setup ([56db603](https://github.com/kaitranntt/ccs/commit/56db6035f51058a6ff7e3e245448b8e6fbf35f91))

### Styles

* **claude-extension:** apply formatter output ([6724ea5](https://github.com/kaitranntt/ccs/commit/6724ea52c2cb41ca3d71e663fafce00e040b5425))
2026-03-16 12:55:00 +00:00
Kai (Tam Nhu) TranandGitHub 4821f62c72 Merge pull request #733 from kaitranntt/dev
feat(release): promote dev to main — v7.53.0
2026-03-16 08:53:34 -04:00
github-actions[bot] 80cb07de87 chore(release): 7.53.0-dev.6 [skip ci] 2026-03-16 12:27:06 +00:00
Kai (Tam Nhu) TranandGitHub 5274333222 Merge pull request #732 from kaitranntt/kai/feat/731-harden-ai-review-prompt
feat(ci): harden AI review with adversarial red-team prompt
2026-03-16 08:25:45 -04:00
Tam Nhu Tran dcb46356f3 fix(ci): load review prompt from base branch to prevent prompt injection
External PRs could modify review-prompt.md to suppress findings or
manipulate the reviewer. Now loads prompt via git show from the base
branch (origin/dev or origin/main), never from PR-controlled checkout.

Also:
- Fallback prompt upgraded with adversarial framing and severity output
- Use printf instead of echo for content preservation
- Expand deep review trigger to all .github/ files (not just workflows/)
2026-03-16 07:47:59 -04:00
Tam Nhu Tran 78287807f8 fix(ci): use full path in warning and add workflows/ to deep review triggers
- Warning message now shows '.github/review-prompt.md' instead of just
  'review-prompt.md' for easier debugging
- Deep review scope-aware trigger explicitly includes .github/workflows/
  alongside auth/, middleware/, security/, crypto/, commands/, shared/
2026-03-16 07:42:13 -04:00
Tam Nhu Tran b528bcbf35 fix(ci): address code review findings for hardened AI review
Workflow fixes:
- Use randomized heredoc delimiter to prevent output injection
- Add file existence guard with fallback inline prompt
- Use direct cat instead of echo variable (preserves content exactly)

Prompt fixes:
- Add 4 missing CCS rules: TTY/NO_COLOR, idempotent installs,
  dashboard parity, documentation mandatory
- Qualify suppression list to exclude security/correctness/CCS concerns
- Change severity labels from Critical/Medium/Low to High/Medium/Low
  to match maintainer feedback loop parser expectations
2026-03-16 07:38:39 -04:00
Tam Nhu Tran 19f70914a9 feat(ci): harden AI review with adversarial red-team prompt
Extract review prompt to .github/review-prompt.md for maintainability.
Replace generic "comprehensive review" with adversarial attack mindset:
- 3-phase review: Understand -> Attack -> Verify
- Scope-aware depth calibration (quick/standard/deep)
- 25+ concrete critical checklist patterns
- False assumption hunting ("prove it can be null")
- AI-generated code blind spots (hallucinated imports, deprecated APIs)
- CCS-specific constraint enforcement (8 rules)
- Strict approval criteria (APPROVED requires zero critical findings)
- Suppression list to reduce noise on style/formatting
- Output restructured: findings first, strengths last (optional)

Closes #731
2026-03-16 07:28:07 -04:00
github-actions[bot] 4430bab9cb chore(release): 7.53.0-dev.5 [skip ci] 2026-03-16 11:22:10 +00:00
Kai (Tam Nhu) TranandGitHub 3c7c8d5573 Merge pull request #726 from Kherrisan/main
feat: add support for setting the global fetch proxy through HTTP_PROXY
2026-03-16 07:20:48 -04:00
Tam Nhu Tran fd5d16f3f3 fix: align proxy routing across fetch and downloader 2026-03-16 07:10:39 -04:00
Tam Nhu Tran f50c9625de fix: harden global fetch proxy handling 2026-03-16 06:58:01 -04:00
github-actions[bot] dffc153423 chore(release): 7.53.0-dev.4 [skip ci] 2026-03-15 20:08:07 +00:00
Kai (Tam Nhu) TranandGitHub a17d5528c4 Merge pull request #730 from kaitranntt/kai/feat/727-claude-extension-ide-setup
feat: add native Claude IDE extension setup
2026-03-15 16:06:46 -04:00
Tam Nhu Tran 6724ea52c2 style(claude-extension): apply formatter output 2026-03-15 15:58:37 -04:00
Tam Nhu Tran 337dd188cc fix(sidebar): move claude extension to compatible 2026-03-15 15:58:37 -04:00
Tam Nhu Tran a2f531016d feat(claude-extension): add binding workflow 2026-03-15 15:58:37 -04:00
Tam Nhu Tran 56db6035f5 docs(readme): document Claude IDE extension setup 2026-03-15 15:58:37 -04:00
Tam Nhu Tran 56ba37911a fix(config): guard Claude extension metadata 2026-03-15 15:58:37 -04:00
Tam Nhu Tran b82f10e639 feat(config): add Claude IDE extension setup flow 2026-03-15 15:58:37 -04:00
github-actions[bot] 437b040f4c chore(release): 7.53.0-dev.3 [skip ci] 2026-03-15 19:02:54 +00:00
Kai (Tam Nhu) TranandGitHub f6100a5588 Merge pull request #718 from kaitranntt/kai/fix/702-raptor-mini-copilot-model-guardrails
fix: normalize stale copilot raptor-mini model
2026-03-15 15:01:31 -04:00
Tam Nhu Tran 298b591d14 docs(readme): clarify copilot config save behavior 2026-03-15 14:53:54 -04:00
Tam Nhu Tran 7bd4049602 fix(copilot): stop mutating config on read 2026-03-15 14:53:43 -04:00
github-actions[bot] 7561b46f47 chore(release): 7.53.0-dev.2 [skip ci] 2026-03-15 17:42:20 +00:00
Kai (Tam Nhu) TranandGitHub d58814e812 Merge pull request #721 from kapdon/feat/docker-release-image
feat(docker): publish release images on stable tags
2026-03-15 13:41:08 -04:00
Tam Nhu Tran 314053b35c fix(docker): harden release image publishing 2026-03-15 13:28:44 -04:00
Zou Dikai 33240534c3 fix: add missing newline at end of fetch-proxy-setup.ts 2026-03-15 07:28:06 +00:00
Zou Dikai c542606582 feat: add proxy setup using undici and update undici version 2026-03-15 07:14:49 +00: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
User 25bb806ecd feat(docker): publish release images on stable tags 2026-03-11 06:22:57 -07:00
github-actions[bot] e6c3cdd460 chore(sync): merge main into dev after release [skip ci]
# Conflicts:
#	package.json
2026-03-11 03:55:40 +00:00
github-actions[bot] 4cb6aecf1a chore(release): 7.53.0-dev.1 [skip ci] 2026-03-11 03:54:51 +00:00
semantic-release-bot 59a2eaf1c6 chore(release): 7.53.0 [skip ci]
## [7.53.0](https://github.com/kaitranntt/ccs/compare/v7.52.2...v7.53.0) (2026-03-11)

### Features

* add API profile lifecycle discover/copy/export/import parity ([02c8174](https://github.com/kaitranntt/ccs/commit/02c81743a09cc54447f953e5b4d4f95ad85f1ad9))
* **api:** add Anthropic direct API key support ([fedb4d4](https://github.com/kaitranntt/ccs/commit/fedb4d4cde4c9027f95364e66daa77b700a5c470)), closes [#688](https://github.com/kaitranntt/ccs/issues/688)
* **api:** add llama.cpp support as local model provider ([0ca6428](https://github.com/kaitranntt/ccs/commit/0ca6428554be9057926988ef4af0b95a958ca17e)), closes [#690](https://github.com/kaitranntt/ccs/issues/690)
* **auth:** add --bare flag and MCP server sync for profiles ([bc9b044](https://github.com/kaitranntt/ccs/commit/bc9b04444e0dbeb3db72b4814ca6694595abf0cd)), closes [#691](https://github.com/kaitranntt/ccs/issues/691) [#692](https://github.com/kaitranntt/ccs/issues/692)

### Bug Fixes

* **api:** complete anthropic direct profile support ([1f29fa0](https://github.com/kaitranntt/ccs/commit/1f29fa0b6ab366e558eadbe050e79e294f2eaa43))
* **auth:** preserve bare profile behavior across runtime and sync ([8f8684c](https://github.com/kaitranntt/ccs/commit/8f8684ce852f527a019e0a32d94922d15b078633))
* **ci:** remove LOC count from maintainability gate ([d3ede45](https://github.com/kaitranntt/ccs/commit/d3ede45c9612bb2415d24798fe43d6cba188f142))
* **ci:** remove maintainability baseline gate blocking releases ([03a0fb2](https://github.com/kaitranntt/ccs/commit/03a0fb27ca8ed41326f306c5364e1228117f72b0))
* clarify CLIProxy dashboard install lifecycle ([a4b626a](https://github.com/kaitranntt/ccs/commit/a4b626aedef2a0cf690a955bf4abd31c5284047a))
* **cliproxy:** handle Claude OAuth quota 401 ([7e8f9e8](https://github.com/kaitranntt/ccs/commit/7e8f9e82c113490d95b0a9f9bedf627bc11dc76a))
* **cliproxy:** poll paste-callback auth urls ([b25b165](https://github.com/kaitranntt/ccs/commit/b25b1653b047c588a95c6f4e47aa3214e0e370aa))
* **cliproxy:** preserve Claude fallback when quota is unavailable ([6ed95a2](https://github.com/kaitranntt/ccs/commit/6ed95a2a861f1031d0d49cd8d53a2ccd5c4214a6))
* **cliproxy:** preserve kiro paste-callback start route ([86ca180](https://github.com/kaitranntt/ccs/commit/86ca18003a033be976b787811db16bf38bf82a91))
* **cliproxy:** sync claude 4.6 selector defaults ([3d183fe](https://github.com/kaitranntt/ccs/commit/3d183fe0e891886bbd51a3c5b30b301e966cce03))
* **cliproxy:** use management auth-url route in paste callback ([6fcd924](https://github.com/kaitranntt/ccs/commit/6fcd924b1c8743484823b958ff403c4c37379eab))
* **cliproxy:** use management oauth-callback in paste flow ([fa02702](https://github.com/kaitranntt/ccs/commit/fa027022a8faf886c7f5891ec8cb2d3879c783e8))
* **codex:** standardize haiku defaults on gpt-5.1-codex-mini ([f4a7d4d](https://github.com/kaitranntt/ccs/commit/f4a7d4dc2c84b094192dba30522c475ced3293d6))
* complete codex tool sanitization coverage ([4baed01](https://github.com/kaitranntt/ccs/commit/4baed01d4905ecf3fbbfb2f4e8ac7dca34ebf907))
* **config:** align claude defaults across catalogs ([bea3084](https://github.com/kaitranntt/ccs/commit/bea3084d5e4f7bc691503cffee8a235f94c3b87d))
* **config:** update claude base models to latest ([09aeec5](https://github.com/kaitranntt/ccs/commit/09aeec57633828f9225591e090d8f442abc9d322))
* **config:** use correct codex haiku model ID (gpt-5-codex-mini) ([8a9751a](https://github.com/kaitranntt/ccs/commit/8a9751a819e41c527ec413e988b18f48df62332a)), closes [#602](https://github.com/kaitranntt/ccs/issues/602)
* confirm risky cliproxy installs in dashboard ([aed7beb](https://github.com/kaitranntt/ccs/commit/aed7beb075c2f31263423005c34e690af3463039))
* **copilot:** surface upstream model limits ([8a5ed65](https://github.com/kaitranntt/ccs/commit/8a5ed656eec08ccaae44ddde72cb0ca954b05875))
* harden profile lifecycle validation and dashboard UX flows ([d6fc5dd](https://github.com/kaitranntt/ccs/commit/d6fc5dd64c3232e9c95a54b0e433f3e057fd7fa4))
* **hooks:** handle thinking blocks in image analyzer response parsing ([0060c77](https://github.com/kaitranntt/ccs/commit/0060c77c257a64c57f4c704d2f32af415434022f)), closes [#511](https://github.com/kaitranntt/ccs/issues/511)
* improve quota diagnostics and oauth refresh handling ([fc3600e](https://github.com/kaitranntt/ccs/commit/fc3600e9228790179c8c51162924187ec994c49a))
* restart CLIProxy after dashboard version install ([e14df1f](https://github.com/kaitranntt/ccs/commit/e14df1fe05ce1fcbe515f6b1d969132ace91ed24))
* stop untracked CLIProxy installs safely ([ad01196](https://github.com/kaitranntt/ccs/commit/ad01196964bfdbdd0696cc845f3b3d3901b3be2f))
* strip unsupported gemini and codex tool fields ([8cfd86f](https://github.com/kaitranntt/ccs/commit/8cfd86f1d18356b6bfef931d24c1745e11e1db62))
* sync error code docs links ([2be5c5a](https://github.com/kaitranntt/ccs/commit/2be5c5a706bc659491decd66c3f21a8839f35e9c))
* **ui:** update copilot default claude model ([4d0ded3](https://github.com/kaitranntt/ccs/commit/4d0ded339f12abb4fec1c8596fac07c67581351f))
* **ui:** use preset apiKeyPlaceholder when creating profiles ([6078de7](https://github.com/kaitranntt/ccs/commit/6078de78f2a7e31ec141a49c057a8b4cb1a6d601))

### Tests

* cover llama.cpp help parity ([9bcb195](https://github.com/kaitranntt/ccs/commit/9bcb195e7c82a85e94e9de39530f185efad60ecd))
* **hooks:** add image analyzer regression coverage ([5097375](https://github.com/kaitranntt/ccs/commit/50973752bac0eabea57e76e5d0c64b460fd525a7))

### CI

* harden AI review for external PRs ([becfc57](https://github.com/kaitranntt/ccs/commit/becfc573c9a63b7b53153882973aca8be9b3b4cf))
2026-03-11 03:53:39 +00:00
Tam Nhu Tran e6ae052527 fix(ci): remove maintainability baseline gate blocking releases
The maintainability gate (process.exit count + sync FS API count) was
a raw grep counter that provided no actionable signal for a CLI tool.
It blocked the v7.53.0 stable release because new features naturally
increased the counts beyond the baseline.

Removed:
- scripts/maintainability-baseline.js
- scripts/maintainability-check.js
- docs/metrics/maintainability-baseline.json
- All maintainability:* npm scripts
- Gate references from release, dev-release, and CI workflows

Quality gates retained: typecheck, eslint, prettier, full test suite.
2026-03-11 10:52:30 +07:00
Tam Nhu Tran 03a0fb27ca fix(ci): remove maintainability baseline gate blocking releases
The maintainability gate (process.exit count + sync FS API count) was
a raw grep counter that provided no actionable signal for a CLI tool.
It blocked the v7.53.0 stable release because new features naturally
increased the counts beyond the baseline.

Removed:
- scripts/maintainability-baseline.js
- scripts/maintainability-check.js
- docs/metrics/maintainability-baseline.json
- All maintainability:* npm scripts
- Gate references from release, dev-release, and CI workflows

Quality gates retained: typecheck, eslint, prettier, full test suite.
2026-03-11 10:51:05 +07:00
Tam Nhu Tran c409a4522c fix: normalize stale copilot raptor-mini model 2026-03-10 17:55:28 +07:00
github-actions[bot] 781856b327 chore(release): 7.52.2-dev.15 [skip ci] 2026-03-10 10:51:39 +00:00
Kai (Tam Nhu) TranandGitHub 3391f4fb0b Merge pull request #717 from kaitranntt/kai/fix/686-gpt5-mini-tier-validation
fix(cliproxy): validate tier thinking against model caps
2026-03-10 06:50:25 -04:00
Tam Nhu Tran 88d1dc1ddb fix(cliproxy): validate tier thinking against model caps 2026-03-10 17:34:45 +07:00
github-actions[bot] 371ab9db4e chore(release): 7.52.2-dev.14 [skip ci] 2026-03-10 10:05:28 +00:00
Kai (Tam Nhu) TranandGitHub a29c32a923 Merge pull request #716 from kaitranntt/kai/feat/687-add-japanese-language-support
feat(i18n): add Japanese dashboard locale
2026-03-10 06:04:08 -04:00
Tam Nhu Tran e28f87bc9c fix(i18n): polish Japanese dashboard copy 2026-03-10 16:46:11 +07:00
Tam Nhu Tran 8b5158bec5 feat(i18n): add Japanese dashboard locale 2026-03-10 16:13:29 +07:00
Kai (Tam Nhu) TranandGitHub 447033cb03 Merge pull request #715 from kaitranntt/dev
feat: v7.53.0 — llama.cpp, Anthropic direct API, profile lifecycle, and dashboard fixes
2026-03-10 04:35:45 -04:00
github-actions[bot] e9dcdb9fc3 chore(release): 7.52.2-dev.13 [skip ci] 2026-03-09 09:27:09 +00: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