Scan a directory or workspace for SKILL.md files across all agents and repos, capture supporting files (references, scripts, linked docs), dedupe vendored copies, enrich each Tessl tile with registry signals, and emit a canonical JSON inventory validated by JSON Schema. Then run four analytical phases in parallel against the inventory — staleness + git provenance (history, broken refs, contributors), quality (Tessl `skill review`), duplicates (similarity + LLM judgement), registry-search (per-standalone-skill registry suggestions, HTTP only) — and render a self-contained interactive HTML report with a top-of-report health overview, top-issues panel, recently-changed list, and per-tessl.json manifests view.
84
90%
Does it follow best practices?
Impact
97%
1.44xAverage score across 2 eval scenarios
Advisory
Suggest reviewing before use
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://tessl.io/skill-insights/registry-search.schema.json",
"title": "Skill Insights — Registry Search Output",
"description": "Registry-search results for every standalone skill in a discovery.json. Only skills with `source_type: \"standalone\"` are searched — anything inside a tile or agent-harness directory has already been chosen by the user, so suggesting a registry alternative would be noise. Each candidate is queried against the Tessl /experimental/search endpoint twice (skill index + tile index) and the single higher-aggregate-score hit is recorded as `best_match`. Eval / quality scores are surfaced verbatim so the report can flag local skills with strong registry-side equivalents.",
"type": "object",
"additionalProperties": false,
"required": ["schema_version", "metadata", "matches", "stats", "warnings"],
"properties": {
"schema_version": { "type": "string", "const": "1.2" },
"metadata": {
"type": "object",
"additionalProperties": false,
"required": [
"scanned_at", "tool_version", "registry_base_url", "search_mode",
"skills_searched", "skills_skipped_non_standalone"
],
"properties": {
"scan_id": { "type": ["string", "null"] },
"scanned_at": { "type": "string", "format": "date-time" },
"tool_version": { "type": "string" },
"registry_base_url": { "type": "string", "format": "uri" },
"search_mode": { "type": "string", "enum": ["hybrid", "semantic", "text"] },
"skills_searched": { "type": "integer", "minimum": 0 },
"skills_skipped_non_standalone": { "type": "integer", "minimum": 0 }
}
},
"matches": {
"type": "array",
"items": { "$ref": "#/$defs/Match" }
},
"stats": {
"type": "object",
"additionalProperties": false,
"required": [
"total_skills_searched",
"skills_with_match",
"skills_with_no_match",
"match_kinds",
"search_errors"
],
"properties": {
"total_skills_searched": { "type": "integer", "minimum": 0 },
"skills_with_match": { "type": "integer", "minimum": 0 },
"skills_with_no_match": { "type": "integer", "minimum": 0 },
"match_kinds": {
"type": "object",
"additionalProperties": false,
"required": ["skill", "tile"],
"properties": {
"skill": { "type": "integer", "minimum": 0 },
"tile": { "type": "integer", "minimum": 0 }
}
},
"search_errors": { "type": "integer", "minimum": 0 }
}
},
"warnings": {
"type": "array",
"items": { "type": "string" }
}
},
"$defs": {
"Match": {
"type": "object",
"additionalProperties": false,
"required": [
"source_skill_id", "source_skill_name", "source_tile_name",
"source_query", "best_match", "search_errors"
],
"properties": {
"source_skill_id": { "type": "string" },
"source_skill_name": { "type": "string" },
"source_tile_name": { "type": ["string", "null"] },
"source_query": { "type": "string" },
"best_match": {
"anyOf": [
{ "type": "null" },
{ "$ref": "#/$defs/SkillBestMatch" },
{ "$ref": "#/$defs/TileBestMatch" }
]
},
"search_errors": {
"type": "array",
"items": { "$ref": "#/$defs/SearchError" }
}
}
},
"SkillBestMatch": {
"type": "object",
"additionalProperties": false,
"required": ["kind", "id", "name", "description", "path", "scores"],
"properties": {
"kind": { "const": "skill" },
"id": { "type": "string" },
"name": { "type": "string" },
"description": { "type": "string" },
"path": { "type": "string", "description": "Repo-relative SKILL.md path as recorded in the registry." },
"source_url": { "type": ["string", "null"] },
"tile_workspace": { "type": ["string", "null"] },
"tile_name": { "type": ["string", "null"] },
"scores": { "$ref": "#/$defs/Scores" }
}
},
"TileBestMatch": {
"type": "object",
"additionalProperties": false,
"required": ["kind", "id", "name", "full_name", "scores"],
"properties": {
"kind": { "const": "tile" },
"id": { "type": "string" },
"name": { "type": "string" },
"full_name": { "type": "string", "description": "workspace/name as displayed in the registry." },
"describes": { "type": ["string", "null"] },
"featured": { "type": ["boolean", "null"] },
"is_private": { "type": ["boolean", "null"] },
"workspace_name": { "type": ["string", "null"] },
"latest_version": {
"anyOf": [
{ "type": "null" },
{ "$ref": "#/$defs/TileVersionSummary" }
]
},
"scores": { "$ref": "#/$defs/Scores" }
}
},
"TileVersionSummary": {
"type": "object",
"additionalProperties": false,
"required": ["version", "summary"],
"properties": {
"version": { "type": "string" },
"summary": { "type": "string" },
"has_skills": { "type": ["boolean", "null"] },
"has_docs": { "type": ["boolean", "null"] },
"has_steering": { "type": ["boolean", "null"] }
}
},
"Scores": {
"type": "object",
"additionalProperties": false,
"required": [
"aggregate", "quality", "impact", "security",
"evalAvg", "evalBaseline", "evalImprovement", "evalImprovementMultiplier",
"evalCount", "lastScoredAt"
],
"properties": {
"aggregate": { "type": ["number", "null"] },
"quality": { "type": ["number", "null"] },
"impact": { "type": ["number", "null"] },
"security": {
"type": ["string", "null"],
"enum": ["LOW", "MEDIUM", "HIGH", "CRITICAL", null]
},
"evalAvg": { "type": ["number", "null"] },
"evalBaseline": { "type": ["number", "null"] },
"evalImprovement": { "type": ["number", "null"] },
"evalImprovementMultiplier": { "type": ["number", "null"] },
"evalCount": { "type": ["integer", "null"], "minimum": 0 },
"lastScoredAt": { "type": ["string", "null"] }
}
},
"SearchError": {
"type": "object",
"additionalProperties": false,
"required": ["target", "message"],
"properties": {
"target": {
"type": "string",
"enum": ["skill", "tile"],
"description": "Which of the two queries failed (the skill-typed search or the tile-typed search). Both queries run regardless; only the higher-scoring result is retained as best_match, but per-query errors are still surfaced for diagnostics."
},
"status": { "type": ["integer", "null"] },
"message": { "type": "string" }
}
}
}
}