Claude
Skills
Sign in
Back

streaming

Included with Lifetime
$97 forever

Response streaming configuration and real-time output

General

What this skill does


# Streaming - Complete API Reference

Configure response streaming, typing indicators, and real-time message delivery.

---

## Chat Commands

### View Settings

```
/streaming                                  Show current settings
/streaming status                           Streaming status
```

### Configure Streaming

```
/streaming enable                           Enable streaming
/streaming disable                          Disable streaming
/streaming chunk-size 50                    Set chunk size (chars)
/streaming delay 100                        Set delay between chunks (ms)
```

### Typing Indicators

```
/streaming typing on                        Enable typing indicators
/streaming typing off                       Disable typing indicators
/streaming typing duration 3000             Typing duration (ms)
```

### Platform Settings

```
/streaming platforms                        Show platform limits
/streaming platform telegram chunk 100      Set per-platform
```

---

## TypeScript API Reference

### Create Streaming Config

```typescript
import { createStreamingConfig } from 'clodds/streaming';

const streaming = createStreamingConfig({
  // Enable streaming
  enabled: true,

  // Chunk settings
  minChunkSize: 20,    // Min chars per chunk
  maxChunkSize: 200,   // Max chars per chunk
  chunkDelayMs: 50,    // Delay between chunks

  // Typing indicators
  showTyping: true,
  typingDurationMs: 3000,

  // Platform-specific limits
  platformLimits: {
    telegram: { maxMessageLength: 4096, maxChunkSize: 100 },
    discord: { maxMessageLength: 2000, maxChunkSize: 150 },
    slack: { maxMessageLength: 40000, maxChunkSize: 200 },
  },
});
```

### Enable/Disable

```typescript
// Enable streaming
streaming.enable();

// Disable streaming
streaming.disable();

// Check status
const enabled = streaming.isEnabled();
```

### Configure Chunks

```typescript
// Set chunk size
streaming.setChunkSize(100);

// Set delay
streaming.setChunkDelay(75);

// Get current settings
const settings = streaming.getSettings();
console.log(`Chunk size: ${settings.chunkSize}`);
console.log(`Delay: ${settings.chunkDelayMs}ms`);
```

### Platform Settings

```typescript
// Set platform-specific limit
streaming.setPlatformLimit('telegram', {
  maxMessageLength: 4096,
  maxChunkSize: 80,
});

// Get platform limits
const limits = streaming.getPlatformLimits();
```

### Typing Indicators

```typescript
// Enable typing
streaming.enableTyping();

// Disable typing
streaming.disableTyping();

// Set duration
streaming.setTypingDuration(5000);
```

---

## Platform Limits

| Platform | Max Message | Recommended Chunk |
|----------|-------------|-------------------|
| Telegram | 4,096 chars | 80-100 |
| Discord | 2,000 chars | 100-150 |
| Slack | 40,000 chars | 150-200 |
| WhatsApp | 65,536 chars | 100-150 |
| WebChat | Unlimited | 150-200 |

---

## Best Practices

1. **Smaller chunks for mobile** — Better UX on slow connections
2. **Adjust delay for readability** — 50-100ms feels natural
3. **Disable for short responses** — Don't stream "OK"
4. **Monitor performance** — Streaming adds overhead
Files: 2
Size: 8.5 KB
Complexity: 17/100
Category: General

Related in General