Commit graph

356 commits

Author SHA1 Message Date
tanzhenxin
a172696b86 Merge branch 'main' into feat/support-insight-command
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 21:05:41 +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
LaZzyMan
c504cc0c6b feat(mcp): update i18n locales and tests for MCP TUI 2026-02-25 16:28:29 +08:00
DennisYu07
872e16505b refactor hookregisry and add test 2026-02-24 23:44:44 -08:00
LaZzyMan
fe4ca16088 refactor: remove deprecated list and refresh MCP commands
- Delete listCommand and refreshCommand from mcpCommand.ts
- Update subCommands to only include manageCommand and authCommand
- Update documentation to reference MCP management dialog instead of CLI commands
- Simplify mcp command description to focus on management dialog and OAuth auth

Note: i18n strings for deprecated commands are kept for backward compatibility
2026-02-25 11:58:41 +08:00
tanzhenxin
e12e0533a3 refactor(core)!: Generalize GitWorktreeService from Arena-specific to reusable service
Rename ArenaWorktreeConfig → WorktreeSetupConfig, setupArenaWorktrees →
setupWorktrees, cleanupArenaSession → cleanupSession, etc. Change default
storage path from ~/.qwen/arena/ to ~/.qwen/worktrees/ and branch prefix
from arena/ to worktrees/. Add branchPrefix and metadata options for
flexibility. Remove auto-repo-init behavior; fail fast instead.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-23 22:44:45 +08:00
DennisYu07
43d64e26ca refactor stop hook 2026-02-22 02:20:45 -08:00
tanzhenxin
d4cfb18f79 feat(core,cli)!: Implement in-process agent backend for arenas
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

Add InProcessBackend to run subagents in-process rather than via subprocess,

enabling faster initialization and better resource management for agent

collaboration arenas.

Key changes:

- Add InProcessBackend with sandboxed in-process agent execution

- Refactor agent runtime into headless vs interactive modes

- Add AsyncMessageQueue utility for agent message passing

- Update ArenaManager with backend selection (in-process vs subprocess)

- Refactor subagent types/exports; consolidate in subagents/types

- Remove deprecated agent-hooks.ts (functionality merged into runtime)

- Update task tool to support new agent lifecycle

Breaking: Subagent type exports restructured; import from subagents/types
2026-02-21 21:08:20 +08:00
tanzhenxin
193bc438bd feat(arena): Persist arena events to chat history and add progress updates
- Replace SESSION_WARNING with SESSION_UPDATE supporting info/warning types
- Emit setup progress messages from ArenaManager during agent initialization
- Record all arena UI events to session JSONL for chat history replay
- Clean up unused agent event types (stream, tool calls, stats)
- Update arena select/stop dialogs to record their output

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-18 14:33:37 +08:00
tanzhenxin
6b55c8161f feat(arena): Add agent collaboration arena feature
Introduces a new Arena system for running multiple AI agents in parallel
terminal sessions with support for iTerm and Tmux backends.

Core:
- Add ArenaManager and ArenaAgentClient for orchestrating multi-agent sessions
- Add terminal backends (ITermBackend, TmuxBackend) with feature detection
- Add git worktree service for isolated agent workspaces
- Add arena event system for real-time status updates

CLI:
- Add /arena command with start, stop, status, and select subcommands
- Add Arena dialogs (Select, Start, Status, Stop)
- Add ArenaCards component for displaying parallel agent outputs
- Consolidate message components into StatusMessages and ConversationMessages
- Add MultiSelect component for agent selection

Config:
- Add arena-related settings to schema and config

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-18 10:51:35 +08:00
pomelo-nwu
77fd945474 feat: add /context command to display context window token usage breakdown
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-13 16:36:50 +08:00
LaZzyMan
f64f08d8a1 feat: add mcp dialog 2026-02-13 14:38:54 +08:00
mingholy.lmh
a5c7f1db3b feat(i18n): add translations for "Configure authentication information for login" in multiple languages 2026-02-11 17:00:43 +08:00
DragonnZhang
5376ca5873 fix: unblock input after ESC cancel, suppress abort errors, add hint
- Use Promise.race in handleSlashCommand so ESC abort immediately
  unblocks the submitQuery await chain (fixes /compress blocking input)
- Suppress abort error messages in /compress and /summary when
  cancelled via ESC (cancelSlashCommand already shows "Command cancelled")
- Add "(esc to cancel)" hint below pending slash command items
- Add i18n translations for the new hint in all 6 locales
2026-02-11 11:22:19 +08:00
DragonnZhang
fcb22a3f79 feat(insightCommand): simplify file opening by using 'open' package 2026-02-10 14:47:33 +08:00
DragonnZhang
4b95854e6c refactor(insightCommand): replace console.error with logger for better error handling 2026-02-09 20:34:53 +08:00
DragonnZhang
0dc359405e feat(insight): add progress tracking for insight generation and display updates 2026-02-09 15:16:29 +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
7b845ea3a6 refactor(insight): improve error handling and format output path message 2026-02-09 15:16:27 +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
9ff4be1ae4 feat(insight): add insight command and server for personalized programming insights 2026-02-09 15:16:25 +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
371b408d6d fix: update test cases 2026-02-05 16:47:36 +08:00
mingholy.lmh
86a43618a7 refactor(export): built-in package for assets export
1. use built-in assets package to support html export
2. improve markdown export
2026-02-05 16:47:36 +08:00
mingholy.lmh
a4630d39e4 feat(export): support html/json/jsonl/md export 2026-02-05 16:47:35 +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
89e3c2cd7a refactor(debug): replace ConsolePatcher with debugLogger and update error reporting
- Replace ConsolePatcher with centralized debugLogger utility
- Refactor errorReporting to use debugLogger instead of file-based reporting
- Remove user-facing console message components:
  - Delete ConsolePatcher.ts, useConsoleMessages.ts/hook
  - Delete ConsoleSummaryDisplay.tsx, DetailedMessagesDisplay.tsx
- Update all tests in packages/core and packages/cli:
  - Mock debugLogger where needed
  - Remove assertions for console output on non-critical errors
  - Keep debugLogger assertions for fatal/network errors
  - Use HOME directory mocking for hermetic file system tests

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-02 17:37:54 +08:00
tanzhenxin
135df54f27 Merge branch 'main' into feat/debug-logging-refactor
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-01 20:47:38 +08:00
pomelo-nwu
109738bf67 feat: Add Portuguese (pt-BR) Support and Refactored I18n Architecture 2026-01-26 23:28:17 +08:00
pomelo-nwu
de3bc5fe3a Merge branch 'k-kanade/main' into i18n-0116 and resolve conflicts 2026-01-26 22:55:04 +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
LaZzyMan
674bb6386e feat(extensions): add detail command and improve extension validation
- Add /extensions detail command to show extension details
- Allow underscores and dots in extension names
- Fix contextFileName empty array handling to use default QWEN.md
- Fix marketplace extension clone to use correct source URL
- Add inline parameter to extensionToOutputString
- Add comprehensive tests for all changes
2026-01-22 19:37:01 +08:00
LaZzyMan
9af348d6ad fix ci test 2026-01-22 11:56:35 +08:00
LaZzyMan
bc7e586028 Merge branch 'main' into feat/extension 2026-01-22 11:41:04 +08:00
LaZzyMan
3f3c5ff255 feat add explore command 2026-01-21 18:11:19 +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
LaZzyMan
8b4626a2be fix test 2026-01-19 19:40:16 +08:00
tanzhenxin
8b5f198e3c chore: clean up orphaned bfsFileSearch code and discoveryMaxDirs setting 2026-01-19 14:10:42 +08:00
刘伟光
b9207c5884 feat: Optimize the code and delete unnecessary parameters. Be compatible with correlation functions and configurations, as well as optimize test cases 2026-01-19 11:54:10 +08:00
tanzhenxin
f0b2a7ef98 feat(cli): refactor about dialog and add proxy field 2026-01-19 10:54:45 +08:00
LaZzyMan
c8b0efa4d9 feat: add i18n 2026-01-19 10:08:21 +08:00
LaZzyMan
f7fb624af9 feat: extension slash commands 2026-01-16 16:29:03 +08:00
LaZzyMan
4c7605d900 Merge branch 'main' into feat/extension 2026-01-14 17:56:01 +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
tanzhenxin
155d1f9518
Merge pull request #1428 from liqiongyu/fix/727-memory-show-respects-context-file
fix(cli): /memory show respects context.fileName
2026-01-09 10:29:27 +08:00
tanzhenxin
b5bcc07223 Add skills list display to CLI interface 2026-01-08 14:45:48 +08:00