CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-document-intelligence-ts

Extract text, tables, and structured data from documents using prebuilt and custom models.

55

Quality

62%

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 ./skills/azure-ai-document-intelligence-ts/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

64%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a solid API reference skill with excellent actionability — all code examples are executable, properly typed, and cover the major use cases of the Azure Document Intelligence REST SDK. However, it suffers from repetitive patterns (the polling+error-check pattern is repeated verbatim in nearly every section), generic boilerplate sections, and could benefit from better progressive disclosure by splitting detailed examples into separate files. Workflow clarity is adequate but lacks validation checkpoints for extracted results.

Suggestions

Consolidate the repeated polling+error-checking pattern into a single reference section and use abbreviated examples elsewhere (e.g., 'Follow the polling pattern above').

Remove the generic 'When to Use' and 'Limitations' boilerplate sections — they add no skill-specific value.

Add a validation step for extracted results, such as checking confidence scores against a threshold before using field values.

Consider splitting detailed examples (invoice, receipt, classifier, custom model) into separate reference files and keeping SKILL.md as a concise overview with links.

DimensionReasoningScore

Conciseness

The skill is mostly efficient with executable code examples, but there's significant repetition in the polling pattern (shown in nearly every example, then again as a dedicated section). The 'When to Use' and 'Limitations' sections are generic boilerplate that add no value. The receipt and invoice examples are very similar and could be consolidated.

2 / 3

Actionability

All code examples are fully executable TypeScript with correct imports, proper type annotations, and real API patterns. The examples cover authentication, URL/local file analysis, prebuilt models, custom models, classifiers, and pagination — all copy-paste ready.

3 / 3

Workflow Clarity

The polling pattern section clearly sequences the async workflow (start → check errors → create poller → monitor → wait), but there are no validation checkpoints for the actual document processing results (e.g., checking confidence scores, verifying extracted fields). The custom model building workflow lacks validation of training data or model quality assessment steps.

2 / 3

Progressive Disclosure

The content is a long monolithic file (~200+ lines) with no references to external files. The prebuilt models table, detailed invoice/receipt examples, classifier building, and custom model building could be split into separate reference files. However, the sections are well-organized with clear headers.

2 / 3

Total

9

/

12

Passed

Description

60%Scale 1-3

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 does a good job listing specific extraction capabilities (text, tables, structured data) and hints at the method (prebuilt and custom models). However, it lacks an explicit 'Use when...' clause, specific file type triggers, and enough distinctiveness to clearly separate it from other document processing skills. The term 'documents' is too broad without specifying formats like PDF, images, or scanned documents.

Suggestions

Add a 'Use when...' clause with explicit triggers, e.g., 'Use when the user needs to extract text, tables, or key-value pairs from PDFs, images, invoices, receipts, or scanned documents.'

Include natural trigger terms users would say, such as specific file types (PDF, image, scanned document) and common use cases (OCR, invoice processing, form extraction, document parsing).

Specify the underlying tool or service (e.g., Azure Document Intelligence, AWS Textract) to improve distinctiveness and reduce conflict risk with other document skills.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: 'Extract text, tables, and structured data' and mentions both 'prebuilt and custom models' as methods. This provides clear, actionable capabilities.

3 / 3

Completeness

Clearly answers 'what does this do' (extract text, tables, structured data from documents using models), but lacks an explicit 'Use when...' clause or trigger guidance for when Claude should select this skill.

2 / 3

Trigger Term Quality

Includes some relevant terms like 'extract text', 'tables', 'structured data', and 'documents', but lacks specific file type mentions (PDF, images, scanned documents) and common user variations. 'Prebuilt and custom models' is more technical jargon than natural user language.

2 / 3

Distinctiveness Conflict Risk

'Documents' is very broad and could overlap with many document-related skills. The mention of 'prebuilt and custom models' adds some distinctiveness (suggesting an AI/ML extraction service like Azure Form Recognizer), but without specifying the tool or document types, it could conflict with other extraction or document processing skills.

2 / 3

Total

9

/

12

Passed

Validation

90%

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

Validation — 10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
popey/claude-code-skills
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.