yiliang114
90fc53a9df
refactor(webview): Refactoring Input Form and Timeline Components
2025-12-02 01:29:33 +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
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
6885138cf0
refactor(vscode-ide-companion): Refactoring the project structure and updating dependencies
2025-11-29 13:16:58 +08:00
yiliang114
9ae45c01a6
refactor(vscode): 重构消息排序和展示逻辑
...
- 移除旧的消息排序改进总结文档
- 重新组织消息渲染逻辑,合并所有类型的消息按时间戳排序
- 优化工具调用处理流程,添加时间戳支持
- 改进会话保存机制,直接使用SessionManager保存检查点
- 重构部分组件以提高可维护性
2025-11-28 22:35:31 +08:00
yiliang114
5ce40085d5
fix(vscode-ide-companion): 优化 CLI 检测和连接逻辑
2025-11-28 17:44:18 +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
dc340daf8b
feat(vscode-ide-companion): 0.2.4 版本ACP 协议检测和实现
...
- 新增 session/list 方法支持
- 改进 session/load 方法兼容性
- 优化代理环境变量设置
- 调整 CLI 安装流程
- 移除未使用的随机加载消息功能
2025-11-28 01:17:55 +08:00
yiliang114
8bc9bea5a1
feat(cli): 添加 CLI 版本检测和会话验证功能
...
- 新增 CLI 版本检测功能,支持检测 CLI 版本并缓存结果
- 实现会话验证方法,用于检查当前会话是否有效
- 在连接处理中集成 CLI 版本检测和会话验证逻辑
- 优化 WebViewProvider 中的初始化流程,支持背景初始化
- 更新消息处理逻辑,增加与 CLI 相关的错误处理
2025-11-28 01:13:57 +08:00
yiliang114
b986692f94
feat(auth): 优化认证流程并添加认证状态管理
...
- 新增 AuthStateManager 类用于管理认证状态
- 修改 createNewSession 方法以使用缓存的认证信息
- 添加清除认证缓存的功能
- 优化登录命令处理,增加加载状态显示
- 新增登录成功和失败的消息处理
2025-11-28 01:06:36 +08:00
yiliang114
4f63d92bb1
Add unit tests for CLI modules and fix ESLint issues
...
- Add comprehensive unit tests for all CLI-related modules:
- CliContextManager
- CliVersionManager
- cliDetector
- CliInstaller
- Fix ESLint issues by replacing @ts-ignore with @ts-expect-error
- Fix any type issues in test files
- Add tests for diff-manager functionality
- Improve loading messages random selection stability
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-28 01:06:21 +08:00
yiliang114
3c09ad46ca
refactor(vscode-ide-companion): translate Chinese comments to English
...
- Translate all Chinese comments in TypeScript files to English for better code readability
- Update documentation comments to be in English
- Maintain code functionality while improving internationalization
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-28 01:01:47 +08:00
yiliang114
d5ede56e62
Revert "fix(vscode-ide-companion): 解决 mac 环境多个 node 版本的安装问题"
...
This reverts commit 530039c517 .
2025-11-28 00:57:33 +08:00
yiliang114
530039c517
fix(vscode-ide-companion): 解决 mac 环境多个 node 版本的安装问题
2025-11-25 20:24:26 +08:00
yiliang114
0cbf95d6b3
chore(vscode-ide-companion): update dependencies in package-lock.json
...
Added new dependencies including:
- @cfworker/json-schema
- @parcel/watcher and related platform-specific packages
- autoprefixer
- browserslist
- chokidar
- Various other utility packages
These updates likely support enhanced functionality and improved compatibility.
2025-11-25 15:30:36 +08:00
yiliang114
934365c41f
style(vscode-ide-companion): improve UI styling for chat components
2025-11-25 13:39:49 +08:00
yiliang114
f623bfbb34
chore(vscode-ide-companion): add qwen-code dependency to package files
2025-11-25 13:39:07 +08:00
yiliang114
f503eb2520
feat(vscode-ide-companion): split module & notes in english
2025-11-25 00:32:51 +08:00
yiliang114
a1ec1227cc
refactor(vscode-ide-companion): reorganize component structure
...
重构组件结构,优化目录组织:
- 将 ChatHeader 从 ui/ 移动到 layouts/ 目录
- 删除未使用的 Button 和 Card 组件
- 更新 tailwind.config.js 扫描路径为 layouts/
- 简化组件目录结构,提高可维护性
2025-11-24 20:38:36 +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
4f964b5281
refactor(vscode-ide-companion): extract AssistantMessage as standalone component with Claude Code styles
...
- Extract AssistantMessage component from inline implementation
- Add status prop support (default, success, error, warning, loading)
- Implement bullet point indicator using CSS pseudo-elements (::before)
- Use inline styles for layout to prevent Tailwind override
- Add AssistantMessage.css with pseudo-element styles for different states
- Import AssistantMessage.css in ClaudeCodeStyles.css
Restores Claude Code DOM structure and styling:
- Outer container with padding-left: 30px for bullet spacing
- Bullet point colors based on status (green, red, yellow, gray)
- Loading state with pulse animation
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-23 21:44:40 +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
8ac38aad92
chore(vscode-ide-companion): tailwind base
2025-11-23 17:33:10 +08:00
yiliang114
9899d872a2
feat(vscode-ide-companion): add Tailwind CSS demo components
...
添加 Tailwind CSS 示例组件和重构的 PermissionDrawer:
- TailwindDemo: 展示 Tailwind CSS 基础用法
- PermissionDrawer.tailwind: 使用 Tailwind CSS 重构的权限抽屉组件
2025-11-23 16:41:09 +08:00
yiliang114
36a96a7b5c
feat(vscode-ide-companion): add shadcn/ui components and utilities
...
添加 shadcn/ui 基础组件库和 cn 工具函数,包括:
- Button 按钮组件
- Dialog 对话框组件
- cn 类名合并工具函数
2025-11-23 16:40:55 +08:00
yiliang114
39adaaff11
refactor(vscode-ide-companion): minor adjustments to SaveSessionDialog and SessionManager components
2025-11-23 15:17:40 +08:00
yiliang114
fd2e5b0933
feat(vscode-ide-companion): improve PermissionDrawer UI with enhanced styling and responsiveness
2025-11-23 15:17:17 +08:00
yiliang114
ce07fb2b3f
feat(session): 实现会话保存和加载功能
...
- 在 AcpConnection 和 AcpSessionManager 中添加会话保存方法
- 在 QwenAgentManager 中实现通过 ACP 和直接保存会话的功能
- 在前端添加保存会话对话框和相关交互逻辑
- 新增 QwenSessionManager 用于直接操作文件系统保存和加载会话
2025-11-21 23:51:48 +08:00
yiliang114
ecc6e22002
feat(vscode-ide-companion): 更新 UI 样式
...
- 重构 PlanDisplay 组件和样式
- 更新 PermissionRequest 组件逻辑
- 增强 PermissionDrawer 样式,提升视觉体验
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:54:03 +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
748ad8f4dd
refactor(vscode-ide-companion): 重构工具调用组件
...
- 重构 ExecuteToolCall、GenericToolCall、ReadToolCall 等组件
- 统一工具调用组件的展示样式和交互逻辑
- 优化代码结构,提高可维护性
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:53:25 +08:00
yiliang114
a33187ed7a
feat(vscode-ide-companion): 新增时间线组件
...
- 新增 Timeline 组件用于显示会话历史
- 支持展示消息、工具调用等事件
- 提供清晰的时间轴视图
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:53:05 +08:00
yiliang114
088c766c22
feat(vscode-ide-companion): 新增自动完成功能
...
- 新增 CompletionMenu 组件支持 @ 和 / 触发补全
- 新增 useCompletionTrigger hook 处理补全触发逻辑
- 支持实时查询和过滤补全项
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:52:47 +08:00
yiliang114
b82ef5b73f
feat(vscode-ide-companion): 新增上下文附件管理功能
...
- 新增 ContextAttachmentManager 管理上下文附件
- 新增 ContextPills 组件用于显示上下文标签
- 支持文件、符号、选区等多种上下文类型
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:52:29 +08:00
yiliang114
328924f578
feat(vscode-ide-companion): 新增 DiffDisplay 组件和 diff 统计工具
...
- 增强 DiffDisplay 组件,支持更丰富的差异展示
- 新增 diffStats.ts 工具,提供差异统计功能
- 新增样式文件 DiffDisplay.css
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:52:10 +08:00
yiliang114
1eedd36542
feat(vscode-ide-companion): 新增共享 UI 组件 FileLink
...
- 新增 FileLink 组件用于显示文件链接
- 更新 LayoutComponents 增加通用布局组件
- 新增 utils.ts 提供工具函数
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-21 01:51:50 +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
95b67bbebd
fix(vscode-ide-companion): 修复新建会话按钮创建新分屏的问题
...
问题:
- 点击新建会话按钮时,会在 VS Code 中创建一个新的 webview panel(分屏)
- 期望行为是在同一个 panel 内创建新会话,类似 Claude Code 的交互方式
解决方案:
1. 修改 extension.ts 中的 openNewChatTab 命令
- 检查是否已有 webview panel 打开
- 如果有,则在现有 panel 中创建新会话
- 如果没有,才创建新 panel
2. 在 WebViewProvider 中添加 createNewSession 方法
- 通过 agentManager 创建新会话
- 清空当前对话 UI
3. 修改 MessageHandler 中的 openNewChatTab 处理
- 直接调用 handleNewQwenSession 创建新会话
- 不再执行 VS Code 命令创建新 panel
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-20 23:07:56 +08:00
yiliang114
06a8580361
refactor(vscode-ide-companion): 重构 WebViewProvider 组件
2025-11-20 11:37:28 +08:00