$ show junkai-li/NetCoreKevin
NetCoreKevin is an enterprise-level AI middleware platform built on .NET 9 with a Vue 3 frontend. It provides a multi-tenant SaaS backend with AI agent capabilities, RAG knowledge base, permission management, file storage, messaging, and code generation. The architecture follows Domain-Driven Design with modular plug-ins, featuring a generic repository pattern, base service classes, and extensive cross-cutting concerns (caching, logging, transaction management, distributed locks). The AI agent framework supports tool calling, skill management, memory, safety layers, and streaming responses. The frontend uses Ant Design Vue with multi-theme support. While the codebase is well-structured and feature-rich, it exhibits some technical debt such as static service locators, large helper classes, and raw SQL usage in places. Overall, it is a solid, production-ready application with reusable components.
The LLM identified 5 files worth highlighting for reuse:
Provides advanced Excel import/export capabilities using NPOI, supporting merged cells, multi-level headers, attribute-driven field mapping, and memory stream output. Reusable in any .NET project requiring Excel operations without external dependencies.
Abstracts Qdrant vector database operations (upsert, search, collection management) with configurable distance metrics and threshold filtering. Demonstrates clean separation of storage concerns for RAG pipelines.
Core AI agent orchestration service that manages conversation context, tool execution, streaming responses, retry logic, and fallback models. Encapsulates complex AI interaction patterns in a reusable, configurable manner.
Custom attribute for describing controller actions, enabling dynamic permission discovery and assignment. Part of a comprehensive permission system that integrates with the application's modular architecture.
Implements a processing pipeline for extracting clean text from PDF, Word, Excel, HTML, and image files. Uses OCR for images and handles various encodings. Reusable for any RAG or document analysis system.