Configure rich popup content with text, fields, media, charts, attachments, and related records. Use for customizing feature popups with dynamic content, expressions, and interactive elements.
67
59%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./contexts/4.34/skills/arcgis-popup-templates/SKILL.mdQuality
Discovery
77%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 fairly strong in specificity and completeness, listing concrete content types and providing an explicit 'Use for' trigger clause. However, it lacks domain context (likely GIS/mapping) which hurts both trigger term quality and distinctiveness, as 'popup' and 'interactive elements' could overlap with general UI skills. Adding the platform or domain would significantly improve selection accuracy.
Suggestions
Add domain context (e.g., 'in GIS/mapping applications' or 'in ArcGIS') to distinguish from general UI popup skills and reduce conflict risk.
Include common user-facing trigger terms like 'info window', 'map popup', 'click info', or specific platform names users would naturally mention.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'text, fields, media, charts, attachments, and related records' as content types, plus 'dynamic content, expressions, and interactive elements' as capabilities. | 3 / 3 |
Completeness | Clearly answers both what ('Configure rich popup content with text, fields, media, charts, attachments, and related records') and when ('Use for customizing feature popups with dynamic content, expressions, and interactive elements') with an explicit 'Use for' clause. | 3 / 3 |
Trigger Term Quality | Includes relevant terms like 'popup', 'fields', 'media', 'charts', 'attachments', 'related records', 'expressions', and 'interactive elements', but misses common user variations like 'info window', 'click popup', 'feature info', or platform-specific terms (e.g., ArcGIS, Mapbox). The domain context (GIS/mapping) is not explicitly stated. | 2 / 3 |
Distinctiveness Conflict Risk | The term 'popup' could overlap with UI popup/modal skills, and without specifying the domain (e.g., GIS, mapping, ArcGIS), it could conflict with general UI customization skills. However, the specific mention of 'feature popups', 'related records', and 'expressions' narrows the scope somewhat. | 2 / 3 |
Total | 10 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, executable code examples covering the full breadth of ArcGIS popup template configuration. However, it is far too verbose for a SKILL.md file—it reads as comprehensive API documentation rather than a focused skill guide. The content desperately needs progressive disclosure, splitting detailed references (chart types, date formats, layer-specific patterns) into separate files while keeping SKILL.md as a concise overview with the most common patterns.
Suggestions
Extract detailed content type references (all chart types, date formats, FieldInfo options, layer-specific examples) into separate reference files like CONTENT_TYPES.md, CHARTS.md, and EXPRESSIONS.md, keeping only the overview table and one basic example per type in SKILL.md.
Add a quick-start workflow section at the top showing the minimal steps to create a popup: 1) define outFields, 2) set title with field substitution, 3) add content array, with a note about the outFields pitfall inline.
Remove redundant examples—e.g., the individual bar/pie/line/column chart sections repeat the same pattern with different type strings; a single example with a comment listing valid types would suffice.
Add a validation/debugging section or checklist: verify field name casing matches layer schema, confirm outFields includes all referenced fields, test expression syntax in Arcade playground.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose at ~500+ lines, serving as an exhaustive API reference rather than a focused skill. It includes many variations and patterns (every chart type individually, multiple attachment display types, TypeScript usage, clustering popups, etc.) that could be in separate reference files. Much of this is documentation Claude could infer from the ArcGIS API. | 1 / 3 |
Actionability | All code examples are concrete, executable JavaScript/TypeScript snippets that are copy-paste ready. Field formats, chart configurations, action handlers, and expression definitions are all fully specified with real property names and values. | 3 / 3 |
Workflow Clarity | The content is organized as a reference catalog of content types rather than a workflow. There's no clear sequence for building a popup template from scratch, no validation steps (e.g., verifying outFields match content references), and no guidance on debugging common issues beyond the pitfalls list at the end. | 2 / 3 |
Progressive Disclosure | This is a monolithic wall of content with everything inline. The exhaustive chart type examples, date format lists, FieldInfo configurations, and layer-specific patterns should be split into separate reference files. The single cross-reference to arcgis-core-maps is good but insufficient given the volume of content that should be externalized. | 1 / 3 |
Total | 7 / 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 |
|---|---|---|
skill_md_line_count | SKILL.md is long (900 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
d84407b
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.