ubon
Version:
Security scanner for AI-generated apps (Cursor, Lovable, Windsurf, v0). Catches hardcoded secrets, prompt injection, hallucinated imports, Server Actions / Edge runtime mistakes, and the vibe-coded vulnerabilities traditional linters miss.
25 lines • 1.15 kB
TypeScript
import type { Scanner, ScanOptions } from '../types';
/**
* Profile registry — single source of truth for "what runs under this profile".
*
* Each entry is a small factory that takes the resolved scan options (so we can
* gate expensive scanners with `--fast`) and returns the ordered scanner list.
*
* No new scanner classes are introduced per profile; everything composes from
* the existing scanner pool. To add a new profile, just register a new entry.
*/
export type ProfileName = NonNullable<ScanOptions['profile']>;
interface BuildContext {
fast: boolean;
}
export type ProfileBuilder = (ctx: BuildContext) => Scanner[];
export declare const PROFILES: Record<ProfileName, ProfileBuilder>;
/**
* Profiles that existed in v2.x and were removed in v3.0.0. Kept here so
* `--profile python|rails|vue` produces a clear error pointing at the
* migration guide instead of silently falling back to `auto`.
*/
export declare const REMOVED_PROFILES: Record<string, string>;
export declare function resolveScanners(profile: ProfileName | undefined, fast: boolean | undefined): Scanner[];
export {};
//# sourceMappingURL=profiles.d.ts.map