semantic-kernel
github/awesome-copilot
Create, update, and review Semantic Kernel solutions with language-specific guidance for .NET and Python.
What is semantic-kernel?
This skill provides structured guidance for working with Semantic Kernel applications, plugins, and AI integrations. It helps you choose between .NET and Python workflows, consult live documentation, and apply shared best practices for async patterns, error handling, and AI service integration.
- Determine target language (.NET or Python) based on project files or user intent
- Provide language-specific implementation guidance with official references
- Guide plugin and function-calling flow design following current Semantic Kernel patterns
- Recommend appropriate AI service connectors (Azure AI Foundry, Azure OpenAI, OpenAI)
- Apply shared best practices for async operations, error handling, and memory management
- Explain differences between repository examples and current supported patterns
How to install semantic-kernel
npx skills add https://github.com/github/awesome-copilot --skill semantic-kernel- Semantic Kernel SDK installed for your target language (.NET or Python)
- Access to official Semantic Kernel documentation at https://learn.microsoft.com/semantic-kernel/
- Configured AI service credentials (Azure OpenAI, OpenAI, or Azure AI Foundry)
How to use semantic-kernel
- 1.Identify whether your project uses .NET or Python by inspecting project files (.cs, .csproj, .py, pyproject.toml, etc.)
- 2.Consult the language-specific reference file (dotnet.md or python.md) for package names and patterns
- 3.Read the latest Semantic Kernel overview and official documentation before implementing
- 4.Apply shared guidance: use async patterns, implement error handling, prefer strong typing, and use built-in connectors
- 5.Follow the kernel's plugin and function-calling patterns from current samples
- 6.When examples differ from docs, apply the current supported pattern and explain the difference
Use cases
- Building a new Semantic Kernel application in .NET or Python from scratch
- Refactoring existing Semantic Kernel code to follow current best practices
- Creating custom plugins and function-calling flows for AI agents
- Integrating Azure OpenAI or OpenAI services into a Semantic Kernel solution
- Reviewing and explaining Semantic Kernel implementation patterns in a codebase
- Backend developers building AI-integrated applications
- Teams using Semantic Kernel for plugin-based AI workflows
- Developers migrating or maintaining Semantic Kernel projects across .NET and Python
- AI engineers implementing function-calling and memory patterns
semantic-kernel FAQ
Inspect your repository for language-specific files (.cs/.csproj for .NET, .py/pyproject.toml for Python). If both exist, match the language of the files being edited or follow the user's explicit request.
Prefer Azure AI Foundry services for new projects when it fits the task. Use built-in connectors for both, and apply DefaultAzureCredential for Azure authentication.
Always follow the current supported pattern from official Semantic Kernel documentation. Explain the difference to help the user understand the evolution of the framework.
Yes. Always consult the latest Semantic Kernel overview and official docs before making implementation choices rather than relying on memory alone.
Use async patterns for all kernel operations, following the official Semantic Kernel samples and best practices for your target language.
Full instructions (SKILL.md)
Source of truth, from github/awesome-copilot.
name: semantic-kernel description: 'Create, update, refactor, explain, or review Semantic Kernel solutions using shared guidance plus language-specific references for .NET and Python.'
Semantic Kernel
Use this skill when working with applications, plugins, function-calling flows, or AI integrations built on Semantic Kernel.
Always ground implementation advice in the latest Semantic Kernel documentation and samples rather than memory alone.
Determine the target language first
Choose the language workflow before making recommendations or code changes:
- Use the .NET workflow when the repository contains
.cs,.csproj,.sln, or other .NET project files, or when the user explicitly asks for C# or .NET guidance. Follow references/dotnet.md. - Use the Python workflow when the repository contains
.py,pyproject.toml,requirements.txt, or the user explicitly asks for Python guidance. Follow references/python.md. - If the repository contains both ecosystems, match the language used by the files being edited or the user's stated target.
- If the language is ambiguous, inspect the current workspace first and then choose the closest language-specific reference.
Always consult live documentation
- Read the Semantic Kernel overview first: https://learn.microsoft.com/semantic-kernel/overview/
- Prefer official docs and samples for the current API surface.
- Use the Microsoft Docs MCP tooling when available to fetch up-to-date framework guidance and examples.
Shared guidance
When working with Semantic Kernel in any language:
- Use async patterns for kernel operations.
- Follow official plugin and function-calling patterns.
- Implement explicit error handling and logging.
- Prefer strong typing, clear abstractions, and maintainable composition patterns.
- Use built-in connectors for Azure AI Foundry, Azure OpenAI, OpenAI, and other AI services, while preferring Azure AI Foundry services for new projects when that fits the task.
- Use the kernel's memory and context-management capabilities when they simplify the solution.
- Use
DefaultAzureCredentialwhen Azure authentication is appropriate.
Workflow
- Determine the target language and read the matching reference file.
- Fetch the latest official docs and samples before making implementation choices.
- Apply the shared Semantic Kernel guidance from this skill.
- Use the language-specific package, repository, sample paths, and coding practices from the chosen reference.
- When examples in the repo differ from current docs, explain the difference and follow the current supported pattern.
References
Completion criteria
- Recommendations match the target language.
- Package names, repository paths, and sample locations match the selected ecosystem.
- Guidance reflects current Semantic Kernel documentation rather than stale assumptions.
Related skills
More from github/awesome-copilot and the wider catalog.

shuffle-json-data
Safely shuffle JSON objects by validating schema consistency before randomizing entries.

snowflake-semanticview
Create, alter, and validate Snowflake semantic views using Snowflake CLI with built-in validation workflow.

sponsor-finder
Find sponsorable dependencies in your GitHub repository and discover funding opportunities for maintainers.

spring-boot-testing
Expert Spring Boot 4 testing specialist selecting optimal techniques with JUnit 6 and AssertJ.

sql-code-review
Comprehensive SQL code review for security, performance, and maintainability across MySQL, PostgreSQL, SQL Server, and Oracle.

sql-optimization
Universal SQL performance optimization across MySQL, PostgreSQL, SQL Server, and Oracle with execution plan analysis and indexing strategies.