CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

database-operation

Use this skill when you need to inspect, query, maintain, or carefully modify the MoviePilot database. This skill uses the bundled scripts/mp-db.py helper, which reads MoviePilot local settings itself and never requires database passwords or full PostgreSQL DSNs in the agent prompt. Applicable scenarios include data statistics, counts, aggregations, inspecting or fixing records, cleanup requests, and questions like "how many downloads", "show site stats", "delete old records", or "why is this subscription stuck".

65

Quality

82%

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

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

The body is exceptionally actionable and safely structured for destructive database operations, with concrete commands, ready SQL examples, and meaningful validation checkpoints. Its main weakness is the inlined ~230-line table catalog that inflates token cost and would be better split into a reference file, especially since the live `schema` output is already declared authoritative.

Suggestions

Move the Core Tables catalog to a references/ file (e.g., references/tables.md) and keep a brief purpose/write-boundary summary in SKILL.md — the live `schema` result is already authoritative, so full column listings need not occupy the main context window.

Add a general post-write verification step to the Workflow (e.g., re-query the affected rows after `write` to confirm the intended change), extending the repair-case verify pattern to all writes.

Trim per-table entries to purpose and write boundary, dropping full column listings for non-critical tables and letting `schema <table>` supply columns on demand.

DimensionReasoningScore

Conciseness

The operational sections (Commands, Workflow, Safety Rules, Common Queries) are lean and efficient, but the ~230-line Core Tables catalog inlines full column lists for every table even though the file itself says "Always treat the live `schema <table>` result as authoritative", so the bulk of the body duplicates retrievable runtime output.

3 / 5

Actionability

Fully executable, copy-paste-ready guidance throughout: concrete subcommands (`python scripts/mp-db.py tables`, `schema downloadhistory`, `write "UPDATE subscribe SET state = 'S' WHERE id = 123"`), eight ready-to-run SQL examples, a dialect-comparison table, and troubleshooting steps.

5 / 5

Workflow Clarity

A clear five-step workflow with inspect-before-write sequencing ("run `tables` first, then `schema <table>`") and real checkpoints (confirm destructive writes, suggest backups, enforce `WHERE`, report affected row count, "verify the managed API can read the repaired value" for repairs); the minor gap is that post-write re-verification is only specified for the systemconfig repair case, not the general write flow.

4 / 5

Progressive Disclosure

The bundle is a single correctly-referenced script (`scripts/mp-db.py`) with no references/ directory, and sections are clearly headed, but the huge inlined table catalog matches the anchor-3 pattern of "200 lines of API reference that could be in a separate file" — it belongs in a one-level-deep reference file rather than the main SKILL.md.

3 / 5

Total

15

/

20

Passed

Description

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

The description clearly and concretely states both capability and trigger conditions with natural user phrasings and a well-scoped niche. Its only weaknesses are a mild second-person voice slip in the trigger clause and a few missing common trigger synonyms.

DimensionReasoningScore

Specificity

Lists several concrete actions ("inspect, query, maintain, or carefully modify the MoviePilot database", "data statistics, counts, aggregations, inspecting or fixing records, cleanup requests") with comprehensive scenario coverage, but the explicit second-person phrasing "Use this skill when you need to" incurs the rubric's voice penalty, reducing this from 5 to 4.

4 / 5

Completeness

Explicitly answers both what ("inspect, query, maintain, or carefully modify the MoviePilot database" via "the bundled scripts/mp-db.py helper") and when ("Use this skill when you need to..." followed by concrete example trigger phrases), matching the 5 anchor's pattern.

5 / 5

Trigger Term Quality

Good natural-phrase coverage ("how many downloads", "show site stats", "delete old records", "why is this subscription stuck", "cleanup requests") that mirrors what a user would actually say, but common variations like "SQL", "run a query", or "database is broken" are missing.

4 / 5

Distinctiveness Conflict Risk

"MoviePilot database" is a clear niche scoped by a bundled helper with a distinctive mechanism ("reads MoviePilot local settings itself and never requires database passwords or full PostgreSQL DSNs"), giving it minimal overlap with other skills.

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

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository

jxxghp/MoviePilot

Path

skills/database-operation/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.