CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

probe

Something feels off and the user cannot name what is stuck: the user can then say what it is — a shown candidate, their own words, or none shown — having seen what each rests on and what rules it out.

Quality

59%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./epistemic-cooperative/skills/probe/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

41%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 contract specifies its control flow with unusual rigor — the sequence, validation preconditions, and closing rules are complete and mutually consistent — but at a cost no skill should pay: ~450 lines of baroque prose and Lean in one file, with the same rules restated several times and no worked example of an actual round. A model could state the invariants but has no template for what to say.

Suggestions

Move the Lean contract to a bundle reference file (e.g. references/contract.md) and keep a concise operational SKILL.md; the FLOW, MORPHISM, PHASE TRANSITIONS, and LOOP sections restate the same control flow — keep one authoritative statement of it.

Add one worked example of a round: a few sample session turns, the candidate lines as actually shown (situation text, cited grounds, rules-out condition, skill and its declared end), and a sample recognizing turn with the resulting hand-off — giving the model a concrete output template instead of only abstract axioms.

Replace some "**Your judgment**" axioms with brief concrete reading heuristics (one-line examples of symptom-in-place-of-stuck utterances, hesitation between skills, or a declined run) so behavior can be extracted without inferring it from the formal spec.

DimensionReasoningScore

Conciseness

The body runs ~450 lines / ~29KB for a single conversational pattern, restating the same control flow at least five times (the FLOW, MORPHISM, PHASE TRANSITIONS, LOOP, and CONVERGENCE sections plus the Lean code), and it assumes no intelligence on the model's part, specifying every micro-judgment as a named axiom. This matches anchor 1 (severely verbose, heavily padded) rather than 2's 'several unnecessary sections', since nearly the whole document is padding relative to the ~40 lines of actionable content.

1 / 5

Actionability

Concrete guidance exists — the `respond` layout ("each line its candidate's description of the situation, then what it rests on... then the condition that would rule it out, then the skill that takes it") and the per-operation `grounding` table — but it is incomplete: no worked example of a round, no sample phrasing of a candidate line, and core behavior is locked in opaque "**Your judgment**" axioms. Anchor 3 (some concrete guidance, missing key details) fits better than 4, whose guidance is mostly executable.

3 / 5

Workflow Clarity

The sequence is explicit and fully branched (activation check → catalog read once → pass → present round → read turn → close or next pass, in both the FLOW comment and `probe`), with validation checkpoints ("a shown candidate only where that round offered it", the `Owed` precondition before any close) and feedback rules ("a candidate the person said is not theirs is drawn again only on new ground"). It is not 5 because there is no consolidated checklist or error-recovery loop a reader can follow without reconstructing it from dense prose.

4 / 5

Progressive Disclosure

No bundle files exist; the entire ~400-line Lean contract — reference material that clearly belongs in a separate file — is inlined in SKILL.md, so every invocation loads all of it. The body does carry real structure (## Definition, ## Mode Activation, the distinction table, ## Rules, and labeled contract sections), which lifts it above anchor 2's 'minimal structure' to anchor 3's 'content that should be separate is inline'.

3 / 5

Total

11

/

20

Passed

Description

58%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 establishes a genuinely distinctive trigger situation and an explicit when-clause, but the 'what' is phrased as the user's resulting ability in dense, abstract language rather than as the skill's concrete actions. It never reveals that candidates are grounded in installed skills, leaving the mechanism opaque and the overlap with recommendation-style skills unresolved.

Suggestions

Lead with the skill's own actions in plain third-person verbs, e.g. "Reads the current session and the installed skills' descriptions, and presents two or more grounded candidates for what is stuck — each with the turns it rests on, what would rule it out, and the skill that takes it."

Add explicit 'Use when...' trigger guidance with natural user phrasings users actually say, such as "Use when the user says something feels off, they can't put their finger on what's wrong, or they hesitate between which skill fits."

State that candidates correspond to installed skills and their declared ends, so the niche is clearly distinguishable from general triage or pattern-based recommendation skills like /onboard.

DimensionReasoningScore

Specificity

The description names its domain ("Something feels off and the user cannot name what is stuck") and gives 1-2 concrete output elements ("a shown candidate, their own words, or none shown", "what each rests on and what rules it out"), but never states the skill's own actions. It sits at anchor 3 (domain plus a couple of concrete elements, not comprehensive) rather than 4, which expects several specific actions, and above 2, whose actions are purely generic.

3 / 5

Completeness

Both halves are present: the 'when' is explicit ("Something feels off and the user cannot name what is stuck") and the 'what' is stated as the outcome ("the user can then say what it is... having seen what each rests on and what rules it out"), so the missing-'Use when' cap does not apply. It is not 5 because the 'what' describes the user's resulting ability rather than the skill's operation, and not 3 because the trigger guidance is explicit rather than weakly implied.

4 / 5

Trigger Term Quality

"Something feels off" and "cannot name what is stuck" are phrases a user might naturally say, but common variations and synonyms ("can't put my finger on it", "I don't know what's wrong", "which one fits?") are absent. This matches anchor 3 (some relevant keywords, missing common variations) rather than 4's 'a few natural terms missing'.

3 / 5

Distinctiveness Conflict Risk

The unnameable-something-off trigger is somewhat distinctive, but "a shown candidate, their own words, or none shown" implies a selection process overlapping with recommendation/triage skills (the body itself must distinguish /onboard), and the description never says candidates correspond to installed skills. Anchor 3 ('somewhat specific but could still overlap with similar skills') fits better than 4's 'minor overlap risk with closely related skills'.

3 / 5

Total

13

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository

jongwony/epistemic-protocols

Path

epistemic-cooperative/skills/probe/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.