Creación de SPACE: tempos de execución seguros e eficientes para axentes de longa duración
SPACE é a plataforma de contorno illado segura e eficiente de Perplexity que impulsa fluxos de traballo baseados en axentes de longa duración e unha execución de código rápida e illada.
A medida que os fluxos de traballo baseados en axentes se volven máis longos e autónomos, os contornos nos que operan os axentes importan tanto coma os modelos que os impulsan. Os axentes necesitan facer traballo real, como executar código, editar sistemas de ficheiros e realizar tarefas de varios pasos durante horas ou días. Os usuarios queren que os axentes teñen acceso ás ferramentas e aos ficheiros que necesitan para levar a cabo estas tarefas, pero tamén necesitan confiar en que os seus sistemas se manterán seguros aínda que os axentes sexan comprometidos. Un contorno illado é o que fai todo isto posible: un contorno illado onde un axente pode operar libremente mentres o anfitrio, outros inquilinos e as credenciais sensibles permanecen protexidos.
Os enfoques tradicionais de contornos illados baseados en contenedores non están deseñados para estas tarefas. Normalmente asumen traballos efímeros e sen estado, e teñen o núcleo como un único punto de fallo. Pola contra, as sesións dos axentes son duradeiras e con estado: un axente acumula horas de contexto, un sistema de ficheiros de traballo e procesos en execución que non se poden simplemente descartar e reconstruír desde cero. Ademais, a carga de traballo do interior debe non ser de confianza por defecto, o que require medidas de seguridade máis fortes. As sesións de axentes de longa duración necesitan un sustrato que poida illar un invitado hostil, preservar o seu estado e seguir funcionando a escala.
O principal reto na enxeñaría de contornos illados provén da tensión que a miúdo xorde entre seguridade, funcionalidade e eficiencia. Por exemplo:
Conceder un acceso máis amplo permite que un axente logre máis pero expón máis do sistema a unha carga de traballo na que non confías.
Compartir máis entre contornos illados fai que a creación sexa máis rápida pero amplía a superficie de ataque.
Facer instantáneas con máis frecuencia mellora a recuperación e habilita funcións como a reversión, pero require tempo e espazo de almacenamento.
Os contornos illados baseados en axentes, como os necesarios para executar código, usar as Agent Skills ou realizar canalizacións de Search as Code en consultas de Computer, necesitan os tres. Traballamos duro durante os últimos meses na enxeñaría da seguinte xeración de infraestrutura de axentes que impulsa os nosos produtos. Hoxe presentamos SPACE (Sandboxed Platform for Agentic Code Execution): unha plataforma de contorno illado creada para fluxos de traballo baseados en axentes que é segura, fiable e eficiente a escala. O mes pasado, comezamos a implementar SPACE como a capa de contorno illado que impulsa Perplexity Computer. Durante a semana pasada, apoiou con seguridade millóns de creacións de contornos illados e de tens de millóns de reconexións, con tempos de arranque entre 3 e 5 veces máis rápidos que a nosa solución anterior.
Este artigo presenta as decisións arquitectónicas e de deseño detrás de SPACE. A partir de hoxe, o 100% das sesións de Computer executaranse en SPACE. Estamos entusiasmados de implementar esta plataforma en aínda máis superficies para ofrecer un tempo de execución de axentes líder no sector aos nosos usuarios e desenvolvedores.
Arquitectura
A un nivel alto, o sistema está organizado en tres capas.
O plano de control é o cerebro do sistema, decidindo que debe existir e onde. Consiste na pasarela API e nos módulos de xestión de estado a nivel de clúster.
Os servizos locais do nodo son a maquinaria local necesaria para executar o plan do plano de control. Posúen o ciclo de vida do contorno illado, o almacenamento, as redes e as operacións privilexiadas detrás deles.
O contorno illado é o propio contorno de execución illado. Implementase como unha máquina virtual combinada co daemon de space: un proceso en segundo plano dentro do invitado que xestiona o sistema de ficheiros, os procesos e o acceso á rede para a carga de traballo.

Plano de control
A pasarela API é o punto de entrada. As solicitudes entrantes son autenticadas e autorizadas, e despois tradúcese en rexistros do estado desexado.
O plano de control non ten estado por deseño, con toda a información duradeira descargada nunha base de datos compartida. Rexeita información a nivel de clúster sobre contornos illados, como a qué nodo están asignados, onde se están executando e se foron respaldados en almacenamento duradeiro. Compara continuamente o estado desexado co estado observado e empuxa ambos cara á converxencia. As operacións son idempotentes, polo que o plano de control pode recuperarse automaticamente despois de calquera caída, reinicio ou fallo parcial.
Servizos locais do nodo
Os servizos locais do nodo realizan o traballo real de preparar modelos, iniciar contornos illados, conectar redes e executar servizos de tempo de execución do lado do anfitrión. Cada nodo executa un pequeno conxunto de daemons que xestionan cada contorno illado colocado nel, e o nodo é a fonte de verdade para os estados en directo deses contornos illados.
O xestor de contornos illados sabe qué contornos illados se están executando, pausados, suspendidos ou detidos, xunto cos seus recursos reais. Execútase sen privilexios e delega todo o traballo privilexiado no xestor de nodos, o único proceso raíz que xestiona as primitivas subxacentes. O almacenamento manexase de forma local e duradeira: as instantáneas dos estados actuais dos contornos illados gárdanse no nodo, e un xestor de volumes move as instantáneas e os modelos cara e desde o almacenamento de obxectos segundo sexa necesario para permitir operacións entre nodos. As portas de seguridade protexen o que un contorno illado pode alcanzar: o xestor de credenciais goberna a inxección de credenciais baixo autorización por servizo, e a pasarela de rede aplica a política de saída de cada contorno illado.
Contorno illado
O propio contorno illado é unha máquina virtual (MV) co seu propio núcleo de invitado, executando a carga de traballo do usuario detrás dun límite de illamento de hardware. Debido a que cada contorno illado ten o seu propio núcleo, unha carga de traballo comprometida non pode depender dun núcleo de anfitrión compartido como un único punto de fallo; mesmo se explota con éxito o seu núcleo de invitado, ese compromiso confínase ao límite da MV do contorno illado en lugar de propagarse a outras cargas de traballo.
Un daemon de space execútase dentro de cada máquina virtual, funcionando como un axente lixeiro que regula cada acción ou modificación que a plataforma realiza dentro do invitado. Xestiona o acceso ao sistema de ficheiros e a xestión de procesos. Tamén informa da dispoñibilidade do invitado e fai un seguimento da actividade, para que a plataforma saiba cando un contorno illado estivo inactivo e pode ser pausado ou recuperado. É fundamental destacar que o daemon de space non fala directamente cos clientes, senón que se comunica co anfitrión a través dunha canle privada dentro da MV. Isto mantén toda a interacción cos invitados nun camiño controlado e reserva a rede propia do contorno illado puramente para o tráfico de saída da carga de traballo.
Tres piares: seguridade, funcionalidade e eficiencia
A continuación, profundizamos nas propiedades clave que SPACE debe ofrecer a través de tres piares: seguridade, funcionalidade e eficiencia. Como se sinalou anteriormente, estes tres tiran uns contra outros. Non obstante, non podemos comprometer ningún deles se desexamos apoiar axentes poderosos que estean á altura das capacidades dos modelos actuais. A seguridade evita que unha carga de traballo non de confianza, posiblemente hostil, dane o anfitrión, outros inquilinos ou os segredos dun usuario. A funcionalidade outorga aos axentes o rico ciclo de vida que necesitan. A eficiencia fai que todo isto sexa asequible baixo memoria, disco e computación finitos.
Seguridade: protección de datos e sistemas
As plataformas de contornos illados necesitan unha forte seguridade para garantir que o código erróneo ou mesmo malicioso executado dentro dos contornos illados non poida causar efectos nocivos noutros lugares. Sen aplicar un estrito control de saída e manter os segredos fóra do contorno illado, un único paso en falso dun axente podería filtrar as chaves dun usuario ou exfiltrar o traballo.

SPACE adopta un enfoque por capas para garantir a seguridade dos contornos illados. O illamento do contorno illado ten dous compoñentes: o illamento de MV e o illamento de procesos do SO do anfitrión. Ambos deben ser vulnerados para o acceso entre contornos illados. A comunicación co contorno illado está estritamente controlada; os procesos só poden comunicarse a través de canles dedicadas. A pasarela de rede forza toda a saída a través dela. O daemon de space é a única canle autorizada entre o contorno illado (non fiable) e a plataforma (fiable).
As credenciais nunca viven onde un axente poida roubaras. A tenda de credenciais atópase fóra do límite do contorno illado e é responsable do ciclo de vida das credenciais. Almacena e recupera segredos a través dun backend de bóveda conectable, resolve credenciais utilizando un alcance xerárquico, xestiona metadados como o método de inxección e a caducidade, e aplica límites de velocidade e rexistro de auditoría en todos os accesos. Cando é necesario, as credenciais inxécstanse na capa de rede ou autocompléntanse por un axente de navegador, en lugar de entrar directamente no contorno illado.
Os datos están protexidos en repouso. SPACE admite BYOK (Bring Your Own Key) para protexer os datos almacenados externamente. As chaves de cifrado provén do servizo de xestión de chaves do cliente e nunca entran no contorno illado. Se a empresa revoga a chave, os seus datos fanse ilexibles.
Funcionalidade: impulso dos fluxos de traballo baseados en axentes
Para admitir fluxos de traballo baseados en axentes, os contornos illados necesitan un soporte rico para o ciclo de vida. Deben crearse rapidamente e a escala, xa que un axente pode iniciar moitos á vez e non debe esperar a que ningún deles arranque. Deben persistir durante un tempo indefinido, xa que unha sesión pode durar minutos ou executarse durante meses. Deben pausarse limpiamente, ás veces durante longos períodos, como cando unha tarefa está bloqueada pola entrada humana. E deben admitir a ramificación, a reversión e a recuperación de fallos, para que unha sesión poida ramificarse, desacer un mal paso ou retomar despois dun fallo en lugar de empezar de novo.
SPACE admite todo o anterior. Modela o ciclo de vida completo do contorno illado como unha máquina de estados explícita, que é o que fai posibles operacións como crear, pausar, retomar, suspender e restaurar.

As instantáneas son o mecanismo subxacente á maioría destas capacidades. Un planificador execútase a intervalos regulares e captura dous tipos de instantáneas: instantáneas de disco (copias puntuais do sistema de ficheiros) e instantáneas completas (puntos de control de toda a MV pausada). As instantáneas de disco captúranse con frecuencia, mentres que os puntos de control completos son menos frecuentes. Todo permanece no nodo, e a retención decae por nivel. Estas instantáneas pódense usar para a recuperación dentro da sesión; por exemplo, as instantáneas de disco pódense usar para reverter o sistema de ficheiros para desfacer un comando destrutivo, e os puntos de control completos permiten que un contorno illado que caeu se retome nun punto de execución recente en lugar de nun disco frío.
Cando un contorno illado é suspendido, a MV pásase a un estado de pausa, tómase unha instantánea completa e os artefactos da instantánea completa cárganse no almacenamento de obxectos. Unha fila de base de datos fai un seguimento da instantánea e só se volve restaurable unha vez que cada artefacto chegou, polo que unha instantánea parcialmente cargada nunca se pode retomar nun estado corrupto. A restauración é a inversa da suspensión. Debido a que a instantánea vive no almacenamento de obxectos en lugar de no nodo orixinal, calquera nodo pode recuperar o contorno illado. O planificador elixe un nodo, ese nodo descarga os artefactos, volve aplicar o delta do sistema de ficheiros sobre o modelo e retoma a MV desde o seu estado capturado.
Eficiencia: optimización do tempo e do espazo
Non abonda con implementar as características anteriores nun baleiro; tamén deben ser posibles baixo restricións de recursos estreitas. A memoria e o disco nun nodo son finitos, e os usuarios queren que os axentes operen o máis rápido posible, polo que as operacións do ciclo de vida deben ser baratas tanto en tempo como en espazo. Non podemos permitíronnos copiar unha imaxe de máquina completa cada vez que se crea, pausa ou ramifica un contorno illado.
Unha decisión de deseño clave fai isto posible: o sistema de ficheiros. SPACE usa btrfs como sistema de ficheiros no nodo para o almacenamento de contornos illados. Btrfs (sistema de ficheiros B-tree) combina un sistema de ficheiros de copia en escritura con xestión de volumes lóxicos integrada. Isto ten algunhas vantaxes:
As copias reflink son rápidas, xa que compartes as extentes subxacentes, polo que só é necesario copiar os metadados.
As instantáneas son atómicas e rápidas, xa que só creas unha nova raíz.
Requírese un almacenamento mínimo, xa que só almacenas o que cambiou.
Como resultado, os contornos illados pódense crear e restaurar rapidamente. En lugar de crear un contorno illado desde cero cada vez, mantemos un grupo quente de pods que xa teñen modelos comúns materializados no disco, e satisfacemos unha solicitude vinculándoa a un pod cuxo modelo xa coincide. Dar a ese contorno illado o seu propio sistema de ficheiros raíz gravable é entón un clon de copia en escritura en lugar dunha copia completa. Cando ningún pod quente se axusta, materializamos o modelo baixo demanda; colapsamos as solicitudes concorrentes para a mesma imaxe nunha única descarga, polo que unha ráfaga de solicitudes idénticas non se converte nunha ráfaga de traballo idéntico.
O resultado é un tempo de execución de contorno illado que é á vez potente, lixeiro e rapidísimo. Cando implementamos SPACE, executámolo xunto co noso provedor de contorno illado anterior no mesmo tráfico de produción. Durante a semana de lanzamento, SPACE criou contornos illados de tres a cinco veces máis rápido en toda a distribución. Específicamente, a latencia mediana de creación baixou de 185 milisegundos a 60 milisegundos (mellora de 3,1x), e a latencia do percentil 90 baixou de 447 milisegundos a 89 milisegundos (mellora de 5,0x). Observamos melloras similares de orde de magnitude noutros indicadores de rendemento e uso de recursos.

Tamén facilita a realización de instantáneas de disco continuas, xa que son rápidas, eficientes en espazo e non requiren pausar o contorno illado. E o almacenamento delta eficiente reduce o espazo necesario para almacenar estas instantáneas.
Conclusión
Ao deseñar sistemas complexos, é tentador elixir un único obxectivo para optimizar de forma illada. Pero os desenvolvedores de axentes de vangarda exixen seguridade, funcionalidade e eficiencia en igual medida. Con SPACE, propuxémonos acadar unha mellora de Pareto nos tres piares.
Cada decisión de deseño individual pode servir para múltiples obxectivos á vez, facendo posible este delicado equilibrio. As MV por contorno illado dan a cada carga de traballo o seu propio núcleo, reforzando a seguridade mediante un forte illamento ao tempo que proporcionan o límite de punto de control limpo do que dependen as instantáneas. Btrfs permite a implementación eficiente de instantáneas, ramificacións e outras operacións esenciais para os tempos de execución baseados en axentes. O daemon de space mantén toda a interacción cos invitados nun camiño controlado do lado do anfitrión, selando o límite entre o invitado e o anfitrión ao tempo que conserva a liberdade de manobra dos axentes. A pasarela de rede central media a saída e a inxección de credenciais sen expoñer nunca os segredos ao invitado.
O resultado destas e outras decisións de deseño é unha plataforma que permite a orquestración de axentes no mundo real a escala. SPACE proporciona o sustrato sobre o cal os axentes con estado e de longa duración poden abordar de forma segura o traballo de complexidade ou duración arbitraria, sen sacrificar nin o rendemento nin a seguridade.
Hoxe, SPACE xa impulsa millóns de sesións de Perplexity Computer. Pretendemos que SPACE sirva como unha capa unificada para aprovisionar e controlar contornos illados en calquera contorno: desde microVMs de Linux ata invitados de Windows pasando pola propia máquina local dun usuario. Estamos a traballar duro para impulsar SPACE nestes novos contornos, para que os desenvolvedores poidan enviar produtos de intelixencia artificial que funcionen onde queira que traballen os usuarios.
Se estás deseando dar forma á capa de computación que impulsa os axentes de vangarda de mañá, invitámoste a unirte ao noso equipo.