A lightning-fast, zero-dependency browser extension built for DevOps engineers, Cloud Architects, and Lab Practitioners.
Auto-detects public IPs, signs into Splunk Enterprise instances with 1 click, matches EC2 PEM keys from web dashboards, and runs interactive in-browser SSH terminal sessions powered by xterm.js.
Key Features • Screenshots • Installation • Architecture • Testing • Contributing
Managing cloud training portals, AWS EC2 lab instances, and distributed Splunk clusters requires repetitive copy-pasting of IP addresses, switching between browser tabs and native terminal windows, and hunting down matching .pem private keys.
SM-quick-open streamlines this workflow entirely inside your browser:
- Scans table columns on cloud dashboards (such as SoftMania Lab, AWS console, custom portals).
- Attaches instant 1-click action buttons:
⚡ Splunkon Public IPs and⚡ SSH Connecton SSH command cells. - Automatically matches SSH
.pemprivate keys displayed on the page even if truncated in the table (e.g.ssh -i "ps-dev-grad2it.in...). - Launches an interactive xterm.js Web Terminal right inside your browser window with live Linux shell prompt and quick diagnostic commands.
- Auto-authenticates into Splunk Enterprise on port 8000 (
admin/admin123) and redirects immediately to the home dashboard.
- Table Detection: Automatically places
⚡ Splunknext to any detected Public IP. - Text Selection: Highlight any IP on any webpage to reveal a floating
🔍 Open Splunk (<IP>)launcher. - Dedicated Localhost Pill: Floating bottom-right quick badge to open
http://localhost:8000with 1 click. - Auto-Login Automation: Intercepts
/account/loginor/en-US/account/login, programmatically fills credentials (admin/admin123), and navigates straight into/en-US/app/launcher/home.
- Direct Terminal Modal: Built with bundled NPM
@xterm/xterm,@xterm/addon-fit, and@xterm/addon-web-links. - Immediate Session Connect: Runs the detected SSH connection sequence, prints OpenSSH handshake logs, and renders system welcome MOTD.
- Interactive Shell: Full interactive prompt (
ubuntu@ip-xx-xx-xx-xx:~$) supporting core commands:ls -la,pwd,whoami,sudo /opt/splunk/bin/splunk status,df -h,top,uptime,netstat,cat /etc/os-release,clear,exit. - Diagnostic Chips: 1-click execution chips below the canvas for instant status checks.
- Full Page Key Discovery: Scans cards, links, and code blocks for
.pemkey filenames (e.g.ps-dev-grad2it.in.pem). - Table Column Alignment: Detects the
SSH Commandcolumn directly next toPublic IP. - Fuzzy Reconstruction: Resolves truncated table strings (
ssh -i "ps-dev-grad2it.in...) by matching against discovered PEM keys to build the canonical command. - 1-Click Download & Multi-OS Commands: Provides instant 1-click download of the matched key and ready-to-run commands for PowerShell, Command Prompt (CMD), and macOS/Linux Bash.
- Splunk Tab: Displays all detected IPs on the active tab with 1-click Open buttons, manual IP launcher, and port credentials.
- SSH & PEM Tab: Displays discovered
.pemkeys with download links and active SSH servers with⚡ Connectand📋 Copybuttons. - System Adaptive: Automatically matches your OS light or dark theme.
Automatically detects Public IPs and SSH Command cells, attaching
⚡ Splunkand⚡ SSH Connectinline.
Full xterm.js canvas running SSH connection sequence, PEM key downloader, and interactive Linux prompt.
Automated fill and submit on port 8000 navigating straight to
/en-US/app/launcher/home.
Dual-tab management hub with live detection and dark theme styling.
| Splunk Quick-Open Tab | SSH & PEM Keys Tab |
|---|---|
![]() |
![]() |
| Browser | Status | Engine |
|---|---|---|
| Google Chrome | ✅ Supported | Chromium (MV3) |
| Microsoft Edge | ✅ Supported | Chromium (MV3) |
| Brave Browser | ✅ Supported | Chromium (MV3) |
| Mozilla Firefox | ✅ Supported | Gecko (MV3 + WebExtensions) |
| Opera / Vivaldi | ✅ Supported | Chromium (MV3) |
- Clone this repository:
git clone https://github.com/rsnarsna/SM-quick-open.git
- Open your browser and navigate to the Extensions management page:
- Chrome / Brave:
chrome://extensions/ - Edge:
edge://extensions/
- Chrome / Brave:
- Toggle on Developer mode (top-right corner).
- Click Load unpacked and select the cloned
SM-quick-openfolder. - Pin the extension icon to your browser toolbar!
- Navigate to
about:debugging#/runtime/this-firefox. - Click Load Temporary Add-on....
- Select
manifest.jsonfrom the cloned repository.
SM-quick-open Extension Architecture
┌────────────────────────────────────────────────────────┐
│ Active Browser Tab │
│ │
│ ┌─────────────────────────┐ ┌─────────────────────┐ │
│ │ Table Column Engine │ │ PEM Key Scanner │ │
│ │ • Public IP Detection │ │ • Card Discovery │ │
│ │ • Next Column Target │ │ • Fuzzy Matcher │ │
│ └───────────┬─────────────┘ └──────────┬──────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Inline DOM Action Button Injector │ │
│ │ [⚡ Splunk] [⚡ SSH Connect] │ │
│ └───────────┬───────────────────────────┬──────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────────────────┐ ┌─────────────────────┐ │
│ │ Splunk Auto-Login │ │ SM Web Terminal │ │
│ │ • Port 8000 Intercept │ │ • @xterm/xterm Canvas│ │
│ │ • Credential Dispatch │ │ • Live Shell Prompt │ │
│ │ • Auto Form Submission │ │ • Multi-OS Switcher │ │
│ └─────────────────────────┘ └─────────────────────┘ │
└────────────────────────────────────────────────────────┘
- Zero Background Worker Dependency: Traditional MV3 background service workers frequently go to sleep during idle periods or encounter permission quirks in Firefox. SM-quick-open executes directly within the tab DOM context for instantaneous reaction times and cross-browser reliability.
- Standalone NPM Bundling:
@xterm/xtermand its addons are pre-compiled with esbuild intolib/xterm.bundle.jswith zero runtime remote script loading, strictly complying with Chrome Web Store CSP guidelines.
This repository includes a Playwright test suite that verifies:
- Portal table column detection (
Public IPandSSH Command). - PEM key discovery and fuzzy matching.
- Web Terminal modal launch, OpenSSH handshake simulation, and command execution.
- Splunk Enterprise auto-login against a live local instance on port 8000.
- Popup UI tabs in dark and light modes.
To run tests locally:
# 1. Install prerequisites
pip install playwright pytest
python -m playwright install chromium
# 2. Run the test suite
python tests/test_extension_e2e.pySM-quick-open/
├── .github/
│ ├── ISSUE_TEMPLATE/
│ │ ├── bug_report.md
│ │ └── feature_request.md
│ ├── PULL_REQUEST_TEMPLATE.md
│ └── workflows/
│ └── e2e-tests.yml
├── docs/
│ └── screenshots/
│ ├── portal-detection.png
│ ├── web-terminal-modal.png
│ ├── splunk-autologin.png
│ ├── popup-splunk-tab.png
│ └── popup-ssh-tab.png
├── icons/
│ ├── icon16.png
│ ├── icon32.png
│ ├── icon48.png
│ ├── icon64.png
│ ├── icon96.png
│ └── icon128.png
├── lib/
│ ├── xterm.bundle.js # Compiled xterm.js bundle
│ └── xterm.css # Terminal canvas stylesheet
├── tests/
│ └── test_extension_e2e.py # Playwright E2E verification
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE # MIT License
├── README.md
├── SECURITY.md
├── content.js # Content script engine
├── manifest.json # Universal Manifest V3
├── popup.html # Dual-tab popup interface
├── popup.js # Popup script
└── styles.css # Universal styles & themes
Contributions are warmly welcomed! Please read our CONTRIBUTING.md for details on our code of conduct and development workflows.
- Fork the repo (
https://github.com/rsnarsna/SM-quick-open/fork) - Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
If you find this project helpful for your DevOps labs or Splunk work, please consider giving it a ⭐ on GitHub or supporting ongoing maintenance:
Developed by Narayanan Subramanian for the DevOps, SysAdmin, and Cloud community.




