CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

observability-control

Manage observability stack lifecycle (start, stop, backup, restore, upgrade). Use when controlling the LGTM stack for Claude Code monitoring.

Quality

77%

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 ./.claude/skills/observability-control/SKILL.md

The canonical home for this skill is observability-control in fernandezbaptiste/Skrillz

SKILL.md
Quality
Evals
Security

Quality

Content

57%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 content is command-dense and well-organized, providing concrete executable operations for every lifecycle action. Its main defects are broken script references (filenames in the Scripts section don't match the actual bundle), a placeholder compose path in `restart`, and missing validation around destructive operations (volume deletion in `fix-permissions`, unverified `restore`), plus duplicated content between sections.

Suggestions

Fix the Scripts section to reference the actual bundle files (start.sh, stop.sh, status.sh, restart.sh, backup.sh) instead of nonexistent names like start-stack.sh and health-check.sh, or better, replace the inlined Operations commands with calls to those scripts.

Add validation checkpoints to destructive and batch operations: verify backup contents (e.g., check the exported dashboards.json is valid JSON with entries) before `restore`, and confirm Tempo is healthy after `fix-permissions` volume recreation.

Replace the placeholder in `restart all` ("docker compose -f /path/docker-compose.yml restart") with the actual compose path used in `start`/`stop`, and de-duplicate the Tempo permission fix by keeping it in only one section (Troubleshooting or `fix-permissions`).

DimensionReasoningScore

Conciseness

The body is mostly lean tables and commands with no conceptual padding, but it could be tightened: the Tempo permission fix ("docker volume rm observability_tempo-data ... chown -R 10001:10001 /tempo") appears verbatim in both the `fix-permissions` operation and the Troubleshooting section, and the Quick Commands section duplicates the `status` ("docker ps | grep -E ...") and `logs` operations. This fits 'mostly efficient but ... could be tightened' rather than 2, since there is no over-explanation of concepts Claude already knows.

3 / 5

Actionability

Nearly all guidance is copy-paste executable (docker compose, curl, docker logs commands with concrete ports and paths). It misses 5 because "docker compose -f /path/docker-compose.yml restart" uses a placeholder path instead of the concrete one used in `start`/`stop`, and the Scripts section references files ("scripts/start-stack.sh", "scripts/health-check.sh", "scripts/backup-dashboards.sh", "scripts/restore-dashboards.sh") that do not exist in the bundle — the actual files are start.sh, stop.sh, status.sh, restart.sh, and backup.sh.

4 / 5

Workflow Clarity

Each operation is individually unambiguous with a clear command, but workflows involving destructive or batch operations lack validation checkpoints: `fix-permissions` deletes a volume ("docker volume rm observability_tempo-data") without a pre-check for existing data, and `backup`/`restore` have no verification of backup contents before the restore POST. Per the rubric guidelines, missing validation in destructive/batch operations caps this at 3 despite the clear per-command structure.

3 / 5

Progressive Disclosure

The body is well-sectioned (Stack Locations, Components, Operations, Quick Commands, Troubleshooting, Access Points, Scripts) with an intended one-level-deep reference to scripts, matching 'some structure but could be better organized'. However, scored against the actual bundle, all five referenced script paths are broken (listed names like "start-stack.sh" vs. actual "start.sh"), so navigation to the bundle files fails and operations that exist as scripts are fully inlined in the body instead.

3 / 5

Total

13

/

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.

A strong description: third-person, concise, enumerates concrete lifecycle actions, and pairs them with an explicit 'Use when' trigger clause anchored to a specific niche (LGTM stack for Claude Code monitoring). The only weakness is that the action verbs lack objects and a few natural synonyms (service names) are absent.

DimensionReasoningScore

Specificity

The description lists several concrete actions — "(start, stop, backup, restore, upgrade)" — within a named domain ("observability stack lifecycle"), matching the 'lists several specific actions; minor gaps in coverage' anchor. It falls short of 5 because the actions are bare verbs without objects (e.g., no mention of Grafana dashboards or stack configuration), and is above 3 because it enumerates five actions rather than 1-2.

4 / 5

Completeness

It explicitly answers both questions: what — "Manage observability stack lifecycle (start, stop, backup, restore, upgrade)" — and when — "Use when controlling the LGTM stack for Claude Code monitoring", with concrete trigger phrases. This matches the top anchor's structure (enumerated actions + explicit 'Use when' clause) exactly.

5 / 5

Trigger Term Quality

Natural phrases a user would say are present: "observability stack", "LGTM stack", "Claude Code monitoring". Not 5 because service-level synonyms users might naturally mention (Grafana, Loki, Prometheus, Tempo, telemetry) are missing; clearly above 3's 'some relevant keywords but missing common variations'.

4 / 5

Distinctiveness Conflict Risk

"LGTM stack" and "Claude Code monitoring" carve out a clear niche that no generic skill would claim, giving minimal conflict risk. This matches the 'clear niche with distinct triggers' anchor; it is not a 4 because the trigger vocabulary is specific enough that overlap with adjacent skills is negligible.

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

referenced_paths_exist

Referenced path issues: 5 missing

Warning

Total

15

/

16

Passed

Repository

fernandezbaptiste/Skrillz

Path

.claude/skills/observability-control/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.