Commit graph

774 commits

Author SHA1 Message Date
xwj02155382
8725b91e11 refactor: remove unused model variable from Footer component 2026-01-26 10:49:44 +08:00
tanzhenxin
32cddc272f
Merge pull request #1561 from BlockHand/show-line-numbers
Some checks are pending
Qwen Code CI / Lint (push) Waiting to run
Qwen Code CI / Test (push) Blocked by required conditions
Qwen Code CI / Test-1 (push) Blocked by required conditions
Qwen Code CI / Test-2 (push) Blocked by required conditions
Qwen Code CI / Test-3 (push) Blocked by required conditions
Qwen Code CI / Test-4 (push) Blocked by required conditions
Qwen Code CI / Test-5 (push) Blocked by required conditions
Qwen Code CI / Test-6 (push) Blocked by required conditions
Qwen Code CI / Test-7 (push) Blocked by required conditions
Qwen Code CI / Test-8 (push) Blocked by required conditions
Qwen Code CI / Post Coverage Comment (push) Blocked by required conditions
Qwen Code CI / CodeQL (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:docker (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:none (push) Waiting to run
E2E Tests / E2E Test - macOS (push) Waiting to run
feat: make DiffRenderer respect ui.showLineNumbers setting
2026-01-26 10:37:04 +08:00
xwj02155382
f9db8d5a73 refactor: improve config consistency and token limits
- Remove legacy childKey field from settingsSchema

- Add contextWindowSize and maxOutputTokens to documentation

- Refactor ContextUsageDisplay to accept contextWindowSize directly instead of Config object

- Add useMemo optimization for contextWindowSize in Footer component

- Fix logic gaps in contentGenerator for contextWindowSize and maxOutputTokens initialization

- Increase DEFAULT_OUTPUT_TOKEN_LIMIT from 4K to 8K for better usability

- Add fallback to default values when model is not available
2026-01-26 10:26:44 +08:00
tanzhenxin
ba2824b0b0 feat(core,cli): add debug logging infrastructure (M0-M2)
Implement debug logfile foundation for routing internal diagnostics
to a per-session log file instead of polluting the terminal.

Core changes:
- Add DebugLogger interface and createDebugLogger() in debugLogger.ts
- Add Storage.getGlobalDebugDir() and getDebugLogPath() for log paths
- Add Config.getDebugLogger() method with session-scoped logger
- Track write failures via isDebugLoggingDegraded()

CLI changes:
- Add DebugModeNotification component for interactive startup notice
- Add non-interactive debug notice to stderr in gemini.tsx

Log files are written to ~/.qwen/debug/<sessionId>.txt with format:
2026-01-24T10:30:00.000Z [LEVEL] [TAG] message

Debug logging is always-on; debug mode only controls the startup notice.
2026-01-25 09:23:18 +08:00
DragonnZhang
6327e35a14 feat: implement persistent feedback prompting with temporary dismissal options
Add 'Fine' and 'Dismiss' options to feedback dialogs that allow temporary
dismissal without permanently closing the feedback request. Only numerical
ratings (0, 1, 2, 3) will permanently close feedback dialogs, while all
other inputs result in temporary dismissal with persistent re-prompting.

This ensures feedback collection reliability while respecting user workflow
by allowing users to temporarily dismiss prompts when busy and providing
feedback when ready.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 16:52:40 +08:00
xwj02155382
3bd460a9cc refactor: optimize token limit handling and simplify API
- Initialize contextWindowSize and maxOutputTokens in contentGeneratorConfig during config resolution
- Remove third parameter from tokenLimit() function for cleaner API
- Replace all tokenLimit() calls with direct config property access for better performance
- Add maxOutputTokens field to ContentGeneratorConfig type
- Update dashscope provider to use config.maxOutputTokens
- Auto-detect token limits from model during initialization if not user-configured
- Update settingsSchema: set contextWindowSize default to undefined and showInDialog to false

Benefits:
- Token limits calculated once during initialization instead of repeatedly
- Cleaner API with fewer parameters
- Better performance by caching computed values
- User configuration takes precedence over auto-detection
- All 72 unit tests passing
2026-01-23 16:27:10 +08:00
LaZzyMan
9af9ea259d feat: add select ui for claude marketplace 2026-01-23 16:23:30 +08:00
BlockHand
a9280d992e feat: 优化useSettingsHooks以及全面review DiffRender的settings的入参是否有缺失 2026-01-23 15:30:08 +08:00
BlockHand
1a87ae9dde feat: 合并main 2026-01-23 14:55:52 +08:00
xwj02155382
53e34cb40a fix: add missing config parameter and closing Box tag in Footer 2026-01-23 14:44:11 +08:00
xwj02155382
4ad4aab3fd Merge branch 'main' into feature/add-context-window-size-config
Resolved conflicts in:
- packages/cli/src/ui/components/ContextUsageDisplay.tsx
- packages/cli/src/ui/components/Footer.tsx
- packages/cli/src/ui/components/Footer.test.tsx
- docs/users/configuration/settings.md

Changes:
- Merged main branch UI improvements with rightItems architecture
- Updated contextWindowSize documentation to be more concise
- Preserved all main branch features and functionality
2026-01-23 14:41:59 +08:00
LaZzyMan
bc7e586028 Merge branch 'main' into feat/extension 2026-01-22 11:41:04 +08:00
tanzhenxin
2ec3ec2c38 Merge branch 'main' into feat/multimodal-input-support 2026-01-21 19:49:31 +08:00
tanzhenxin
ae9ba8be18
Merge pull request #1513 from QwenLM/feat/cli-welcome-screen
feat: Redesign CLI welcome screen and settings dialog
2026-01-21 19:43:46 +08:00
tanzhenxin
daea673058 feat(cli): highlight keyboard shortcut keys in accent color
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-21 19:29:24 +08:00
tanzhenxin
3ece0e3c3c
Merge pull request #1476 from afarber/1461-yolo-color-change
feat(cli): use dim colors for YOLO/auto-accept mode borders
2026-01-21 18:06:52 +08:00
tanzhenxin
b9a0d904de feat: add multi-modal input support (image, PDF, audio) across all content generators 2026-01-21 15:44:58 +08:00
LaZzyMan
1e41965a7e fix settings in interactive mode 2026-01-21 11:29:48 +08:00
刘伟光
4c6780b79d feat: make DiffRenderer respect ui.showLineNumbers setting 2026-01-21 11:25:14 +08:00
tanzhenxin
b91878200c (chore)fix: test fails on Windows CI 2026-01-20 19:01:24 +08:00
tanzhenxin
fd6c7364e8 (chore)fix: test fails on Windows CI 2026-01-20 17:55:36 +08:00
tanzhenxin
4ae8584c81 feat(cli): support LLM output language configuration in Settings Dialog 2026-01-20 17:00:19 +08:00
LaZzyMan
a61a3c5680 Merge branch 'main' into feat/extension 2026-01-19 21:16:07 +08:00
tanzhenxin
046559408b Merge branch 'main' into feat/cli-welcome-screen 2026-01-19 20:28:48 +08:00
tanzhenxin
de47c4e98b
Merge pull request #1465 from QwenLM/feat/add-user-feedback-dialog
Some checks are pending
Qwen Code CI / Lint (push) Waiting to run
Qwen Code CI / Test (push) Blocked by required conditions
Qwen Code CI / Test-1 (push) Blocked by required conditions
Qwen Code CI / Test-2 (push) Blocked by required conditions
Qwen Code CI / Test-3 (push) Blocked by required conditions
Qwen Code CI / Test-4 (push) Blocked by required conditions
Qwen Code CI / Test-5 (push) Blocked by required conditions
Qwen Code CI / Test-6 (push) Blocked by required conditions
Qwen Code CI / Test-7 (push) Blocked by required conditions
Qwen Code CI / Test-8 (push) Blocked by required conditions
Qwen Code CI / Post Coverage Comment (push) Blocked by required conditions
Qwen Code CI / CodeQL (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:docker (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:none (push) Waiting to run
E2E Tests / E2E Test - macOS (push) Waiting to run
feat: add user feedback dialog
2026-01-19 19:26:20 +08:00
tanzhenxin
eed46447da
Merge pull request #1519 from afarber/1208-fix-key-conflict
fix: resolve arrow key navigation conflict between history and completion
2026-01-19 19:23:22 +08:00
Mingholy
8de81b6299
Merge pull request #1510 from QwenLM/mingholy/fix/merge-settings-generationConfig
Fix credential management and authentication flows with improved generation config preservation
2026-01-19 19:01:56 +08:00
DragonnZhang
f99295462d feat: Rename lastShownTimestamp to feedbackLastShownTimestamp and check QWEN_OAUTH for feedback dialog showing 2026-01-19 16:19:35 +08:00
xwj02155382
af269e6474 fix: add getContentGeneratorConfig mock to Footer.test.tsx 2026-01-19 14:51:05 +08:00
xwj02155382
ef769c49bf Merge branch 'main' of github.com:QwenLM/qwen-code into feature/add-context-window-size-config 2026-01-19 14:37:17 +08:00
xwj02155382
a684f07ff4 refactor: move contextWindowSize to ContentGeneratorConfig
- Add contextWindowSize field to ContentGeneratorConfig interface
- Update tokenLimit function to accept contentGeneratorConfig parameter
- Implement priority logic: user config > auto-detection
- Update chatCompressionService to use new API via getContentGeneratorConfig()
- Add contextWindowSize to MODEL_GENERATION_CONFIG_FIELDS for config resolution
- Add contextWindowSize to CLI settings schema (model.generationConfig)
- Update UI components (Footer, ContextUsageDisplay) to use new config API
- Fix test mocks to include getContentGeneratorConfig method

This refactor avoids modifying 71+ test files by moving the config
to the generator level instead of the Config class level.

Modified files:
- packages/core/src/core/contentGenerator.ts
- packages/core/src/core/tokenLimits.ts
- packages/core/src/services/chatCompressionService.ts
- packages/core/src/services/chatCompressionService.test.ts
- packages/core/src/models/constants.ts
- packages/cli/src/config/settingsSchema.ts
- packages/cli/src/ui/components/ContextUsageDisplay.tsx
- packages/cli/src/ui/components/Footer.tsx
2026-01-19 14:21:05 +08:00
tanzhenxin
8b5f198e3c chore: clean up orphaned bfsFileSearch code and discoveryMaxDirs setting 2026-01-19 14:10:42 +08:00
tanzhenxin
f0b2a7ef98 feat(cli): refactor about dialog and add proxy field 2026-01-19 10:54:45 +08:00
tanzhenxin
c87197d420 Redesign settings dialog with curated list and view-switching UI 2026-01-18 21:56:33 +08:00
tanzhenxin
28f6c161da Limit info panel max width to 60 in two-column header layout 2026-01-18 15:00:58 +08:00
Alexander Farber
5d20848577
Use dim colors for YOLO/auto-accept mode borders 2026-01-17 14:23:42 +01:00
Alexander Farber
0901b228a7
Resolve arrow key navigation conflict between history and completion 2026-01-16 22:41:01 +01:00
tanzhenxin
758e5c0992 update header display for narrow screen 2026-01-16 14:45:07 +08:00
tanzhenxin
5c6c3b2cf6 hide context usage if no request sent 2026-01-16 14:03:20 +08:00
tanzhenxin
b804b1f48a feat: Redesign CLI welcome screen and improve visual consistency 2026-01-16 11:48:31 +08:00
mingholy.lmh
da8c49cb9d fix: localize default base URL display in ModelDialog 2026-01-15 20:15:37 +08:00
LaZzyMan
f00f76456c feat: claude subagents transform 2026-01-15 20:00:09 +08:00
DragonnZhang
d91e372c72 feat: Refactor feedback dialog to a non-blocking popup, allow user input while it is rendered 2026-01-15 11:01:04 +08:00
DragonnZhang
f7585153b7 feat: Add user feedback dialog 2026-01-15 11:01:03 +08:00
LaZzyMan
4c7605d900 Merge branch 'main' into feat/extension 2026-01-14 17:56:01 +08:00
LaZzyMan
0a88dd7861 fix: fix tests 2026-01-14 16:50:59 +08:00
LaZzyMan
70991e474f fix/lint error 2026-01-14 15:42:50 +08:00
LaZzyMan
551e546974 feat: move extension to core package 2026-01-14 15:30:27 +08:00
tanzhenxin
f3b7c63cd1
Merge pull request #1436 from QwenLM/feat/skills-enhancement
feat(skills): add experimental /skills command + hot reload
2026-01-13 17:36:21 +08:00
mingholy.lmh
2b511d0b83 fix: cold start issue and acp integration tests 2026-01-08 18:08:56 +08:00