Skip to content

Commit f715bb6

Browse files
chore: update jules-pr-manager skill instructions
1 parent 7c75799 commit f715bb6

File tree

1 file changed

+23
-15
lines changed

1 file changed

+23
-15
lines changed

.gemini/skills/jules-pr-manager/SKILL.md

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: Jules PR Manager
33
description: Manage Google Jules PR lifecycle - batch investigation, reverse-order processing, and tiered decision presentation.
4-
version: 2.0.0
4+
version: 2.1.0
55
---
66

77
# Jules PR Manager
@@ -12,14 +12,15 @@ version: 2.0.0
1212

1313
This skill orchestrates a **Batch-Analyze-Present-Execute** loop. It strictly prioritizes **finishing work** (merging) before **starting work** (vetting) and aggregates trivial decisions to minimize user round-trips.
1414

15-
**Core Principle**: **Investigate ALL PRs in one turn.** Log their state, collect decisions, and present them in a tiered manner (Merge -> Vetting -> Trivial Batch).
15+
**Core Principle**: **Investigate ALL PRs in one turn.** Log their state, collect decisions, and present them in a tiered manner (Merge -> Vetting -> Trivial Batch). Always fetch PR activity using `gh pr view <ID> --json reviews,comments,commits` to ensure a high-fidelity understanding of the current state before presenting decisions. Vetting requests MUST be presented **one at a time** for focused consideration. Always include `@jules` in review comments to Jules for better context.
1616

1717
## State Machine (Reverse Order)
1818

1919
Process PRs in this order (Closest to Merge first):
2020

2121
### 1. Merge Candidates (The Exit)
2222

23+
- **Definition**: PRs that have already been vetted and are now ready for a final merge decision.
2324
- **State**: `copilot-review` (Approved) or `changes-requested` (Resolved).
2425
- **Conditions**:
2526
- **Ready to Merge**: Copilot Approved AND CI Passed AND No Conflicts.
@@ -47,6 +48,7 @@ Process PRs in this order (Closest to Merge first):
4748

4849
### 4. New PRs (Unvetted / No Labels)
4950

51+
- **Definition**: PRs that have just been created and require an initial assessment of whether the work is worth doing.
5052
- **Conditions**: Missing `jules:vetted`.
5153
- **Logic**:
5254
1. **Duplicate Detection**:
@@ -55,8 +57,8 @@ Process PRs in this order (Closest to Merge first):
5557
- **Merge Changes**: If losers have good parts, post review on Keeper requesting them.
5658
- **Close Losers**: Mark as duplicates.
5759
2. **Vetting**:
58-
- Short Code Review: Is this worth doing?
59-
- **Action**: Present **Vetting Decision** (Approve/Close).
60+
- Short Code Review: Is this worth doing? Provide 2x detail on the rationale, pros/cons, and impact.
61+
- **Action**: Present **Vetting Decision** (Approve/Close) **individually**.
6062

6163
### 5. Exceptions
6264

@@ -71,39 +73,45 @@ Process PRs in this order (Closest to Merge first):
7173

7274
- Fetch state of **ALL** open Jules PRs in one command.
7375
- Iterate through all PRs.
76+
- For each PR, fetch detailed activity: `gh pr view <ID> --json reviews,comments,commits`.
7477
- Maintain a **Log** of each PR's status and proposed actions for this turn.
7578

7679
### 2. Decision Collection
7780

7881
- **Merge Decisions**: Collect full context for PRs ready to merge.
79-
- **Vetting Decisions**: Collect full context (description, duplicates, opinion) for new PRs.
82+
- **Vetting Decisions**: Collect full context (description, duplicates, opinion with deep rationale) for new PRs.
8083
- **Trivial Decisions**: Collect simple actions (Label changes, Reposting comments, CI fixes) into a batch list.
8184

8285
### 3. Tiered Presentation
8386

8487
Present the collected decisions to the User in this **EXACT** order:
8588

86-
1. **Merge Decisions** (One at a time, strictly first).
87-
2. **Vetting Decisions** (One at a time).
88-
3. **Trivial Batch** (Presented as a numbered list for bulk approval).
89+
1. **Merge Decisions**: Present each ready-to-merge PR one by one.
90+
2. **Vetting Requests**: Present each new vetting request **one at a time**. Include detailed pros/cons and why the work is valuable.
91+
3. **Trivial Batch**: Presented as a numbered list for bulk approval.
8992

9093
### 4. Batch Execution
9194

9295
- Execute **ALL** approved actions in a single batch of commands/requests.
96+
- **Backgrounding**: Run `gh` commands in the background (using `&`) whenever possible to avoid blocking the CLI and improve perceived responsiveness.
9397

9498
---
9599

96100
## ⚠️ Critical Interaction Rules
97101

98-
**Jules ignores regular comments.** You must use **Reviews** to trigger action.
102+
**Jules ignores regular comments.** You must use **Reviews** to trigger action. Always reference `@jules` in the review body.
99103

100104
- **Requesting Changes**:
101105
```bash
102-
gh pr review <ID> --request-changes --body "..."
106+
gh pr review <ID> --request-changes --body "@jules ..."
103107
```
104108
- **Approving**:
105109
```bash
106-
gh pr review <ID> --approve --body "..."
110+
gh pr review <ID> --approve --body "@jules ..."
111+
```
112+
- **Merging**:
113+
```bash
114+
gh pr merge <ID> --squash --delete-branch
107115
```
108116
- **DO NOT USE**: `gh pr comment` for instructing Jules. (Only use it for your own notes or if reposting Copilot comments _specifically_ as part of a review chain, but even then, a Review is preferred).
109117

@@ -125,14 +133,14 @@ Present the collected decisions to the User in this **EXACT** order:
125133
**Action**: Merge? (y/n/close)
126134
```
127135

128-
### 2. Vetting Decision (Priority 2)
136+
### 2. Vetting Request (Priority 2)
129137

130138
```markdown
131-
## 🛡️ Vetting Request: PR #<ID>
139+
## 🛡️ Initial Vetting: PR #<ID>
132140

133141
**Title**: <Title>
134142
**Summary**: <Description>
135-
**Worth it?**: <Agent Opinion>
143+
**Worth it?**: <Detailed Agent Opinion: Why is this work valuable? What are the specific pros and cons? What is the architectural impact?>
136144
**Duplicates**: <None | Closed #X, #Y>
137145

138146
**Action**: Vet & Process? (y/n/close)
@@ -167,7 +175,7 @@ gh pr list \
167175

168176
- **Duplicate Diffing**: `gh pr diff <ID> > a.diff && gh pr diff <OTHER> > b.diff && diff -u a.diff b.diff`
169177
- **Get Comments**: `gh api repos/:owner/:repo/pulls/<ID>/reviews/<REVIEW_ID>/comments`
170-
- **Review**: `gh pr review <ID> --request-changes --body "..."
178+
- **Review**: `gh pr review <ID> --request-changes --body "@jules ..."
171179

172180
---
173181

0 commit comments

Comments
 (0)