// ╔═══════════════════════════════════════════════════════════╗ // ║ KENSAI WEB · Narrative arc · Part 2 ║ // ║ Plan · Stakes · After ║ // ╚═══════════════════════════════════════════════════════════╝ // ── 3. Plan · "Three moves" ───────────────────────────────── const PlanSection = () => (
§ 04 The path · three moves From onboarding to working rhythm
Three moves
to ship security like a product.
{[ { n: '01', day: 'Step 1', t: 'Connect your surface', d: 'One read-only AWS / GCP / Azure role, your DNS, your repos. We map every asset — known, shadow, abandoned — and build the graph.', tag: 'No agents. No code change.' }, { n: '02', day: 'Step 2', t: 'Watch the hunts run', d: 'The platform keeps scanning and organizing work so teams spend less time sorting noise.', tag: 'Signal first.' }, { n: '03', day: 'Step 3', t: 'Ship the fix', d: 'Critical issues should arrive with enough context that teams can move from finding to action fast.', tag: 'Fix faster.' }, ].map((m, i) => (
{m.n} {m.day}
{m.t}
{m.d}
→ {m.tag}
))}
One read-only key. One Slack channel. A calmer Monday.
Start the path → Free surface scan
); // ── 4. Stakes · "The cost of waiting" ────────────────────── const StakesSection = () => (
§ 05 The cost of waiting Why delay hurts
The breach
you don't see
is the one you'll fund.
{[ { n: 'Noise', l: 'Fragmented security work slows response and decision-making.', tag: 'Operational drag' }, { n: 'Delay', l: 'The longer context stays scattered, the longer real issues sit unresolved.', tag: 'Compounds quietly' }, { n: 'Guessing', l: 'Teams lose time when they cannot see severity, ownership, and proof in one place.', tag: 'Avoidable' }, { n: 'Drift', l: 'Public messaging should not outrun what the product can actually show.', tag: 'Credibility cost' }, { n: 'Focus', l: 'The goal is less theater, more signal, and faster follow-through.', tag: 'What changes' }, ].map((row, i) => (
{row.n}
{row.l}
{row.tag}
))}
Every quarter you keep guessing is a quarter your attackers spend learning.
Stop guessing →
); // ── 5. After · "What changes by Monday" ──────────────────── const AfterSection = () => (
§ 06 The week after What the week looks like once the workflow tightens up
From noise
to signal,
with tighter signal.
● Before · the week you have now
{[ ['MON 09:14', 'Triage another pile of overnight scanner alerts'], ['MON 14:30', 'Severity review drifts into duplicate cleanup again'], ['TUE 11:00', 'Vendor call about another noisy tool'], ['WED', 'Another pen-test report lands. Some findings look painfully familiar.'], ['THU', 'Researcher emails directly. Severity gets disputed for days.'], ['FRI 17:55', 'Hand off the on-call. The list is longer than Monday.'], ['SUN 22:11', 'Refresh news. Hold breath.'], ].map(([t, d], i) => (
{t}
{d}
))}
● After · with Kensai
{[ ['MON 09:14', 'Open Slack. A short queue. Real findings. Clear next steps.'], ['MON 11:00', 'Merge two. Push one into the next review step.'], ['TUE', 'Quarterly board prep · the dashboard is the report.'], ['WED', 'Pen-test scope narrows to the deltas instead of repeating old noise.'], ['THU', 'Researchers ship clean reports through your manifest. No email back-and-forth.'], ['FRI 16:30', 'Close Slack. Calendar is clear.'], ['SUN', 'Saturday and Sunday were Saturday and Sunday.'], ].map(([t, d], i) => (
{t}
{d}
))}
You came into security to protect something. We built Kensai so you can.
Book your walkthrough → Get a free surface scan
); Object.assign(window, { PlanSection, StakesSection, AfterSection });