Skip to content

Terminal user interface for Salesforce org management. View connection status, navigate orgs, and manage authentication from the command line.

License

Notifications You must be signed in to change notification settings

Bilal-Bjo/SFORGS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SF Orgs

An enterprise-grade terminal user interface for Salesforce org management and navigation.

Python License Platform

Overview

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.

Key Capabilities

  • 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

Interface Preview

┌────────────────────────────────────────────────────────────────────────────────┐
│ 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                         │
└────────────────────────────────────────────────────────────────────────────────┘

Prerequisites

Verify Salesforce CLI installation:

sf --version

Installation

Option 1: Using pipx (Recommended)

pipx 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.git

Option 2: Using pip

pip install git+https://github.com/Bilal-Bjo/SFORGS.git

Option 3: From Source

git clone https://github.com/Bilal-Bjo/SFORGS.git
cd SFORGS
pipx install -e .

Usage

Launch the application:

sforgs

Keyboard Reference

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

Status Indicators

Indicator Description
(green) Active session - org accessible
(red) Expired session - requires re-authentication
Default target org
Developer Hub org

Org Type Classification

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

Technical Architecture

SF Orgs interfaces with the Salesforce CLI to retrieve org metadata and execute org operations:

  1. Data Retrieval - Executes sf org list --json to enumerate authenticated orgs
  2. Session Validation - Parses connection status to identify active and expired sessions
  3. Org Classification - Analyzes org metadata to determine org type and role
  4. Browser Integration - Invokes sf org open -o <alias> for org access
  5. Re-authentication - Initiates sf org login web workflow for session renewal

Dependencies

  • Textual - Modern terminal user interface framework

Troubleshooting

Salesforce CLI Not Found

Ensure the Salesforce CLI is installed and available in your system PATH:

npm install -g @salesforce/cli
# or on macOS:
brew install sf

No Authenticated Orgs

Authenticate with at least one Salesforce org:

# Production or Developer Hub
sf org login web

# Sandbox
sf org login web -r https://test.salesforce.com

Expired Sessions

Select an org with an expired session and press a to initiate re-authentication through the browser-based login flow.

Contributing

Contributions are welcome. Please follow standard pull request procedures:

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request with a clear description of changes

License

This project is licensed under the MIT License. See LICENSE for details.

Author

Bilal Bjo - GitHub

About

Terminal user interface for Salesforce org management. View connection status, navigate orgs, and manage authentication from the command line.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages