Vitec AI Workshop
8. april 2026
Stian Håklev
Foredrag
Vibe-koding med Claude Code
8000+ sesjoner, en haug med feil, og noen gode mønstre
→KI i teamet og i produktet
Fra individuell til team — og fra API-kall til agentiske systemer
→Prosjektidéer for workshop
🏠
Boligannonsegenerator
Vitec Next har allerede alle de strukturerte dataene — adresse, areal, antall rom, byggeår, fasiliteter. En LLM kan skrive en engasjerende boligannonse på sekunder, tilpasset boligtypen og området.
Tilnærming: Start med en enkel prompt som tar strukturerte felter og genererer en annonsetekst. Legg til few-shot eksempler med gode annonser fra Finn.no for å få riktig tone. Test med 20+ eiendommer og iterer på prompten.
Utvidelser: Tilpass tonen etter boligtype (leilighet vs. enebolig vs. hytte). Generer flere varianter megleren kan velge mellom. Legg til områdebeskrivelse basert på nærhet til skoler, butikker og kollektivtransport.
Laveste terskel: Dette er et rent LLM API-kall med strukturert input — ingen kompleks arkitektur nødvendig. Perfekt første KI-prosjekt.
🔍
Naturlig språk eiendomssøk
Redfin lanserte “Ask Redfin” — naturlig språk søk etter boliger. Zillow har lignende. Konseptet: brukeren skriver hva de leter etter i fritekst, LLM-en parser intensjonen til strukturerte filtre, og søkeresultatene presenteres som vanlig.
Arkitektur: LLM mottar brukerens spørsmål + tilgjengelige filterfelter som JSON Schema → returnerer strukturerte filtre via structured output → disse kjøres mot databasen → resultatene presenteres med en naturlig oppsummering.
Eksempler på spørringer: “Eneboliger i Hamar med minst 4 soverom og hage”, “Leiligheter nær Majorstuen under 5 mill”, “Boliger som har ligget ute mer enn 30 dager”.
Håndterer også subjektive kriterier: “Rolig nabolag” kan mappes til avstand fra hovedveier. “Familievennlig” til nærhet til skoler og parker.
📄
Dokumentuttrekk fra tilstandsrapporter
Tilstandsrapporter er 20-40 sider med standardisert men ustrukturert informasjon. En LLM kan trekke ut nøkkeldata og presentere det i et format som er umiddelbart nyttig for megler og kjøper.
Tilnærming: Parse PDF til tekst (eller bruk vision API for skannet dokument) → LLM trekker ut tilstandsgrader per bygningsdel (TG0-TG3), avvik, årsak, konsekvens, og estimerte utbedringskostnader → strukturert JSON ut.
Utvidelser: Sammenlign med lignende boliger (“er dette normalt for en bolig fra 1985?”). Generer en kjøpervennlig oppsummering. Flagg kritiske funn (TG3, fukt, asbest). Beregn total estimert vedlikeholdskostnad.
Samme mønster for: Grunnboksutskrifter, reguleringsplaner, salgsoppgaver, takstrapporter, energimerking — alle har strukturert informasjon i ustrukturerte dokumenter.
🔌
MCP-server for Next
Next HUB har allerede 50+ API-integrasjoner. En MCP-server er én integrasjon til — men denne lar KI-verktøy spørre mot plattformen direkte. Megleren kan spørre sin AI-assistent og få data fra Next uten å logge inn.
Eksempler: “Vis alle boliger som har ligget ute over 30 dager uten visning siste uke”, “Oppsummer alle bud på Parkveien 7”, “Hvem har jeg ikke fulgt opp på 14 dager?”
Teknisk: MCP-servere kan skrives i C# med ModelContextProtocol NuGet-pakken. Eksponer 3-5 verktøy (søk boliger, hent kunde, vis aktivitet) som wrapper rundt eksisterende Next API. Fungerer med Claude Code, ChatGPT, Cursor og 200+ andre verktøy.
Strategisk verdi: MCP er for KI det USB var for maskinvare — en universell kobling. Ved å gjøre Next MCP-klar, posisjonerer dere plattformen for KI-økosystemet.
📱
Personlig mobilapp
Har du noen gang ønsket deg en app som gjør akkurat det du vil? Nå kan du bygge den. Og når du bygger AI inn i den, får du vanvittig funksjonalitet.
Eksempel: Ta bilde av en bok i bokhandelen → flott UI som viser anmeldelser, sammendrag og lignende bøker. Eller en treningsapp som analyserer fremgangen din og foreslår justeringer. Eller en planteidentifikator som gir stell-tips.
Du trenger ikke Apple Developer-lisens — bruk Expo med development builds på din egen telefon. Last ned et av Stians Expo-repos som utgangspunkt, så slipper du all boilerplate. Claude Code kan bygge hele appen mens du beskriver hva du vil ha.
AI-integrasjon: Bruk kameraet for bilde-analyse (vision API), mikrofonen for tale, og Vercel AI SDK for streaming chat. Expo gir deg tilgang til alt av native funksjonalitet — push-varsler, GPS, akselerometer, helsedata.
🎓
Visuell, interaktiv læring
Velg noe du har lyst til å lære: en sorteringsalgoritme, TCP-handshake, B-tree, Raft consensus, Fourier-transformasjoner — hva som helst. Be Claude om å researche og produsere en visuell, interaktiv demo.
Tilnærming: Start med å be Claude lage en HTML-side med animasjoner og interaktive kontroller. Iterer til du har noe som faktisk hjelper deg forstå konseptet. Enkeltfil HTML med inline CSS/JS gjør det lett å dele — bare åpne i nettleseren.
Bruksområder: Onboarding av nye kollegaer, presentasjoner for kunder, intern kunnskapsdeling. Be Claude bruke canvas for animasjoner, range inputs for parametere brukeren kan justere, og step-by-step kontroller for å gå gjennom en algoritme.
💬
Bygg din egen AI-chat
En AI-chat som kan gjøre ting er mye mer nyttig enn en som bare svarer. Med tool calling kan du la AI-en hente data, kjøre operasjoner og presentere resultater — alt i en naturlig samtale.
Har du et system? Eksponer noe av dataen eller funksjonaliteten som tools. F.eks. Next-plattformen der AI-en kan slå opp boliger og kunder, et bookingsystem der den sjekker visningstider, eller Jira/Azure DevOps der den oppsummerer status.
Har du ikke et system? Bruk offentlige API-er som tools — Yr (vær), Entur (rutetider), Wikipedia, eller hva som helst med et REST API. Vercel AI SDK gjør det veldig enkelt å sette opp streaming chat med tool use — du definerer tools som TypeScript-funksjoner med Zod-schema.
Arkitektur: Next.js + AI SDK er den raskeste veien. Du får streaming, tool calling, og en ferdig chat-UI-komponent. Hele oppsettet er ~50 linjer kode for en fungerende prototype.
🔬
LLM-evaluering
Velg en oppgave der kvalitet er subjektiv og vanskelig å evaluere manuelt. F.eks.: klassifisere kundehenvendelser, skrive produktbeskrivelser, rangere artikler, eller kategorisere støttehenvendelser.
Prosessen: Definer evalueringskriterier → kjør flere modeller (GPT-4o, Claude, Gemini) → la en sterkere modell evaluere output fra de andre → iterer på prompten til du får best mulig resultat. Dette er kjernen i “evals” — den viktigste ferdigheten for AI-produktutvikling.
Praktisk verdi: Evalueringer er det som skiller “dette funker litt” fra “dette funker bra”. Lær mønsteret her, og du kan bruke det i ethvert AI-prosjekt etterpå.
📸
AI Memories / Foto-prosjekt
Kan du gjenskape Facebook Memories eller Apple Memories? Gi AI-en tilgang til kamerarullen din, la den velge de mest interessante bildene, og bygg en tidslinje med tekst og kontekst.
Tilnærming: Bruk vision API til å analysere bilder — finn de mest visuelt interessante, grupper dem etter tema eller tid, og generer beskrivelser. Bygg en pen HTML-tidslinje eller en mobilapp med Expo.
Ekstrapoeng: Koble til Suno for å generere en custom sang til minnene. Eller bruk TTS til å lage en voice-over som forteller historien.
📊
Dashboards og analyse
Har du tilgang til logger, Datadog, Google Analytics, Mixpanel, eller noe annet analytics-system? Få dataen til Claude og la den bygge custom dashboards og visualiseringer som virkelig svarer på spørsmålene du har.
Tre veier til data: Eksporter som CSV/JSON, gi Claude API-tilgang direkte (f.eks. via environment-variabler), eller bygg en MCP-server som wrapper API-et — da kan Claude hente data on-demand mens den bygger dashboardet.
Claude er fantastisk til å finne mønstre i data du ikke visste om. I motsetning til Grafana/Metabase slipper du config — du bare beskriver hva du vil se, og får en self-contained HTML du kan åpne direkte. Iterer: “kan du legge til en tidslinje?”, “hva om vi grupperer per uke?”.
Eksempler: API-responstider med anomali-deteksjon, brukerreiser som Sankey-diagram, feilrater korrelert med deploys, boligsalgsstatistikk per område, gjennomsnittlig tid fra visning til akseptert bud.
🧩
Chrome Extension
Chrome-utvidelser er enklere enn du tror — det er bare HTML, CSS og JavaScript med et manifest. Claude kan bygge en fra scratch på minutter, og du tester den umiddelbart i nettleseren.
Idéer: Fjern irriterende elementer fra sider du bruker daglig. Legg til mørk modus der det mangler. Auto-fylle skjemaer. Oversett tekst inline. Legg til tastatursnarveier. Endre default-oppførsel på interne verktøy.
Med AI: Legg til en kontekstmeny som oppsummerer markert tekst, oversetter den, eller forklarer kode — via et API-kall til Claude/GPT direkte fra utvidelsen.
Oppsett: chrome://extensions → Developer mode → Load unpacked. Ingen Chrome Web Store nødvendig. Du har en fungerende utvidelse på under en time.
🎙️
Voice-chat med AI
LiveKit har en open source-plattform for sanntids-audio/video, inkludert AI-agenter. Du kan sette opp en voice-chat der du snakker naturlig med en AI — lav latency, naturlige pauser, og avbrytelser fungerer.
Use cases: Kundeservice-demo for en klient, språklæring med en AI-tutor, intervju-trening, tilgjengelighetshjelp, eller en morsom demo å vise frem på fredag.
Oppsett: LiveKit har et Python agent framework med eksempler som fungerer ut av boksen. Koble til OpenAI Realtime API for ende-til-ende voice, eller bygg en STT → LLM → TTS pipeline for mer kontroll. Gratis tier er nok for prototyping.
Kombiner med tools: Gi voice-agenten tilgang til tools — da kan den slå opp informasjon og kjøre handlinger mens dere snakker. Det er her det virkelig blir imponerende.
⚡
Automatiser arbeidsflyten din
Tenk på hva du gjør manuelt hver dag eller uke. Timeløring, statusrapporter, Jira-oppdateringer, PR-beskrivelser, deploy-prosedyrer, kode-templates. Bygg en /skill som gjør det for deg — på et par minutter.
Skills er Markdown-filer i .claude/skills/ som definerer en prompt + instruksjoner. Du skriver hva du vil at Claude skal gjøre, og det blir en slash-kommando. Hooks er shell-kommandoer som kjøres automatisk ved hendelser — f.eks. etter hver commit, etter at Claude leser en fil, eller før den kjører en bash-kommando.
Eksempler: /weekly-report som genererer ukesstatus fra git log og Jira. /pr som lager PR med god beskrivelse. En hook som automatisk kjører linting etter filendringer. En skill som genererer test-data basert på skjemaer i prosjektet.
Deling: Skills kan installeres fra en URL med /install-skill. Lag noe nyttig for teamet og del det — da har alle tilgang til det som en slash-kommando.
🕵️
Scrape, filtrer og oppsummer
Velg noe du vil holde øye med: boligmarkedet i ditt område, Hacker News, konkurrenters produktsider, jobbannonsering innen ditt felt, eller nye forskningsartikler.
Pipeline: Scrape med Playwright eller cheerio → filtrer med AI (“er dette interessant for meg?”) → oppsummer det viktigste → send via e-post, Slack, eller ntfy push-varsler til telefonen.
Tilnærming: Start med et enkelt Node/Python-script som scraper én kilde. Kjør det lokalt først og se at outputen er nyttig. Legg det på en cron-jobb eller GitHub Action for daglig kjøring.
AI-twist: Bruk Gemini Flash (billig og rask) for filtrering av hvert element. La en sterkere modell lage den endelige daglige oppsummeringen. Totalkostnad: noen øre per dag.
💰
Personlig data-analyse
Du sitter sannsynligvis på hauger av personlig data du aldri har analysert ordentlig. Eksporter som CSV og la Claude bygge noe nyttig — alt kjører lokalt, dataen forlater aldri maskinen din.
Eksempler: Bankutskrift → kategorisering av utgifter med trendanalyse og budsjett-tracking. Strava/Garmin-eksport → treningsinnsikter og belastningskurver. Goodreads-eksport → lesevanermønstre. Spotify-historikk → lyttemønstre over tid.
Tilnærming: Gi Claude CSV-filen og be om analyse. Den finner mønstre du ikke visste om. Be deretter om en self-contained HTML-visualisering med Chart.js — du får en interaktiv dashboard du kan åpne i nettleseren.
Neste steg: Bygg et script som automatisk henter ny data og oppdaterer dashboardet. Eller bygg en liten webapp der du kan laste opp filer og få AI-analyse on the fly.
🛡️
AI kode-review for teamet
En AI som kjenner teamets coding standards, arkitektur og vanlige fallgruver kan fange problemer før de når code review. Raskere feedback-loop, færre review-runder, og konsistent kvalitet.
Enkel variant: En Claude Code hook som kjører ved commit og gir tilbakemelding direkte i terminalen. Avansert variant: En GitHub Action som kommenterer på PRs automatisk med kontekstuelle forbedringsforslag.
Nøkkelen: Definer teamets konvensjoner i en CLAUDE.md som review-boten leser. Arkitekturvalg, naming conventions, feilhåndteringsmønstre, test-forventninger. Start smalt (bare sjekk étt mønster) og utvid gradvis.
Kombiner: La AI-reviewen kjøre etter linting og typesjekk, slik at den fokuserer på logikk, arkitektur og lesbarhet — ikke ting maskinen allerede fanger.
Stians verktøy
Søk i samtalehistorikk på tvers av alle Claude Code-sesjoner. Hybrid semantisk + FTS5 søk, filtrering på prosjekt/branch/dato.
TUI-dashboard for parallell utvikling med Claude Code. Oversikt over samtidige sesjoner, live logs, task management.
Claude Code-skill for iterativt design. Genererer HTML-mockups, viser dem i fullskjerm-karusell med tastatur-stemming og notater for strukturert feedback. Blogginnlegg →
Verktøykasse for datakuratering: embeddings, søk, nyhetsvurdering og clustering. Tre underpakker (amygdala, hippocampus, cerebellum). Delt backend for claude-chat-search og andre prosjekter.
Gjør pull requests om til interaktive, fortalte gjennomganger. Arkitekturdiagrammer, annotert kode, og mulighet til å stille spørsmål om enhver seksjon.
Tale-til-tekst for macOS. Trykk en hurtigtast, snakk, tekst dukker opp tegn for tegn. Soniox streaming STT med Gemini etterbehandling. Hopper automatisk over etterbehandling i AI-verktøy.
Automatiserte eksperimentløkker inspirert av Karpathys “700 eksperimenter på 48 timer”. Grid-modus med Optuna TPE for parametersveip, kreativ modus for LLM-foreslåtte strukturelle endringer.
Adaptiv kunnskapskartlegging. Genererer en interaktiv vurderingsside, bruker bayesiansk trosforplantning for å kartlegge hva du kan, deretter lager en personlig forklaring. Bygget på limbic.
Generer interaktive HTML-evalueringssider for menneskelig kvalitetsvurdering. Vurder elementer, sammenlign A/B, kalibrer terskler. Bygget på limbic.
Kuratert samling av 29 produksjonstestede Claude Code skills, hooks, agenter og mønstre fra 8000+ sesjoner.
Prosjekter
Expo mobilapp for inkrementell lesing. E-post-integrasjon som web clipper, Twitter-bokmerker med tale-transkripsjon, AI claim extraction. Eksempel på Chrome Extension-integrasjon.
Expo mobilapp for arabisk med spaced repetition (FSRS). Bruker Claude Code som sub-agent for innholdsgenerering, Gemini for vision, og ElevenLabs for talesyntese. Blogginnlegg →
Nordisk scenekunstarkiv. 47MB SQLite i nettleseren via sql.js WASM. Eksempel på Claude som sub-agent (claude -p) og systematisk prosessering av store datamengder.
9 106 politiske forslag fra Grønt parti analysert. Eksempel på systematisk prosessering med en kombinasjon av LLM-er og semantiske embeddings. SvelteKit + UMAP-visualisering.
10 312 påstander fra 10 bøker (1977–2024) ekstrahert, deduplisert og konsolidert. 656 klynger på tvers av bøker viser argumentutvikling over 47 år. Bygget med limbic + Gemini Flash.
Data i skala · Limbic