Agent, Skill, Flow, Team y Store conservan identidades y ciclos de vida distintos.
Tecnología
Plataforma de IA nativa de la nube. Sobre .NET empresarial desde el primer día.
El prompt es lo fácil. Lo más difícil es la identidad, el estado, el acceso, las operaciones y un endpoint público estable. Prostir construye esos límites sobre .NET 10, Orleans, Aspire y Microsoft Agent Framework.
La landing estática publica rutas y metadatos explícitos para cada locale no ruso compatible.
Desde el runtime compilado y los recursos cloud hasta la superficie pública estática.
Cada Agent publicado expone su propio endpoint Streamable HTTP ligado al slug.
El recorrido
Tu idea es un prompt. Producción son diez capas empresariales.
Cualquier demo de IA se ve igual dentro de ChatGPT. La distancia real está entre esa demo y un cliente que sigue pagando, y ahí es donde la mayoría de los equipos se atasca. Así que aquí está la nuestra, desde el suelo compilado hasta la URL pública. Diez capas. Cada una es la opción aburrida y de fiar. Cada una es una razón por la que alguien sin código puede lanzar un producto real.
01Los cimientos
.NET 10 y C#: una base compilada y tipada.
Prostir usa .NET 10 y C# 14 para contratos tipados, I/O asíncrono, dependency injection, options, telemetría, HTTP hosting, servicios en segundo plano y source generation. Esas capacidades encajan con un producto que abarca APIs, propietarios de runtime duraderos, endpoints de protocolo y aplicaciones de navegador. El lenguaje por sí solo no garantiza coste, rendimiento, consumo energético ni seguridad de la cadena de suministro: esos resultados dependen de la carga, las dependencias, el despliegue y la operación.
02La nube
Azure: servicios gestionados con límites de despliegue explícitos.
Prostir usa Azure Container Apps, Cosmos DB Serverless, Blob Storage, Monitor, managed identity y RBAC como primitivas cloud. Azure publica documentación de cumplimiento y condiciones de disponibilidad para cada servicio, pero eso no certifica automáticamente a Prostir ni crea un SLA general para el producto. Las regiones y los recursos los aprovisiona el entorno operativo; no los elige un visitante en esta página.
03El puente local
Aspire: un AppHost y cableado de integración.
Prostir.AppHost compone Cosmos DB, Azure Storage, Orleans, API, Gateway, WebApp, Landing y SuperAdmin para flujos locales y pruebas de integración automatizadas. El harness de pruebas es dueño de esas dependencias y recorre límites reales cuando el escenario lo requiere. Eso ayuda a encontrar diferencias de configuración, pero la preparación para producción sigue necesitando validación del despliegue, monitorización y controles de release.
04El runtime distribuido
Orleans: propietarios duraderos del estado.
Microsoft Orleans da a Prostir actores virtuales ligados a una identidad para Agents, sesiones, access grants, workflow runs y otros estados de larga duración. Cada grain posee una responsabilidad acotada y coordina su propio estado en lugar de depender de memoria compartida del proceso. Orleans aporta activación, placement, integraciones de persistencia, reminders y mensajería; Prostir sigue definiendo autorización, límites de producto, gestión de fallos y política operativa.
05La frontera MCP
ManagedCode.MCPGateway: MCP remoto que escala.
La especificación MCP describe un protocolo. No describe inicios de sesión multi-cliente, registros de auditoría, topes de coste ni límites de uso, que es justo lo que necesita un despliegue real. ManagedCode.MCPGateway es la capa de borde que escribió Managed Code para que Prostir no tenga que hacerlo. Se encarga del transporte seguro, el acceso por cliente, los límites por herramienta y las respuestas de error limpias, todo delante del runtime de Orleans hacia el que enruta las llamadas. Una sola URL limpia y protegida da la cara al mundo.
06La capa de conocimiento
ManagedCode.MarkdownLd.Kb: contexto de fuentes consultable.
ManagedCode.MarkdownLd.Kb convierte fuentes compatibles en artefactos Markdown-LD o JSON-LD y datos de grafo que el runtime puede consultar. ManagedCode.Storage posee el límite de archivos y JsonSchema.Net valida los argumentos de las herramientas MCP contra su esquema declarado. La recuperación puede devolver contexto enlazado a fuentes cuando el material indexado lo admite; la calidad de respuesta y las citas siguen dependiendo de las fuentes, la indexación, la configuración y el modelo.
07El cerebro de IA
Un límite de aplicación para los modelos configurados.
Microsoft.Extensions.AI aporta la abstracción IChatClient que usa Prostir, y Microsoft Agent Framework ejecuta Agents prompt y declarativos. Las rutas actuales usan Azure OpenAI, proveedores OpenAI-compatible o conexiones del creador expuestas por ese límite. La disponibilidad y el cambio de modelo dependen de la configuración, las capacidades compatibles, las credenciales y la política del producto.
08El bucle de desarrollo
Entrega asistida por agentes con reglas de ingeniería visibles.
Prostir usa reglas AGENTS.md del repositorio, slices verticales, code review, comprobaciones enfocadas, pruebas de integración y gates de release. Los coding agents ayudan en investigación, implementación y revisión, pero no sustituyen el ownership de producto, el criterio humano ni la verificación de cada cambio.
Claude CodeOpenAI Codex09El borde de producto
Blazor, Stripe and Rozetka Pay, Stateless, Jint: la superficie que ve el creador.
El creador nunca ve el gateway. Ve un workspace en Blazor. El operador nunca ve el mapa de grains. Ve una consola en Blazor Server. Stateless le pone raíles a una conversación. El agente siempre está en algún estado, y el estado decide qué puede pasar después. Ponla en un estado de «reunir los datos» y no saltará a «dar la respuesta» hasta que los datos estén, igual que no enviarías un presupuesto antes de escuchar lo que el cliente necesita. Jint ejecuta pequeños fragmentos de JavaScript en un sandbox cuando una herramienta necesita un número exacto. Stripe and Rozetka Pay integration convierte el acceso de pago en permisos reales, con webhooks, checkout y límites de uso. Esta capa de producto sin glamour es lo que hace que la IA sea usable, y vendible.
10La historia estática
Landing en Astro con metadatos de descubrimiento explícitos.
La página que lees se genera como HTML estático con Astro. Canonical links, hreflang localizado, datos estructurados, sitemap, soporte para IndexNow y llms.txt describen las rutas públicas previstas para las máquinas. Las comprobaciones locales cubren HTML, rastreo, accesibilidad y plantillas de Lighthouse; los buscadores deciden el rastreo, la indexación y el ranking.
El resultado
Un endpoint MCP alojado y observable por Agent publicado.
Las capas se encuentran en una URL MCP ligada al slug de cada Agent publicado. Los clientes compatibles pueden conectarse a ese endpoint Streamable HTTP, mientras acceso, facturación, conocimiento, herramientas, estado, memoria, auditoría y límites siguen siendo capacidades explícitas habilitadas por configuración y entitlements. El runtime usa ASP.NET Core, Aspire, Orleans, ManagedCode.MCPGateway y Microsoft.Extensions.AI.
Por qué .NET
Tres stacks válidos y una elección documentada de Prostir.
Node.js, Python y .NET pueden alojar servidores MCP. La tabla describe las decisiones de implementación de Prostir; no es un ranking universal de rendimiento, coste, energía o seguridad.
| Capacidad | Node.js / Express | Python / FastAPI | Prostir (.NET 10) |
|---|---|---|---|
| Runtime HTTP | Node.js runtime | Python ASGI runtime | ASP.NET Core 10 |
| Estado distribuido ligado a identidad | Choose a state framework | Choose a state framework | Orleans 10.2.2 virtual actors |
| Dependency injection, options y telemetría | Framework or library choice | Framework or library choice | Microsoft.Extensions.* |
| Abstracción de IA | Provider libraries or abstraction | Provider libraries or abstraction | Microsoft.Extensions.AI + Agent Framework 1.15 |
| SDK de MCP | Official MCP TypeScript SDK | Official MCP Python SDK | Official MCP C# SDK 1.4.1 |
| Validación del esquema de herramientas | Library-selected validation | Library-selected validation | JsonSchema.Net 9.3 |
| Modelo de contratos | TypeScript contracts | Python typing tools | C# 14 + source generation |
| Composición local | Local process tooling | Local process tooling | dotnet watch + Aspire AppHost |
Las columnas Node.js y Python nombran opciones habituales, no limitaciones. La columna Prostir se ha comprobado contra los package y project files actuales.
Por qué Azure
El mismo backend MCP. Hecho para la nube en la que corre.
No es una hoja de precios, es una hoja de encaje. Estas son las cosas en las que se apoya un backend MCP de pago y multi-cliente, y dónde cada una encaja mejor en Azure. AWS es excelente. Esto es, simplemente, donde encaja el producto.
| Lo que importa | En AWS | Prostir en Azure |
|---|---|---|
| Evidencia de controles y cumplimiento | Service-specific controls and certifications | Azure service controls; Prostir deployment assessed separately |
| Condiciones de disponibilidad | Per-service and per-region terms | No blanket Prostir SLA is claimed here |
| Ubicación regional | Region configured per workload | Operator-provisioned regional resources |
| Red e ingress | Optional global networking services | Configured Gateway and static-site routing |
| Rutas de proveedor de modelos | Bedrock and partner model routes | Azure OpenAI, OpenAI-compatible, and creator BYOK routes |
| Acceso de clientes | Cognito or custom identity | Prostir access and OAuth policy above the hosting layer |
| Runtime de aplicación | Runtime selected by the team | .NET, Orleans, Aspire, and Managed Code libraries |
| Hosting de la landing estática | S3 + CloudFront or Amplify | Azure Static Web Apps for this landing |
Los proveedores cloud documentan las capacidades de sus servicios. La certificación, el SLA, las regiones desplegadas y los controles operativos de Prostir deben verificarse por separado para el entorno real.
Código abierto
El opensource que publicamos y el que usamos.
Prostir lo construye Managed Code sobre código abierto de Microsoft y de la comunidad. Cada paquete de abajo es uno real de los archivos de nuestro proyecto, no una lista de deseos de marketing.
Hecho por Managed Code
Managed Code no es solo el crédito del pie de página. El gateway MCP, la tubería de conocimiento, el almacenamiento y las integraciones de Orleans que hay bajo tu aplicación publicada son opensource de Managed Code que mantenemos y publicamos.
- Managed CodeEl equipo detrás de Prostir. Liberamos las primitivas de backend que usamos nosotros mismos.
- ManagedCode on GitHubMCPGateway, MarkdownLd.Kb, Storage, Communication, extensiones de Orleans y más.
- ManagedCode.MCPGatewayGateway remoto MCP con OAuth, multi-cliente, auditoría y cuotas por herramienta.
- ManagedCode.MarkdownLd.KbTubería de conocimiento Markdown-LD / JSON-LD con búsqueda sobre grafo.
- ManagedCode.Storage.AzureAbstracción de almacenamiento para archivos, memoria y artefactos de runtime sobre Azure Blob.
- ManagedCode.CommunicationContratos Result, Command y CollectionResult en las fronteras de API y Orleans.
La base de .NET
Todo lo que Microsoft ha ido llevando a GA desde .NET 6 se junta en .NET 10 y Aspire. Esa es la fontanería aburrida y fiable que hay bajo cada página de Prostir.
- .NET 10Runtime compilado, C# 14 y generadores de código fuente.
- ASP.NET Core 10HTTP, auth, OpenAPI, SignalR, JsonPatch, servicios alojados.
- AspireOrquestación del AppHost, valores por defecto del servicio, recursos de despliegue.
- Microsoft Orleans 10Runtime de actores virtuales para .NET distribuido: grains, persistencia, placement, stateless workers y telemetría de dashboard.
- EF Core 10 (Cosmos)Persistencia tipada y modelo de consulta sobre Azure Cosmos DB.
- MudBlazorComponentes de interfaz para el workspace del creador.
IA, MCP y las librerías de encima
Prostir usa Microsoft.Extensions.AI como límite de chat y Microsoft Agent Framework 1.15 para ejecutar Agents. El runtime también usa el SDK oficial de MCP para C# 1.4.1, Jint para herramientas JavaScript acotadas, Stateless para máquinas de estados e integraciones de Stripe y Rozetka Pay para los flujos de pago compatibles.
- Microsoft.Extensions.AIUna interfaz para chat, tool calls y telemetría.
- Microsoft Agent FrameworkMicrosoft Agent Framework 1.15 para Agents prompt y declarativos.
- Model Context Protocol C# SDKEl SDK oficial en C# para servidores y clientes MCP.
- JintUn motor JavaScript dentro de .NET para herramientas acotadas.
- StatelessMáquinas de estados que deciden qué puede hacer el agente a continuación.
- Stripe and Rozetka Pay integrationIntegraciones de Stripe y Rozetka Pay para acceso de pago, checkout y webhooks compatibles.
Cómo se construye y se publica este sitio
Prostir usa desarrollo asistido por agentes junto con reglas del repositorio, code review, comprobaciones automatizadas y ownership humano. AGENTS.md mantiene visible el contrato de entrega y Astro construye la página estática y localizada que estás leyendo.
- Agent-assisted developmentAGENTS.md y las pruebas de integración mantienen predecible el bucle de desarrollo asistido.
- Repository delivery rulesEl desarrollo asistido por agentes sigue las mismas reglas de repositorio y revisión que los demás cambios.
- AstroLas reglas de entrega describen ownership, verificación y límites de release.
FAQ técnico
Preguntas que los equipos hacen antes de construir sobre este stack.
Estas respuestas conectan el stack con decisiones reales de producción: Orleans, Aspire, C#, MCP, facturación, acceso, conocimiento y visibilidad operativa.
¿Qué trabajo real hace Orleans en Prostir?Orleans gestiona identidades de runtime que viven mucho tiempo: agentes, sesiones, clientes, access grants, conversaciones de canales, retenciones de wallet y ejecuciones de workflow. Cada una tiene un id estable, estado y comportamiento, en vez de esconder estado en un singleton, una cache o un proceso de fondo.Leer
¿Cuándo Orleans es mejor que una cola más una API CRUD?Cuando tienes muchas entidades pequeñas, casi independientes, que necesitan request-response, flujos start-monitor-complete o estado por identidad. Microsoft cita user profiles, purchase orders, sessions, stocks y social pub/sub; Prostir aplica ese patrón a agentes, sesiones de cliente y workflow runs.Leer
¿Qué es un grain en términos de producto?Un grain es un actor virtual: un objeto lógico con identidad, comportamiento y estado persistente opcional. En Prostir puede ser un agente publicado, una conversación de cliente, un access grant o una ejecución de workflow.Leer
¿Cómo ayuda Orleans con el aislamiento entre clientes?El estado se clavea por owner, agent, customer o run identity, así que el trabajo cae en grains aislados y no en memoria compartida del proceso. Una sesión rota no se convierte en estado mutable global para todos los demás tenants.Leer
¿Cuáles son los riesgos principales de Orleans?Los riesgos son grains demasiado habladores, un coordinador que se vuelve cuello de botella, llamadas síncronas bloqueantes, mensajes enormes y estado compartido oculto. Prostir los controla con ownership vertical, llamadas async, stateless workers para fan-out y pruebas de integración por el camino real Gateway/API/Orleans.Leer
¿Qué aporta Aspire más allá de Docker Compose?Aspire da a la solución .NET un AppHost que conoce proyectos, dependencias, service discovery, configuración, health, telemetría y recursos cloud. No es solo arrancar procesos; es el grafo de recursos para local, CI y Azure.Leer
¿Cómo usa Prostir Aspire en tests?El AppHost arranca los recursos necesarios para pruebas de integración y browser, incluidos Cosmos DB, Azure Storage, Orleans, API, Gateway, Landing, WebApp y SuperAdmin. Esto ejercita los mismos límites de servicio; producción conserva configuración y controles de release propios del despliegue.Leer
¿Por qué el runtime está en C# y .NET?El runtime necesita contratos fuertes, async IO, dependency injection, options, telemetría, HTTP hosting, background workers, source generation y despliegues predecibles. .NET trae eso como infraestructura first-party, no como piezas sueltas.Leer
¿.NET ata Prostir a un solo proveedor de IA?No. Microsoft.Extensions.AI e `IChatClient` aportan una frontera estable para chat y tools. El modelo concreto procede de una conexión Azure OpenAI, OpenAI-compatible o del creador que cumpla el contrato del runtime.Leer
¿Qué hace difícil MCP en producción?El protocolo es solo la entrada. Un endpoint MCP remoto y de pago también necesita OAuth, access grants, tenant checks, tool schemas, rate limits, cuotas, facturación, auditoría, errores fiables y un hot path que no lea toda la base de datos en cada request.Leer
¿Dónde encaja ManagedCode.MCPGateway?ManagedCode.MCPGateway es el borde de protocolo delante del runtime Orleans. Expone el endpoint MCP remoto, enruta tool calls, aplica límites visibles de herramientas y mantiene el protocolo fuera de la API de estado de producto.Leer
¿Cómo se conecta el pago con permisos de runtime?Checkout y webhooks de los providers del vendedor crean o revocan access grants. Gateway comprueba esos grants antes de llamadas MCP protegidas, así que el estado de pago se convierte en permiso de runtime, no en una hoja de cálculo.Leer
¿Cómo evita la capa de conocimiento el prompt stuffing?Los archivos se convierten en artefactos Markdown-LD / JSON-LD y datos de grafo buscables. El runtime recupera contexto acotado y enlazado a fuentes cuando el índice lo admite; la calidad depende de fuentes, indexación, configuración y modelo.Leer
¿Qué casos reales encajan con este stack?Encajan agentes de conocimiento de pago, copilotos de soporte con memoria de cliente, process agents con state machines, agentes de canal para Telegram o web widgets, skill passports vendibles y workflows que necesitan progreso, retries y audit.Leer
¿Cuándo este stack es demasiado?Si solo necesitas un sitio estático, una demo de prompt o un chatbot privado sin auth, tools, billing, state ni customer memory, usa algo más simple. Prostir es para cuando el agente pasa a ser un producto hospedado del que otros dependen.Leer
¿Prostir funciona por API o por MCP?Para usar un Agent en Claude, ChatGPT y otros clientes compatibles, la entrega se hace mediante su endpoint MCP remoto. Prostir también usa APIs y webhooks para la gestión web, pagos e integraciones aprobadas. La plataforma está alojada en .NET y Azure; conectar un CRM, una base de datos o un sistema privado depende del plan y puede requerir un alcance personalizado.Leer
Tecnología
Lleva la tecnología a un recorrido de producto concreto.
Las guías y los ejemplos muestran dónde cuentan el conocimiento, las herramientas, el estado, la memoria, la facturación, el acceso, las cuotas y la visibilidad para el operador. Los casos de cliente verificados siguen siendo una categoría de evidencia aparte.