diff --git a/CHANGELOG.md b/CHANGELOG.md index b2c93f6..2a801b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/). +## [Unreleased] + +### Added + +- Add quoted-message context pipeline for QQ `REFIDX_*`: parse quote indices from inbound events, cache inbound/outbound message summaries, and inject quote body into agent context. +- Add persistent quote index store (`~/.openclaw/qqbot/data/ref-index.jsonl`) with in-memory cache + JSONL append, restart recovery, 7-day TTL eviction, and compact. +- Add structured quote attachment summaries (image/voice/video/file, local path/url, voice transcript source) for better reply grounding. + +### Improved + +- Bot replies now attach quote reference to the user's current message when available, improving threaded conversation readability in QQ. + ## [1.5.6] - 2026-03-10 ### Added diff --git a/CHANGELOG.zh.md b/CHANGELOG.zh.md index 29dcade..3c1ccc0 100644 --- a/CHANGELOG.zh.md +++ b/CHANGELOG.zh.md @@ -4,6 +4,18 @@ 格式参考 [Keep a Changelog](https://keepachangelog.com/)。 +## [Unreleased] + +### 新增 + +- 新增 QQ `REFIDX_*` 引用消息上下文链路:从入站事件解析引用索引,缓存入站/出站消息摘要,并将引用内容注入 agent 上下文。 +- 新增引用索引持久化存储(`~/.openclaw/qqbot/data/ref-index.jsonl`):采用内存缓存 + JSONL 追加写,支持重启恢复、7 天 TTL 淘汰与 compact 压缩。 +- 新增结构化引用附件摘要(图片/语音/视频/文件、local path/url、语音转录来源),提升引用回复语义完整性。 + +### 改进 + +- 机器人回复在可用时自动挂载对当前用户消息的引用,提升 QQ 会话串联可读性。 + ## [1.5.6] - 2026-03-10 ### 新增 diff --git a/README.md b/README.md index 9c5662f..6243573 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ Scan to join the QQ group chat | 🔄 **Hot Reload** | Install via npm with seamless hot updates | | 📝 **Markdown** | Full Markdown formatting support | | 🛠️ **Commands** | Native OpenClaw command integration | +| 💬 **Quoted Context** | Resolve QQ `REFIDX_*` quoted messages and inject quote body into AI context | --- @@ -47,6 +48,14 @@ Scan to join the QQ group chat > **Note:** This plugin serves as a **message channel** only — it relays messages between QQ and OpenClaw. Capabilities like image understanding, voice transcription, drawing, etc. depend on the **AI model** you configure and the **skills** installed in OpenClaw, not on this plugin itself. +### 💬 Quoted Message Context (REFIDX) + +QQ quote events carry index keys (e.g. `REFIDX_xxx`) instead of full original message body. The plugin now resolves these indices from a local persistent store and injects quote context into AI input, so replies better understand “which message is being quoted”. + +- Inbound and outbound messages with `ref_idx` are automatically indexed. +- Store path: `~/.openclaw/qqbot/data/ref-index.jsonl` (survives gateway restart). +- Quote body may include text + media summary (image/voice/video/file). + ### 🎙️ Voice Messages (STT) With STT configured, the plugin automatically transcribes voice messages to text before passing them to AI. The whole process is transparent to the user — sending voice feels as natural as sending text. diff --git a/README.zh.md b/README.zh.md index 7bd12bf..fd9e248 100644 --- a/README.zh.md +++ b/README.zh.md @@ -37,6 +37,7 @@ | 🔄 **热更新** | 支持 npm 方式安装和无缝热更新 | | 📝 **Markdown** | 完整支持 Markdown 格式消息 | | 🛠️ **原生命令** | 支持 OpenClaw 原生命令 | +| 💬 **引用上下文** | 解析 QQ `REFIDX_*` 引用消息,并将引用内容注入 AI 上下文 | --- @@ -44,6 +45,14 @@ > **说明:** 本插件仅作为**消息通道**,负责在 QQ 和 OpenClaw 之间传递消息。图片理解、语音转录、AI 画图等能力取决于你配置的 **AI 模型**以及在 OpenClaw 中安装的 **skill**,而非插件本身提供。 +### 💬 引用消息上下文(REFIDX) + +QQ 的引用事件通常只携带索引键(如 `REFIDX_xxx`),不直接返回原始消息全文。插件已支持从本地持久化索引中解析引用内容,并注入 AI 上下文,帮助模型更准确理解“用户引用的是哪条消息”。 + +- 入站/出站消息中的 `ref_idx` 会自动建立索引。 +- 存储位置:`~/.openclaw/qqbot/data/ref-index.jsonl`(网关重启后仍可恢复)。 +- 引用内容支持文本 + 媒体摘要(图片/语音/视频/文件)。 + ### 🎙️ 语音消息(STT) 配置 STT 后,插件会自动将语音转录为文字再交给 AI 处理。整个过程对用户完全透明——发语音就像发文字一样自然,AI 听得懂你在说什么。