Table Component for Multi-Platform Support
Chat SDK introduces a new Table() component that provides a clean, standardized API for rendering tables across every supported platform. Developers simply pass headers and rows to the component, and the SDK automatically converts the table to each platform's native format.
import { Table } from "chat";
await thread.post(
Table({
headers: ["Model", "Latency", "Cost"],
rows: [
["claude-4.6-sonnet", "1.2s", "$0.003"],
["gpt-4.1", "0.9s", "$0.005"],
],
})
);
Platform-Specific Rendering
The adapter layer intelligently converts tables to each platform's best-supported format:
- Slack: Native Block Kit table blocks
- Teams & Discord: GitHub Flavored Markdown tables
- Google Chat: Monospace text widgets
- Telegram: Code blocks
- GitHub & Linear: Native markdown table support
Improved Streaming Markdown
Streaming markdown now converts to platform-native formatting in real-time as responses arrive, rather than waiting for message completion. Previously, users on adapters without native markdown support would see literal syntax like **bold** until the final message rendered.
With this update:
- Slack uses native streaming with immediate formatting (bold, italic, lists)
- Other platforms pass intermediate edits through the markdown-to-native conversion pipeline
- New adapters benefit from improved defaults without requiring platform-specific updates
Update to the latest Chat SDK version to access these features. See the documentation for implementation details.