Azure OpenAI SDK for .NET. Client library for Azure OpenAI and OpenAI services. Use for chat completions, embeddings, image generation, audio transcription, and assistants.
79
75%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/antigravity-azure-ai-openai-dotnet/SKILL.mdQuality
Discovery
85%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a solid skill description that clearly identifies the domain (Azure OpenAI SDK for .NET), lists specific capabilities, and includes a 'Use for' clause that serves as trigger guidance. The main weakness is that trigger term coverage could be broader to include common user language variations like 'C#', 'GPT', or specific model names that users might naturally mention.
Suggestions
Add common user-facing trigger terms like 'C#', '.NET', 'GPT', 'OpenAI API', 'NuGet' to improve discoverability when users describe their needs in natural language.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: chat completions, embeddings, image generation, audio transcription, and assistants. These are clearly defined capabilities. | 3 / 3 |
Completeness | Clearly answers both what ('Client library for Azure OpenAI and OpenAI services') and when ('Use for chat completions, embeddings, image generation, audio transcription, and assistants'). The 'Use for' clause serves as explicit trigger guidance. | 3 / 3 |
Trigger Term Quality | Includes relevant terms like 'Azure OpenAI', 'chat completions', 'embeddings', 'image generation', 'audio transcription', and 'assistants', but misses common user variations like 'GPT', '.NET', 'C#', 'NuGet', 'OpenAI API', or 'text-to-speech'. Some terms are present but coverage of natural user language could be broader. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of 'Azure OpenAI SDK for .NET' creates a very specific niche that is unlikely to conflict with other skills. It clearly targets a specific platform (Azure), API provider (OpenAI), and language ecosystem (.NET). | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid SDK reference skill with excellent actionability — nearly every feature is demonstrated with complete, executable C# code. The main weaknesses are its monolithic structure (could benefit from splitting into overview + detailed reference files) and the lack of integrated validation/feedback loops in multi-step workflows like function calling. Some content like the boilerplate limitations section and overly obvious type descriptions could be trimmed for better token efficiency.
Suggestions
Split detailed sections (function calling, RAG integration, structured outputs) into separate referenced files, keeping SKILL.md as a concise overview with quick-start examples and navigation links.
Complete the function calling workflow by showing the full loop: initial call → detect tool calls → execute function → send ToolChatMessage back → get final response.
Remove the generic 'When to Use' and 'Limitations' boilerplate sections and trim the Key Types Reference table to only non-obvious types or those with surprising behavior.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is fairly comprehensive but includes some unnecessary content like the 'When to Use' and 'Limitations' boilerplate sections that add no value, the 'Related SDKs' table repeats installation info, and the Key Types Reference table explains things Claude already knows (e.g., 'User input', 'System prompt'). The best practices section is somewhat generic. However, most code examples are lean and purposeful. | 2 / 3 |
Actionability | Nearly every section provides fully executable, copy-paste ready C# code examples covering authentication, chat completions, streaming, structured outputs, embeddings, image generation, audio, function calling, and error handling. The code is complete with proper using statements and realistic patterns. | 3 / 3 |
Workflow Clarity | The client hierarchy diagram clearly shows the relationship between clients, and individual code examples are well-sequenced. However, there are no explicit validation checkpoints or feedback loops — for example, the function calling section shows detecting tool calls but doesn't show the complete loop of sending tool results back to the model. The error handling section is separate rather than integrated into workflows. | 2 / 3 |
Progressive Disclosure | The content is a long monolithic file (~400 lines) that could benefit from splitting advanced topics (RAG integration, function calling, structured outputs) into separate referenced files. The Reference Links section at the bottom provides external navigation, but the skill itself doesn't use any internal file references for progressive disclosure. The table of contents is implicit through headers but not explicitly signaled. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
431bfad
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.