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 managementProfiles, connections, deployments, data sources, templates, and runtime configuration
Reusable AI 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
.AddMarkdown()
.AddChatInteractions()
.AddDocumentProcessing()
.AddOpenAI()));

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

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, metrics, and document-aware chat
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
ChatAddCoreAIChatInteractions()CrestApps.Core.AI.ChatChat Interactions
DocumentsAddCoreAIDocumentProcessing()CrestApps.Core.AI.ChatDocument 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.CopilotGitHub Copilot Orchestrator
SignalR and widgetsAddCoreSignalR()CrestApps.Core.SignalRSignalR
Data storageStore registration extensionsCrestApps.Core.Data.YesSqlData Storage
ProvidersProvider-specific extensionsProvider packagesAI Providers
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.