LANGUAGE UNDERSTANDING / Microsoft
Azure AI Language Conversations for Python
Pins Microsoft's Python conversation-analysis skill, which tells new code to use token credentials and reserves API keys for unmigrated keyed deployments.
“Implement Conversational Language Understanding (CLU) using the azure-ai-language-conversations Python SDK. Use when working with ConversationAnalysisClient to analyze conversation intent and entities, building NLP features, or integrating language understanding into applications.”
01 / THE REASONING
Why this made the selection.
- The file says new code should use DefaultAzureCredential, and AzureKeyCredential only for an existing keyed deployment that has not been migrated to Entra ID.
- Production use must set AZURE_TOKEN_CREDENTIALS to prod or one named credential so the chain stays on production-safe credentials, and API keys are avoided because they bypass Entra audit and rotation.
02 / THE REVIEW RECORD
What we actually inspected.
Source review has boundaries.
A clear record is more useful than a “safe” badge.
Material inspected
- .github/plugins/azure-sdk-python/skills/azure-ai-language-conversations-py/SKILL.md
- README.md
- .github/plugins/azure-sdk-python/README.md
- .github/plugins/azure-sdk-python/.claude-plugin/plugin.json
- LICENSE
Our findings
- The system prompt says to emphasize ConversationAnalysisClient with DefaultAzureCredential.
- API keys are avoided because they bypass Entra audit and rotation, and AzureKeyCredential is limited to an existing keyed deployment that has not been migrated to Entra ID.
- Production DefaultAzureCredential must be constrained with AZURE_TOKEN_CREDENTIALS=prod or a specific credential.
- Sync and async conversation clients must not be mixed, and clients plus async credentials must be closed with context managers.
- The basic analysis sample sets isLoggingEnabled to false. That is one sample, not a separate refusal rule.
Not established by this review
- The resource was not executed and its tools were not called.
- No conversation was analyzed and no credential was created.
- The referenced capability and non-hero files were not opened.
- The azure-sdk-python plugin was not installed.
- Not executed: it was not installed or run.
The review applies to the material and revision named here. A newer upstream release can change its behavior.
03 / PUT IT TO WORK
Add a skill to your workflow.
DOCUMENTED COMMAND
/plugin install azure-sdk-python@skills Copying does not execute this command. It may retrieve a newer version than the reviewed source.
- The azure-sdk-python plugin README shows `/plugin install azure-sdk-python@skills`. That installs the azure-sdk-python plugin, not this one file.
- The same README shows `npx skills add microsoft/skills --skill azure-sdk-python`, which also names the plugin rather than this file.
- The repository README shows `/plugin marketplace add microsoft/skills` and `/plugin install azure@skills` for a different plugin, plus `npx skills add microsoft/skills` for a repository wizard.
Before you start
- The azure-ai-language-conversations package named in the skill. The file does not show a pip install line.
- AZURE_CONVERSATIONS_ENDPOINT, AZURE_CONVERSATIONS_PROJECT, and AZURE_CONVERSATIONS_DEPLOYMENT as named in the sample
- DefaultAzureCredential through Azure CLI, VS Code, Developer CLI, or a managed identity, as the skill describes
- AZURE_CONVERSATIONS_KEY only for the legacy API-key path the skill limits to an unmigrated keyed deployment
- Copilot CLI for the slash-command install line
04 / FOLLOW THE EVIDENCE
The source trail.
Our notes are separate from the original resource.
Check upstream before adopting a new version.
https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-ai-language-conversations-py/SKILL.md
Supports: token-credential preference, legacy key limit, and the sync versus async split
https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/README.md
Supports: /plugin install azure-sdk-python@skills and the npx plugin install line
https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/.claude-plugin/plugin.json
Supports: plugin name azure-sdk-python and MIT
- Repository README ↗Checked
https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/README.md
Supports: MIT statement, Copilot CLI install, and a different azure plugin install line
- Repository LICENSE ↗Checked
https://github.com/microsoft/skills/blob/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/LICENSE
Supports: MIT License
https://raw.githubusercontent.com/microsoft/skills/fc164ba1d7a0c10377dbcc1c9ac07253b9329fdb/.github/plugins/azure-sdk-python/skills/azure-ai-language-conversations-py/SKILL.md
Supports: upstreamDescription, bestFor, review