sred-commit

Create a git commit with SR&ED (Scientific Research & Experimental Development) trailers for Canada CRA tax credit compliance.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "sred-commit" with this command: npx skills add terrylica/cc-skills/terrylica-cc-skills-sred-commit

/mise:sred-commit

Create a git commit with SR&ED (Scientific Research & Experimental Development) trailers for Canada CRA tax credit compliance.

Step 1: Understand Staged Changes

git diff --cached --stat

If nothing is staged, run git status and ask the user what to stage.

Step 2: Draft the Commit Message

Write a commit message to /tmp/sred-commit-msg.txt following this format:

<type>(<scope>): <subject>

<body>

SRED-Type: <category> SRED-Claim: <PROJECT-IDENTIFIER>

Conventional Commit Types

Type When to Use

feat New feature or capability

fix Bug fix

docs Documentation only changes

style Formatting, missing semicolons, etc.

refactor Code change that neither fixes nor adds

perf Performance improvement

test Adding or correcting tests

build Build system or external dependencies

ci CI configuration files and scripts

chore Maintenance tasks

revert Reverting a previous commit

SR&ED Types (CRA Definitions)

SRED-Type CRA Definition

experimental-development Achieving technological advancement through systematic work

applied-research Scientific knowledge with specific practical application in view

basic-research Scientific knowledge without specific practical application

support-work Programming, testing, data collection supporting SR&ED activities

SRED-Claim Format

Format: PROJECT[-VARIANT] (uppercase alphanumeric + hyphens).

To discover existing project identifiers in this repo:

git log --format='%(trailers:key=SRED-Claim,valueonly)' | sort -u | grep .

If no existing identifiers match, derive from the commit scope (e.g., feat(my-feature): → MY-FEATURE ).

If unsure which SRED-Type or SRED-Claim to use, use AskUserQuestion to ask the user.

Step 3: Validate

Run the validator on the draft message:

bun $HOME/.claude/plugins/marketplaces/cc-skills/plugins/itp-hooks/hooks/sred-commit-guard.ts --validate-message /tmp/sred-commit-msg.txt

Parse the JSON output:

  • {"valid": true} → proceed to commit

  • {"valid": false, "errors": [...]} → fix the message and re-validate

  • If the output includes "discovery" , present the suggestions to the user via AskUserQuestion

Step 4: Commit

git commit -F /tmp/sred-commit-msg.txt

Using -F avoids shell quoting issues with special characters in commit messages.

Step 5: Clean Up

rm -f /tmp/sred-commit-msg.txt

Show the user the commit hash and summary.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

python-logging-best-practices

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

clickhouse-architect

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

mlflow-python

No summary provided by upstream source.

Repository SourceNeeds Review