CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/faker-data

Authors test-data factories using Faker: the Python `faker` library, the `@faker-js/faker` JS port, and the `faker-ruby` gem. Owns the library mechanics end to end: install per language, the provider catalogue (person / internet / location / date / finance / lorem), locale selection and multi-locale mode, and seed-based determinism for reproducible runs. Scope is generating fresh values for tests that start from nothing, not replacing values inside an existing dataset that already holds real records, which raises referential-integrity and re-identification concerns this skill does not address. Prefer this skill when the codebase already uses the Faker family or when cross-language consistency across Python, JS, and Ruby matters; use mimesis-data only when deeper Python locale coverage is the primary requirement. Use when authoring fixtures or factories that need realistic-looking field values.

75

Quality

94%

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

Overview
Quality
Evals
Security
Files

Quality

Content

85%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The content is highly actionable with executable per-language code and clear decision guidance organized into clean sections. Its only real weakness is conciseness: identical provider examples are triplicated across languages and per-section reference parentheticals are repeated.

Suggestions

Collapse the per-language Authoring examples so the identical provider calls (name/email/address/phone/date/lorem) are shown once in a shared table rather than repeated verbatim in the Python, JS, and Ruby blocks.

Drop the repeated '(Per [faker-py][py].)' / '(Per [faker-js][js].)' parentheticals after every code block — the single References section already attributes the sources.

Tighten the Overview so the multi-language table leads directly into 'When to use' without re-explaining what synthetic field values are.

DimensionReasoningScore

Conciseness

The body is largely lean and assumes competence (one-line Overview, tight install commands, tables), but it repeats the same provider examples across the Python, JS, and Ruby Authoring sections and repeats the '(Per [faker-py][py].)' parenthetical many times, adding tokens beyond what earns a 3. It is not a 1 because it never lectures on concepts Claude already knows.

2 / 3

Actionability

Every section gives copy-paste-ready, executable commands and code — `pip install Faker`, `Faker.seed(4321)`, `Faker::Config.random = Random.new(42)`, plus concrete anti-pattern fixes. It is not a 2 because the guidance is complete and runnable, not pseudocode or abstract direction.

3 / 3

Workflow Clarity

Sections like 'Seeding for deterministic output' sequence the guidance (class-level vs instance-level seed, framework setup in beforeEach/setup) and the Anti-patterns/Limitations tables provide clear decision checkpoints; per the simple-skill scoring note, a well-organized reference skill can score 3 without a destructive multi-step workflow. It is not a 2 because the sequencing and decision guidance are explicit rather than implicit.

3 / 3

Progressive Disclosure

There are no bundle files (references/scripts/assets are absent) and no nested-reference chains; the body is organized into clearly signaled sections (Overview, When to use, Install, Authoring, Seeding, Locale, Composing, Anti-patterns, Limitations, References) with external library links at one level. It is not a 2 because the structure is well-signaled and flat rather than monolithic-with-poor-navigation.

3 / 3

Total

11

/

12

Passed

Description

100%

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 specific, trigger-rich, and complete, covering what the skill does and exactly when to prefer it over alternatives. It also self-scopes against sibling skills to avoid conflicts.

DimensionReasoningScore

Specificity

Lists multiple concrete actions such as 'install per language', the named provider catalogue 'person / internet / location / date / finance / lorem', 'locale selection and multi-locale mode', and 'seed-based determinism', matching the score-3 anchor of multiple specific concrete actions. It is not a 2 because the catalogue of actions is comprehensive rather than partial.

3 / 3

Completeness

It answers 'what' (library mechanics, provider catalogue, locale, seed determinism) and 'when' with explicit triggers ('Prefer this skill when...', 'Use when authoring fixtures or factories'), satisfying the score-3 anchor. It is not a 2 because the 'when' is explicit rather than merely implied.

3 / 3

Trigger Term Quality

Natural user-facing terms appear throughout — 'test-data factories', 'Faker', 'fixtures or factories', 'realistic-looking field values' — alongside a 'Use when authoring fixtures or factories' trigger. It is not a 2 because the coverage spans the common phrasings a user would actually say, not just a single keyword.

3 / 3

Distinctiveness Conflict Risk

It carves a clear niche by scoping out replacing values in existing datasets and by disambiguating against sibling skills ('use mimesis-data only when...', 'see bogus-data'), matching the score-3 anchor. It is not a 2 because the explicit boundary and sibling routing make wrongful triggering unlikely.

3 / 3

Total

12

/

12

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.

Reviewed

Table of Contents