Skip to content
Back to skills

Commit

ASecurity

Record a focused VCS commit with govctl validation and Work Item traceability

  • 272 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added June 5, 2026
toolsgobashreactgit

Security analysis

A100/100

Scanned September 30, 2026

npx -y skills add govctl-org/govctl --skill commit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Commit?

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

Security grade badge for Commit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/govctl-org-commit/badge)](https://www.skillsdirectory.com/skills/govctl-org-commit)

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

Download with Pro
SKILL.md
---
name: commit
description: "Record a focused VCS commit with govctl validation and Work Item traceability"
allowed-tools: Read, Write, Edit, Bash, Glob, Grep, TodoWrite
argument-hint: "[optional commit message hint]"
---

# Commit

Record the current coherent change without inventing governance work or
touching unrelated files.

## Detect The VCS

Run `jj root` first. If it succeeds, use only `jj`: a colocated repository also
contains `.git`, so probing Git first picks the wrong tool. Only if `jj root`
fails, use `git rev-parse --git-dir`.

Inspect changes with `jj status` and `jj diff`, or `git status --short`,
`git diff`, and `git diff --cached`. The repository is governed when `gov/`
exists.

## Hard Stops

- This is the only workflow that issues raw commit commands.
- Do not create or reactivate a Work Item just to make a commit.
- Do not perform RFC or ADR lifecycle transitions.
- Do not commit governed changes while `govctl check` fails.
- Do not absorb, revert, or reformat unrelated user changes.
- Stop when substantive implementation has no matching active or completed Work
  Item and is not spec-only governance maintenance.

## Traceability

In a governed repository, run `govctl check` and `govctl work list active`. Use
the Work Item already identified by context or the diff; query
`govctl work list done` only if none is. Spec-only changes need no Work Item.

For a matching active Work Item:

- tick only criteria the diff satisfies;
- move it to `done` only when all criteria and effective guards pass; and
- add a note only for a durable constraint or retry rule, never for progress,
  validation output, review state, or the commit itself.

An item may already be `done`; keep the closure and implementation in one
commit.

## Commit Boundary

Review the full diff, including generated and governance files. The commit is
one explainable outcome. If unrelated work shares the current jj change, stop
and split it (`jj split --help`) or ask the user. With Git, stop if the index
already holds unrelated staged changes.

Message format, with the type chosen from the outcome (`feat`, `fix`,
`refactor`, `docs`, `test`, `chore`):

```text
<type>(<area>): <short summary>
```

Record it without opening an editor; use stdin for multi-line messages:

```bash
jj describe -m "<type>(<area>): <summary>"
jj new
```

```bash
git add -- <reviewed-path>...
git commit -m "<type>(<area>): <summary>"
```

## Report

The commit ID and subject, the Work Item status if any, the `govctl check`
result, and whether the working copy is clean afterwards.

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.