Skip to content
Back to skills

Civiltekk Git Commits Skill

ASecurity

Conventional Commits and compact-commit budgets — type, scope, breaking changes, semver guidance, atomic-commit granularity by layer; 72-char subject, 150-word body, semantic grouping. Triggers: commit and push, make a commit, write a commit message, commit message format, semantic commit, compact commit, concise commit, terse commit. Not for release pipelines (semantic-release-convention-skill).

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 28, 2026
devopsgogit

Works with

  • claude code

Security analysis

A100/100

Scanned September 28, 2026

npx -y skills add darellchua2/opencode-config-template --skill civiltekk-git-commits-skill --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Civiltekk Git Commits Skill?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Civiltekk Git Commits Skill
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/darellchua2-civiltekk-git-commits-skill/badge)](https://www.skillsdirectory.com/skills/darellchua2-civiltekk-git-commits-skill)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: civiltekk-git-commits-skill
description: >-
  Conventional Commits and compact-commit budgets — type, scope, breaking
  changes, semver guidance, atomic-commit granularity by layer; 72-char
  subject, 150-word body, semantic grouping. Triggers: commit and push,
  make a commit, write a commit message, commit message format, semantic
  commit, compact commit, concise commit, terse commit. Not for release
  pipelines (semantic-release-convention-skill).
license: Apache-2.0
compatibility: opencode
category: Git/Workflow
---

Consolidates git-semantic-commits-skill + git-compact-commits-skill (#603).

## What I do

Write, format, or tighten commit messages to this config's commit doctrine:

1. **Detect the route** (§Routes) — explicit > inferred > ask-once.
   Explicit: the request names the concern ("semantic commit", "commit
   message format" → `conventional-format`; "compact", "concise",
   "terse" → `brevity-budget`). Inferred: the complaint shape (wrong
   type/scope/breaking notation → `conventional-format`; running long,
   word-count over budget, squash output → `brevity-budget`). Ambiguous
   ("make a commit") → ask once — one ask per run, then proceed on the
   answer.
2. **Load the route's values file** (`references/semantic.md` /
   `references/compact.md`) and apply its contract.
3. Most real commits need both files' values — format from `semantic.md`,
   budgets from `compact.md`; the route only decides which file leads.

## Side files (load rules)

| Read | When | Use |
|------|------|-----|
| `references/semantic.md` | route `conventional-format` | Conventional Commits format (types, scope, subject, footers, `!` / `BREAKING CHANGE:`), semver mapping, atomic-commit granularity by layer, project overrides |
| `references/compact.md` | route `brevity-budget` | length budgets (72-char subject, 150-word body), semantic grouping, compact writing techniques, commitlint enforcement |

Side files carry VALUES only; this file carries the METHOD. A commit
concern outside formatting/brevity (release PR titles, merge strategy,
release tags, GitHub Actions) is not this skill's space — route it to
`semantic-release-convention-skill` instead of improvising.

## Routes

| Situation | Route |
|-----------|-------|
| "commit and push", "make a commit", "write a commit message", "commit message format", "semantic commit"; wrong type/scope/breaking notation | `conventional-format` |
| "compact commit", "concise commit", "terse commit"; commits running long; squashing a branch into one message; tightening commitlint rules | `brevity-budget` |
| Ambiguous ("fix this commit message") | ask once (§What I do step 1), then route |

## Boundaries

- The two routes were formerly peer skills that cross-referenced each
  other as alternatives ("not for brevity" / "owns types and scopes") —
  that boundary is internal now; the route table above is the boundary
  logic.
- Release pipeline conventions (PR titles, merge strategy, release tags,
  GitHub Actions) → `semantic-release-convention-skill`.
- Project `AGENTS.md` and `.commitlintrc*` / `commitlint.config.*`
  override every default in the values files — always check the project's
  AGENTS.md first.

## Agent behavior rules

- One ask per run maximum (route detection); headless/CI: no asks —
  infer from the request, defaulting to `conventional-format`
  (formatting is the superset concern; budgets apply inside it).
- Never mix style-only changes with logic in one commit; each commit
  compiles and passes tests on its own (granularity doctrine lives in
  `references/semantic.md`).

> **Harness binding — interactive asks** (AGENTS.md §Portability contract):
> OpenCode — `question` tool. Claude Code — `AskUserQuestion`. Other/none —
> ask in a plain reply; headless/no-answer rule above applies.

Files in this skill

  • SKILL.md3.8 KB
  • references/compact.md2.7 KB
  • references/semantic.md2.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…