Agent skill · Backend & API

libchat

libchat - Chat web components library. ChatClient provides composed client for authentication, API communication, and state management. ChatDrawerElement and ChatPageElement are custom elements for embedding chat interfaces. Framework-agnostic using Web Components standard. Use for building chat UIs, embedding conversational AI in websites, and creating dedicated chat pages.

majiayu000github.com/majiayu000GitHub ↗
claude-codeMIT
Install
npx skills add majiayu000/claude-skill-registry --skill libchat --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 2
SKILL.md size: 2 KB
Bundled scripts: none
Path: skills/ai-llm/libchat/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 534
Language: HTML

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# libchat Skill ## When to Use - Embedding chat interfaces in web applications - Building dedicated chat page experiences - Adding conversational AI to existing websites - Creating custom chat UI with authentication ## Key Concepts **ChatClient**: Composed client managing auth state, API communication, and conversation persistence via localStorage. **ChatDrawerElement**: Collapsible drawer component for unobtrusive chat integration on any page. **ChatPageElement**: Full-page chat component for dedicated chat experiences. ## Usage Patterns ### Pattern 1: Embed chat drawer ```javascript import { ChatClient, ChatDrawerElement } from "@copilot-ld/libchat"; const client = new ChatClient({ chatUrl: "/web/api/chat", auth: { url: "http://localhost:9999", anonKey: "key" }, }); document.querySelector("chat-drawer").client = client; ``` ### Pattern 2: Full-page chat ```html <chat-page data-name="Assistant"></chat-page> <script type="module"> import { ChatClient, ChatPageElement } from "@copilot-ld/libchat"; const client = new ChatClient({ chatUrl: "/api" }); document.querySelector("chat-page").client = client; </script> ``` ## Integration Used by the UI extension. Communicates with Web extens

What's inside
Steps it walks through
  1. When to Use
  2. Key Concepts
  3. Usage Patterns
  4. Pattern 1: Embed chat drawer
  5. Pattern 2: Full-page chat
  6. Integration
Ships with 1 file
  • metadata.json
More from claude-skill-registry
All skills →
About this skill
What does the libchat skill do?

libchat - Chat web components library. ChatClient provides composed client for authentication, API communication, and state management. ChatDrawerElement and ChatPageElement are custom elements for embedding chat interfaces. Framework-agnostic using Web Components standard. Use for building chat UIs, embedding conversational AI in websites, and creating dedicated chat pages.

How do I install it?

Run `npx skills add majiayu000/claude-skill-registry --skill libchat --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going