playrote.play.v1

ddotisacat/commit-attribution-guardv0.1.3Public

Commit attribution guard

Scans your recent commit messages for AI-attribution marks you may not have meant to publish -- Co-Authored-By trailers naming an AI tool, "Generated with/by" footers, robot-emoji-plus-tool-name body marks -- before that history goes public.

Read the full description

Identity hygiene for commit metadata, NOT a repo audit: commit-history scanning (scan_log) reads commit messages only, never code. The one narrow, explicitly-scoped exception is scan_config's attribution-SOURCE check, which does read commit.template/hook file bytes to test them for a structural match -- but returns only a "class:tool" pattern identifier, never the source text itself, so no hook or template code line ever leaves this play. Five jobs across two layers: validate_repo resolves the repo path (expanding ~, going absolute) and int-guards depth, treating a real but empty repository as a clean pass rather than a failure; scan_log reads git log for the requested depth and classifies every match into exactly one of two structural shapes -- TRAILER, a Co-Authored-By

  • Published 3 Sep 2026
  • Downloads 0
  • Needs rote 0.62.0+
  • Digest sha256:3b36fc7bfc0a…
  • Reference dotisacat/commit-attribution-guard@0.1.3

Before you run it2 local tools

Everything here is checked on your machine when rote inspects the play. This page never learns what you have installed or which credentials you hold.

  • ○
    python3local tool

    Must be on your PATH when used. minimum version undeclared.

  • ○
    gitlocal tool

    Must be on your PATH when used. minimum version undeclared.

Inputs2, all optional

rote asks for these before running and shows the defaults it will use.

  • Reporepo

    Path to the git repository. Steps run in the play workspace, so a relative path resolves somewhere you did not mean — prefer absolute paths.

    optionalstringdefault .example ~/my-projectcustom value allowed
  • Depthdepth

    How many recent commits to scan (1-1000)

    optionalintegerdefault 50example 50custom value allowed

What it changes

No write operations are declared in this version's manifest.

Credentials remain in the recipient's local rote vault; this page and the publisher never receive them.

Runtime details
  • rote CLIversion 0.62.0 or newer
  • Servicesnone declared
  • Digestsha256:3b36fc7bfc0ab184b450769757225a9397e17018cecfa88d952f12e8a8a67e78
  • Archive size15996 bytes
  • Published2026-09-03T21:50:23.749144+00:00
  • Published withrote 0.77.0

Credential values and current readiness remain local. Opening this page never prompts for a credential, opens an authorization browser, or calls a service this play uses.

A play is a published, versioned automation package that runs on your own machine through rote, a free command-line tool. Opening this page installs nothing and runs nothing.