CtrlK
BlogDocsLog inGet started
Tessl Logo

openviking-skills

Find, use, create, install, share, update, and migrate agent skills stored in OpenViking (viking://~/skills and viking://agent/skills). Use it when a search result, or the session's <available-skills> list where the harness injects one, names a skill that fits the task; when a task looks like one a stored skill would cover; when the user asks to write, save, install, or share a skill from text, a Git repository, or a local folder; when a skill should work in every harness and on every machine; or when the user wants to move local skills (~/.claude/skills, ~/.agents/skills, ~/.cursor/skills) into OpenViking — "upload my skills", "save this as a skill", "迁移本地 skill", "把 skill 存到 OpenViking", "新建一个 skill". Covers the add_skill tool, running a skill's helper files, and which local skills must stay local.

77

Quality

96%

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

The canonical home for this skill is openviking-skills in volcengine/OpenViking

SKILL.md
Quality
Evals
Security

Quality

Content

96%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.

This is a high-quality procedural skill body: every section is executable guidance with explicit validation and confirmation checkpoints for the destructive and account-wide operations it covers, and it stays lean throughout with no padding or tutorials on concepts Claude already knows. The only structural weakness is that everything lives in one long SKILL.md — the migration classification detail and upload procedures are natural candidates for one-level-deep reference files.

Suggestions

Move the local-skill migration classification rules (the environment-bound criteria and clean-up flags) into a references/ file (e.g. references/migration-rules.md), keeping a short inlined summary and a clearly signaled pointer, so SKILL.md stays a navigable overview.

Extract the zip/curl upload procedure into its own reference (or scripts/upload.sh) referenced from the 'Install from a repository or a local folder' section, since it is reused by both the install and migrate workflows.

Consider splitting the 'Find a skill' tool catalog (find/search/tree/list descriptions) into a brief quick-start list plus a reference table, to shorten the top of the file for the most common single-action use cases.

DimensionReasoningScore

Conciseness

The body is dense, imperative, and assumes Claude's competence: no concept tutorials, no filler, and every sentence carries novel information the model could not infer (e.g., 'viking:// URIs are database paths: never pass them to local file tools or shell commands', 'A reinstall does not delete helper files the new version dropped'). This matches the 'lean and efficient; every token earns its place' anchor rather than the 'minor instances of over-explanation' anchor at 4.

5 / 5

Actionability

Nearly every step is a copy-paste-ready tool call or command: find(query=..., context_type="skill"), add_skill(data=...), the full zip command with exclusion flags, curl -sS -F "file=@/tmp/<name>.zip", ov skills add / validate / remove. It covers the common cases concretely, matching the fully-executable top anchor; it exceeds the anchor at 4 because there are no significant gaps.

5 / 5

Workflow Clarity

Every multi-step workflow (create, install, migrate) is numbered with explicit checkpoints: a name-collision read check before add_skill, 'show the user what would change and install only after they confirm', a dedicated Verify step (tree(uri=..., level_limit=1) should list every uploaded name), and ov skills validate to catch format errors first. Destructive and batch operations (delete, replace, account-wide share, migration upload) all carry explicit confirmation/validation, so the missing-validation cap does not apply; this matches the anchor with explicit validation steps and feedback loops.

5 / 5

Progressive Disclosure

The file is well-organized with clear section headers that make navigation easy, but it is a single ~180-line file with all content inlined — the migration classification rules, the zip/curl upload procedure, and install-from-repository guidance are each substantial enough that they could live in one-level-deep reference files. This matches 'good structure; most content is appropriately placed; minor organization gaps' (anchor 4) rather than anchor 5, which expects well-signaled references and appropriately split content, and the under-50-lines simple-skill exception does not apply.

4 / 5

Total

19

/

20

Passed

Description

96%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.

An exemplary description: it states a comprehensive set of concrete capabilities, gives an explicit and multi-branched 'Use it when...' clause, and includes natural trigger phrases in both English and Chinese with concrete local skill paths. The only weakness is one broad trigger ('when a task looks like one a stored skill would cover') that slightly raises overlap risk with related skill-loading behavior.

DimensionReasoningScore

Specificity

The description opens with seven concrete, specific actions ('Find, use, create, install, share, update, and migrate') anchored to concrete targets (viking://~/skills, viking://agent/skills, add_skill tool, helper files). This matches the anchor for multiple specific concrete actions with comprehensive coverage; it is not score 4 because there are no meaningful gaps in the action coverage.

5 / 5

Completeness

It explicitly answers both questions: the 'what' is stated up front (find/use/create/install/share/update/migrate skills stored in OpenViking) and an explicit 'Use it when...' clause lists multiple concrete trigger situations, including quoting exact phrases. This matches the anchor for clearly and explicitly answering both what AND when with concrete trigger phrases; score 4 would require the 'when' to be less explicit, which it is not.

5 / 5

Trigger Term Quality

It quotes literal user phrases users would naturally say — 'upload my skills', 'save this as a skill', plus multilingual variants ('迁移本地 skill', '把 skill 存到 OpenViking', '新建一个 skill') and concrete local paths (~/.claude/skills, ~/.agents/skills, ~/.cursor/skills). This is comprehensive natural-term coverage including synonyms, matching the top anchor rather than the 'a few natural terms missing' anchor at 4.

5 / 5

Distinctiveness Conflict Risk

The niche is clear — managing skills stored in OpenViking — and the viking:// trigger terms are distinct. However the trigger 'when a task looks like one a stored skill would cover' is broad and overlaps with the harness's own skill loading and closely related skills (e.g., openviking-memory), which is minor overlap risk with closely related skills (anchor 4) rather than minimal conflict risk (anchor 5).

4 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
volcengine/OpenViking
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.