CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-java-gen

Use when writing Java code with `dev.axllm:ax` for AxGen programs, forward calls, indexed multi-sampling, result pickers, streaming, tools, assertions, traces, usage, and output parsing.

60

Quality

76%

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

Quality

Content

50%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 dense, accurate behavioral spec with concrete API names, but it functions as an inlined reference manual: one tiny code example, no verification workflow, and heavy detail (streaming semantics, cross-language registrations) that belongs in separate reference files. It would be substantially more effective split into a lean overview plus reference files with runnable Java examples.

Suggestions

Split the Astra Session Work and Provider Forward Options sections into separate reference files (e.g., SESSIONS.md, FORWARD_OPTIONS.md), keeping a lean SKILL.md overview with one-line pointers per topic.

Add small complete Java snippets for the common cases named in the description — attaching a tool with `Ax.fn`, an MCP client, a multi-sampling forward with a result picker, and a `streamingForward` try-with-resources loop — so the guidance is copy-paste executable.

Add a short workflow with a verification step, e.g., start from `examples/` no-key scripts, adapt the signature, then run the no-key example to validate the call shape before using real provider credentials.

DimensionReasoningScore

Conciseness

Facts are terse and package-specific (no padding on concepts Claude already knows), but the ~25KB body repeats "as in TypeScript" roughly twenty times, packs edge cases into single mega-paragraphs, and includes Python/Go/C++/Rust registration details in a Java skill — much of it could be tightened or moved out.

3 / 5

Actionability

Concrete API and option names are given throughout (`Ax.ax(...)`, `setSampleCount`/`setResultPicker`, `addFieldTransform`), but only one two-line code snippet is included; tool attachment (`Ax.fn`, `Tool`), MCP transports, and `streamingForward` usage are never shown in code, and the referenced `examples/` are not part of the bundle.

3 / 5

Workflow Clarity

The body has a rough usable path (When To Use → Package Facts → Core Pattern → details → Guardrails, including "Start from package examples... before inventing a new call shape"), but there is no explicit multi-step sequence or verification checkpoint for the code it guides an agent to write.

3 / 5

Progressive Disclosure

Section headers exist and reference materials are named up front ("Package API docs: `API.md` and `axir-api.json`"), but a large volume of API-spec reference content (Astra Session Work, Provider Forward Options) is inlined in SKILL.md rather than split into separate files, and the referenced files (`API.md`, `examples/`) are not present in the bundle.

3 / 5

Total

12

/

20

Passed

Description

92%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: specific, package-pinned trigger with a comprehensive list of concrete capability areas that closely matches the body content. The only gap is minor synonym coverage (structured output, MCP) for trigger terms.

DimensionReasoningScore

Specificity

The description lists multiple concrete capability areas ("AxGen programs, forward calls, indexed multi-sampling, result pickers, streaming, tools, assertions, traces, usage, and output parsing") that comprehensively mirror the body's coverage, with no generic filler.

5 / 5

Completeness

"Use when writing Java code with `dev.axllm:ax`" explicitly and concretely answers when, and the task list answers what with concrete trigger phrases; the when is package-pinned rather than generic.

5 / 5

Trigger Term Quality

Natural terms like "Java code", "AxGen", "forward calls", "streaming", "tools", and "output parsing" are exactly what a user of this package would say, but synonym coverage is incomplete (e.g., "structured output/generation", "MCP tools").

4 / 5

Distinctiveness Conflict Risk

The trigger is pinned to a specific language (Java), package (`dev.axllm:ax`), and framework (AxGen), giving a clear niche with minimal overlap risk against other skills.

5 / 5

Total

19

/

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.