GitHub krijgt ondersteuning voor Copilot-agents

GitHub krijgt ondersteuning voor zogenaamde 'agents'. Dat zijn chatbots die semi-geautomatiseerd taken kunnen uitvoeren. Op die manier kan Copilot zelfstandig GitHub-issues oplossen in een aparte omgeving. Ontwikkelaars kunnen die via push doorvoeren.

Microsoft toonde de Copilot-agents tijdens zijn Build-ontwikkelaarsconferentie. Het gaat om vergelijkbare agents zoals die sinds vorig jaar in Copilot zitten. Het verschil is dat de agents nu ook in GitHub verschijnen.

De agents zijn zowel vanuit de webinterface als de command line aan te sturen. Ontwikkelaars kunnen aan Copilot Chat vragen een pullrequest toe te wijzen aan Copilot. Die maakt dan via GitHub Actions een virtuele machine aan en kopieert daar de volledige repo naartoe. Vervolgens probeert de agent het request op te lossen of erop te reageren. Gebruikers kunnen daarbij ook toegang verlenen tot data van buiten GitHub als de agent daar behoefte aan heeft.

Copilot komt na een tijd met een draft van een pullrequest waarbij de beheerder wordt getagd voor een review. Microsoft benadrukt dat de programmeur zelf altijd akkoord moet geven op veranderingen. Ook kunnen agents alleen pushen naar een branch die ze zelf hebben aangemaakt en niet naar andere branches binnen een repo.

De agents komen beschikbaar voor gebruikers met een Copilot Enterprise- of een Copilot Pro+-abonnement. Daarnaast is het ook mogelijk de agents te activeren in diverse ide's. Microsoft noemt naast Visual Studio specifiek Xcode, Eclipse en Jetbrains, maar zegt dat dat voorbeelden zijn.

GitHub Copilot Agents
GitHub Copilot Agents

Door Tijs Hofmans

Nieuwscoördinator

19-05-2025 • 18:00

7

Reacties (7)

7
7
5
0
0
2
Wijzig sortering
Nou ik heb dankzij een hint van copilot de amd driver voor de raidcontroller panthom gaming 4 weer werkend gekregen op de nieuwste linux kernel. Dat terwijl ik echt geen held ben in C!

Die driver was al een jaar abandoned.
Interessant, heb persoonlijk echt andere ervaringen in complexere code bases.

Heb je wat toelichting wat er fout was, hoe je prompte, en hoe het je hielp? Gewoon uit interesse :)
Er waren build errors omdat er interfaces van de kernel veranderd waren. Sommige hadden een andere naam gekregen en andere hadden meer argumenten nodig.

Co pilot was handig om de juiste syntax voor de nieuwe interface te maken. En hierna compileerde het en werkte het.

Tis een lelijke hack maar werkt wel:

Voorbeeldje van een wijziging
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 14, 0)
.slave_configure = rc_slave_cfg,
#else
.sdev_configure = rc_slave_cfg,
#endif
};

#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0)
static int rc_slave_cfg(struct scsi_device *sdev, struct queue_limits *qlim)
#else
static int rc_slave_cfg(struct scsi_device *sdev)
#endif
{
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
if (sdev->tagged_supported)
scsi_adjust_queue_depth(sdev, MSG_ORDERED_TAG, tag_q_depth);
else
scsi_adjust_queue_depth(sdev, 0, 1);
#endif
return 0;
}

[Reactie gewijzigd door switchboy op 19 mei 2025 20:43]

Pr is pull request, wat is een push request?
Geen idee. Een PR wordt ook wel eens Merge Request genoemd, maar push request is een beetje raar. Dat maakt het maken van commits heel lastig 😄
Ja. Met name door mensen die gitlab gebruiken.
We hebben toevallog vorige week hier een hackathon voor gegeven aan klanten in Antwerpen en deze week in Hilversum.

Super leuk te zien hoe creatief de mensen worden in de korte tijd.

Door te switchen tussen de verschillende midi, kun je de verschillende modellen gebruiken om te helpen met het prompten om zo een goed prompt te krijgen. Deze worden dan soms best lang, maar zorgen er wel voor dat je de agent kan gebruiken zelfs alles te laten genereren. Zo hadden de klanten binnen twee uur een spelletje gemaakt dat in het web werkt zonder zelf code toe te voegen 😊


Om te kunnen reageren moet je ingelogd zijn