microsoft-code-reference — скилл для GitHub Copilot
Проверяет Microsoft API и SDK по официальной документации, ищет рабочие примеры и помогает разбирать ошибки в Azure и .NET-коде.
npx skills add github/awesome-copilot --skill microsoft-code-reference -a claude-codeЧто делает microsoft-code-reference
Скилл ищет методы, классы, пакеты и параметры Microsoft API через Microsoft Learn. Он помогает проверить, существует ли вызов, подобрать сигнатуру и найти пример для Azure SDK, .NET-библиотек или Microsoft Graph.
Внутри описаны инструменты microsoft_docs_search, microsoft_code_sample_search и microsoft_docs_fetch. Для сложного случая скилл предлагает сначала проверить API, затем загрузить полную страницу и сравнить решение с рабочим примером. При недоступном Microsoft Learn MCP Server можно использовать mslearn через npx или глобальную установку.
Ставьте его, если агент пишет код для Microsoft SDK и часто путает версии, методы или пакеты. Для проектов без Microsoft API он лишний.
Какие задачи решает
- проверить существование метода Microsoft SDK
- найти рабочий пример загрузки файла в Azure
- сверить сигнатуру перегруженного API
- разобрать ошибку авторизации или 403
- подобрать пакет для .NET или Python
Примеры запросов агенту
- Проверь `BlobClient UploadAsync Azure.Storage.Blobs` и найди рабочий пример на C#.
- Сверь этот код с официальным API и проверь параметры `GraphServiceClient Users Microsoft.Graph`.
- Найди причину ошибки авторизации через `DefaultAzureCredential` и покажи корректный пример.
Как установить microsoft-code-reference
1Через Skills CLI (Vercel)
npx skills add github/awesome-copilot --skill microsoft-code-reference -a claude-code2Вручную: положить файлы
~/.claude/skills/microsoft-code-reference/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/microsoft-code-reference/
Вручную: положить файлы
.agents/skills/microsoft-code-reference/SKILL.mdДля всех проектов — ~/.agents/skills/
Вручную: положить файлы
.cursor/skills/microsoft-code-reference/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1Через Skills CLI (Vercel)
npx skills add github/awesome-copilot --skill microsoft-code-reference2GitHub CLI
gh skill install github/awesome-copilot microsoft-code-reference3Вручную: положить файлы
.github/skills/microsoft-code-reference/SKILL.mdКомандой платформы
gemini skills install https://github.com/github/awesome-copilot --path skills/microsoft-code-referenceВручную: положить файлы
.devin/skills/microsoft-code-reference/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Claude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Похожие
Вопросы о microsoft-code-reference
Как установить microsoft-code-reference в GitHub Copilot?
Выполните npx skills add github/awesome-copilot --skill microsoft-code-reference, gh skill install github/awesome-copilot microsoft-code-reference или разместите файл в .github/skills/microsoft-code-reference/SKILL.md.
Что делает microsoft-code-reference?
Скилл ищет справку Microsoft API, официальные примеры и полные сигнатуры методов. Он помогает заметить выдуманные методы, неверные параметры и устаревшие шаблоны.
Что нужно для работы microsoft-code-reference?
Лучше всего использовать Microsoft Learn MCP Server. Если он недоступен, скилл предлагает CLI mslearn, включая команды mslearn search, mslearn code-search и mslearn fetch.
Исходный текст
SKILL.md · MIT
--- name: microsoft-code-reference description: Look up Microsoft API references, find working code samples, and verify SDK code is correct. Use when working with Azure SDKs, .NET libraries, or Microsoft APIs—to find the right method, check parameters, get working examples, or troubleshoot errors. Catches hallucinated methods, wrong signatures, and deprecated patterns by querying official docs. compatibility: Works best with Microsoft Learn MCP Server (https://learn.microsoft.com/api/mcp). Can also use the mslearn CLI as a fallback. --- # Microsoft Code Reference ## Tools | Need | Tool | Example | |------|------|---------| | API method/class lookup | `microsoft_docs_search` | `"BlobClient UploadAsync Azure.Storage.Blobs"` | | Working code sample | `microsoft_code_sample_search` | `query: "upload blob managed identity", language: "python"` | | Full API reference | `microsoft_docs_fetch` | Fetch URL from `microsoft_docs_search` (for overloads, full signatures) | ## Finding Code Samples Use `microsoft_code_sample_search` to get official, working examples: ``` microsoft_code_sample_search(query: "upload file to blob storage", language: "csharp") microsoft_code_sample_search(query: "authenticate with managed identity", language: "python") microsoft_code_sample_search(query: "send message service bus", language: "javascript") ``` **When to use:** - Before writing code—find a working pattern to follow - After errors—compare your code against a known-good sample - Unsure of initialization/setup—samples show complete context ## API Lookups ``` # Verify method exists (include namespace for precision) "BlobClient UploadAsync Azure.Storage.Blobs" "GraphServiceClient Users Microsoft.Graph" # Find class/interface "DefaultAzureCredential class Azure.Identity" # Find correct package "Azure Blob Storage NuGet package" "azure-storage-blob pip package" ``` Fetch full page when method has multiple overloads or you need complete parameter details. ## Error Troubleshooting Use `microsoft_code_sample_search` to find working code samples and compare with your implementation. For specific errors, use `microsoft_docs_search` and `microsoft_docs_fetch`: | Error Type | Query | |------------|-------| | Method not found | `"[ClassName] methods [Namespace]"` | | Type not found | `"[TypeName] NuGet package namespace"` | | Wrong signature | `"[ClassName] [MethodName] overloads"` → fetch full page | | Deprecated warning | `"[OldType] migration v12"` | | Auth failure | `"DefaultAzureCredential troubleshooting"` | | 403 Forbidden | `"[ServiceName] RBAC permissions"` | ## When to Verify Always verify when: - Method name seems "too convenient" (`UploadFile` vs actual `Upload`) - Mixing SDK versions (v11 `CloudBlobClient` vs v12 `BlobServiceClient`) - Package name doesn't follow conventions (`Azure.*` for .NET, `azure-*` for Python) - Using an API for the first time ## Validation Workflow Before generating code using Microsoft SDKs, verify it's correct: 1. **Confirm method or package exists** — `microsoft_docs_search(query: "[ClassName] [MethodName] [Namespace]")` 2. **Fetch full details** (for overloads/complex params) — `microsoft_docs_fetch(url: "...")` 3. **Find working sample** — `microsoft_code_sample_search(query: "[task]", language: "[lang]")` For simple lookups, step 1 alone may suffice. For complex API usage, complete all three steps. ## CLI Alternative If the Learn MCP server is not available, use the `mslearn` CLI from a terminal or shell (for example, Bash, PowerShell, or cmd) instead: ```sh # Run directly (no install needed) npx @microsoft/learn-cli search "BlobClient UploadAsync Azure.Storage.Blobs" # Or install globally, then run npm install -g @microsoft/learn-cli mslearn search "BlobClient UploadAsync Azure.Storage.Blobs" ``` | MCP Tool | CLI Command | |----------|-------------| | `microsoft_docs_search(query: "...")` | `mslearn search "..."` | | `microsoft_code_sample_search(query: "...", language: "...")` | `mslearn code-search "..." --language ...` | | `microsoft_docs_fetch(url: "...")` | `mslearn fetch "..."` | Pass `--json` to `search` or `code-search` to get raw JSON output for further processing.
© github · MIT · github/awesome-copilot