CtrlK
BlogDocsLog inGet started
Tessl Logo

earllm-build

Build, maintain, and extend the EarLLM One Android project — a Kotlin/Compose app that connects Bluetooth earbuds to an LLM via voice pipeline.

54

Quality

61%

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 ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/earllm-build/SKILL.md

The canonical home for this skill is earllm-build in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

57%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 skill provides genuinely useful project-specific knowledge — the critical technical facts, module dependency graph, and data flow are high-value content that Claude wouldn't know otherwise. However, it's weakened by generic boilerplate sections (trigger phrases, generic best practices/pitfalls), lacks validation checkpoints in its workflows, and could benefit from splitting reference material into separate files. The actionability is decent but would improve with concrete code patterns rather than just file name references.

Suggestions

Remove the generic 'Best Practices' and 'Common Pitfalls' sections — they contain no project-specific information and waste tokens.

Add validation/verification steps to the build artifact workflow (e.g., verify ZIP contents, test that the project builds from the ZIP).

Include a concrete code example showing the StateFlow pattern used in the project, so Claude can follow the established convention when adding features.

Remove or drastically shorten the 'When to Use This Skill' / 'Do Not Use This Skill When' sections — these are generic trigger phrases that don't help Claude execute the skill.

DimensionReasoningScore

Conciseness

The skill contains useful project-specific information (module graph, critical technical facts, data flow) but also includes generic filler sections like 'When to Use This Skill' trigger phrases, generic 'Best Practices' ('Provide clear, specific context'), and generic 'Common Pitfalls' ('Using this skill for tasks outside its domain expertise') that add no value. The STT engine reference table and hardware specs are useful but the overall document could be tightened.

3 / 5

Actionability

The skill provides concrete commands for building/testing, specific file names and module locations, executable PowerShell for ZIP generation, and detailed technical constraints (SCO 8kHz, API deprecations). However, the 'Adding A New Feature' section is somewhat generic, and there are no code examples showing actual patterns (e.g., StateFlow usage, how to wire a new feature into MainViewModel).

4 / 5

Workflow Clarity

The data flow diagram is clear and the audio sequencing constraint (stop playback → HFP → record → A2DP → play) is well-documented. However, the 'Adding A New Feature' workflow lacks validation checkpoints, and the build artifact generation has no verification step to confirm the ZIP is valid. The 'Modifying Audio Capture' and 'Changing Bluetooth Behavior' sections are reference notes rather than sequenced workflows.

3 / 5

Progressive Disclosure

The content is structured with clear section headers and tables, which aids navigation. However, with no bundle files, all content is inlined in a single document that's moderately long. Content like the STT engine reference, phase 2 roadmap, and detailed critical technical facts could be split into separate reference files. No external file references are provided.

3 / 5

Total

13

/

20

Passed

Description

64%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 identifies a highly specific project with a distinctive technology stack, making it easy to distinguish from other skills. However, it lacks a 'Use when...' clause and relies on generic development verbs rather than enumerating concrete capabilities, which weakens its completeness and specificity.

Suggestions

Add a 'Use when...' clause with trigger phrases like 'Use when working on the EarLLM One project, Android Bluetooth audio, voice pipeline integration, or Kotlin/Compose mobile development.'

Replace generic verbs ('build, maintain, extend') with specific capabilities such as 'configure Bluetooth pairing, implement voice-to-text pipeline, manage audio streaming, integrate LLM API responses.'

DimensionReasoningScore

Specificity

Names the domain (Android/Kotlin/Compose app with Bluetooth earbuds and LLM voice pipeline) and lists a few high-level actions ('build, maintain, and extend'), but these are generic development verbs rather than concrete, specific capabilities like 'configure Bluetooth pairing', 'implement voice-to-text pipeline', etc.

3 / 5

Completeness

The 'what' is reasonably clear (build/maintain/extend a specific Android app), but there is no explicit 'when' clause or trigger guidance. Per rubric rules, a missing 'Use when...' clause caps completeness at 3.

3 / 5

Trigger Term Quality

Includes several natural keywords a user might say: 'Android', 'Kotlin', 'Compose', 'Bluetooth', 'earbuds', 'LLM', 'voice pipeline', and the project name 'EarLLM One'. Missing some variations like 'BLE', 'headphones', 'speech-to-text', 'STT/TTS', or 'audio streaming'.

4 / 5

Distinctiveness Conflict Risk

The description names a very specific project ('EarLLM One') with a unique combination of technologies (Kotlin/Compose, Bluetooth earbuds, LLM voice pipeline). This is a clear niche with minimal conflict risk against other skills.

5 / 5

Total

15

/

20

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
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.