CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

plant-store-custom-commands

How to author custom commands for the plant-store CLI using the co-generated SDK.

Quality

76%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

—

The risk profile of this skill

Fix and improve this skill with Tessl

tessl review fix ./seed/cli/oauth-client-credentials-openapi/with-wire-tests/.agents/skills/custom-commands/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

82%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 a strong, self-contained guide: one complete executable example, precise commands, and thoughtful regeneration-safety and auth sections with no filler. The only meaningful gaps are slight duplication between the worked example and the "Key Patterns" section and the lack of an explicit failure-recovery step after build or regeneration.

Suggestions

Trim the "Key Patterns" section to only patterns not already shown in the full register() example — the duplicated client() and block_on snippets and the bare `use plant_store_sdk::api::*;` line can be cut.

Add a short error-recovery note for the common failure case: if `cargo build` breaks after `fern generate` (renamed methods or new sub-clients), point users back to the sub-client table and the regeneration-safety section as the fix loop.

DimensionReasoningScore

Conciseness

The body is efficient — it never explains concepts Claude already knows and leads with an architecture map plus one complete worked example. It falls short of anchor 5 only through minor redundancy: the "Key Patterns" section re-shows `super::sdk::client(ctx)` and `block_on(...)` already demonstrated in the full register() example, and "Build & Test" repeats `cargo build` from step 1.

4 / 5

Actionability

The guidance is fully executable: a copy-paste-ready register() handler with real clap wiring, exact commands (`cargo build`, `plant-store get <plantId>`, `RUST_LOG=debug plant-store <your-command>`), a table of concrete sub-client types, and named env vars (PLANT_STORE_CLIENT_ID/SECRET). This matches anchor 5 (copy-paste ready, common cases covered).

5 / 5

Workflow Clarity

The sequence is clear and checkpointed: edit custom.rs (noting .fernignore protection), register the command, `cargo build`, then run the command to test — with `RUST_LOG=debug` for diagnosis and a regeneration-safety section covering post-`fern generate` drift. It sits below anchor 5 only because there is no explicit error-recovery loop (e.g., what to do when the build fails after the SDK surface changes) beyond the debug tip.

4 / 5

Progressive Disclosure

No bundle files (references/, scripts/, assets/) exist, and the single-file body is well organized with clear sections — architecture, worked example, sub-clients, auth, regeneration safety, build/test — all of it appropriate to inline at this size. Anchor 5's simple-skill exception (under 50 lines) does not apply to the ~120-line body, and the sub-client table and auth details could eventually move to reference files as the SDK grows, so anchor 4 fits best.

4 / 5

Total

17

/

20

Passed

Description

57%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 specific and highly distinctive within its niche, with a clear statement of what the skill does. Its main weaknesses are the complete absence of a "when to use" trigger clause and thin keyword coverage, which limit discoverability when a user's phrasing doesn't match exactly.

Suggestions

Add an explicit trigger clause, e.g., "Use when adding or modifying commands in the plant-store CLI, editing custom.rs, or after fern generate changes the SDK surface."

Enumerate the concrete capabilities in the description (registering handlers in custom.rs, calling typed SDK methods via block_on, inheriting CLI auth) to lift specificity beyond a single action.

Include natural user phrasings as trigger terms such as "add a command to plant-store", "custom.rs", and "fern generate".

DimensionReasoningScore

Specificity

The description names the domain ("custom commands for the plant-store CLI") and one concrete action ("author custom commands ... using the co-generated SDK"), matching the anchor for domain plus 1-2 concrete actions. It stops short of anchor 4 because it does not list several specific actions such as registering handlers in custom.rs, bridging async SDK calls, or inheriting CLI auth.

3 / 5

Completeness

It clearly answers "what" ("How to author custom commands for the plant-store CLI using the co-generated SDK") but contains no "Use when..." clause or equivalent trigger guidance, capping completeness at 3 per the guidelines. Not anchor 2 because the "what" is specific rather than vague; not anchor 4 because the "when" is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Terms like "custom commands", "plant-store CLI", and "SDK" are natural phrases a user of this repo would say, but coverage stops there — no synonyms, variations, or related triggers (e.g., "add a command", "custom.rs", "fern generate"). This fits anchor 3 (some relevant keywords, missing common variations) better than anchor 4's fuller coverage.

3 / 5

Distinctiveness Conflict Risk

"plant-store" and "custom commands ... co-generated SDK" define a clear, highly specific niche tied to a single codebase, so it would not trigger for unrelated skills. This matches anchor 5 (clear niche with distinct triggers; minimal conflict risk).

5 / 5

Total

14

/

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

fern-api/fern

Path

seed/cli/oauth-client-credentials-openapi/with-wire-tests/.agents/skills/custom-commands/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.