$npx -y skills add wednesday-solutions/ai-agent-skills --skill wednesday-gitUnified Git workflow. Manages the entire task lifecycle: branch creation (sprint), atomic commits (git-os), and PR opening (pr-create).
| 1 | # Wednesday Git Workflow (GIT-OS) |
| 2 | |
| 3 | This skill manages the complete lifecycle of a feature or fix. It ensures that every branch, commit, and PR follows the project's quality and automation standards. |
| 4 | |
| 5 | ## Lifecycle Phases |
| 6 | |
| 7 | ### 1. Starting a Task (`sprint`) |
| 8 | When a dev provides a ticket and wants to start working: |
| 9 | - **Action**: Create a branch following the `type/name` format (e.g., `feat/user-auth`). |
| 10 | - **Rule**: Max 40 characters, kebab-case, no ticket numbers in the branch name. |
| 11 | - **Tool**: `Bash(git checkout -b <branch_name>)` |
| 12 | |
| 13 | ### 2. Committing Changes (`git-os`) |
| 14 | When code is ready for an atomic commit: |
| 15 | - **Format**: `type(scope?): Description` (e.g., `feat(auth): Add login endpoint`). |
| 16 | - **Types**: `feat`, `fix`, `refactor`, `perf`, `docs`, `style`, `test`, `chore`. |
| 17 | - **Atomic Rule**: One logical change per commit. If you've done multiple things, split them into separate commits. |
| 18 | - **Human-Authored**: NEVER include AI attribution or fingerprints. |
| 19 | - **Linting**: Before committing, ensure `npx --no-install commitlint` would pass. |
| 20 | |
| 21 | ### 3. Opening a Pull Request (`pr-create`) |
| 22 | When the task is finished and ready for review: |
| 23 | - **Pre-Push Checklist**: Run `npm run lint`, `format:check`, `test`, and `build`. |
| 24 | - **Validation**: |
| 25 | - **Max 6 files per PR**: If the PR is larger, suggest splitting it. |
| 26 | - **Conventional Title**: Title must match `type(scope): Description`. |
| 27 | - **Metadata**: Extract ticket ID from branch name (e.g., `WED-142`). |
| 28 | - **PR Description Template**: |
| 29 | ```markdown |
| 30 | ### Ticket Link |
| 31 | --- |
| 32 | ### Description |
| 33 | --- |
| 34 | ### Steps to Test |
| 35 | --- |
| 36 | ### GIFs (if applicable) |
| 37 | --- |
| 38 | ``` |
| 39 | - **Push & Create**: |
| 40 | 1. `Bash(git push origin <branch>)` |
| 41 | 2. `Bash(gh pr create --title "<title>" --body "<body>")` using the template above. |
| 42 | |
| 43 | --- |
| 44 | |
| 45 | ## 🚫 Never |
| 46 | - **Direct Commits**: Never commit directly to `main` or `develop`. |
| 47 | - **Dirty History**: Never bundle multiple concerns into one commit. |
| 48 | - **Skip Checks**: Never open a PR without running the full pre-push checklist. |
| 49 | - **AI Fingerprints**: Never use "AI-generated" descriptions or co-author tags. |
| 50 | |
| 51 | ## ⚠️ Safety Thresholds |
| 52 | - **Risk > 80**: If the `codebase-intel` risk score is > 80, require explicit confirmation before pushing. |
| 53 | - **Quality Gate**: If Sonar is enabled and the quality gate fails, STOP — do not push. |
| 54 | |
| 55 | ## 🛠 Tools |
| 56 | - `Bash` for all `git` and `gh` operations. |
| 57 | - `Read` for `package.json` and `.wednesday/config.json` to check for project-specific automation. |