LiNkIeZ'Pipeline Viewer
December 13, 2025 ยท View on GitHub
Visual Studio Code extension that monitors GitHub Actions from open workspace repositories and displays pipeline status in real-time.
๐ Features
- โ Status Bar - Quick view of aggregated status for all pipelines
- ๐ Tree View - Hierarchical list of repositories, workflows, and runs
- ๐ฏ Overview Widget - Visual graph showing pipeline progress at a glance
- ๐จ Webview Panel - Detailed pipeline visualization with job timelines
- ๐ Auto-refresh - Automatic updates with intelligent polling
- ๐ Smart Notifications - Alerts for status changes with rate limiting
- ๐ Auto-detection - Automatically detects workspace repositories via git remotes
- ๐ Secure Authentication - Secure storage of GitHub Personal Access Token
- โก ETag Caching - Optimized API usage with ~50% reduction in requests
- ๐ Rate Limit Management - Automatic monitoring and pause when approaching limits
- ๐ฏ Loading Indicators - Visual feedback during data refresh
๐ฆ Installation
Via VSIX (Development)
- Clone the repository:
git clone https://github.com/your-username/GithubActionPipelineView.git
cd GithubActionPipelineView
- Install dependencies:
npm install
- Compile the project:
npm run compile
- Press
F5in VS Code to start the extension in development mode
Via Marketplace (Coming Soon)
Search for "GitHub Actions Pipeline View" in the VS Code Marketplace.
๐ง Configuration
1. GitHub Authentication
On first run, you will be prompted to configure a GitHub Personal Access Token.
To create a token:
- Go to GitHub โ Settings โ Developer settings โ Personal access tokens
- Click "Generate new token (classic)"
- Select required scopes:
- โ
repo- Access to private repositories - โ
workflow- Manage workflows
- โ
- Copy the generated token
- Run the command
GitHub Actions: Set GitHub Tokenin VS Code - Paste the token when prompted
2. Available Settings
Go to Preferences > Settings and search for "GitHub Actions":
{
// List of repositories to monitor manually (format: owner/repo)
"githubActions.repositories": [
"microsoft/vscode",
"facebook/react"
],
// Refresh interval in seconds (minimum: 10)
"githubActions.refreshInterval": 60,
// Show notifications for status changes
"githubActions.showNotifications": true,
// Automatically detect repositories from workspace
"githubActions.autoDetectRepositories": true,
// Notify when workflows complete successfully
"githubActions.notifyOnSuccess": false,
// Notify when workflows fail
"githubActions.notifyOnFailure": true
}
๐ Usage
Status Bar
At the bottom of the VS Code window, you will see an icon with the aggregated status of pipelines:
โ Pipelines: 3/5 passing- Some repositories with successโ Pipelines: 2 failing- Workflows failingโณ Pipelines: building...- Workflows in progressโ No pipelines- No data available
Click the status bar to focus on the tree view.
Tree View
The LiNkIeZ'Github Actions section in Explorer sidebar shows:
๐ Repository (owner/repo)
โโโ ๐ Workflow Run #123
โโโ Branch: main
โโโ Commit: abc1234
โโโ Status: โ
success
Actions (right-click):
- ๐ Refresh - Reload pipeline data
- ๐ Open in GitHub - View in browser
- ๐๏ธ Show Details - Open webview panel
- ๐ Re-run Workflow - Re-execute failed workflow
- ๐ Copy Run URL - Copy URL to clipboard
Webview Panel
Right-click a workflow run and select "Show Details" to open a detailed view with:
- ๐ Job Timeline - Visual representation of job execution
- ๐จ Progress Bars - Real-time progress for running jobs
- ๐ฏ Status Colors - Green (success), Red (failure), Yellow (in progress)
- โ๏ธ Action Buttons - Re-run, Cancel, Open in GitHub
- ๐ Job Details - Steps, runner info, execution times
Available Actions:
- Re-run failed jobs - Retry only failed jobs
- Re-run all jobs - Re-execute entire workflow
- Cancel workflow - Stop running workflow
- Open in GitHub - View full details in browser
โณ Pipelines: running- Workflows in progressโ Pipelines: no data- No data available
Click the status bar to force refresh.
Overview Widget (Right Status Bar)
Visual graph showing pipeline progress at a glance:
- โ - Successful pipelines (green)
- โ - Failed pipelines (red)
- โ - In-progress pipelines (yellow)
- โ - Queued/empty segments (gray)
The 5-segment graph provides instant visual feedback about overall pipeline health. Hover over it for detailed stats and repository breakdown.
Tree View
In the Explorer sidebar, you will see the "GitHub Actions" view with:
๐ GitHub Actions
โโ ๐ข repository-name
โ โโ โ Build and Test โข main โข #123 โข success
โ โโ โณ Deploy โข develop โข #122 โข running...
โ โโ โ CI โข feature/x โข #121 โข failure
โโ ๐ก another-repo
โโ โณ Tests โข main โข #45 โข running...
Available actions:
- Click a run to view details (coming soon)
- Right-click โ "Open in GitHub" - Opens in browser
- Right-click โ "Re-run" - Re-runs failed workflow
Commands
Press Ctrl+Shift+P (or Cmd+Shift+P on Mac) and type:
GitHub Actions: Refresh Pipelines- Manually refreshes all pipelinesGitHub Actions: Set GitHub Token- Configures/updates authentication tokenGitHub Actions: Open in GitHub- Opens selected workflow in browserGitHub Actions: Re-run Workflow- Re-runs failed workflow
๐๏ธ Architecture
src/
โโโ extension.ts # Entry point - activation/deactivation
โโโ types.ts # TypeScript interfaces and types
โโโ githubApi.ts # GitHub REST API client (Octokit)
โโโ statusBar.ts # Status bar item management
โโโ treeView.ts # TreeDataProvider for sidebar
โโโ pipelineMonitor.ts # Polling and monitoring system
โโโ webviewPanel.ts # Detailed visualization (in development)
๐ Monitoring
The extension uses adaptive polling:
- High frequency (30s): when there are workflows running
- Low frequency (configurable): when all workflows are idle
- On-demand: manual refresh via command
The system respects GitHub API rate limits (5,000 requests/hour for authenticated users).
๐ง Roadmap
Current Phase: MVP (Sprint 1-5) โ
- Project setup
- GitHub authentication
- Status bar
- Tree view
- Monitoring system
- Repository auto-detection
- Notifications
- Webview panel with detailed visualization
- ETag caching for API optimization
- Rate limit monitoring and auto-pause
- Notification rate limiting
- Loading indicators
Next Phases
Phase 7: Advanced Features (Sprint 7)
- Filters by status/branch
- Multi-select support in tree view
- Run comparison
- Artifact management
- Multi-workspace support
- Statistics and insights
Phase 8: Polish (Sprint 8)
- Automated tests
- Complete documentation with screenshots
- Performance optimization
- Extension icon design
- Marketplace publication
๐ค Contributing
Contributions are welcome! Please:
- Fork the project
- Create a branch for your feature (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Local Development
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Compile in watch mode
npm run watch
# Run tests
npm test
# Lint
npm run lint
๐ Commit Conventions
We follow the Conventional Commits standard:
feat:- New featurefix:- Bug fixdocs:- Documentation onlystyle:- Formatting, semicolons, etc.refactor:- Code refactoringtest:- Add or fix testschore:- Build, CI changes, etc.
๏ฟฝ Releases
This project uses semantic-release for automated versioning and package publishing.
How Releases Work
-
Automatic Versioning: Version bumps are determined by commit messages
feat:commits trigger minor releases (0.x.0)fix:commits trigger patch releases (0.0.x)BREAKING CHANGE:in commit body triggers major releases (x.0.0)
-
GitHub Releases: Automatically created with changelog
-
VSIX Packages: Built and attached to releases
-
Changelog: Auto-generated from commit messages
Download Extension
Download the latest .vsix file from Releases and install via:
code --install-extension github-actions-pipeline-view-*.vsix
๐ License
This project is licensed under the MIT License. See the LICENSE file for more details.
๐ Acknowledgments
- VS Code Extension API
- Octokit.js - GitHub REST API client
- GitHub Actions API
๐ Support
Found a bug or have a suggestion?
- ๐ Open an issue
- ๐ฌ Discussions
Version: 0.1.0 Status: In active development Author: linkiez