Co-author cleanup now removes a Claude or Codex Co-authored-by line together with the non-blank lines that follow it, removes any Claude-Session trailer line, and collapses the blank lines left behind. Other Co-authored-by lines are still removed individually.
3.0 KiB
Nexus
Nexus is a pure ANSI terminal UI for viewing and editing Git commit metadata, then applying rewritten history in a guided workflow.
Repository: https://github.com/andydixon/nexus
Features
- Launches in the current Git repository by default, or with
nexus /path/to/repo - Left-hand commit browser with hash, timestamp, author, and wrapped commit summary
- Right-hand commit editor for:
- author name, email, and date/time
- committer name, email, and date/time
- full commit message
- Keyboard-driven calendar and time picker for author and committer timestamps
- Opt-in bulk removal of
Co-authored-by:andClaude-Session:lines across commit messages; Claude and Codex attribution blocks are removed whole - Search commits by hash, message, author name, or email
- Bulk replace author names and emails using case-insensitive partial or exact matching
- Track edited commits and reset the selected commit
- Apply all staged metadata changes in one action
- Optionally force push rewritten branches and tags to
origin
Keyboard
Tab: move from the commit list into the form, then through each editable fieldShift+Tab: move backward through form fieldsUp/Down,PgUp/PgDn,Home/End: navigate commits/: search commitsb: bulk replace matching author names and emails;Ctrl+Ttoggles partial/exact matchingp: switch repository pathr: reload historyx: reset the selected commita: apply changesc: toggle bulk removal ofCo-authored-by:trailers andClaude-Session:linesf: toggle force pusht: toggle tag push?: show helpqorCtrl+C: quit
When an author or committer date field is focused, press Enter to open the date/time picker. Arrow keys adjust the day and hour, PgUp/PgDn adjust the month, +/- adjust by five minutes, and H/L adjust the year. Use t for now, z for local time, u for UTC, Enter to save, or Esc to cancel. Ctrl+T remains a quick shortcut for setting the focused date to now.
Apply Workflow
When you apply changes, Nexus:
- Checks that the selected repository is clean.
- Creates a backup tag (
nexus-backup-<timestamp>). - Applies timestamp, metadata, message, and optional co-author trailer changes.
- Rewrites history with
git filter-branchacross all refs. - Removes temporary rewrite references and runs repository cleanup.
- Optionally force pushes branches and tags using
--force-with-lease.
Force push requires an explicit FORCE confirmation in the terminal.
Run
go run . # open the current directory
go run . ~/repo # open a specific repository
If the launch directory is not a Git worktree, Nexus opens a path-entry screen instead of exiting.
Build
./build.sh
./bin/nexus
Safety
History rewriting changes commit hashes and can disrupt shared branches. Coordinate with collaborators before rewriting shared history or force pushing.
Licence
This project is proprietary software. It is not released under the MIT licence.