← All Tools

LLM System-Prompt Linter

Paste the system prompt that drives your assistant or agent. The linter flags embedded secrets, reliance on "don't reveal the prompt", prompt-injection footguns, over-broad agency, and missing guardrails — and shows the source for every rule. It is a static heuristic, not a jailbreak proof.

🔒 100% client-side. Your prompt is linted in your browser. This page has no server endpoint for it, stores nothing (no draft, no history) and sends nothing. Open the Network tab and press Lint: no request.
⚠ Heuristic, not exhaustive. The linter matches text patterns; it cannot prove a prompt is injection- or jailbreak-resistant. A rule that does not fire is "not flagged", not "safe". Combine it with adversarial testing (red teaming) and controls enforced outside the LLM (OWASP LLM07).
—

How to use

  1. Paste your full system prompt (the durable instructions, not a single user message). Nothing leaves your browser.
  2. Press Lint. Or try the weak example to see what failures look like, and the hardened example to see passes.
  3. Read the findings. Each one shows the status (FAIL / WARN / ADVISORY / PASS / N/A / INFO), what was observed, where (line:col with an excerpt), how to fix it, and the OWASP source.
  4. Fix the FAILs first (secrets, guardrail overrides), then the WARNs. Re-lint until the grade stops improving.
  5. Export the findings as Markdown, JSON or CSV for a ticket or a review. Exports match what you see here.

What it does not do: it never fetches anything, never claims your prompt is safe, and does not understand meaning — a weakness phrased unusually can go unflagged, and a flagged line can be a deliberate, well-handled choice. Treat it as a checklist, then test adversarially.

What the linter checks

Ruleset , sourced to the OWASP Top 10 for LLM Applications (2025) and its prompt-injection mitigations.