badgebot

ReviewAudited by ClawScan on May 10, 2026.

Overview

This instruction-only skill is coherent, but it deserves review because it monitors Slack, uses business credentials, enriches personal lead data, and can update HubSpot automatically.

Install only if you intend to give this agent Slack, Apollo, and HubSpot access for this exact workflow. Use dedicated least-privilege tokens, require confirmation before HubSpot updates, review any cron setup, and decide how long local lead/contact memory should be retained.

Findings (4)

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

A misunderstood or ambiguous Slack reply could incorrectly change CRM contact fields or create notes in HubSpot.

Why it was flagged

The skill instructs the agent to turn a Slack DM reply into a HubSpot contact update and immediately PATCH the CRM record. That is purpose-aligned, but it is high-impact business-data mutation without an explicit approval or validation step.

Skill content
Parse reply text as a natural-language HubSpot update instruction ... Apply update via HubSpot PATCH
Recommendation

Require explicit user confirmation before every HubSpot write, validate allowed fields/values, and keep an audit trail of the original Slack reply and resulting CRM change.

What this means

If installed with broad tokens, the agent may have more Slack, Apollo, or HubSpot authority than needed for the lead-scanning workflow.

Why it was flagged

The skill requires three service credentials that can read Slack data, enrich personal lead data, and modify HubSpot, but the artifact does not specify least-privilege scopes or credential boundaries.

Skill content
SLACK_TOKEN in ~/.openclaw/credentials/slack-bot-token ... Apollo key in ~/.openclaw/credentials/apollo-api-key ... HubSpot token in ~/.openclaw/credentials/hubspot-api-key
Recommendation

Use dedicated least-privilege tokens, document required scopes, restrict Slack access to the intended channel/DM workflow, and restrict HubSpot permissions to only needed contact/note operations.

What this means

Lead/contact details may persist locally and could be reused or exposed in later agent contexts if memory files are broadly accessible.

Why it was flagged

The skill stores persistent state containing contact identifiers/names and writes daily memory logs. This supports the workflow, but it retains business lead data in local memory files.

Skill content
State file: ~/clawd/memory/slack-lead-scanner-state.json ... pending_dm_replies ... "hubspot_contact_id" ... "contact_name" ... Log to memory/YYYY-MM-DD.md
Recommendation

Limit what is stored, avoid logging sensitive lead details unless needed, define retention/cleanup, and keep memory files protected.

What this means

Once scheduled, the workflow may continue checking Slack and making downstream API calls until the schedule is removed.

Why it was flagged

The skill contemplates cron-based polling. This is disclosed and aligned with monitoring Slack, but it can create ongoing background automation if configured.

Skill content
Use when setting up or managing Slack-based lead scanning, including polling configuration via cron
Recommendation

Only enable cron/polling deliberately, document the schedule, and provide a clear disable/cleanup process.