CtrlK
BlogDocsLog inGet started
Tessl Logo

blocking-io-guard

Ensure async-path backend code that could block the asyncio event loop is protected by a teeth-verified runtime anchor in tests/blocking_io/. Use when changing backend Python under app/, packages/harness/deerflow/, or scripts/, when running a blocking-IO triage round over the whole repo, or when a reviewer/CI asks for blocking-IO coverage. Runs a deterministic scan (changed-lines or full-repo), routes each candidate, drafts/extends an anchor, and proves it fails when the blocking IO regresses.

72

Quality

90%

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

SKILL.md
Quality
Evals
Security

Quality

Content

88%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.

A well-engineered SOP body: deterministic scoping commands, an explicit routing table, and a mandatory red→green verification gate with feedback loops at every stage. The reference hygiene is nearly exemplary; the remaining issues are a referenced template file missing from the bundle and minor duplication of the cross-file caveat.

Suggestions

Ship templates/anchor.template.py in the bundle (or point Step 3 at the real path) — the body currently directs the reader to create an anchor from a file that is not present.

State the same-file reachability caveat once: fold Step 0's "residual blind spot" paragraph into Step 1's Cross-file caveat bullet (or vice versa), where the NO-ACTION decision is actually made.

Tighten the Step 0 batching-policy paragraph to its three rules (one fix unit per PR while HIGHs remain; batch ~5 MEDIUM/LOW by module; rules ship alone) — the surrounding rationale repeats Step 5's rule-shipping policy.

DimensionReasoningScore

Conciseness

Efficient and competence-assuming — no explanations of what asyncio, PRs, or CI gates are — with operational density throughout ("Match by the stable key (path, function, symbol) — line numbers shift after edits, so never compare by line"). Not 5 because of minor duplication: the same-file reachability caveat is stated twice (Step 0's "One residual blind spot remains" and Step 1's "Cross-file caveat"), and the batching-policy paragraph could be trimmed without losing its rules.

4 / 5

Actionability

Fully executable, copy-paste-ready commands for every mode and checkpoint: "uv run --project backend python scripts/scan_changed_blocking_io.py --base origin/main", "make detect-blocking-io", "cd backend && make test-blocking-io", plus concrete routing rules, a stable match key, and a specific anchor source file. Not 4 because there are no gaps in the runnable guidance — even edge handling (finally-path cleanup bounded with asyncio.wait_for) is spelled out.

5 / 5

Workflow Clarity

Steps 0–6 are clearly sequenced with explicit validation checkpoints and error-recovery loops: Step 2 requires the finding to vanish and sends you back "before touching any test" if it doesn't, and Step 5 is a mandatory red→green teeth gate with a defined RULE escape route when a real block stays green. Matches the 5 anchor (explicit validation, feedback loops) exactly, including for the batch PR-sizing operations.

5 / 5

Progressive Disclosure

Good structure with clearly signaled, one-level-deep references — "Read references/good-anchor-rules.md before writing any anchor" and "Only read references/sop-skeleton.md when generalizing" is exemplary conditional loading — and both referenced files exist in the bundle. Not 5 because Step 3 directs creating an anchor "from templates/anchor.template.py", a path that does not exist in the provided bundle (references/ has only the two .md files), a navigation dead end.

4 / 5

Total

18

/

20

Passed

Description

92%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.

A strong description: it names the concrete workflow steps, gives an explicit 'Use when' clause with three realistic triggers, and occupies a distinct niche. The only room for improvement is broader synonym coverage (sync-call/offload phrasing) in the trigger terms.

DimensionReasoningScore

Specificity

The description enumerates the full workflow in concrete verbs — "Runs a deterministic scan (changed-lines or full-repo), routes each candidate, drafts/extends an anchor, and proves it fails when the blocking IO regresses" — which comprehensively covers every phase of the SOP (scope, judge, anchor, teeth). Not the 4 anchor because there is no coverage gap: what the skill does is stated end-to-end, not just as a list of several actions.

5 / 5

Completeness

Explicitly answers both questions: what ("Ensure async-path backend code ... is protected by a teeth-verified runtime anchor in tests/blocking_io/" plus the closing action sentence) and when (a literal "Use when" clause with three distinct concrete triggers: changing backend Python in named dirs, running a triage round, or a reviewer/CI request). Clearly the 5 anchor with concrete trigger phrases.

5 / 5

Trigger Term Quality

Good natural-term coverage for the domain: "block the asyncio event loop", "blocking-IO", "triage round", "reviewer/CI asks for blocking-IO coverage", plus concrete path triggers (app/, packages/harness/deerflow/, scripts/). Not 5 because a few natural synonyms a contributor would actually say are missing (e.g. "sync call", "offload", "event loop blocking"), and there are no file/extension-style anchors.

4 / 5

Distinctiveness Conflict Risk

A narrow, well-defined niche (blocking-IO guarding in one backend's tests/blocking_io/) with distinct, specific triggers; it would not plausibly fire for an unrelated skill. Not 4 because there is no meaningful overlap risk — the domain, paths, and trigger scenarios are all unique to this skill.

5 / 5

Total

19

/

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

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

15

/

16

Passed

Repository
bytedance/deer-flow
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.