shadcn.io is not affiliated with official shadcn/ui
AI Assistant Chat Block for Svelte
A team messenger with an inbox and a bot named Quill that is a contact like the others: typed replies by keyword, one message it writes first, and a switch that mutes it.
Installation
Overview
Put a helper bot in the same inbox as your teammates, with this assistant chat for Svelte with Ark UI. A hairline frame with a plus mark on each corner holds a wide window of fixed height for Tandemwick, a team messenger: an inbox at the start lists three teammates and Quill, a bot with a "Bot" badge, pinned first with no presence dot, and the thread beside it uses Message and Bubble rows. Quill answers by keyword (remind me, who is on call, help) from a typed script, and it can write first: open a teammate's thread and stay three seconds and it sends one message about the invoice you asked it to remember, which raises a "New" badge in the inbox and is announced in the status line. A Switch in its thread mutes the nudge. The composer's Shine Button, the only colored control, sends what you type. On a phone the inbox is the first screen and "All chats" goes back. It's the starting point for a workplace messenger or any inbox that has a bot among its contacts.
FAQ
What stays in the page, and how do I make it real?
Everything. Quill's replies come from a short typed script, teammates answer with one typed line each, and the nudge is a single three-second timer started when you open a human thread. Nothing is sent and no model runs, as the line under the composer says. To wire it for real, send post's text to your messaging service where the code says so, append incoming messages to the thread, and have your own bot service decide when to write first.
When does Quill write first, and how do I stop it?
Once, three seconds after you open a teammate's thread, if Quill is not muted and has not already written. The inbox row gets a New badge and the status line says Quill sent you a message. Turn on Mute Quill in its thread before that and it never fires; the timer is cleared when you leave or unmount, so nothing runs in the background.
How can I tell the bot from a person?
Quill carries a Bot word beside its name in the inbox and says Bot in its status line, and it has no presence dot. It is told apart by words, not color. Teammates show their team instead.
Is it usable with a keyboard and a screen reader?
The inbox is a list of buttons with the open chat marked current, the log is a focusable region announced as a log, and every message starts with a hidden sender and time. Opening a chat moves focus to the composer, and All chats returns focus to its row. The Mute switch has its own label.