Agent skill
git
Git workflow and safety rules for this workspace.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/git-morgs32-skills
SKILL.md
Git Skill
Use this skill when performing git operations or handling file changes.
File and Git Operations
- Delete unused or obsolete files when your changes make them irrelevant (refactors, feature removals, etc.), and revert files only when the change is yours or explicitly requested. If a git operation leaves you unsure about other agents' in-flight work, stop and coordinate instead of deleting.
- Before attempting to delete a file to resolve a local type/lint failure, stop and ask the user. Other agents are often editing adjacent files; deleting their work to silence an error is never acceptable without explicit approval.
- NEVER edit
.envor any environment variable files—only the user may change them. - Coordinate with other agents before removing their in-progress edits—don't revert or delete work you didn't author unless everyone agrees.
- Moving/renaming and restoring files is allowed.
- ABSOLUTELY NEVER run destructive git operations (e.g.,
git reset --hard,rm,git checkout/git restoreto an older commit) unless the user gives an explicit, written instruction in this conversation. Treat these commands as catastrophic; if you are even slightly unsure, stop and ask before touching them. (When working within Cursor or Codex Web, these git limitations do not apply; use the tooling's capabilities as needed.) - Never use
git restore(or similar commands) to revert files you didn't author—coordinate with other agents instead so their in-progress work stays intact. - Always double-check git status before any commit.
- Keep commits atomic: commit only the files you touched and list each path
explicitly. For tracked files run
git commit -m "<scoped message>" -- path/to/file1 path/to/file2. For brand-new files, use the one-linergit restore --staged :/ && git add "path/to/file1" "path/to/file2" && git commit -m "<scoped message>" -- path/to/file1 path/to/file2. - Commit message format: Use Conventional Commits specification with
parentheses for scope (e.g.,
fix(profiler): correct ProcedureCall type,feat(client,zerospin): add batch support). Format:<type>(<scope>): <description>. See.cursor/rules/conventional-commits.mdcfor full specification. - Quote any git paths containing brackets or parentheses (e.g.,
src/app/[candidate]/**) when staging or committing so the shell does not treat them as globs or subshells. - When running
git rebase, avoid opening editors—exportGIT_EDITOR=:andGIT_SEQUENCE_EDITOR=:(or pass--no-edit) so the default messages are used automatically. - Never amend commits unless you have explicit written approval in the task thread.
Commit Message Format
Use the Conventional Commits specification format for all commit messages:
<type>(<scope>): <description>
[optional body]
[optional footer(s)]
Format Details
-
Type (required): One of the conventional commit types:
fix: A bug fixfeat: A new featuredocs: Documentation only changesstyle: Changes that do not affect the meaning of the coderefactor: A code change that neither fixes a bug nor adds a featureperf: A code change that improves performancetest: Adding missing tests or correcting existing testsbuild: Changes that affect the build system or external dependenciesci: Changes to CI configuration files and scriptschore: Other changes that don't modify src or test filesrevert: Reverts a previous commit
-
Scope (optional): Enclosed in parentheses
(). The scope should indicate the area of the codebase affected:- Use package/app names when applicable (e.g.,
profiler,zerospin,client,cloudflare) - Examples:
fix(profiler): - If all the changes are in a specific package folder, obviously use that package for scope. Same goes for an app.
- Use package/app names when applicable (e.g.,
-
Description (required): A short, imperative-mood description of the change (max 72 characters recommended)
-
Body (optional): Provide additional contextual information about the change
-
Footer (optional): Reference issue numbers, breaking changes, etc.
Examples
fix(profiler): correct ProcedureCall type inference
feat(client): add OPFSAdapter support
Important Notes
- Always use parentheses
()for scope, not square brackets[] - The scope is optional—omit the parentheses entirely if no scope is needed:
fix: resolve memory leak - Keep the description concise and in imperative mood ("fix bug" not "fixed bug" or "fixes bug")
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?