CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ent

Work with Ent ORM schemas and generated code. Use when modifying ent schemas, debugging ent query issues, or dealing with Postgres type mappings.

Quality

74%

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 ./.agents/skills/ent/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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 strong, knowledge-dense reference skill: nearly every line carries non-obvious, project-specific guidance with concrete paths, commands, and API patterns. The main gaps are a scattered edit-regenerate-test workflow without an explicit validation checkpoint, and a Common Patterns section dense enough to warrant a reference file.

Suggestions

Consolidate the regeneration workflow into one ordered sequence with an explicit validation step, e.g. '1. Edit openmeter/ent/schema/*.go 2. Run make generate 3. Run the ent tests; if generation or tests fail, fix the schema and regenerate.'

Move the long upsert/SetOrClear/SetNillable pattern explanations into a references/ file (e.g. references/patterns.md) and keep one-line summaries with pointers in Common Patterns.

Add a complete, copy-paste-ready schema snippet for the recommended text[] column pattern (field.Other with pq.StringArray and the SchemaType map), since it is the skill's most emphatic do/don't guidance.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious, repo-specific knowledge (e.g. 'field.Strings(...)' creating jsonb, ULID char(26) keys, 63-byte identifier limits) and explains nothing Claude already knows. A few Common Patterns bullets — notably the upsert and 'SetOrClear' entries — run long with stacked clauses that could be tightened, matching anchor 4 rather than 5.

4 / 5

Actionability

Guidance is concrete and executable: exact paths ('openmeter/ent/schema/*.go', 'openmeter/ent/db/selectedparse.go'), commands ('make generate', 'go generate ./openmeter/ent/...'), and specific API patterns ('index.Fields("namespace", "key", "deleted_at").Unique()', 'StorageKey(edge.Symbol("..."))'). It falls short of anchor 5 because patterns like the pq.StringArray field are given as fragments rather than a complete, copy-paste-ready schema snippet.

4 / 5

Workflow Clarity

The change-schema -> regenerate -> test sequence is present ('regenerate with make generate before running tests', plus the Regeneration section's command guidance), but it is scattered across sections rather than laid out as a sequence, and there is no explicit validation checkpoint or fix-and-retry loop after generation. This matches anchor 3 (steps listed but checkpoints missing or implicit); it is above 2 because the sequence and the test step are stated.

3 / 5

Progressive Disclosure

The body is 49 lines with clear, well-organized sections and no bundle files, and every path referenced in the body is within the repo rather than a missing bundle file. It scores 4 rather than 5 because the long Common Patterns deep-dives (upsert semantics, SetOrClear, SetNillable) are advanced material that could be split into a one-level-deep reference, leaving SKILL.md as a leaner overview.

4 / 5

Total

15

/

20

Passed

Description

70%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 solid description with an explicit and well-targeted 'Use when...' clause covering the three main use cases. Its main weakness is a generic capability sentence ('Work with...') that undersells the specific actions the skill supports.

Suggestions

Replace the generic 'Work with Ent ORM schemas and generated code' with concrete capabilities, e.g. 'Edit Ent schema definitions, regenerate Ent code, and apply Postgres-specific field types and index patterns.'

Add natural trigger variations users might say, such as 'ent migrations', 'ent generate', or 'Ent ORM', to broaden keyword coverage.

DimensionReasoningScore

Specificity

The capability sentence 'Work with Ent ORM schemas and generated code' names the domain but uses a generic action verb; the concrete actions (modifying schemas, debugging query issues, type mappings) appear only in the trigger clause. This matches anchor 3 (domain plus 1-2 concrete actions, not comprehensive) better than 4 because the 'what' itself does not enumerate specific capabilities.

3 / 5

Completeness

It has both a 'what' ('Work with Ent ORM schemas and generated code') and an explicit 'Use when...' clause with three concrete triggers, matching anchor 4. It is not a 5 because the 'what' portion is generic compared to the anchor-5 pattern of enumerating multiple concrete capabilities alongside the triggers.

4 / 5

Trigger Term Quality

'ent schemas', 'ent query issues', and 'Postgres type mappings' are phrases users would naturally say when needing this skill. It falls short of anchor 5 because common variations like 'ent migration', 'ent generate', 'ORM entities', or 'Atlas' are missing.

4 / 5

Distinctiveness Conflict Risk

Ent ORM is a clear niche with distinct triggers ('ent schemas', 'ent query'), but 'dealing with Postgres type mappings' has minor overlap risk with a generic Postgres or Go database skill, matching anchor 4 rather than 5.

4 / 5

Total

15

/

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

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

Total

15

/

16

Passed

Repository

openmeterio/openmeter

Path

.agents/skills/ent/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.