LA PLATAFORMA
Lo que corre por debajo de la declaración
Un conjunto de servicios en Rust con límites estrictos entre ellos, coordinados por eventos y guiados por las mismas declaraciones que lee la CLI.
Capacidades
Ejecución como DAG tipado
Las canalizaciones de servicios de tarea de un workspace se declaran como grafos Nickel tipados, con la integridad referencial comprobada en el esquema. El paralelismo y el tratamiento de errores se declaran; no quedan implícitos.
Coordinación sobre NATS JetStream
Un bus de eventos persistente es el único intermediario entre servicios. Intercambian eventos de concesión, de tarea y de estado; las credenciales nunca viajan por el bus.
Seguridad de extremo a extremo
Políticas Cedar para la autorización, sesiones gestionadas solo por el Control Center y secretos servidos por SecretumVault mediante referencias de concesión: los servicios nunca guardan los valores.
Extensión mediante OCI
Proveedores, servicios de tarea y definiciones de clúster se distribuyen como artefactos OCI. El contrato de componente se direcciona por contenido y se fija por digest; nunca se copia.
Un registro, todas las superficies
La CLI, HTTP y MCP despachan a través de un registro compartido, de modo que una operación tiene la misma semántica la invoques como la invoques.
Versiones centralizadas
Cada versión de herramienta y de proveedor se define en esquemas Nickel, y de ellos se generan exportaciones compatibles con shell: una única fuente de verdad para Nushell, Nickel, SOPS, Age y los proveedores.
Límites entre servicios
Cada responsabilidad vive en un único lugar. Una infracción se detecta al compilar, durante el desarrollo, antes del commit, en CI, en ejecución o en auditoría.
API de proveedor → solo el orquestador
Cada llamada a un SDK en la nube queda aislada en el orquestador, y SSH en el orquestador y en el servicio de máquinas; el resto pasa por la API HTTP del orquestador. El SSH a un nodo se verifica contra sus claves de host fijadas.
Autorización → solo el Control Center
La validación de tokens y la evaluación de políticas Cedar ocurren solo en el Control Center. Los demás servicios reciben un contexto de usuario y nunca vuelven a evaluar una política.
Secretos → solo el vault
Las credenciales nunca se guardan en mensajes ni en variables de entorno. Un servicio tiene una concesión y obtiene el secreto del servicio de vault por HTTPS.
Servicios de plataforma
Los servicios en Rust que forman el plano de control.
- Orchestrator
- API de proveedor y límite SSH; máquina de estados de tareas, webhooks y vuelta atrás.
- Control Center
- El límite de autorización: políticas Cedar y sesiones.
- Control Center UI
- Panel web compilado a WebAssembly con Leptos.
- SecretumVault
- API de secretos con ciclo de vida de concesiones y criptografía poscuántica.
- Registro de extensiones
- Catálogo de proveedores, servicios de tarea y clústeres.
- Servidor MCP
- Herramientas y recuperación para agentes, sobre el registro compartido.
- Servicio de IA
- Capa de inferencia de modelos tras las herramientas MCP.
- Detector
- Detección de eventos en toda la plataforma.
- Daemon CLI
- Ciclo de vida de los servicios en la máquina del operador.
- Machines
- Gestión de máquinas.
- Observability
- Métricas de Prometheus.
- Backup
- Copia de seguridad del estado.
- Encrypt
- Operaciones con claves.
Tecnología
- Nickel
- Nushell
- Rust
- NATS JetStream
- SurrealDB
- Cedar
- Leptos WASM
- Kubernetes
- Docker Compose
- SOPS
- Age
- OCI
- Git
Empieza por la declaración
Lee qué es Provisioning y los conceptos sobre los que se construye, o pregunta por su uso en tu infraestructura.