Skip to main content

chat-widget

Creates a real-time support chat system with a user widget and admin dashboard for effective customer support.

Install this skill

or
65/100

Security score

The chat-widget skill was audited on Mar 8, 2026 and we found 11 security issues across 2 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 590

Template literal with variable interpolation in command context

SourceSKILL.md
590const ws = new WebSocket(`${websocketUrl}?chat_id=${chat.id}`)
medium line 642

Template literal with variable interpolation in command context

SourceSKILL.md
642<span className={`w-2 h-2 rounded-full ${connected ? 'bg-green-500' : 'bg-gray-400'}`} />
medium line 646

Template literal with variable interpolation in command context

SourceSKILL.md
646<div key={m.id} className={`p-2 rounded ${m.sender_type === 'user' ? 'bg-blue-100 ml-auto' : 'bg-gray-100'}`}>
medium line 709

Template literal with variable interpolation in command context

SourceSKILL.md
709await pusher.trigger(`support-chat-${chatId}`, 'new-message', messageData)
medium line 712

Template literal with variable interpolation in command context

SourceSKILL.md
712const channel = pusher.subscribe(`support-chat-${chatId}`)
medium line 788

Template literal with variable interpolation in command context

SourceSKILL.md
788ws = new WebSocket(`/ws/chat?id=${chat.value?.id}`)
low line 268

Fetch to external URL

SourceSKILL.md
268fetch('/support_chat')
low line 294

Fetch to external URL

SourceSKILL.md
294fetch('/support_chat/mark_read', { method: 'PATCH' })
low line 582

Fetch to external URL

SourceSKILL.md
582fetch('/api/support_chat').then(r => r.json()).then(data => {
low line 784

Fetch to external URL

SourceSKILL.md
784const res = await fetch('/api/support-chat')
low line 891

Fetch to external URL

SourceSKILL.md
891fetch('/api/support-chat/messages?since=' + lastMessageTime)
Scanned on Mar 8, 2026
View Security Dashboard