git-backed references — a compact string format for pointing at content in a remote git-hosted repository.
owner/repo@ref:name
gref is the shorthand you already type in chat and CLIs, written down as a small, portable grammar tools can share.
kzu/sandbox
kzu/[email protected]:src/hello.cs
kzu/sandbox@main:src/
kzu/skills@main:code-review
github.com/kzu/sandbox@main:program.cs
gist.github.com/kzu/0ac826dc7de666546aaedd38e5965381:run.cs
gitlab.com/kzu/runcs@main:program.cs
| Piece | Meaning |
|---|---|
host/ |
Optional forge (github.com, gitlab.com, gist.github.com, …) |
owner/repo |
Repository (or gist id) |
@ref |
Optional branch, tag, or commit (may include /, e.g. feature/foo) |
:name |
Optional file path, folder path (trailing /), or application-specific logical name (e.g. a skill looked up from catalog.json or a conventional folder) |
Omitted host, ref, or name are filled in by the application (many tools
default host to github.com).
The formal grammar and rules live in
gref.md. Published
releases are mirrored on gref.sh (homepage = latest),
with prior versions in the version menu.
gref is the remote-ref shape used by:
- go# — run file-based C# apps
locally or from a remote ref (
dnx go -- owner/repo@ref:name) - runfile — run C# programs from
GitHub, Gist, or GitLab refs (
dnx runfile owner/repo@ref:name)
Those tools may accept additional host-specific conveniences beyond the core format; the spec defines the portable string.
MIT — see license.txt.