Commit graph

70 commits

Author SHA1 Message Date
lamb
5a43efcae4
fix(editor): detect Zed.app on macOS when CLI is not in PATH (#3303)
* fix(editor): detect Zed.app on macOS when CLI is not in PATH

On macOS, Zed editor is typically installed via Homebrew or direct download,
but the CLI command 'zed' is not automatically added to PATH.

This fix adds detection for Zed.app bundle at:
- /Applications/Zed.app
- ~/Applications/Zed.app

When the CLI is not found but the app bundle exists, the code now falls back
to using the CLI inside the app bundle at Contents/MacOS/zed.

Fixes #3287

* fix(editor): use shared getEditorExecutable in useLaunchEditor

- Export getEditorExecutable() from editor.ts for use by both getDiffCommand and useLaunchEditor
- Updated useLaunchEditor.ts to use getEditorExecutable instead of its own implementation
- Updated tests to be platform-agnostic for macOS app bundle path testing
- Fixes: Zed on macOS is now detected when installed via app bundle (not just CLI in PATH)

* fix(editor): use correct Zed CLI path (Contents/MacOS/cli)

- Changed from Contents/MacOS/zed (GUI binary) to Contents/MacOS/cli (actual CLI)
- The GUI binary does not support --wait/--diff flags
- Updated tests to verify correct CLI path with regex matching for cross-platform

* style(editor): fix prettier trailing whitespace issues

Trailing spaces and array line-wrapping in zed macOS detection code.

* fix(editor): return null when editor not found + remove unused var

- getEditorExecutable now returns null (not fallback string) so
  useLaunchEditor error handling actually works
- remove unused getAppBundleCliPath in test file (typecheck fix)

* fix: add vitest globals to eslint config for test files

* fix: remove duplicate empty test with orphan toEqual call

* fix: resolve ESLint errors in editor.test.ts (arrow-body-style, no-useless-escape)

* chore: remove debug script check_braces.js

* fix: sync checkHasEditorType with getEditorExecutable, remove pr-body.md

- Replace zedAppExists() check in checkHasEditorType with
  getEditorExecutable() !== null, keeping availability detection
  and execution in sync (fixes partial install false positive)
- Remove unused zedAppExists() function
- Remove scratch file pr-body.md

* fix(editor): defer os.homedir() call to avoid breaking tests with incomplete node:os mocks

The zedMacOsPaths constant was calling homedir() at module initialization
time, which caused 'homedir is not a function' errors in CLI test files
(systemInfo.test.ts, shellCommandProcessor.test.ts) that mock node:os
without providing a homedir mock.

Fix: convert zedMacOsPaths from a constant to a lazy function
getZedAppPaths() that computes the paths only when called.

---------

Co-authored-by: lamb <906276457@qq.com>
2026-04-21 17:06:58 +08:00
tanzhenxin
dc833d9d94 feat: add bugfix workflow, test-engineer agent, and debugging skills
- Add test-engineer agent for bug reproduction and verification
- Add /qc:bugfix command for structured bugfix workflow
- Add e2e-testing skill covering headless/interactive modes, MCP testing
- Add structured-debugging skill for hypothesis-driven debugging
- Simplify AGENTS.md to focus on essential commands and conventions
- Add terminal-capture scenario for bugfix workflow testing
- Add .qwen folder to ESLint ignore list

Known limitations: The /qc:bugfix workflow and e2e-testing skill
are experimental and may be unstable or consume significant tokens.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-04 18:30:09 +08:00
tanzhenxin
8753245b5f feat(channels): add DM pairing flow for sender approval
- Add PairingStore for managing pending requests and approved users
- Update SenderGate to support pairing policy with code generation
- Add CLI commands: `qwen channel pairing list/approve`
- Document pairing flow with rules and usage examples

This allows unknown senders to request access via a pairing code
that the bot operator approves through the CLI.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-24 11:37:16 +00:00
tanzhenxin
74b342623c Merge branch 'main' into feature/arena-agent-collaboration 2026-02-28 22:01:10 +08:00
tanzhenxin
6258ee53a1 chore: Fix lint errors in web-templates package
- Remove unused npmCommand variable from build.mjs
- Add no-undef and .mjs file support to web-templates eslint config

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 21:12:23 +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
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
DragonnZhang
c243f1d90d chore: update ESLint configuration and lint-staged command 2026-02-09 15:16:26 +08:00
DragonnZhang
22aa6656a4 feat: add new insight page with Vite setup 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
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
tanzhenxin
7f4579ee6a refactor(debug): add ESLint no-console rule with targeted allowlist
- Add 'no-console': 'error' to main source files (packages/core/src, packages/cli/src)
- Configure targeted allowlist for:
  - Test files and scripts
  - VS Code extension (out of scope)
  - WebUI package (UI component library)
  - Integration tests
  - Intentionally excluded files (acpAgent.ts, stdioHelpers.ts)
- Consolidate no-console overrides into a single clearly-marked section
- Enforced in CI via npm run lint:ci

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-02 19:13:01 +08:00
tanzhenxin
340becefb4 refactor(lsp): migrate remaining LSP console calls to debugLogger
- LspConfigLoader.ts: 7 console.warn calls → debugLogger.warn
- LspConnectionFactory.ts: 1 console.warn call → debugLogger.warn
- Add eslint no-console overrides for test files and scripts
- Completes LSP subsystem migration (8 more calls)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-02 17:50:18 +08:00
yiliang114
02db22dd78 chore: update eslint config and translation adjustments
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

This commit includes several updates:

- Updated eslint configuration with improved formatting and organization

- Added SaveMemoryToolCall support in vscode-ide-companion

- Translated Chinese comments and UI text to English in various components

- Made minor code formatting improvements across multiple files
2026-01-29 19:44:37 +08:00
yiliang114
8d2d29a422 feat(webui): Add UMD build format and CDN usage support 2026-01-22 15:47:56 +08:00
yiliang114
73b4a9b560 chore(vscode-ide-companion, webui): update plan md 2026-01-18 23:23:16 +08:00
yiliang114
af76450dee feat(webui): Infrastructure Setup (Prerequisites) 2026-01-15 14:32:21 +08:00
pomelo-nwu
e5dbd69899 feat: fix ci 2025-12-26 22:38:44 +08:00
pomelo-nwu
53486b7fd3 Merge branch 'main' into docs-byYijing 2025-12-15 19:42:20 +08:00
pomelo-nwu
e12a80b24e feat: update docs 2025-12-09 20:16:03 +08:00
yiliang114
111234eb24 refactor(vscode-ide-companion): simplify ACP connection and cleanup configurations
- Remove .claude from .gitignore
- Update CSS file path in eslint config
- Simplify VS Code extension title
- Remove unused keybinding for openChat command
- Delete unused auth constants file
- Simplify ACP connection by removing backend parameter
- Move authMethod to acpTypes
- Restrict ACP backend to Qwen only
- Remove backend property from connection state
- Minor formatting update in webview index.tsx
2025-12-08 20:44:48 +08:00
yiliang114
e47263f7c9 Merge branch 'main' of https://github.com/QwenLM/qwen-code into feat/jinjing/write-and-read-file-in-vscode 2025-12-07 23:05:36 +08:00
mingholy.lmh
3056f8a63d feat(tests): move SDK integration tests to integration-tests to share globalSetup 2025-12-04 17:10:23 +08:00
mingholy.lmh
56957a687b refactor: rename ambiguous exported types 2025-12-04 17:10:21 +08:00
mingholy.lmh
769a438fa4 feat: enhance logging capabilities and update query options in sdk-typescript
- Introduced a new logging system with adjustable log levels (debug, info, warn, error).
- Updated query options to include a logLevel parameter for controlling verbosity.
- Refactored existing code to utilize the new logging system for better error handling and debugging.
- Cleaned up unused code and improved the structure of the SDK.
2025-12-04 17:10:20 +08:00
mingholy.lmh
e1ffaec499 feat: create draft framework for cli & sdk 2025-12-04 17:10:16 +08:00
yiliang114
90fc53a9df refactor(webview): Refactoring Input Form and Timeline Components 2025-12-02 01:29:33 +08:00
yiliang114
c038745897 fix(vscode-ide-companion): 修复 Tailwind 可重用组件类和 ESLint 配置, 调整 ChatHeader 按钮样式
- 在 tailwind.css 中正确定义可重用的 Tailwind 组件类
- 修复 ChatHeader 组件中的按钮样式,确保 hover 效果正常工作
- 修复 ESLint 配置中的 importPlugin 导入问题
- 清理 App.css 中重复的 CSS 变量定义
- 为 btn-ghost 类设置 4px border radius
- 为按钮内的 span 添加左右 4px padding (使用 px-1)
- 确保按钮 hover 时有背景色效果
2025-11-29 18:13:50 +08:00
yiliang114
dc40995e70 feat(vscode-ide-companion): import chat chat customEditor to vscode extension folder 2025-11-17 18:53:00 +08:00
tanzhenxin
be633a80cc
📦 Release qwen-code CLI as a Standalone Bundled Package (#866) 2025-10-24 17:08:59 +08:00
tanzhenxin
eb95c131be
Sync upstream Gemini-CLI v0.8.2 (#838) 2025-10-23 09:27:04 +08:00
mingholy.lmh
dbdb4db4f0 fix: lockfile and configs 2025-09-15 20:59:35 +08:00
mingholy.lmh
f19789b381 fix: lint error 2025-09-15 17:26:57 +08:00
mingholy.lmh
14ea33063f Merge tag 'v0.3.0' into chore/sync-gemini-cli-v0.3.0 2025-09-11 16:26:56 +08:00
Adam Weidman
bfef867ba7
Add a2a-server package to gemini-cli (#6597) 2025-08-26 20:49:25 +00:00
Pascal Birchler
0f031a7f89
Explict imports & exports with type modifier (#3774) 2025-08-25 22:04:53 +00:00
Pascal Birchler
ee4feea006
chore: consistently import node modules with prefix (#3013)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-08-25 20:11:27 +00:00
Pascal Birchler
49cce8a15d
chore(test): install and configure vitest eslint plugin (#3228)
Co-authored-by: N. Taylor Mullen <ntaylormullen@google.com>
2025-08-25 14:21:47 +00:00
fuyou
ef46d64ae5
Fix(grep): memory overflow in grep search and enhance test coverage (#5911)
Co-authored-by: Jacob Richman <jacob314@gmail.com>
2025-08-22 06:10:45 +00:00
Adam Weidman
714b3dab73
chore(lint config): add test-utils to eslint config (#6768) 2025-08-21 18:00:59 +00:00
mingholy.lmh
c546d86d44 Merge tag 'v0.1.21' of github.com:google-gemini/gemini-cli into chore/sync-gemini-cli-v0.1.21 2025-08-20 22:24:50 +08:00
tanzhenxin
7dbc240847 chore: sync gemini-cli v0.1.19 2025-08-18 19:55:46 +08:00
Richie Foreman
7cc6b8c270
chore(usage telemetry): Freshen up Clearcut logging (#6013)
Co-authored-by: christine betts <chrstn@uw.edu>
Co-authored-by: Jacob Richman <jacob314@gmail.com>
Co-authored-by: matt korwel <matt.korwel@gmail.com>
2025-08-12 18:31:59 +00:00
mingholy.lmh
ea7dcf8347 feat(oauth): add Qwen OAuth integration 2025-08-08 10:30:18 +08:00
Jacob MacDonald
e3e7677753
Add integration test for maximum schema depth error handling (#5685) 2025-08-06 20:45:54 +00:00
Lee James
1fb680bacc
bug(tests): fix test errors (#5678)
Co-authored-by: matt korwel <matt.korwel@gmail.com>
2025-08-06 19:26:46 +00:00
Shreya Keshive
2cdaf912ba
Generate NOTICES.TXT and surface via command (#5310) 2025-08-03 20:19:34 +00:00
Shreya Keshive
4f69b2d8dc Generate NOTICES.TXT and surface via command (#5310) 2025-08-03 20:19:34 +00:00
Pascal Birchler
97cf26ec53
fix(eslint): remove custom rule in favor of eslint-plugin-import (#3012)
Co-authored-by: Sandy Tao <sandytao520@icloud.com>
2025-07-21 23:22:13 +00:00
christine betts
e9d680e8a4
Introduce VSCode companion extension (#3917) 2025-07-14 15:34:44 +00:00