← ClaudeAtlas

ait-gitlisted

Git commands for aitasks/aiplans directories — use ./ait git instead of plain git
beyondeye/aitasks · ★ 8 · Code & Development · score 68
Install: claude install-skill beyondeye/aitasks
## Git Operations on Task/Plan Files When running git commands that operate on files in `aitasks/` or `aiplans/` directories, **always use `./ait git` instead of plain `git`**. This ensures correct branch targeting when task data lives on a separate `aitask-data` branch. ### Usage ```bash ./ait git add aitasks/t42_foo.md ./ait git commit -m "ait: Update task t42" -- aitasks/t42_foo.md ./ait git push ./ait git status ``` **The `-- <path>` is not optional.** `./ait git` is `task_git` in a subprocess, so a `commit` with no pathspec commits the **entire** `.aitask-data` index — and that index is shared by every session on the machine. Whatever a concurrent session has staged at that instant lands in your commit, under a message naming your task. ### Scoped commits: prefer the helper For task and plan files, prefer: ```bash ./.aitask-scripts/aitask_task_commit.sh -m "ait: Update task t42" aitasks/t42_foo.md ``` It replaces the `add` + `commit` pair. It stages only paths git does not track yet (an `add` of a **tracked** path would replace the index entry another session staged for it), unstages exactly those again if the commit fails, and refuses any path outside `aitasks/`/`aiplans/`. It never pushes — `./ait git push` stays a separate step. <a id="helper-outcome-contract"></a> **Outcome contract — read the whole output, and branch on the exit status; the status is the authority.** | Exit | Meaning | |---|---| | 0 | Committed. `COMMITTED:<n>:<subject>` | | 2 | Nothing co