streaming
Response streaming configuration and real-time output
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
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.