with one click
stack-test
Run tests or formatters across all commits in a stack
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Run tests or formatters across all commits in a stack
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Fetch and distill a repo's wiki, docs, and issues into a focused reference doc
Absorb staged changes into the correct commits in the current stack
Restructure a range of commits into a clean, atomic stack ordered by concern
Break a large commit into a reviewable stack of small atomic commits
Sync stack with main, run tests, and submit all branches to remote
| name | stack-test |
| description | Run tests or formatters across all commits in a stack |
| argument-hint | <command> [--fix] [--jobs N] [revset] |
Run a test command or formatter across commits in the current stack.
--fix: use fix mode (apply changes per commit, e.g., formatters)--jobs N: parallelism level (0 = auto-detect CPUs)stack())Check branchless init:
if [ ! -d ".git/branchless" ]; then git branchless init; fi
Parse arguments. If no command is provided, detect from the project:
package.json → npm test or pnpm testCargo.toml → cargo testMakefile → make testflake.nix → nix flake checkDetermine mode. If --fix is in arguments, use fix mode. Otherwise
use run mode.
Determine target revset. If a revset argument is provided, use it.
Otherwise default to stack().
Run tests across the stack:
git test run -x '<command>' '<revset>'
Add --jobs <N> if specified (uses worktree strategy automatically).
Default to --jobs 0 for parallel when the project supports it.
Report results:
git test run -x '<command>' --search binary to bisect if the
failure pattern is unclearApply formatter across the stack:
git test fix -x '<command>' '<revset>'
Add --jobs 0 for parallel execution. Fix mode replaces tree OIDs directly
and never produces merge conflicts.
Verify with git sl to show any commits that were modified.
Optionally re-run tests to confirm the formatting didn't break anything:
git test run -x '<test-command>' '<revset>'
/stack-test "npm test"
/stack-test "cargo fmt --all" --fix
/stack-test "prettier --write ." --fix --jobs 0
/stack-test "make lint" stack()
/stack-test "npm test" --jobs 4 draft()
git test clean to clear.--jobs >1 implies worktree strategy (concurrent git worktrees).BRANCHLESS_TEST_COMMIT env var is available inside the test command.