CtrlK
BlogDocsLog inGet started
Tessl Logo

pragmatic-fp

Apply 80/20 fp-ts in TypeScript and skip FP when it hurts readability. Use when choosing pipe, Option, or Either, or deciding whether FP helps the code. It does not apply named community styles (that's `code-style-patterns`).

66

Quality

79%

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 ./plugins/tooling/skills/pragmatic-fp/SKILL.md
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 a well-structured, action-oriented routing skill with strong progressive disclosure and clear phase-gate checkpoints. Its main weakness is conciseness: motivational padding and repeated restatements of the readability philosophy could be trimmed.

Suggestions

Cut the 'No category theory. No abstract nonsense. Just patterns that make your code better in practice.' editorializing in the intro — it explains a stance Claude can infer from the Golden Rule.

State the readability/golden-rule principle once (in the Golden Rule section) and reference it from the Modes table and checklist instead of restating it three times.

Tighten the Modes table 'What you get' cells, which currently re-explain the FLJS framing that the Golden Rule section already covers.

DimensionReasoningScore

Conciseness

Mostly efficient, but the 'Read this first' intro ('No category theory. No abstract nonsense. Just patterns...') is marketing fluff and the readability/golden-rule message is restated across the intro, Modes table, Golden Rule, phase gates, and checklist.

3 / 5

Actionability

Gives concrete, executable routing guidance — name a mode, load a specific reference file, run the phase gates — with a precise quality checklist; minor gaps only (no inline code, but that is deferred to references by design).

4 / 5

Workflow Clarity

Phase gates ('Core patterns -> Apply', 'Apply a pattern -> Restrain', 'Any change -> Readability') sequence the workflow with explicit checkpoints and a closing 'Did this help?' feedback loop, though error-recovery detail is light.

4 / 5

Progressive Disclosure

The body is a clean overview that routes to six one-level-deep reference files via a Modes table with an explicit Load column, and all referenced files exist in ./references/, making navigation easy.

5 / 5

Total

16

/

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 is strong: it states a concrete capability, gives explicit 'Use when' triggers, and proactively distinguishes itself from a related skill. It is written in the correct third-person/imperative voice with no first/second-person slips.

DimensionReasoningScore

Specificity

Names the domain (fp-ts, TypeScript) and several concrete constructs ('pipe, Option, or Either') plus the action of skipping FP, but omits map/flatMap and other pattern names, leaving minor coverage gaps.

4 / 5

Completeness

Explicitly answers both what ('Apply 80/20 fp-ts in TypeScript and skip FP when it hurts readability') and when ('Use when choosing pipe, Option, or Either, or deciding whether FP helps the code') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Includes natural terms a TS developer would say ('pipe', 'Option', 'Either', 'fp-ts', 'TypeScript') with good coverage, but lacks common synonyms like 'functional programming' or 'monad'.

4 / 5

Distinctiveness Conflict Risk

Carves a clear niche (80/20 fp-ts) and explicitly disambiguates from a sibling skill ('It does not apply named community styles (that's `code-style-patterns`)'), minimizing conflict risk.

5 / 5

Total

18

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
saif-shines/devex-kit
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.