
Semantic Kernel
https://github.com/microsoft/semantic-kernel- Category
- AI Agents
- Rank
- No. 149Tools index
- Pricing
- Open Source
- Type
- TOOL
- Builder
- microsoft
- GitHub
- 28.5k stars
- Latest release
- dotnet-1.80.1
- Date
About
Microsoft's SDK for integrating LLMs into apps with planners, memory, plugins, and orchestration across C#, Python, and Java.
What it does
Semantic Kernel acts as a programmable bridge between user requests, language models, and application capabilities. Developers define agents, attach domain tools or prompts, choose model services, and compose specialists into conversations or structured business workflows.
Why it's ranked here
The verdict is mixed. Its broad provider support, plugin model, structured output, local model options, and multi-agent patterns make it technically substantial. However, Microsoft now directs users to Microsoft Agent Framework as the production-ready successor, making Semantic Kernel easier to justify for existing systems than new foundations.
What's good
Plugins can come from native code, prompt templates, OpenAPI specifications, or MCP. Agents can use different model services, including local deployments, while the framework covers text, vision, and audio. The documented agent abstractions also separate identity, behavior, conversation state, selection, and termination concerns.
Tradeoffs
The project has been superseded by Microsoft Agent Framework. Its shared memory abstraction can also hide important differences among vector databases, including asynchronous resource creation. Several retrieval features are described as experimental, and the documented retrieval scope excludes reading source data, leaving ingestion to the application or another tool.
How to use it well
Use it when maintaining an existing Semantic Kernel application or when testing agent composition, plugins, structured responses, and model portability across supported runtimes. Keep provider and storage details behind your own boundaries to ease migration. Do not expect it to supply the complete retrieval pipeline, especially source reading and ingestion.
Technical notes+
README.md presents Python and .NET quickstarts around ChatCompletionAgent, with plugins, structured output, and specialist-agent composition. docs/decisions/0069-mcp.md maps MCP servers to plugins, tools to functions, and kernels or agents to server exposure, while marking resources, sampling, roots, completion, and progress partly unclear or unmapped. docs/decisions/0034-rag-in-sk.md documents the IMemoryStore and MemoryRecord abstraction limits, notes experimental retrieval components, and explicitly leaves data reading outside scope. docs/decisions/0032-agents.md defines direct invocation, agent chat, channels, group selection, and termination strategies.
Observed
- License
- MIT
- Languages
- Python, C#, and Java SDK surfaces are documented.
- Installation
- Python installs through pip; .NET installs through NuGet packages; Java has separate build instructions.
- Interface
- Library SDK with plugins from native code, prompt templates, OpenAPI specifications, or MCP.
- Platform support
- Windows, macOS, and Linux.
- Runtime requirements
- Python 3.10+, .NET 10.0+, and JDK 17+.
- Project direction
- The README identifies Microsoft Agent Framework as Semantic Kernel's successor.
Read from README.md, docs/FAQS.md, docs/PLUGINS.md, docs/GLOSSARY.md, docs/PLANNERS.md, docs/EMBEDDINGS.md, docs/DOT_PRODUCT.md, docs/COSINE_SIMILARITY.md, docs/EUCLIDEAN_DISTANCE.md, docs/PROMPT_TEMPLATE_LANGUAGE.md, docs/decisions/README.md, docs/decisions/0069-mcp.md, docs/decisions/0032-agents.md, docs/decisions/adr-template.md, docs/decisions/0034-rag-in-sk.md.
What it can do
Integrate large language models into applications
LLM API endpoints and application code → Applications with embedded LLM functionality
Create and execute AI-powered plans
Natural language goals and available functions → Step-by-step execution plans with results
Store and retrieve conversational memory
Chat history and context data → Persistent conversation state and recall
Orchestrate multiple AI functions and plugins
Collection of AI plugins and execution requests → Coordinated multi-step AI workflows
Build custom AI plugins
Function definitions and implementation code → Reusable AI-enabled components
Generate cross-platform AI applications
Development requirements in C#, Python, or Java → Native applications with AI capabilities
Tags
Tech Stack
Media

Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.