An enterprise-grade terminal user interface for Salesforce org management and navigation.
SF Orgs streamlines Salesforce org management by providing administrators and developers with a full-featured terminal user interface. The application consolidates org visibility, session management, and quick access into a single, keyboard-driven workflow—eliminating the need to manually execute CLI commands or manage org aliases.
- Unified Org Visibility - Comprehensive view of all authenticated orgs with real-time connection status
- Full Keyboard Navigation - Arrow keys, vim-style bindings (j/k), and shortcut keys for efficient workflows
- Intelligent Search - Filter orgs instantly by alias, username, org type, or name
- Mouse Support - Click to select, double-click to open for point-and-click accessibility
- Session Management - Identify expired sessions and re-authenticate directly from the interface
- Org Type Classification - Automatic detection and visual distinction of Production, Sandbox, Developer Hub, and Scratch orgs
- Cross-Platform Compatibility - Consistent experience across macOS, Linux, and Windows environments
┌────────────────────────────────────────────────────────────────────────────────┐
│ SF ORGS Salesforce Org Manager│
├────────────────────────────────────────────────────────────────────────────────┤
│ 5 orgs ● 4 connected ● 1 expired │
│ │
│ ┃ │ Alias │ Type │ Name │ Username │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━│
│ ● │ my-devhub ★ ⬡ │ Dev Hub │ Acme Corp │ admin@acme.com │
│ ● │ uat-sandbox │ Sandbox │ UAT Environment │ admin@acme.uat │
│ ● │ dev-sandbox │ Sandbox │ Development │ admin@acme.dev │
│ ● │ feature-scratch │ Scratch │ Feature Branch │ test-xyz@ex... │
│ ● │ expired-org │ Sandbox │ Legacy Sandbox │ admin@acme.leg │
│ │
├────────────────────────────────────────────────────────────────────────────────┤
│ q Quit • r Refresh • Enter Open • a Re-auth • / Search │
└────────────────────────────────────────────────────────────────────────────────┘
- Python 3.8 or higher - Download Python
- Salesforce CLI (sf) - Install Salesforce CLI
Verify Salesforce CLI installation:
sf --versionpipx provides isolated environment installation for Python applications:
# Install pipx if not already available
brew install pipx # macOS
# or: pip install pipx
# Install SF Orgs
pipx install git+https://github.com/Bilal-Bjo/SFORGS.gitpip install git+https://github.com/Bilal-Bjo/SFORGS.gitgit clone https://github.com/Bilal-Bjo/SFORGS.git
cd SFORGS
pipx install -e .Launch the application:
sforgs| Key | Action |
|---|---|
↑ ↓ or j k |
Navigate through org list |
Enter or o |
Open selected org in browser |
r |
Refresh org list |
a |
Re-authenticate selected org |
/ |
Activate search filter |
Escape |
Clear search / Close search |
q |
Exit application |
| Indicator | Description |
|---|---|
● (green) |
Active session - org accessible |
● (red) |
Expired session - requires re-authentication |
★ |
Default target org |
⬡ |
Developer Hub org |
| Type | Description |
|---|---|
| Production | Production Salesforce instances |
| Sandbox | Sandbox environments (Full, Partial, Developer) |
| Dev Hub | Developer Hub orgs for scratch org management |
| Scratch | Temporary scratch orgs for development |
SF Orgs interfaces with the Salesforce CLI to retrieve org metadata and execute org operations:
- Data Retrieval - Executes
sf org list --jsonto enumerate authenticated orgs - Session Validation - Parses connection status to identify active and expired sessions
- Org Classification - Analyzes org metadata to determine org type and role
- Browser Integration - Invokes
sf org open -o <alias>for org access - Re-authentication - Initiates
sf org login webworkflow for session renewal
- Textual - Modern terminal user interface framework
Ensure the Salesforce CLI is installed and available in your system PATH:
npm install -g @salesforce/cli
# or on macOS:
brew install sfAuthenticate with at least one Salesforce org:
# Production or Developer Hub
sf org login web
# Sandbox
sf org login web -r https://test.salesforce.comSelect an org with an expired session and press a to initiate re-authentication through the browser-based login flow.
Contributions are welcome. Please follow standard pull request procedures:
- Fork the repository
- Create a feature branch
- Submit a pull request with a clear description of changes
This project is licensed under the MIT License. See LICENSE for details.
Bilal Bjo - GitHub