CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-openai-service

Azure OpenAI Service integration. Manage Models, Deployments, Prompts, Completions. Use when the user wants to interact with Azure OpenAI Service data.

Quality

76%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/azure-openai-service/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A largely actionable, well-structured CLI guide with executable commands, explicit connection-state validation, and polling feedback loops. Its main issues are a marketing-style intro paragraph that wastes tokens, dangling 'Step 2' references to steps that were never numbered, and an unmapped gap between action Keys and the actionId required by 'action run'.

Suggestions

Delete or drastically trim the opening overview paragraph about what Azure OpenAI Service is ('provides access to OpenAI's powerful language models... enterprise-grade security, compliance, and scalability') — Claude already knows this and it adds no operational value.

Number the workflow steps (1. Install, 2. Authenticate, 3. Connect, 4. Search actions, 5. Run actions) so the existing 'skip to Step 2' references resolve, or rewrite them to name the target section.

Explain how an action Key from the Popular actions table (e.g., create-chat-completion) maps to the <actionId> expected by 'membrane action run', ideally with one worked end-to-end example using real values.

DimensionReasoningScore

Conciseness

The opening paragraph ("provides access to OpenAI's powerful language models... suitable for businesses seeking enterprise-grade security, compliance, and scalability") explains concepts Claude already knows and reads as marketing copy, matching the anchor for mostly-efficient content with some unnecessary explanation. It is not a 2 because the rest of the document is tight, command-focused material with no other padded sections.

3 / 5

Actionability

Concrete, copy-paste-ready commands throughout ("npm install -g @membranehq/cli@latest", "membrane connection ensure ... --json", "membrane action run <actionId> --input '{\"key\": \"value\"}'") cover install, auth, connection, search, run, and proxy. Minor gaps keep it below 5: the Popular actions table lists action Keys while the run command needs an actionId with no explicit mapping, and there is no worked end-to-end example with real values.

4 / 5

Workflow Clarity

A clear install → authenticate → connect → poll → search → run sequence exists, with explicit state-based validation (READY / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR) and feedback loops ("poll again with membrane connection get <id> --json to check if the state moved to READY"). It is not a 5 because "skip to Step 2" is referenced twice but no Step 2 exists — the following sections are unnumbered — which breaks step navigation.

4 / 5

Progressive Disclosure

The ~150-line body is a single well-sectioned file with clear headers (Overview, Install, Authentication, Connecting, Searching, Popular actions, Running, Proxy, Best practices) and no nested or dangling references. It is not a 5 because nothing is split out — reference-worthy material like the proxy flag table and clientAction field breakdown is inlined, and there are no one-level-deep reference files.

4 / 5

Total

15

/

20

Passed

Description

75%Weight 40%Scale 1-5

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

A solid description that names the service, lists concrete capability areas, and includes an explicit Use-when trigger clause in third person. Its main weaknesses are the circular trigger phrasing and missing natural synonyms (chat completions, embeddings, image generation, GPT) that would strengthen both trigger quality and completeness.

Suggestions

Replace the circular 'Use when the user wants to interact with Azure OpenAI Service data' with concrete trigger phrases, e.g. 'Use when the user wants to deploy or manage Azure OpenAI models, generate chat completions or embeddings, or create images with DALL-E on Azure.'

Add natural synonyms users would say — GPT-4/GPT-3.5, chat completions, embeddings, DALL-E, Whisper — so the description triggers on phrasing that does not literally mention 'Azure OpenAI Service'.

Align the listed capabilities (Models, Deployments, Prompts, Completions) with what the skill body actually documents, which prominently features chat completions, audio transcription/translation, image generation, and embeddings.

DimensionReasoningScore

Specificity

"Manage Models, Deployments, Prompts, Completions" names the domain and lists four concrete capability areas, matching the anchor for several specific actions with minor gaps. It is not a 5 because coverage is not comprehensive — chat completions, embeddings, audio transcription, and image generation (all documented in the body) are absent.

4 / 5

Completeness

It answers both "what" ("Manage Models, Deployments, Prompts, Completions") and "when" ("Use when the user wants to interact with Azure OpenAI Service data") with an explicit Use-when clause. It is not a 5 because the trigger clause is circular — it restates the service name rather than giving concrete trigger phrases like "deploy a model" or "generate images".

4 / 5

Trigger Term Quality

"Azure OpenAI Service", "Models", "Deployments", "Prompts", "Completions" are terms users would naturally say when needing this skill. It falls short of 5 because common synonyms and variations (e.g., GPT, chat completions, embeddings, DALL-E/image generation, Azure AI) are missing.

4 / 5

Distinctiveness Conflict Risk

The named service "Azure OpenAI Service" establishes a clear niche with service-specific triggers, so it is mostly distinct. Minor overlap risk remains with a hypothetical generic OpenAI or Azure AI skill, keeping it below 5.

4 / 5

Total

16

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository

membranedev/application-skills

Path

skills/azure-openai-service/SKILL.md

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.