Skip to content
cccskills
FreePublished on GitHub

git

Show uncommitted changes and commit history via git. Use when: (1) inspecting what changed in a file before committing, (2) checking diff of tracked/new/deleted files, (3) reviewing a specific commit's changes, (4) listing files changed in a commit.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md4.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Git

Use native, non-interactive git commands to inspect changes. Run them from the repository root and keep path lists explicit so unrelated user work stays out of a commit. In an interactive terminal prefix --no-pager (git --no-pager show <commit>); piped output is never paged.

Inspect working-tree changes

git status --short
git diff --check
git diff --stat
git diff -- <tracked-file> [tracked-file ...]
git diff --no-index -- /dev/null <new-untracked-file>

Before committing, inspect every intended tracked file and every intended new file. Do not stage unrelated untracked files merely because they appear in git status.

Non-zero exit codes are data, not failures: git diff --check exits 2 when it finds whitespace errors, and git diff --no-index exits 1 when the two sides differ (0 when identical).

17 vendored libraries under src/ext/ are git submodules, so a touched one shows up as M src/ext/<name> (the remaining src/ext/ entries are ordinary tracked files/dirs). Read a pointer change with git diff --ignore-submodules=none -- src/ext/<name>, hide these entries with git diff --ignore-submodules=all, list them with git submodule status, and never stage a src/ext/* gitlink unless updating it is the task.

Inspect commits

git show --stat --oneline <commit>
git show --format=fuller --find-renames <commit> -- <path> [path ...]
git diff <commit>^ <commit> -- <path> [path ...]

For a root commit, use git show <commit> because <commit>^ does not exist. Use git diff --name-status when only the changed-file inventory is needed.

For a merge commit, plain git show prints only the combined diff (files that differ from every parent), which usually looks nearly empty. Count parents with git rev-list --parents -n1 <commit>, then read per-parent changes with git show -m --stat --oneline <commit> or first-parent changes with git diff --stat <commit>^1 <commit> -- <path>.

update_sha256 — DX SDK zip update

Update the DX SDK zip name and its SHA256 pin in the two files that record them, via scripts/update_sha256.py (only scripts/sdks.cmake carries the hash).

python scripts/update_sha256.py [zip_name]

Behavior

ArgEffect
zip_name givenUses SDKs/<zip_name> as the local zip; must exist.
zip_name omittedParses zip name from LUISA_COMPUTE_DX_SDK in scripts/sdks.cmake.

Computes SHA256 of the local zip, then updates:

FileWhat changes
scripts/sdks.cmakeLUISA_COMPUTE_DX_SDK (URL + SHA256 as one CMake list)
scripts/find_sdk.luaname field under dx_sdk entry

Examples

# Provide zip name explicitly
python scripts/update_sha256.py dx_sdk_20260815.zip

# Auto-detect the zip name from scripts/sdks.cmake
python scripts/update_sha256.py

Notes

  • Zip must live under SDKs/ relative to repo root (the parent of scripts/).
  • Skips files not found with a warning (non-fatal) — see the exit-1 cases below.
  • No-op if all values are already up-to-date.
  • Write recipe, not inspection: it rewrites both files in place, and the URL written into sdks.cmake is always https://github.com/LuisaGroup/SDKs/releases/download/sdk/<zip_name>.
  • DX SDK only: the vk_sdk entry in scripts/find_sdk.lua and LUISA_COMPUTE_VK_SDK_DOWNLOAD_URL / LUISA_COMPUTE_VK_SDK_SHA256 in src/backends/vk/CMakeLists.txt are left untouched and must be edited by hand.
  • There is no --dry-run; only the first argument is read, so trailing arguments are silently ignored (--dry-run alone fails as an invalid zip name).
  • A missing SDKs/<zip>, a name without the .zip suffix, or an unparsable LUISA_COMPUTE_DX_SDK prints [ERROR] ... and exits 1. The non-fatal [WARN] skip only applies to a missing scripts/find_sdk.lua (or a missing scripts/sdks.cmake when a zip name is given); with no argument a missing scripts/sdks.cmake is fatal.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

ast

Free

Manual AST construction with FunctionBuilder for kernels and callables without DSL sugar.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

Backend plugin architecture, DeviceInterface, dynamic loading, and command encoding.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

cmake

Free

CMake build options, custom functions, and backend patterns for LuisaCompute.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

C++ naming, formatting, static analysis, and RTTI rules for LuisaCompute.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

debug

Free

Debug crashes and test failures via stack-traces, host/device logging, DSL buffer inspection, and add_debug_checks kernel restrict-mode guards.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

glslang SPIR-V Builder API for types, instructions, control flow, and decorations.

The English summary is being prepared. Showing the original description.

LuisaGroup/LuisaCompute1.1KUpdated Oct 18, 2026

See all skills by LuisaGroup

Report a problem with this skill