>_What is VibeLeak?0%

    // DOCUMENTATION

    VibeLeak docs

    Find what attackers check first. VibeLeak scans HTTPS, headers, exposure, and trust signals in seconds — and tells you exactly how to fix what it finds.

    Core scanner

    Live

    5 scans per day on the free tier

    Export format

    Markdown

    Limited-time free launch access when signed in

    Trust loop

    Recheck

    Fix, scan again, confirm the lift

    What you can do

    Scan any website

    Drop in a URL and get a structured trust read in seconds. No account required for the free scanner.

    Fix with confidence

    Every finding comes with a specific, prioritized fix — not just a warning label.

    Track your progress

    Recheck after fixes and watch the grade move. Build a release cadence around it.

    See what ships next

    Signed-in users open the dashboard roadmap to heart-vote planned and in-progress work. The scanner stays focused on findings, not product planning.

    How it works

    01

    Submit a URL

    Enter any domain. The scanner runs across transport, headers, exposure, and trust signals.

    02

    Receive a structured score

    Get a grade plus categorized findings, each with evidence and a recommended fix.

    03

    Fix the top items

    Work through findings in priority order. High and critical first.

    04

    Recheck

    Run the same URL again to verify the grade moved and the blockers are cleared.

    Security Module

    AIGuard

    AIGuard detects AI provider API keys exposed in a site's HTML source. It runs passively — it reads what the scanner fetches, not what executes in a browser. Keys found in page source are high-signal: they indicate the key is in client-accessible code, exposed to anyone who views source.

    Note: dynamically-loaded JS bundles (loaded at runtime, not present in the initial HTML) are not scanned by AIGuard. Dedicated JS bundle scanning tools should be used for deeper analysis.

    What it detects

    OpenAI
    sk-... (48+ char)
    Page HTML
    Anthropic
    sk-ant-... (60+ char)
    Page HTML
    Google AI / Gemini
    AIza... (35 char, requires AI context)
    Page HTML
    AWS Bedrock
    AKIA... (requires Bedrock context)
    Page HTML
    Hugging Face
    hf_... (30+ char)
    Page HTML
    Groq / Mistral / Cohere
    gsk_, ml_, co...
    Page HTML

    Provider endpoint references

    AIGuard detects when page HTML references known AI provider endpoints (e.g. api.openai.com). This is informational — it confirms direct client-side use of an AI service and should be reviewed alongside auth, proxying, and key handling. Same-origin bundle scanning can be enabled for deeper secret checks; active AI endpoint probing is not enabled by default.

    What AIGuard does not detect

    • • Keys without known provider prefixes (generic API keys, JWTs)
    • • Keys in Web Workers, service workers, cross-origin bundles, or dynamically-loaded JS not referenced in the initial HTML
    • • Whether a key is used in development vs. production
    • • Keys behind authentication on internal tools
    • • Active probing of AI service endpoints or cloud infrastructure
    Security Module

    CloudLeak

    CloudLeak detects Firebase Realtime Database and Supabase REST API references, then probes whether those endpoints are accessible without authentication. It also scans delivered HTML and same-origin JavaScript for public cloud storage URLs across Supabase Storage, Firebase Storage, S3, Google Cloud Storage, and Azure Blob.

    Misconfigured cloud backends are a common source of data breaches. Storage URL findings are conservative: visible bucket URLs are treated as review signals, while public listing probes are raised when a safe unauthenticated metadata/listing endpoint confirms exposure.

    What it detects

    Firebase Realtime Database
    firebaseio.com subdomain returning DB content without auth
    Critical
    Supabase REST API
    supabase.co subdomain returning REST API data without auth
    Critical
    Public storage URL hints
    Supabase Storage, Firebase Storage, S3, GCS, or Azure Blob URLs visible in HTML/JS
    Medium
    Public bucket listing
    Conservative unauthenticated listing probe succeeds for S3, GCS, Firebase Storage, or Azure Blob
    High

    What CloudLeak does not detect

    • • Buckets that are private and never referenced by browser-visible code
    • • Object contents behind signed URLs, authentication, or unreferenced internal paths
    • • Authentication bypass vulnerabilities
    • • Sensitivity of data — any accessible DB triggers, regardless of content
    • • Rate-limit-induced false negatives

    Remediation

    For Firebase and Supabase databases: enforce auth and RLS/security rules. For storage: separate public assets from user/private files, disable bucket listing, use signed URLs for private objects, and audit any bucket referenced in client code.

    Security Module

    DataLeak

    DataLeak looks for the passive public-surface version of API overfetch: same-origin JSON endpoints referenced in delivered HTML or same-origin JavaScript that return private-looking fields without authentication.

    This targets the pattern where the backend sends too much data and the frontend merely hides it. Probes are capped, GET-only, same-origin, and skip auth, checkout, upload, webhook, and destructive-looking paths.

    Finds same-origin /api/* and .json endpoints referenced by HTML/JS
    Flags private-looking fields such as email, phone, messages, drafts, private, role, apiKey, totp, and user_id
    Redacts evidence before surfacing it in the finding
    Raises medium or high severity based on field sensitivity and response shape

    What DataLeak does not detect

    • • Authenticated-only APIs that require a real user session
    • • IDOR bugs where Account A can read Account B only after supplying account-specific IDs
    • • Endpoints built dynamically at runtime and not visible in initial HTML or same-origin bundles
    Owner-verified mode

    Owner-verified IDOR scan

    Owner-verified IDOR scanning is separate from the normal public scan. A signed-in owner can submit two test account sessions and a small list of same-site JSON paths; VibeLeak compares Account A and Account B responses for cross-account markers, shared private-looking payloads, messages, drafts, profiles, roles, and account data.

    Supplied headers are used only for the live request and are not stored. The API requires explicit owner confirmation and blocks internal/private targets with the same SSRF protections used by the public scanner.

    API preview

    Use POST /api/owner-idor-scan with owner_confirmation: true, target_url, up to 10 relative paths, and two account header sets. For stronger confirmation, include account-specific marker strings such as test-user emails or unique draft text.

    Security Module

    ThreatSurface

    ThreatSurface runs four parallel passive-surface probes that test for common runtime and configuration exposures. All checks run simultaneously and complete in a single scan pass.

    These checks focus on signals that are directly visible in HTTP responses and headers — no authentication, no JS execution, no internal access.

    What it checks

    Error disclosure
    High
    Detects verbose server errors, stack traces, and framework version strings in HTTP error responses (4xx/5xx). High-signal: directly leaks implementation details.
    Confidence: Direct — read from response body
    Open redirect
    High
    Probes common redirect parameters (url=, redirect=, next=, return=) with an external destination. Detects Location headers pointing off-domain without validation.
    Confidence: Direct — read from Location header
    Auth rate-limit signal
    Medium
    Makes two rapid requests to common auth endpoints (/login, /api/auth/login, /api/signin) and checks for rate-limit response headers (X-RateLimit-*, Retry-After). Absence is a medium-confidence gap.
    Confidence: Inferred — absence of expected headers
    security.txt
    Info
    Checks for the presence of /.well-known/security.txt. Absence is informational — the file is a best-practice for responsible disclosure, not a security control.
    Confidence: Direct — 200 vs 404 response

    What ThreatSurface does not detect

    • • Whether auth endpoints actually enforce rate-limits server-side (only checks response signals)
    • • Open redirects that require JavaScript execution or session state
    • • Error disclosure behind authenticated routes
    • • Server-side request forgery (SSRF) — redirect probes follow zero hops
    AI signal

    VibeSignal (AI Signal Score)

    VibeSignal is a parallel score to the trust grade. It answers whether AI crawlers, answer engines, and autonomous agents can find, read, and use your public site — using only passive signals visible without authentication.

    The headline is a 0–100 score with a status label (Strong, Partial, or Weak signal). Five category rows each cap at 20 points: Discoverability, Content Access, Bot Access, Protocol Discovery, and Commerce Readiness. Detailed items appear as findings in the AI Signals view inside findings review.

    Compatibility

    • • API field vibeSignal is primary; agentReadiness is a deprecated alias when present.
    • • Stored scans may still use legacy DB columns agent_readiness_score and agent_readiness_data; the app maps them at read time.
    • • Finding categories ai-signal and legacy agent-readiness are both shown as AI Signals in the UI.

    Markdown reference

    A longer-form reference for operators lives in docs/vibesignal.md in the repository.

    Severity model

    Each finding is tagged with a severity level that determines how it affects the overall grade and urgency of the fix.

    CriticalImmediate risk. Fix before any launch or release.
    HighSignificant exposure. Prioritize in current sprint.
    MediumCredibility gap. Address in next release cycle.
    Low / InfoHygiene items. Fix opportunistically.

    Remediation steps

    Every finding includes a specific recommended fix. The fastest-lift items are surfaced first. Without signing in, the live scanner shows a preview of issues; full remediation text, export, and score watch require an account.

    • HTTPS enforcement via TLS certificate
    • Security header coverage (CSP, X-Frame-Options, HSTS)
    • Exposure pattern mitigation
    • Trust signal alignment

    The recheck loop

    The recheck is the payoff. Run the same URL after applying fixes to confirm score movement and track momentum.

    When you are signed in, you can also use the Monitored domains area on the dashboard: enable score watch on a full trust scan (letter grade), run Recheck now for an on-demand rescan, or let scheduled rescans update grades. If email delivery is enabled for VibeLeak, grade-change alerts are sent from our notification system.

    Tip

    Build a recheck into your release checklist. Scan before → fix → scan after → confirm the grade moved.

    Architecture overview

    ScannerRuns checks across transport, headers, exposure, and trust signal layers.
    GraderAggregates findings into a severity-weighted score and letter grade.
    RemediatorMaps each finding to a specific, actionable fix with priority ordering.
    TrackerStores scan history; dashboard roadmap votes are recorded when you are signed in.

    Is VibeLeak safe to use?

    Yes. The normal VibeLeak scan is a passive public-surface check. It requests public HTTP(S) resources and reads visible signals like TLS state, redirects, headers, cookies, DNS, public files, and AI-facing metadata. It does not log into the target site, does not ask for target credentials, and blocks localhost, private networks, cloud metadata hosts, and private-address redirects.

    What VibeLeak stores

    Scan URL/domain, timestamps, grade, findings, evidence summaries, account ownership, export/watch state, and the product metadata needed to save, recheck, and operate the report.

    What VibeLeak does not store

    Full target page content, target user data, target cookies, target sessions, or private application data from the scanned site.

    Who sees full reports

    Only the signed-in owner can access detailed findings, remediation, evidence archives, and Markdown exports. Public scan links are redacted, noindex grade cards.

    What logs are for

    Operational events may record status, IDs, timing, URL/domain, account state, and delivery status for reliability and abuse prevention. Generated Markdown report bodies are not public report surfaces.

    Limited-time free launch access

    The scanner itself stays free at 5 public scans per day. During launch, signed-in free users can also reveal full findings and fixes and download Markdown exports. That detailed free report access is temporary; later free reports may blur fixes and exports until the user upgrades.

    Reading your score

    VibeLeak grades run from F to S. The canonical score starts at 100, subtracts critical -45, high -16, medium -8, low -3, and info -1, then applies caps so severity and letter grade stay honest. A scan with zero findings is the only path to 100/100.

    Grade S

    98-100. Elite trust signal; 100/100 means zero findings.

    Grade A

    90-97. Strong posture with only low/info hygiene gaps.

    Grade B

    75-89. Good with tuneups; any high or medium finding caps below A.

    Grade C

    55-74. Common gaps; repeated medium or high-plus-medium mixes land here.

    Grade D

    35-54. Significant risk; one critical finding caps the score here.

    Grade F

    0-34. Critical action; two critical findings or scan failure land here.

    Product roadmap

    The forward-looking product roadmap lives in the dashboard after you sign in (/dashboard/roadmap). It shows what we are planning and building next — not a long history of completed work. You can heart-vote on items to help prioritize. The scanner focuses on your results and fixes; it is not a roadmap surface.

    Sign inOpen the dashboard, then the roadmap, to see the same plan paying customers and active users get.
    VoteHearts on planned and in-progress items are counted toward prioritization. Shipped and internal items are not open for public voting.
    FeedbackProduct feedback may be added through authenticated flows; demand still informs what we build next.

    Sharing results

    After a saved scan, the /scan/[id] link is a redacted noindex grade card for sharing the result without exposing the full report. Detailed findings, evidence, remediation, and Markdown exports require the signed-in owner. A separate public, indexable snapshot for some domains may exist at /site/[domain] (summary only, no gated remediation).

    Share grade card

    Instant

    Uses the native share sheet on mobile. On desktop, copies a formatted summary. The public link does not expose remediation or the Markdown report.

    Owner export

    Private

    Downloads a branded Markdown report with findings, evidence, remediation, and AI visibility context after the owner signs in.

    Workflow

    Export to Markdown and fix with AI

    Signed-in users can export a full trust scan as structured Markdown: your site grade, findings with evidence, remediation in priority order, and operator instructions that tell an agent to audit the live site against the list before changing anything, preserve behavior, and plan a rescan after deploy.

    The workflow

    Run a scanScan any public URL on the /scan page. No account is required for the grade and preview.
    Export the reportSign in, then use Export on your results. During launch, signed-in free users can download the .md file; an account email copy may be sent when email delivery is enabled.
    Open your AI agentOpen Claude Code, Cursor, or any agent below. Drop in the file or paste its contents.
    Ask it to fixTell your agent: "Fix all critical and high findings in this VibeLeak report in order of severity." It knows exactly what to do.
    RecheckAfter deploying fixes, re-run the same URL on VibeLeak to confirm the grade moved.

    What to say to your agent

    # Prompt template

    Here is my VibeLeak security report for [domain].

    Fix all critical and high severity findings in order.

    For each fix, explain what you changed and why.

    [paste report contents or file path]

    Compatible agents

    Claude CodeCodexOpenCodeKilo CodeBlackBox AIOpenClawHermesCursorWindsurfContinue

    Gating

    Markdown export requires a signed-in account and scan ownership. Signed-in free users have limited-time launch access to full findings, fixes, and exports. Later, the free tier may keep scanning free while blurring detailed fixes and export until upgrade.

    VibeSignal

    VibeSignal Export

    After running a VibeSignal scan, you can export your AI visibility report as a Markdown file.

    How it works

    1. Run a scan on any URL (Full Scan or VibeSignal Only mode)
    2. Sign in, then click Export VibeSignal Report in the results panel
    3. The .md downloads, and an account email copy may be sent when email delivery is enabled
    4. Open the file in any editor or drop it into your AI agent

    Using the report with your AI agent

    The report is designed to be agent-ready. You can:

    • Drop the .md file into Claude, ChatGPT, Cursor, Windsurf, or any agent with file upload
    • Ask: "Implement all the fixes in this report for my website"
    • The agent will implement changes to your robots.txt, llms.txt, schema markup, headers, and .well-known/ endpoints
    • Each finding includes the exact remediation steps with code examples

    After fixing

    Come back to VibeLeak and run a new VibeSignal scan on your URL. Each category score should improve as fixes are deployed. A perfect score (100/100) means your site is fully optimized for AI discoverability across ChatGPT, Perplexity, Claude, Gemini, and Copilot.

    What VibeSignal checks

    CategoryWhat's checkedMax points
    Discoverabilityrobots.txt, sitemap.xml, canonical tags, AI bot rules20
    Content Accessllms.txt, JSON-LD structured data, semantic public content20
    Bot Controlrobots.txt AI grants, X-Robots-Tag, meta robots20
    Protocol DiscoveryMCP discovery, agent.json, OpenAPI, security.txt or auth discovery20
    Commerce SignalsPricing page, checkout cues, Product/Offer JSON-LD, payment headers20

    Free scanner

    The core scanner is free and live now at 5 scans per day. No account is required to run a scan and see your grade and preview. Full findings, fixes, and Markdown exports are available to signed-in free users for a limited launch window.

    5 scans per day on any public URL
    Grade and preview without an account; sign in during launch for full remediation text and export
    Redacted /scan/[id] link for saved scans (set to noindex for search engines)
    Recheck on demand from the scan page; dashboard recheck for watched domains when signed in
    Indexable /site/[domain] public snapshot for eligible domains — summary trust signal, not a full report

    Account & sign in

    No account is required to use the free scanner — scan any public URL up to 5 times per day immediately. During launch, an account unlocks full findings, fixes, Markdown export, saved history (and claiming anonymous runs), score watch, dashboard monitoring, grade-change email alerts when scheduled rescans are enabled, Trust Index opt-in, and Pro access.

    Sign-in methods

    Google OAuth

    Fastest

    One-click sign in with your Google account. No password required. Redirects back to the dashboard after auth.

    Magic link

    Passwordless

    Enter your email and receive a sign-in link. Valid for a single use. No password to remember.

    Email + password

    Classic

    Standard email and password sign-in. Use the same form to create a new account.

    What an account gives you

    Scan history — saved scans and claimed anonymous runs
    Limited-time launch access — full findings, fixes, and Markdown export on signed-in free accounts
    Monitored domains — current/previous grade, last check, recheck, and score watch (full trust scans, letter grade)
    Grade-change email alerts — when scheduled rescans and email delivery are enabled
    Trust Index controls — opt in if your site reaches Grade A or S, or request privacy for any completed full scan while proving ownership
    Pro access — higher scan limits and workflow features when paid rollout opens
    Dashboard roadmap — heart votes on planned work are tied to your signed-in account
    Create an account →

    Pro rollout

    Pro is live in stages. Free scanning remains available at 5 scans per day, while signed-in free access to full findings, fixes, and Markdown export is a limited launch window. Pro targets higher daily limits and durable full-report access while team-oriented workflow continues shipping. Signed-in checkout returns to a clear terminal state: success lands on the dashboard, cancelled checkout returns to pricing with no plan change.

    Read-only public JSON

    GET /api/public/scan-summary?domain=example.com returns a small teaser (grade, counts, public page URL) — no API keys, no remediation bodies. Not a full partner API.

    Trend view + deep diff

    Watch entries show previous vs current letter grade. Rich per-finding diffs between two arbitrary scans remain roadmap.

    Checkout return states

    Paid plan checkout returns to /dashboard?checkout=success after payment and /pricing?checkout=cancelled after cancellation. Webhooks still control the actual subscription record.

    Customer API keys

    Not shipped. The badge URL and the public scan-summary endpoint are the supported integration points today.

    Early capability access

    Agency users get first access to new features and rollout waves, Pro users get the second wave, and Free users keep the stable public scanner.

    Agency roadmap

    Agency features are planned for teams managing trust across multiple client sites. The capabilities below are roadmap items, not fully shipped launch features.

    Multi-site + bulk scanning

    Queue and run scans across all your client domains from one dashboard.

    Team seats + shared reports

    Give clients and teammates access to shared scan results without individual logins.

    Client-facing report packs

    Package findings into branded, client-ready reports with your own formatting.

    Priority roadmap input

    Direct channel to flag what matters most for your clients' stacks.

    Trust Index

    The Trust Index

    The Trust Index is a living public leaderboard of site security scores at /trust-index. It tracks who's winning the trust game, who improved the most, and what was recently scanned.

    Every scan also shows a percentile rank — how your site compares against every other site scanned on VibeLeak. Sites with Grade A or S can opt in to appear in the public Hall of Fame. Signed-in users can also request Trust Index privacy for a scanned domain.

    Trust Index opt-in — same network required. To opt in, your request must come from the same network/IP context as your originating scan. Shared VPNs, proxies, or IPs from large organizations may not qualify.

    The viral mechanic

    "Better than 71% of sites scanned this month." — that stat is shown immediately after every scan. It's the Spotify Wrapped mechanic. People share rankings, not raw scores.

    Hall of Fame

    Sites that earn Grade A or S can opt in to be listed publicly in the Hall of Fame. This is the credibility signal you put in READMEs, pitch decks, and press kits.

    Only Grade A or S sites qualify
    After scanning, a one-click opt-in appears on your result card
    Opt-in must be submitted from the same network that ran the scan — shared VPNs, proxies, or IPs from large organizations may not qualify
    Choose a category: AI App, SaaS, Agency, or Other
    Listed publicly sorted by score, filterable by category
    Your entry links back to the scan result

    Most Improved

    The Most Improved tab shows domains that were scanned more than once with the biggest grade jumps. No opt-in required — all public rescans qualify automatically.

    The growth loop

    The shareable moment is a verified grade lift after fixes ship. Most Improved is the proof that repeated scans moved the public surface, whether the final result is S, A, B, or a smaller but meaningful jump.

    Privacy controls

    If you scan a domain and do not want it listed in Trust Index views, sign in and use the privacy option on the saved scan result. The domain is hidden from Hall of Fame, Most Improved, and Recently Scanned for 48 hours while ownership proof is pending.

    A signed-in account is required to start a privacy request
    Ownership can be verified automatically with a DNS TXT record or HTTPS /.well-known/vibeleak-verification.txt file
    If proof is verified, the domain stays hidden from /trust-index list views
    If proof is not verified within 48 hours, the pending hide expires and the domain can appear again
    This controls /trust-index only; direct saved scan links, badge URLs, and /site/<domain> snapshots are separate public surfaces

    Grade change notifications

    Every full scan result has a "Notify me if score changes" option for signed-in users. You'll get notified if the domain's grade shifts on the next configured rescan.

    Account required — the watch is tied to your signed-in user
    Weekly re-crawl runs every Sunday at 2am UTC
    Notification only fires when the grade actually changes
    Works for any domain you care about — including sites you don't own

    Trust badge

    Grade A and S sites can embed a live trust badge anywhere — GitHub READMEs, landing pages, footers, pitch decks. The badge fetches the current grade fresh every hour.

    Markdown embed:

    ![VibeLeak](https://www.vibeleak.app/api/badge/yourdomain.com)
    Only available for Grade A or S — 404 for lower grades
    Returns a shields.io-style SVG with grade color
    Cache-Control: max-age=3600 (fresh every hour)
    Badge automatically updates when grade changes