CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-gen

This skill helps an LLM generate correct AxGen code using @ax-llm/ax. Use when the user asks about ax(), AxGen, generators, forward(), streamingForward(), validation, assertions, streaming assertions, field processors, step hooks, self-tuning, or structured outputs. For MCP clients, transports, prompts, resources, tasks, subscriptions, or authentication use ax-mcp alongside this skill.

64

Quality

78%

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 ./website/static/typescript/.well-known/agent-skills/ax-gen/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

75%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 thorough, well-structured AxGen codegen reference dominated by executable patterns and terse rules, with strong organization and guardrails. The main gaps are minor: a few placeholder variables in examples and some inline API detail that could live in separate reference files.

Suggestions

Make every code example self-contained — replace placeholder variables (topic, bestIndex, tools) with defined values or inline literals so snippets run as-is.

Move the full AxChatLog type definitions and the dense Structured Outputs mode list into a separate REFERENCE.md (or reference file) and link to it from the body to improve progressive disclosure and conciseness.

Add a short 'verify' checkpoint (e.g., 'run tsc --noEmit on generated code') at the end of the canonical pattern to strengthen workflow clarity.

DimensionReasoningScore

Conciseness

The body is mostly lean: terse 'Rules:' bullets and copyable code with minimal tutorial prose, and it explicitly tells the model not to write prose. It is not a 5 because dense sections (e.g., the long Structured Outputs rules list) carry detail that borders on over-explanation and could be trimmed.

4 / 5

Actionability

Most sections give executable, copy-paste TypeScript (canonical pattern, forward(), streamingForward(), validation). It is not a 5 because several examples contain out-of-scope placeholders (e.g., `topic` in addAssert, `bestIndex` in resultPicker, `tools` in function calling) that prevent them from running verbatim.

4 / 5

Workflow Clarity

The guidance is well sequenced (defaults -> canonical pattern -> per-feature sections -> 'Do Not Generate' guardrails) and the single codegen action is unambiguous. It is not a 5 because there is no explicit verify/validation checkpoint (e.g., 'confirm the generated code type-checks'), though the destructive/batch cap does not apply to this codegen skill.

4 / 5

Progressive Disclosure

Clear section headers organize the content and the external example links are clearly signaled one level deep. No bundle files exist (references/scripts/assets absent), and some inline detail (full chat-log type definitions, deep structured-output modes) could be split into reference files, keeping this just below score 5.

4 / 5

Total

16

/

20

Passed

Description

82%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 strong, well-scoped description with an explicit Use-when trigger clause and thoughtful boundary guidance against the ax-mcp skill. Its only weak spot is specificity, since it states one main action (generate code) rather than listing several concrete capabilities.

Suggestions

Lead with two or three concrete capabilities (e.g., 'Generate AxGen code, wire up validation/assertions, and configure streaming and step hooks') before the trigger list to lift specificity toward score 4-5.

Add a couple of natural-language synonyms or file/package cues (e.g., 'ax-llm/ax', 'AxGen generators') alongside the API-jargon triggers so non-expert users match it too.

DimensionReasoningScore

Specificity

The description names the domain ('generate correct AxGen code using @ax-llm/ax') with one concrete action, but does not enumerate multiple distinct actions — the long list that follows is trigger terms, not capabilities. It sits above score 2 (which only names the domain) but below score 4 (which lists several specific actions).

3 / 5

Completeness

It explicitly states what the skill does ('helps an LLM generate correct AxGen code using @ax-llm/ax') and provides an explicit 'Use when the user asks about...' clause with concrete trigger phrases. This matches the score-5 anchor that requires both what and when with concrete triggers.

5 / 5

Trigger Term Quality

Broad, relevant coverage of API-level terms users would say ('ax(), AxGen, generators, forward(), streamingForward(), validation, assertions, streaming assertions, field processors, step hooks, self-tuning, structured outputs') plus MCP boundary terms. Not a 5 because the terms skew toward library jargon rather than natural synonyms/file extensions a lay user would say.

4 / 5

Distinctiveness Conflict Risk

It carves a clear niche (AxGen codegen) and explicitly de-conflicts with a sibling skill ('For MCP clients, transports, prompts, resources, tasks, subscriptions, or authentication use ax-mcp alongside this skill'), minimizing wrong-skill triggering. Matches the clear-niche, minimal-conflict anchor.

5 / 5

Total

17

/

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.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (558 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

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.