Skip to content

Commit e3d8002

Browse files
TianqiZhangCopilot
andauthored
add microsoft-skill-creator (#106)
* add microsoft-skill-creator * fix according to copilot review suggestions * Update skills/microsoft-skill-creator/references/skill-templates.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update skills/microsoft-skill-creator/references/skill-templates.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix fetch tool usage in skill template * Bump version from 0.2.0 to 0.3.0 * remove python from code blocks --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
1 parent 919a928 commit e3d8002

3 files changed

Lines changed: 551 additions & 1 deletion

File tree

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "microsoft-docs",
33
"description": "Access official Microsoft documentation, API references, and code samples for Azure, .NET, Windows, and more.",
4-
"version": "0.2.0",
4+
"version": "0.3.0",
55
"author": {
66
"name": "Microsoft"
77
},
Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
---
2+
name: microsoft-skill-creator
3+
description: Create agent skills for Microsoft technologies using Learn MCP tools. Use when users want to create a skill that teaches agents about any Microsoft technology, library, framework, or service (Azure, .NET, M365, VS Code, Bicep, etc.). Investigates topics deeply, then generates a hybrid skill storing essential knowledge locally while enabling dynamic deeper investigation.
4+
context: fork
5+
compatibility: Requires Microsoft Learn MCP Server (https://learn.microsoft.com/api/mcp)
6+
---
7+
8+
# Microsoft Skill Creator
9+
10+
Create hybrid skills for Microsoft technologies that store essential knowledge locally while enabling dynamic Learn MCP lookups for deeper details.
11+
12+
## About Skills
13+
14+
Skills are modular packages that extend agent capabilities with specialized knowledge and workflows. A skill transforms a general-purpose agent into a specialized one for a specific domain.
15+
16+
### Skill Structure
17+
18+
```
19+
skill-name/
20+
├── SKILL.md (required) # Frontmatter (name, description) + instructions
21+
├── references/ # Documentation loaded into context as needed
22+
├── sample_codes/ # Working code examples
23+
└── assets/ # Files used in output (templates, etc.)
24+
```
25+
26+
### Key Principles
27+
28+
- **Frontmatter is critical**: `name` and `description` determine when the skill triggers—be clear and comprehensive
29+
- **Concise is key**: Only include what agents don't already know; context window is shared
30+
- **No duplication**: Information lives in SKILL.md OR reference files, not both
31+
32+
## Learn MCP Tools
33+
34+
| Tool | Purpose | When to Use |
35+
|------|---------|-------------|
36+
| `microsoft_docs_search` | Search official docs | First pass discovery, finding topics |
37+
| `microsoft_docs_fetch` | Get full page content | Deep dive into important pages |
38+
| `microsoft_code_sample_search` | Find code examples | Get implementation patterns |
39+
40+
## Creation Process
41+
42+
### Step 1: Investigate the Topic
43+
44+
Build deep understanding using Learn MCP tools in three phases:
45+
46+
**Phase 1 - Scope Discovery:**
47+
```
48+
microsoft_docs_search(query="{technology} overview what is")
49+
microsoft_docs_search(query="{technology} concepts architecture")
50+
microsoft_docs_search(query="{technology} getting started tutorial")
51+
```
52+
53+
**Phase 2 - Core Content:**
54+
```
55+
microsoft_docs_fetch(url="...") # Fetch pages from Phase 1
56+
microsoft_code_sample_search(query="{technology}", language="{lang}")
57+
```
58+
59+
**Phase 3 - Depth:**
60+
```
61+
microsoft_docs_search(query="{technology} best practices")
62+
microsoft_docs_search(query="{technology} troubleshooting errors")
63+
```
64+
65+
#### Investigation Checklist
66+
67+
After investigating, verify:
68+
- [ ] Can explain what the technology does in one paragraph
69+
- [ ] Identified 3-5 key concepts
70+
- [ ] Have working code for basic usage
71+
- [ ] Know the most common API patterns
72+
- [ ] Have search queries for deeper topics
73+
74+
### Step 2: Clarify with User
75+
76+
Present findings and ask:
77+
1. "I found these key areas: [list]. Which are most important?"
78+
2. "What tasks will agents primarily perform with this skill?"
79+
3. "Which programming language should code samples prioritize?"
80+
81+
### Step 3: Generate the Skill
82+
83+
Use the appropriate template from [skill-templates.md](references/skill-templates.md):
84+
85+
| Technology Type | Template |
86+
|-----------------|----------|
87+
| Client library, NuGet/npm package | SDK/Library |
88+
| Azure resource | Azure Service |
89+
| App development framework | Framework/Platform |
90+
| REST API, protocol | API/Protocol |
91+
92+
#### Generated Skill Structure
93+
94+
```
95+
{skill-name}/
96+
├── SKILL.md # Core knowledge + Learn MCP guidance
97+
├── references/ # Detailed local documentation (if needed)
98+
└── sample_codes/ # Working code examples
99+
├── getting-started/
100+
└── common-patterns/
101+
```
102+
103+
### Step 4: Balance Local vs Dynamic Content
104+
105+
**Store locally when:**
106+
- Foundational (needed for any task)
107+
- Frequently accessed
108+
- Stable (won't change)
109+
- Hard to find via search
110+
111+
**Keep dynamic when:**
112+
- Exhaustive reference (too large)
113+
- Version-specific
114+
- Situational (specific tasks only)
115+
- Well-indexed (easy to search)
116+
117+
#### Content Guidelines
118+
119+
| Content Type | Local | Dynamic |
120+
|--------------|-------|---------|
121+
| Core concepts (3-5) | ✅ Full | |
122+
| Hello world code | ✅ Full | |
123+
| Common patterns (3-5) | ✅ Full | |
124+
| Top API methods | Signature + example | Full docs via fetch |
125+
| Best practices | Top 5 bullets | Search for more |
126+
| Troubleshooting | | Search queries |
127+
| Full API reference | | Doc links |
128+
129+
### Step 5: Validate
130+
131+
1. Review: Is local content sufficient for common tasks?
132+
2. Test: Do suggested search queries return useful results?
133+
3. Verify: Do code samples run without errors?
134+
135+
## Common Investigation Patterns
136+
137+
### For SDKs/Libraries
138+
```
139+
"{name} overview" → purpose, architecture
140+
"{name} getting started quickstart" → setup steps
141+
"{name} API reference" → core classes/methods
142+
"{name} samples examples" → code patterns
143+
"{name} best practices performance" → optimization
144+
```
145+
146+
### For Azure Services
147+
```
148+
"{service} overview features" → capabilities
149+
"{service} quickstart {language}" → setup code
150+
"{service} REST API reference" → endpoints
151+
"{service} SDK {language}" → client library
152+
"{service} pricing limits quotas" → constraints
153+
```
154+
155+
### For Frameworks/Platforms
156+
```
157+
"{framework} architecture concepts" → mental model
158+
"{framework} project structure" → conventions
159+
"{framework} tutorial walkthrough" → end-to-end flow
160+
"{framework} configuration options" → customization
161+
```
162+
163+
## Example: Creating a "Semantic Kernel" Skill
164+
165+
### Investigation
166+
167+
```
168+
microsoft_docs_search(query="semantic kernel overview")
169+
microsoft_docs_search(query="semantic kernel plugins functions")
170+
microsoft_code_sample_search(query="semantic kernel", language="csharp")
171+
microsoft_docs_fetch(url="https://learn.microsoft.com/semantic-kernel/overview/")
172+
```
173+
174+
### Generated Skill
175+
176+
```
177+
semantic-kernel/
178+
├── SKILL.md
179+
└── sample_codes/
180+
├── getting-started/
181+
│ └── hello-kernel.cs
182+
└── common-patterns/
183+
├── chat-completion.cs
184+
└── function-calling.cs
185+
```
186+
187+
### Generated SKILL.md
188+
189+
```markdown
190+
---
191+
name: semantic-kernel
192+
description: Build AI agents with Microsoft Semantic Kernel. Use for LLM-powered apps with plugins, planners, and memory in .NET or Python.
193+
---
194+
195+
# Semantic Kernel
196+
197+
Orchestration SDK for integrating LLMs into applications with plugins, planners, and memory.
198+
199+
## Key Concepts
200+
201+
- **Kernel**: Central orchestrator managing AI services and plugins
202+
- **Plugins**: Collections of functions the AI can call
203+
- **Planner**: Sequences plugin functions to achieve goals
204+
- **Memory**: Vector store integration for RAG patterns
205+
206+
## Quick Start
207+
208+
See [getting-started/hello-kernel.cs](sample_codes/getting-started/hello-kernel.cs)
209+
210+
## Learn More
211+
212+
| Topic | How to Find |
213+
|-------|-------------|
214+
| Plugin development | `microsoft_docs_search(query="semantic kernel plugins custom functions")` |
215+
| Planners | `microsoft_docs_search(query="semantic kernel planner")` |
216+
| Memory | `microsoft_docs_fetch(url="https://learn.microsoft.com/en-us/semantic-kernel/frameworks/agent/agent-memory")` |
217+
```

0 commit comments

Comments
 (0)