Git workflow for marchat
Default behavior
- Do not run
git commit or git push unless the user explicitly asks.
- Always provide a suggested commit message when implementation work is complete, even if the user did not ask to commit.
- Scope the message to all uncommitted changes (
git status, git diff), including prior uncommitted work from earlier turns in the same session.
- Never amend, force-push, or skip hooks unless the user explicitly requests and conditions are met.
Commit message format
Conventional commits: feat:, fix:, chore:, docs:, style:, ci:, test:.
<type>(<optional scope>): <short summary>
<optional body: why, not a file list>
Examples:
fix(server): use dialect boolean literals in pin toggle SQL
Postgres rejected integer comparison on boolean columns.
docs: refresh TESTING coverage from merged profile
When user asks to commit
- Parallel:
git status, git diff, git log -1 --oneline (style reference).
- Stage only relevant files; warn on secrets (
.env, keys).
- Commit via HEREDOC message; verify with
git status.
- If pre-commit hook fails, fix and new commit (no amend unless rules allow).
Pull requests
Use gh when user asks to create a PR:
- Parallel: status, diff, tracking branch,
git log main...HEAD, git diff main...HEAD.
- Push with
-u only if needed and user asked.
gh pr create with Summary and Test plan sections.
Breaking changes
Note in commit body and CHANGELOG.md when protocol or keystore format breaks compatibility.
Source: Cod-e-Codes/marchat — distributed by TomeVault.
1---2name: cod-e-codes-marchat-marchat3description: Git workflow for marchat4---56# Git workflow for marchat78## Default behavior910- **Do not** run `git commit` or `git push` unless the user explicitly asks.11- **Always** provide a suggested commit message when implementation work is complete, even if the user did not ask to commit.12- Scope the message to **all** uncommitted changes (`git status`, `git diff`), including prior uncommitted work from earlier turns in the same session.13- Never amend, force-push, or skip hooks unless the user explicitly requests and conditions are met.1415## Commit message format1617Conventional commits: `feat:`, `fix:`, `chore:`, `docs:`, `style:`, `ci:`, `test:`.1819```20<type>(<optional scope>): <short summary>2122<optional body: why, not a file list>23```2425Examples:2627```28fix(server): use dialect boolean literals in pin toggle SQL2930Postgres rejected integer comparison on boolean columns.31```3233```34docs: refresh TESTING coverage from merged profile35```3637## When user asks to commit38391. Parallel: `git status`, `git diff`, `git log -1 --oneline` (style reference).402. Stage only relevant files; warn on secrets (`.env`, keys).413. Commit via HEREDOC message; verify with `git status`.424. If pre-commit hook fails, fix and **new** commit (no amend unless rules allow).4344## Pull requests4546Use `gh` when user asks to create a PR:47481. Parallel: status, diff, tracking branch, `git log main...HEAD`, `git diff main...HEAD`.492. Push with `-u` only if needed and user asked.503. `gh pr create` with Summary and Test plan sections.5152## Breaking changes5354Note in commit body and `CHANGELOG.md` when protocol or keystore format breaks compatibility.5556---57> Source: [Cod-e-Codes/marchat](https://github.com/Cod-e-Codes/marchat) — distributed by [TomeVault](https://tomevault.io).58<!-- tomevault:4.0:skill_md:2026-06-30 -->