Build document analysis applications using the Azure AI Document Intelligence SDK for Java.
46
48%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/antigravity-azure-ai-formrecognizer-java/SKILL.mdQuality
Discovery
40%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 identifies a clear and specific technology niche (Azure AI Document Intelligence SDK for Java) which makes it distinctive, but it lacks concrete action verbs describing what the skill enables and entirely omits trigger guidance for when Claude should select it. Adding specific capabilities and a 'Use when...' clause would significantly improve its effectiveness for skill selection.
Suggestions
Add a 'Use when...' clause with trigger terms like 'Use when the user needs to build Java applications that analyze documents, extract text, recognize forms, or process receipts/invoices using Azure AI Document Intelligence (formerly Form Recognizer).'
List specific concrete actions the skill covers, such as 'extract text, tables, and key-value pairs from documents, analyze custom/prebuilt models, process receipts, invoices, and ID documents.'
Include common alternative terms users might use, such as 'Form Recognizer', 'OCR', 'Azure Cognitive Services', and specific document types like 'receipts', 'invoices', 'ID documents'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (document analysis applications) and the technology (Azure AI Document Intelligence SDK for Java), but doesn't list specific concrete actions like extracting tables, recognizing forms, processing receipts, etc. | 2 / 3 |
Completeness | Describes what (build document analysis applications using Azure AI Document Intelligence SDK for Java) but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per rubric guidelines, missing 'Use when' caps completeness at 2, and the 'what' is also not very detailed, warranting a 1. | 1 / 3 |
Trigger Term Quality | Includes relevant keywords like 'Azure AI Document Intelligence', 'SDK', 'Java', and 'document analysis', but misses common variations users might say such as 'Form Recognizer' (the previous name), 'OCR', 'extract text', 'PDF parsing', or specific document types. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of 'Azure AI Document Intelligence SDK' and 'Java' creates a very specific niche that is unlikely to conflict with other skills. This is a clearly distinct technology and language combination. | 3 / 3 |
Total | 8 / 12 Passed |
Implementation
57%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides comprehensive, executable Java code examples for the Azure Document Intelligence SDK, covering all major features. However, it suffers from being a monolithic reference document with no progressive disclosure or workflow guidance. It would benefit from splitting into focused sub-files and adding explicit multi-step workflows with validation checkpoints for operations like custom model training.
Suggestions
Split the content into a concise SKILL.md overview with references to separate files (e.g., CUSTOM_MODELS.md, PREBUILT_MODELS.md, CLASSIFICATION.md) to improve progressive disclosure.
Add explicit multi-step workflows with validation checkpoints, especially for custom model building (e.g., verify training data format → build model → check model status → validate with test document → deploy).
Remove the boilerplate 'Trigger Phrases', 'When to Use', and 'Limitations' sections which add no actionable value and waste tokens.
Add confidence threshold guidance and error recovery patterns (e.g., what to do when analysis confidence is below a threshold, or when model training fails).
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with executable code examples, but it's quite long (~300 lines) and includes some unnecessary sections like 'Trigger Phrases', 'When to Use', and 'Limitations' boilerplate that add no value. The prebuilt models table and multiple client creation variants add bulk. Some code examples are more verbose than needed (e.g., the receipt example could be trimmed). | 2 / 3 |
Actionability | All code examples are fully executable Java with proper imports, concrete method calls, and realistic patterns. The examples cover the full lifecycle from client creation through analysis, custom model building, classification, and error handling — all copy-paste ready with clear placeholder values. | 3 / 3 |
Workflow Clarity | The skill presents individual operations clearly but lacks explicit workflow sequencing for multi-step processes like custom model building (train → validate → deploy → analyze). There are no validation checkpoints — for example, no guidance on verifying model training succeeded before using it, or checking analysis confidence thresholds before trusting results. | 2 / 3 |
Progressive Disclosure | The entire skill is a monolithic wall of code examples with no references to external files and no layered structure. All content — from basic client creation to advanced classification and model composition — is inline. This would benefit greatly from splitting into overview + detailed reference files for custom models, prebuilt models, and classification. | 1 / 3 |
Total | 8 / 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
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
8ac11ab
Table of Contents
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.