CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

firmware-analyst

Expert firmware analyst specializing in embedded systems, IoT security, and hardware reverse engineering. Masters firmware extraction, analysis, and vulnerability research for routers, IoT devices, automotive systems, and industrial controllers. Use PROACTIVELY for firmware security audits, IoT penetration testing, or embedded systems research.

61

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./skills/firmware-analyst/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%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 command-rich and genuinely actionable for firmware analysis, but is undermined by boilerplate filler sections, missing validation checkpoints in the extraction workflow, and a monolithic structure that inlines what should be reference files. Scored 3.3/5: solid executable core with organization and tightness left to fix.

Suggestions

Delete the auto-generated filler sections ('Use this skill when', 'Do not use this skill when', 'Instructions') that reference 'download from vendor' — they are placeholder text unrelated to firmware analysis.

Add explicit validation checkpoints to the workflow (e.g., after 'binwalk -eM', confirm the extracted filesystem exists and check entropy output for encryption before recursing; verify architecture with 'readelf -h' before Ghidra load).

Split tool catalogs, emulation setup, and the reporting template into references/ files (e.g., TOOLS.md, EMULATION.md, REPORT-TEMPLATE.md) and link them from a concise SKILL.md overview, since no bundle files currently exist.

DimensionReasoningScore

Conciseness

The technical core is lean (terse command dumps for binwalk, unsquashfs, QEMU, firmadyne), but it carries genuinely unnecessary boilerplate: auto-generated filler like 'Use this skill when - Working on download from vendor tasks or workflows', 'Clarify goals, constraints, and required inputs', and duplicated binwalk short-form comments. Matches anchor 3 (mostly efficient with some unnecessary content), not anchor 4 which would have only minor trims needed.

3 / 5

Actionability

Mostly executable guidance: copy-paste commands for extraction ('binwalk -eM firmware.bin', 'unsquashfs filesystem.squashfs'), QEMU chroot, and firmadyne scripts. Minor gaps keep it below anchor 5: placeholder URLs ('wget http://vendor.com/firmware/update.bin'), comment-only Ghidra setup, and a cross-compile line referencing a nonexistent 'exploit.c'.

4 / 5

Workflow Clarity

Phase 1-4 workflow (Identification, Extraction, File System Analysis, Binary Analysis) gives a clear sequence plus a checklist and response approach, but validation checkpoints are absent or implicit: e.g., no step to verify extraction output exists, or to check entropy for encryption before attempting recursive extraction. Guideline on missing validation in batch/destructive operations (dd from /dev/mtd0, recursive extraction) caps this at 3.

3 / 5

Progressive Disclosure

The ~310-line body has decent section headers but is fully monolithic: tool catalogs, emulation setup, vulnerability classes, and the report template are all inlined in SKILL.md with no reference files at all. Matches anchor 3 (some structure, content that should be separate is inline); not anchor 2 because headers make it navigable, not a headerless wall.

3 / 5

Total

13

/

20

Passed

Description

87%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 in third-person voice that clearly states domain, concrete capabilities, and explicit 'Use PROACTIVELY' triggers. It is specific, complete, and unlikely to trigger for the wrong skill, with only minor keyword coverage gaps.

DimensionReasoningScore

Specificity

Names the domain ('embedded systems, IoT security, and hardware reverse engineering') and several concrete actions ('Masters firmware extraction, analysis, and vulnerability research'), with minor coverage gaps (e.g., no mention of emulation or tooling). It sits between anchor 3 (1-2 actions) and anchor 5 (comprehensive multi-action coverage), so 4 fits best.

4 / 5

Completeness

Explicitly answers both: what ('Masters firmware extraction, analysis, and vulnerability research...') and when ('Use PROACTIVELY for firmware security audits, IoT penetration testing, or embedded systems research') with concrete trigger phrases. This matches anchor 5 exactly; anchor 4 would require a weaker or less explicit 'when' clause.

5 / 5

Trigger Term Quality

Natural phrases a user would say are present: 'firmware security audits, IoT penetration testing, or embedded systems research', plus device categories (routers, automotive, industrial controllers). A few common terms are missing (e.g., 'binwalk', 'dump firmware', '.bin'), matching anchor 4 rather than the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

A clear niche (embedded/IoT firmware) with distinct triggers ('firmware security audits', 'IoT penetration testing') that would rarely collide with adjacent security or general RE skills, matching anchor 5. Not anchor 4 because overlap risk with closely related skills is minimal.

5 / 5

Total

18

/

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

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

rmyndharis/antigravity-skills

Path

skills/firmware-analyst/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.