CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

extracting-tables

Use when extracting tabular data from PDFs, spreadsheets, or images. Covers layout-aware table detection, table model selection, output formats (markdown / JSON cells), and known limits.

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

The canonical home for this skill is extracting-tables in xberg-io/xberg

SKILL.md
Quality
Evals
Security

Quality

Content

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

An efficient, highly actionable reference skill: every section is copy-paste-ready commands or code, with a useful model-selection table and a concrete failure-mode troubleshooting guide. The only weaknesses are the absence of an explicit output-validation checkpoint and slightly ambiguous resolution of the referenced files given no local references/ directory in the bundle.

DimensionReasoningScore

Conciseness

The body is command-dense with no padding: it never explains what a PDF or table model is, and every section (output shapes, model table, config alternative, failure modes) delivers operational detail that Claude would not already know. Phrases like "(`bounding_box` is omitted when no position data is available.)" add edge-case value per token, matching the 'every token earns its place' anchor.

5 / 5

Actionability

All guidance is executable and copy-paste ready: complete CLI invocations (`xberg extract report.pdf --layout --content-format markdown`), a jq pipeline for inspecting `result.tables`, a runnable Python example with imports and field access, and a TOML config block. Common cases (markdown vs JSON output, model choice, noisy scans, spreadsheets) each get a specific example.

5 / 5

Workflow Clarity

The single extraction operation is unambiguous and the "Common failure modes" section provides explicit error-recovery feedback loops ("Empty `tables` with `--layout` on — ... Drop `--layout-confidence` to 0.3, try `--layout-table-model tatr`"). It falls short of a 5 because there is no explicit validation checkpoint (e.g., inspecting `result.tables` before proceeding) — recovery guidance exists but is remedial rather than a sequenced check.

4 / 5

Progressive Disclosure

Sections are well-organized and deep material is pushed to clearly signaled one-level-deep references ("See `references/cli-reference.md` for the full layout flag set"). However, the bundle ships no references/ directory, and the four referenced paths are split between an explicitly qualified "sibling `xberg` skill" (python-api.md, nodejs-api.md) and two unqualified paths (cli-reference.md, advanced-features.md) whose location is ambiguous — a minor navigation gap against the 'easy navigation' anchor.

4 / 5

Total

18

/

20

Passed

Description

87%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 with an explicit 'Use when' trigger clause and a concrete enumeration of capabilities. The only gaps are minor: no file-extension synonyms (.pdf, .xlsx, .csv) and capability areas phrased as coverage topics rather than actions.

DimensionReasoningScore

Specificity

The description enumerates several concrete capabilities — "extracting tabular data from PDFs, spreadsheets, or images", "layout-aware table detection", "table model selection", "output formats (markdown / JSON cells)" — going beyond the 1-2 actions of the score-3 anchor. It stops short of a 5 because the capabilities are framed as topic coverage ("Covers...") rather than a comprehensive list of concrete actions.

4 / 5

Completeness

Both halves are explicit: "Use when extracting tabular data from PDFs, spreadsheets, or images" answers when with concrete trigger phrases, and "Covers layout-aware table detection, table model selection, output formats (markdown / JSON cells), and known limits" answers what. This matches the score-5 anchor example's structure of explicit what + explicit when.

5 / 5

Trigger Term Quality

Natural user phrases are present: "extracting tabular data", "PDFs", "spreadsheets", "images", "table". It misses the file extensions (.pdf, .xlsx, .csv) and common synonyms (e.g., "table extraction", "get tables out of") that the score-5 anchor requires, so it fits the 'good coverage, a few natural terms missing' anchor.

4 / 5

Distinctiveness Conflict Risk

Table/tabular-data extraction is a clear niche with distinct triggers; the description would not fire for general text extraction, document editing, or spreadsheet analysis tasks. Like the score-5 anchor example, it names a specific extraction target with specific trigger conditions, keeping conflict risk minimal.

5 / 5

Total

18

/

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: 4 missing

Warning

Total

15

/

16

Passed

Repository

xberg-io/xberg

Path

plugin/.hermes/plugins/xberg/skills/extracting-tables/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.