Prostir

Tech

Piattaforma IA cloud-native. Su .NET 10 aziendale, dal primo giorno.

Il prompt è la parte facile. Più difficili sono identità, stato, accesso, operazioni e un endpoint pubblico stabile. Prostir costruisce questi confini su .NET 10, Orleans, Aspire e Microsoft Agent Framework.

5superfici di prodotto principali

Agent, Skill, Flow, Company e Store hanno identità e cicli di vita distinti.

14lingue supportate

La landing statica pubblica route e metadata espliciti per ogni locale non russo supportato.

10strati di architettura

Dal runtime compilato e dalle risorse cloud alla superficie pubblica statica.

1endpoint MCP per Agent pubblicato

Ogni Agent pubblicato espone il proprio endpoint Streamable HTTP legato allo slug.

Il percorso

La tua idea è un prompt. La produzione sono dieci strati aziendali.

Ogni demo IA sembra uguale dentro ChatGPT. La distanza reale è tra quella demo e un cliente che continua a pagare, ed è lì che la maggior parte dei company si blocca. Quindi ecco la nostra, dal pavimento compilato fino all'URL pubblico. Dieci strati. Ognuno è la scelta noiosa e affidabile. Ognuno è un motivo per cui anche chi non scrive codice può rilasciare un prodotto vero.

  1. 01Le fondamenta

    .NET 10 e C#: una base compilata e tipizzata.

    Prostir usa .NET 10 e C# per contratti tipizzati, I/O asincrono, dependency injection, options, telemetria, HTTP hosting, servizi in background e source generation. Il linguaggio da solo non garantisce costi, prestazioni, consumo energetico o sicurezza della supply chain: questi risultati dipendono dal carico, dalle dipendenze, dal deployment e dalle operazioni.

    • .NET 10
    • ASP.NET Core
    • C#
    • Source generators
    • Typed contracts
  2. 02Il cloud

    Azure: servizi gestiti con confini di deployment espliciti.

    Prostir usa Azure Container Apps, Cosmos DB Serverless, Blob Storage, Monitor, managed identity e RBAC. Azure pubblica documenti di conformità e termini di disponibilità per i singoli servizi, ma questi non certificano automaticamente Prostir né creano un unico SLA di prodotto. Regioni e risorse sono definite dall'ambiente operativo. I dati Company e le proiezioni di consultazione Store usano account regionali Cosmos e pool di shard separati. I permessi del Tenant e del prodotto vengono verificati esplicitamente; una chiave grain non concede accesso. Un solo Gateway serve i domini dei prodotti. Company si gestisce nel WebApp principale e il suo MCP richiede OAuth e appartenenza attiva.

    • Azure Container Apps
    • Cosmos DB Serverless
    • Azure Blob + Table Storage
    • Azure Monitor
    • Managed identity + RBAC
  3. 03Il ponte locale

    Aspire: un AppHost e wiring di integrazione.

    Prostir.AppHost compone Cosmos DB, Azure Storage, Orleans, API, Gateway, WebApp, Landing e SuperAdmin per flussi locali e test di integrazione. Questo aiuta a trovare differenze di configurazione; la readiness di produzione richiede comunque validazione del deployment, monitoraggio e controlli di release.

    • Aspire AppHost SDK
    • Aspire.Hosting.Azure.CosmosDB
    • Aspire.Hosting.Azure.Storage
    • Aspire.Hosting.Orleans
    • TUnit.Aspire
  4. 04Il runtime distribuito

    Orleans: ogni agente ha un gemello digitale.

    Ecco l'unica idea che rende semplice tutto il resto. Orleans dà a ogni agente un attore virtuale. Pensalo come un gemello digitale: una copia software di una cosa reale, un agente, un cliente, che tiene la propria memoria e fa il proprio lavoro in una stanza chiusa tutta sua, senza che nessun altro la tocchi. Quando tutto è un gemello, il lavoro smette di essere sui server e diventa oggetti che si parlano tra loro. Basta descrivere chi manda quale messaggio a chi: una persona a un gemello, un gemello a un altro gemello. È tutto qui il modello. È vecchio e collaudato. Erlang ha fatto funzionare le reti telefoniche così per decenni quasi senza interruzioni. Orleans si occupa delle parti difficili, come dove vive ogni gemello e come la sua memoria viene salvata e spostata tra le macchine. Così lo scaling non è mai un fragile trucco di cache. È un gemello sicuro e isolato per ogni cosa che conta. Orleans usa Azure Tables per stato, cluster e promemoria, e Azure Blob Storage per i job durabili. I dati di prodotto usano anche EF Core con Cosmos DB. Flow è un prodotto di automazione distinto: Orleans ne gestisce stato, esecuzioni e trigger; Elsa.Workflows.Core esegue il grafo all’interno del processo. I workflow dichiarativi di Agent Framework appartengono all’Agent.

    • Microsoft.Orleans.Server
    • ManagedCode.Orleans.Identity
    • ManagedCode.Orleans.RateLimiting
    • Azure Tables + Blob
    • Elsa.Workflows.Core
  5. 05Il confine MCP

    ManagedCode.MCPGateway: MCP remoto che scala.

    ManagedCode.MCPGateway riunisce gli strumenti locali attivi e quelli selezionati dai server MCP esterni in un catalogo per la ricerca e l’esecuzione. Il protocollo è gestito dall’SDK ufficiale MCP per C#. Prostir.Gateway aggiunge instradamento per prodotto, OAuth, autorizzazione, permessi, quote e audit prima dell’esecuzione in Orleans. Una connessione esterna rende disponibili gli strumenti solo dopo il rilevamento e la selezione esplicita.

    • ManagedCode.MCPGateway
    • ModelContextProtocol
    • Streamable HTTP
    • OAuth + PKCE
    • Bounded quotas
  6. 06Lo strato di conoscenza

    ManagedCode.MarkdownLd.Kb: contesto delle fonti ricercabile.

    ManagedCode.MarkdownLd.Kb trasforma le fonti supportate in artefatti Markdown-LD o JSON-LD e dati di grafo ricercabili. JsonSchema.Net valida gli argomenti degli strumenti MCP. Il recupero può restituire contesto collegato alle fonti quando l'indice lo supporta; qualità e citazioni dipendono comunque dalle fonti, dall'indicizzazione, dalla configurazione e dal modello.

    • ManagedCode.MarkdownLd.Kb
    • ManagedCode.Storage.Azure
    • JsonSchema.Net
    • PdfPig + OpenXml
    • Graph-backed retrieval
  7. 07Il cervello IA

    Un confine applicativo per i modelli configurati.

    Microsoft.Extensions.AI fornisce IChatClient e Microsoft Agent Framework esegue Agents prompt e dichiarativi. Le route correnti usano Azure OpenAI, provider OpenAI-compatible o connessioni del creator. Disponibilità e cambio di modello dipendono da configurazione, capacità compatibili, credenziali e policy di prodotto.

    • Microsoft.Extensions.AI
    • Microsoft.Agents.AI
    • Azure OpenAI + OpenAI-compatible
    • Prompt + declarative workflows
    • IChatClient middleware
  8. 08Il loop di sviluppo

    Sviluppo assistito da agenti con regole visibili.

    Prostir usa regole AGENTS.md, vertical slice, code review, controlli mirati, test di integrazione e gate di release. I coding agent aiutano con ricerca, implementazione e revisione, ma non sostituiscono ownership, giudizio umano o verifica.

    Claude CodeOpenAI Codex
    • AI-assisted delivery
    • AGENTS.md rules
    • Vertical slices
    • Human-reviewed changes
    • Integration test gates
    • TUnit
    • Microsoft.Testing.Platform
  9. 09Il bordo prodotto

    Blazor, Stripe and Rozetka Pay, Stateless, Jint: la superficie verso il creator.

    I creatori gestiscono i prodotti in Blazor WebAssembly con MudBlazor; gli operatori usano una console Blazor Server. Quando il creatore attiva una macchina a stati, Stateless controlla le transizioni configurate. Jint esegue strumenti JavaScript con limiti di istruzioni, memoria, ricorsione e tempo, e accesso limitato a .NET 10. Stripe.net e l’integrazione HTTP di Rozetka Pay gestiscono pagamenti ai venditori, checkout e webhook; gli abbonamenti alla piattaforma usano Stripe. Le funzionalità disponibili dipendono da configurazione e permessi del prodotto.

    • Blazor WebAssembly
    • MudBlazor
    • Stripe.net + Rozetka Pay API
    • Stateless
    • Jint
  10. 10La parte statica

    Landing Astro con metadata di discovery espliciti.

    La pagina viene generata come HTML statico Astro. Canonical link, hreflang, dati strutturati, sitemap, IndexNow e llms.txt descrivono le route pubbliche previste. I controlli locali coprono HTML, crawlability, accessibilità e template Lighthouse; i motori di ricerca decidono crawl, indicizzazione e ranking.

    • Astro
    • JSON-LD + sitemap
    • IndexNow + llms.txt
    • Local Lighthouse checks
    • Localized hreflang

Il risultato

Un endpoint MCP ospitato, osservabile e vendibile per ogni agente.

Gli strati si incontrano in un URL MCP legato allo slug di ogni Agent pubblicato. I client supportati possono collegarsi all'endpoint Streamable HTTP; accesso, fatturazione, conoscenza, strumenti, stato, memoria, audit e limiti restano capacità esplicite abilitate da configurazione ed entitlement.

  • Remote MCP endpoint
  • OAuth 2.1 + entitlements
  • Per-agent quotas + audit
  • Live operator visibility

Perché .NET 10

Tre stack validi, una scelta Prostir documentata.

Node.js, Python e .NET 10 possono ospitare server MCP. La tabella descrive le scelte implementative di Prostir, non una classifica universale di prestazioni, costo, energia o sicurezza.

CapacitàNode.js / ExpressPython / FastAPIProstir (.NET 10)
Runtime HTTPNode.js runtimePython ASGI runtimeASP.NET Core
Stato distribuito per identitàChoose a state frameworkChoose a state frameworkOrleans virtual actors
Dependency injection, options e telemetriaFramework or library choiceFramework or library choiceMicrosoft.Extensions.*
Astrazione IAProvider libraries or abstractionProvider libraries or abstractionMicrosoft.Extensions.AI + Agent Framework
SDK MCPOfficial MCP TypeScript SDKOfficial MCP Python SDKOfficial MCP C# SDK
Validazione degli schema degli strumentiLibrary-selected validationLibrary-selected validationJsonSchema.Net
Modello dei contrattiTypeScript contractsPython typing toolsC# + source generation
Composizione localeLocal process toolingLocal process toolingdotnet watch + Aspire AppHost

Le colonne Node.js e Python indicano scelte comuni, non limiti. La colonna Prostir è verificata nei package e project file correnti.

Perché Azure

Stesso backend MCP. Costruito per il cloud su cui gira.

Non è un listino, è una questione di adattamento. Ecco ciò di cui un backend MCP a pagamento e multi-cliente ha davvero bisogno, e dove ognuna di queste cose si colloca meglio su Azure. AWS è eccellente. Questo è semplicemente dove il prodotto si colloca.

Cosa contaSu AWSProstir su Azure
Evidenza di controlli e conformitàService-specific controls and certificationsAzure service controls; Prostir deployment assessed separately
Termini di disponibilitàPer-service and per-region termsNo blanket Prostir SLA is claimed here
Collocazione regionaleRegion configured per workloadOperator-provisioned regional resources
Rete e ingressOptional global networking servicesConfigured Gateway and static-site routing
Route dei provider di modelliBedrock and partner model routesAzure OpenAI, OpenAI-compatible, and creator BYOK routes
Accesso clienteCognito or custom identityProstir access and OAuth policy above the hosting layer
Runtime applicativoRuntime selected by the company.NET 10, Orleans, Aspire, and Managed Code libraries
Hosting della landing staticaS3 + CloudFront or AmplifyAzure Static Web Apps for this landing

I cloud provider documentano le capacità dei propri servizi. Certificazione, SLA, regioni e controlli operativi di Prostir vanno verificati separatamente per l'ambiente effettivo.

Open source

L'open source che pubblichiamo, l'open source che usiamo.

Prostir è costruito da Managed Code sopra open source di Microsoft e della community. Ogni pacchetto qui sotto è reale, preso dai file del nostro progetto, non una lista dei desideri da marketing.

01

Pubblicato da Managed Code

Managed Code non è solo la firma nel footer. Il gateway MCP, la pipeline di conoscenza, lo storage e le integrazioni Orleans sotto la tuo agente pubblicato sono open source Managed Code che manteniamo e rilasciamo.

02

La base .NET 10

Tutto quello che Microsoft ha portato in GA da .NET 10 in poi converge in .NET 10 e Aspire. È la tubatura noiosa e affidabile sotto ogni pagina di Prostir.

03

IA, MCP e le librerie sopra

Prostir usa Microsoft.Extensions.AI come confine chat e Microsoft Agent Framework per eseguire Agents. Il runtime usa anche l'SDK MCP C#, Jint, Stateless e integrazioni Stripe e Rozetka Pay per i percorsi supportati.

04

Come è costruito e pubblicato questo sito

Prostir usa sviluppo assistito da agenti insieme a regole del repository, code review, controlli automatizzati e ownership umano. AGENTS.md rende visibile il contratto di delivery e Astro genera la pagina statica localizzata.

FAQ tech

Le domande che i company fanno prima di costruire su questo stack.

Queste risposte collegano lo stack a decisioni vere di produzione: Orleans, Aspire, C#, MCP, fatturazione, accesso, conoscenza e visibilità operativa.

Che lavoro reale fa Orleans in Prostir?Orleans gestisce identità di runtime che vivono a lungo: agenti, sessioni, clienti, access grant, conversazioni di canale, wallet hold e workflow run. Ognuna ha un id stabile, stato e comportamento, invece di nascondere stato in un singleton, una cache o un processo in background.Leggi
Quando Orleans è meglio di una coda più una API CRUD?Quando hai molte entità piccole e quasi indipendenti che hanno bisogno di request-response, flussi start-monitor-complete o stato per identità. Microsoft cita user profiles, purchase orders, sessions, stocks e social pub/sub; Prostir applica lo stesso pattern ad agenti, sessioni cliente e workflow run.Leggi
Cos'è un grain in termini di prodotto?Un grain è un attore virtuale: un oggetto logico con identità, comportamento e stato persistente opzionale. In Prostir può essere un agente pubblicato, una conversazione cliente, un access grant o una workflow run.Leggi
Come aiuta Orleans con l'isolamento dei clienti?I dati Company e le proiezioni di consultazione Store usano account regionali Cosmos e pool di shard separati. I permessi del Tenant e del prodotto vengono verificati esplicitamente; una chiave grain non concede accesso. Un solo Gateway serve i domini dei prodotti. Company si gestisce nel WebApp principale e il suo MCP richiede OAuth e appartenenza attiva.Leggi
Quali sono i rischi principali di Orleans?I rischi sono grain troppo chiacchieroni, un coordinatore collo di bottiglia, chiamate sincrone bloccanti, messaggi enormi e stato condiviso nascosto. Prostir li tiene visibili con ownership verticale, chiamate async, stateless worker per fan-out e test di integrazione sul percorso reale Gateway/API/Orleans.Leggi
Cosa aggiunge Aspire rispetto a Docker Compose?Aspire compone progetti, dipendenze, individuazione dei servizi, controlli di integrità e telemetria per sviluppo locale e test di integrazione. Aspire.Hosting.Blazor serve l’applicazione WebAssembly locale. Bicep e le pipeline Azure DevOps gestiscono risorse e rilasci di produzione.Leggi
Come usa Prostir Aspire nei test?L'AppHost avvia le risorse richieste dai test di integrazione e browser, tra cui Cosmos DB, Azure Storage, Orleans, API, Gateway, Landing, WebApp e SuperAdmin. Questo esercita gli stessi confini di servizio; la produzione mantiene configurazione e controlli di release specifici del deployment.Leggi
Perché il runtime è in C# e .NET 10?Il runtime richiede contratti forti, async IO, dependency injection, options, telemetria, HTTP hosting, background worker, source generation e deployment prevedibile. .NET 10 offre tutto questo come infrastruttura first-party, non come pacchetti sparsi.Leggi
.NET 10 lega Prostir a un solo provider IA?No. Microsoft.Extensions.AI e `IChatClient` offrono un confine stabile per chat e tool. Il modello concreto arriva da una connessione Azure OpenAI, OpenAI-compatible o del creator che rispetta il contratto runtime.Leggi
Cosa rende difficile MCP in produzione?Il protocollo è solo l'ingresso. Un endpoint MCP remoto e a pagamento ha bisogno anche di OAuth, access grant, tenant check, tool schema, rate limit, quote, billing, audit trail, errori affidabili e un hot path che non legga tutto il database a ogni request.Leggi
Dove entra ManagedCode.MCPGateway?ManagedCode.MCPGateway riunisce gli strumenti locali attivi e quelli selezionati dai server MCP esterni in un catalogo per la ricerca e l’esecuzione. Il protocollo è gestito dall’SDK ufficiale MCP per C#. Prostir.Gateway aggiunge instradamento per prodotto, OAuth, autorizzazione, permessi, quote e audit prima dell’esecuzione in Orleans. Una connessione esterna rende disponibili gli strumenti solo dopo il rilevamento e la selezione esplicita.Leggi
Come l'accesso pagato diventa permesso di runtime?Checkout e webhook dei provider del venditore creano o revocano access grant. Gateway li controlla prima delle chiamate MCP protette, quindi lo stato del pagamento diventa un permesso di runtime, non un foglio di calcolo.Leggi
Come la knowledge layer evita il prompt stuffing?I file diventano artefatti Markdown-LD / JSON-LD e dati di grafo ricercabili. Il runtime recupera contesto limitato e collegato alle fonti quando l'indice lo supporta; la qualità dipende da fonti, indicizzazione, configurazione e modello.Leggi
Quali casi reali stanno bene su questo stack?Vanno bene agenti di conoscenza a pagamento, copiloti supporto con memoria cliente, process agent con state machine, agenti di canale per Telegram o web widget, skill passport vendibili e workflow che richiedono progresso, retry e audit.Leggi
Quando questo stack è troppo?Se ti serve solo un sito statico, una demo di prompt o un chatbot privato senza auth, tool, billing, state o customer memory, scegli qualcosa di più semplice. Prostir serve quando l'agente diventa un prodotto ospitato su cui altri fanno affidamento.Leggi
Prostir funziona tramite API o MCP?Per usare un Agent in Claude, ChatGPT e altri client compatibili, il percorso è il suo endpoint MCP remoto. Prostir usa anche API e webhooks per gestione web, pagamenti e integrazioni approvate. La piattaforma è ospitata su .NET e Azure; collegare un CRM, un database o un sistema privato dipende dal piano e può richiedere un ambito personalizzato.Leggi

Tech

Collega la tecnologia a un percorso di prodotto concreto.

Guide ed esempi mostrano dove contano conoscenza, strumenti, stato, memoria, fatturazione, accesso, quote e visibilità operativa. I casi cliente verificati restano una categoria separata.