Releases: liyown/ai-trend-publish
v1.0.8
微信文章模板
- 新增
dynamic微信文章模板,支持根据文章内容调用 AI 实时生成公众号内联 HTML。 - 新增动态模板后处理与校验,清理公众号不兼容标签和属性,并在生成失败时回退
minimal。 - 新增
longform、product、minimal、darktech四套微信文章模板。 - 优化
default、modern、tech、mianpro模板的公众号兼容性与排版层级。 - 将微信模板结构统一调整为更适合公众号编辑器的内联样式与
section标签。
配置与开发体验
- 简化模型配置,内容排序、摘要、标题和动态模板默认统一使用
LLM_*配置。 - 新增
deno task doctor配置体检命令,按启用功能检查必需配置。 - 重组
.env.example,明确最小配置、功能开关和各外部服务所需变量。 - 整理
deno task命令,新增preview、article、article:dry、check、verify等推荐入口,并保留旧命令兼容。 - 新增微信模板预览和文章 dry-run 调试模式,跳过发布并输出本地 HTML。
稳定性
- 统一清理 LLM 输出中的
<think>和 Markdown 代码围栏,覆盖排序、摘要、标题、动态模板与内容润色。 - 拆分微信文章抓取、去重、内容处理、标题、封面、渲染和 dry-run 输出逻辑,降低 workflow 主流程复杂度。
- 封面生成失败时回退默认封面,避免发布流程被阿里云生图偶发失败中断。
- 修复 workflow timeout 清理和数据库关闭逻辑,降低测试命令不退出的概率。
文档
- README 强调当前兼容的外部服务:OpenAI 兼容 LLM、DeepSeek、通义千问、阿里云百炼 / DashScope 通义万相、FireCrawl、Twitter/X、Xquik、Jina、Bark、钉钉、飞书和 MySQL。
- 更新配置文档,补充“开启哪些功能需要哪些配置”的矩阵。
- 更新模板展示文档,补充所有微信文章模板截图与
ARTICLE_TEMPLATE_TYPE可选值。
v1.0.7
微信文章模板
- 新增
longform、product、minimal、darktech四套微信文章模板。 - 优化
default、modern、tech、mianpro模板的公众号兼容性与排版层级。 - 将微信模板结构统一调整为更适合公众号编辑器的内联样式与
section标签。 - 更新模板预览测试,使用稳定占位图生成本地预览,避免示例图片失效。
- 更新模板展示文档,补充所有微信文章模板截图与
ARTICLE_TEMPLATE_TYPE可选值。
其他更新
- 增加 Xquik Twitter scraper fallback。
- 更新 README 与项目文档链接。
- 修复 release 构建兼容性,适配 Firecrawl 新版 SDK 和 Deno Blob 类型检查。
[1.0.6] - Deno配置优化与核心架构升级
Release Note - 2025年3月16日
主要更新: Deno配置优化与核心架构升级
🌟 核心更新
开发工具链全面升级
- Deno配置
✓ 使用-A统一权限标识简化任务命令
✓ 同步更新关键依赖项(drizzle-kit, drizzle-orm, mysql2)
工作流架构重构
- 🛠️ 工作流引擎2.0
✓ 全链路结构化事件追踪机制
✓ 强化错误边界处理与自动回滚能力
✓ 采用新一代日志框架(@zilla/logger)
✓ 建立毫秒级性能指标监控体系
代码质量管理
- 🧹 技术债务清理
✓ 移除遗留SQL配置及数据源文件
✓ 废弃接口迁移计划落地完成
🐞 重点修复
协同开发优化
- PR #31 关键合并
✓ 修复模块路径映射异常(chenyuli 提交)
✓ 钉钉通知系统对接标准化改造
🎨 体验升级
文档系统
- 知识库上线
✓ 移动端响应式导航系统
✓ 统一视觉规范 + one-dark-pro代码高亮主题
✓ 动态文档目录架构自动生成
⚙️ 开发者支持
基础设施增强
- 构建系统升级
✓ 新增Markdown文档流水线(@sapling/markdown)
✓ 钉钉Webhook调试日志增强
新手友好改进
- 📚 文档配套工程
✓ README钉钉对接详解指南
✓ 快速帮助中心直达入口
👥 贡献者致谢
特别感谢本次迭代的代码贡献者:
@liuyaowen @ChenyuLi @ironartisan-team
完整改动列表见 Commit History
[1.0.5] - 2025-03-12 迁移deno
chore: Refine Bark notification and logging in cron job initialization - Update Bark notification message to be more descriptive - Reorder console log and notification calls for better clarity - Simplify startup logging for cron job initialization
[1.0.2] - 2024-03-12 测试release
v1.0.3 Merge branch 'main' of https://github.com/liyown/trend-publish
[1.0.2] - 2024-03-11
内容排名和工作流优化
- 优化内容排名系统
- 更新内容排名提示词,调整评分权重
- 在用户提示中添加图片URL日志记录
- 改进ID解析机制,提升内容排名结果的一致性
- 增强微信工作流程
- 添加内容过滤功能
- 实现动态文章数量配置
- 增加调试日志记录
- 优化内容处理的错误处理机制
文章渲染和图片处理增强
- 改进文章模板渲染系统
- 新增
processArticleContent方法,支持段落间自动插入图片 - 更新基础模板渲染器,支持数据预处理
- 优化文章模板,移除默认文本缩进
- 重命名
ArticleTemplateRenderer为WeixinArticleTemplateRenderer
- 新增
- 微信图片处理优化
- 实现
uploadContentImage方法,支持微信图片上传 - 重构
WeixinImageProcessor,改进图片处理方法
- 实现
Twitter爬虫增强
- 增加媒体内容支持
- 添加Media和Size接口定义
- 实现推文媒体内容提取
- 支持引用推文的内容和媒体提取
- 性能优化
- 将推文获取限制从10条增加到20条
- 改进错误日志记录
- 优化配置刷新机制
配置管理
- 新增文章数量环境变量配置
- 在.env.example中添加ARTICLE_NUM配置项
- 更新README.md文档,添加相关配置说明
依赖更新
- 升级axios至1.8.2版本
- 更新npm源配置,优化包管理
- 移除husky包依赖
类型系统优化
- 重构模板类型定义
- 将
template.type.ts重命名为article.type.ts - 新增
GeneratedTemplate和WeixinTemplate接口 - 更新相关文件的导入路径
- 将
文档更新
- 更新环境变量配置说明
- 完善README文档
[1.0.1] - 2024-03-09
1、refactor: Restructure Aliyun image generation providers
Move AliWanX21ImageGenerator to new 'aliyun' subdirectory
Add new AliyunWanxPosterGenerator to image generator factory
Update import paths across multiple files
Extend ImageGeneratorType and ImageGeneratorTypeMap to support new poster generator
Modify WeixinArticleWorkflow to use new poster generator with enhanced image generation options
2、refactor: Restructure Aliyun image generation providers
Move AliWanX21ImageGenerator to new 'aliyun' subdirectory
Add new AliyunWanxPosterGenerator to image generator factory
Update import paths across multiple files
Extend ImageGeneratorType and ImageGeneratorTypeMap to support new poster generator
Modify WeixinArticleWorkflow to use new poster generator with enhanced image generation options
[1.0.0] - 2024-03-05
[1.0.0] - 2024-03-05
架构优化
-
重构LLM工厂模式,提升代码复用性和可维护性
- 实现统一的LLM提供者接口,支持多种AI服务商
- 优化模型切换机制,支持动态指定模型名称
- 增强错误处理和重试机制
-
增强模型配置灵活性
- 多模型配置支持:可在配置中为同一提供商定义多个可用模型
- 使用竖线分隔多个模型名称,例如:
DEEPSEEK_MODEL="deepseek-chat|deepseek-reasoner" - 默认使用列表中的第一个模型
- 使用竖线分隔多个模型名称,例如:
- 指定特定模型支持:可在使用LLM提供商时指定特定模型
- 使用格式:
提供商:模型名称,例如:DEEPSEEK:deepseek-reasoner - 适用于所有支持指定模型的配置项
- 使用格式:
- 多模型配置支持:可在配置中为同一提供商定义多个可用模型
-
LLM工厂类技术改进
- 重构getLLMProvider方法,支持解析
PROVIDER:model格式的配置 - 优化提供商缓存机制,使用
PROVIDER:model作为缓存键 - 添加配置字符串解析方法
- 重构getLLMProvider方法,支持解析
-
OpenAI兼容LLM类增强
- 添加多模型支持和管理
- 新增模型选择和查询方法:
setModel(model: string):设置当前使用的模型getModel():获取当前使用的模型getAvailableModels():获取所有可用模型列表
- 支持在请求时通过options指定模型
功能增强
-
优化AISummarizer模块
- 重构摘要生成接口,支持自定义语言和长度
- 增加JSON格式响应支持,提升数据处理效率
- 完善错误处理机制,提供更详细的错误信息
-
改进ContentRanker模块
- 优化内容排名算法,提升准确性
- 支持自定义排名规则和权重
- 增加批量处理能力
工具类优化
- 封装RetryUtil工具类
- 实现统一的重试机制,支持自定义重试策略
- 添加指数退避算法,优化重试间隔
- 提供详细的重试日志,便于问题排查
配置管理
- 重构环境变量配置
- 优化配置项结构,提升可维护性
- 支持多环境配置,便于开发和部署
- 完善配置文档,提供详细的配置说明
其他改进
- 优化项目目录结构,提升代码组织性
- 更新依赖包版本,修复潜在安全问题
- 完善错误处理机制,提供更友好的错误提示
- 增加单元测试覆盖率,提升代码质量
文档更新
- 更新环境变量配置文档
- 完善API接口文档
- 添加开发指南和最佳实践
依赖更新
- 升级sharp至0.33.5
- 升级mysql2至3.12.0
- 升级typeorm至0.3.20
- 升级其他依赖包到最新稳定版本
大量优化
1、添加deepseek api 2、添加余额警示
Add DeepSeek API balance check to Weixin workflow - Integrated DeepseekAPI client into WeixinWorkflow - Implemented balance check for DeepSeek API - Added console logging and Bark notification for low balance - Updated refresh method to include DeepSeek client refresh