feat: inline pane tabs, add-pane mode, and grid chrome cleanup

- Tab bar now shows pane names inline with status icons instead of
  generic tab names with counts, eliminating the separate pane list row
- chromeTop reduced from 4 to 3, gaining one extra row of content space
- Add-pane mode (Ctrl+N) lets users add panes to existing tabs from picker
- Picker tab bar updated to match inline pane name format
- Session formatters and launch actions updated for branch switching

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-02-28 18:13:25 +00:00
parent 9cf18f5740
commit e0f1a08098
7 changed files with 246 additions and 116 deletions

View File

@@ -72,7 +72,7 @@ async function main() {
try {
const state = extractSessionState()
if (state) saveSessionSync(state)
} catch {}
} catch (err) { console.error("[session-save]", err) }
if (app.monitorInterval) { clearInterval(app.monitorInterval); app.monitorInterval = null }
if (app.directGrid) app.directGrid.destroyAll()
stopAllCaptures()
@@ -187,7 +187,7 @@ async function main() {
getUsageSummary().then(u => {
app.cachedUsage = u
updateUsagePanel()
}).catch(() => {})
}).catch(err => console.error("[usage]", err))
// Resize PTY panes when terminal window is resized
process.stdout.on("resize", () => {
@@ -220,7 +220,7 @@ async function main() {
try {
app.cachedUsage = await getUsageSummary()
updateUsagePanel()
} catch {}
} catch (err) { console.error("[usage-poll]", err) }
}
if (app.demoMode) {