CtrlK
BlogDocsLog inGet started
Tessl Logo

format-source

Format source files to align with Liferay's coding standards.

58

Quality

73%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

—

The risk profile of this skill

Fix and improve this skill with Tessl

tessl review fix ./.claude/skills/format-source/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

85%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 content is highly actionable and workflow-safe: executable commands, per-rule diff examples, explicit conflict policy, and validation feedback loops throughout. Its main weakness is that the 48 manual rules are entirely inlined in a ~1000-line SKILL.md rather than split into reference files, which hurts progressive disclosure.

Suggestions

Move the 48 manual rules into a references file (e.g., references/manual-rules.md) and keep a categorized summary in SKILL.md, so the skill body stays a lean overview.

Split the language-specific sections (shell delegation with the curl fallback, Go formatting) into their own reference files with one-level-deep links.

Trim connective prose such as "This is how it works:" and collapse the two curl invocations into a single parameterized example to save tokens.

DimensionReasoningScore

Conciseness

The body is dense and project-specific: every rule is a one-line rationale plus before/after diffs, with no explanation of concepts Claude already knows. Minor instances could be trimmed ("This is how it works:", the verbose multi-line curl block for the remote fallback, and some repeated conflict-resolution phrasing), keeping it at anchor 4 rather than the fully lean anchor 5.

4 / 5

Actionability

Commands are copy-paste ready and complete ("cd <module-root> && <gradlew> formatSource", "ant format-source-current-branch", "gofmt -w ." / "gofmt -l .", and the curl fallback with explicit flags), and every one of the 48 rules is illustrated with concrete diff examples covering the common cases, including edge cases and exceptions. This matches the fully executable anchor 5.

5 / 5

Workflow Clarity

The workflow is explicitly sequenced with feedback loops: run the formatter, apply manual rules, then "rerun the formatter to clean up any fallout"; "if there are issues to be fixed, the formatter will list them. Fix them."; plus a listing check ("gofmt -l .") and explicit conflict and generated-file policies. This matches anchor 5 (clear sequence, explicit validation, error-recovery loop) for a batch formatting operation.

5 / 5

Progressive Disclosure

There is good section structure (formatter workflow, shell, Go, 48 numbered rules) and external references are clearly signaled with a resolution order (../liferay-docker SKILL.md, CODE_STYLE.md, .claude/rules/go-style.md), but no bundle files exist and roughly 1000 lines of manual rules are inlined in SKILL.md — content that clearly belongs in separate reference files. This is anchor 3 (content that should be separate is inline), not 2 because the structure and signaling are good, and not 4 because the inline bulk is a major organization gap rather than a minor one.

3 / 5

Total

17

/

20

Passed

Description

50%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 is concise and names a clear domain, but it is a single-action statement with no trigger guidance and no enumeration of the file types or workflow it covers. It sits solidly at the midpoint across all dimensions.

Suggestions

Add an explicit trigger clause, e.g., "Use when formatting Java, JavaScript, JSON, JSP, Markdown, properties, XML, YAML, or Go source in liferay-portal, or when the user mentions formatSource, coding standards, or style violations."

Enumerate the concrete capabilities (run the source formatter, apply ~48 manual style rules, delegate shell and Go formatting to their own guides) so the "what" is comprehensive rather than a single action.

Mention the distinguishing scope (liferay-portal, cloud/ Go code, generated-file exclusion) to reduce overlap with sibling formatting skills like format-bash-source.

DimensionReasoningScore

Specificity

"Format source files to align with Liferay's coding standards" names the domain (Liferay source, coding standards) and one concrete action (format), but does not enumerate the covered file types or the formatter-plus-manual-rules workflow. It is above anchor 2 (purely generic like "Processes PDF files") because the Liferay anchoring adds specificity, but below anchor 4 because no list of several specific actions is given.

3 / 5

Completeness

The "what" is clear (format source files to Liferay's coding standards), but there is no "Use when..." clause or equivalent explicit trigger guidance, which caps completeness at 3 per the judging guidelines. It is not a 2 because the "what" is concrete, and not a 4 because "when" is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

"format", "source files", and "coding standards" are terms a user might naturally say, but the description misses common variations and synonyms such as "formatSource", "lint", "style", "style guide", and file extensions (.java, .js, .go, .xml). This matches anchor 3 (some relevant keywords, missing common variations) rather than 4, which requires only a few natural terms missing.

3 / 5

Distinctiveness Conflict Risk

"Liferay's coding standards" carves out a niche, but "Format source files" is broad and would overlap with closely related skills in the same environment (e.g., the format-bash-source skill the body delegates to). This fits anchor 3 (somewhat specific but could still overlap with similar skills); it is below 4 because the description gives no file-type scoping that would separate it from sibling formatter skills.

3 / 5

Total

12

/

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

skill_md_line_count

SKILL.md is long (1094 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository
liferay/liferay-portal
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.