CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-openai-dotnet

Azure OpenAI SDK for .NET. Client library for Azure OpenAI and OpenAI services. Use for chat completions, embeddings, image generation, audio transcription, and assistants.

76

1.43x
Quality

66%

Does it follow best practices?

Impact

92%

1.43x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/antigravity-azure-ai-openai-dotnet/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

67%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is reasonably strong with specific capabilities listed and a clear domain focus on Azure OpenAI SDK for .NET. Its main weaknesses are the lack of an explicit 'Use when...' clause with user-facing trigger scenarios and missing common user terms like 'C#', '.NET', 'GPT', or 'DALL-E' that users would naturally use when requesting help with this SDK.

Suggestions

Add an explicit 'Use when...' clause describing trigger scenarios, e.g., 'Use when the user asks about integrating Azure OpenAI or OpenAI services in .NET/C# applications.'

Include additional natural trigger terms users would say, such as 'C#', '.NET', 'GPT', 'DALL-E', 'Whisper', 'NuGet', or 'Azure.AI.OpenAI' to improve discoverability.

DimensionReasoningScore

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 'what' (client library for Azure OpenAI/OpenAI services with specific capabilities) and has a partial 'when' via 'Use for...', but lacks an explicit 'Use when...' clause describing user-facing trigger scenarios (e.g., 'Use when the user asks about integrating OpenAI in .NET applications').

2 / 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 '.NET', 'C#', 'GPT', 'DALL-E', 'Whisper', 'SDK', or file extensions like '.cs'. Users asking about C# or .NET OpenAI integration might not trigger well.

2 / 3

Distinctiveness Conflict Risk

The combination of 'Azure OpenAI', '.NET', and the specific SDK focus creates a clear niche that is unlikely to conflict with other skills. It's distinctly about the Azure OpenAI .NET client library.

3 / 3

Total

10

/

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 API reference skill with excellent, executable code examples covering the full breadth of Azure.AI.OpenAI capabilities. Its main weaknesses are its monolithic length (which hurts token efficiency and progressive disclosure) and incomplete multi-step workflows, particularly for function calling which omits the critical response-loop pattern. Some sections like Key Types Reference and Best Practices add bulk without proportional value.

Suggestions

Split detailed feature sections (structured outputs, RAG, function calling, audio, image generation) into separate referenced files, keeping only a quick-start chat example and brief feature summaries in the main SKILL.md

Complete the function calling example with the full tool-call loop: detect tool calls → execute function → send ToolChatMessage back → get final response

Remove the Key Types Reference table and 'When to Use' section — the types are evident from code examples and the latter adds no information

Trim the Best Practices section to only Azure-specific advice (Entra ID, structured outputs) and remove generic programming advice Claude already knows (reuse clients, handle rate limits, set timeouts)

DimensionReasoningScore

Conciseness

The content is fairly comprehensive but includes some unnecessary elements like the 'When to Use' section (which is a tautology), the 'Related SDKs' table (largely redundant with installation section), and the Key Types Reference table which lists types Claude would already understand from the code examples. The best practices section contains generic advice Claude already knows. However, the code examples themselves are lean and well-structured.

2 / 3

Actionability

Nearly all guidance is provided as 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 concrete with proper using statements and realistic patterns.

3 / 3

Workflow Clarity

The client hierarchy diagram is helpful, and individual code examples are clear. However, for multi-step workflows like function calling (which requires a tool call loop: send → detect tool calls → execute → send results back), the example only shows detecting tool calls without completing the loop. The error handling section shows retry but lacks a proper retry loop pattern. No validation checkpoints for the RAG integration workflow.

2 / 3

Progressive Disclosure

The content is a monolithic file with all details inline — over 400 lines covering every feature. The reference links at the bottom are good, but the structured outputs, RAG integration, function calling, and audio sections could be split into separate files with brief summaries in the main skill. The document would benefit from a quick-start section followed by references to detailed feature files.

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.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
boisenoise/skills-collections
Reviewed

Table of Contents

Is this your skill?

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.