Skip to main content

Core Overview

CrestApps.Core is built to be the one framework you need to integrate AI into an existing .NET application. It combines AI management, orchestration, chat, document intelligence, RAG, agent workflows, protocol support, reporting, and extensibility into a single composable platform.

What makes it valuable

  • Faster adoption - integrate advanced AI capabilities without rebuilding the supporting infrastructure
  • Cleaner architecture - keep prompts, profiles, tools, handlers, and defaults reusable instead of scattering them across the app
  • Provider flexibility - switch models and providers without rewriting application logic
  • Business-ready workflows - support lead generation, support automation, reporting, document analysis, and custom workflows
  • State-of-the-art integration - use modern protocols such as MCP and A2A with a .NET-first developer experience

Core capabilities

CapabilityWhat it enables
AI managementConnections, deployments, agent profiles, data sources, templates, and runtime configuration
Reusable AI agent profilesPredefined behavior, prompts, model settings, tools, and retrieval rules for every session
Chat interactionsProvider-agnostic chat playgrounds and production chat experiences
Documents and knowledgeUpload files for summarization, extraction, tabulation, Q&A, and retrieval
RAGBlend attached documents, data sources, and user memory with configurable preemptive retrieval
AI agentsCreate specialized agents and coordinate work between them
MCP and A2AExpose capabilities, connect to remote systems, and participate in protocol-driven ecosystems
ExtensibilityAdd custom AI functions, stores, handlers, authorization, templates, and runtime behavior
Metrics and reportingTrack chat activity, consumption, lead workflows, and post-session outcomes
Memory and personalizationBuild assistants that remember durable user context over time

Quick start

builder.Services.AddCrestAppsCore(crestApps => crestApps
.AddAISuite(ai => ai
.AddOpenAI()
.AddChatInteractions()
)
);

That is enough to start resolving IAICompletionService, IAIClientFactory, or IOrchestrator from DI and composing your own AI experience.

By default:

  • connections are loaded from CrestApps:AI:Connections
  • deployments are loaded from CrestApps:AI:Deployments

The quickest way to validate the setup is to use Chat Interactions first, then create an AI Profile when you want reusable chat, agent, or orchestration behavior.

Package map

AreaMain packagePurpose
FoundationCrestApps.CoreShared models, validation, catalog helpers, and host utilities
AI runtimeCrestApps.Core.AIDeployments, profiles, completions, orchestration, tools, and memory
ChatCrestApps.Core.AI.ChatChat sessions, widgets, handlers, and metrics
DocumentsCrestApps.Core.AI.DocumentsUploaded-document ingestion, processing, storage abstractions, and document RAG
TemplatesCrestApps.Core.TemplatesReusable prompts and template-driven profile composition
ProvidersProvider packagesOpenAI, Azure OpenAI, Azure AI Inference, and Ollama integrations
ProtocolsCrestApps.Core.AI.Mcp, CrestApps.Core.AI.A2AMCP and A2A client/server building blocks
PersistenceCrestApps.Core.Data.YesSqlYesSql-backed catalogs and AI persistence implementations
Sample hostsCrestApps.Core.Mvc.Web, CrestApps.Core.Aspire.AppHostReference composition and local orchestration

Feature map

FeatureExtension methodPackageLearn more
Builder entrypointAddCrestAppsCore(builder => ...)CrestApps.CoreASP.NET Core integration
Core servicesAddCoreServices()CrestApps.CoreCore Services
AI servicesAddCoreAIServices()CrestApps.Core.AIAI Core
OrchestrationAddCoreAIOrchestration()CrestApps.Core.AIOrchestration Overview
ChatAddCoreAIChatInteractions()CrestApps.Core.AI.ChatChat Interactions
DocumentsAddCoreAIDocumentProcessing()CrestApps.Core.AI.DocumentsDocument Processing
TemplatesAddTemplating()CrestApps.Core.TemplatesAI Templates
Custom toolsAddCoreAITool<T>()CrestApps.Core.AICustom AI Tools
AgentsAgent and orchestration registrationsCrestApps.Core.AIAI Agents
Copilot orchestrationAddCoreAICopilotOrchestrator()CrestApps.Core.AI.CopilotCopilot Orchestrator
Claude orchestrationAddCoreAIClaudeOrchestrator()CrestApps.Core.AI.ClaudeClaude Orchestrator
SignalR and widgetsAddCoreSignalR()CrestApps.Core.SignalRSignalR
Data storageStore registration extensionsCrestApps.Core.Data.YesSqlData Storage
AI clientsProvider-specific extensionsProvider packagesAI Clients
Data sourcesBackend-specific extensionsSearch packagesData Sources
MCPAddCoreAIMcpClient() / AddCoreAIMcpServer()CrestApps.Core.AI.McpMCP
A2AAddCoreAIA2AClient()CrestApps.Core.AI.A2AA2A

Start with outcomes

If you want to evaluate the framework by business need instead of package names, start with AI Chat Use Cases.