CtrlK
BlogDocsLog inGet started
Tessl Logo

procurement-optimizer

Use when running an annual SaaS audit, doing category-level spend review, or rationalizing the supplier base — when the user needs a spend audit, spend categorization (UNSPSC-aligned with Pareto breakdown and industry profiles), purchasing-cycle analysis (bottleneck categories per Goldratt's Theory of Constraints), or risk-balanced supplier consolidation that refuses single-source recommendations for tier-1 categories without a documented break-glass plan. Triggers on "spend audit", "SaaS audit", "spend categorization", "supplier rationalization", "supplier consolidation", "category strategy", "duplicate SaaS", "renewal cluster".

64

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/procurement-optimizer/SKILL.md

The canonical home for this skill is procurement-optimizer in alirezarezvani/claude-skills

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 well-structured and gives concrete, command-level guidance for a real multi-step procurement workflow, but it is held back by missing bundle files (all referenced scripts/assets/references are absent), absent explicit validation checkpoints for a batch operation, and some redundancy between the 'When NOT to use' and 'Distinct from' sections.

Suggestions

Ship the referenced bundle files (assets/spend_intake_template.md, the three scripts/*.py, and the three references/*.md) so the signaled progressive-disclosure navigation actually resolves.

Add an explicit validation/verification checkpoint to the workflow — e.g., after categorization, review Pareto outliers and confirm user-marked tier-1 criticality before running consolidation — so the batch operation has a validate->fix->retry loop.

Merge or trim the overlap between 'When NOT to use' and 'Distinct from' (both contrast vendor-management, financial-analysis, general-counsel, and proposal-writer) to recover token budget.

DimensionReasoningScore

Conciseness

The body is mostly efficient and assumes Claude's competence (it does not tutor on Pareto or UNSPSC), but it could be tightened: the 'Distinct from' section largely duplicates 'When NOT to use', and the 7-question forcing-question library with per-question canon citations is heavy inline content.

3 / 5

Actionability

Concrete, copy-paste-ready CLI invocations with full flag sets ('scripts/spend_categorizer.py --input spend.json --profile <profile> --output categorized.md') plus documented input schemas and a --sample quick example; docked one point because the referenced scripts are absent from the bundle and no inline runnable snippet is shown.

4 / 5

Workflow Clarity

The 5-step sequence (Intake -> Categorize/Pareto -> Cycle analysis -> Consolidation -> Synthesize) is clearly ordered with per-step commands, but this batch operation skill lacks explicit validate/verify feedback loops (e.g., confirm tier-1 flags or verify categorization before consolidation), capping it at 3 per the rubric's batch-operation rule.

3 / 5

Progressive Disclosure

Section structure is good and references are clearly signaled one level deep (Scripts table + References list), but every referenced bundle file (assets/spend_intake_template.md, three scripts/*.py, three references/*.md) is missing from the actual bundle, so the navigation does not resolve; the long forcing-question library is also inlined rather than split out.

3 / 5

Total

13

/

20

Passed

Description

100%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 is a strong, explicit trigger-and-capability statement: it names concrete actions, lists natural trigger keywords, answers both what and when, and carves out a distinct niche with built-in risk-gating behavior. Its only weakness is density — it is one long, packed sentence — but no dimension is harmed enough to drop below the top anchor.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'spend categorization (UNSPSC-aligned with Pareto breakdown and industry profiles)', 'purchasing-cycle analysis (bottleneck categories per Goldratt's Theory of Constraints)', and 'risk-balanced supplier consolidation that refuses single-source recommendations for tier-1 categories without a documented break-glass plan' — giving comprehensive coverage of the domain with no real gaps.

5 / 5

Completeness

Clearly answers both 'what' (categorization, cycle analysis, risk-balanced consolidation) and 'when' ('Use when running an annual SaaS audit, doing category-level spend review, or rationalizing the supplier base') with concrete trigger phrases.

5 / 5

Trigger Term Quality

An explicit 'Triggers on' clause enumerates natural terms a BizOps/Finance user would say — 'spend audit', 'SaaS audit', 'spend categorization', 'supplier rationalization', 'supplier consolidation', 'category strategy', 'duplicate SaaS', 'renewal cluster' — including synonyms (spend audit / SaaS audit; rationalization / consolidation).

5 / 5

Distinctiveness Conflict Risk

The niche is sharply defined — 'what to buy, from whom, on what cadence — not how the vendor you already chose is performing (that's vendor-management)' — with distinctive behavior (refusing single-source tier-1 without break-glass) that minimizes conflict with sibling skills.

5 / 5

Total

20

/

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.

Validation14 / 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: 12 missing

Warning

Total

14

/

16

Passed

Repository
alirezarezvani/claude-skills
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.