CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-python-llm

Use when writing Python code with `axllm` for using the generated Ax package, factory functions, package docs, examples, and API reference.

56

Quality

71%

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 ./packages/python/skills/ax-python-llm/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.

The body is a lean, well-sectioned quick reference that assumes competence and gives one runnable core pattern plus a no-key verification path, but its actionability rests almost entirely on a single snippet and a wall of bare symbol names pointing at package files that are not bundled with the skill.

Suggestions

Add one or two short runnable examples beyond the Core Pattern — e.g. defining a signature with s()/f() and running an AxGen — so the API surface list is backed by executable usage.

Trim the 'Relevant API Surface' lines to the most-used entrypoints and point to API.md/axir-api.json for the full list, since that content is duplicated in the referenced docs.

Include the referenced files (API.md, axir-api.json, examples/) in the skill bundle or reference only files that ship with it, so navigation claims are verifiable.

DimensionReasoningScore

Conciseness

The body is tight and bullet-driven with no explanations of concepts Claude already knows, but the intro and Package Facts repeat frontmatter information and the 'Relevant API Surface' lines are very long unbroken symbol lists (e.g. the AxGen/AxAI lines mixing types, callables, and class names) that could be trimmed.

4 / 5

Actionability

One small executable snippet exists (the ai("openai", ...) Core Pattern), but beyond it the guidance is bare symbol-name lists and directives with no example of using a signature, AxGen, agent, or flow — and the referenced examples/ and API.md are not present in the skill bundle, so key execution details are missing.

3 / 5

Workflow Clarity

As a ~44-line single-purpose reference skill the guidance is unambiguous (start from examples, use the listed native entrypoints, avoid TypeScript-only imports) and Guardrails provides a verification path ('Use `no-key` examples for deterministic local checks'), though no explicit validate-the-result step is built into the suggested flow.

4 / 5

Progressive Disclosure

Sections are well organized and package references are named exactly in Package Facts (API.md, axir-capabilities.json, examples/), but no bundle files exist in the skill and the long inline 'Relevant API Surface' list duplicates content the skill itself says lives in API.md, leaving minor organization gaps.

4 / 5

Total

15

/

20

Passed

Description

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

The description is specific to a niche package and includes an explicit 'Use when' clause, but it is circular ('writing Python code with axllm for using the package') and lists resources rather than concrete capabilities, with trigger-term coverage missing the LLM/AI vocabulary users would naturally use.

Suggestions

Replace the circular 'for using the generated Ax package' with concrete capabilities, e.g. 'creating signatures, generators, agents, and flows; balancing providers; running optimizers'.

Add natural trigger synonyms such as 'LLM', 'AI', 'agent', or 'Ax' so users asking in domain terms match the skill.

State the 'when' in terms of the user's task rather than the package itself, e.g. 'Use when building LLM programs in Python with the axllm package'.

DimensionReasoningScore

Specificity

The description names the domain ("writing Python code with `axllm`") and enumerates resources ("generated Ax package, factory functions, package docs, examples, and API reference"), but the only stated action is the circular "for using" — no concrete capabilities such as building agents, flows, or balancing providers are described.

3 / 5

Completeness

Both 'what' (writing Python code with the generated Ax package, its factory functions, docs, and API reference) and an explicit 'when' ("Use when writing Python code with `axllm`") are present, but the 'when' clause is circular — it triggers only on use of the very package it describes — rather than offering concrete, varied trigger phrases.

4 / 5

Trigger Term Quality

Relevant keywords are present ("Python code", "axllm", "Ax package", "API reference") but common natural variations are missing — notably "LLM", "AI", "agent", or any term for the package's core purpose, leaving trigger coverage incomplete.

3 / 5

Distinctiveness Conflict Risk

The specific package name `axllm` gates the trigger and gives it a clear niche with minimal conflict risk, though the leading phrase "writing Python code" is broad and the description does not disambiguate from a generic Python skill or the TypeScript Ax package.

4 / 5

Total

14

/

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
ax-llm/ax
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.