yiliang114
7cd26f728d
feat(vscode-ide-companion): implement session message handling and UI improvements
...
Complete session message handling with JSONL support and UI enhancements
- Add JSONL session file reading capability
- Improve error handling and authentication flows
- Update UI components for better user experience
- Fix command identifier references
- Enhance MarkdownRenderer with copy functionality
- Update Tailwind configuration for better component coverage
2025-12-06 21:46:14 +08:00
yiliang114
2957058521
feat(vscode-ide-companion/webview): persist info banner dismissal state and add context control
2025-12-05 18:02:54 +08:00
yiliang114
2d844d11df
fix(vscode-ide-companion): improve message logging and permission handling
...
- Increase message logging truncation limit from 500 to 1500 characters
- Fix permission option mapping logic for reject_once/cancel options
- Add TODO comments for diff accept/cancel responses during permission requests
Resolves issues with permission handling and improves debugging capabilities.
2025-12-05 02:15:48 +08:00
yiliang114
4145f45c7c
fix(vscode-ide-companion): fix send/stop button state timing issue
...
- Show stop button immediately when request is submitted (isWaitingForResponse=true)
- Prevent confusing state where send button appears disabled instead of stop button
- Improve UX by providing immediate visual feedback on request submission
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-04 12:47:18 +08:00
yiliang114
3053e6c41f
style(vscode-ide-companion): update UI components and styling
...
- Updated chat message container spacing and styling
- Adjusted AssistantMessage text color handling
- Enhanced QwenMessageTimeline CSS rules for better visual flow
- Moved InfoBanner to ui directory for better organization
- Updated InputForm styling
- Added new CSS classes and updated tailwind configuration
- Improved timeline connection lines and message item spacing
These changes enhance the visual appearance and user experience of the chat interface.
2025-12-04 08:28:54 +08:00
yiliang114
e3c456a430
feat(vscode-ide-companion): add cancel streaming functionality
...
- Add handleCancel callback to App component
- Implement cancelStreaming message posting to VS Code
- Add onCancel prop to InputForm component
- Replace send button with stop button during streaming
2025-12-04 01:53:19 +08:00
yiliang114
b9b3b6d62e
style(vscode-ide-companion): header & empty state
2025-12-04 00:18:04 +08:00
yiliang114
2e449f4d45
wip(vscode-ide-companion): timelint
2025-12-02 14:41:00 +08:00
yiliang114
ed0d5f67db
style(vscode-ide-companion): form component style opt
2025-12-01 00:15:18 +08:00
yiliang114
1b37d729cb
style(vscode-ide-companion): use tailwind to refactor some ui components
2025-11-30 23:06:37 +08:00
yiliang114
1acc24bc17
fix(vscode-ide-companion): Interactive unification of first login and login
2025-11-30 22:26:04 +08:00
yiliang114
b1e74e5732
style(vscode-ide-companion): optimize header & message style
2025-11-30 21:27:55 +08:00
yiliang114
82205034cc
chore(vscode-ide-companion): remove the ui component of the active save session temporarily
2025-11-29 18:29:43 +08:00
yiliang114
9ae45c01a6
refactor(vscode): 重构消息排序和展示逻辑
...
- 移除旧的消息排序改进总结文档
- 重新组织消息渲染逻辑,合并所有类型的消息按时间戳排序
- 优化工具调用处理流程,添加时间戳支持
- 改进会话保存机制,直接使用SessionManager保存检查点
- 重构部分组件以提高可维护性
2025-11-28 22:35:31 +08:00
yiliang114
627f5fb43a
refactor(vscode-ide-companion): 优化代码结构和性能
...
- 移除未使用的依赖项 qwen-code
- 优化 completion 刷新逻辑,避免渲染循环
- 更新 CompletionMenu 组件,增加空状态提示
2025-11-28 10:04:29 +08:00
yiliang114
9cc48f12da
feat(vscode-ide-companion): 改进消息排序和显示逻辑
...
- 添加时间戳支持,确保消息按时间顺序排列
- 更新工具调用处理逻辑,自动添加和保留时间戳
- 修改消息渲染逻辑,将所有类型的消息合并排序后统一渲染
- 优化完成的工具调用显示,修复显示顺序问题
- 调整进行中的工具调用显示,统一到消息流中展示
- 移除重复的计划展示逻辑,避免最新块重复出现
- 重构消息处理和渲染代码,提高可维护性
2025-11-28 09:55:06 +08:00
yiliang114
f503eb2520
feat(vscode-ide-companion): split module & notes in english
2025-11-25 00:32:51 +08:00
yiliang114
795e7fa2c5
fix(vscode-ide-companion): improve type safety in webview components
...
修复 webview 组件的类型安全问题:
- App.tsx: 规范化工具调用状态为联合类型
- InProgressToolCall.tsx: 安全处理非字符串类型的 title 属性
- InputForm.tsx: 修正 RefObject 泛型类型声明
- ReadToolCall.tsx: 添加空 children 避免 ToolCallContainer 警告
2025-11-24 20:38:35 +08:00
yiliang114
b7f9acf0ff
refactor(vscode-ide-companion): migrate session save to CLI /chat save command
...
- Replace manual checkpoint file writing with CLI's native /chat save command
- Add saveCheckpointViaCommand method to use CLI's built-in save functionality
- Deprecate saveSessionViaAcp as CLI doesn't support session/save ACP method
- Update saveCheckpoint to delegate to CLI command for complete context preservation
- Enhanced error logging in acpSessionManager session load
- Mark saveSessionViaAcp as deprecated with fallback to command-based save
- Fix ESLint errors: remove unused imports and catch variables, wrap case block declarations
This ensures checkpoints are saved with complete session context including tool calls,
leveraging CLI's native save functionality instead of manual file operations.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-24 01:00:31 +08:00
yiliang114
4dfbdcddca
feat(vscode-ide-companion): 增强工具调用与输入表单组件功能
...
- 新增 InProgressToolCall 组件用于展示进行中的工具调用状态
- 重构 InputForm 为独立组件,提升代码可维护性
- 改进 tool_call_update 处理逻辑,支持创建缺失的初始工具调用
- 添加思考块(thought chunk)日志以便调试 AI 思维过程
- 更新样式以支持新的进行中工具调用卡片显示
- 在权限请求时自动创建对应的工具调用记录
```
2025-11-23 22:28:11 +08:00
yiliang114
de8ea0678d
feat(vscode-ide-companion): refactor message components with modular architecture
...
Refactor UI message rendering by extracting message types into dedicated components. Add ChatHeader component for better session management interface.
- Extract message components: UserMessage, AssistantMessage, ThinkingMessage, StreamingMessage, WaitingMessage
- Add ChatHeader component with session selector and action buttons
- Delete MessageContent.css and consolidate styles into App.scss
- Update Tailwind config for component styling
- Improve message rendering with proper TypeScript typing
2025-11-23 20:56:15 +08:00
yiliang114
c4bcd178a4
feat(vscode-ide-companion): implement manual login via /login command
...
BREAKING CHANGE: Login is no longer automatic when opening webview
Changes:
- Remove auto-login on webview open and restore
- Add /login slash command for manual authentication
- Add VSCode progress notification during login process
- Add warning notification when user tries to chat without login
- Implement pending message auto-retry after successful login
- Add NotLoggedInMessage component (for future use)
- Improve InfoBanner close button styling consistency
User flow:
1. Open webview - no automatic login
2. Type /login or select from completion menu to login
3. Show "Logging in to Qwen Code..." progress notification
4. After login, show success message and auto-retry pending messages
5. If user tries to chat without login, show warning with "Login Now" button
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-23 19:20:01 +08:00
yiliang114
aceb857436
refactor(vscode-ide-companion): extract InfoBanner as standalone component
...
Move info banner UI from App.tsx to dedicated component with open settings functionality.
2025-11-23 18:11:47 +08:00
yiliang114
ce07fb2b3f
feat(session): 实现会话保存和加载功能
...
- 在 AcpConnection 和 AcpSessionManager 中添加会话保存方法
- 在 QwenAgentManager 中实现通过 ACP 和直接保存会话的功能
- 在前端添加保存会话对话框和相关交互逻辑
- 新增 QwenSessionManager 用于直接操作文件系统保存和加载会话
2025-11-21 23:51:48 +08:00
yiliang114
99f93b457c
feat(vscode-ide-companion): 更新主应用界面和消息处理
...
- 重构 App.tsx,集成新增的 UI 组件
- 增强 MessageHandler,支持更多消息类型处理
- 优化 FileOperations,改进文件操作逻辑
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:53:46 +08:00
yiliang114
9ba99177b9
refactor(vscode-ide-companion): 重构主动完成和会话管理
...
- 移除了 QwenAgentManager 中的冗余类型导出
- 优化了 App 组件中的会话管理和标题更新逻辑
- 改进了消息输入框的中文输入法支持
- 调整了活动文件指示器的样式
2025-11-20 23:50:41 +08:00
yiliang114
7d2411e72f
feat(vscode-ide-companion): 优化 Qwen Code 聊天窗口创建逻辑
...
- 修改 createPanel 方法返回值类型,使其支持异步操作
- 实现聚焦当前激活编辑器的功能
- 优化多窗口创建逻辑,允许在已有 Qwen Code 窗口旁边创建新窗口
- 移除自动锁定编辑器组的功能,以支持多个 Qwen Code 标签页
- 在 UI 中添加聚焦当前文件的按钮
2025-11-20 23:41:41 +08:00
yiliang114
5a9f5e3432
fix(vscode-ide-companion): 修复新建会话按钮,在同一 view column 创建新 tab
...
问题:
- 之前的实现会复用现有 panel 并清空当前会话
- 期望行为是在同一 view column(不创建分屏)中创建新的 VS Code tab
解决方案:
1. 修改 qwenCode.openNewChatTab 命令
- 总是创建新的 WebviewProvider 和 WebviewPanel
- PanelManager 的 findExistingQwenCodeViewColumn() 确保在同一 column 打开
2. 修改 MessageHandler 中的 openNewChatTab 处理
- 调用 VS Code 命令创建新 panel/tab
3. 移除不再需要的 createNewSession 方法
效果:
- 点击新建会话按钮会在同一 view column 中创建新的 VS Code tab
- 类似 Claude Code 的交互方式
- 不会创建新的分屏
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-20 23:14:40 +08:00
yiliang114
6286b8b6e8
feat(vscode-ide-companion): 增加代码编辑功能和文件操作支持
...
- 实现了与 Claude Code 类似的代码编辑功能
- 添加了文件打开、保存等操作的支持
- 优化了消息显示,增加了代码高亮和文件路径点击功能
- 改进了用户界面,增加了编辑模式切换和思考模式功能
2025-11-20 01:04:11 +08:00
yiliang114
e81255e589
feat(vscode-ide-companion): 优化权限请求组件并添加错误处理功能
...
- 移动权限请求组件到抽屉中,优化用户体验
- 为权限选项添加编号,提高可识别性
- 实现错误对象的特殊处理,提取更有意义的错误信息
- 优化工具调用错误内容的展示,提高错误信息的可读性
2025-11-20 00:01:18 +08:00
yiliang114
018990b7f6
build(vscode-ide-companion): 添加 SCSS 支持
...
- 在 esbuild.js 中添加 SCSS 文件处理逻辑
- 在 package.json 中添加 sass 依赖
- 新增代码使用 sass 编译 SCSS 文件,并将其注入到页面中
2025-11-19 23:34:05 +08:00
yiliang114
454cbfdde4
refactor(webview): 重构工具调用显示逻辑
...
- 新增多个工具调用组件,分别处理不同类型的工具调用
- 优化工具调用卡片的样式和布局
- 添加加载状态和随机加载消息
- 重构 App 组件,支持新的工具调用显示逻辑
2025-11-19 15:42:35 +08:00
yiliang114
04dfad7ab5
docs(implementation): 更新实现总结文档
2025-11-19 13:50:52 +08:00
yiliang114
e02866d06f
refactor(vscode-ide-companion): 重构代码并更新文件命名
...
- 更新文件命名规则,使用小写字母和下划线
- 修复部分代码导入路径
- 删除未使用的 WEBVIEW_PIN_FEATURE.md 文件
2025-11-19 10:40:16 +08:00
yiliang114
754ae30939
refactor(vscode-ide-companion): 重构 WebViewProvider 初始化逻辑
...
- 抽离初始化代理连接逻辑到单独的方法中
- 优化面板恢复时的代理连接流程
- 移除 EmptyState 组件中的信息横幅
- 在 App 组件中添加可关闭的信息横幅
- 调整输入表单样式,移除冗余样式
2025-11-19 00:40:48 +08:00
yiliang114
0577fe6f36
refactor(vscode-ide-companion): 重构 WebViewProvider 初始化逻辑
...
- 抽离初始化代理连接逻辑到单独的方法中
- 优化面板恢复时的代理连接流程
- 移除 EmptyState 组件中的信息横幅
- 在 App 组件中添加可关闭的信息横幅
- 调整输入表单样式,移除冗余样式
2025-11-19 00:34:45 +08:00
yiliang114
732220e651
wip(vscode-ide-companion): 实现 quick win 功能
...
- 将 WebView 调整到编辑器右侧
- 添加 ChatHeader 组件,实现会话下拉菜单
- 替换模态框为紧凑型下拉菜单
- 更新会话切换逻辑,显示当前标题
- 清理旧的会话选择器样式
基于 Claude Code v2.0.43 UI 分析实现。
2025-11-19 00:16:45 +08:00
yiliang114
f8db157a5d
Merge branch 'feat/jinjing/qwen-code-vscode-extension-init' into feat/jinjing/write-and-read-file-in-vscode
2025-11-18 19:13:11 +08:00
yiliang114
f827aadd76
Revert "refactor(vscode-ide-companion): 文件版权头 Copyright 2025 Google LLC"
...
This reverts commit 91af599823 .
2025-11-18 19:10:07 +08:00
yiliang114
91af599823
refactor(vscode-ide-companion): 文件版权头 Copyright 2025 Google LLC
2025-11-18 10:34:27 +08:00
yiliang114
ad8d7aae8a
refactor(vscode-ide-companion): 文件版权头 Copyright 2025 Google LLC
2025-11-18 10:33:40 +08:00
yiliang114
28892996b3
feat(vscode): 重构 Qwen 交互模型并优化权限请求 UI
...
- 重构 QwenAgentManager 类,支持处理多种类型的消息更新
- 改进权限请求界面,增加详细信息展示和选项选择功能
- 新增工具调用卡片组件,用于展示工具调用相关信息
- 优化消息流处理逻辑,支持不同类型的内容块
- 调整会话切换和新会话创建的处理方式
2025-11-18 01:00:25 +08:00
yiliang114
eeeb1d490a
feat(vscode-ide-companion): 实现自定义权限请求 UI 并添加文件读写功能
...
- 新增 fs/read_text_file 和 fs/write_text_file 方法处理
- 实现精美的 Claude 风格权限请求 UI
- 优化权限请求处理逻辑,支持取消操作
- 添加日志输出以便调试
2025-11-17 21:44:39 +08:00
yiliang114
dc40995e70
feat(vscode-ide-companion): import chat chat customEditor to vscode extension folder
2025-11-17 18:53:00 +08:00