- Add language code intelligent parsing module (internal/lang) - Support --lang parameter for target language specification - Support multiple language code formats (BCP47, aliases, Chinese names) - Implement interactive onboard configuration wizard - Update Config struct with language fields - Add survey library dependency for interactive UI - Improve CLI command interface - Add comprehensive unit tests for language module - Update documentation (AGENTS.md, changelog.md, taolun.md, memory.md) Supported language codes: - Standard: zh-CN, zh-TW, en-US, en-GB, ja, ko, es, fr, de - Aliases: cn, en, jp, kr, es, fr, de - Chinese names: chinese, english, japanese Commands: - yoyo "Hello world" - basic translation - yoyo --lang=cn "Hello world" - specify target language - yoyo onboard - start configuration wizard - yoyo onboard --force - force reconfiguration Version: 0.2.0
5.2 KiB
5.2 KiB
变更日志 (changelog.md)
本文档记录所有版本变更,包含功能、修复和讨论链接。
使用说明
- 版本号格式:
主版本.次版本.修订版本(如0.0.1) - 第三位为00-99,超过99时增加第二位
- 每个版本包含指向讨论记录的链接
未来架构想法
- 支持流式翻译输出
- 添加本地缓存减少API调用
- 实现插件系统支持自定义厂商
- 支持批量翻译文件
- 添加Web界面(可选)
待实现
- 实现硅基流动厂商
- 实现火山引擎厂商
- 实现国家超算厂商
- 实现Qwen厂商
- 实现OpenAI兼容厂商
- 配置文件热重载
- 翻译历史记录
当前正实现
- 项目基础架构搭建
- 核心类设计实现
待修复BUG
- 无
版本历史
0.2.0 (2026-03-29) - 语言支持和配置向导
类型: 功能版本
状态: 开发中
变更内容:
- ✅ 添加语言代码智能解析模块 (internal/lang)
- ✅ 支持
--lang参数指定目标语言 - ✅ 支持多种语言代码格式(标准BCP47、别名、中文名称)
- ✅ 实现 onboard 交互式配置向导
- ✅ 更新配置结构添加语言字段
- ✅ 添加 survey 库依赖用于交互式界面
- ✅ 改进CLI命令行接口
- ✅ 添加语言模块单元测试
新增文件:
internal/lang/lang.go- 语言代码解析模块internal/lang/lang_test.go- 语言模块测试internal/onboard/onboard.go- 配置向导实现
支持的语言代码:
- 标准格式: zh-CN, zh-TW, en-US, en-GB, ja, ko, es, fr, de 等
- 简短别名: cn(中文), en(英文), jp(日文), kr(韩文) 等
- 中文名称: chinese(中文), english(英文), japanese(日文) 等
使用示例:
# 基本翻译
yoyo "Hello world"
yoyo --lang=cn "Hello world"
yoyo --lang=en "你好世界"
yoyo --lang=zh-TW "Hello world"
# 配置向导
yoyo onboard
yoyo onboard --force
讨论记录:
下一步:
- 实现更多厂商(火山引擎、国家超算、Qwen、OpenAI兼容)
- 添加配置文件路径查找机制
- 实现配置文件迁移工具
- 完善错误处理和用户体验
0.0.3 (2026-03-29) - 环境变量加载修复
类型: 修复版本
状态: 开发中
变更内容:
- ✅ 修复环境变量加载问题
- ✅ 添加godotenv依赖
- ✅ 更新memory.md记录踩坑经验
- ✅ 测试CLI基本功能
讨论记录:
下一步:
- 实现更多厂商
- 添加更多测试
- 完善错误处理
0.0.2 (2026-03-28) - 核心架构实现
类型: 功能版本
状态: 开发中
变更内容:
- ✅ 实现Config配置类(internal/config/config.go)
- ✅ 实现Provider接口和工厂模式(internal/provider/)
- ✅ 实现硅基流动厂商(internal/provider/siliconflow.go)
- ✅ 实现Translator核心翻译类(internal/translator/)
- ✅ 实现Prompt管理器(internal/translator/prompt.go)
- ✅ 创建CLI入口点(cmd/yoyo/main.go)
- ✅ 添加配置文件模板(configs/config.yaml)
- ✅ 添加单元测试(internal/config/config_test.go)
- ✅ 初始化Git仓库和版本标签
讨论记录:
下一步:
- 实现其他厂商(火山引擎、国家超算、Qwen、OpenAI兼容)
- 添加更多测试
- 实现批量翻译功能
- 添加翻译历史记录
- 实现配置文件热重载
0.0.1 (2026-03-28) - 项目初始化
类型: 初始化版本
状态: 开发中
变更内容:
- ✅ 确定技术栈为Go语言
- ✅ 设计OOP架构(Config、Provider、Translator)
- ✅ 制定开发规范(taolun.md、changelog.md、memory.md、why.md)
- ✅ 确定分支策略(main、dev)
- ✅ 设计项目结构
- ✅ 创建项目初衷文档(why.md)
讨论记录:
下一步:
- 创建项目目录结构
- 初始化Go模块
- 实现Config类
- 实现Provider接口
- 用户填写why.md内容
版本号管理规则
版本号格式
主版本.次版本.修订版本(例如:1.2.3)
更新规则
- 主版本(第一位):重大架构变更、不兼容更新
- 次版本(第二位):新功能、重要特性
- 修订版本(第三位):小修复、优化(00-99)
更新流程
- 完成开发并测试
- 更新changelog.md
- 更新taolun.md(如有讨论)
- 更新memory.md(如有新知识)
- 更新版本号
- 提交到dev分支
- 测试通过后合并到main
- 创建版本标签:
git tag v0.0.1
示例版本递增
0.0.1→0.0.2:小修复0.0.99→0.1.0:新功能(修订版本溢出)1.2.3→2.0.0:重大架构变更