Skip to main content
AI/MLjeremylongshore

groq-data-handling

'Implement prompt sanitization, PII redaction, response filtering, and

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--groq-data-handling
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/groq-pack/skills/groq-data-handling/SKILL.md -o .claude/skills/groq-data-handling.md

Drops the SKILL.md into .claude/skills/groq-data-handling.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Groq Data Handling

Overview

Manage data flowing through Groq's inference API. This skill wires a privacy pipeline around the Groq SDK: sanitize prompts before they are sent, filter responses after they return, redact PII, hash-log an audit trail, and track token usage and cost. Key fact: Groq does not use API data for model training (Groq Privacy Policy).

Prerequisites

  • Node.js project with the groq-sdk package installed (npm i groq-sdk).
  • A Groq API key exported as GROQ_API_KEY. The SDK reads it automatically from the environment — new Groq() needs no explicit argument. Never hardcode the key; keep it in an untracked .env or your secret manager.
  • Node's built-in crypto module (for the audit hash) — no install needed.

Instructions

The pipeline layers in four stages; drop simple add-ons (moderation, cost reporting) on top. Each snippet below is the skeleton — the full, copy-ready code for every stage is in references/implementation.md.

  1. Sanitize input — run a PII rule table over every message before it leaves your process, flagging which categories were caught:

    function sanitizeMessages(messages: any[]): { messages: any[]; hadPII: boolean } {
      // apply PII_RULES to each message's content; return redacted copy + flag
    }
    
  2. Wrap the completion call — call safeCompletion(...) instead of the raw groq.chat.completions.create, so input and response both pass the sanitizer.

  3. Track usagetrackUsage(model, completion.usage, sessionId) records token counts and estimated cost per call using a per-model price table.

  4. AuditauditedCompletion(...) ties it together and logs a SHA-256 hash of the prompt (never the prompt text) so the audit trail carries no sensitive content.

For content moderation via Llama Guard and a daily cost report, see references/examples.md.

Groq data policy

  • Groq does not train on API request/response data.
  • Prompts and completions are processed and discarded.
  • Groq may temporarily log requests for abuse prevention.
  • For enterprise: contact Groq for DPA and SOC 2 compliance details.

Output

  • Sanitized messages/responses — text with [EMAIL], [PHONE], [SSN], [CARD], [IP] placeholders swapped in for detected PII, plus a hadPII boolean and a list of redacted categories.
  • Usage records — one JSON line per call (type: "groq_usage") with model, token counts, and estimatedCostUsd.
  • Audit entries — one JSON line per call (type: "groq_audit") carrying a prompt hash, piiDetected, responseFiltered, and the usage record.
  • Cost report — an aggregated object with totalCost, totalTokens, totalCalls, and a per-model breakdown (see the sample in references/examples.md).

Error Handling

Issue Cause Solution
PII leaks in response Model echoes sensitive input Apply response filtering on all completions
Cost spike 70B model for all requests Route simple tasks to 8B
Missing usage data Streaming mode Use non-streaming for tracked requests, or estimate
Audit gaps Not all code paths use wrapper Lint rule: ban direct groq.chat.completions.create
GROQ_API_KEY not set Key missing from environment Export the key before running; the SDK throws on an unauthenticated call

Examples

Minimal end-to-end use once the helpers are in place:

const { content, audit } = await auditedCompletion(sessionId, messages);
// content is PII-filtered; audit is a hash-only record safe to persist

Resources

For enterprise access controls, see the groq-enterprise-rbac skill.