GitHub Integration
SnakeFlow integrates deeply with GitHub — Issues, PRs, and CI Actions are managed directly from the sidebar.
Requirements
- GitHub in your editor — sign in via the Accounts menu (GitHub) for Issues, Pull Requests, and API-based features. The extension uses your editor’s GitHub session.
ghCLI — still recommended for some workflows (e.g. team scripts); not required for Issues/PRs or PR AI Feedback (those use the GitHub REST API with your IDE session).- For GitHub Actions locally: act + Docker Desktop
GitHub Issues
Features
- View issues with real-time filters: milestone, assignee, date range, label, full-text search
- Create new issues (optional AI-assisted title via Google Gemini)
- Edit title, body, assignees, milestone, labels
- Close issues
- Add comments
- Create a branch from an issue — default name
issue-{number}-{title-slug}; with Gemini configured, suggests a conventional name likefix/login-timeout/#42(see AI branch naming) - Send to Cursor Chat — sends the full issue context for AI assistance
Command: Ctrl+Alt+G — Create Issue | Sidebar → GitHub Issues panel
Filters
The sidebar shows up to 50 issues. Filter by:
- Milestone — select from your repo’s milestones
- Assignee — filter to your issues or a specific user
- Date — created after / before a date
- Search — full-text search in title and body
AI Title Generation (Gemini)
"devManager.gemini.apiKey": "AIza...","devManager.gemini.model": "gemini-2.5-flash"When configured, SnakeFlow calls Gemini to suggest a concise issue title based on your description.
Get a free API key at aistudio.google.com.
AI branch naming
When devManager.gemini.apiKey is set, Create Branch from Issue asks Gemini for a short branch name (type/slug/#N) before checkout. You can edit the suggestion in the input box; if the API call fails, SnakeFlow falls back to issue-{number}-{title-slug}.
Voice Dictation
Click the 🎙 button next to Description (or Add comment in Edit Issue) to dictate text using your microphone. Gemini AI transcribes the audio and inserts the result directly into the field — no copy-paste required.
See Voice Dictation → for setup and language settings.
Send to Chat
"devManager.issueToChat.prompt": "Analyze this issue and suggest an implementation plan."Notification Center
GitHub inbox items and plugin events (Quality Hub failures, workflow status, etc.) share one feed in the status bar and a unified QuickPick.
Status bar
- Click the bell icon (badge shows unread count) to open the list.
- Scope toggles between this repository and all repositories you can access (
SnakeFlow: Toggle Notification Scope).
QuickPick actions
- Open the linked PR, issue, or check run in the browser or editor when an action is available.
- Mark all read clears the unread badge without leaving GitHub notifications permanently dismissed on github.com (GitHub items are tracked locally; use refresh to sync).
Commands
| Command title | Purpose |
|---|---|
| SnakeFlow: Show Notifications | Open the unified QuickPick |
| SnakeFlow: Refresh Notifications | Poll GitHub and refresh plugin events |
| SnakeFlow: Mark All Notifications Read | Clear unread state |
| SnakeFlow: Toggle Notification Scope | Switch repo-only vs all-repos |
Plugin code can push custom entries via the internal devManager.notifications.addEvent command (for maintainers and extensions).
GitHub Sprints
Sprints map to standard GitHub Milestones — no separate sprint backend. Enable planning UI and grouping for the active sprint.
"devManager.github.sprints.enabled": true,"devManager.github.sprints.namingHint": "Sprint {YYYY}-W{WW}"| Setting | Default | Description |
|---|---|---|
devManager.github.sprints.enabled | false | Master switch for sprint commands and grouping |
devManager.github.sprints.namingHint | "" | Placeholder when creating a sprint (empty = ISO week hint) |
Typical workflow
- SnakeFlow: Create Sprint — creates a milestone (sprint) with optional due date.
- SnakeFlow: Assign Sprint — attach the sprint milestone to selected issues.
- SnakeFlow: Set Sprint / Edit Sprint / Close Sprint — manage the active milestone from the palette or issue context.
- SnakeFlow: Toggle Sprint Grouping — group the Issues sidebar by sprint.
- SnakeFlow: Toggle Issue Sort (Created / Sprint Due) — switch sort order when sprints are enabled.
See Command palette → for exact titles.
Pull Requests
View open PRs in the sidebar with review status, CI status, and author.
Features
- PRs grouped by status: needs review, approved, changes requested
- Open PR on GitHub with one click
- Send PR to Cursor Chat — sends the diff + description for AI code review
Custom Chat Prompt
"devManager.prToChat.prompt": "Review this PR focusing on security, performance, and test coverage."PR AI Feedback
Build a Markdown report for one open pull request — PR metadata, CI check results, bot reviews and inline comments (e.g. Copilot, CodeRabbit, GitHub Actions bots), plus an excerpt from failed job logs when available. Intended as a single file you can paste into an AI chat or archive for review.
How to run
- Select your SnakeFlow project and ensure GitHub is signed in in the editor.
- Command Palette → SnakeFlow: PR AI Feedback (or open it from the main menu).
- Pick an open PR from the list (your current branch is marked when it matches a PR head).
- Wait for the notification — the report opens in the editor.
Where the file is saved
The report is written under your project root, inside the editor configuration folder (the same parent folder that holds skills or workspace metadata — often .cursor in Cursor or .vscode in VS Code / Antigravity), in a subfolder named pr-feedback/. Filename pattern: pr-{number}-{YYYY-MM-DD-HH-mm}.md. Add pr-feedback/ to .gitignore if you do not want reports committed.
Requirements: GitHub origin remote must point at github.com so the repository can be detected. Private repos need token scopes that allow reading PRs, checks, and comments (the default repo flow from the editor is usually enough).
GitHub Actions (CI)
Run GitHub Actions workflows locally using act — without pushing to GitHub.
Install act
# Windowswinget install nektos.act
# macOSbrew install act
# Linuxcurl -s https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bashRequires Docker Desktop to be running.
Usage
Main menu → CI / Run GitHub Actions Locally
"devManager.ci.workflowsPath": ".github/workflows"