Geheimen en omgevingsvariabelen zonder sleutels in de chat te plakken
De meeste echte apps hebben minstens één geheim nodig: de sleutel van een betaalprovider, van een e-mailservice of van een AI-API. In Mythex plak je die niet in een prompt. Heeft de agent er één nodig, dan toont hij een kaart voor geheimen in de chat. Jij typt de waarde in die kaart en die wordt opgeslagen als projectgeheim dat je app kan lezen, zonder dat de sleutel in het gesprek terechtkomt.
Wat het doet
Elk Mythex-project kan omgevingsvariabelen opslaan: benoemde waarden, zoals STRIPE_SECRET_KEY, die je app bij het draaien leest in plaats van dat ze in de code staan. Geheimen zijn omgevingsvariabelen waarvan de waarde privé moet blijven.
Dezelfde waarden zijn op twee plaatsen beschikbaar:
- De sandbox, waar de agent je app bouwt en draait terwijl jij werkt.
- Je gepubliceerde deployments, waar bezoekers de app gebruiken.
Er zijn drie manieren om ze toe te voegen:
- De kaart voor geheimen, die de agent in de chat toont wanneer hij een sleutel nodig heeft om iets af te maken.
- Projectinstellingen → Secrets, waar je op elk moment waarden toevoegt of bewerkt.
/secretsin de chat, om geheimen op verzoek toe te voegen of bij te werken.
Waarom dit helpt
De voor de hand liggende manier om een AI-agent een sleutel te geven is die in je bericht plakken. Dat werkt, maar de sleutel wordt dan onderdeel van je chatgeschiedenis, als platte tekst naast alles wat je hebt gezegd.
De kaart voor geheimen houdt de waarde buiten het gesprek. Je vult hem in de velden van de kaart in, niet in het berichtveld, en hij wordt opgeslagen als projectgeheim. De agent gaat door met de sleutel beschikbaar in de sandbox.
Sleutels in de projectinstellingen bewaren in plaats van in de code heeft nog meer voordelen:
- Sleutels blijven uit de broncodebeheer. Je code verwijst naar een sleutel bij naam; de waarde staat in de projectinstellingen.
- De agent en je draaiende app zien dezelfde configuratie. Geen kopie die uit de pas loopt.
- Je kunt een sleutel roteren zonder code te herschrijven. Wijzig de waarde in de instellingen; de code leest hem nog steeds op naam.
Als omgevingsvariabelen nieuw voor je zijn, legt onze gids over wat omgevingsvariabelen en geheimen zijn het idee vanaf nul uit.
Zo gebruik je de kaart voor geheimen
- Vraag om de functie, bijvoorbeeld „stuur een welkomstmail als iemand zich aanmeldt”.
- Wanneer de agent een sleutel nodig heeft, verschijnt er een kaart voor geheimen in de chat met de waarde die hij nodig heeft.
- Vul de waarde in de velden van de kaart in, niet in het berichtveld.
- Bevestig. De waarde wordt opgeslagen als projectgeheim.
- De agent gaat verder, met de sleutel beschikbaar in de sandbox.
Zo voeg je zelf geheimen toe
- Open de projectinstellingen en daarna Secrets.
- Voeg sleutels toe, zoals
STRIPE_SECRET_KEY,OPENAI_API_KEYof de inloggegevens van je eigen service. - Vraag de agent ze op de standaardmanier voor jouw framework te lezen, bijvoorbeeld uit
process.envin een Node-app. - Publiceer opnieuw als een gepubliceerde app de nieuwe waarden nodig heeft.
Je kunt ook /secrets in de chat typen om ze daar toe te voegen of bij te werken.
Een geheim wijzigen in een gepubliceerde app
Een gepubliceerde app pakt geheimen op bij het publiceren. Nadat je er een hebt toegevoegd of gewijzigd, publiceer dan opnieuw zodat de live deployment de nieuwe waarde krijgt. Tot die tijd gebruiken bezoekers de app nog met de oude configuratie.
Tips voor veiligheid
- Zet nooit geheimen in de repository. Bewaar ze in de projectinstellingen.
- Gebruik bij bevoegde handelingen bij voorkeur sleutels die alleen op de server gelden. Een sleutel die kaarten kan belasten of e-mail kan versturen hoort in code die op de server draait, niet in iets wat de browser van een bezoeker downloadt.
- Als een sleutel ooit in de chatgeschiedenis is verschenen, roteer hem. Maak een nieuwe sleutel bij de provider, trek de oude in en werk de waarde in de projectinstellingen bij. Behandel elke sleutel die in een chat is geplakt als blootgesteld.
Beperkingen
- De kaart helpt alleen als je hem gebruikt. Als je toch een sleutel in het berichtveld plakt, staat hij in de geschiedenis. Roteer hem bij de provider en werk de opgeslagen waarde bij.
- Gepubliceerde apps moeten opnieuw worden gepubliceerd om nieuwe of gewijzigde geheimen op te pakken.
- Een sleutel veilig opslaan maakt het gebruik ervan niet vanzelf veilig. Waar de sleutel wordt gebruikt, blijft belangrijk: houd bevoegde sleutels aan de serverkant van je app.
Meer over het veilig maken van een app voordat je hem deelt, vind je in onze beveiligingschecklist voor met AI gebouwde apps.
De documentatie geeft de details: Omgevingsvariabelen en geheimen en Geheimen in de chat.