import { Shield, Eye, Key, RefreshCw, FileCheck } from 'lucide-react' const ITEMS = [ { icon: Eye, color: '#34d399', title: 'Trajectory scanning', body: 'Every thought and tool call your agent generates is intercepted in-process. Nothing executes before Bartholomew has read it.', }, { icon: Key, color: '#38bdf8', title: 'Credential masking', body: 'API keys, tokens, and secrets matching 40+ regex patterns are automatically scrubbed and replaced with [REDACTED] before they can leak.', }, { icon: Shield, color: '#a78bfa', title: 'OWASP LLM threat detection', body: '7-class OWASP threat model runs as compiled Go — prompt injection, denial-of-wallet, training-data poisoning and more, with <2 μs latency.', }, { icon: RefreshCw, color: '#fbbf24', title: 'Epistemic Contradiction Engine', body: 'Detects logical contradictions across multi-step reasoning chains. Stops agents from acting on beliefs they have already disproved.', }, { icon: FileCheck, color: '#fb7185', title: 'SHA-256 attestation', body: 'Every scanned trajectory gets a cryptographic proof — signed, chained, and optionally synced to Firestore. Immutable audit trail.', }, ] export default function WhatIsBartholomew() { return (
{/* Header */}
What is Bartholomew?

An always-on security layer
{' '}for every AI agent you run

Most AI security tools check logs after the fact. Bartholomew runs inline, before execution — so threats are stopped, not just reported.

{/* Cards */}
{ITEMS.map((item) => { const Icon = item.icon return (

{item.title}

{item.body}

) })} {/* Pitch card */}
Zero-dependency

Runs everywhere — including air-gapped

Single Go binary. No Python, no npm, no cloud API calls required. Deploy to SCIF networks, K8s, Docker, or bare metal.

Explore Threat Simulator
) }