CtrlK
BlogDocsLog inGet started
Tessl Logo

openhands

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

57

Quality

67%

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

77%Weight 40%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is highly actionable with a well-sequenced, validated workflow and excellent non-obvious operational detail (slug double-prefixing, banner suppression, resume-ID dashes). Its weaknesses are mild verbosity from repeated full commands and a monolithic single-file structure that keeps reference material inline.

Suggestions

Reduce command repetition across the one-shot, background, resume, and verification sections by defining the shared OPENHANDS_SUPPRESS_BANNER + LLM_* prefix once and referencing it, tightening conciseness.

Move the flag table and JSON event schema into separate reference files (e.g. references/flags.md, references/event-schema.md) and link to them from the main body so SKILL.md stays a lean overview, improving progressive disclosure.

Add an explicit validate->fix->retry loop note for batch runs (e.g. 'if a run's FinishAction reports an error, inspect the ActionEvent/ObservationEvent, adjust the task, and --resume with a corrected prompt') to make the existing recovery guidance a first-class feedback loop.

DimensionReasoningScore

Conciseness

The body is dense and free of padded concepts Claude already knows (it never explains what a CLI or LiteLLM is), but it repeats the full env-var-laden command verbatim across the one-shot, background, resume, and verification sections, fitting 'mostly efficient but... could be tightened' rather than the score-3 'every token earns its place'.

2 / 3

Actionability

It provides fully executable, copy-paste-ready terminal() invocations with all env vars, a verified flag table, and a concrete verification command, matching 'fully executable code/commands; specific examples; copy-paste ready'.

3 / 3

Workflow Clarity

Prerequisites are numbered and sequenced with explicit checkpoints (install, verify via 'openhands --version', set env, suppress banner) plus a final OPENHANDS_OK verification and a Pitfalls section for error recovery, matching 'clear sequence with explicit validation steps; feedback loops for error recovery'.

3 / 3

Progressive Disclosure

Sections are clearly headed with no nested references and easy to navigate, but all reference-like material (the flag table, JSON event schema) is inline in a single ~135-line file rather than split into separate reference files, fitting the score-2 anchor 'content that should be separate is inline'.

2 / 3

Total

10

/

12

Passed

Description

57%Weight 40%Scale 1-3

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 specific to its tool and clearly distinguishable, but it states only a single action and lacks any explicit 'Use when' trigger guidance, leaving the when-question only implied. Adding trigger phrasing and a broader action list would lift it toward the top of the scale.

Suggestions

Add an explicit 'Use when...' clause (e.g. 'Use when delegating a coding task to OpenHands or when you need a coding agent on a non-Anthropic/non-OpenAI provider') to answer the when-question and raise completeness.

List multiple concrete actions (e.g. '...run multi-step file edits and shell commands, resume prior conversations, and run batch/background coding tasks') to move specificity beyond the single 'delegate coding' action.

Include natural trigger variations a user would actually say ('coding agent on a custom model', 'non-Anthropic coding agent', 'LiteLLM coding task') to broaden trigger-term coverage beyond the tool name.

DimensionReasoningScore

Specificity

The description names a concrete action and tool ("Delegate coding to OpenHands CLI") but lists only one action rather than multiple specific concrete actions, so it matches the 'names domain and some actions, but not comprehensive' anchor rather than the score-3 'lists multiple specific actions'.

2 / 3

Completeness

It clearly answers 'what does this do' (delegates coding to OpenHands CLI) but has no 'Use when...' clause or equivalent explicit trigger, so per the judging guidelines completeness is capped at 2 ('has what, but when is missing or only implied').

2 / 3

Trigger Term Quality

It contains the key natural term a user would say ("OpenHands" and "coding"), but the remaining terms ("model-agnostic", "LiteLLM") lean technical and common natural variations (e.g. 'coding agent on a custom model') are missing, fitting 'some relevant keywords but missing common variations'.

2 / 3

Distinctiveness Conflict Risk

Naming a specific tool plus a distinctive capability (model-agnostic / LiteLLM) carves a clear niche unlikely to conflict with vendor-locked sibling skills, matching 'clear niche with distinct triggers; unlikely to conflict'.

3 / 3

Total

9

/

12

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.

Validation13 / 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
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.