// Use when delegating async coding tasks to Jules AI. Helps create Jules sessions, monitor progress, and integrate results. Use for bug fixes, documentation, tests, or refactoring that can run in the background.
| name | jules-integration |
| description | Use when delegating async coding tasks to Jules AI. Helps create Jules sessions, monitor progress, and integrate results. Use for bug fixes, documentation, tests, or refactoring that can run in the background. |
Jules is Google's asynchronous AI coding agent. It runs tasks in the background on a cloud VM, clones your repo, and creates PRs with changes.
When to use Jules:
When NOT to use Jules:
export JULES_API_KEY="your-key-here"
curl 'https://jules.googleapis.com/v1alpha/sessions' \
-X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: $JULES_API_KEY" \
-d '{
"prompt": "YOUR TASK DESCRIPTION HERE",
"sourceContext": {
"source": "sources/github/OWNER/REPO",
"githubRepoContext": { "startingBranch": "main" }
},
"automationMode": "AUTO_CREATE_PR",
"requirePlanApproval": true
}'
npm install -g @google/jules
jules login
jules remote new --repo . --session "YOUR TASK"
Trigger the jules-review.yml workflow manually with your prompt.
Do:
parseQueryString in utils.js"src/auth/ directory"Don't:
Always use:
requirePlanApproval: true - Review before Jules actsautomationMode: "AUTO_CREATE_PR" - Creates PR, doesn't merge# List your sessions
curl 'https://jules.googleapis.com/v1alpha/sessions' \
-H "X-Goog-Api-Key: $JULES_API_KEY"
# Get session details
curl 'https://jules.googleapis.com/v1alpha/sessions/SESSION_ID' \
-H "X-Goog-Api-Key: $JULES_API_KEY"
# List activities (progress updates)
curl 'https://jules.googleapis.com/v1alpha/sessions/SESSION_ID/activities' \
-H "X-Goog-Api-Key: $JULES_API_KEY"
| Issue | Solution |
|---|---|
| "Source not found" | Connect repo at jules.google first |
| "401 Unauthorized" | Check API key is valid |
| Session stuck | Check jules.google for status; may need feedback |
| Bad PR | Reject plan, provide clearer instructions |