← All Tools

🤖 System-Prompt Linter

Paste the system prompt that drives your assistant or agent. The linter flags weak refusals, prompt-injection footguns, missing output anchors, contradictions, and credentials that should never be in a prompt.

100% client-side. Your prompt stays in the browser. The patterns and heuristics run locally.
⚠ Heuristic, not exhaustive. Lint catches patterns; it cannot prove a prompt is jailbreak-resistant. Always combine with adversarial testing (red teaming) and an output filter / classifier.

What the linter looks for

Role & framing

  • Clear opening role declaration ("You are an X that does Y.")
  • Stated capabilities and out-of-scope topics
  • Concrete output format anchor (Markdown, JSON, <tool> tags)

Refusal & safety

  • Explicit refusal trigger conditions
  • What to say when refusing (canonical refusal phrasing)
  • No "always answer / never refuse / be honest about everything" patterns

Prompt injection resilience

  • Untrusted user / RAG content delimited and labelled
  • Instructions inside untrusted content treated as data, not commands
  • Tool / function descriptions clearly bounded

Hygiene

  • No real credentials / keys / PII in the prompt itself
  • No contradictions ("never X" + "always X")
  • No "ignore previous instructions" baked in for testing and forgotten