Kelp
§ 00Open source · MIT

Security scans
for vibe-coded apps.

Kelp finds hardcoded secrets, permissive Supabase RLS, and unauthenticated edge functions — the classes that actually breach AI-generated apps. Run it in one command.

$ npx @kelp-security/cli scan .
scan/roamly-app
4 specialists · streaming
13:04:12[postgrest]probing rls on public schema…
13:04:12[edge-fn]listing functions… found 6
13:04:13[auth]reading supabase config.toml
13:04:13[secrets]walking src/… 214 files
13:04:14[postgrest]profiles.email — READ open to anon
13:04:14[edge-fn]get-order verify_jwt=false
13:04:15[secrets]VITE_SERVICE_ROLE at src/lib/db.ts:14

Excerpt from an actual scan · nothing invented

§ 01Coverage

Small on purpose.
Every finding reproduces.

SEC-001

Hardcoded secrets

Provider patterns + entropy fallback across the source tree. Client-side secrets are severity-bumped.

RLS-002

Permissive Supabase RLS

Reads schema + policies, flags tables open to anon. Fixes ship as reviewable migrations.

EDGE-003

Edge functions skipping JWT

Detects verify_jwt=false, replays without a token, records the response.

AUTH-004

CORS and auth flow gaps

Permissive origins, missing rate-limits on password reset, open redirects.

§ 02Run it

Three surfaces.
Same engine.

01 · CLI

Local scans.

One command, no signup, no keys. Same engine everywhere else.

$ npx @kelp-security/cli scan .
Quickstart →
02 · GitHub Action

Gate every PR.

Fails the check when a PR introduces new critical or high findings.

uses: kelp-security/
   kelp-action@v1
Action docs →
03 · Hosted app

Continuous scan.

Connect a repo once. Dashboards, history, chat per finding, fix PRs.

# sign in with GitHub
Open hosted app →
§ 03Questions

What people ask first.

01

Is Kelp free?

The engine, CLI, and GitHub Action are MIT-licensed and free forever. The hosted app at kelp.build is free while it's small — a paid tier may show up later, but the code stays open.

02

Do I need to sign up for anything?

No. `npx @kelp-security/cli scan .` works with zero configuration. `uses: kelp-security/kelp-action@v1` runs in CI without any Kelp account. Sign in only matters for the hosted app's continuous scanning.

03

Does Kelp catch every vulnerability?

No. Kelp covers a small set of high-impact classes with high precision — the ones that actually breach AI-generated apps. Real fixes for those beat a forty-page report of maybes.

04

How do I extend Kelp?

New secret patterns go in packages/core/src/scanners/secrets.ts. New backends (Firebase, Convex) follow docs/ADAPTERS.md. Contributor walkthrough in CONTRIBUTING.md.

Scan your app before your users do.

$ npx @kelp-security/cli scan .