Manages Tambo threads, messages, suggestions, voice input, and image attachments. Use when working with conversations, sending messages, implementing AI suggestions, adding voice input, managing multi-thread UIs, or handling image attachments with useTamboThread, useTamboSuggestions, or useTamboVoice.
View on GitHubFebruary 5, 2026
Select agents to install to:
npx add-skill https://github.com/tambo-ai/tambo/blob/main/plugins/tambo/skills/threads/SKILL.md -a claude-code --skill threadsInstallation paths:
.claude/skills/threads/# Threads and Input
Manages conversations, suggestions, voice input, and image attachments.
## Quick Start
```tsx
const { thread, sendThreadMessage, isIdle } = useTamboThread();
await sendThreadMessage("Hello", { streamResponse: true });
```
## Thread Management
Access and manage the current thread:
```tsx
import { useTamboThread } from "@tambo-ai/react";
function Chat() {
const {
thread, // Current thread with messages
sendThreadMessage, // Send user message
isIdle, // True when not generating
generationStage, // Current stage (IDLE, STREAMING_RESPONSE, etc.)
switchCurrentThread, // Switch to different thread
inputValue, // Current input field value
setInputValue, // Update input field
} = useTamboThread();
const handleSend = async () => {
await sendThreadMessage(inputValue, { streamResponse: true });
setInputValue("");
};
return (
<div>
{thread?.messages.map((msg) => (
<div key={msg.id}>
{msg.content.map((part, i) =>
part.type === "text" ? <p key={i}>{part.text}</p> : null,
)}
{msg.renderedComponent}
</div>
))}
<input
value={inputValue}
onChange={(e) => setInputValue(e.target.value)}
/>
<button onClick={handleSend} disabled={!isIdle}>
Send
</button>
</div>
);
}
```
### Generation Stages
| Stage | Description |
| --------------------- | -------------------------------- |
| `IDLE` | Not generating |
| `CHOOSING_COMPONENT` | Selecting which component to use |
| `FETCHING_CONTEXT` | Calling registered tools |
| `HYDRATING_COMPONENT` | Generating component props |
| `STREAMING_RESPONSE` | Actively streaming |
| `COMPLETE` | Finished successfully |
| `ERROR` | Error occurred |
## Thread List
Manage multiple conversations:
```tsx
i