Commit graph

34 commits

Author SHA1 Message Date
tanzhenxin
2e91f0a4cd Merge remote-tracking branch 'origin/main' into feat/ask-user-question-tool 2026-03-08 23:05:32 +08:00
tanzhenxin
411ebd03b8 fix(cli): improve ask_user_question tool handling and UI
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

- In ACP mode: allow ask_user_question in YOLO mode (user must respond)

- In ACP mode: allow ask_user_question in plan mode for clarifications

- Hide footer when confirmation dialog is active

- Fix tab index overflow with functional state updates

- Fix ask_user_question detection in VSCode companion (use rawInput)

- Add cleanup for pending ACP promises on panel/provider dispose

- Use theme.text.accent consistently for highlighted elements

- Remove unused 'answers' param from AskUserQuestionParams

This ensures users can always respond to clarification questions

in ACP mode regardless of approval mode, and improves dialog UX.
2026-03-08 22:15:18 +08:00
mingholy.lmh
f1c88e9bc9 style: apply formatting and linting fixes across codebase
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-06 21:58:22 +08:00
DragonnZhang
554a202840 feat: add AskUserQuestion functionality with dialog component
- Introduced AskUserQuestionDialog component for displaying questions and collecting user responses in the WebView.
- Updated ACP integration to handle ask user question requests and responses.
- Enhanced session management to include raw input and answers for user questions.
- Modified existing tools and services to support new ask user question feature.
- Updated types and message handling to accommodate new question structure and responses.
2026-02-14 17:31:29 +08:00
yiliang114
9830c70061 feat(vscode-ide-companion): 支持使用 server-side timestamp 进行消息排序
- 在 SessionUpdateMeta 中添加 timestamp 字段
- 为 UserMessageChunkUpdate 和 ToolCallUpdate 添加 _meta 字段
- 在 QwenAgentManager 中使用 server timestamp 而非客户端时间
- 在 QwenSessionUpdateHandler 中解析并传递 tool call timestamp
- 在 useToolCalls 中改进 timestamp 解析逻辑
- 修正 App.tsx 中 timestamp 处理,使用 nullish-coalescing operator
- 为 ToolCallUpdateData 和 ToolCallUpdate 类型添加 timestamp 和 _meta

feat(integration-tests): add file location extraction for tool calls

feat(webui): enhance ReadToolCall component with content preview and expand/collapse

refactor(webui): simplify SaveMemoryToolCall component UI

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-01 00:22:29 +08:00
tanzhenxin
2aab8b4c14 Merge branch 'main' into chore/bump-version-0.9.0 2026-01-29 21:05:26 +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
bc5065b139 feat(webui): add SaveMemory tool call component support 2026-01-29 17:05:04 +08:00
yiliang114
878a870df2 Merge branch 'main' of https://github.com/QwenLM/qwen-code into feat/unified-ui-for-vscode-extension 2026-01-29 15:40:32 +08:00
yiliang114
5d00245286 feat(webui): enhance ThinkingMessage with expand/collapse
- Add expand/collapse functionality to ThinkingMessage
- Support defaultExpanded prop to control initial state
- Add status prop (loading/default) with pulse animation
- Introduce ChevronIcon for expand/collapse toggle
- Update ThinkingMessage styles with timeline support
- Add stories for all states (default, expanded, loading)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-29 01:39:59 +08:00
yiliang114
71cae2fa1e feat(webui): add WebFetchToolCall component for web search/fetch
- Add WebFetchToolCall component to display web fetch and search operations
- Support URL/query display with output card
- Add expand/collapse for long output content
- Export WebFetchToolCall from toolcalls index
- Integrate WebFetchToolCall in ChatViewer component

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-29 01:39:46 +08:00
yiliang114
bb358703e9 Merge branch 'main' of https://github.com/QwenLM/qwen-code into feat/unified-ui-for-vscode-extension 2026-01-28 18:52:37 +08:00
yiliang114
76505c635e feat(webui): publish webui
0.1.0-beta.3 add collapsibaleFileContext compent and opt SearchToolCall
2026-01-28 17:24:31 +08:00
yiliang114
8d2d29a422 feat(webui): Add UMD build format and CDN usage support 2026-01-22 15:47:56 +08:00
yiliang114
2ea44966ec feat(webui): enhance ChatViewer and components 2026-01-21 23:51:20 +08:00
yiliang114
5900162229 refactor(webui): improve timeline styling and enhance ReadToolCall error handling
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-21 20:50:51 +08:00
yiliang114
7ca7fec18d docs(webui): update documentation and package references
- Add comprehensive Adapter-README documenting data transformation flow
- Update README.md with correct package name (@qwen-code/webui)
- Add platform adapter guide for Chrome/Web/Share implementations
- Update Storybook configuration and preview styles
- Remove obsolete migration plan and example component

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-20 22:59:20 +08:00
yiliang114
df787fff64 feat(webui): enhance ChatViewer and AssistantMessage with timeline positioning
- Update ChatViewer to calculate and pass timeline positions (isFirst/isLast) to messages
- Enhance AssistantMessage with timeline connector visualization
- Add storybook stories for AssistantMessage component
- Update SearchToolCall and LayoutComponents for improved UI consistency
- Export new adapters in main index file
- Add timeline styling to components

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-20 21:33:49 +08:00
yiliang114
1861557d15 feat(webui): add data adapter layer for ACP and JSONL protocols
- Implement ACPAdapter to convert ACP protocol messages to unified format
- Implement JSONLAdapter to convert JSONL format messages to unified format
- Define unified message types for consistent component rendering
- Add helper functions for timeline position calculation (isFirst/isLast)
- Enable cross-platform message format compatibility

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-20 21:33:35 +08:00
yiliang114
cac7138694 feat(webui): add ChatViewer component with stories and styles
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-20 10:56:11 +08:00
yiliang114
f6a54146a3 feat(webui): add ChatViewer component with stories and styles
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-01-20 00:27:16 +08:00
yiliang114
7de36190ff refactor(webui): Unified Tools Invoke Component Label Display and Style Variables
移除多余的工具调用类型分支,统一使用简洁的标签显示,并添加必要的CSS
变量以支持VSCode兼容性和界面一致性。

- 移除 read_many_files、list_directory、ls 等冗余工具类型分支
- 简化 ReadToolCall 组件中的标签逻辑,统一使用 "Read" 标签
- 为 ShellToolCall 添加基于变体的动态标签(Execute/Bash)
- 在 CSS 变量中添加 xs 字体大小、圆角和间距变量
- 增加 VSCode 兼容性样式变量以改善集成体验
```
2026-01-17 13:50:50 +08:00
yiliang114
ff43a278dc feat(webui): add webview container and isolate styles for VSCode integration
- Introduce WebviewContainer component for style isolation in VSCode webviews
- Rename CSS variables from --app-* to --qwen-app-* to prevent conflicts
- Add dedicated webview.css with isolated styles
- Update exports to include webview.css in package
- Modify all components to use new CSS variable names
- Update VSCode IDE companion to use new webview container
- Add style isolation to prevent conflicts with VSCode environment

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

Fixes webview UI issues in VSCode IDE Companion by providing proper style encapsulation.
2026-01-17 10:53:32 +08:00
yiliang114
9a47ad5e62 refactor(webui): migrate ReadToolCall, ShellToolCall and Onboarding to shared package
- Move ReadToolCall and ShellToolCall from vscode-ide-companion to webui
- Migrate Onboarding component with platform-agnostic props (iconUrl, appName, etc.)
- Add Storybook stories for ReadToolCall, ShellToolCall, and Onboarding
- Add shared styles: components.css (toolcall components), timeline.css
- Update vscode-ide-companion to use webui components via imports
- Remove duplicate InputForm type re-exports
- Add WEBUI_PLATFORM_ADAPTER_GUIDE_ZH.md for platform adapter documentation
- Update toolcalls/index.tsx to route read_many_files/list_directory/ls to ReadToolCall
2026-01-16 23:32:20 +08:00
yiliang114
07c3d487bb refactor(vscode-ide-companion/webui): migrate PermissionDrawer to shared webui package
- Move PermissionDrawer component and types from vscode-ide-companion to webui
- Add PermissionDrawer Storybook story for documentation
- Export PermissionOption and PermissionToolCall types from webui
- Update VSCodePlatformProvider with openDiff and openTempFile handlers
- Remove duplicated components: PermissionDrawer, FileLink, types, copyUtils
- Update ToolCall components to use usePlatform hook instead of useVSCode
- Add animation keyframes to tailwind preset for slide-up effect
2026-01-16 19:48:44 +08:00
yiliang114
593577864b feat(webui): migrate pure UI ToolCall components and add Storybook stories
- Migrate ThinkToolCall, GenericToolCall, EditToolCall, WriteToolCall,
  SearchToolCall, UpdatedPlanToolCall, CheckboxDisplay to webui
- Add Storybook stories for all migrated components
- Add stories for shared components (ToolCallContainer, ToolCallCard,
  StatusIndicator, CodeBlock, LocationsList, CopyButton)
- Fix Storybook theme by reordering CSS imports and adding body color
- Update vscode-ide-companion to import ToolCall components from webui
- Keep ReadToolCall and ShellToolCall in vscode-ide-companion (VSCode deps)
2026-01-16 13:45:56 +08:00
yiliang114
c44a60f9f9 fix(webui): improve groupContent error detection logic
- Only treat as error when error field is set OR type is 'error' with content
- This avoids false positives from empty error markers
- While not missing real errors that only have type='error' with text
2026-01-16 01:05:13 +08:00
yiliang114
e81cdbbcb1 fix(webui): improve robustness and accessibility based on code review
- Fix groupContent error detection: only treat as error when contentObj.error is truthy
- Fix safeTitle: add try/catch for circular reference handling
- Update CopyButton to use PlatformContext with navigator.clipboard fallback
- Improve FileLink accessibility: use button element with proper keyboard support
- Add aria-disabled and disabled attributes when file opening is unavailable
2026-01-16 00:59:29 +08:00
yiliang114
4f0aed4d71 feat(webui): migrate AssistantMessage component
- Move AssistantMessage.tsx and AssistantMessage.css from vscode-ide-companion
- Export AssistantMessageProps and AssistantMessageStatus types
2026-01-16 00:38:15 +08:00
yiliang114
2cdfb1ffad feat(webui): migrate ToolCall shared components and FileLink
- Add FileLink component with PlatformContext support
- Migrate ToolCallContainer, ToolCallCard, ToolCallRow, StatusIndicator, CodeBlock, LocationsList
- Add CopyButton and handleCopyToClipboard utilities
- Export utility functions: groupContent, mapToolStatusToContainerStatus, formatValue, etc.
- Add shared types: BaseToolCallProps, ToolCallData, ToolCallContent, etc.
2026-01-16 00:37:49 +08:00
yiliang114
a78cfc572b feat(webui): migrate message components with optimizations
- Migrate MarkdownRenderer, MessageContent, UserMessage, ThinkingMessage
- Add useMemo/useCallback for performance optimization
- Fix external link false positive using KNOWN_FILE_EXTENSIONS
- Fix line number display logic (support line 0 and start-only)
- Improve accessibility: use native button, add aria-hidden
- Add React.memo to MessageContent
- Add markdown-it dependency to webui package
2026-01-15 21:33:45 +08:00
yiliang114
71570540cc feat(webui): migrate icons, Tooltip, WaitingMessage from vscode-ide-companion
- Move icon components (FileIcons, EditIcons, NavigationIcons, StatusIcons,
  SpecialIcons, StopIcon) from vscode-ide-companion to webui package
- Migrate Tooltip component with CSS variable theming support
- Migrate WaitingMessage and InterruptedMessage components
- Enhance Button component with forwardRef, new variants (ghost, outline),
  loading state, and icon support
- Enhance Input component with forwardRef, error state, label, and helper text
- Update vscode-ide-companion to import components from @qwen-code/webui
- Remove replaced local components from vscode-ide-companion
- Add skipLibCheck to vscode-ide-companion tsconfig for type compatibility
2026-01-15 19:53:19 +08:00
yiliang114
af76450dee feat(webui): Infrastructure Setup (Prerequisites) 2026-01-15 14:32:21 +08:00
yiliang114
ec0586b135 chore(webui): rename 2026-01-14 23:27:56 +08:00