Files
plugin-comment-ai-autopilot/docs/guide/auto-reply.md
T
sunny-335 c3e003a572 feat: streamline dashboard, fix docs, optimize UI width
- Remove AI角色 quick action, keep only 回复日志/插件设置/刷新数据
- Fix LogsView filter/batch bar width to match content area (mx-4 mt-2 -> m-4 mb-0)
- Fix docs: Halo version 2.23->2.25, GitHub link nxxy335->sunny-335, Cravatar link, variable name {{conversation}}->{{conversation_history}}
- Add missing settings docs (maxConversationRounds, rateLimitPerMinute, enabledPresets)
- Update README: remove version display, update changelog
- Update version to 1.0.0-beta.2-r8k4n2
2026-06-17 22:03:35 +08:00

1.8 KiB

自动回复

自动回复是插件的核心功能,当有新评论发布时,插件会自动触发AI生成回复。

工作原理

插件通过 Halo 的 Reconciler 机制监听评论和回复的创建事件:

  • CommentReconciler — 监听新评论,触发首次AI回复
  • ReplyReconciler — 监听新回复,当回复者不是AI角色时,触发对话式AI回复

去重机制

为避免重复回复,插件实现了多层去重防护:

  1. 内存锁 — 使用 ConcurrentHashMap 防止同一评论并发处理
  2. 数据库检查 — 处理前查询是否已存在 AiCommentReply 记录
  3. 发布前检查 — 创建 Reply 前再次确认不存在重复

历史评论过滤

插件启动时间之前的评论不会触发自动回复,避免安装插件后对大量历史评论批量回复。

对话式回复

当评论者回复AI的评论时,插件会自动提取对话上下文(最近5条回复),让AI的回复更连贯自然。

配置项

配置项 说明 默认值
自动回复 是否启用自动回复功能 开启
自动发布 AI回复是否自动发布,关闭则存为草稿 开启
最大对话轮次 同一评论线程中AI最多自动回复的轮次 8
速率限制 每分钟最大AI回复数量 10
最大重试次数 AI生成失败时的最大重试次数 3

重试机制

当AI生成失败(如服务不可用、生成空内容、审核不通过)时,插件会自动重试:

  1. 每次重试递增 retryCount
  2. 重试间隔采用指数退避策略:第1次等5秒,第2次等15秒,第3次等30秒
  3. 超过最大重试次数后标记为最终失败(FAIL)
  4. 重试期间记录状态为 PENDING

::: tip 重试次数由 最大重试次数 配置项控制,默认为3次。 :::