orleans-multiservice-pattern

Organize multiple logical services inside a single Orleans silo.

7|Updated Mar 13, 2026
One-click install
npx skills add https://github.com/VincentH-Net/dotnet-agentic-engineering --skill orleans-multiservice-pattern
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: orleans-multiservice-pattern
Source: https://github.com/VincentH-Net/dotnet-agentic-engineering/tree/main/plugins/orleans/skills/orleans-multiservice-pattern
Command: npx skills add https://github.com/VincentH-Net/dotnet-agentic-engineering --skill orleans-multiservice-pattern

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Organize multiple logical services inside a single Orleans silo.

Core Features & Use Cases

  • Three-project structure: Apis.<Service>Api, Contracts.<Service>Contract, <Service>Service with constrained access.
  • Silo-hosted orchestration: Provides a unified Orleans host and optional AddLogicalService.ps1 to extend the multiservice.
  • Future extraction readiness: Enables cheap extraction into separate microservices while preserving dependencies.

Quick Start

Create a new multiservice with its first logical service using the Orleans multiservice template.

Frequently Asked Questions about orleans-multiservice-pattern

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I organize multiple logical services inside a single Orleans silo?

To organize multiple logical services inside a single Orleans silo, use a modular monolith pattern that enforces a three-project structure for each service, comprising Apis, Contracts, and Service components with constrained access boundaries.

What is the MonolithFirst architecture pattern for .NET Orleans backends?

The MonolithFirst architecture pattern for .NET Orleans backends hosts multiple logical services within a unified silo, establishing clean dependency boundaries that enable cheap and future-ready extraction into separate microservices.

How do I structure a new Orleans service to allow future extraction into microservices?

To structure a new Orleans service for future microservice extraction, apply a three-project structure consisting of Apis.<Service>Api, Contracts.<Service>Contract, and <Service>Service to maintain strict dependency separation.

Can I add a new logical service to an existing Orleans multiservice silo?

Yes, you can add a new logical service to an existing Orleans multiservice silo by using the optional AddLogicalService.ps1 script to extend the multiservice architecture while preserving clean dependency boundaries.

When should I choose a modular monolith over separate microservices for Orleans?

You should choose a modular monolith over separate microservices for new Orleans backends when adopting a MonolithFirst strategy, allowing you to delay distributed deployment costs while preserving the ability to extract services later.