CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

openhands

Delegate coding to OpenHands CLI (model-agnostic, LiteLLM).

57

Quality

72%

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 ./optional-skills/autonomous-ai-agents/openhands/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

82%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, operator-grade delegation skill: executable commands, a flag list verified against --help, and a pitfalls section capturing genuinely non-obvious failure modes. Main improvement room is a small feedback loop for failed runs and isolating version-pinned details.

Suggestions

Add a short fix-and-retry loop (e.g., if a run errors with a LiteLLM 400, check the slug table and re-run) to strengthen workflow_clarity to 5.

Move version-pinned details ('CLI 1.16.0 / SDK v1.21.0', verified-against version in the flag list) into a version note or 'Verified against' footnote so staleness doesn't penalize conciseness.

Replace the '<same as above>' placeholder in the Background section with the full command or a named variable so each recipe is self-contained.

DimensionReasoningScore

Conciseness

The body is lean and dense with non-obvious operational knowledge (verified flag table, LiteLLM slug pitfalls, banner suppression), explaining nothing Claude already knows. It misses a 5 because time-sensitive version numbers ('OpenHands CLI 1.16.0 / SDK v1.21.0') appear twice outside any 'old patterns'/'deprecated' section.

4 / 5

Actionability

Fully executable, copy-paste-ready commands throughout: 'uv tool install openhands --python 3.12', complete terminal() invocations with real flags and env vars, and a runnable verification command with the concrete expected outcome ('a FinishAction whose action.message mentions OPENHANDS_OK'). The only placeholders (<dashed-uuid>, <id>) are inherently runtime-variable values, not gaps.

5 / 5

Workflow Clarity

Clear install → verify → configure env → run (one-shot/background/resume) → parse JSONL → verify sequence, with an explicit Verification section acting as a validation checkpoint. It falls short of 5 because there is no explicit fix-and-retry feedback loop for failed runs, and the background/poll path uses '<same as above>' placeholders.

4 / 5

Progressive Disclosure

Well-organized single-file structure with clear section headers and one-level external links (OpenHands GitHub, CLI command reference) that are real. A 5 is not earned because the 'Real Flag List' table and 'JSON Event Schema' detail are borderline content that could live in a reference file, though the ~135-line total keeps it acceptable inline.

4 / 5

Total

17

/

20

Passed

Description

53%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 concise, honest one-liner with a distinct trigger ('OpenHands') but it under-sells the skill: no use-when clause, no provider trigger terms, and only one stated action. Adding a trigger sentence and capability keywords would lift most dimensions.

Suggestions

Append an explicit trigger clause, e.g. 'Use when the user wants a coding agent on a non-Anthropic/non-OpenAI provider (DeepSeek, Qwen, Ollama, vLLM) or asks for OpenHands specifically.' — this directly lifts completeness and trigger_term_quality.

Name 1-2 more concrete capabilities (e.g. 'run headless one-shot or batch coding tasks, resume past conversations') to move specificity from one action to several.

Mention the vendor-agnostic differentiator in user terms (e.g. 'any LLM provider') rather than only the technical 'LiteLLM' label.

DimensionReasoningScore

Specificity

'Delegate coding to OpenHands CLI' names the domain and one concrete action, with '(model-agnostic, LiteLLM)' as a scoping qualifier rather than additional actions. It is not 2 (the action is concrete, not generic padding) but only one capability is listed, matching '1-2 concrete actions, but not comprehensive'.

3 / 5

Completeness

The 'what' is clear (delegate coding tasks to the OpenHands CLI, provider-agnostic), but there is no 'Use when...' clause or equivalent trigger guidance — the judging guidelines explicitly cap completeness at 3 for this.

3 / 5

Trigger Term Quality

Real, natural keywords are present ('OpenHands', 'delegate coding', 'LiteLLM'), but common user variations are missing — no 'coding agent', no provider names users would actually say (DeepSeek, Qwen, Ollama, vLLM). This matches 'some relevant keywords but missing common variations or synonyms' rather than the good coverage of a 4.

3 / 5

Distinctiveness Conflict Risk

'OpenHands CLI' is a distinct, niche trigger with minimal wrong-skill risk, and '(model-agnostic, LiteLLM)' differentiates it from vendor-locked siblings. It is not 5 because 'delegate coding' overlaps with the sibling coding-agent skills (claude-code, codex, opencode) that the body names but the description does not.

4 / 5

Total

13

/

20

Passed

Validation

81%

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

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

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

Warning

Total

13

/

16

Passed

Repository

NousResearch/hermes-agent

Path

optional-skills/autonomous-ai-agents/openhands/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.