Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/open-chat-widget/openchatwidget/ai-elementsnpx skills add Open-Chat-Widget/openchatwidget --skill ai-elementsgit clone --depth 1 https://github.com/Open-Chat-Widget/openchatwidgetWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00046 | $0.01632 |
| Opus 5 | $0.00023 | $0.00816 |
| Sonnet 5 | $0.00009 | $0.00326 |
| Haiku 4.5 | $0.00005 | $0.00163 |
Grade A, and why
ai-elements scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to ai-elements — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 161 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AI Elements
AI Elements is a component library and custom registry built on top of shadcn/ui to help you build AI-native applications faster. It provides pre-built components like conversations, messages and more.
Installing AI Elements is straightforward and can be done in a couple of ways. You can use the dedicated CLI command for the fastest setup, or integrate via the standard shadcn/ui CLI if you've already adopted shadcn's workflow.
IMPORTANT: Run all CLI commands using the project's package runner:
npx ai-elements@latest,pnpm dlx ai-elements@latest, orbunx --bun ai-elements@latest— based on the project'spackageManager. Examples below usenpx ai-elements@latestbut substitute the correct runner for the project.
Prerequisites
Before installing AI Elements, make sure your environment meets the following requirements:
- Node.js, version 18 or later
- A Next.js project with the AI SDK installed.
- shadcn/ui installed in your project. If you don't have it installed, running any install command will automatically install it for you.
- We also highly recommend using the AI Gateway and adding
AI_GATEWAY_API_KEYto yourenv.localso you don't have to use an API key from every provider. AI Gateway also gives $5 in usage per month so you can experiment with models. You can obtain an API key here.
Installing Components
You can install AI Elements components using either the AI Elements CLI or the shadcn/ui CLI. Both achieve the same result: adding the selected component’s code and any needed dependencies to your project.
The CLI will download the component’s code and integrate it into your project’s directory (usually under your components folder). By default, AI Elements components are added to the @/components/ai-elements/ directory (or whatever folder you’ve configured in your shadcn components settings).
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/agent.md 4.1 KB
- references/artifact.md 2.9 KB
- references/attachments.md 5.6 KB
- references/audio-player.md 5.2 KB
- references/canvas.md 1.1 KB
- references/chain-of-thought.md 3.3 KB
- references/checkpoint.md 5.5 KB
- references/code-block.md 5.4 KB
- references/commit.md 5.8 KB
- references/confirmation.md 8.6 KB
- references/connection.md 1.1 KB
- references/context.md 5.6 KB
- references/controls.md 971 B
- references/conversation.md 7.4 KB
- references/edge.md 2.1 KB
- references/environment-variables.md 3.7 KB
- references/file-tree.md 2.0 KB
- references/image.md 4.0 KB
- references/inline-citation.md 11 KB
- references/jsx-preview.md 3.2 KB
- references/message.md 9.4 KB
- references/mic-selector.md 7.7 KB
- references/model-selector.md 4.3 KB
- references/node.md 2.8 KB
- references/open-in-chat.md 2.7 KB
- references/package-info.md 3.2 KB
- references/panel.md 1.0 KB
- references/persona.md 5.4 KB
- references/plan.md 3.2 KB
- references/prompt-input.md 20 KB
- references/queue.md 5.4 KB
- references/reasoning.md 7.8 KB
- references/sandbox.md 4.3 KB
- references/schema-display.md 2.5 KB
- references/shimmer.md 1.6 KB
- references/snippet.md 2.2 KB
- references/sources.md 6.2 KB
- references/speech-input.md 6.5 KB
- references/stack-trace.md 7.9 KB
- references/suggestion.md 3.6 KB
- references/task.md 6.7 KB
- references/terminal.md 3.1 KB
- references/test-results.md 5.0 KB
- references/tool.md 8.5 KB
- references/toolbar.md 983 B
- references/transcription.md 4.9 KB
- references/voice-selector.md 10 KB
- references/web-preview.md 6.1 KB
- scripts/agent.tsx 1.6 KB
- scripts/artifact.tsx 2.9 KB
- scripts/attachments-inline.tsx 3.5 KB
- scripts/attachments-list.tsx 2.2 KB
- scripts/attachments.tsx 2.0 KB
- scripts/audio-player-remote.tsx 1.0 KB
- scripts/audio-player.tsx 1.8 KB
- scripts/chain-of-thought.tsx 139 KB
- scripts/checkpoint.tsx 2.8 KB
- scripts/code-block-dark.tsx 1.0 KB
- scripts/code-block.tsx 2.9 KB
- scripts/commit.tsx 2.1 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 161 lines · 46 tokens per session scan A 6e1697f6728f
ai-elements is a skill published in the GitHub repository Open-Chat-Widget/openchatwidget (14 stars, last pushed 5mo ago), licensed MIT. It adds 46 tokens to every session and 1,632 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to ai-elements, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
chatbot
Use when a support or sales bot on a live website must behave: persona/system prompt, grounding so it cannot invent prices or policy, jailbreak and injection defense, the human handoff, launch metrics and kill switch. NOT the agent loop or RAG index under it (that is building-agents), NOT a human answering one ticket…
gh-issues
Fetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label bug] [--limit 5] [--milestone v1.0] [--assignee @me] [--fork user/repo] [--watch] [--interval 5] [--reviews-only] [--cron] [--dry-run] [--model glm-5]…
canvas
Display HTML content on connected OpenClaw nodes (Mac app, iOS, Android).
peekaboo
Capture and automate macOS UI with the Peekaboo CLI.
gog
Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.
himalaya
CLI to manage emails via IMAP/SMTP. Use himalaya to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).