Тайни и променливи на средата без поставяне на ключове в чата
Повечето реални приложения се нуждаят поне от една тайна: ключ за платежен доставчик, ключ за имейл услуга, ключ за AI API. В Mythex не ги поставяте в промпт. Когато агентът има нужда от такъв, показва в чата карта заявка за тайна, вие въвеждате стойността в картата и тя се съхранява като тайна на проекта, която приложението ви може да чете — без ключът да попадне в разговора.
Какво прави
Всеки проект в Mythex може да съхранява променливи на средата: именувани стойности, като STRIPE_SECRET_KEY, които приложението ви чете при изпълнение, вместо да са записани в кода. Тайните са променливи на средата, чиито стойности трябва да останат поверителни.
Същите стойности са налични на две места:
- Пясъчникът, където агентът строи и пуска приложението, докато работите.
- Публикуваните ви деплойменти, които посетителите използват.
Има три начина да ги добавите:
- Картата със заявка за тайна, която агентът показва в чата, когато има нужда от ключ, за да довърши нещо.
- Настройки на проекта → Secrets, където можете да добавяте или редактирате стойности по всяко време.
/secretsв чата, за да добавяте или обновявате тайни при поискване.
Защо помага
Очевидният начин да дадете ключ на AI агент е да го поставите в съобщението си. Работи, но тогава ключът става част от историята на чата и стои в чист текст до всичко друго, което сте написали.
Картата за тайни пази стойността извън разговора. Въвеждате я в полетата на картата, а не в полето за съобщения, и тя се съхранява като тайна на проекта. Агентът продължава с ключа, наличен в пясъчника.
Държането на ключовете в настройките на проекта, а не в кода, носи и други ползи:
- Ключовете остават извън контрола на версиите. Кодът сочи ключа по име; стойността стои в настройките на проекта.
- Агентът и работещото ви приложение виждат една и съща конфигурация. Няма копие, което да остарее.
- Можете да смените ключ, без да пренаписвате кода. Променяте стойността в настройките, а кодът я чете пак по име.
Ако променливите на средата са ви нови, нашето ръководство за какво са променливите на средата и тайните обяснява идеята от нулата.
Как да използвате картата за тайни
- Поискайте функцията — например „изпрати приветствен имейл, когато някой се регистрира“.
- Когато агентът има нужда от ключ, в чата се появява карта със заявка за тайна, която показва стойността, от която се нуждае.
- Въведете стойността в полетата на картата, а не в полето за съобщения.
- Потвърдете. Стойността се съхранява като тайна на проекта.
- Агентът продължава, като ключът е наличен в пясъчника.
Как сами да добавяте тайни
- Отворете настройките на проекта, после Secrets.
- Добавете ключове като
STRIPE_SECRET_KEY,OPENAI_API_KEYили собствените идентификационни данни на вашата услуга. - Помолете агента да ги чете по стандартния начин за вашия фреймуърк — например от
process.envв Node приложение. - Публикувайте отново, ако публикувано приложение се нуждае от новите стойности.
Можете също да напишете /secrets в чата, за да добавяте или обновявате тайни там.
Смяна на тайна в публикувано приложение
Публикуваното приложение взема тайните, когато бъде публикувано. След като добавите или промените една, публикувайте отново, за да получи живият деплоймент новата стойност. Дотогава посетителите използват приложението със старата конфигурация.
Съвети за сигурност
- Никога не комитвайте тайни в хранилището. Пазете ги в настройките на проекта.
- Предпочитайте ключове само за сървъра за привилегировани операции. Ключ, който може да таксува карти или да изпраща имейли, трябва да е в код, който работи на сървъра, а не в нещо, което браузърът на посетителя изтегля.
- Ако ключ някога се е появил в историята на чата, сменете го. Създайте нов ключ при доставчика, отменете стария и обновете стойността в настройките на проекта. Считайте всеки ключ, поставен в чат, за изложен.
Ограничения
- Картата помага само ако я използвате. Ако все пак поставите ключ в полето за съобщения, той е в историята. Сменете го при доставчика и обновете запазената стойност.
- Публикуваните приложения се нуждаят от ново публикуване, за да вземат нови или променени тайни.
- Безопасното съхранение на ключ не прави всяка употреба безопасна. Мястото, където ключът се използва, има значение — пазете привилегированите ключове от сървърната страна на приложението.
За повече за това как да пазите приложението в безопасност, преди да го споделите, вижте нашия контролен списък за сигурност за приложения, създадени с AI.
Документацията съдържа подробностите: Променливи на средата и тайни и Тайни в чата.