Agents

    Threat modeling that ranks what's actually at risk

    Meet Metis

    The Threat Model Engineer profiles every repo you own: what it exposes, who can reach it, what it holds. Every finding then arrives ranked by what it actually threatens.

    Your queue, already sorted

    Every repo gets one of four tiers: Crown Jewel, Key Asset, Standard, Peripheral. Findings inherit it.

    Most of your repos are not the problem

    A fraction hold customer data or face the internet. Knowing which means effort goes where a breach would hurt.

    A threat model you can defend

    Every attribute shows the file that grounds it, so the model holds up with a developer, an auditor, or your board.

    Nothing new to set up

    It reads your repos through the GitHub or GitLab connection Konvu already has. No clone, no CI job.

    Why severity is not enough

    The same CVE, two different answers

    A critical CVE in an internet-facing service holding customer data is an incident. The identical finding in a dormant internal tool is a backlog item. Severity scores the vulnerability. It says nothing about what that vulnerability threatens.

    CVE-2026-4171 · prototype pollution · 2 affected repositories
    CROWN JEWELpayments-api

    Exploitable, confirmed. Internet-exposed, holds customer data.

    Fix now · Remediation Engineer opened PR #318

    PERIPHERALlegacy-admin-tool

    Exploitable, confirmed. Internal only, no customer data, dormant 14 months.

    Backlog · no page, no ticket on the developer

    One finding, two answers. The asset decides which.

    repositories / payments-api · threat profile
    CROWN JEWELscore 87 / 100surface: api

    Crown Jewel: internet-exposed production surface holding customer data.

    Exposure

    Internet exposedyesdetected · deploy/k8s/ingress-public.yaml

    Access

    Auth mechanismoauthdetected · src/auth/oauth2/

    Blast radius

    Tenancymulti_tenantdetected · README: "per-tenant ledgers"

    Stakes

    Customer datayesdetected · src/accounts/, src/subscribers/
    Cloud credentialsunknownguessed · confidence 0.3

    Attackers

    Plausible attackersunauthenticated, authenticated_userdetected · public REST routes

    Runtime

    Runtime contextsproduction, cidetected · .github/workflows/deploy.yml

    Detected values cite a path. Guesses are capped and never outrank them.

    What it reads

    Six questions, asked of every repository

    Exposure, access, blast radius, stakes, plausible attackers, and where the code runs. Each answer cites the path, README line, or manifest that grounds it, so the tier is something your team can argue with.

    At estate scale

    Thousands of repos, ranked in one pass

    Dormant repos are settled from activity data Konvu already has, before any model call. The expensive analysis spends its time on the repos that could change a decision.

    inventory · 1,284 repositories profiled
    CROWN JEWEL87payments-apiinternet-exposed · customer data · secrets
    CROWN JEWEL84checkout-webinternet-exposed · web UI · multi-tenant
    KEY ASSET68billing-jobsproduction · cloud credentials
    KEY ASSET61ops-consoleinternal network · production access
    STANDARD43design-systemships to customers · no data
    PERIPHERAL10legacy-admin-toolinternal only · no activity in 14 months

    23 Crown Jewel · 96 Key Asset · 402 Standard · 763 Peripheral

    See your estate ranked

    Connect GitHub or GitLab. The Agents start triaging against what your repos are actually worth.

    Frequently asked questions