CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ax-java-gepa

Use when writing Java code with `dev.axllm:ax` for GEPA, Pareto tradeoffs, reflection clients, metric budgets, optimizer state, and artifacts.

Quality

73%

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 ./packages/java/skills/ax-java-gepa/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 well-organized, token-efficient overview with genuinely package-specific guardrails and clearly signaled references into the generated package's docs and examples. Its weaknesses are the non-executable core code snippet, the absence of a sequenced optimization workflow with explicit verification steps, and reference paths that are named but not navigable. It reads as a competent orientation document rather than a complete operating guide.

Suggestions

Make the Core Pattern copy-paste runnable: add imports and show how `request`, `evaluator`, and `reflectionClient` are constructed, or point to a specific no-key example file that runs as-is.

Add a short numbered workflow for the common path — seed demos with BootstrapFewShot, run `AxGEPA.optimize`, then verify the artifact (compare `metadata.bestScore` vs `baselineScore`, check `bootstrapMetricCalls + totalMetricCalls == totalCalls`) — with an explicit verification step before considering the run successful.

State where package files like `API.md`, `axir-capabilities.json`, and `examples/` are located (e.g., the installed package root) or link them directly so the references are navigable.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence — guardrails like "Treat AxIR as the source of generated package truth" and the metadata invariants ("metadata.bootstrapMetricCalls plus metadata.totalMetricCalls equals metadata.totalCalls") are stated with zero padding. However, "Language: Java." and "Package: `dev.axllm:ax`." restate the title and intro sentence, and the opening line duplicates the frontmatter description — minor trims that keep it below "every token earns its place".

4 / 5

Actionability

The Core Pattern ("new AxGEPA(reflectionClient, java.util.Map.of())", "engine.optimize(request, evaluator)") uses undefined variables with no imports, making it a call-shape sketch rather than executable code, and the concrete how-to is deferred to "Runnable examples: `examples/`". Specific class names and metadata-field rules provide some concrete guidance, but key executable details are missing — matching "some concrete guidance but incomplete" better than "mostly executable with minor gaps".

3 / 5

Workflow Clarity

Only fragments of sequence appear ("Use BootstrapFewShot before GEPA", "Start from package examples for exact native syntax before inventing a new call shape"), with no numbered workflow or explicit validation checkpoints for running and verifying an optimization. Verification-ish rules exist ("Compare metadata.bestScore with baselineScore") but remain implicit rather than sequenced steps.

3 / 5

Progressive Disclosure

Good structure: a lean, well-sectioned overview under 50 lines with one-level-deep references clearly signaled in Package Facts ("Package API docs: `API.md` and `axir-api.json`", "Runnable examples: `examples/`"). The references are bare backtick names without paths or links (their location inside the generated package is unstated), and the single-bullet "Relevant API Surface" section is a thin stub — minor organization gaps that fall short of anchor 5.

4 / 5

Total

14

/

20

Passed

Description

73%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 focused, distinctive description with an explicit "Use when" trigger and strong domain-specific keywords that make mis-triggering very unlikely. Its main weakness is that capabilities are expressed as a list of topic nouns rather than concrete actions, leaving the "what it does" implicit within the trigger clause. Solidly above average, just short of the fully explicit, action-oriented ideal.

Suggestions

Lead with an explicit what-statement using action verbs (e.g., "Runs the GEPA optimizer, tracks metric budgets and Pareto fronts, and inspects optimizer artifacts in Java") before the "Use when" clause.

Convert topic nouns like "optimizer state" and "artifacts" into the actions performed on them (inspect, compare, track) to sharpen capability specificity.

DimensionReasoningScore

Specificity

The description names the domain precisely ("writing Java code with `dev.axllm:ax`") but offers only one concrete action (writing code); "GEPA, Pareto tradeoffs, reflection clients, metric budgets, optimizer state, and artifacts" are topic nouns rather than actions. This matches "names domain and 1-2 concrete actions, but not comprehensive" better than "lists several specific actions", and it is well above the generic minimal-action anchor 2.

3 / 5

Completeness

The "when" is explicit ("Use when writing Java code with `dev.axllm:ax` for GEPA...") and the "what" is embedded in the same clause (supporting Java code for those concerns), but there is no separate explicit statement of what the skill does. It satisfies "has both what and when; [one] could be more explicit" rather than the fully explicit dual-statement pattern of anchor 5, and is far more informative than the when-only anchor 2.

4 / 5

Trigger Term Quality

Good natural keyword coverage — "Java code", "dev.axllm:ax", "GEPA", "Pareto tradeoffs", "reflection clients", "metric budgets" are exactly what a user of this package would say. Common variations and synonyms (e.g., "prompt optimization", "BootstrapFewShot", "LLM optimizer") are missing, so it falls short of comprehensive synonym-level coverage at anchor 5 but sits clearly above "some relevant keywords" at anchor 3.

4 / 5

Distinctiveness Conflict Risk

The exact package coordinate "`dev.axllm:ax`" paired with niche terms like "GEPA" and "Pareto tradeoffs" creates a clear, distinct trigger niche. Only work with this specific package and optimizer would match, giving minimal conflict risk with generic Java or optimization skills.

5 / 5

Total

16

/

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

Path

packages/java/skills/ax-java-gepa/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.