Files
upstream-atomic-crm/.claude/commands/harness-diff.md
upstream-mirror 93ecc1a6f8
Some checks failed
✅ Check / 🔬 ESLint (push) Failing after 21s
✅ Check / 🏷️ Typecheck (push) Failing after 11s
✅ Check / 🔎 Test (push) Failing after 11s
✅ Check / e2e-test (push) Failing after 11s
✅ Check / 🔨 Build (push) Failing after 11s
🚀 Deploy / 🚀 Deploy (doc) (push) Failing after 12s
🚀 Deploy / 🚀 Deploy (demo) (push) Failing after 12s
🚀 Deploy / 🚀 Deploy (supabase) (push) Failing after 18s
snapshot of https://github.com/marmelab/atomic-crm.git (main, 2026-09-18; blobs > 131072B omitted)
2026-09-18 01:48:50 +05:00

1.6 KiB

description
description
Show what a harness session changed (the net diff of its work)

Show the net set of changes a harness session produced, then stop. This is read-only — never modify files or git state.

  1. Pick the session short id.

    • If the user passed a short id as an argument ($ARGUMENTS), use it directly.
    • Else, look for a <session_dir>…</session_dir> value in your context (injected at session start). If present, SESSION_SHORT_ID = the first dash-separated segment of its basename (e.g. /tmp/…/46bc14c5-13fb-498b-… → 46bc14c5). Confirm it with git show-ref --verify --quiet refs/heads/session/<short>; if the ref exists, use it.
    • Otherwise enumerate sessions: git for-each-ref --format='%(refname:short)' 'refs/heads/session/*'.
      • none → tell the user there is no harness session to inspect, and stop.
      • exactly one → use it.
      • several → list them and ask which with AskUserQuestion. For each, show its short id, its base branch (git config --local --get sessionbase.<short>.branch), and its fork date (git --no-pager log -1 --format=%cr session-base/<short>). A non-destructive default to the most recent is acceptable, but still show which one you picked.
  2. Show the diff (the session's net contribution, isolated from any other work on the branch):

    • summary first: git --no-pager diff --stat session-base/<short>..session/<short>
    • then full: git --no-pager diff session-base/<short>..session/<short>
  3. Summarize in plain terms what the session changed. Do not edit anything or run any history-mutating git command.