git-workflow-hermes
Hermes variant of git-workflow — branching, commits, and MR/PRs with commit signing OFF.
Skill by Clovel
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/clovel-git-workflow-hermes
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/git-workflow-hermes
What's inside
- Skill name
git-workflow-hermes- Description
- Hermes variant of git-workflow — branching, commits, and MR/PRs with commit signing OFF. Use when creating branches, committing, rebasing, cherry-picking, or preparing MRs/PRs from a Hermes session, and whenever git mentions GPG, pinentry or a passphrase in a Hermes session. Supersedes the generic git-workflow skill on commit signing and on interactive git commands.
- License
- MIT
- Instructions
- 133 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# git-workflow-hermes The generic `git-workflow` skill (in this repo, deliberately **not** installed alongside this one) is written for harnesses that can drive an interactive terminal (Claude Code with a pre-unlocked gpg-agent, a human shell). A Hermes session cannot: its terminal is non-interactive, so any git command that blocks on a prompt hangs the whole turn. This skill is that same workflow with those two failure classes removed. Everything not mentioned here is unchanged — read the generic skill for the branching model and MR checklist. ## Precedence Where this skill and `git-workflow` disagree, **this skill wins**: | Topic | Generic `git-workflow` | Here | | --- | --- | --- | | Commit signing | Signed commits expected; warm the cache, pre-unlock, `git-gpg-precheck` hook | **Never sign. Signing is off globally and stays off.** | | Splitting a commit | `git add -p` / `git add -i` | Explicit paths only — `-p`/`-i` are interactive | | History cleanup | `git rebase -i` | Scripted `GIT_SEQUENCE_EDITOR`, or `--fixup` + autosquash | | Commit message | implied editor use | Always `-m` / `-F` / `--no-edit` | ## Commit signing: never Hermes does not sign commits, tags, or merges. `commit.gpgsign` is `false` in the global config and Hermes must leave it that way. **Never:** - pass `-S` / `--gpg-sign` to `commit`, `tag`, `merge`, `cherry-pick`, `revert`, `rebase` - pass `-c commit.gpgsign=true` or `-c tag.gpgsign=true` - run `git config` to set `commit.gpgsign`, `tag.gpgsign`, `user.signingkey` or `gpg.format` — globally or in a repo - try to warm or flush gpg-agent's cache (`gpg --clearsign`, `gpg-connect-agent clear_passphrase`, the `gpg-rewarm` helper from the generic skill). Those scripts unlock the key by triggering pinentry — which is exactly the prompt a Hermes terminal cannot display. They are for the human's own shell, not here. **Why this is not a cop-out:** gpg-agent's pinentry needs a TTY it can draw on. Hermes' terminal has none, so a signed git operation does not fail — it hangs indefinitely, the turn times out, and the work in progress is lost. The 24h passphrase cache documented in the generic skill only papers over this: it makes signing *usually* work and then hangs unpredictably whenever the cache expired or the wrong key was warmed. Unsigned commits from Hermes are expected, not a defect. `git log --format='%G?'` returning `N` on Hermes-authored commits is normal — do not report it as a problem and do not set out to "fix" it. ### When a repo actually requires signed commits If the target repo (or CI) enforces signed commits, **do not sign and do not silently work around it**: - Do not commit with `--no-gpg-sign` or a local `commit.gpgsign=false` override just to get past it — that hides a deliberate policy and produces a branch that will fail the check anyway. - Stop, and report to the user which commit/branch needs signing, so they can make it from their own shell with the passphrase cache warm. A local `commit.gpgsign = true` found in a repo is a human decision, not an invitation to enable signing in this session. ## No interactive prompts `core.editor` is `vim` here. Any git command that would open an editor or a picker waits forever in a Hermes terminal. Always: ```bash git commit -m "[#123] Fixed the delete button" # or -F <file> git commit --amend --no-edit # keep the existing message git merge --no-edit <branch> git cherry-pick -x <sha> # -x, no editor git revert --no-edit <sha> GIT_EDITOR=true git rebase --continue # never bare `rebase --continue` ``` Non-interactive equivalent for the prompt-driven commands: ```bash # Instead of `git add -p <file>`: stage the whole file, or split the change # into separate files/commits first. There is no non-interactive patch picker. git add path/to/file.ts # Instead of `git rebase -i <base>`: script the sequence editor. GIT_SEQUENCE_EDITOR='sed -i "1s/^pick/fixup/"' git rebase -i <base> ``` Avoid entirely: `git add -p`, `git add -i`, `git rebase -i` without a `GIT_SEQUENCE_EDITOR`, `git commit` without `-m`/`-F`, `git tag -a` without `-m`, and `git clean -i`. ## Commits Format, rules, tense and atomicity: unchanged from the generic skill — `[<issueRef>] <Description>`, atomic and revertible, dedicated refactor commits, title-only, English, no Conventional Commits prefixes. The one rule that changes in practice: split a mixed change with `git add <path>` and several commits (or by rewriting the change), not with an interactive hunk picker. ## Branching Unchanged — pick the source branch from the repo's deployment model (`main` / staged `dev`+`main`), name branches `<type>/<short-kebab-description>` with the optional issue prefix, and target `main` for hotfixes, the default/staging branch for everything else. ## Pulling & rebasing Unchanged — keep history linear, `git pull --rebase` or `--ff-only`, rebase onto the target branch before opening and before merging the MR, push at least daily, prefer `git cherry-pick` over merging a sibling branch. ## MR/PR preparation Unchanged — typecheck + lint + tests before pushing, bracketed issue ref in the
From Clovel/custom-ai-skills, MIT.
More from Clovel/custom-ai-skills
- 0.566score
hermes-code-delegation
Clovel
Routes all codebase work to the Claude Code CLI instead of the agent's own file tools, and picks the model the task warrants.
SkillAFreshness: AClaude Code +9 - 0.560score
hermes-claude-code-tmux
Clovel
Required procedure for a Hermes agent invoking the Claude Code CLI.
SkillAFreshness: AClaude Code +9 - 0.529score
git-workflow
Clovel
Git branching, commits, GPG signing, and merge request workflow.
SkillBFreshness: BClaude Code +9 - 0.474score
review-mr
Clovel
Lightweight local code review for diffs, branches, and GitLab merge requests.
SkillCFreshness: CClaude Code +9 - 0.473score
docker-patterns
Clovel
Dockerfile and docker-compose best practices.
SkillCFreshness: CClaude Code +9 - 0.410score
nestjs-paginated-list-routes
Clovel
Use when adding, reviewing, or fixing paginated GET list endpoints in a NestJS + Prisma + nestjs-zod backend.
SkillDFreshness: DClaude Code +9 - 0.409score
k8s-ops
Clovel
Kubernetes troubleshooting, deployment, and operations.
SkillDFreshness: DClaude Code +9 - 0.409score
ansible-ops
Clovel
Ansible playbook, inventory, and task conventions.
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 16, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Clovel/custom-ai-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Clovel
- 0.566score
hermes-code-delegation
Clovel
Routes all codebase work to the Claude Code CLI instead of the agent's own file tools, and picks the model the task warrants.
SkillAFreshness: AClaude Code +9 - 0.560score
hermes-claude-code-tmux
Clovel
Required procedure for a Hermes agent invoking the Claude Code CLI.
SkillAFreshness: AClaude Code +9 - 0.529score
git-workflow
Clovel
Git branching, commits, GPG signing, and merge request workflow.
SkillBFreshness: BClaude Code +9 - 0.474score
review-mr
Clovel
Lightweight local code review for diffs, branches, and GitLab merge requests.
SkillCFreshness: CClaude Code +9 - 0.473score
docker-patterns
Clovel
Dockerfile and docker-compose best practices.
SkillCFreshness: CClaude Code +9 - 0.410score
nestjs-paginated-list-routes
Clovel
Use when adding, reviewing, or fixing paginated GET list endpoints in a NestJS + Prisma + nestjs-zod backend.
SkillDFreshness: DClaude Code +9
Cite this page
git-workflow-hermes skill. Agent Mart. https://agentmart.dev/skills/clovel-git-workflow-hermes (last updated 2026-10-24)