CtrlK
BlogDocsLog inGet started
Tessl Logo

bun-file-io

Use this when you are working on file operations like reading, writing, scanning, or deleting files. It summarizes the preferred file APIs and patterns used in this repo. It also notes when to use filesystem helpers for directories.

57

Quality

65%

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 ./.openscience/skill/bun-file-io/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 compact, well-organized, token-efficient reference that avoids re-teaching Bun basics, but it provides no executable code examples and no validation guidance for the destructive (delete) and batch (glob scan) operations it covers. It works as a quick preference sheet yet would be stronger with one runnable example and explicit safety checks.

Suggestions

Add one short executable snippet per common case (e.g. a 3-line read/scan example using Bun.file().text() and Bun.Glob.scan) so guidance is copy-paste ready rather than API-name-only.

Add validation guidance for destructive and batch operations — e.g. 'await Bun.file(p).exists() and confirm the path before delete()' and 'check scan results are non-empty / handle ENOENT before batch processing' — since the rubric caps workflow clarity without it.

Deduplicate the repeated guidance (Glob+Array.fromAsync scanning and exists()-before-read each appear in both the API section and Repo patterns) by consolidating into the Repo patterns section.

DimensionReasoningScore

Conciseness

The body is lean bullet-style guidance with no padding and no explanation of concepts Claude already knows; every bullet carries a specific API fact or repo preference. Minor redundancy — "Bun.Glob + Array.fromAsync for scans" and the exists()-before-read check each appear twice across sections — keeps it at anchor 4 rather than 5.

4 / 5

Actionability

The bullets name specific APIs and methods ("Bun.file(path) is lazy; call text, json, stream...", "Bun.write(dest, input) writes strings, buffers, Blobs, Responses, or files"), which is concrete guidance, but there are no executable code blocks or complete commands anywhere — it reads as an API cheat-sheet rather than copy-paste-ready instruction, matching anchor 3 (concrete but incomplete) rather than 4 (mostly executable code/commands).

3 / 5

Workflow Clarity

There is no sequenced workflow — the skill is a preferences reference with a rough checklist. Per the rubric's cap, the skill covers destructive operations ("Bun.file(...).delete() deletes a file") and batch operations (glob scans) with no validation/verification guidance (e.g. exists() confirmation before delete, or error handling on writes), capping workflow clarity at 3; the checklist's rough decision guidance keeps it from scoring lower.

3 / 5

Progressive Disclosure

This is a single-file, under-50-line skill with no bundle files (references/, scripts/, assets/ are absent) and no need for external references; the body is organized into clear, well-labeled sections (Use this when / Bun file APIs / When to use node:fs / Repo patterns / Quick checklist). Per the rubric's simple-skill exception, this earns a 5.

5 / 5

Total

15

/

20

Passed

Description

66%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 has a clear, explicit trigger structure with natural file-operation keywords and third-person voice, but its 'what' is generic (no specific APIs or the Bun runtime are named) and its scope is broad enough to risk overlap with other file-handling skills. It reads as a solid mid-range description with room to sharpen both capability specificity and trigger scoping.

Suggestions

Name the concrete capability surface in the 'what' clause (e.g. 'Documents this repo's Bun file APIs — Bun.file, Bun.write, Bun.Glob scans — and when to prefer node:fs/promises for directory operations') so the description is specific rather than meta-generic.

Narrow the 'when' clause to reduce conflict risk, e.g. 'Use when editing file I/O or file scans in backend/cli or when choosing between Bun file APIs and node:fs in this repo'.

Add common trigger variations users would actually say — 'saving', 'creating', 'overwriting files', 'glob/scanning a directory', and relevant extensions — to improve trigger term coverage.

DimensionReasoningScore

Specificity

The description names the file-operations domain and four concrete actions ("reading, writing, scanning, or deleting files") but never names a specific API or capability — "summarizes the preferred file APIs and patterns used in this repo" is generic, matching anchor 3 (domain and 1-2 concrete actions, not comprehensive) rather than 4, which requires specific actions with only minor coverage gaps.

3 / 5

Completeness

Both are explicitly present: "Use this when you are working on file operations like reading, writing, scanning, or deleting files" (when) and "It summarizes the preferred file APIs and patterns used in this repo. It also notes when to use filesystem helpers for directories" (what). The 'what' is meta-descriptive of the document rather than of a capability, and the 'when' is broad, so it falls short of anchor 5's fully concrete what+when pairing.

4 / 5

Trigger Term Quality

Natural phrases users would say are present ("reading, writing, scanning, or deleting files", "directories", "filesystem helpers"), giving good keyword coverage, but common variations like "saving", "creating", "file I/O", or file extensions (e.g. .json, .txt) are missing — anchor 4, not 5's comprehensive synonym/extension coverage.

4 / 5

Distinctiveness Conflict Risk

"File operations like reading, writing, scanning, or deleting files" is broad — file I/O appears in nearly any coding task, so it could overlap with many file-handling skills (anchor 3: somewhat specific but could still overlap). The slight scoping from "used in this repo" keeps it from dropping to anchor 2, but no Bun/repo-specific trigger distinguishes it.

3 / 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
synthetic-sciences/openscience
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.