yp
yp — AI-Powered Git & Azure DevOps CLI
yp (YitPush) is a CLI tool that generates commit messages and PR descriptions using
configurable AI providers (OpenAI, Anthropic, Google Gemini, DeepSeek, OpenRouter),
and manages Azure DevOps work items.
Prerequisites
Check if yp is installed:
yp --help
If not installed:
dotnet tool install -g YitPush
Check if a provider is configured:
cat ~/.yitpush/config.json
If not configured (or file doesn't exist), run setup:
yp setup
Commit changes
Generate an AI commit message, stage all changes, commit, and push:
yp commit
With confirmation prompt before committing:
yp commit --confirm
Detailed commit (subject + body):
yp commit --detailed
Commit message in a specific language:
yp commit -l spanish
yp commit --language french
Save commit message to file:
yp commit --save
Generate PR description
Select source and target branches interactively, generate a description, and copy to clipboard:
yp pr
Detailed PR with summary, changes, files, and testing notes:
yp pr --detailed
PR description in a specific language:
yp pr -l spanish
yp pr --detailed -l french --save
Switch branches
Interactive branch selector:
yp checkout
Configure AI provider
First-time setup or to change provider/model/key:
yp setup
Supported providers: OpenAI, Anthropic, Google Gemini, DeepSeek, OpenRouter.
Config is saved to ~/.yitpush/config.json.
Azure DevOps — User Stories
Show User Story details:
yp azure-devops hu show <org> <hu-id>
List all tasks of a User Story:
yp azure-devops hu list <org> <project> <hu-id>
Create tasks for a User Story (interactive):
yp azure-devops hu task
Create tasks directly:
yp azure-devops hu task <org> <project> <hu-id> --description "Backend work" --effort "4"
Link a branch to a User Story:
yp azure-devops hu link <org> <project> <hu-id> --repo <repo-name> --branch <branch-name>
Azure DevOps — Tasks
Show task details:
yp azure-devops task show <org> <task-id>
Update task fields:
yp azure-devops task update <org> <task-id> --state "Doing"
yp azure-devops task update <org> <task-id> --effort "8" --effort-real "3" --remaining "5"
yp azure-devops task update <org> <task-id> --comment "Progress update"
Available --state values: To Do, Doing, Done, Active, Resolved, Closed.
Azure DevOps — Links & Repos
Add a branch/commit/PR link to any work item:
yp azure-devops link <org> <project> <work-item-id>
Create a new repository:
yp azure-devops repo new
Clone a repository interactively:
yp azure-devops repo checkout
Decision Guide
| User asks to... | Command |
|---|---|
| Commit my changes | yp commit |
| Commit and let me review first | yp commit --confirm |
| Write a detailed commit | yp commit --detailed |
| Generate a PR description | yp pr |
| Switch branches | yp checkout |
| Set up a new AI provider | yp setup |
| Show user story details | yp azure-devops hu show <org> <id> |
| List tasks of a user story | yp azure-devops hu list <org> <proj> <id> |
| Update a task's state | yp azure-devops task update <org> <id> --state "..." |
| Add a comment to a task | yp azure-devops task update <org> <id> --comment "..." |
| Link a branch to a user story | yp azure-devops hu link <org> <proj> <id> --repo <r> --branch <b> |