CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-go-agent

Use when writing Go code with `github.com/ax-llm/ax/packages/go` for agents, child delegation, tools, MCP, citations, persistent playbook learning, stage instructions, runtime state, final typed responses, and direct-respond executor skipping.

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-agent/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 dense with package-specific facts, assumes Claude's competence, and closes with a useful guardrails section, but it reads as a monolithic policy reference: a single executable snippet that contradicts its own API-surface list, no ordered workflow for the core agent-building task, and bulk detail inlined that belongs in separate reference files. Restructuring and tightening would lift most dimensions.

Suggestions

Move the dense policy sections ('Astra Session Work', 'Streaming An Agent Run') into one-level-deep reference files (e.g., SESSIONS.md, STREAMING.md) and keep SKILL.md as a concise overview with clearly signaled links.

Add a short executable Go snippet per major feature (child registration via AddChildAgent, MCP client setup, runtime configuration) and reconcile the 'ax.NewAgent' vs 'axllm.NewAgent' inconsistency so the example a reader copies first is correct.

Convert the run-on policy prose into bullet rules, drop the repeated 'as in TypeScript' comparisons to a single note, and merge the duplicated streaming/session coverage into one place to reclaim tokens.

DimensionReasoningScore

Conciseness

The body contains almost no explanation of concepts Claude already knows — it is package-specific fact throughout, so it is above anchor 2's padded verbosity. But it exceeds 'minor' trimming (anchor 4): 'as in TypeScript' is repeated roughly ten times, streaming/session behavior is covered twice (the session paragraphs inside 'Astra Session Work' — 'A stream sends a session's partial output as it arrives...' — versus the whole 'Streaming An Agent Run' section), and dense run-on policy sentences ('Declared-background native agent tools retain the imported MCP schema, handler, namespace, and raw result.') could be tightened into bullet rules. This matches anchor 3: 'mostly efficient but could be tightened'.

3 / 5

Actionability

Concrete elements exist — the Core Pattern snippet 'helper := ax.NewAgent("question:string -> answer:string", nil)', option keys with defaults ('clarificationShape` / `clarification_shape` defaults to `structured`'), and specific calls like 'ax.Fn(name).WithNamespace("crm")'. But guidance is incomplete (anchor 3, 'missing key details'): only one executable snippet, which conflicts with the skill's own 'Relevant API Surface' ('ax.NewAgent' vs 'axllm.NewAgent'), and runtime setup is described in JSON-ish notation ('"runtime"': a CodeRuntime, or a {"language": ...} config') rather than Go syntax. Most sections describe behavioral policy without showing the Go call shape, which keeps it below anchor 4's 'mostly executable guidance'.

3 / 5

Workflow Clarity

There is no ordered procedure for the skill's core task (create agent, register children, attach runtime, wire tools/MCP): the only sequencing cues are 'Register child agents before running the parent' and the 'Guardrails' do/don't list, and multi-step behavior is scattered across 'Astra Session Work', 'Where The Runtime Goes', and 'Flat Function Namespaces' with no checkpoints. This matches anchor 3's 'sequence present but checkpoints missing or implicit' — coherent thematic sections exist, so it is above anchor 2's 'poorly defined steps', but below anchor 4's 'clear sequence with most checkpoints'.

3 / 5

Progressive Disclosure

The body has clear section headers and real pointers to deeper material ('Runnable examples: `examples/`', 'Use the provider-backed Astra examples under `src/examples/go/generation/`, `short-agents/`, and `flows/`', 'Package API docs: `API.md` and `axir-api.json`'), but roughly 60 lines of dense behavioral policy ('Astra Session Work', 'Streaming An Agent Run', 'Flat Function Namespaces') are inlined in SKILL.md where one-level-deep reference files would serve — matching anchor 3's 'content that should be separate is inline'. Not anchor 4 because the bulk of the detail is inline rather than split out (no bundle files are present to verify the referenced paths).

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.

The description has an explicit 'Use when' trigger pinned to a specific Go package, enumerates ten concrete capability areas, and is highly distinct from other skills. Its main weakness is that the capability list is noun-heavy internal jargon rather than plain actions, which softens both the 'what it does' statement and the natural trigger phrases a user would actually type.

Suggestions

Lead with one or two action verbs stating what the skill does (e.g., 'Build and configure Go agents with `github.com/ax-llm/ax/packages/go`...') so the 'what' is a statement rather than only a feature list.

Replace or gloss the internal jargon terms ('stage instructions', 'direct-respond executor skipping', 'final typed responses') with plain-language phrases a user would actually say when invoking the skill.

Add natural trigger variations such as 'Golang' or 'Ax agents in Go' alongside the package path to widen natural keyword coverage.

DimensionReasoningScore

Specificity

Quotes: 'Use when writing Go code with `github.com/ax-llm/ax/packages/go` for agents, child delegation, tools, MCP, citations, persistent playbook learning, stage instructions, runtime state, final typed responses, and direct-respond executor skipping.' The description names the exact domain and enumerates ten specific capability areas, matching the anchor-4 example 'Extracts text from PDF files, fills forms, converts pages to images' (several specific items, minor gaps). It is not 5 because the items are feature nouns rather than concrete action verbs, and several ('final typed responses', 'direct-respond executor skipping') are opaque internal jargon; it is well above 3's '1-2 concrete actions'.

4 / 5

Completeness

The explicit trigger clause 'Use when writing Go code with `github.com/ax-llm/ax/packages/go`' answers 'when' clearly, and the capability list conveys the 'what' scope, matching anchor 4 ('Has both what and when; when could be more explicit or specific'). It is not 5 because the 'what' is a feature list rather than a statement of what the skill does — the anchor-5 pattern pairs concrete action verbs with trigger phrases; the 'Use when...' presence rules out the cap of 3.

4 / 5

Trigger Term Quality

'writing Go code', 'agents', 'tools', 'MCP', 'citations', 'child delegation' are natural phrases a user working with this package would say — good keyword coverage matching anchor 4 ('PDF files, forms, document extraction'). It is not 5 because the back half of the list ('persistent playbook learning', 'stage instructions', 'direct-respond executor skipping') is internal jargon no user would type, and common variations like 'Golang' or 'Ax agent' are missing; it is above 3 because the leading terms are genuinely natural, not merely technical.

4 / 5

Distinctiveness Conflict Risk

The trigger is pinned to one language and one package path ('writing Go code with `github.com/ax-llm/ax/packages/go`'), a clear niche with minimal conflict risk matching anchor 5. Generic middle terms like 'agents' and 'MCP' could overlap other agent-framework skills, but the package pin dominates the trigger, keeping it above anchor 4's 'minor overlap risk'.

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.