Commit Graph

636 Commits

Author SHA1 Message Date
farion1231
3594a101b8 修复依赖管理:添加 pnpm-lock.yaml 到版本控制 2025-08-06 23:39:56 +08:00
farion1231
849118c3b2 修复 GitHub Actions: 使用 pnpm 替代 npm 2025-08-06 23:36:43 +08:00
farion1231
76eeae3b77 添加 GitHub Actions 自动构建和发布工作流
- 支持跨平台自动构建(Windows、macOS、Linux)
- 在创建 tag 时自动触发构建和发布
- 自动上传构建产物到 GitHub Releases
- 添加跨平台构建脚本命令
2025-08-06 23:30:34 +08:00
farion1231
b02d907c52 更新 readme 2025-08-06 23:18:09 +08:00
farion1231
f39b665f86 配置应用图标:支持 Windows NSIS 安装包正确显示图标
- 添加跨平台图标配置(Windows .ico、macOS .icns、Linux .png)
- 配置 Windows 双重构建目标:NSIS 安装程序 + Portable 版本
- 解决 Windows 下 exe 文件显示默认图标的问题
- NSIS 安装程序版本可正确显示自定义图标
2025-08-06 23:09:29 +08:00
farion1231
1a7c3fcec5 完善发布配置:添加图标和优化构建
- 添加应用图标文件 (icon.ico, icon.icns, icon.png)
- 配置最大压缩以减小文件体积
- 修改Windows目标为portable版本,生成单文件exe
- 排除不必要的node_modules文件
- 完善作者信息
2025-08-06 22:42:55 +08:00
farion1231
75a5e8088e 移除模态框点击外部关闭功能,防止误触关闭
- 移除 AddProviderModal 的点击遮罩层关闭功能
- 移除 EditProviderModal 的点击遮罩层关闭功能
- 用户现在只能通过按钮主动关闭模态框,提升用户体验
2025-08-06 21:00:49 +08:00
farion1231
588883ffc4 代码优化:清理冗余功能并修复关键问题
- 删除未使用的 axios 依赖
- 移除 Provider 接口中未使用的 model 字段
- 删除未使用的供应商连通性检查功能
- 修复 preload.ts 中缺失的 IPC 方法暴露
- 简化 UI:移除重复的单选按钮,仅保留启用按钮
- 修复 TypeScript 接口定义不完整的问题
2025-08-06 20:48:03 +08:00
farion1231
dbafab57cf 解决系统弹窗阻塞问题:实现非阻塞用户交互
- 创建自定义ConfirmDialog组件替代系统confirm
- 删除功能使用自定义确认对话框,避免界面阻塞
- 添加/编辑模态框使用内联错误提示替代alert
- 优化用户体验:更详细的确认信息和统一的视觉风格
2025-08-06 16:29:52 +08:00
farion1231
8a9ec05d33 优化UI样式:调整头部背景色和按钮焦点样式 2025-08-06 16:22:32 +08:00
farion1231
e87f206905 实现完美的浮动通知系统
- 添加自定义通知组件替代阻塞式alert
- 浮动定位不影响页面布局,宽度自适应内容
- 支持成功/错误两种样式,渐变背景+阴影效果
- 实现完整的淡入淡出动画,原地显示隐藏
- 重启提示显示4秒,普通操作反馈2-3秒
- 智能定时器管理,支持动画完成后清理

用户体验:切换供应商后优雅提示"请重启Claude Code终端以生效"
2025-08-06 16:16:09 +08:00
farion1231
6c7d4c158f 修复编辑后输入框无法选中的焦点管理问题
- 移除阻塞式alert调用,避免焦点管理冲突
- 清理不必要的CSS z-index层级设置
- 优化EditProviderModal的useEffect依赖管理
- 改用console日志记录操作结果

问题原因:alert()强制抢夺焦点,在模态框关闭时打断正常焦点流转
2025-08-06 15:20:08 +08:00
farion1231
41a6bda4ab 修复编辑供应商配置同步问题
- 修复当编辑当前激活供应商时,Claude Code配置文件未同步更新的问题
- 在updateProvider中增加逻辑检测是否为当前激活供应商
- 如果是当前激活供应商,同时调用switchProvider更新~/.claude/settings.json
- 确保编辑后的配置能立即生效,无需重新切换供应商
2025-08-06 11:50:13 +08:00
farion1231
208987107e 修复URL推测功能:支持不完整URL输入并保持验证
- 修复inferWebsiteUrl函数,支持无协议URL的推测
- 在API地址失焦时自动补全https://协议
- 同时更新API地址和网站地址字段
- 保持URL输入验证,确保API地址有效性
- 提升用户体验:用户可输入api.example.com等简化格式
2025-08-06 11:42:58 +08:00
farion1231
71a8fd166f 增强供应商配置:添加网站地址字段和智能推测功能
- 添加websiteUrl可选字段到Provider类型
- 实现API地址到网站地址的自动推测逻辑(去除api.前缀)
- 在添加/编辑供应商表单中增加网站地址字段
- 供应商列表智能显示:有网址显示可点击链接,无网址显示API地址
- 提升用户体验:避免点击API端点地址导致的错误页面
2025-08-06 10:09:58 +08:00
farion1231
4540ad613f 添加供应商URL可点击功能:支持在默认浏览器中打开链接 2025-08-06 09:56:27 +08:00
farion1231
b83652a162 修复fetch API超时实现:使用AbortController替换不支持的timeout参数
- 替换fetch中的timeout选项为AbortController + setTimeout实现
- 修复TypeScript编译错误:timeout不存在于RequestInit类型中
- 添加proper超时清理逻辑避免内存泄漏
- 更新CLAUDE.md文档:统一使用pnpm命令,补充IPC接口说明
2025-08-06 08:08:27 +08:00
farion1231
3bd65c2acb 简化过度设计,恢复原生弹窗
- 删除 ConfirmModal 和 MessageModal 组件
- 恢复原生 alert() 和 confirm() 弹窗
- 移除不必要的加载状态指示器
- 移除切换供应商的确认对话框
- 简化代码,提升响应速度和用户体验
2025-08-06 07:59:11 +08:00
farion1231
caa289bd7d 升级 Electron 到最新稳定版本
- 更新 Electron 从 28.0.0 到 32.2.5
- 提升安全性和性能
- 获得最新功能和bug修复
2025-08-06 07:49:45 +08:00
farion1231
c867cfdb32 添加加载状态指示器
- 在切换供应商时显示加载状态
- 禁用操作按钮防止重复提交
- 提供视觉反馈改善用户体验
2025-08-06 07:46:59 +08:00
farion1231
558103171e 添加切换供应商的确认对话框
- 切换供应商前显示确认对话框
- 防止误操作导致的意外切换
- 提升用户操作安全性
2025-08-06 07:45:54 +08:00
farion1231
779e24ee49 改进 ID 生成方式避免冲突
- 使用时间戳+随机字符串组合生成唯一ID
- 避免快速连击导致的ID冲突问题
- 提升数据一致性和稳定性
2025-08-06 07:45:18 +08:00
farion1231
48dcb23ea5 用 Modal 组件替换所有 alert 弹窗
- 创建 ConfirmModal 和 MessageModal 组件
- 更新 App.tsx 使用新的 Modal 组件
- 改进表单验证错误显示
- 提升用户体验和界面一致性
2025-08-06 07:44:50 +08:00
farion1231
e613696e08 修复 any 类型为具体的接口定义
- 定义 ClaudeCodeConfig 接口替代 any 类型
- 提升类型安全性和代码可维护性
- 明确配置文件结构
2025-08-06 07:42:57 +08:00
farion1231
135b634581 移除调试用的 console.log 语句
- 清理 EditProviderModal.tsx 中的调试日志
- 保留必要的错误日志输出
- 提升代码整洁度
2025-08-06 07:42:22 +08:00
farion1231
ea2a86fe30 修复缺失的 checkStatus IPC处理器
- 添加 checkStatus IPC handler 到主进程
- 实现基础的 API 连通性检查
- 修复 preload API 与主进程不匹配的问题
2025-08-06 07:41:43 +08:00
farion1231
ca5035696f 移除状态检测功能,专注核心切换功能
- 删除 checkProviderStatus 函数和相关 IPC 处理
- 移除 App.tsx 中所有状态检测相关的状态和函数
- 简化 ProviderList.tsx,去除状态显示和检查按钮
- 清理 types.ts 中的 ProviderStatus 类型定义
- 界面更简洁,专注于供应商切换这一核心功能
2025-08-05 23:28:47 +08:00
farion1231
671f9b34e2 修复按钮禁用逻辑:临时禁用状态检查功能
- 临时禁用"检查状态"按钮(功能开发中)
- 移除"启用"按钮对在线状态的依赖
- 修复因状态检查未完成导致所有供应商无法启用的问题
2025-08-05 22:26:49 +08:00
farion1231
3df40def1e 添加配置文件浏览选择功能
- 在主进程添加文件选择对话框,支持选择 settings.json 配置文件
- 更新类型定义和预加载脚本,添加 selectConfigFile API
- 在界面底部配置路径区域添加"浏览"按钮
- 优化样式布局,使配置路径和浏览按钮水平排列
- 修复 React 导入警告,移除未使用的 React 导入
2025-08-05 20:30:18 +08:00
farion1231
c74069ba57 重构状态检测功能:清理复杂逻辑,保留UI结构
## 主要变更
- 移除所有Claude命令调用和进程管理逻辑
- 简化检测函数,暂时返回"功能开发中"状态
- 添加单独检查状态按钮和相关UI交互
- 保留完整的供应商管理功能(添加、编辑、删除、切换)

## 技术优化
- 删除复杂的超时机制、进程监听、错误处理
- 移除axios依赖和HTTP请求相关代码
- 清理竞态条件和队列管理逻辑
- 保持清晰的UI状态管理

## UI改进
- 添加橙色主题的单独检查按钮
- 增强检查状态的视觉反馈(🔄 进度指示器)
- 保留所有状态显示逻辑等待功能重新实现
2025-08-05 20:10:51 +08:00
farion1231
687882d5c0 增强供应商状态检查功能
- 新增 Anthropic 官方状态检查,优先检查服务可用性
- 改进错误处理和状态码判断逻辑
- 增加超时时间到20秒,提高连接稳定性
- 优化错误信息显示,区分认证错误和服务不可用
- 使用最新的 claude-sonnet-4 模型进行测试
2025-08-05 15:11:46 +08:00
farion1231
c5720fa411 移除自动状态检查,改为手动检查模式
- 删除定时检查逻辑,避免不必要的 token 消耗
- 按钮文本从"刷新状态"改为"检查状态"
- 现在只能手动触发状态检查
2025-08-05 15:10:44 +08:00
farion1231
4cc085d5e4 添加项目开发指南文档 2025-08-05 14:50:05 +08:00
farion1231
7ffd03e039 添加供应商编辑功能和密码显示切换
- 为供应商列表添加启用和编辑按钮
- 创建EditProviderModal组件支持编辑供应商信息
- 实现updateProvider API接口
- 为API Key输入框添加密码显示/隐藏功能,使用SVG图标
- 更新预设供应商配置为YesCode和PackyCode
- 移除model字段,简化供应商配置
2025-08-05 09:51:41 +08:00
farion1231
35cb750d19 修复 Electron 应用窗口不显示的问题
- 修正 Electron 依赖版本为 28.0.0(解决安装问题)
- 更新 package.json 中的启动脚本,改进并发命令执行
- 修正主进程入口文件路径配置
- 调整 TypeScript 编译配置的根目录设置
- 添加 Windows 开发环境启动脚本 start-dev.bat
- 更新 .gitignore 排除编译产物和锁文件

问题原因:pnpm 默认阻止了 Electron 安装脚本执行,导致应用无法正常启动
2025-08-05 09:51:21 +08:00
farion1231
e0a9c1ab4c initial commit 2025-08-04 22:16:26 +08:00