Plattformen bakom HolgerAI
Kontroller och resultat. Senaste körning: 9 oktober 2026, 15:04 till 15:06 UTC.
HolgerAI:s bolag körs på en egen AI-plattform: kodagenter som arbetar i kö, ett lokalt sökminne, en lokal språkmodell och en grind som stoppar personuppgifter innan text når en molnmodell. Inget skickas, publiceras eller betalas utan ett uttryckligt godkännande.
Den här sidan visar inte vad plattformen påstås klara, utan vad de automatiska kontrollerna gav vid senaste körningen. Varje rad länkar till den oredigerade utdatan. Grinden går att prova i webbläsaren på holgerai.com/grind, och en agent bakom samma grind svarar på frågor om allt här på holgerai.com/fraga.
Kontroller
| Kontroll | Vad den visar | Resultat |
|---|---|---|
| Policy as Code i klustret Kyverno | Kyverno nekar poddar som körs som root, saknar fast avbildsversion, kan eskalera rättigheter, monterar värdens filsystem eller nätverk, eller saknar resursgränser. En korrekt pod släpps in. | 10 av 10 utdata |
| Inloggning och roller Keycloak, Argo CD | Keycloak med OIDC styr Argo CD. Läsare får titta men inte ändra, den som saknar grupp ser ingenting, administratörer får synka. Utan token eller med fel lösenord: ingen åtkomst. | 8 av 8 utdata |
| Säkerhetslarm Wazuh | Egna Wazuh-regler träffar rätt händelse med rätt nivå: stoppad text, försök att läsa klientfiler, grinden nere, upprepade nej, certifikat, budgetstopp, nödstopp. Kaosprovets planerade stopp får låg nivå så att de riktiga larmen behåller sin betydelse. En vanlig händelse ger inget larm. | 17 av 17 utdata |
| Statisk granskning av Helm-chart Checkov | Checkov granskar manifesten innan något driftsätts. Fem kontroller är medvetna undantag, vart och ett med skäl i koden. | 171 godkända, 0 fel utdata |
| Infrastruktur som kod Terraform | Terraform validerar och jämför koden mot den faktiska miljön. Planen visar inga skillnader, alltså ingen manuell ändring som koden inte känner till. | Ingen avvikelse utdata |
| Härdning av Linux-maskinen Ansible | Ansible i kontrolläge mot maskinen som kör klustret: automatiska säkerhetsuppdateringar, kärnparametrar, SSH bara med nyckel och utan root, auditd, Wazuh-agent. Inget behövde ändras. | 13 ok, 0 ändringar utdata |
| Datakvalitet dbt, Databricks | dbt-tester på driftdata i Databricks: unika och ifyllda nycklar i varje tabell, från rålager till rapportmodeller. | 22 av 22 utdata |
| Klustrets läge k3s, Argo CD | Fyra policyer i tvingande läge, appen synkad från Git och frisk, alla poddar igång. | Synkad, frisk utdata |
| Grinden i molnet Cloud Run, Vertex AI | Samma personuppgiftsregler framför Gemini på Cloud Run. Utan inloggning nekas anropet, ren text når modellen, text med personnummer, organisationsnummer eller IBAN stoppas före modellen. | 4 av 4 utdata |
| Kaosprov: grinden dödas med flit kaosprov.py, launchd, Wazuh | Grinden stängs på riktigt. Kroken ska neka varje utgående anrop medan den är nere, launchd ska starta om den, personuppgifter ska stoppas och ren text släppas efteråt, nödstoppet ska neka allt och stoppa nattskiftet tills det släpps, och händelsen ska nå SIEM:en som ett larm. Körs varje natt 04:30; faller ett steg går det till mobilen. Senaste resultatet syns på Kontoret. | 9 av 9 utdata |
Medvetna undantag i Checkov
CKV_K8S_21: Namnrymden sätts vid driftsättning av Argo CD. Checkov granskar utan namnrymd.CKV_K8S_40: Postgres-avbilden äger sina data som användare 999. Värdkonflikter stoppas i stället av Kyverno, som nekar värdmonteringar, värdnätverk och privilegierade poddar.CKV_K8S_15, CKV_K8S_43: Appens avbild byggs lokalt och finns inte i något register, så den hämtas aldrig och har ingen registerdigest. Alla andra avbilder är låsta på digest.CKV_K8S_35: Appen läser databaslösenordet som miljövariabel från en Kubernetes-hemlighet. Databasen läser redan sitt lösenord från fil; appen står på tur.
Mot standarder
Plattformen är kartlagd mot ISO 27001 Annex A, kontroll för kontroll. Av 93 kontroller är 5 uppfyllda, 50 delvis uppfyllda och 32 saknas helt, 6 är inte tillämpliga. Den är också kartlagd mot NIST SP 800-171. Det är en egen kartläggning, ingen certifiering.
Vad som inte finns
- Allt körs på en nod. Det finns ingen redundans med flera noder eller geografisk spridning, så ett maskinfel stoppar tjänsterna tills de startats om.
- Kontrollerna på sidan körs på begäran, inte efter ett schema, med ett undantag: kaosprovet körs varje natt. Säkerhetslarmen i Wazuh går dygnet runt.
- Ingen extern granskning eller penetrationstest har gjorts.
Hotmodell och beslut
Hotmodellen: elva hot mot plattformen, kontrollen mot vart och ett, beviset för att den fungerar, och det som fortfarande saknas. Arkitekturbesluten: tio beslut med läge, beslut och följder, inklusive de som visat sig fel.
Observerbarhet
Grinden exponerar antal skanningar, antal stopp och skanningstid som histogram till Prometheus. Grafana visar p95 och p50 över ett glidande dygn, skanningar och stopp per timme och om grinden är uppe. En vakt i Hub läser p95 ur Prometheus var femtonde minut och larmar till mobilen över 5 sekunder, halva krokens tidsgräns. Infört efter incidenten 3 och 4 oktober.

Tavlan hämtas ur Grafana via bildrenderaren en gång i timmen och läggs i samma hink som Kontorets siffror. Mätningen började 9 oktober 2026 på kvällen, så de första dygnen är glesa.
Incidenter
3 och 4 oktober 2026: grinden som "låg nere" utan att ligga nere. Tre anrop stoppades för att kroken gav upp efter 3 sekunder medan grinden fortfarande skannade. Ingen data lämnade huset. Postmortem med tidslinje, mätningar, åtgärder och det som fortfarande saknas.
Öppen källkod
- svenska-pii: reglerna för svenska personuppgifter som paket, med kontrollsiffror och ett jämförelsetest mot Presidio.
- agent-permit: godkännande per exakt åtgärd för AI-agenter, som krok i Claude Code och som MCP-server, med godkännande från mobilen, nödstopp som spärrar allt tills en människa släpper det, och en logg som avslöjar ändringar.
- Grinden: personuppgiftsreglerna att prova i webbläsaren.
- Kontoret: agenterna i drift, med siffror som hämtas från plattformen var femte minut.
Byggd och driven av HolgerAI AB, Solna. holgerai.com