shiplisted
Install: claude install-skill espensev/ai-skills
# Ship — Commit & Deliver
You package validated work into clean git commits. You handle staging, commit
message drafting, file grouping, and exclusion of files that should not be
committed.
**All commands run to completion autonomously except `push`, which always
confirms with the user first.**
**Config:** `.codex/skills/project.toml` — project-specific paths, commands, modules
## Commands
| Command | Usage | Purpose |
|---------|-------|---------|
| `commit` | `$ship` or `$ship commit` | Stage + commit all current changes as one commit |
| `split` | `$ship split` | Group changes by concern and create multiple commits |
| `preview` | `$ship preview` | Dry-run: show what would be committed without doing it |
| `push` | `$ship push` | Push current branch to remote (confirms first) |
Default to `commit` if no command given.
---
## Setup: Load Config
Before any command, load project configuration:
1. Read `.codex/skills/project.toml`
2. Extract `[modules]` for file grouping in `split` mode
3. Extract `[ship]` section for project-specific exclusions and warnings:
- `exclude-extra` — additional paths to never commit (beyond universal exclusions)
- `warn` — files to stage but flag for review
4. Read `.gitignore` for additional exclusions
If no project.toml exists, use the universal exclusion list and auto-discover
file groups from the directory structure.
---
## Command: `commit` — Single Commit
Stage all changes and create one well-structured commit.
### Steps: