Submit git-branchless stack as PRs - create branches and push to remote
55
62%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./plugins/git-workflow/skills/bl-submit/SKILL.mdCategory: Git Workflow
Submit commits from your stack as pull requests. Creates branches, pushes to remote, and guides stacked PR configuration.
/bl-submit [options]| Option | Description |
|---|---|
| (none) | Submit current commit (creates branch if needed) |
--all | Create branches and submit entire stack |
--update | Update all existing PR branches |
<name> | Specify branch name for current commit |
# Submit current commit with auto-generated branch name
/bl-submit
# Submit current commit with custom branch name
/bl-submit pr/user-authentication
# Submit entire stack (creates branches for all commits)
/bl-submit --all
# Update all existing PRs after changes
/bl-submit --updateThis command delegates to the bl-submit-expert agent:
Task(subagent_type="git-workflow:bl-submit-expert",
prompt="Execute submit: <options>")Verify Prerequisites
Show Current State
git sl to display stack with branchesExecute Submission
Guide PR Configuration
Confirm Result
git slUser: /bl-submit pr/user-auth
Agent: Submitting current commit...
Current position:
● def5678 feat: add user authentication
Creating branch...
git switch -c pr/user-auth
Pushing to remote...
git submit -c @
✓ Branch pr/user-auth pushed to origin
◆ abc1234 (main) initial commit
┃
● def5678 (ᐅ pr/user-auth) feat: add user authentication
You can now create a PR on GitHub:
Base: main
Compare: pr/user-authUser: /bl-submit --all
Agent: Submitting entire stack (3 commits)...
◆ abc1234 (main) initial commit
┃
◯ def5678 feat: add User class
┃
◯ ghi9012 feat: add validation
┃
● jkl3456 feat: add repository
[1/3] Creating branch at "feat: add User class"...
git switch -c pr/user-class
git submit -c @
✓ pr/user-class pushed
[2/3] Creating branch at "feat: add validation"...
git switch -c pr/validation
git submit -c @
✓ pr/validation pushed
[3/3] Creating branch at "feat: add repository"...
git switch -c pr/repository
git submit -c @
✓ pr/repository pushed
◆ abc1234 (main) initial commit
┃
◯ (pr/user-class) feat: add User class
┃
◯ (pr/validation) feat: add validation
┃
● (ᐅ pr/repository) feat: add repository
All 3 branches pushed!
Create stacked PRs on GitHub:
┌─────────────────┬──────────────────┐
│ Branch │ Base Branch │
├─────────────────┼──────────────────┤
│ pr/user-class │ main │
│ pr/validation │ pr/user-class │
│ pr/repository │ pr/validation │
└─────────────────┴──────────────────┘User: /bl-submit --update
Agent: Updating all PR branches...
Branches to update:
- pr/user-class
- pr/validation
- pr/repository
Running git submit...
pr/user-class: abc123 → def456 (force-pushed)
pr/validation: ghi789 → jkl012 (force-pushed)
pr/repository: mno345 → pqr678 (force-pushed)
All 3 PR branches updated.
GitHub PRs will show new changes automatically.When you submit a stack, you create stacked PRs on GitHub:
Commit Stack GitHub PRs
───────────── ──────────
pr/repository → PR #3: base = pr/validation
↓
pr/validation → PR #2: base = pr/user-class
↓
pr/user-class → PR #1: base = main
↓
mainImportant: On GitHub, set each PR's base branch to its parent branch, not main. This ensures reviewers see only the diff for that specific commit.
After a PR is merged:
/bl-sync --after-merge to clean up/bl-submit --update to push changes| Error | Resolution |
|---|---|
| No remote configured | git remote add origin <url> |
| "Skipped - not on remote" | Use /bl-submit (creates with -c) |
| Branch already exists | Delete old: git branch -D <name> |
| Force-push rejected | Check repo branch protection |
| Detached HEAD | Creates branch automatically |
0ebe7ae
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.