CtrlK
BlogDocsLog inGet started
Tessl Logo

uinaf/uinaf-design-system

Apply the uinaf brand identity to anything that ships under the uinaf name — web interfaces, blog posts, changelogs, documentation, READMEs, slides, OG / social images, email, terminal banners, app or product UI starting points. Covers voice, design tokens, components, motion, and brand assets, with a Tailwind v4 path for web work. Use when producing or restyling any uinaf-branded artefact. Skip for non-uinaf work; this is opinionated brand guidance, not a generic UI kit.

98

1.67x
Quality

100%

Does it follow best practices?

Impact

97%

1.67x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-5/

{
  "context": "The agent is asked to draft a README.md and CHANGELOG.md for a new uinaf-branded CLI. This scenario tests whether the skill correctly applies the cross-surface voice rules and the content-track structural patterns (README shape, changelog format) without leaning on the Tailwind / web subset of the system.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "README title and tagline",
      "description": "README.md opens with the project name in canonical case (for this package, `# tccutil`) followed by a single literal one-line tagline directly below describing what the tool does. Tagline uses sentence case, ends with a period, and contains no benefit / marketing language.",
      "max_score": 8
    },
    {
      "name": "README install block at top",
      "description": "A single fenced ```bash code block sits near the top of the README, containing both the brew install line and at least one minimal usage invocation (e.g. `tccutil reset Camera` or `tccutil list`). The block is not preceded by 'Installation:' / 'Getting started:' headings.",
      "max_score": 8
    },
    {
      "name": "README sections match the pattern",
      "description": "Section headings present include `## Why`, `## Docs`, `## License`. Headings use documentation casing. No `## Features`, `## Highlights`, `## Benefits`, or `## Getting Started` sections appear.",
      "max_score": 6
    },
    {
      "name": "README docs link uses ↗",
      "description": "The docs link points at `uinaf.dev/tccutil` and is rendered as a markdown link with a trailing `↗` glyph inside the link text (e.g. `[uinaf.dev/tccutil ↗](https://uinaf.dev/tccutil)`).",
      "max_score": 4
    },
    {
      "name": "README license one-liner",
      "description": "The `## License` section is one line containing `MIT`. No copyright boilerplate is duplicated.",
      "max_score": 4
    },
    {
      "name": "README length",
      "description": "README body content (excluding code blocks) is under ~25 lines. No filler paragraphs, no 'about uinaf' section, no contributor-handbook content.",
      "max_score": 4
    },
    {
      "name": "CHANGELOG newest-first, dated",
      "description": "CHANGELOG.md is headed `# Changelog` and lists at least two entries newest-first. Each entry header is `## YYYY-MM-DD` or `## v0.1.0 — 2026-04-25` (em-dash, lowercase v). The 2026-04-25 entry appears above the 2026-04-22 entry.",
      "max_score": 8
    },
    {
      "name": "CHANGELOG bullet shape",
      "description": "Each entry body is a `-` bullet list. Each bullet uses sentence case, ends with a period, and is one short clause. No nested bullets, no multi-line bullets, no inline links to PRs unless minimal.",
      "max_score": 8
    },
    {
      "name": "CHANGELOG no categories or emoji",
      "description": "No `### Added`, `### Changed`, `### Fixed`, `### Deprecated`, or similar category subheadings. No emoji prefixes (no 🐛 ✨ 🎉 ⚡). No bracketed tags like `[BREAKING]`.",
      "max_score": 6
    },
    {
      "name": "Documentation casing across both files",
      "description": "README.md and CHANGELOG.md use documentation casing: proper-case headings and sentence-case body. They are NOT forced into all-lowercase product-marketing casing. Code identifiers, URLs, file paths, and shell command tokens keep canonical case.",
      "max_score": 12
    },
    {
      "name": "No emoji, no exclamation marks",
      "description": "Both files contain zero emoji and zero exclamation marks anywhere — body, headings, code comments included.",
      "max_score": 6
    },
    {
      "name": "No SaaS marketing language",
      "description": "Neither file contains any of: `empower`, `unlock`, `synergies`, `simply`, `just`, `essentially`, `transform`, `elevate`, `mission`, `seamless`, `revolutionary`, `cutting-edge`, `leverage`, `harness`, `delight`. Tagline and `## why` paragraph describe what the tool literally does, not benefits.",
      "max_score": 10
    },
    {
      "name": "Voice — sentence fragments with periods, terse",
      "description": "Sentences and bullets read terse and dry. Fragments end with periods. No paragraphs longer than 3 sentences. No exclamation marks. No 'You will love…' / 'We're excited to…' / 'Built for…' phrasings.",
      "max_score": 6
    },
    {
      "name": "External links carry ↗",
      "description": "Every external (off-domain) link in both files carries a trailing `↗` (U+2197) glyph inside the link text. Internal repo paths and inline code do not need the arrow.",
      "max_score": 4
    },
    {
      "name": "No banned UI scaffolding leaked into content",
      "description": "Neither file contains HTML tags, Tailwind classes, `<div>` / `<section>`, badge images (`![](https://shields.io/...)` etc), or any web-component reference. README and CHANGELOG are pure markdown text + fenced code blocks.",
      "max_score": 6
    }
  ]
}

evals

SKILL.md

tile.json