Commit graph

142 commits

Author SHA1 Message Date
tanzhenxin
ca3a2be2ec Merge branch 'main' into feat/shell-pty-default-and-enhancements 2026-03-06 14:36:18 +08:00
DennisYu07
79939e8ebe
Merge pull request #1988 from QwenLM/feat/hook-stop-implementation
Some checks are pending
Qwen Code CI / CodeQL (push) Waiting to run
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
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(hooks): Implement hooks system infrastructure with CLI and UI management
2026-03-06 12:59:16 +08:00
tanzhenxin
b48e3caa75 feat(shell): enable PTY by default and various enhancements
### Shell & Interactive Terminal Improvements
- PTY shell is now enabled by default instead of disabled
- Improved shell output rendering, process termination, and added fallback warning
- Background commands now properly capture subprocess PIDs on non-Windows

### Coding Plan Improvements
- Simplified auth message, added /model tip, improved system info display
- Reordered model list to prioritize glm-5, kimi-k2.5, MiniMax-M2.5
- Model selection is now preserved when updating if the model still exists

### Other Changes
- Added shared symlink utility; debug logs now have latest alias
- Unknown settings warnings go to debug log instead of user-facing warnings
- Fixed subagent confirmation state detection
- Removed debug UI from AgentCreationWizard

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-05 11:28:13 +08:00
zy6p
05f22247de refactor(cli): reuse normalizeContent for markdown frontmatter parsing 2026-03-04 17:34:26 +08:00
zy6p
b3142afaaa fix(cli): parse markdown frontmatter with CRLF and BOM 2026-03-04 16:03:14 +08:00
DennisYu07
1ce5bfb629 resole conflict and remove hook extension definition 2026-02-27 17:58:07 -08:00
tanzhenxin
9e4c5ee891 refactor: Extract web-templates package and unify build/pack workflow
Moves export-html and insight templates from cli/assets to a new
dedicated web-templates package. Updates Dockerfile and build scripts
to use consolidated bundle/prepare:package/pack workflow.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 21:02:46 +08:00
tanzhenxin
5926b37f4d feat(cli): Refine insight progress indicator UI
- Single-line layout with muted bar, accent stage text
- Inline

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>... in stage messages for cleaner code
- Simplify command intro text
2026-02-26 15:25:39 +08:00
tanzhenxin
509260ddfc feat(cli): add timestamped filenames for insight reports
- Generate date-stamped filenames (insight-YYYY-MM-DD.html)
- Append timestamp for multiple runs same day (insight-YYYY-MM-DD-HHMMSS.html)
- Create insight.html alias pointing to latest report
- Use symlink when possible, fallback to copy for cross-platform compatibility

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 14:38:12 +08:00
tanzhenxin
eea5daae74 feat(insight): polish insight page UI
- Add share card theme selection (light/dark) with contextual export controls
- Update heatmap colors to GitHub green palette and fix time ranges
- Limit bar charts to 10 items, use full Qwen Code name

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 14:07:16 +08:00
tanzhenxin
f47bef1ded fix(insight): count only user interactions in metrics
- Update totalMessages to count only user messages and slash commands
- Update heatmap to reflect only user interactions
- Update activeHours to reflect only user interactions
- Update tests to verify slash commands are counted correctly

This ensures the insight report accurately reflects actual user engagement
rather than including internal tool calls and system events.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 11:57:21 +08:00
tanzhenxin
c948e0c6e9 fix(insight): only analyze conversational sessions for facets
Filter sessions to only include those with both user and assistant
records when generating facets. This prevents system-only logs from
being analyzed, ensuring more accurate session insights.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 11:26:04 +08:00
DennisYu07
43d64e26ca refactor stop hook 2026-02-22 02:20:45 -08:00
DragonnZhang
2421bb185b feat(insight): refactor prompts and integrate dynamic prompt retrieval 2026-02-11 19:01:47 +08:00
DragonnZhang
83dc4ca4ec feat(insight): add shareable card and dev environment support
Add Twitter/X-optimized share card component for exporting insights as an
image. Include Vite dev setup for local development with hot reload. Increase
DataProcessor timeout and concurrency for better reliability with large
datasets.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-11 16:16:54 +08:00
DragonnZhang
d61ec772a3 Refactor code structure for improved readability and maintainability 2026-02-10 18:47:30 +08:00
DragonnZhang
89cc55f9a8 feat(DataProcessor): add comprehensive test suite for DataProcessor functionality 2026-02-10 15:46:06 +08:00
DragonnZhang
e29aab478e feat(DataProcessor): use constant for concurrency limit in pLimit calls 2026-02-10 14:10:31 +08:00
DragonnZhang
dd56345ac6 fix: handle special case for merging function calls with args and names
Added logic to merge two function calls where the first has a name but no arguments, and the second has arguments but no name. This ensures that function calls are correctly represented when they are split across two parts.
2026-02-10 11:47:15 +08:00
DragonnZhang
4b95854e6c refactor(insightCommand): replace console.error with logger for better error handling 2026-02-09 20:34:53 +08:00
DragonnZhang
e66c203cb0 feat(insight): Refactor code structure for improved readability and maintainability 2026-02-09 19:09:02 +08:00
DragonnZhang
2edce464ae feat(insight): refactor InteractionStyle to include insights and update related components 2026-02-09 15:23:32 +08:00
DragonnZhang
af21e7fdd9 feat: enhance InsightPrompts and components with additional data handling
- Updated InsightPrompts to clarify user request counting guidelines.
- Modified App.js to pass new props (topGoals, topTools) to ProjectAreas and ImpressiveWorkflows components.
- Enhanced ProjectAreas and ImpressiveWorkflows components to utilize new props for improved data visualization.
- Refactored FrictionPoints component layout to use grid display for better responsiveness.
- Removed legacy insight-app.js file to streamline the codebase.
- Expanded StaticInsightTypes to include primarySuccess, outcomes, and topGoals for better data structure.
2026-02-09 15:16:30 +08:00
DragonnZhang
4c32f4b646 feat(insight): remove Team Feedback link from navigation 2026-02-09 15:16:30 +08:00
DragonnZhang
fa8d596a31 feat(insight): enhance metrics generation with progress tracking and batch processing 2026-02-09 15:16:30 +08:00
DragonnZhang
0dc359405e feat(insight): add progress tracking for insight generation and display updates 2026-02-09 15:16:29 +08:00
DragonnZhang
20de2a001a feat(insight): add satisfaction and friction data aggregation and display in insights 2026-02-09 15:16:29 +08:00
DragonnZhang
afe911d06b feat(insight): add new components for insights display and enhance styling 2026-02-09 15:16:29 +08:00
DragonnZhang
f57e2619f1 feat(insight): remove Token Usage and Achievements from report
Removes Token Usage metrics and Achievements section from the generated insight report.
- Removes calculation logic in DataProcessor
- Removes types in StaticInsightTypes
- Removes UI sections in insight-app.js
2026-02-09 15:16:29 +08:00
DragonnZhang
754125e75c feat(insight): add tracking for lines and files in analysis and enhance stats display 2026-02-09 15:16:29 +08:00
DragonnZhang
aeedec3020 feat(insight): enhance qualitative insights display and improve styling 2026-02-09 15:16:29 +08:00
DragonnZhang
9ea6c45deb feat(insight): add qualitative insights components and styles to enhance user experience 2026-02-09 15:16:29 +08:00
DragonnZhang
5a7dcce196 feat(insight): refactor data processing and add qualitative insights structure 2026-02-09 15:16:29 +08:00
DragonnZhang
f1214c90ea feat(insight): remove JSON data file generation from static insight process 2026-02-09 15:16:28 +08:00
DragonnZhang
39d2067d14 feat(insight): update static insight generator and command handling
- Refine DataProcessor and StaticInsightGenerator logic
- Update StaticInsightTypes definitions
- Enhance insight command implementation
- Update package dependencies
2026-02-09 15:16:28 +08:00
DragonnZhang
7e21ba4983 feat(insight): enhance template loading logic and add insight templates copying 2026-02-09 15:16:28 +08:00
DragonnZhang
338387f93a feat(insight): integrate JSONL file reading utility and enhance base CSS styles 2026-02-09 15:16:27 +08:00
DragonnZhang
6cb0bb078c feat(insight): update insight template and app to React, enhance export functionality 2026-02-09 15:16:27 +08:00
DragonnZhang
2931e75a17 refactor(insight): remove debug logging and unused test generator 2026-02-09 15:16:27 +08:00
DragonnZhang
733522c076 refactor(insight): remove deprecated insight server implementation 2026-02-09 15:16:26 +08:00
DragonnZhang
0e55800941 feat(insight): Implement static insight generation and visualization
- Add HTML template for insights display.
- Create JavaScript application logic for rendering insights.
- Introduce CSS styles for layout and design.
- Develop a test generator for validating the static insight generator.
- Define TypeScript interfaces for structured insight data.
- Refactor insight command to generate insights and open in browser.
- Remove the need for a server process by generating static files directly.
2026-02-09 15:16:26 +08:00
DragonnZhang
18a21545ea refactor(insight): update insight page assets and styles 2026-02-09 15:16:25 +08:00
DragonnZhang
22aa6656a4 feat: add new insight page with Vite setup 2026-02-09 15:16:25 +08:00
DragonnZhang
9ff4be1ae4 feat(insight): add insight command and server for personalized programming insights 2026-02-09 15:16:25 +08:00
tanzhenxin
21e711469d fix(mcp): update OAuth client names and improve MCP commands
- Rename MCP OAuth client names from 'Gemini CLI' to 'Qwen Code'
- Update MCP add/remove/list commands with improved error handling
- Add comprehensive tests for OAuth provider
- Fix token storage test assertions
- Clean up unused i18n translation keys
- Update gemini-converter and window title references

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-08 10:46:48 +08:00
tanzhenxin
a4ffc6eb24 feat: promote Agent Skills from experimental to stable
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-06 13:04:08 +08:00
tanzhenxin
4abec5c055 Merge remote-tracking branch 'origin/main' into feat/debug-logging-refactor 2026-02-05 20:23:48 +08:00
mingholy.lmh
feeae875a0 feat: add export command draft for session history with markdown and HTML formats 2026-02-05 16:47:35 +08:00
tanzhenxin
7995c65571 feat(cli): migrate console calls to debugLogger and stdioHelpers (M3 Phase 7-9)
Route CLI console.* calls to structured logging:
- Debug/internal diagnostics → debugLogger (logfile)
- User-facing output → writeStdoutLine/writeStderrLine/clearScreen (stdioHelpers)
- Add stdioHelpers.ts with writeStdoutLine, writeStderrLine, clearScreen
- Migrate pre-session files (gemini.tsx, sandbox.ts, config.ts) to stdioHelpers
- Migrate extension/MCP commands to stdioHelpers
- Migrate non-interactive session/control to debugLogger
- Migrate UI hooks and components to debugLogger
2026-01-26 15:02:37 +08:00
tanzhenxin
3959b73bce feat(core,cli): migrate console.debug to debugLogger (M3 Phase 1-3) 2026-01-25 20:57:25 +08:00