gitlisted
Install: claude install-skill mifunedev/openharness
# Git Workflow
## Always Load This Skill
Any time a chat mentions git, GitHub, branches, commits, pushes, pulls, PRs,
issues, worktrees, merge conflicts, releases, changelog entries, or dirty
workspace cleanup, read this skill before acting. Treat it as the source of truth
for routing changes to the right remote and for preserving local work safely.
## Repository and Memory Routing
This checkout commonly has two remotes:
- `upstream` → `mifunedev/openharness` (public template/canonical upstream)
- `origin` → your fork of `openharness` (private/operator fork)
Before every commit or PR, inspect the changed paths and choose the remote
explicitly. Do not assume `origin` is the public target.
**Memory is private. Never commit memory artifacts to the public upstream repo.**
Anything under `.oh/memory/` — especially `.oh/memory/MEMORY.md`, dated session logs,
retro notes, and private lessons — belongs only in your private fork
(`origin`) unless the operator gives an explicit one-off exception. If a public
PR branch contains `.oh/memory/` changes, remove them before pushing/creating the PR,
and preserve them separately on an `origin`-only branch or PR.
Use this quick guard before pushing to `upstream`:
```bash
git diff --name-only upstream/development...HEAD | grep '^.oh/memory/' \
&& { echo "BLOCK: memory changes must go to origin only"; exit 1; }
```
## Issue Titles
Format: `<prefix>(<issue#>): <shortdesc>`
`<prefix>` ∈ `feat` · `bug` · `task` · `audit` · `skill` · `a