Skip to content
Agentmart
Submit a tool

ai-chatbot

Chat UI components, streaming responses with AI SDK, context window management, and RAG patterns.

Skill by YepAPI

IndexedMIT★ 8
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/yepapi-ai-chatbot

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Chat UI components, streaming responses with AI SDK, context window management, and RAG patterns.

Use cases: design, ml

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/ai-chatbot

What's inside

Skill name
ai-chatbot
Description
Chat UI components, streaming responses with AI SDK, context window management, and RAG patterns.
License
MIT
Instructions
43 lines in SKILL.md · view on GitHub

Files (2)

  • README.md
  • SKILL.md

SKILL.md (first lines)

# AI Chatbot

## Rules

- Use Vercel AI SDK (`ai` package) for streaming — `useChat()` hook on client, `streamText()` on server
- Stream responses with `text/event-stream` — never buffer full responses before sending
- Message format: `{ role: "user" | "assistant" | "system", content: string }`
- Context window management: trim oldest messages when approaching token limit, always keep system prompt
- RAG pattern: embed user query → vector search → inject top-k results as context before the user message
- Chat UI: auto-scroll to bottom, loading indicator with animated dots, render markdown in assistant messages
- Persist conversation history server-side — use a `messages` table with `chatId`, `role`, `content`, `createdAt`
- System prompt goes first in the messages array — never let user messages override it
- YepAPI chat endpoint: `POST /v1/ai/chat` with `{ messages, model?, stream? }`
- Stop generation button — use `AbortController` to cancel in-flight streams

## Patterns

```tsx
// Client — useChat from Vercel AI SDK
const { messages, input, handleInputChange, handleSubmit, isLoading, stop } = useChat({
  api: "/api/chat",
});
```

```ts
// Server — streaming response
import { streamText } from "ai";

export async function POST(req: Request) {
  const { messages } = await req.json();
  const result = streamText({ model, messages });
  return result.toDataStreamResponse();
}
```

## Avoid

- Sending entire conversation history without trimming — will exceed context window
- Blocking UI while waiting for full response — always stream
- Storing messages only in client state — persist server-side for history
- Hardcoding model names — use environment variables or config

From YepAPI/skills, MIT.

More from YepAPI/skills

Signals

Stars
8
Forks
1
Open issues
0
Last commit (this folder)
Apr 12, 2026 (6 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from YepAPI

Cite this page

ai-chatbot skill. Agent Mart. https://agentmart.dev/skills/yepapi-ai-chatbot (last updated 2026-10-24)