-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Session ID Environment Variable and Deep Link Support #8611
Copy link
Copy link
Closed
Labels
area:searchGlobal search, command palette, and content discovery.Global search, command palette, and content discovery.area:shell-terminalTerminal input/output, shell integration, prompt behavior, and block rendering.Terminal input/output, shell integration, prompt behavior, and block rendering.bugSomething isn't working.Something isn't working.os:macmacOS-specific behavior, regressions, or requests.macOS-specific behavior, regressions, or requests.os:windowsWindows-specific behavior, regressions, or requests.Windows-specific behavior, regressions, or requests.ready-to-implementThe issue is ready for implementation work.The issue is ready for implementation work.triagedIssue has received an initial automated triage pass.Issue has received an initial automated triage pass.
Metadata
Metadata
Assignees
Labels
area:searchGlobal search, command palette, and content discovery.Global search, command palette, and content discovery.area:shell-terminalTerminal input/output, shell integration, prompt behavior, and block rendering.Terminal input/output, shell integration, prompt behavior, and block rendering.bugSomething isn't working.Something isn't working.os:macmacOS-specific behavior, regressions, or requests.macOS-specific behavior, regressions, or requests.os:windowsWindows-specific behavior, regressions, or requests.Windows-specific behavior, regressions, or requests.ready-to-implementThe issue is ready for implementation work.The issue is ready for implementation work.triagedIssue has received an initial automated triage pass.Issue has received an initial automated triage pass.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Session ID Environment Variable and Deep Link Support
Summary
Add a
WARP_SESSION_IDenvironment variable andwarp://session/<id>deep link support to enable external tools to focus specific Warp tabs/windows.Motivation
When using notification systems or external integrations (like Claude Code, CI/CD tools, or monitoring alerts), there's no way to focus the specific Warp tab where the command is running. The current
warp://action/new_tabandwarp://action/new_windowURIs only create new sessions, they can't focus existing ones.Real-World Use Case
I'm using Claude Code with macOS notifications (via
terminal-notifier) to alert me when it needs input. When I click the notification, it activates Warp, but if I have multiple windows/tabs open, I have to manually find the right one. This breaks the workflow.Proposed Solution
1. Environment Variable
Expose a unique session identifier in each terminal session:
2. Deep Link URI
Add a new URI scheme to focus existing sessions:
open "warp://session/550e8400-e29b-41d4-a716-446655440000"This would:
Example Integration
Alternative Considered
Using
terminal-notifier -activate dev.warp.Warp-Stablebrings Warp to focus, but doesn't switch to the correct tab when multiple sessions are open.Similar Features in Other Terminals
active_window_indexandactive_tab_index, but only for new sessionsBenefits
Implementation Notes
.bashrc/.zshrc)WARP_IS_LOCAL_SHELL_SESSION,WARP_HONOR_PS1, etc.)Related