CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/tile-creator

Create tessl tiles with docs, rules, and skills.

Does it follow best practices?

Evaluation97%

1.98x

Agent success when using this tile

Validation for skill structure

Overview
Skills
Evals
Files

rubric.jsonevals/scenario-1/

{
  "context": "Tests whether the agent correctly classifies mixed content types (procedures vs facts vs constraints) and produces valid tile structure with proper tile.json configuration and CLI commands.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Runbook is a skill",
      "description": "The incident response runbook is placed in a skills/ directory (not docs/), since it is a step-by-step procedure",
      "max_score": 10
    },
    {
      "name": "Architecture is docs",
      "description": "The infrastructure architecture content is placed in a docs/ directory, since it is factual reference material",
      "max_score": 10
    },
    {
      "name": "Freeze policy is a rule",
      "description": "The deployment freeze policy is placed in a rules/ directory, since it contains MUST/NEVER constraints",
      "max_score": 10
    },
    {
      "name": "SKILL.md frontmatter",
      "description": "The skill file is named SKILL.md and contains YAML frontmatter with both 'name' and 'description' fields",
      "max_score": 8
    },
    {
      "name": "Skill name format",
      "description": "The skill name in the frontmatter is lowercase with hyphens only (no underscores, no uppercase)",
      "max_score": 7
    },
    {
      "name": "Skill description trigger",
      "description": "The skill description includes a 'Use when' trigger phrase",
      "max_score": 7
    },
    {
      "name": "Rule frontmatter",
      "description": "The rule file has YAML frontmatter with an 'alwaysApply' field",
      "max_score": 8
    },
    {
      "name": "tile.json name format",
      "description": "tile.json name field is in workspace/tile-name format (acme-devops/ops-knowledge)",
      "max_score": 7
    },
    {
      "name": "tile.json required fields",
      "description": "tile.json includes all three required fields: name, version, and summary",
      "max_score": 7
    },
    {
      "name": "Steering key for rules",
      "description": "Rules are referenced in tile.json under a 'steering' key, not under a 'rules' key",
      "max_score": 8
    },
    {
      "name": "CLI workspace flag",
      "description": "The documented CLI command in plan.md includes --workspace flag matching the name prefix (acme-devops)",
      "max_score": 8
    },
    {
      "name": "CLI uses absolute path",
      "description": "The documented CLI command in plan.md uses an absolute path for the --path flag (starts with /)",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl-labs/tile-creator

evals

scenario-1

rubric.json

task.md

SKILL.md

tile.json