Overview
Jean deeply integrates with GitHub to streamline issue-driven development. You can browse issues, create worktrees from issues, open PRs, track CI status, and investigate workflow failures—all without leaving Jean. Prerequisites:- Repository must have a GitHub remote
- GitHub CLI (
gh) must be installed and authenticated - (Optional)
githubMCP server for enhanced API access
Setting Up GitHub Integration
Authenticate
Run
gh auth login and follow the prompts to authenticate with GitHub.Choose:- GitHub.com (or GitHub Enterprise if applicable)
- HTTPS protocol
- Login with web browser
gh auth status.(Optional) Enable GitHub MCP Server
For enhanced GitHub API access, install the GitHub MCP server:Add to Create a personal access token at https://github.com/settings/tokens with scopes:
~/.claude.json:repo(full control of private repositories)read:org(read org and team membership)
Issue-Driven Development Workflow
This is the recommended workflow for feature development and bug fixes.Browse Issues
Press
Cmd+M → Issues tab to see all open issues in your repository.You can:- Filter by label, milestone, or assignee
- Search by title or number
- Sort by created date, updated date, or comment count
Select an Issue
Click an issue to view:
- Title and number
- Full description
- All comments in chronological order
- Labels (bug, enhancement, etc.)
- Assignees and milestone
Create Worktree from Issue
Click Investigate Issue. Jean will:
- Generate a branch name from the issue title (e.g.,
fix-login-timeout-#123) - Create a worktree from the default branch
- Save issue context to
.github/issues/<number>.json - Start a chat session with a prompt to investigate the issue
- Link the issue number to the worktree (for later PR creation)
Work on the Issue
Claude will:
- Analyze the issue description and comments
- Explore the codebase to find relevant code
- Identify the root cause (or where to implement the feature)
- Propose a solution with specific file changes
Implement the Fix
Ask Claude to implement the solution. Claude will:
- Make code changes
- Run tests
- Verify the fix works
Cmd+G (git diff viewer).Commit Changes
Press
Cmd+Shift+C to open the commit dialog.Click Generate with AI to create a commit message. The message will reference the issue number automatically (e.g., “Fix login timeout (#123)”).Commit and push the changes.Create Pull Request
Press
Cmd+M → Open PR. Jean will:- Analyze commits and diff
- Generate a PR title and description
- Include “Fixes #123” in the PR body (to auto-close the issue on merge)
- Create the PR on GitHub
- Link the PR to your worktree
Address Review Feedback
If reviewers request changes:
- Press
Cmd+M→ Investigate PR - Jean will load the PR context (including review comments)
- Claude will summarize feedback and suggest fixes
- Implement changes, commit, and push
- PR updates automatically on GitHub
Pull Request Review Workflow
Jean helps you review PRs from others (or your own PRs from a different perspective).Browse Pull Requests
Press
Cmd+M → Pull Requests tab to see all open PRs.Filter by:- Status (draft, open, approved, changes requested)
- Author
- Base branch
- CI check status (passing, failing, pending)
Check Out PR
Click a PR and select Investigate PR. Jean will:
- Check out the PR branch (if not already)
- Create a worktree (if you don’t have one for this branch)
- Save PR context to
.github/pulls/<number>.json - Start a chat session with a prompt to review the PR
AI-Assisted Review
Claude will:
- Analyze what the PR is trying to accomplish
- Review the code changes
- Check for security issues (see Security Review Checklist)
- Summarize reviewer feedback (if any)
- Identify action items to get the PR merged
Run Code Review
Press
Cmd+M → Review Code to get structured feedback.The review panel shows:- Summary: Overview of changes
- Findings: Issues by severity (critical, warning, suggestion, praise)
- Approval Status: Approved, Changes Requested, or Needs Discussion
Test the Changes
Run the
jean.json run script (Cmd+R) to start the dev server or tests.Manually test the feature or bug fix.Leave Review Comments
If you find issues:
- Ask Claude to explain specific code sections
- Request alternative implementations
- Add review comments on GitHub (via web UI or
gh pr review)
Security Review Checklist
When reviewing PRs (especially from external contributors), Jean’s PR investigation includes a security checklist:Security Checklist Details
Security Checklist Details
Malicious or Obfuscated Code
eval(),Function(), or other code execution- Base64-encoded strings or hex-encoded data
- Hidden network calls or data exfiltration
- New dependencies with few downloads or recent creation
- Version changes to compromised packages (check npm advisories)
- Typosquatting (lodash vs. lodahs)
- API keys, tokens, passwords in code
- Credentials in config files (not .env.example)
- Private keys or certificates
- Reverse shells or remote access code
- Debug endpoints left in production code
- Disabled authentication checks
- SQL injection (unescaped user input in queries)
- Command injection (user input in shell commands)
- XSS (unescaped user input in HTML/JS)
- Path traversal (user input in file paths)
- Removed authentication or authorization checks
- Broadened permissions or access levels
- Disabled input validation or sanitization
- File system writes to unexpected locations
- Environment variable access for sensitive data
- Process spawning with user-controlled arguments
CI/CD Integration
Jean tracks GitHub Actions status and helps debug failures.View CI Status
Worktrees linked to PRs show CI check status in the sidebar:
- Green checkmark: All checks passing
- Red X: One or more checks failing
- Yellow dot: Checks pending/running
- Gray dash: No checks configured
Open GitHub Dashboard
Press
Cmd+Shift+D to open the GitHub Dashboard.This shows:- All open PRs across all projects
- CI check status for each PR
- Security alerts (Dependabot, advisories)
- Recent workflow runs
Investigate Failed Workflows
Click a failed workflow run and select Investigate Run.Jean will:
- Fetch workflow logs via
gh run view --log-failed - Send logs to Claude with a prompt to analyze the failure
- Claude will:
- Identify the failure cause
- Determine if it’s code, config, or a flaky test
- Propose a fix
Release Notes Generation
Jean can generate release notes by analyzing commits since the last release.Select Previous Release
Jean shows all existing releases (fetched via
gh release list).Select the previous release to use as the starting point (e.g., v1.2.0).Generate Notes
Jean will:
- Run
git log <previous-tag>..HEADto get all commits - Send commits to a model (Haiku by default)
- Generate release notes with:
- Features: New functionality
- Fixes: Bug fixes
- Improvements: Enhancements to existing features
- Breaking Changes: API changes requiring user action
Dependabot and Security Alerts
Jean helps you investigate and fix security vulnerabilities.View Security Alerts
Press
Cmd+Shift+D to open the GitHub Dashboard.The Security tab shows:- Dependabot alerts (vulnerable dependencies)
- Repository security advisories
- Alert severity (critical, high, medium, low)
Investigate Alert
Click an alert and select Investigate Alert.Jean will:
- Load alert details (CVE, affected versions, severity)
- Search the codebase for usage of the vulnerable package
- Assess actual impact (is the vulnerable function used?)
- Evaluate remediation options (patched version, workarounds, etc.)
- Propose a fix
Apply Fix
Common fixes:
- Upgrade dependency:
npm update <package>orbun update <package> - Remove dependency: If not needed, uninstall it
- Apply workaround: Disable vulnerable feature or add input validation
Common Pitfalls
Best Practices
Next Steps
- Using Magic Commands - Deep dive into PR and issue automation
- Managing Sessions - Organize work within issue-driven worktrees
- Customization - Customize magic prompts for your team’s workflow