CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-flow

This skill helps an LLM generate correct AxFlow workflow code using @ax-llm/ax. Use when the user asks about flow(), AxFlow, workflow orchestration, parallel execution, DAG workflows, conditional routing, map/reduce patterns, or multi-node AI pipelines.

62

Quality

78%

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

A high-quality, highly actionable codegen reference: canonical pattern, copy-ready snippets, explicit guardrails, and an error-fix table. The main weaknesses are inline monolith structure (the mermaid gallery and MCP/event/telemetry sections should be split into reference files), some duplicated rules across sections, and a few snippets that rely on undefined placeholder symbols.

Suggestions

Move the Mermaid dialect + Flow Gallery, Native MCP/UCP, Event-Triggered Flows, and Runtime Hooks sections into references/*.md files and keep one-line pointers plus a single example each in SKILL.md.

Deduplicate rules stated in both 'Use These Defaults', 'Critical Rules', and 'Do Not Generate' (node-before-execute, naming, loop conditions) into one canonical rules section.

Define or annotate placeholder symbols (fetchFromAPI, lookupProgram, checkoutProgram, inventory/merchant, llm, input) so every snippet is self-contained, and add an explicit 'verify generated code' step (typecheck / flow(String(wf)) round-trip).

DimensionReasoningScore

Conciseness

The body is dense and code-first with almost no tutorial prose ('Do not write tutorial prose unless the user explicitly asks'), and it explicitly establishes the 'wf is pre-defined' convention to keep excerpts short. However, rules are duplicated across sections — 'define .node() before .execute()' appears in Use These Defaults, Critical Rules, and Do Not Generate, and naming/loop-condition rules each repeat — which keeps it below the lean 'every token earns its place' anchor.

4 / 5

Actionability

Nearly all guidance is concrete, executable TypeScript (canonical pattern, factory options, alias table, planner rules, error-to-cause mapping). Below anchor 5 because several snippets depend on undefined placeholders such as fetchFromAPI, lookupProgram/checkoutProgram, inventory/merchant, and bare llm/input in the mermaid and error-handling sections.

4 / 5

Workflow Clarity

The codegen process is clearly sequenced (defaults → critical rules → canonical pattern → feature recipes → Do-Not-Generate guardrails) and the common-errors section maps each runtime error to its fix, giving a real feedback loop. Not a destructive/batch skill, so no cap applies; it misses anchor 5 only for lack of an explicit validate-the-output checkpoint (e.g. typecheck or 'flow(String(wf)) round-trips' verification of generated code).

4 / 5

Progressive Disclosure

No references/, scripts/, or assets/ bundle exists, so everything — roughly 750 lines — is inlined in SKILL.md. Section headers are clear and cross-skill/example links (ax-signature, ax-typesafe, ax-mcp, ax-gepa, GitHub example URLs) are well signaled, but large self-contained topics (the Mermaid dialect plus its 10-diagram gallery, MCP/UCP coordination, event-triggered flows, telemetry hooks) clearly belong in separate reference files, matching the 'content that should be separate is inline' anchor.

3 / 5

Total

15

/

20

Passed

Description

78%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 description with an explicit 'Use when...' trigger clause and a clear, concrete 'what'. Its main gaps are a single-action capability summary (the body supports far more) and a few broad trigger terms that overlap with other workflow-orchestration skills, plus missing natural terms for loops, mermaid diagrams, and event-driven flows.

Suggestions

Enumerate 2-3 more concrete capabilities in the 'what' sentence (e.g. 'author flows as mermaid diagrams, orchestrate parallel and retry loops, wire multi-model routing') to lift specificity.

Add missing natural trigger terms such as 'mermaid flow diagram', 'retry loop / feedback loop', and 'event-driven workflow'.

Anchor broad terms like 'workflow orchestration' and 'map/reduce patterns' to the library name to reduce conflict risk with other orchestration-framework skills.

DimensionReasoningScore

Specificity

The description names the domain concretely ('generate correct AxFlow workflow code using @ax-llm/ax') but states only a single action, while the body covers many more capabilities (mermaid authoring, branches, loops, telemetry, caching) that go unmentioned. It matches 'names domain and 1-2 concrete actions, but not comprehensive' rather than anchor 4, which requires several specific actions listed.

3 / 5

Completeness

It explicitly answers both 'what' ('helps an LLM generate correct AxFlow workflow code using @ax-llm/ax') and 'when' ('Use when the user asks about flow(), AxFlow, ...') with concrete trigger phrases — a direct match for the top anchor. Neither component is missing or vague.

5 / 5

Trigger Term Quality

'flow(), AxFlow, workflow orchestration, parallel execution, DAG workflows, conditional routing, map/reduce patterns, or multi-node AI pipelines' gives good, varied natural keyword coverage. Falls short of anchor 5 because natural variations the skill clearly supports are missing, e.g. retry/feedback loops, mermaid flow diagrams, and event-driven flows.

4 / 5

Distinctiveness Conflict Risk

The niche (AxFlow codegen for one specific library) is clear, but broad trigger terms like 'workflow orchestration', 'parallel execution', and 'map/reduce patterns' are shared vocabulary that could also fire for other orchestration-framework skills. That is minor overlap risk with closely related skills (anchor 4), not the minimal-conflict profile of anchor 5.

4 / 5

Total

16

/

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 (749 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.