CtrlK
BlogDocsLog inGet started
Tessl Logo

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.

65

Quality

78%

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 ./plugin/.ai-rulez/skills/extracting-tables/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 body is a strong, actionable overview: executable examples across CLI, config, and code, plus useful failure-mode feedback. Its main gaps are minor prose to trim, a missing explicit output-validation step, and references to files not present in the bundle.

Suggestions

Add an explicit validation checkpoint after extraction (e.g., "Check `result.tables` is non-empty; if empty, lower `--layout-confidence` or switch `--layout-table-model`") to close the workflow-clarity gap.

Either ship the referenced files (references/cli-reference.md, references/advanced-features.md, references/python-api.md, references/nodejs-api.md) in this skill's bundle or clearly mark them as living in the sibling xberg skill so navigation is not dangling.

Trim evaluative prose like "Good for LLM ingestion" to tighten token efficiency.

DimensionReasoningScore

Conciseness

The body is lean and task-oriented with no beginner-concept padding, but a few phrases ("Good for LLM ingestion", "Use this when downstream code needs exact cell access") could be trimmed, keeping it just below the every-token-earns-its-place anchor 5.

4 / 5

Actionability

Multiple copy-paste-ready bash commands, a Python snippet, a jq pipe, and a TOML config cover the common cases (markdown/json output, model selection, confidence tuning, spreadsheets, programmatic API), matching the fully-executable anchor 5.

5 / 5

Workflow Clarity

The single-purpose read-only workflow and model/format decision tree are clear, and "Common failure modes" supplies feedback loops for error recovery, but there is no explicit validation checkpoint (e.g., verify tables[] is non-empty), so it sits below the explicit-validation anchor 5.

4 / 5

Progressive Disclosure

Sections are well-organized and references are clearly signaled and one-level-deep, but no bundle files exist and all four referenced paths (two explicitly pointing to a sibling skill) are absent from this skill's bundle, leaving navigation partly dangling below the anchor 5.

4 / 5

Total

17

/

20

Passed

Description

75%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 well-constructed with an explicit trigger clause and a clear, specific niche, scoring solidly across all dimensions. It stops just short of top marks because its capability list reads as topical coverage rather than concrete actions and it omits file extensions.

Suggestions

Rewrite the "what" clause with concrete action verbs (e.g., "Detects tables, reconstructs cell structure, and renders markdown or JSON output") instead of "Covers ...".

Add file extensions and common synonyms to the trigger (e.g., ".pdf, .xlsx, .csv, invoices, financial statements") to reach comprehensive trigger-term coverage.

DimensionReasoningScore

Specificity

Lists several specific capability areas ("layout-aware table detection, table model selection, output formats (markdown / JSON cells), and known limits") but these are topic-coverage nouns rather than concrete action verbs, so it falls short of the comprehensive-actions anchor 5.

4 / 5

Completeness

Both an explicit "Use when..." trigger and a stated "what" ("Covers...") are present, but the "what" is topic-coverage phrasing rather than concrete actions, leaving it just below the clearly-explicit anchor 5.

4 / 5

Trigger Term Quality

Good natural-term coverage ("tabular data", "PDFs", "spreadsheets", "images", "tables") but missing file extensions (.pdf/.xlsx/.csv) and common synonyms like "invoices", so not the comprehensive anchor 5.

4 / 5

Distinctiveness Conflict Risk

Table/tabular extraction is a clear niche with distinct triggers, but broadening to spreadsheets and images creates minor overlap risk with general PDF/data-extraction skills rather than the minimal-conflict anchor 5.

4 / 5

Total

16

/

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