CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ax-agent

This skill helps an LLM generate correct core AxAgent code using @ax-llm/ax. Use when the user asks about agent(), child agents, namespaced functions, discovery mode, clarification, bubbleErrors, host-side final/clarification protocol, or ordinary agent runtime behavior. For MCP clients, native runtime modules, subscriptions, tasks, or authentication use ax-mcp alongside this skill. For RLM/code-runtime work use ax-agent-rlm; for callbacks and telemetry use ax-agent-observability; for recall/memory/skill loading use ax-agent-memory-skills; for agent.optimize(...) use ax-agent-optimize.

Quality

82%

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

SKILL.md
Quality
Evals
Security

Quality

Content

71%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 highly actionable with executable patterns throughout and a clear intent-to-shape decision workflow, but it is over-long for a single file: rules are duplicated, changelog detail is inlined, and reference-grade sections (language ports, MCP event routing, playbook evolve) belong in separate reference files. Splitting those out and deduplicating the discovery/child-agent rules would materially raise both conciseness and progressive disclosure.

Suggestions

Move reference-grade detail out of SKILL.md into bundled reference files — the generated-language observer/evolve table, MCP event-source/webhook mapping rules, and playbook construction-time learning internals — and link them with clearly signaled one-level-deep references.

Deduplicate repeated rules: the discovery guidance ("If discovery is enabled, call discover(...) before using callables") appears in both Use These Defaults and Critical Rules, and the child-agents-in-functions rule is stated in Use These Defaults, Critical Rules, and Child Agents As Tools; state each once and cross-reference the section.

Trim changelog-style asides that do not affect code generation, e.g. "Enabled by default after its A/B gate passed on both small and frontier models and implemented in the generated language ports through AxIR Core" and the `seed` snapshot deprecation history, keeping only the behavior and the opt-out.

DimensionReasoningScore

Conciseness

The body is dense and assumes competence, but it repeats rules ("If discovery is enabled, call discover(...)" appears in both Use These Defaults and Critical Rules; child agents in "functions: [...]" is stated three times) and carries changelog-style asides such as "Enabled by default after its A/B gate passed on both small and frontier models" and "their older `seed` snapshot key still works with a deprecation warning". This is more than the 'minor instances' of a score-4 anchor but not the pervasive padding of a 2.

3 / 5

Actionability

Nearly every section ships copy-paste-ready TypeScript: the canonical agent() pattern, audio I/O, child agents as namespaced tools, fn(...) builders, grouped modules, extra.protocol.final(...) handlers, the full clarification/resume try-catch flow, and bubbleErrors. The Decision Guide maps concrete user intents to specific agent shapes, covering the common cases.

5 / 5

Workflow Clarity

The Decision Guide plus Do Not Generate section sequence the work clearly (intent -> shape -> code), and the clarification/resume pattern is a full catch -> error.getState() -> agent.setState(savedState) -> forward() recovery loop. It is not a 5 because there is no explicit validation checkpoint for generated output, though this codegen skill involves no destructive or batch operations that would mandate one.

4 / 5

Progressive Disclosure

No bundle files exist (no references/, scripts/, or assets/), so all ~700 lines are inline. Headers are clear and the skill defers many topics to sibling skills, but reference-grade content sits inline in SKILL.md: the generated-language observer/evolve table, MCP event-source and webhook mapping rules (a section that itself says "Keep this section focused on Agent attachment"), and playbook internals. A 4 would require most of that detail to live in separate files with clearly signaled references.

3 / 5

Total

15

/

20

Passed

Description

87%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 list and explicit de-confliction against five sibling skills. The main improvement opportunity is adding a few natural-language synonyms alongside the API-identifier trigger terms.

DimensionReasoningScore

Specificity

The description states one concrete action ("generate correct core AxAgent code using @ax-llm/ax") but enumerates several specific capability areas ("agent(), child agents, namespaced functions, discovery mode, clarification, bubbleErrors, host-side final/clarification protocol"), going beyond the 1-2 actions of a score-3 anchor. It is not a 5 because the enumerated items are topics the skill covers rather than a comprehensive list of distinct actions.

4 / 5

Completeness

It explicitly answers both questions: what ("helps an LLM generate correct core AxAgent code using @ax-llm/ax") and when ("Use when the user asks about agent(), child agents, ... or ordinary agent runtime behavior") with concrete trigger phrases. This matches the top anchor; a 4 would require the 'when' to be less explicit, which it is not.

5 / 5

Trigger Term Quality

"Use when the user asks about agent(), child agents, namespaced functions, discovery mode, clarification, bubbleErrors" provides good coverage of the exact API terms a framework user would naturally say. It falls short of a 5 because natural synonyms and casual variations (e.g. "subagents", "tool functions") are absent; the terms are mostly technical identifiers.

4 / 5

Distinctiveness Conflict Risk

It carves out a clear niche (core AxAgent codegen) and actively routes adjacent work away: "For MCP clients ... use ax-mcp", "for RLM/code-runtime work use ax-agent-rlm; for callbacks and telemetry use ax-agent-observability; for recall/memory/skill loading use ax-agent-memory-skills; for agent.optimize(...) use ax-agent-optimize". Conflict risk with sibling skills is minimal.

5 / 5

Total

18

/

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

skill_md_line_count

SKILL.md is long (711 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

Path

website/static/typescript/.well-known/agent-skills/ax-agent/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.