AWS släppte gratis lokal emulator – enligt företaget skrevs koden av agenter
AWS Emulator efterliknar AWS:s API:er på utvecklarens dator. Program som använder AWS kan därmed testas utan AWS-konto och utan extra kostnad. Enligt AWS skrevs och kontrollerades koden av AI-agenter, och ingen människa granskade den.
AWS släppte verktyget AWS Emulator onsdagen den 11 november. Samma dag beskrev AWS-ingenjören Matthew Goldberg, som ledde projektet, i Amazons blogg hur agenter byggde det. Enligt Goldberg skrevs emulatorn helt av autonoma agenter: ”Vårt team har inte skrivit eller granskat någon del av koden.”
Emulatorn är ett lokalt program som svarar på anrop till AWS:s API:er. När AWS CLI eller SDK pekas mot emulatorn går programmets förfrågningar dit i stället för till AWS. Emulatorn kan köras på den egna datorn, på en utvecklingsserver eller i en CI-pipeline, alltså i automatiserad testning.
GeekWire uppger att emulatorn täcker över 200 AWS-tjänster. Grunden är 438 API-modeller från AWS, säger Goldberg. Enligt ITmedia varierar implementationens omfattning dock mellan tjänster och operationer. Med varje version publicerar AWS poäng för överensstämmelse (fidelity) per tjänst. De visar hur exakt emulatorn efterliknar AWS.
Tre agentteam och en kontrollgrind
Emulatorn byggs av tre agentteam, säger Goldberg. Det första tar fram tester utifrån de offentliga API-modellerna och kontrollerar att varje test fungerar mot det riktiga AWS. Ett test kan till exempel skapa en kö, skicka ett meddelande och ta bort kön. Det andra teamet kör testerna i emulatorn och registrerar misslyckandena för åtgärd. I det tredje teamet åtgärdar varje agent ett problem.
En ändring når huvudgrenen först när koden går att kompilera. De kontrollerande agenterna måste också konstatera att den följer kodkonventionerna, är säker och inte försämrar överensstämmelsen med AWS. Hundratals agenter åtgärdar tusentals problem om dagen, uppger Goldberg. Simon Willison skriver i sin blogg att projektet fick 29 684 commitar under de tre första veckorna.
Projektet började som ett helgexperiment av Goldberg. Inspirationen var ett experiment där forskare på Anthropic lät agenter självständigt bygga en C-kompilator. Enligt Goldberg gjorde Amazons kodningsagent Kiro en första godtagbar version av kötjänsten Amazon SQS på 15 minuter.
Inte för produktion eller säkerhetstestning
AWS avråder från att använda emulatorn i produktion eller för säkerhetstestning. Enligt ITmedia hanterar emulatorn inte IAM- och resurspolicyerna, som styr behörigheter, på samma sätt som AWS. Resurserna ligger i minnet och försvinner när emulatorn stoppas.
Enligt GeekWire sa IDC-analytikern Devin Pratt till InfoWorld att emulatorn ännu inte efterliknar begränsning av förfrågningar, driftavbrott eller skillnader mellan regioner i tillgången på tjänster och funktioner. Den isolerar inte heller koden den kör, säger Pratt. Brister som agenterna ännu inte har åtgärdat redovisas öppet i katalogen issues/things-that-do-not-work i kodförrådet.
Tillgänglighet och installation
Emulatorn kräver inget AWS-konto och kostar inget extra. Koden finns på GitHub, huvudsakligen under licensen CC0. Det mest kända alternativet, LocalStack, begränsade i år sin gratisversion till icke-kommersiell användning och började kräva konto av användarna, uppger GeekWire.
På Linux kan emulatorn installeras från ett RPM- eller Debian-paket. På macOS och Windows körs den i en Docker-container. Telemetri, alltså att användningsdata skickas till AWS, är påslagen som standard. Instruktioner för att stänga av den och för övrig installation finns i README-filen på GitHub och i AWS:s användarguide.
Läs mer: Hur en agent fungerar · Agentkarta