Copenhagen Software Lab

Codex og Claude Code hos CSL

Sådan arbejder vi med AI‑agenter i CSL

Data ligger i en . Codex og Claude Code har ingen direkte adgang. CSL MCP Server afgør, hvad der må komme tilbage.

Adgang og konsekvens

En agent skal vide nok – og ikke mere.

Første gang man giver Claude Code eller Codex lov til at læse filer, kalde integrationer og køre kommandoer, sker der noget. Den holder op med at foreslå næste skridt og begynder at tage dem. En opgave, der før krævede fem runder frem og tilbage, bliver løst i ét hug. Det er hele pointen med at bygge agenter i stedet for at chatte.

Den samme adgang afgør bare også, hvor stor en fejl kan nå at blive. Når agenten kan læse, skrive og kalde, kan en misforståelse forlade samtalen og lande et sted, hvor den bliver til data. Den henter oplysninger, den ikke burde se. Den opdaterer et felt, ingen havde bedt om. Den sender noget af sted. Og det er sjældent, fordi modellen vil noget ondt — den vil gerne hjælpe, og hjælpsomhed er en overraskende effektiv måde at rydde en tabel på.

Derfor er »husk nu at være forsigtig« i systemprompten ikke en sikkerhedsmekanisme. Det er en venlig opfordring, og den bliver fulgt lige indtil den ikke bliver det. Vi er glade for opfordringer. Vi tør bare ikke bygge adgangen til et lønsystem baseret på dem.

Så vi behandler adgang som en del af arkitekturen, på linje med datamodellen. Agenten får ikke hovednøglen til hele bygningen, men nøgler til de rum, opgaven faktisk handler om. Vi skelner mellem medarbejderens identitet og agentens mandat. Vi udleverer kun de felter, opgaven kræver — ikke hele rækken, fordi den nu engang lå der. Politikken håndhæves på serveren, før der læses data eller udføres en handling, og ikke i en instruktion, modellen selv skal huske.

Det giver os et mere afgrænset arbejdsmiljø, hvor følsomme oplysninger ikke automatisk bliver en del af agentens kontekst, blot fordi de findes i vores systemer.

Nedenfor viser vi, hvordan den grænse ser ud i CSL’s egen platform.

Uden for grænsen

Codex / Claude Code

Forstår opgaven gennem de skills, vi installerer. Har ingen direkte adgang til databasen.

Sikkerhedsgrænsen

Kontrollerer identitet, rolle, kundepolitik og værktøj, før data læses eller en handling udføres.

Inden for grænsen

Neo4j ligger på LUKS2-krypteret storage og kan kun nås fra den centrale service.

Kun det godkendte kommer tilbage

Agenten modtager den tilladte kontekst, et dokument eller en begrænset kvittering – aldrig database- eller integrationscredentials.

Agenten ser

  • Medarbejderens opgave
  • De skills, der er installeret til opgaven
  • Det output, den centrale politik godkender

Agenten ser ikke

  • Databasen eller dens credentials
  • Integrationernes secrets
  • Mere kontekst end workflowets tillader

Internt arkitekturoverblik · 17. september 2026

Agentlag / aktiv installation

Ét plugin samler 23 skills og fire MCP-endpoints

Skills fortæller Codex og Claude Code, hvordan opgaven skal forstås og udføres. Pluginet csl 1.8.0 kobler desuden agenten til fire OAuth-beskyttede MCP-endpoints: Core, CRM, Legal og Secure Data.

10 skills · Core MCP til fakta

Fælles skills

Brand, verificeret virksomhedsviden, tekst og produktion af CSL-artefakter.

  • csl-brandBrandretning og fempunktstest.
  • company-knowledgeFakta, beslutninger og kendte videnshuller.
  • communicationDansk tekst, argument og kanal.
  • csl-designVisuel beslutningsproces og QA.
  • csl-webWebimplementering og browserkontrol.
  • csl-slidesPræsentationer og PowerPoint.
  • csl-dokumenterRapporter, tilbud, DOCX og PDF.
  • csl-imagegenRasterbilleder til CSL-artefakter.
  • csl-transskriberingDanske lydoptagelser til tekst.
  • proposal-writingProposalstrategi, kildeport og proces.

MCP: Aktuelle fakta hentes via /mcp/core. Resten er instruktioner og viden.

2 skills · 1 MCP-endpoint

Core

Medarbejdere, fagprofiler og autoriseret virksomhedsviden.

  • manage-employeesMedarbejdere og administrativ status.
  • manage-professional-profilesFagprofiler fra CV eller LinkedIn.

MCP: HTTP · /mcp/core · Microsoft Entra OAuth

6 skills · 1 MCP-endpoint

CRM

Arbejdsgange til leads, produkter, kunder, tid og kunderapporter.

  • manage-customersKunder, kontakter, klippekort og projekter.
  • manage-leadsLeads, opfølgning, påmindelser og konvertering.
  • manage-productsProdukter, prislister og skabeloner.
  • register-timeArbejdstid, opgaver og restsaldo.
  • review-workdayDagens CRM-ændringer i én gennemgang.
  • send-customer-reportsPDF-rapporter, arkivering og afsendelse.

MCP: HTTP · /mcp/crm · Microsoft Entra OAuth

2 skills · 1 MCP-endpoint

Legal

Juridisk vurdering og dokumentproduktion for Copenhagen Software Lab ApS.

  • legal-advisorRetstilling, compliance, risiko og primærkilder.
  • legal-document-creatorAftaler, selskabsdokumenter og signeringsklare filer.

MCP: HTTP · /mcp/legal · Microsoft Entra OAuth

3 skills · 1 MCP-endpoint

Secure Data

Indlejrede apps til følsomme data, som agenten aldrig ser i klartekst.

  • secure-data-entryKrypteret formular til følsomme felter.
  • secure-file-sanitizerRensning af PDF og DOCX før deling.
  • secure-graph-explorerRead-only graf over autoriserede relationer.

MCP: HTTP · /mcp/secure-data · Microsoft Entra OAuth