Signallink

ReviewAudited by ClawScan on May 10, 2026.

Overview

SignalLink mostly matches its purpose, but one webhook endpoint can let outsiders send arbitrary messages to your Telegram chat without checking the configured secret.

Review before installing. If you use it, set a webhook secret, patch /webhook/raw to require the same secret, use HTTPS or a trusted reverse proxy, restrict access to port 8000, protect the Telegram bot token, and verify the missing Docker setup files before running.

Findings (5)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

Anyone who can reach the server could spam the configured Telegram chat or send fake-looking trading alerts through the user's bot.

Why it was flagged

The raw endpoint accepts a request body and sends it to Telegram without taking or validating X-Webhook-Secret; the main /webhook endpoint has a secret check, but this endpoint bypasses it.

Skill content
@router.post("/webhook/raw")
async def receive_raw_webhook(request: Request): ... message = format_raw(payload)
    await send_message(message)
Recommendation

Require WEBHOOK_SECRET validation on every POST endpoint, reject missing secrets in production, add rate limiting, and expose the service only behind HTTPS/firewall controls.

What this means

If the bot token is exposed or reused elsewhere, someone could control that Telegram bot's messaging ability.

Why it was flagged

The Telegram bot token and chat ID are required for the stated Telegram integration and are used to send messages as the user's bot.

Skill content
Ask for their `TELEGRAM_BOT_TOKEN` and `TELEGRAM_CHAT_ID` if not already set
Recommendation

Use a dedicated Telegram bot for this service, store the token only in a local .env or secret manager, and rotate the token if it is ever shared or logged.

What this means

Docker setup may fail or users may be tempted to fetch missing files from outside the reviewed artifact set.

Why it was flagged

Docker Compose expects a local Docker build context, but the supplied manifest does not include a Dockerfile even though the documentation references one.

Skill content
services:
  webhook-router:
    build: .
Recommendation

Verify the repository contents before running Docker, and prefer a reviewed package that includes all referenced setup files.

What this means

Alert contents may be visible to anyone with access to server, container, or centralized logs.

Why it was flagged

Incoming webhook payloads are written to application logs, which may retain trading strategy details or other custom alert data.

Skill content
logger.info(f"Received webhook payload: {payload}")
Recommendation

Do not include secrets in webhook payloads, and consider redacting or disabling full-payload logging in production.

What this means

The webhook listener may continue accepting requests until explicitly stopped.

Why it was flagged

The service is configured to keep running and listening on port 8000 after it is started, which is normal for a webhook router but creates persistent exposure.

Skill content
ports:
      - "8000:8000"
    restart: unless-stopped
Recommendation

Run it only where intended, stop it when not needed, and restrict inbound access to trusted webhook sources where possible.