When you open a project after a break or switch branches, this reconstructs what you were doing from commit history. It parses structured commit metadata (intent, decision, rejected, constraint, learned) and turns it into a dense briefing. The output tells you what's being built, what approaches were rejected, and what constraints matter, so you don't waste time re-exploring dead ends. Works across four scenarios: feature branches with or without commits, and the default branch with or without uncommitted changes. If your commits don't include the structured metadata, it falls back to conventional commit subjects and still gives you useful orientation. Best used at session start or when context-switching between branches.
- skills.sh installs
- 291
- GitHub stars
- 156
- last updated
- Aug 21, 2026
Install
$ npx -y skills add berserkdisruptors/contextual-commits --skill recall --agent claude-codeInstalls into .claude/skills of the current project.
Files
Context Recall
Reconstruct the development story from contextual commit history and present it as a natural briefing.
Argument Detection
Check how recall was invoked:
- No arguments — run the default mode (full branch/session briefing below).
- Bare word (e.g.
recall auth) — treat as a scope query. Jump to Scope Query. word(word)pattern (e.g.recall rejected(auth)) — treat as an action+scope query. Jump to Action+Scope Query.
Default Mode (no arguments)
Step 1: Detect Branch State
Determine the working state:
CURRENT_BRANCH=$(git branch --show-current)
DEFAULT_BRANCH=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@' || echo "main")
# Find the actual parent branch, not just the repo default.
# Try upstream tracking branch first (fast path).
BASE_BRANCH=$(git rev-parse --abbrev-ref @{upstream} 2>/dev/null | sed 's|^origin/||')
Sponsors
Details
- Repository
- github.com/berserkdisruptors/contextual-commits
- First seen
- Jun 3, 2026
