%APPDATA%\gixt~/.config/gixt~/Library/Application Support/gixtknown.json, trust.json, auth.json.meta.json per gist/revision):
%LOCALAPPDATA%\gixt~/.cache/gixt~/Library/Caches/gixtcache/<gist-id>/<sha>.304 and the cached copy is reused with zero file downloads. The ETag is stored in the cache meta.json.--no-cache (or GIXT_NO_CACHE) avoids the persistent content cache by using a temporary directory.--offline skips the network and runs the exact requested or pinned cached revision. It takes precedence over no-cache mode and prints a warning when both are requested.--ref <sha> runs a specific revision (downloaded on demand); a pinned gist runs its pin by default.gixt cache list: show cached gists and their latest revision.gixt cache prune: remove old revisions while retaining the latest and pinned revisions.gixt cache clear: delete all cached contents, including offline copies of pinned revisions; pin metadata remains.known.json stores the gists you’ve chosen to remember, so you can run them by name. An entry holds the gist id, owner, description, filenames, and an optional alias and pin. Name lookup matches the alias or the file basename/full name.
Commands:
gixt add <id|url|owner/gist> [--as <name>] — remember a single gist (custom name with --as).gixt add owner <login> — refresh an owner’s gists while preserving pins.gixt remove <target> — forget a gist.gixt add mine — remember all Gists owned by the authenticated user.gixt remove --owner <login> --yes — forget all of an owner’s local entries.gixt list — list remembered Gists.gixt list <owner> --limit 30 — list an owner’s remote Gists without remembering them.gixt pin <target> [<sha>] — validate and pin a gist revision; gixt run uses it by default.gixt pin list / gixt pin remove <target> / gixt pin clear — manage pins.Metadata updates never move a pin. Re-running gixt pin, or using pin remove/pin clear, changes it explicitly. Forgetting a known entry with remove or remove --owner also deletes its pin.
Running a gist does not auto-add it to known.json; use gixt run <target> --add (or --as <name>) to remember it, or gixt add explicitly.
gixt run --offline <name>.gixt pin <name>, then run by name; re-pin to move.gixt run --no-cache <name>.gixt run --python .venv/bin/python app.py.gixt run 1234abc --add, then gixt 1234abc by name next time.gixt add owner/script.py --as myscript.