E-mail versturen vanuit Devin
Devin is een autonome software-engineer die zelfstandig WeSender-integraties bouwt.
Vereisten
- Devin-account (cognition.ai)
- GitHub-repository gekoppeld aan Devin
- WeSender-account met geverifieerd domein en API-sleutel
Stap 1: Koppel je repository aan Devin
Log in op app.devin.ai en ga naar Settings > Repositories. Koppel je GitHub-repository via de OAuth-flow. Devin krijgt schrijfrechten om branches aan te maken en pull requests te openen.
Stap 2: Voeg de WeSender API-sleutel toe als secret
Ga naar Settings > Secrets in Devin en voeg WESENDER_API_KEY toe. Devin injecteert de variabele in de werkomgeving zodat de integratie kan worden getest zonder de sleutel in de code te zetten.
Stap 3: Maak een taak aan voor Devin
Klik op New Session en geef de volgende taakomschrijving: Voeg e-mailverzending toe via WeSender aan dit project. Installeer @wesender/node, maak een EmailService-class met methoden sendWelcome en sendPasswordReset, gebruik process.env.WESENDER_API_KEY. Schrijf Vitest-tests, maak een pull request als alles slaagt. Devin start een sessie, leest de codebase, schrijft een plan en voert het stap voor stap uit.
Stap 4: Volg de sessie live
Devin toont in realtime wat het doet: bestanden lezen, code schrijven, tests runnen. Je kunt tussentijds commentaar geven via de chat als Devin bijgestuurd moet worden. Je hoeft niet te wachten totdat het klaar is, je wordt per e-mail of Slack gewaarschuwd.
Stap 5: Review en merge de pull request
Als Devin klaar is, opent het een GitHub pull request met de gegenereerde code, testresultaten en een korte beschrijving. Controleer de code, voeg feedback toe in de PR als nodig en merge als alles correct is.
Volledig voorbeeld
Hier is de volledige implementatie in Devin-taakomschrijving (voorbeeld):
## Taak: WeSender e-mailintegratie
Voeg transactionele e-mailverzending toe aan dit project via WeSender.
### Wat je moet doen
1. Installeer @wesender/node als productie-dependency
2. Maak src/services/email.service.ts met:
- sendWelcome(to: string, naam: string): Promise<string>
- sendPasswordReset(to: string, resetUrl: string): Promise<string>
3. Gebruik process.env.WESENDER_API_KEY (al beschikbaar als secret)
4. from-adres: noreply@jouwdomein.nl
5. Schrijf Vitest unit tests in src/services/email.service.test.ts
6. Voeg WESENDER_API_KEY toe aan .env.example
7. Open een pull request als alle tests slagen
### Niet doen
- Geen hardcoded API-sleutels
- Geen wijzigingen in bestaande functies tenzij nodig voor de integratie Veelgestelde vragen
Devin heeft de verkeerde aanpak gekozen. Hoe stuur ik bij?
Typ feedback in de Devin-sessiechat: gebruik de class-structuur van EmailService in plaats van losse functies, of gebruik de WeSender Node SDK in plaats van fetch. Devin past de aanpak aan en schrijft de code opnieuw.
Hoe lang duurt een Devin-sessie voor een WeSender-integratie?
Een eenvoudige integratie met tests duurt 5 tot 15 minuten. Devin werkt asynchroon, dus je hoeft er niet op te wachten. Je ontvangt een melding als de pull request klaar is.
Kan Devin ook webhooks verwerken?
Ja. Geef in de taakomschrijving mee: voeg ook een POST /webhooks/wesender endpoint toe dat email.delivered en email.bounced events logt. Gebruik WESENDER_WEBHOOK_SECRET om de handtekening te valideren. Devin schrijft ook hiervoor de code en tests.