CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

agent-framework-azure-ai-py

Build persistent agents on Azure AI Foundry using the Microsoft Agent Framework Python SDK.

Quality

66%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/antigravity-agent-framework-azure-ai-py/SKILL.md

The canonical home for this skill is agent-framework-azure-ai-py in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

53%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.

The body is commendably honest about its legacy-SDK incompatibility and organizes references well, but that honesty exposes its core weakness: the code examples are self-declared non-executable against the documented install, and no verified replacement is offered. Caveat text is repeated across sections instead of consolidated, and there is no sequenced workflow with validation or cleanup checkpoints for operations that create billable, persistent Azure resources.

Suggestions

Provide verified, current-generation examples that actually run with the documented install (agent-framework-foundry), or pin a known-compatible legacy version and state it — the skill currently offers neither, leaving 'install then run' broken by its own admission.

Consolidate the compatibility/authorization caveat into the single 'SDK generation and execution scope' section and delete the circular '## When to Use' boilerplate and repeated install-comment warnings to reclaim tokens.

Convert the gate prose into a numbered workflow with explicit validation and cleanup steps (e.g. verify the agent was created, inspect result.text, and issue delete calls for hosted agents/files/threads before exiting), since the skill warns that closing clients does not clean up hosted resources.

DimensionReasoningScore

Conciseness

The code examples and tables are lean, but the compatibility/safety caveat is repeated in at least four places ("SDK generation and execution scope", install comments "These installs do not make the legacy snippets below compatible", the "Composite Legacy Example (requires migration/compatibility validation)" header, and again in the gate text), and sections like "## When to Use" ("This skill is applicable to execute the workflow or actions described in the overview") are circular boilerplate. More than the 'minor instances' of anchor 4, but far from the padding of anchor 2.

3 / 5

Actionability

The snippets are syntactically complete Python, yet the skill itself concedes they are not verified against the current package ("no compatible legacy version is established here", "These installs do not make the legacy snippets below compatible") — so the documented install-then-run path is expected to fail, and no verified current-generation equivalent is provided. That is a fundamental gap beyond anchor 4's 'minor gaps', though the concrete code keeps it above anchor 2's high-level-hints level.

3 / 5

Workflow Clarity

A sequence is only implicit via section ordering (Installation → Environment Variables → Authentication → Core Workflow), and the scope/authorization gate text gives ordering advice ("Scope authorization, budget, timeout, tool allowlist and resource cleanup first") but no numbered steps or validation checkpoints — no command to verify agent creation, check outputs, or clean up hosted agents/files/threads despite the warning that "Closing clients does not delete hosted agents/files/vector stores/threads". This matches anchor 3 (sequence present, checkpoints missing) and the cap for workflows creating persistent resources without validation.

3 / 5

Progressive Disclosure

The four reference files (references/tools.md, mcp.md, threads.md, advanced.md) all exist, are one level deep, and are clearly signaled with per-file descriptions; the body keeps quick-start examples inline appropriately. However, the body's second line links to [UPSTREAM-NOTICE.md](UPSTREAM-NOTICE.md), which does not exist in the bundle — a broken navigation path that is more than a trivial gap, keeping this below anchor 5's 'easy navigation'.

4 / 5

Total

13

/

20

Passed

Description

65%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 tight, honest one-liner that clearly states what the skill does and occupies a distinct niche, but it lacks any explicit "when to use" trigger guidance and lists only a single broad action. Adding a Use-when clause and one or two more concrete capabilities (tools, threads, streaming) would lift it substantially.

Suggestions

Add a trigger clause, e.g. "Use when building or migrating agents on Azure AI Foundry, or when the user mentions the Microsoft Agent Framework, Azure AI Agent Service, or persistent/hosted agents in Python."

Name 1-2 more concrete capabilities in the description (e.g. attaching function/hosted/MCP tools, multi-turn conversation threads, streaming responses, structured outputs) to raise specificity from one broad action to a fuller inventory.

Include common synonym keywords such as "Azure AI Agent Service" and "agent-framework" so the description matches the varied phrasings users actually type.

DimensionReasoningScore

Specificity

"Build persistent agents" names one concrete action plus a specific domain ("Azure AI Foundry") and named tool ("Microsoft Agent Framework Python SDK"), but coverage is not comprehensive — no mention of tools, threads, streaming, or structured outputs that the body demonstrates. It matches anchor 3 ("Names domain and 1-2 concrete actions, but not comprehensive") and is clearly above anchor 2 ("Processes PDF files") which has no concrete, specific action.

3 / 5

Completeness

The "what" is clear (build persistent agents on Azure AI Foundry with the Agent Framework SDK), but there is no "Use when..." clause or equivalent trigger guidance anywhere in the description, capping completeness at 3 per the rubric guideline. Anchor 4 requires both what and when; anchor 2 requires a vague what, which this is not.

3 / 5

Trigger Term Quality

Natural keywords are present: "persistent agents", "Azure AI Foundry", "Microsoft Agent Framework", "Python SDK" — phrases a user of this stack would actually say. A few common variations are missing ("Azure AI Agent Service", "agent-framework", "hosted agents", "multi-turn"), so it sits between anchor 3 and 5, noticeably above the midpoint.

4 / 5

Distinctiveness Conflict Risk

Naming a specific vendor, platform, and SDK ("Azure AI Foundry", "Microsoft Agent Framework Python SDK") carves out a tight niche with minimal conflict risk — only a nearly identical Azure-agents skill could collide. Anchor 5 ("Clear niche with distinct triggers; minimal conflict risk") fits better than anchor 4's "minor overlap risk with closely related skills".

5 / 5

Total

15

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

relative_links

Relative link issues: 1 missing

Warning

Total

14

/

16

Passed

Repository

boisenoise/skills-collections

Path

skills/antigravity-agent-framework-azure-ai-py/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.