CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

backend-investigation

Diagnoses backend problems behind Firefox Home New Tab (HNT), across Merino, the curated corpus, admin-api, the article crawler, Picture of the Day and the daily crossword. Use when a Sentry alert fires on one of those services, an editor reports something broken, or a New Tab feature looks empty, wrong, or stale. Backend only, not in-tree browser/extensions/newtab frontend work.

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

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

An excellent instruction-only skill: a clearly sequenced investigation workflow saturated with concrete commands, templates, and explicit validation checkpoints, and a clean separation of the volatile per-source detail into a single well-signaled reference file. The only trimmable fat is redundancy in the ask-once discipline and the workspace-establishment procedure, which keeps conciseness a notch below the top anchor.

Suggestions

Consolidate the ask-once rules: the "raise it once" / "restate it exactly once more" / "second and last ask" discipline is spread across three passages in "Don't stall on the developer" — stating the full rule once (initial ask, one restate, then Status: blocked) would cut several lines without losing any instruction.

Tighten the Workspace root-establishment procedure (the three-item ordered list plus follow-on naming paragraph) into a single compact rule; the decision it encodes (check loaded instructions, ask once, then remember it) can be carried in half the tokens.

DimensionReasoningScore

Conciseness

The body is dense and virtually free of padding — it teaches only non-derivable material (developer preferences, the UTC/timezone trap, "Liveness is not health", workspace conventions) and never explains concepts Claude already knows. It falls short of the lean anchor 5 on length alone: ~360 lines with some redundancy around the ask-once discipline, which is stated in "Don't stall on the developer", restated ("Restate it exactly once more"), and re-referenced from data-sources.md, and the Workspace section's root-establishment procedure runs longer than the decision it encodes.

4 / 5

Actionability

Guidance is executable throughout: exact access-check commands (`gcloud auth list`, `bq query --dry_run`, `aws sts get-caller-identity`), a concrete directory-naming example (`jul29-empty-de-sections`), a copy-paste HYPOTHESES.md table schema, a complete FINDINGS.md skeleton down to per-line field definitions, and a worked example of a well-formed access ask. As an instruction-only skill the absence of code is not penalized per the scoring notes, and the concrete-command density meets the anchor-5 bar.

5 / 5

Workflow Clarity

Eight explicitly numbered steps form a coherent pipeline (pin the report → derive normal → hypotheses → stratify → adversarial self-check → write up → close the loop → improve the skill), each with built-in validation checkpoints: confirm the symptom yourself before explaining it, access checks in the first minutes, kill-conditions written before probing, and a dedicated Step 5 for breaking your own conclusion. Feedback loops are explicit for the failure modes that matter here (non-reproduction rerouted to "why did the reporter see it", contradictions re-checked then kept on the record, refuted hypotheses retained), and the risky outward-facing action (Slack posting) has its own approval gate.

5 / 5

Progressive Disclosure

The split is textbook: SKILL.md carries the workflow and judgment rules while all per-system access facts, commands, and traps live in the single one-level-deep reference `references/data-sources.md`, which exists, is clearly signaled at the exact decision points ("Access and traps, per system" up top, "Before your first probe, read references/data-sources.md" in Step 1), and carries its own Contents section for navigation. No nesting beyond one level and no orphaned references.

5 / 5

Total

19

/

20

Passed

Description

95%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 model description: concrete domain enumeration, an explicit Use-when clause with natural trigger phrases and symptom synonyms, and explicit scope exclusions that prevent mis-triggering against the closely related frontend skill. The only soft spot is that the capability side is carried by a single action verb, which keeps specificity just short of the top anchor.

DimensionReasoningScore

Specificity

The description names the domain precisely ("Diagnoses backend problems behind Firefox Home New Tab (HNT), across Merino, the curated corpus, admin-api, the article crawler, Picture of the Day and the daily crossword") with a concrete enumeration of every in-scope system plus an explicit exclusion ("not in-tree browser/extensions/newtab frontend work"). It sits above the anchor-3 midpoint because the scope enumeration is comprehensive, but below anchor 5 because the action side rests on a single verb ("Diagnoses") rather than multiple distinct concrete actions.

4 / 5

Completeness

Both halves are explicit: the "what" is the opening clause diagnosing backend problems across named services, and the "when" is a literal "Use when" clause with three concrete trigger scenarios. This matches the anchor-5 example structure exactly, and the scope boundary sentence adds a third explicit dimension (when not to use it).

5 / 5

Trigger Term Quality

"Use when a Sentry alert fires on one of those services, an editor reports something broken, or a New Tab feature looks empty, wrong, or stale" covers the natural phrases a developer would actually say, including symptom synonyms (empty, wrong, stale) and both alert-driven and report-driven entry points. Coverage within this niche is comprehensive; file extensions do not apply to a service-diagnosis skill.

5 / 5

Distinctiveness Conflict Risk

"Backend only, not in-tree browser/extensions/newtab frontend work" and "not for Merino's non-New-Tab consumers such as Firefox Suggest" draw the niche boundary explicitly, including against the most likely confusable neighbor (frontend newtab work). Triggers (Sentry alerts on these named services, New Tab feature symptoms) are distinct to this skill with minimal overlap risk.

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

mozilla/firefox-aidev-plugins

Path

plugins/newtab/skills/backend-investigation/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.