CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-cpp-flow

Use when writing C++ code with `axllm` for flows, nodes, program graphs, nested programs, dynamic options, caching, and optimizer components.

58

Quality

73%

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/cpp/.well-known/agent-skills/ax-cpp-flow/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%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 flow-pattern half of the body is excellent: lean, well-sequenced, executable code examples with clear reads/writes semantics. The 'Astra Session Work' section drags the score down — a dense, unstructured prose wall of edge-case rules with no code examples that belongs in a separate reference file.

Suggestions

Move the 'Astra Session Work' section into a dedicated reference file (e.g., references/astra-sessions.md) and keep a 3-5 line summary with a clearly signaled link in SKILL.md.

Convert the Astra section's dense prose rules into short code examples (registration, cancellation, validation) so the guidance is executable rather than descriptive.

Add brief validation/checkpoint guidance (e.g., how to verify a flow runs with the no-key transport before using provider credentials) to strengthen the workflow sequence in the patterns section.

DimensionReasoningScore

Conciseness

The pattern sections are lean — tight code with one-sentence setup like "Declare reads and writes so the responder waits for the typed route" — but the ~28-paragraph 'Astra Session Work' section is an extremely dense prose wall of edge-case rules ("Queued and applied are different states", "Consuming buffered events does not reactivate a completed response") that could be substantially tightened or split. Not 2 because there is no padding or explanation of concepts Claude already knows; not 4 because the Astra section's density noticeably hurts efficiency.

3 / 5

Actionability

The flow patterns provide concrete, executable-looking code covering construction, branching, fan-out, refinement, `forward`, and caching, and the Astra section cites exact API names ("add_child_agent(namespace, name, child)"). Not 5 because the Astra section gives no complete code examples and relies on prose, and the examples under `examples/` are named but not shown.

4 / 5

Workflow Clarity

The flow-building progression is clearly sequenced (typed programs → reads/writes declaration → run via `forward` → cache) and the guardrails direct the agent to start from package examples, but the long 'Astra Session Work' section is undifferentiated prose with no sequence or checkpoints. Not 2 because the core pattern workflow is coherent and well-ordered; not 4 because roughly a third of the body reads as a rule dump rather than a guided sequence.

3 / 5

Progressive Disclosure

Sections are well organized with headers, and it points one level deep to `API.md`, `axir-capabilities.json`, `examples/`, and a docs URL — but no bundle files actually exist alongside the skill, and the long Astra session detail is inlined in the body where a separate reference file belongs. Not 2 because structure and references are present and signaled; not 4 because significant content that should be split out is inline.

3 / 5

Total

13

/

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, distinctive description with an explicit 'Use when...' trigger clause and a specific list of capability areas anchored to the `axllm` C++ package. Its main weakness is that the 'what' is only implied through a noun list of topics rather than stated as concrete actions.

DimensionReasoningScore

Specificity

The description lists several specific capability areas in a named domain — "flows, nodes, program graphs, nested programs, dynamic options, caching, and optimizer components" under "writing C++ code with `axllm`" — with only minor gaps. It falls short of 5 because it enumerates topics rather than concrete actions, and short of 3 because it names far more than 1-2 concrete capabilities.

4 / 5

Completeness

The "when" is explicit and specific ("Use when writing C++ code with `axllm` for..."), so the missing-'Use when' cap does not apply. The "what" is only implied by the prepositional object list rather than stated with explicit action verbs, which keeps it below 5 but clearly above 3.

4 / 5

Trigger Term Quality

"C++ code", "flows", "caching", and "nodes" are natural phrases a user of this domain would say, and the package name "axllm" is a strong distinctive trigger. Not 5 because natural variations and synonyms (e.g., "workflow", "AxFlow" — the actual API name) are missing.

4 / 5

Distinctiveness Conflict Risk

The description is pinned to a specific package (`axllm`), a specific language (C++), and framework-specific concepts (flows, program graphs, nested programs) — a clear niche with distinct triggers and minimal risk of firing for the wrong skill.

5 / 5

Total

17

/

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.