CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

frb-debugging

Use when generated code looks wrong, code generation fails, or you need to understand FRB internals

Quality

60%

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 ./.claude/skills/frb-debugging/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.

The body is an appropriately terse, well-organized diagnostic overview that correctly defers to a sibling skill before deep diving. Its weakness is executable specificity: the diagnostic commands are skeletal (ellipsis placeholders, bare doc paths) and the workflow lacks explicit checkpoints confirming or ruling out each hypothesis before escalating.

Suggestions

Make the debug-log command executable by showing a full invocation, e.g. "RUST_LOG=debug flutter_rust_bridge_codegen generate" with the actual subcommand and config path.

Replace the "..." in the frb_dump artifact list with the complete set of dump files and what to look for in each (e.g., which file shows effective config vs. IR vs. generated code).

Add explicit checkpoints in the diagnostic workflow, such as "if the IR in frb_dump looks correct, the bug is in codegen — go to X" / "if the IR is already wrong, inspect the parser" before falling back to the troubleshooting docs.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence — it adds only FRB-specific facts (the frb_dump location, the RUST_LOG prefix, the frb-fix-ci ordering rule) with no padding or explanation of concepts Claude already knows. Minor trims remain (the "..." in the dump-artifacts list and the typo "for debugability"), placing it at anchor 4 rather than a fully token-tight 5.

4 / 5

Actionability

Some guidance is concrete ("check rust/target/frb_dump/", "RUST_LOG=debug flutter_rust_bridge_codegen"), but the codegen command ends in an ellipsis instead of executable arguments, the artifact list ends in "...", and the Full Troubleshooting section is just two bare repo paths with no instruction on what to do with them. This matches anchor 3 ('some concrete guidance but incomplete... missing key details') and falls short of anchor 4's mostly-executable standard.

3 / 5

Workflow Clarity

A rough sequence is present — quick diagnostics first, then full troubleshooting, with an explicit ordering rule ("You MUST only stay in frb-debugging after frb-fix-ci has ruled out those simpler explanations") — but there are no explicit checkpoints validating a hypothesis at each stage (e.g., what to confirm in the dump before escalating to internals). Anchor 3 ('sequence present but checkpoints missing or implicit') is the best fit; not 4 because the checkpoints are never stated.

3 / 5

Progressive Disclosure

For a sub-50-line skill with no bundle files, the body is well organized into clearly labeled sections (When to Use, Quick Diagnostics, Full Troubleshooting, Related Skills) with one-level-deep, clearly signaled pointers ("see: website/docs/manual/troubleshooting.md", related skills). Minor gap: the referenced paths live outside any bundle and it is implicit that they are repo-relative rather than skill files, keeping it at anchor 4 rather than 5.

4 / 5

Total

14

/

20

Passed

Description

40%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 strong, explicit trigger guidance and a distinct FRB niche, but it is entirely a 'when' clause with no statement of what the skill does. Adding one sentence of concrete actions (e.g., inspects dumped IR and generated artifacts, runs codegen with debug logs) and natural terms like 'debug' would substantially raise it.

Suggestions

Add a 'what' clause naming concrete actions, e.g. "Diagnoses flutter_rust_bridge failures by inspecting dumped IR and generated artifacts in rust/target/frb_dump/ and re-running codegen with debug logs."

Include natural trigger terms users would actually say — "debug", "flutter_rust_bridge", "rust", "generated code errors" — alongside the existing scenarios.

Make the domain explicit in the first phrase (e.g. "Debugs flutter_rust_bridge (FRB)...") so it reads as a capability statement rather than only a trigger list.

DimensionReasoningScore

Specificity

The description lists concrete trigger scenarios ("generated code looks wrong", "code generation fails") but names zero actions the skill performs — there is no 'what' verb like diagnoses, dumps, or traces. It sits at anchor 2 ('names the domain but actions are minimal or generic'), below anchor 3 since no concrete skill actions are given, and above anchor 1 because the scenarios are specific rather than pure abstract fluff.

2 / 5

Completeness

"Use when..." explicitly answers the 'when' with concrete trigger phrases, but the description never states what the skill actually does. Per the rubric, a description with a clear 'when' but missing 'what' fits anchor 2 ('only when is present without what'); it does not reach anchor 4, which requires both.

2 / 5

Trigger Term Quality

"Code generation fails" and "generated code looks wrong" are natural user phrases, but common variations users would actually say — "debug", "flutter_rust_bridge", "rust", "generated code errors" — are absent. This matches anchor 3 ('some relevant keywords but missing common variations or synonyms') and falls short of anchor 4's good keyword coverage.

3 / 5

Distinctiveness Conflict Risk

"Understand FRB internals" carves a clear niche with minimal conflict risk, but the generic triggers "generated code looks wrong" and "code generation fails" could plausibly fire for other code-generation skills. Anchor 4 ('mostly distinct; minor overlap risk with closely related skills') is the best fit; not 5 because those generic triggers are not fully distinct.

4 / 5

Total

11

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

fzyzcjy/flutter_rust_bridge

Path

.claude/skills/frb-debugging/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.