CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

commercial-forecaster

Use when building a quarterly bookings forecast, ARR projection, pipeline forecast, NRR projection, or commit/best-case/pipe-only board number — especially when the CRO needs to walk the board through funnel math + cohort ARR + per-stage conversion assumptions without the theatre of a single undefended number. Decomposes pipeline into commit, best-case, and pipe-only tiers; projects cohort-level NRR/GRR to surface leaky cohorts before they show up in the consolidated number; scores per-stage funnel confidence so soft-floor stages get treated differently from high-confidence ones. Every output explicitly names the conversion rate used, the data window, and the weighting choice. For Head of Commercial, RevOps, VP Sales, and CRO at quarterly forecast or board prep. NOT financial close (see finance/financial-analysis). NOT strategic CRO hiring/territory (see c-level-advisor/cro-advisor). NOT pricing (see sibling pricing-strategist).

62

Quality

78%

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 ./.gemini/skills/commercial-forecaster/SKILL.md

The canonical home for this skill is commercial-forecaster in alirezarezvani/claude-skills

SKILL.md
Quality
Evals
Security

Quality

Content

56%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 delivers genuinely non-obvious domain discipline (70/30 window blending, CoV-based stage confidence, leaky-cohort decomposition) in a clear five-step workflow, but it is held back by redundancy (repeated assumption-block rule, duplicated boundary sections), an inlined question library, and a broken dependency chain — every workflow step invokes scripts, references, or templates that are not present in the bundle.

Suggestions

Trim the assumption-block/"theatre" rule to a single statement in Assumptions and cross-reference it elsewhere, and merge "Do not use for" with "Distinct from" to remove the duplicated sibling-skill list.

Move the forcing-question library into a reference file (e.g., references/forcing_questions.md) and keep a one-line pointer plus the walk order in the body.

Ship the bundle files the workflow depends on (scripts/, assets/forecast_intake_template.md, references/) or specify the intake.json schema inline so each step is executable as bundled.

DimensionReasoningScore

Conciseness

Most content is dense domain judgment Claude does not already know ("Last 4Q is weighted 70%, last 12Q is weighted 30%", CoV bands, 3x pipeline-coverage floor), but the "theatre"/assumption-block rule is repeated in Purpose, Step 2, Step 5, Assumptions, and question 7, and the "Do not use for" list fully duplicates "Distinct from" (the same five sibling skills restated). This is tighter than the padded-anchor 2 (no basic-concept explanations) but has more than the minor trimmable instances of the 4 anchor.

3 / 5

Actionability

Guidance is concrete — exact CLI invocations ("scripts/bookings_forecaster.py --input intake.json --profile saas --output markdown") and precise numeric decision rules ("HIGH < 10%, MEDIUM 10-25%", "stage-age > 2x the median stage-duration") — but none of the referenced scripts, references, or the intake template exist in the bundle, and the intake.json schema is never specified. The pipeline cannot actually be executed as bundled, which is a missing-key-details gap rather than the minor gaps of the 4 anchor.

3 / 5

Workflow Clarity

Five steps are clearly sequenced with named per-step outputs and decision rules (leaky-cohort flags, automatic downweighting of stalled opps, pipeline-coverage ratio surfaced by the tool). It misses the 5 anchor because there is no intake-data validation or error-recovery loop, and the forcing-question library introduces a second, partially redundant entry path ("After all 7 are answered, invoke bookings_forecaster.py..."); the destructive/batch cap at 3 does not apply since this is read-only analysis.

4 / 5

Progressive Disclosure

Structure and signaling are good — "## Scripts" and "## References" sections list each file with a one-line description, one level deep — but none of the referenced files (three scripts, three references, one intake template) exist in the bundle, and the ~30-line forcing-question library is inlined content that belongs in a reference file. This sits between the 2 anchor (buried references/inlined separable content) and the 4 anchor (references mostly present and real).

3 / 5

Total

13

/

20

Passed

Description

92%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: it explicitly answers both what (three concrete analysis actions) and when (named forecast artifacts and roles), and actively disambiguates against sibling skills with NOT clauses. Its main weakness is verbosity for a trigger description — trimming the editorial framing and adding natural synonyms like "sales forecast" would sharpen it.

DimensionReasoningScore

Specificity

The description lists multiple specific concrete actions with comprehensive coverage: "Decomposes pipeline into commit, best-case, and pipe-only tiers", "projects cohort-level NRR/GRR to surface leaky cohorts", "scores per-stage funnel confidence", and "Every output explicitly names the conversion rate used, the data window, and the weighting choice". These cover all three of the skill's outputs plus its disclosure discipline, matching the anchor for comprehensive concrete actions rather than the minor-gaps anchor below.

5 / 5

Completeness

Both what and when are explicitly and concretely answered: "Use when building a quarterly bookings forecast, ARR projection, pipeline forecast, NRR projection, or commit/best-case/pipe-only board number" is an explicit trigger clause, and the three decomposition/projection/scoring sentences state what the skill does. This matches the 5 anchor (both what AND when with concrete trigger phrases), not the 4 anchor where the when clause is merely present-but-improvable.

5 / 5

Trigger Term Quality

Natural trigger terms are well covered: "quarterly bookings forecast", "ARR projection", "pipeline forecast", "NRR projection", "commit/best-case/pipe-only", "board prep", plus role names ("CRO", "RevOps", "VP Sales"). It falls short of the 5 anchor because common natural synonyms like "sales forecast" or "revenue forecast" are absent and editorial padding ("without the theatre of a single undefended number") dilutes trigger density, but it is clearly above the 3 anchor's "some relevant keywords with missing variations".

4 / 5

Distinctiveness Conflict Risk

The description carves a clear forward-looking forecast niche and adds explicit negative boundaries naming the adjacent skills: "NOT financial close (see finance/financial-analysis). NOT strategic CRO hiring/territory (see c-level-advisor/cro-advisor). NOT pricing (see sibling pricing-strategist)". Distinct triggers plus explicit disambiguation yield minimal conflict risk, matching the 5 anchor.

5 / 5

Total

19

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 10 missing

Warning

Total

14

/

16

Passed

Repository

alirezarezvani/claude-skills

Path

.gemini/skills/commercial-forecaster/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.