CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-go-ai

Use when writing Go code with `github.com/ax-llm/ax/packages/go` for named deployment profiles, generic provider clients, model selection, OpenAI-compatible calls, Responses, Gemini, Anthropic, routers, and balancers.

56

Quality

70%

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/go/.well-known/agent-skills/ax-go-ai/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.

A dense, well-sectioned package reference with genuinely package-specific knowledge (profile semantics, error taxonomy, retry defaults) and no basic-concept padding. Its weaknesses are the near-absence of executable Go examples, off-target cross-language detail, and a monolithic single-file layout that inlines policy detail a reference file could hold.

Suggestions

Add 2-4 complete, runnable Go snippets for the common cases (NewAI with profile + base URL, credential provider setup, a basic router/balancer construction) instead of a single 2-line Core Pattern, since anchor-level actionability for a code skill requires copy-paste-ready examples.

Trim cross-language material (C++/Rust/Java/Python naming variants in the Typesafe and Routing sections) to the Go spellings this skill targets, keeping the Go-first form for each API.

Move fine-grained per-model sampling tables and retry/backoff arithmetic into a skill-owned reference file (e.g., references/sampling.md) with clearly signaled one-level-deep links from SKILL.md, rather than inlining everything in the main body.

DimensionReasoningScore

Conciseness

The body is dense and assumes competence — it never explains basics Claude already knows — but it is not lean: e.g., the Go skill carries cross-language material ("C++ uses valueDescriptions on its existing field descriptors", "Python, Go, and Java accept fileToText in router processing options; C++ exposes file_to_text, and Rust exposes with_file_to_text") and ultra-fine policy ("accepted with an allowance for floating-point summation error") that could be tightened. This sits between anchor 2's padded verbosity and anchor 4's efficient-but-trimmable text.

3 / 5

Actionability

Concrete identifiers abound (`AxAIServiceTimeoutError`, `retryableStatusCodes` with defaults "500, 408, 429, 502, 503, 504 and 529", `JoinStreamText(text, delta)`) but across ~160 lines of a code skill there is only one 2-line snippet (`llm := ax.NewAI("openai", map[string]ax.Value{...})`), leaving common cases like credential providers, routers, and balancers without executable examples. Anchor 4 requires mostly executable guidance with only minor gaps, which this does not meet; it is clearly above the high-level-hints level of anchor 2.

3 / 5

Workflow Clarity

Conditional decision rules exist ("Use `provider-api` examples only when the user explicitly has provider credentials available", "Start from package examples for exact native syntax before inventing a new call shape"), but the body is a topic reference rather than a sequenced workflow, and no validation/verification checkpoints appear (e.g., verifying generated request payloads against the fixtures). It is organized but the sequence-and-checkpoint anchors at 4 are not met.

3 / 5

Progressive Disclosure

Section headers are clear and the Package Facts block signals reference material, but no bundle files exist: all fine-grained policy (per-model sampling rules, retry backoff math, Astra session semantics) is inlined in one ~160-line document, and the referenced paths (`API.md`, `axir-api.json`, `src/examples/go/generation/`, `https://axllm.dev/go/examples/generation/`) point into the package or web rather than skill-owned reference files. This matches anchor 3: some structure, but content that should be separate is inline and the skill's own navigation layer is absent.

3 / 5

Total

12

/

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: it names the exact package, scopes itself to Go, provides an explicit "Use when" trigger, and enumerates concrete capability areas that double as natural keywords. The only weaknesses are terseness in a few listed topics and a "what" that is implied by enumeration rather than stated as an action.

DimensionReasoningScore

Specificity

Quotes several concrete capability areas — "named deployment profiles, generic provider clients, model selection, OpenAI-compatible calls, Responses, Gemini, Anthropic, routers, and balancers" — which is more than the 1-2 actions of anchor 3, but a few entries are bare nouns ("Responses", "routers") rather than fully described actions, leaving minor gaps in coverage versus the comprehensive anchor 5.

4 / 5

Completeness

The explicit trigger "Use when writing Go code with `github.com/ax-llm/ax/packages/go`" clearly answers "when", and the capability list conveys "what". Not anchor 5 because the "what" is delivered as a topic list rather than an explicit statement of the skill's action, and the trigger, while explicit, is a single condition rather than multiple concrete trigger phrases.

4 / 5

Trigger Term Quality

Natural phrases like "writing Go code", "OpenAI-compatible calls", "Gemini", "Anthropic", and "routers" match what a user working with this package would actually say, giving good keyword coverage. Not anchor 5 because some common variations (e.g., "failover", "provider clients", "LLM", "API keys") a user might naturally mention are absent.

4 / 5

Distinctiveness Conflict Risk

The fully qualified package path `github.com/ax-llm/ax/packages/go` plus vendor-specific names (Gemini, Anthropic, Responses) carve out a clear niche that only applies to this specific Go package, with minimal overlap risk against generic Go or provider skills.

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.