commit

commit is a skill for Claude Code, Codex from f5/unovis. It costs 90 tokens per session (1,669 once invoked), scanned A, original, Apache-2.0.

A project guide for creating Git commits that pass the Unovis repository's custom commit checks.

In plain words
What is it for?
It helps developers write correctly formatted commit messages and group related changes.
Why use it?
It explains the repository's required commit format, allowed types, and subject rules so commits are not rejected.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/f5/unovis/commit
Any agent
npx skills add f5/unovis --skill commit
Clone the repo
git clone --depth 1 https://github.com/f5/unovis

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for commit

README.md
[![agentmods](https://agentmods.dev/badge/skills/f5/unovis/commit.svg)](https://agentmods.dev/skills/f5/unovis/commit)
Your own site
<a href="https://agentmods.dev/skills/f5/unovis/commit"><img src="https://agentmods.dev/badge/skills/f5/unovis/commit.svg" alt="Measured on agentmods" height="20"></a>
Per session 90 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,669 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin unknown No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00090 $0.01669
Opus 5 $0.00045 $0.00834
Sonnet 5 $0.00018 $0.00334
Haiku 4.5 $0.00009 $0.00167

Measured today against content hash 5e559c4255e9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

commit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

ai/skills/commit/SKILL.md · 156 lines

How it starts

The opening of the file, as written. The whole thing — 156 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Committing in Unovis

Unovis enforces commit messages with commitlint (commitlint.config.ts) via a Husky commit-msg hook. The format is custom — Conventional Commits (feat:, fix:, chore:) fail.

Format

Type | Scope | Subscope | Subscope2: Sentence-case subject

Scope and Subscopes are optional depending on type. Parser regex (from the config):

^\s*(\w*)(?:\s\|\s(\w*))?(?:\s\|\s([\w\s|]+))?: (.*)$

→ capture groups [type, scope, subscopes, subject]. Separators are | (space-pipe-space).

Rules (what the hook checks)

  • type (required, error) — must be one of exactly: React, Angular, Vue, Svelte, Solid, Website, Dev, Shared, Core, Component, Container, Release, CI, Misc, MCP, SSR.
  • subject (error)sentence case (first word capitalized, the rest lowercase unless a proper noun or code), must not be empty, no trailing period. Backtick code/prop names: `brushHeightExtend`.
  • scope (warning, not blocking)
    • May be empty only for Release and CI.
    • For type Component, the scope should be the component's name. Use the human-readable display name as it appears in the gallery/docs; it may be multiple words (e.g. Radial Bar, Time Series). Multi-word scopes produce a non-blocking validate-scope warning — that's fine and matches existing history. (A single-word registered name like Crosshair produces zero warnings.)
    • Subscopes are PascalCase.

Because validate-scope is a warning, commits with a readable multi-word component scope still succeed. Only type and subject can actually block a commit.

Picking the type and scope

Choose the type from where the change lives:

You changed… Type Typical scope / subscope
packages/ts/src/components/<x>/ logic Component the component name (Crosshair, Radial Bar)
packages/ts/src/core/** or utils/** Core the area (Utils, `Utils
packages/ts/src/containers/** Container the container name
packages/dev/** Dev Examples, `Examples
packages/website/** Website `Docs
packages/shared/** (examples, registry, parser) Shared Gallery, Examples, TS Parser
Regenerated wrappers across all frameworks Misc Framework integrations (subject)
One framework wrapper's own (non-generated) code React/Angular/Vue/Svelte/Solid Wrappers, Containers, a component name
Version bump Release — (no scope)
.github/workflows/** CI — (scope optional)
Cross-cutting / none of the above Misc optional

Read the full file on GitHub · 156 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. today Changed 5e559c4255e9
  2. today First seen · 156 lines · 90 tokens per session scan A c5c922810cd9

Subscribe to this mod's changes

commit is a skill published in the GitHub repository f5/unovis (2,844 stars, last pushed today), licensed Apache-2.0. It adds 90 tokens to every session and 1,669 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

pr-open

Open a pull request the bklit-ui way: stage and commit with pre-commit hooks, run ultracite from the repo root, rebuild the shadcn registry, run a production test build, fix failures, push, and create a PR with a structured summary. Use when the user asks to commit, push, open a PR, "ship it", or run the full pre-PR…

bklit/bklit-ui · 88 tokens

chart-builder

Use this skill when creating data visualizations, selecting the right chart type, or generating chart code. Trigger phrases: 'build a chart', 'visualize this data', 'create a graph', 'plot these numbers', 'which chart should I use for'. Not for building interactive dashboards, designing UI components, or creating…

NickCrew/Claude-Cortex · 76 tokens

bklit-ui

Bklit UI charts and data visualization for any project using the @bklit shadcn registry. Install, compose, theme, and animate charts correctly. Triggers when working with @bklitui/ui/charts, @bklit components, data visualization, dashboards, or chart theming. Also invoke manually for chart tasks.

bklit/bklit-ui · 75 tokens

bklit-ship

This skill is for bklit-ui monorepo contributors taking a chart or component validated in Studio into production: published in the UI package, documented, and ready for users.

bklit/bklit-ui · 34 tokens

bklit-studio-chart-performance

Reusable Studio chart performance audit and fix workflow. Use when a chart feels sluggish in /studio (pan, slider ticks, legend hover) but siblings like pie-chart feel fine.

bklit/bklit-ui · 43 tokens

bklit-studio

Monorepo contributors only. Use this skill automatically whenever you build, edit, or prototype a chart — before shipping via bklit-ship.

bklit/bklit-ui · 47 tokens