返回顶部
m

message-split消息自动拆分

长消息自动拆分 skill。当回复内容超过渠道限制时,自动将消息拆分为多条有序发送,避免截断或丢消息。Auto-split long messages into smaller chunks before sending, with sequence markers.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
108
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

message-split

消息拆分技能

问题

许多消息渠道(飞书、Telegram 等)都有单条消息的字符数限制(飞书约4000字符)。当回复内容超出此限制时,消息要么被截断,要么静默失败,用户无法获得任何反馈。

解决方案

在发送任何消息前,先检查其长度,必要时进行拆分。

使用方法

python
def sendlongmessage(text, channel={active_channel}):

发送消息,若超出长度限制则拆分为多个片段。

参数:
text: 待发送的消息文本
channel: 目标渠道(feishu/telegram/discord/whatsapp/signal/imessage/openclaw-weixin)

返回:
发送的片段数量

MAX_LEN = 3600 # 飞书限制,预留余量
CHUNK_HEADER = [{i}/{total}]\n

if len(text) <= MAX_LEN:
message(action=send, channel=channel, message=text)
return 1

chunks = splittext(text, MAXLEN)
total = len(chunks)

for i, chunk in enumerate(chunks, 1):
header = f[{i}/{total}]\n if total > 1 else
message(action=send, channel=channel, message=header + chunk)

return total

def splittext(text, maxlen):

将文本拆分为最多 max_len 字符的片段。
优先在句子边界或换行处拆分,以保持可读性。

import re

# 首先尝试在句末标点处拆分
sentence_split = re.split(r(?<=[。!?.!?])\s+, text)

chunks = []
current =

for sentence in sentence_split:
if len(current) + len(sentence) + 1 <= max_len:
current += ( + sentence if current else sentence)
else:
if current:
chunks.append(current)
# 如果单个句子超出限制,则按词/字符拆分
if len(sentence) > max_len:
for i in range(0, len(sentence), max_len - 100):
chunks.append(sentence[i:i + max_len - 100])
current =
else:
current = sentence

if current:
chunks.append(current)

return chunks

渠道限制参考

渠道最大字符数(约)备注
飞书4000硬性限制
Telegram
4096 | | | Discord | 2000 | 嵌入限制6000 | | WhatsApp | 65000 | 但转发的消息会被截断 | | Signal | 700 | 非常低 | | iMessage | ~4000 | 通过macOS中继 |

注意事项

  • - 始终使用 MAX_LEN = 3600 作为安全默认值(为头部信息预留空间)
  • 若渠道未知,默认采用飞书行为
  • 尽可能在词/句子边界处拆分,以保持可读性
  • 仅当 total > 1 时,才添加序号头部 [{i}/{total}]

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 message-split-1776027040 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 message-split-1776027040 技能

通过命令行安装

skillhub install message-split-1776027040

下载

⬇ 下载 message-split v1.0.0(免费)

文件大小: 2.05 KB | 发布时间: 2026-4-13 11:01

v1.0.0 最新 2026-4-13 11:01
Auto-split long messages to avoid Feishu/Telegram truncation. Splits on sentence boundaries with sequence markers.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部