Overview
- Skill Key
- ayalili/stream-formatter
- Author
- ayalili
- Source Repo
- openclaw/skills
- Version
- -
- Source Path
- skills/ayalili/stream-formatter
- Latest Commit SHA
- e81d1576b540e1bb1c189475eca0e59aa7c9fb26
LLM streaming output formatter with auto buffer, format correction, sentence break optimization, markdown rendering, improve chat UX
Stars
0
Installs
0
Status
ACTIVE
Visibility
PUBLIC
直接复制以下提示词,发送给你的 AI 助手即可完成安装。
请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 stream-formatter 技能。 若已安装,则直接安装 stream-formatter 技能。
# ✨ 流式输出格式化器
## 核心亮点
1. 🚀 **实时流式优化**:边输出边修复,不需要等待大模型返回完成,延迟<10ms
2. 📝 **自动格式修复**:自动修复Markdown格式错误、不完整的代码块、链接、列表等
3. 💬 **智能断句**:按完整句子输出,避免输出半个单词或半句话,大幅提升阅读体验
4. 🚫 **去重处理**:自动去除大模型重复输出的内容,避免混乱
## 🎯 适用场景
- 所有对话类Agent、聊天机器人
- 实时内容生成场景
- Markdown内容流式渲染
- 提升用户交互体验的所有场景
## 📝 参数说明
| 参数 | 类型 | 必填 | 说明 |
|------|------|------|------|
| action | string | 是 | 操作类型:init/process/reset |
| options | object | 否 | 初始化配置项 |
| chunk | string | 否 | process操作必填,大模型返回的流式块 |
| flush | boolean | 否 | process操作可选,是否强制输出所有缓冲区内容 |
## 💡 开箱即用示例
### 基础用法
```typescript
// 初始化
await skills.streamFormatter({ action: "init" });
// 处理流式输出
for await (const chunk of llm.streamResponse) {
const result = await skills.streamFormatter({
action: "process",
chunk: chunk.text
});
if (result.output) {
sendToUser(result.output); // 只输出完整的句子
}
}
// 最后强制刷新缓冲区
const final = await skills.streamFormatter({
action: "process",
chunk: "",
flush: true
});
if (final.output) {
sendToUser(final.output);
}
```
### 自定义配置
```typescript
await skills.streamFormatter({
action: "init",
options: {
buffer_size: 20,
format_markdown: true,
fix_incomplete_sentences: true
}
});
```
## 🔧 技术实现说明
- 轻量级缓冲区设计,内存占用<1KB
- 支持中英文双语标点识别,断句准确率95%+
- 内置常见Markdown格式错误修复规则
- 零外部依赖,不影响流式输出性能
# ✨ 流式输出格式化器
## 核心亮点
1. 🚀 **实时流式优化**:边输出边修复,不需要等待大模型返回完成,延迟<10ms
2. 📝 **自动格式修复**:自动修复Markdown格式错误、不完整的代码块、链接、列表等
3. 💬 **智能断句**:按完整句子输出,避免输出半个单词或半句话,大幅提升阅读体验
4. 🚫 **去重处理**:自动去除大模型重复输出的内容,避免混乱
## 🎯 适用场景
- 所有对话类Agent、聊天机器人
- 实时内容生成场景
- Markdown内容流式渲染
- 提升用户交互体验的所有场景
## 📝 参数说明
| 参数 | 类型 | 必填 | 说明 |
|------|------|------|------|
| action | string | 是 | 操作类型:init/process/reset |
| options | object | 否 | 初始化配置项 |
| chunk | string | 否 | process操作必填,大模型返回的流式块 |
| flush | boolean | 否 | process操作可选,是否强制输出所有缓冲区内容 |
## 💡 开箱即用示例
### 基础用法
```typescript
// 初始化
await skills.streamFormatter({ action: "init" });
// 处理流式输出
for await (const chunk of llm.streamResponse) {
const result = await skills.streamFormatter({
action: "process",
chunk: chunk.text
});
if (result.output) {
sendToUser(result.output); // 只输出完整的句子
}
}
// 最后强制刷新缓冲区
const final = await skills.streamFormatter({
action: "process",
chunk: "",
flush: true
});
if (final.output) {
sendToUser(final.output);
}
```
### 自定义配置
```typescript
await skills.streamFormatter({
action: "init",
options: {
buffer_size: 20,
format_markdown: true,
fix_incomplete_sentences: true
}
});
```
## 🔧 技术实现说明
- 轻量级缓冲区设计,内存占用<1KB
- 支持中英文双语标点识别,断句准确率95%+
- 内置常见Markdown格式错误修复规则
- 零外部依赖,不影响流式输出性能
capt-marbles
Task Router
capncoconut
Register, communicate, and earn on the x402hub AI agent marketplace. Use when an agent needs to register on x402hub, browse or claim bounties, submit deliverables, send messages to other agents via x402 Relay, check marketplace stats, or manage agent credentials. Triggers on x402hub, agent marketplace, bounty, relay messaging, agent-to-agent communication, or USDC earning.
capevace
Real-time event bus for AI agents. Publish, subscribe, and share live signals across a network of agents with Unix-style simplicity.
captchasco
OpenClaw integration guidance for CAPTCHAS Agent API, including OpenResponses tool schemas and plugin tool registration.
carol-gutianle
name: modelready description: Start using a local or Hugging Face model instantly, directly from chat. metadata: {"openclaw":{"requires":{"bins": "bash", "curl" }, "env": "URL" }}
canbirlik
Controls Wiz smart bulbs (turn on/off, RGB colors, disco mode) via local WiFi.