CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

extracting-keywords

Use when extracting keywords (YAKE/RAKE) from documents — and, secondarily, when detecting document language or generating embeddings for RAG and search. Covers the keyword config (and its feature gating), `--detect-language`, and the standalone `embed` command with real flags.

69

Quality

87%

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

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 highly actionable, information-dense body: every section gives real commands, flags, and config with honest feature-gating caveats. The main weaknesses are redundancy between Field notes and Common pitfalls, absent verification steps, and reference paths that don't resolve within this bundle.

Suggestions

De-duplicate the Field notes and Common pitfalls sections — the `min_score` direction, `max_keywords` default, and no-`--keywords`-flag points each appear twice.

Verify or create `references/advanced-features.md` and `references/cli-reference.md` — they are cited as bundle paths but no `references/` directory exists in this skill.

Add a quick verification cue for keyword extraction (e.g., check `result.extracted_keywords` is non-empty, and remember the silent-ignore behavior on non-`full` builds).

DimensionReasoningScore

Conciseness

Dense and competence-assuming — no concept tutorials, real flags only — but there is noticeable duplication: the `max_keywords` default is stated in both the TOML comment and Field notes, the `min_score` higher-is-better direction is explained in Field notes and again in Common pitfalls, and the missing `--keywords` flag is stated in both the Keywords section and pitfalls. Anchor 4 (efficient with minor trimming opportunities) fits better than 5.

4 / 5

Actionability

Fully executable throughout: copy-paste CLI commands with real flags (`--config-json` with a `keywords` JSON block, `--detect-language true`, `xberg embed --preset quality`), jq pipelines, complete TOML config blocks with per-field comments, and a runnable Python snippet. The provider table and cache-warm commands cover the common cases.

5 / 5

Workflow Clarity

A reference-style skill with clearly organized per-feature sections and a useful diagnostic note (feature-gated builds silently ignore `[keywords]` rather than erroring), and the pitfalls section anticipates failure modes. However, there are no explicit verification checkpoints (e.g., confirming expected output shape or that keywords actually landed on the result), so anchor 4 fits better than 5.

4 / 5

Progressive Disclosure

Good structure with clearly signaled one-level references ("See `references/advanced-features.md` for the embeddings pipeline and `references/cli-reference.md` for the `embed` and `cache warm` flag sets"), and the Python/config refs are honestly scoped to the sibling `xberg` skill. But the two `references/*.md` paths have no corresponding files in this bundle (no `references/` directory exists), and some inlined reference material (full config-field annotations, provider table) could live in those files — minor organization gaps keep this at anchor 4.

4 / 5

Total

17

/

20

Passed

Description

88%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: concrete capabilities with explicit 'Use when' triggers covering primary and secondary use cases, all in third person. Its only weaknesses are a few missing natural synonyms and minor overlap risk on the secondary embeddings/language-detection scope.

Suggestions

Add natural synonym phrases users might say, e.g. "key phrases" or "keyword extraction", to broaden trigger matching.

Tighten the secondary scope wording ("documents", "RAG and search") to reduce overlap with a sibling extraction/embeddings skill, e.g. by anchoring to the xberg CLI context.

DimensionReasoningScore

Specificity

Multiple concrete named actions — "extracting keywords (YAKE/RAKE)", "detecting document language", "generating embeddings for RAG and search" — plus implementation specifics like "`--detect-language`" and "the standalone `embed` command". Coverage is comprehensive for the skill's scope, matching the anchor-5 example of multiple specific concrete actions.

5 / 5

Completeness

Explicitly answers 'when' with concrete trigger phrases ("Use when extracting keywords (YAKE/RAKE) from documents — and, secondarily, when detecting document language or generating embeddings") and 'what' ("Covers the keyword config (and its feature gating), `--detect-language`, and the standalone `embed` command"). The 'when' is more explicit and specific than anchor 4 allows.

5 / 5

Trigger Term Quality

Good natural keywords users would say — "extracting keywords", "embeddings", "RAG", "search", "document language" — but a few natural synonyms are missing (e.g., "key phrases", noun-form "keyword extraction"). Not the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

YAKE/RAKE keyword extraction is a clear niche with distinct triggers, but "documents" and "embeddings for RAG and search" carry minor overlap risk with a generic extraction or embeddings skill (a sibling `xberg` extraction skill is referenced in the body). Mostly distinct rather than minimal-conflict.

4 / 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

referenced_paths_exist

Referenced path issues: 4 missing

Warning

Total

15

/

16

Passed

Repository

xberg-io/xberg

Path

plugin/.cursor-plugin/skills/extracting-keywords/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.