Git stages files. rgit stages symbols.
Naming auth.go:ValidateToken commits that one function and leaves every other edit uncommitted. No line numbers, no git add -p.
cd /some/git/repo
rgit diff
rgit commit -m "fix(auth): reject expired" auth.go:ValidateTokenBuild and runbook: HUMANS.md.
- Symbol anchors —
FILE:NAMEaddresses a function, method, type, or const;@imports,@header,@toplevelreach regions no symbol owns. - Bare positionals — mix symbols and paths, every git pathspec form, no flags required.
- Closed loop —
rgit diffemits exactly the anchorsrgit commitconsumes. - Verified extents — tree-sitter resolves; a language server cross-checks; mismatch hard-fails on
commit. - Git semantics — git exit codes, pathspecs, hooks, and config throughout.
- Eleven grammars ship — SQL behind
rgit_sqltag; anything else stages by path (docs/LIMITATIONS.md).
| Document | Contents |
|---|---|
| HUMANS.md | Run and use: install, usage, degraded mode |
| docs/INSTALL.md | Build, language servers, env vars, verify, uninstall |
| docs/USAGE.md | Commands, argument grammar, flags |
| docs/ANCHORS.md | Anchor syntax, extents, special paths |
| docs/CODES.md | Exit codes and --porcelain formats |
| docs/LIMITATIONS.md | What rgit does not do |
| AGENTS.md | Internals, invariants, delegation boundary |
| CONTRIBUTING.md | Commits, tests, dependency policy |
| CHANGELOG.md | Release notes |
| SECURITY.md | Vulnerability reporting |
MIT © Rethunk.Tech