@kurokeita/add-skill 1.10.1 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create a GitHub Pull Request for the current branch following project standards. Use when preparing a PR, generating PR title/body, validating branch state, and running the project's configured lint and type-check commands before `gh pr create`.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /pr - GitHub Pull Request
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
This command prepares and creates a GitHub Pull Request for the current branch.
|
|
14
|
+
|
|
15
|
+
It must validate the branch state, run the project's configured quality checks, generate a professional PR title/body, and only then create the PR.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Critical Rules
|
|
20
|
+
|
|
21
|
+
1. **Never create a PR from `main`**
|
|
22
|
+
2. **Never create a PR with no commits relative to `main`**
|
|
23
|
+
3. **Always run the project's configured lint command before creating the PR**
|
|
24
|
+
4. **Always run the project's configured type-check command before creating the PR**
|
|
25
|
+
5. **Stop and report the failure if linting or type checking fails**
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Validation Order
|
|
30
|
+
|
|
31
|
+
1. **Confirm branch state**
|
|
32
|
+
- Run `git branch --show-current`
|
|
33
|
+
- Refuse to continue if the current branch is `main`
|
|
34
|
+
|
|
35
|
+
2. **Confirm there is work to merge**
|
|
36
|
+
- Run `git log main..HEAD --oneline`
|
|
37
|
+
- Refuse to continue if there are no commits
|
|
38
|
+
|
|
39
|
+
3. **Discover project validation commands**
|
|
40
|
+
- Inspect project scripts and config first, such as `package.json`, `Makefile`, `justfile`, `cargo`, or other repo-standard task runners
|
|
41
|
+
- Prefer explicit project commands over guessed generic commands
|
|
42
|
+
|
|
43
|
+
4. **Run linting**
|
|
44
|
+
- Use the project's configured lint command
|
|
45
|
+
- Example for this repository: `pnpm run lint`
|
|
46
|
+
|
|
47
|
+
5. **Run type checking**
|
|
48
|
+
- Use the project's configured type-check command if one exists
|
|
49
|
+
- If no dedicated script exists but the project is TypeScript-based, run the established repo equivalent that performs type checking
|
|
50
|
+
- Example for this repository: `pnpm exec tsc --noEmit`
|
|
51
|
+
|
|
52
|
+
6. **Push branch**
|
|
53
|
+
- Run `git push -u origin $(git branch --show-current)` after validations pass
|
|
54
|
+
|
|
55
|
+
7. **Create PR**
|
|
56
|
+
- Run `gh pr create --base main --title "<title>" --body "<body>" {{args}}`
|
|
57
|
+
- Include `--draft` when the work is incomplete or requested in `$ARGUMENTS`
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## PR Content Requirements
|
|
62
|
+
|
|
63
|
+
### Title
|
|
64
|
+
|
|
65
|
+
- Use a semantic title such as `feat: ...`, `fix: ...`, `chore: ...`, or `docs: ...`
|
|
66
|
+
- Match the actual change scope
|
|
67
|
+
|
|
68
|
+
### Body
|
|
69
|
+
|
|
70
|
+
Include these sections:
|
|
71
|
+
|
|
72
|
+
1. **Summary**
|
|
73
|
+
- Concise explanation of the purpose of the PR
|
|
74
|
+
|
|
75
|
+
2. **Key Changes**
|
|
76
|
+
- Bulleted list of the most important code changes
|
|
77
|
+
|
|
78
|
+
3. **Verification**
|
|
79
|
+
- Automated: list the lint and type-check commands that were run and whether they passed
|
|
80
|
+
- Manual: briefly describe any manual verification performed
|
|
81
|
+
|
|
82
|
+
4. **Related Tracks**
|
|
83
|
+
- Reference relevant track information from `conductor/tracks.md` when applicable
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Command Context
|
|
88
|
+
|
|
89
|
+
Gather this context before writing the PR:
|
|
90
|
+
|
|
91
|
+
- Current branch: `git branch --show-current`
|
|
92
|
+
- Commits relative to `main`: `git log main..HEAD --oneline`
|
|
93
|
+
- Diff summary: `git diff main..HEAD --stat`
|
|
94
|
+
|
|
95
|
+
Use that information to write a PR description that reflects the actual technical changes.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Output Format
|
|
100
|
+
|
|
101
|
+
```markdown
|
|
102
|
+
## PR Ready
|
|
103
|
+
|
|
104
|
+
### Title
|
|
105
|
+
feat: short, accurate summary
|
|
106
|
+
|
|
107
|
+
### Body
|
|
108
|
+
## Summary
|
|
109
|
+
...
|
|
110
|
+
|
|
111
|
+
## Key Changes
|
|
112
|
+
- ...
|
|
113
|
+
|
|
114
|
+
## Verification
|
|
115
|
+
- Automated: `pnpm run lint` ✅
|
|
116
|
+
- Automated: `pnpm exec tsc --noEmit` ✅
|
|
117
|
+
- Manual: ...
|
|
118
|
+
|
|
119
|
+
## Related Tracks
|
|
120
|
+
- ...
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
If validation fails, report the failing command and do not create the PR.
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Usage Examples
|
|
128
|
+
|
|
129
|
+
```text
|
|
130
|
+
/pr
|
|
131
|
+
/pr --draft
|
|
132
|
+
/pr --draft --assignee @me
|
|
133
|
+
/pr --label bug
|
|
134
|
+
```
|