--- entity: Frimer-Rasmussen Consulting title: Sikker agent-discovery uden agent-washing subtitle: Et offentligt manifest bør være lige så tydeligt om sine begrænsninger som om sine muligheder. description: Et offentligt manifest bør være lige så tydeligt om sine begrænsninger som om sine muligheder. author: Mikkel Frimer-Rasmussen last_updated: '2026-06-19' type: TechArticle status: published tech_stack: - JSON - A2A - NLWeb - Agent security primary_goal: Explain how a static read-only discovery prototype can describe public resources and explicit safety boundaries without pretending to expose an executable AI agent. canonical_url: https://frimer-rasmussen.dk/articles/sikker-agent-discovery.html about: - name: Agent discovery description: Metadata that helps systems find and understand an agent or public machine-readable resource. concepts: - name: Discovery er ikke eksekvering description: At beskrive en offentlig ressource giver ikke i sig selv adgang til værktøjer, data eller handlinger. - name: Negativ capability description: En eksplicit erklæring om handlinger systemet ikke tilbyder, eksempelvis betaling, skrivning eller kundedata. - name: Agent-washing description: At markedsføre et katalog, en chatbot eller en statisk fil som en autonom agent uden den tilsvarende tekniske funktion og styring. --- Når agentteknologi bliver moderne, opstår der en fristelse: Alt får et agentnavn. Et katalog bliver til en agent. En søgefunktion bliver autonom. En JSON-fil bliver “A2A-kompatibel”, selv om der ikke findes et endpoint, en protokolimplementering eller en sikkerhedsmodel bag påstanden. Det er agent-washing, og det gør feltet sværere at forstå. ## Discovery er ikke eksekvering Discovery handler om at fortælle andre systemer, hvad der findes. Googles A2A-protokol, som nu udvikles under Linux Foundation, bruger en Agent Card til at beskrive en rigtig, kontaktbar agent og dens interfaces. Microsofts NLWeb arbejder med aktive forespørgselsendpoints, der kan besvare spørgsmål til et website. På frimer-rasmussen.dk har jeg valgt et mindre første skridt: Et eksperimentelt, statisk katalog over offentlige, læsbare ressourcer. Kataloget er ikke en A2A Agent Card. Det er ikke et MCP-endpoint. Det kan ikke udføre noget. ## Begrænsninger skal kunne læses af maskiner Et sikkert offentligt katalog bør ikke nøjes med at skrive “read-only” i en salgstekst. Grænsen bør kunne inspiceres: - Tilladte capabilities begynder med læsning. - Write-actions er forbudt. - Betaling og budgetter er forbudt. - Kundedata er forbudt. - Formularer og workflows kan ikke udløses. - Der annonceres ingen eksekverbar agent eller MCP-værktøjer. Det er en simpel model, men den demonstrerer et vigtigt designprincip: Sikkerhedsgrænsen er en del af det offentlige interface. ## En inspektør er bedre end en påstand I [Agent Labs Discovery Inspector](/agent-lab/discovery-inspector.html) kan man se det publicerede manifest og de kontroller, det passerer. Man kan også vælge syntetiske usikre eksempler: - et manifest, der lover betaling, - et manifest med adgang til kundedata, - et manifest, der annoncerer en eksekverbar agent og værktøjer. Eksemplerne eksisterer kun i browseren. De ændrer ikke den publicerede fil og foretager ingen eksterne kald. Formålet er at gøre grænsen konkret. En beslutningstager skal ikke være protokolekspert for at se forskellen på en læsbar ressource og et system, der kan handle. ## Hvorfor starte så forsigtigt? Fordi den største værdi i første omgang er at gøre virksomhedens offentlige viden forståelig og citerbar. Aktive agenter introducerer en anden risikoklasse: identitet, autentifikation, autorisation, budgetter, misbrug, logning, databeskyttelse og ansvar for handlinger. De problemer skal løses, når der findes en reel forretningsopgave — ikke for at hjemmesiden kan vise et flot badge. ## Næste skridt Se det [eksperimentelle manifest](/.well-known/ai-catalog.json), prøv [Discovery Inspector](/agent-lab/discovery-inspector.html), eller læs om den bredere [Agent Readiness-ydelse](/ai-readiness/). De beslægtede initiativer kan læses hos [A2A-projektet](https://a2a-protocol.org/latest/specification/) og i [NLWeb-projektet](https://github.com/nlweb-ai/NLWeb).