@polderlabs/bizar-omp 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +229 -112
  2. package/dist/cli/agents-ink.d.ts.map +1 -1
  3. package/dist/cli/agents-ink.js +62 -120
  4. package/dist/cli/agents-ink.js.map +1 -1
  5. package/dist/cli/agents.d.ts.map +1 -1
  6. package/dist/cli/agents.js +5 -2
  7. package/dist/cli/agents.js.map +1 -1
  8. package/dist/cli/omb-dashboard.d.ts +1 -0
  9. package/dist/cli/omb-dashboard.d.ts.map +1 -1
  10. package/dist/cli/omb-dashboard.js +14 -4
  11. package/dist/cli/omb-dashboard.js.map +1 -1
  12. package/dist/omp/daemon-service.d.ts.map +1 -1
  13. package/dist/omp/daemon-service.js +174 -15
  14. package/dist/omp/daemon-service.js.map +1 -1
  15. package/dist/omp/daemon.d.ts +1 -0
  16. package/dist/omp/daemon.d.ts.map +1 -1
  17. package/dist/omp/daemon.js +1 -0
  18. package/dist/omp/daemon.js.map +1 -1
  19. package/dist/omp/dashboard-html.d.ts +1 -6
  20. package/dist/omp/dashboard-html.d.ts.map +1 -1
  21. package/dist/omp/dashboard-html.js +80 -577
  22. package/dist/omp/dashboard-html.js.map +1 -1
  23. package/dist/omp/omb-sessions.d.ts +4 -0
  24. package/dist/omp/omb-sessions.d.ts.map +1 -1
  25. package/dist/omp/omb-sessions.js +36 -2
  26. package/dist/omp/omb-sessions.js.map +1 -1
  27. package/dist/omp/omb-settings.d.ts +7 -0
  28. package/dist/omp/omb-settings.d.ts.map +1 -1
  29. package/dist/omp/omb-settings.js +11 -0
  30. package/dist/omp/omb-settings.js.map +1 -1
  31. package/dist/omp/tmux.d.ts +10 -0
  32. package/dist/omp/tmux.d.ts.map +1 -1
  33. package/dist/omp/tmux.js +47 -2
  34. package/dist/omp/tmux.js.map +1 -1
  35. package/docs/assets/bizar-omp-workflow.svg +55 -0
  36. package/docs/compatibility/baseline.json +1 -1
  37. package/docs/releases/0.6.0.md +24 -0
  38. package/docs/releases/0.6.1.md +25 -0
  39. package/package.json +1 -1
@@ -29,12 +29,6 @@ function activityColor(activity) {
29
29
  return OMP_THEME.muted;
30
30
  return OMP_THEME.accentSoft;
31
31
  }
32
- /** Seconds the current phase has been running, when the journal reports a start. */
33
- function phaseAgeSeconds(activity) {
34
- if (activity?.phaseStartedAt === undefined)
35
- return undefined;
36
- return Math.max(0, Math.floor((Date.now() - activity.phaseStartedAt) / 1000));
37
- }
38
32
  const short = (value, width) => value.length <= width ? value : width <= 1 ? value.slice(0, width) : `${value.slice(0, width - 1)}…`;
39
33
  function age(session) {
40
34
  const timestamp = session.lastAttachedAt ?? session.createdAt;
@@ -52,65 +46,64 @@ function age(session) {
52
46
  function workspacePath(session) {
53
47
  return session.cwd === "?" ? session.project : session.cwd;
54
48
  }
55
- function workspaceEntries(sessions) {
56
- const entries = new Map();
57
- for (const session of sessions) {
58
- const path = workspacePath(session);
59
- const current = entries.get(path);
60
- if (current)
61
- current.count += 1;
62
- else
63
- entries.set(path, { path, label: session.project, count: 1 });
64
- }
65
- return [...entries.values()].sort((a, b) => a.path.localeCompare(b.path));
66
- }
67
49
  function visibleSessions(allSessions, settings) {
68
50
  return [...(settings.showStoppedSessions ? allSessions : allSessions.filter(session => session.state !== "stopped"))]
69
- .sort((a, b) => HUB_STATES.indexOf(a.state) - HUB_STATES.indexOf(b.state) || workspacePath(a).localeCompare(workspacePath(b)) || a.project.localeCompare(b.project) || a.name.localeCompare(b.name));
70
- }
71
- function Header({ cwd, sessions }) {
72
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: OMP_THEME.accent, backgroundColor: OMP_THEME.surface, paddingX: 2, paddingY: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Text, { bold: true, color: OMP_THEME.accent, children: ["\u03C0 ", _jsx(Text, { color: OMP_THEME.text, children: "\u203A BIZAR / AGENTS HUB" })] }), _jsxs(Text, { color: OMP_THEME.muted, children: ["GLOBAL \u00B7 launched from ", short(cwd, 34)] })] }), _jsx(Box, { marginTop: 1, gap: 2, children: HUB_STATES.map(state => (_jsxs(Text, { color: STATUS_STYLE[state].color, children: [STATUS_STYLE[state].mark, " ", sessions.filter(session => session.state === state).length, " ", state] }, state))) })] }));
51
+ .sort((a, b) => workspacePath(a).localeCompare(workspacePath(b)) || HUB_STATES.indexOf(a.state) - HUB_STATES.indexOf(b.state) || a.name.localeCompare(b.name));
73
52
  }
74
- function WorkspaceRail({ sessions, selectedPath, focused }) {
75
- const projects = workspaceEntries(sessions);
76
- return (_jsxs(Box, { width: "28%", minWidth: 24, flexDirection: "column", borderStyle: "round", borderColor: focused ? OMP_THEME.accent : OMP_THEME.border, paddingX: 1, children: [_jsxs(Text, { bold: true, color: focused ? OMP_THEME.text : OMP_THEME.accent, children: ["WORKSPACES ", _jsx(Text, { color: OMP_THEME.muted, children: focused ? "· select" : "· Tab" })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Text, { color: focused && !selectedPath ? OMP_THEME.text : OMP_THEME.accent, bold: true, children: [focused && !selectedPath ? "›" : " ", " ALL SESSIONS ", _jsx(Text, { color: OMP_THEME.muted, children: sessions.length })] }), projects.length === 0 ? _jsx(Text, { color: OMP_THEME.muted, children: " No active projects" }) : projects.map(workspace => (_jsx(Box, { width: "100%", backgroundColor: focused && selectedPath === workspace.path ? OMP_THEME.selectedBackground : undefined, children: _jsxs(Text, { color: focused && selectedPath === workspace.path ? OMP_THEME.text : OMP_THEME.muted, children: [selectedPath === workspace.path ? _jsx(Text, { color: OMP_THEME.accent, children: " \u203A " }) : " ", short(workspace.label, 18), " ", _jsxs(Text, { color: OMP_THEME.muted, children: [workspace.count, " \u00B7 ", short(workspace.path, 24)] })] }) }, workspace.path)))] }), _jsxs(Box, { marginTop: 2, flexDirection: "column", borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, children: [_jsx(Text, { bold: true, color: OMP_THEME.accent, children: "LIVE VIEW" }), _jsx(Text, { color: OMP_THEME.muted, children: "Updates every few seconds." }), _jsx(Text, { color: OMP_THEME.muted, children: "Only bizar-* sessions" }), _jsx(Text, { color: OMP_THEME.muted, children: "are shown or changed." })] })] }));
53
+ function Header({ sessions }) {
54
+ const working = sessions.filter(session => session.state === "working").length;
55
+ const waiting = sessions.filter(session => session.state === "waiting").length;
56
+ return (_jsxs(Box, { borderStyle: "round", borderColor: OMP_THEME.accent, backgroundColor: OMP_THEME.surface, paddingX: 2, justifyContent: "space-between", children: [_jsxs(Text, { bold: true, color: OMP_THEME.accent, children: ["\u03C0 ", _jsx(Text, { color: OMP_THEME.text, children: "BIZAR SESSIONS" })] }), _jsxs(Text, { color: OMP_THEME.muted, children: [sessions.length, " total ", _jsxs(Text, { color: OMP_THEME.success, children: ["\u00B7 ", working, " working"] }), " ", _jsxs(Text, { color: OMP_THEME.warning, children: ["\u00B7 ", waiting, " waiting"] })] })] }));
77
57
  }
78
58
  function SessionRow({ session, selected, width }) {
79
59
  const status = STATUS_STYLE[session.state];
80
60
  const activity = session.activity;
81
61
  const displayName = ombSessionDisplayName(session);
82
- return (_jsxs(Box, { width: "100%", flexDirection: "column", paddingX: 1, backgroundColor: selected ? OMP_THEME.selectedBackground : undefined, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Text, { color: selected ? OMP_THEME.text : status.color, bold: selected, children: [selected ? _jsx(Text, { color: OMP_THEME.accent, children: "\u203A" }) : " ", " ", status.mark, " ", short(displayName, Math.max(18, width - 28))] }), _jsx(Text, { color: selected ? OMP_THEME.accent : status.color, children: status.label })] }), _jsxs(Box, { paddingLeft: 4, justifyContent: "space-between", children: [_jsx(Text, { color: activityColor(activity), children: short(activitySummary(activity), Math.max(20, width - 20)) }), _jsx(Text, { color: OMP_THEME.muted, children: activity ? compactAge(activity.ageSeconds) : age(session) })] })] }));
62
+ return (_jsxs(Box, { width: "100%", paddingX: 1, backgroundColor: selected ? OMP_THEME.selectedBackground : undefined, justifyContent: "space-between", children: [_jsx(Box, { justifyContent: "space-between", children: _jsxs(Text, { color: selected ? OMP_THEME.text : status.color, bold: selected, children: [selected ? _jsx(Text, { color: OMP_THEME.accent, children: "\u203A" }) : " ", " ", status.mark, " ", short(displayName, Math.max(18, width - (width >= 100 ? 58 : 24)))] }) }), _jsxs(Text, { color: selected ? OMP_THEME.accent : status.color, children: [" ", status.label] }), width >= 100 && _jsxs(Text, { color: activityColor(activity), children: [" \u00B7 ", short(activitySummary(activity), 24), " ", _jsxs(Text, { color: OMP_THEME.muted, children: ["\u00B7 ", activity ? compactAge(activity.ageSeconds) : age(session)] })] })] }));
63
+ }
64
+ function sessionWindow(sessions, selected, rows) {
65
+ if (!sessions.length)
66
+ return { start: 0, visible: [] };
67
+ const budget = Math.max(3, rows - 14);
68
+ const lineCost = (items) => items.reduce((cost, session, index) => cost + 1 + (index === 0 || workspacePath(items[index - 1]) !== workspacePath(session) ? 1 : 0), 0);
69
+ let start = Math.max(0, Math.min(selected, sessions.length - 1));
70
+ let end = start + 1;
71
+ while (true) {
72
+ let changed = false;
73
+ if (start > 0 && lineCost(sessions.slice(start - 1, end)) <= budget) {
74
+ start -= 1;
75
+ changed = true;
76
+ }
77
+ if (end < sessions.length && lineCost(sessions.slice(start, end + 1)) <= budget) {
78
+ end += 1;
79
+ changed = true;
80
+ }
81
+ if (!changed)
82
+ break;
83
+ }
84
+ return { start, visible: sessions.slice(start, end) };
83
85
  }
84
- function SessionList({ sessions, selected, rows, width, focused }) {
85
- const visibleCount = Math.max(4, rows - 7);
86
- const start = Math.max(0, Math.min(Math.max(0, sessions.length - visibleCount), selected - Math.floor(visibleCount / 2)));
87
- const visible = sessions.slice(start, start + visibleCount);
88
- let previous;
86
+ function SessionList({ sessions, selected, rows, width }) {
87
+ const { start, visible } = sessionWindow(sessions, selected, rows);
89
88
  let previousWorkspace;
90
- return (_jsx(Box, { flexDirection: "column", flexGrow: 1, borderStyle: "round", borderColor: focused ? OMP_THEME.accent : OMP_THEME.border, paddingX: 1, children: _jsxs(Box, { flexDirection: "column", flexGrow: 1, backgroundColor: OMP_THEME.surface, paddingX: 2, paddingY: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { bold: true, color: focused ? OMP_THEME.text : OMP_THEME.accent, children: "SESSIONS" }), _jsx(Text, { color: OMP_THEME.muted, children: sessions.length ? `${start + 1}-${Math.min(start + visibleCount, sessions.length)} of ${sessions.length}` : "empty" })] }), _jsx(Box, { marginTop: 1, flexDirection: "column", children: visible.length === 0 ? (_jsxs(Box, { flexDirection: "column", paddingY: 2, children: [_jsx(Text, { color: OMP_THEME.warning, children: "No Bizar sessions are running." }), _jsx(Text, { color: OMP_THEME.muted, children: "Press n to dispatch a new agent session." })] })) : visible.map((session, offset) => {
89
+ return (_jsx(Box, { flexDirection: "column", flexGrow: 1, borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, children: _jsxs(Box, { flexDirection: "column", flexGrow: 1, backgroundColor: OMP_THEME.surface, paddingX: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { bold: true, color: OMP_THEME.accent, children: "SESSIONS" }), _jsx(Text, { color: OMP_THEME.muted, children: sessions.length ? `${start + 1}-${start + visible.length} of ${sessions.length}` : "empty" })] }), _jsx(Box, { marginTop: 1, flexDirection: "column", children: visible.length === 0 ? (_jsx(Box, { flexDirection: "column", paddingY: 2, children: _jsx(Text, { color: OMP_THEME.warning, children: "No sessions. Press n to create one." }) })) : visible.map((session, offset) => {
91
90
  const index = start + offset;
92
91
  const workspace = workspacePath(session);
93
- const status = STATUS_STYLE[session.state];
94
92
  const workspaceChanged = workspace !== previousWorkspace;
95
- const heading = workspaceChanged || session.state !== previous;
96
- const workspaceHeading = workspaceChanged;
97
93
  if (workspaceChanged)
98
94
  previousWorkspace = workspace;
99
- previous = session.state;
100
- return (_jsxs(Box, { flexDirection: "column", children: [workspaceHeading && _jsxs(Text, { color: OMP_THEME.accent, bold: true, children: ["\u2500\u2500 ", short(session.project, 20), " \u00B7 ", short(workspace, Math.max(20, width - 24)), " \u2500\u2500"] }), heading && _jsxs(Text, { color: status.color, bold: true, children: [status.mark, " ", status.label] }), _jsx(SessionRow, { session: session, selected: index === selected, width: width })] }, session.name));
95
+ return (_jsxs(Box, { flexDirection: "column", children: [workspaceChanged && _jsxs(Text, { color: OMP_THEME.muted, children: [" ", short(session.project, 20), " \u00B7 ", short(workspace, Math.max(20, width - 24))] }), _jsx(SessionRow, { session: session, selected: index === selected, width: width })] }, session.name));
101
96
  }) })] }) }));
102
97
  }
103
- function Inspector({ session }) {
104
- return (_jsxs(Box, { width: "29%", minWidth: 25, flexDirection: "column", borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, children: [_jsx(Text, { bold: true, color: OMP_THEME.accent, children: "SELECTED SESSION" }), !session ? _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: OMP_THEME.muted, children: "Select a session to inspect it." }) }) : _jsx(SessionDetails, { session: session })] }));
105
- }
106
- function SessionDetails({ session }) {
98
+ function SelectedSummary({ session, width }) {
99
+ if (!session)
100
+ return _jsx(Box, { borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, children: _jsx(Text, { color: OMP_THEME.muted, children: "No session selected" }) });
107
101
  const status = STATUS_STYLE[session.state];
108
102
  const activity = session.activity;
109
- const tool = activity?.running && activity.tool ? ` · tool ${activity.tool}` : "";
110
- return (_jsxs(Box, { marginTop: 1, flexDirection: "column", gap: 1, children: [_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "STATUS" }), _jsxs(Text, { bold: true, color: status.color, children: [status.mark, " ", status.label, tool] })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "ACTIVITY" }), _jsx(Text, { color: activityColor(activity), children: activitySummary(activity) })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "IN STATE" }), _jsx(Text, { children: compactAge(phaseAgeSeconds(activity)) })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "NAME" }), _jsx(Text, { children: ombSessionDisplayName(session) }), _jsx(Text, { color: OMP_THEME.muted, children: session.nativeName ? "OMP session title" : "Generated from task or project" })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "PROJECT" }), _jsx(Text, { children: short(session.cwd, 30) })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "COMMAND" }), _jsx(Text, { children: short(session.command || "omp", 30) })] }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: OMP_THEME.muted, children: "LAST ACTIVITY" }), _jsx(Text, { children: compactAge(activity?.ageSeconds) })] })] }));
103
+ return (_jsxs(Box, { borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, justifyContent: "space-between", children: [_jsxs(Text, { children: [_jsx(Text, { bold: true, children: short(ombSessionDisplayName(session), Math.max(16, Math.floor(width * .3))) }), " ", _jsxs(Text, { color: status.color, children: [status.mark, " ", status.label] })] }), _jsx(Text, { color: activityColor(activity), children: short(activitySummary(activity), Math.max(16, Math.floor(width * .3))) }), _jsx(Text, { color: OMP_THEME.muted, children: session.hosted === false ? "history only" : short(session.cwd, Math.max(18, Math.floor(width * .28))) })] }));
111
104
  }
112
105
  function Footer() {
113
- return (_jsxs(Box, { marginTop: 1, borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, justifyContent: "space-between", children: [_jsxs(Text, { color: OMP_THEME.muted, children: [_jsx(Text, { color: OMP_THEME.accent, children: "Tab" }), " workspaces ", _jsx(Text, { color: OMP_THEME.accent, children: "Enter" }), " attach/new ", _jsx(Text, { color: OMP_THEME.accent, children: "n" }), " new ", _jsx(Text, { color: OMP_THEME.accent, children: "e" }), " rename ", _jsx(Text, { color: OMP_THEME.accent, children: "d" }), " delete"] }), _jsxs(Text, { color: OMP_THEME.muted, children: [_jsx(Text, { color: OMP_THEME.accent, children: "s" }), " settings ", _jsx(Text, { color: OMP_THEME.accent, children: "r" }), " refresh ", _jsx(Text, { color: OMP_THEME.accent, children: "?" }), " help ", _jsx(Text, { color: OMP_THEME.accent, children: "q" }), " quit"] })] }));
106
+ return (_jsx(Box, { borderStyle: "round", borderColor: OMP_THEME.border, paddingX: 1, children: _jsxs(Text, { color: OMP_THEME.muted, children: [_jsx(Text, { color: OMP_THEME.accent, children: "Enter" }), " open ", _jsx(Text, { color: OMP_THEME.accent, children: "n" }), " new ", _jsx(Text, { color: OMP_THEME.accent, children: "e" }), " rename ", _jsx(Text, { color: OMP_THEME.accent, children: "d" }), " delete ", _jsx(Text, { color: OMP_THEME.accent, children: "s" }), " settings ", _jsx(Text, { color: OMP_THEME.accent, children: "?" }), " more ", _jsx(Text, { color: OMP_THEME.accent, children: "q" }), " quit"] }) }));
114
107
  }
115
108
  function Modal({ title, children, width, columns }) {
116
109
  return (_jsxs(Box, { position: "absolute", top: 2, left: Math.max(0, Math.floor((columns - width) / 2)), width: width, flexDirection: "column", borderStyle: "round", borderColor: OMP_THEME.accent, backgroundColor: OMP_THEME.surface, paddingX: 2, paddingY: 1, children: [_jsxs(Text, { bold: true, color: OMP_THEME.accent, children: ["\u03C0 \u203A ", title] }), _jsx(Box, { marginTop: 1, width: "100%", flexDirection: "column", backgroundColor: OMP_THEME.surface, children: children })] }));
@@ -326,7 +319,7 @@ function SettingsModal({ cwd, settings, selected, columns, onToggle, onMove, onS
326
319
  function HelpModal({ columns, onClose }) {
327
320
  useInput((input, key) => { if (key.escape || key.return || input === "q")
328
321
  onClose(); });
329
- return (_jsxs(Modal, { title: "OMB AGENTS SHORTCUTS", width: Math.min(64, Math.max(42, columns - 6)), columns: columns, children: [_jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "Enter" }), " attach to the selected session"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "Tab" }), " focus workspaces; Enter immediately starts a named session there"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "n" }), " open the full new-session menu"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "Mouse" }), " click rows, scroll lists, and select a workspace"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "e" }), " rename the selected session"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "d" }), " delete after confirmation"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "s" }), " open launcher settings"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "r" }), " refresh the session list"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "q / Esc" }), " leave this view"] }), _jsx(Text, { children: " " }), _jsx(Text, { color: OMP_THEME.muted, children: "STATES" }), HUB_STATES.map(state => (_jsxs(Text, { color: OMP_THEME.muted, children: [_jsxs(Text, { color: STATUS_STYLE[state].color, children: [STATUS_STYLE[state].mark, " ", state] }), " ", STATUS_HINT[state]] }, state))), _jsx(Text, { color: OMP_THEME.muted, children: "Activity is read from the session journal; prompts, commands, and tool output are never shown." }), _jsx(Text, { children: " " }), _jsx(Text, { color: OMP_THEME.muted, children: "Global view: every tmux session with the bizar- prefix is shown." }), _jsx(Text, { color: OMP_THEME.muted, children: "Press Enter or Esc to return." })] }));
322
+ return (_jsxs(Modal, { title: "OMB AGENTS SHORTCUTS", width: Math.min(64, Math.max(42, columns - 6)), columns: columns, children: [_jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "Enter" }), " open the selected live session"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "n" }), " create a session"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "Mouse" }), " click rows and scroll the list"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "e" }), " rename the selected session"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "d" }), " delete after confirmation"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "s" }), " open launcher settings"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "r" }), " refresh the session list"] }), _jsxs(Text, { children: [_jsx(Text, { color: OMP_THEME.accent, children: "q / Esc" }), " leave this view"] }), _jsx(Text, { children: " " }), _jsx(Text, { color: OMP_THEME.muted, children: "STATES" }), HUB_STATES.map(state => (_jsxs(Text, { color: OMP_THEME.muted, children: [_jsxs(Text, { color: STATUS_STYLE[state].color, children: [STATUS_STYLE[state].mark, " ", state] }), " ", STATUS_HINT[state]] }, state))), _jsx(Text, { color: OMP_THEME.muted, children: "Enter or Esc returns." })] }));
330
323
  }
331
324
  function DeleteModal({ session, columns, onConfirm, onClose }) {
332
325
  useInput((input, key) => {
@@ -335,7 +328,7 @@ function DeleteModal({ session, columns, onConfirm, onClose }) {
335
328
  else if (key.escape || key.return || input.length > 0)
336
329
  onClose();
337
330
  });
338
- return (_jsxs(Modal, { title: "DELETE SESSION?", width: Math.min(64, Math.max(42, columns - 6)), columns: columns, children: [_jsx(Text, { bold: true, children: ombSessionDisplayName(session) }), _jsxs(Text, { color: STATUS_STYLE[session.state].color, children: [STATUS_STYLE[session.state].mark, " ", STATUS_STYLE[session.state].label] }), _jsx(Text, { color: OMP_THEME.muted, children: short(session.cwd, 54) }), _jsx(Text, { children: " " }), _jsx(Text, { color: OMP_THEME.warning, children: "This stops OMP and removes the tmux session." }), _jsxs(Text, { children: ["Press ", _jsx(Text, { color: OMP_THEME.error, bold: true, children: "y" }), " to delete, any other key to cancel."] })] }));
331
+ return (_jsxs(Modal, { title: session.hosted === false ? "REMOVE SESSION?" : "DELETE SESSION?", width: Math.min(64, Math.max(42, columns - 6)), columns: columns, children: [_jsx(Text, { bold: true, children: ombSessionDisplayName(session) }), _jsxs(Text, { color: STATUS_STYLE[session.state].color, children: [STATUS_STYLE[session.state].mark, " ", STATUS_STYLE[session.state].label] }), _jsx(Text, { color: OMP_THEME.muted, children: short(session.cwd, 54) }), _jsx(Text, { children: " " }), _jsx(Text, { color: OMP_THEME.warning, children: session.hosted === false ? "This removes the stale history entry." : "This stops OMP and removes the tmux session." }), _jsxs(Text, { children: ["Press ", _jsx(Text, { color: OMP_THEME.error, bold: true, children: "y" }), " to confirm, any other key to cancel."] })] }));
339
332
  }
340
333
  function RenameModal({ session, columns, onConfirm, onClose }) {
341
334
  const [value, setValue] = useState(session.id);
@@ -390,26 +383,18 @@ function useTerminalMouse(onMouse) {
390
383
  }, [stdin, stdout]);
391
384
  }
392
385
  function sessionMouseIndex(sessions, selected, rows, y) {
393
- const visibleCount = Math.max(4, rows - 7);
394
- const start = Math.max(0, Math.min(Math.max(0, sessions.length - visibleCount), selected - Math.floor(visibleCount / 2)));
395
- // The session panel starts below the header, panel border, title, and one
396
- // spacer row. Keep this in sync with SessionList's compact layout.
397
- let line = 11;
386
+ const { start, visible } = sessionWindow(sessions, selected, rows);
387
+ // Header, one-row gap, list border, and list title precede the first group.
388
+ let line = 7;
398
389
  let previousWorkspace;
399
- let previousState;
400
- for (const [offset, session] of sessions.slice(start, start + visibleCount).entries()) {
401
- if (session.cwd !== previousWorkspace) {
402
- line += 1;
403
- previousWorkspace = session.cwd;
404
- previousState = undefined;
405
- }
406
- if (session.state !== previousState) {
390
+ for (const [offset, session] of visible.entries()) {
391
+ if (workspacePath(session) !== previousWorkspace) {
407
392
  line += 1;
408
- previousState = session.state;
393
+ previousWorkspace = workspacePath(session);
409
394
  }
410
- if (y === line || y === line + 1)
395
+ if (y === line)
411
396
  return start + offset;
412
- line += 2;
397
+ line += 1;
413
398
  }
414
399
  return undefined;
415
400
  }
@@ -418,19 +403,21 @@ function AgentsApp({ cwd, env, sessions: initialSessions, settings: initialSetti
418
403
  const [allSessions, setAllSessions] = useState(initialSessions);
419
404
  const [settings, setSettings] = useState(initialSettings);
420
405
  const [selectedName, setSelectedName] = useState(initialSelectedName ?? initialSessions[0]?.name);
421
- const [selectedWorkspacePath, setSelectedWorkspacePath] = useState(initialSessions[0]?.cwd);
422
- const [focus, setFocus] = useState("sessions");
423
406
  const [newSessionDirectory, setNewSessionDirectory] = useState();
424
407
  const [overlay, setOverlay] = useState(openNewSessionOnStart ? "new" : undefined);
425
408
  const [overlaySelected, setOverlaySelected] = useState(0);
426
409
  const [draftSettings, setDraftSettings] = useState(initialSettings);
410
+ const refreshSequence = useRef(0);
427
411
  const { exit } = useApp();
428
412
  const sessions = useMemo(() => visibleSessions(allSessions, settings), [allSessions, settings]);
429
413
  const selected = Math.max(0, sessions.findIndex(session => session.name === selectedName));
430
414
  const selectedSession = sessions[selected];
431
- const workspaces = useMemo(() => workspaceEntries(sessions), [sessions]);
432
- const workspaceIndex = selectedWorkspacePath ? Math.max(0, workspaces.findIndex(workspace => workspace.path === selectedWorkspacePath) + 1) : 0;
433
- const refresh = async (current = settings) => setAllSessions(await listOmbSessions(cwd, env, { includeStopped: current.showStoppedSessions }));
415
+ const refresh = async (current = settings) => {
416
+ const sequence = ++refreshSequence.current;
417
+ const next = await listOmbSessions(cwd, env, { includeStopped: current.showStoppedSessions });
418
+ if (sequence === refreshSequence.current)
419
+ setAllSessions(next);
420
+ };
434
421
  useEffect(() => {
435
422
  const timer = setInterval(() => { void refresh(); }, 3000);
436
423
  return () => clearInterval(timer);
@@ -443,62 +430,31 @@ function AgentsApp({ cwd, env, sessions: initialSessions, settings: initialSetti
443
430
  setSelectedName(sessions[0]?.name);
444
431
  }
445
432
  }, [sessions, selectedName]);
446
- useEffect(() => {
447
- if (selectedWorkspacePath && !workspaces.some(workspace => workspace.path === selectedWorkspacePath))
448
- setSelectedWorkspacePath(workspaces[0]?.path);
449
- }, [selectedWorkspacePath, workspaces]);
450
433
  const finish = (action) => { onAction(action); exit(); };
451
434
  const openNewSession = (workspacePath) => {
452
435
  setNewSessionDirectory(workspacePath);
453
436
  setOverlay("new");
454
- setFocus("sessions");
455
- };
456
- const launchWorkspaceSession = () => {
457
- finish({ type: "new", projectCwd: selectedWorkspacePath ?? cwd, task: "", sessionId: "" });
458
437
  };
459
438
  const selectSession = (index) => {
460
439
  const session = sessions[index];
461
440
  if (!session)
462
441
  return;
463
442
  setSelectedName(session.name);
464
- setSelectedWorkspacePath(workspacePath(session));
465
- };
466
- const selectWorkspace = (index) => {
467
- if (index <= 0)
468
- setSelectedWorkspacePath(undefined);
469
- else
470
- setSelectedWorkspacePath(workspaces[index - 1]?.path);
471
443
  };
472
444
  useTerminalMouse(event => {
473
445
  if (overlay || event.release)
474
446
  return;
475
447
  if (event.button === 64 || event.button === 65) {
476
- if (event.x <= Math.floor(columns * 0.28)) {
477
- setFocus("workspaces");
478
- selectWorkspace(Math.max(0, Math.min(workspaces.length, workspaceIndex + (event.button === 64 ? -1 : 1))));
479
- }
480
- else {
481
- setFocus("sessions");
482
- selectSession(Math.max(0, Math.min(Math.max(0, sessions.length - 1), selected + (event.button === 64 ? -1 : 1))));
483
- }
448
+ selectSession(Math.max(0, Math.min(Math.max(0, sessions.length - 1), selected + (event.button === 64 ? -1 : 1))));
484
449
  return;
485
450
  }
486
451
  if (event.button !== 0)
487
452
  return;
488
- if (event.x <= Math.floor(columns * 0.28)) {
489
- // Rail rows start at the ALL SESSIONS line and continue one row per
490
- // workspace. The clamped index also makes clicks on the rail chrome
491
- // useful instead of silently doing nothing.
492
- const index = Math.max(0, Math.min(workspaces.length, event.y - 11));
493
- setFocus("workspaces");
494
- selectWorkspace(index);
495
- return;
496
- }
497
453
  const index = sessionMouseIndex(sessions, selected, rows, event.y);
498
454
  if (index === undefined)
499
455
  return;
500
456
  const session = sessions[index];
501
- if (session?.name === selectedName)
457
+ if (session?.name === selectedName && session.hosted !== false && session.state !== "stopped")
502
458
  finish({ type: "attach", session });
503
459
  else
504
460
  selectSession(index);
@@ -514,29 +470,15 @@ function AgentsApp({ cwd, env, sessions: initialSessions, settings: initialSetti
514
470
  finish({ type: "quit" });
515
471
  return;
516
472
  }
517
- if (key.tab) {
518
- if (focus === "sessions") {
519
- setFocus("workspaces");
520
- setSelectedWorkspacePath(selectedSession ? workspacePath(selectedSession) : workspaces[0]?.path);
521
- }
522
- else
523
- setFocus("sessions");
524
- }
525
- else if (focus === "workspaces" && (key.upArrow || input === "k"))
526
- selectWorkspace(Math.max(0, workspaceIndex - 1));
527
- else if (focus === "workspaces" && (key.downArrow || input === "j"))
528
- selectWorkspace(Math.min(workspaces.length, workspaceIndex + 1));
529
- else if (focus === "workspaces" && key.return)
530
- launchWorkspaceSession();
531
- else if (focus === "sessions" && (key.upArrow || input === "k"))
473
+ if (key.upArrow || input === "k")
532
474
  selectSession(Math.max(0, selected - 1));
533
- else if (focus === "sessions" && (key.downArrow || input === "j"))
475
+ else if (key.downArrow || input === "j")
534
476
  selectSession(Math.min(Math.max(0, sessions.length - 1), selected + 1));
535
- else if (key.return && selectedSession)
477
+ else if (key.return && selectedSession && selectedSession.hosted !== false && selectedSession.state !== "stopped")
536
478
  finish({ type: "attach", session: selectedSession });
537
479
  else if (input === "n")
538
- openNewSession();
539
- else if (input === "e" && selectedSession)
480
+ openNewSession(selectedSession?.cwd === "?" ? undefined : selectedSession?.cwd);
481
+ else if (input === "e" && selectedSession && selectedSession.hosted !== false && selectedSession.state !== "stopped")
540
482
  setOverlay("rename");
541
483
  else if (input === "d" && selectedSession) {
542
484
  setOverlay("delete");
@@ -552,7 +494,7 @@ function AgentsApp({ cwd, env, sessions: initialSessions, settings: initialSetti
552
494
  setOverlay("settings");
553
495
  }
554
496
  });
555
- return (_jsxs(Box, { flexDirection: "column", width: "100%", minHeight: Math.max(12, rows - 1), paddingX: 1, children: [_jsx(Header, { cwd: cwd, sessions: sessions }), _jsxs(Box, { flexGrow: 1, marginTop: 1, gap: 1, children: [_jsx(WorkspaceRail, { sessions: sessions, selectedPath: selectedWorkspacePath, focused: focus === "workspaces" }), _jsx(SessionList, { sessions: sessions, selected: selected, rows: rows, width: Math.max(34, Math.floor(columns * 0.42)), focused: focus === "sessions" }), _jsx(Inspector, { session: selectedSession })] }), _jsx(Footer, {}), overlay === "new" && (_jsx(NewSessionModal, { cwd: cwd, sessions: allSessions, projectsFolder: settings.projectsFolder, initialDirectory: newSessionDirectory, selected: selectedSession, columns: columns, rows: rows, onSubmit: value => finish({ type: "new", ...value }), onClose: () => setOverlay(undefined) })), overlay === "help" && _jsx(HelpModal, { columns: columns, onClose: () => setOverlay(undefined) }), overlay === "delete" && selectedSession && _jsx(DeleteModal, { session: selectedSession, columns: columns, onConfirm: () => finish({ type: "delete", session: selectedSession, nextSessionName: sessions[selected - 1]?.name ?? sessions[selected + 1]?.name }), onClose: () => setOverlay(undefined) }), overlay === "rename" && selectedSession && _jsx(RenameModal, { session: selectedSession, columns: columns, onConfirm: value => finish({ type: "rename", session: selectedSession, nextId: value }), onClose: () => setOverlay(undefined) }), overlay === "settings" && (_jsx(SettingsModal, { cwd: cwd, settings: draftSettings, selected: overlaySelected, onMove: setOverlaySelected, columns: columns, onToggle: () => {
497
+ return (_jsxs(Box, { flexDirection: "column", width: "100%", minHeight: Math.max(12, rows - 1), paddingX: 1, children: [_jsx(Header, { sessions: sessions }), _jsx(Box, { flexGrow: 1, marginTop: 1, children: _jsx(SessionList, { sessions: sessions, selected: selected, rows: rows, width: Math.max(34, columns - 4) }) }), _jsx(SelectedSummary, { session: selectedSession, width: Math.max(34, columns - 4) }), _jsx(Footer, {}), overlay === "new" && (_jsx(NewSessionModal, { cwd: cwd, sessions: allSessions, projectsFolder: settings.projectsFolder, initialDirectory: newSessionDirectory, selected: selectedSession, columns: columns, rows: rows, onSubmit: value => finish({ type: "new", ...value }), onClose: () => setOverlay(undefined) })), overlay === "help" && _jsx(HelpModal, { columns: columns, onClose: () => setOverlay(undefined) }), overlay === "delete" && selectedSession && _jsx(DeleteModal, { session: selectedSession, columns: columns, onConfirm: () => finish({ type: "delete", session: selectedSession, nextSessionName: sessions[selected - 1]?.name ?? sessions[selected + 1]?.name }), onClose: () => setOverlay(undefined) }), overlay === "rename" && selectedSession && _jsx(RenameModal, { session: selectedSession, columns: columns, onConfirm: value => finish({ type: "rename", session: selectedSession, nextId: value }), onClose: () => setOverlay(undefined) }), overlay === "settings" && (_jsx(SettingsModal, { cwd: cwd, settings: draftSettings, selected: overlaySelected, onMove: setOverlaySelected, columns: columns, onToggle: () => {
556
498
  if (overlaySelected === 0)
557
499
  return;
558
500
  const field = overlaySelected === 1 ? "autoAttachLatest" : overlaySelected === 2 ? "mouseScrolling" : overlaySelected === 3 ? "showStoppedSessions" : "trayEnabled";
@@ -1 +1 @@
1
- {"version":3,"file":"agents-ink.js","sourceRoot":"","sources":["../../src/cli/agents-ink.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents-ink.js","sourceRoot":"","sources":["../../src/cli/agents-ink.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":";AAYA,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAA0C,KAAK,cAAc,EAAwB,MAAM,wBAAwB,CAAC;AAM3H,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6CD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAoCR;AAiBD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAerF;AAqCD,4DAA4D;AAC5D,wBAAsB,YAAY,CAChC,GAAG,SAAgB,EACnB,KAAK,GAAE,MAAM,EAAO,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,MAAM,CAAC,CA2BjB"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":";AAaA,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAA0C,KAAK,cAAc,EAAwB,MAAM,wBAAwB,CAAC;AAM3H,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6CD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAoCR;AAiBD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAerF;AAqCD,4DAA4D;AAC5D,wBAAsB,YAAY,CAChC,GAAG,SAAgB,EACnB,KAAK,GAAE,MAAM,EAAO,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,MAAM,CAAC,CA4BjB"}
@@ -2,7 +2,7 @@
2
2
  import { existsSync, statSync } from "node:fs";
3
3
  import { basename, resolve } from "node:path";
4
4
  import { stdin as input, stdout as output } from "node:process";
5
- import { attachOmbSession, deleteOmbSession, launchOmb, ombSessionName, renameOmbSession, setOmbSessionMouse, } from "../omp/tmux.js";
5
+ import { attachOmbSession, deleteOmbSession, forgetOmbSession, launchOmb, ombSessionName, renameOmbSession, setOmbSessionMouse, } from "../omp/tmux.js";
6
6
  import { loadOmbSettings, saveOmbSettings } from "../omp/omb-settings.js";
7
7
  import { listOmbSessions, ombSessionDisplayName } from "../omp/omb-sessions.js";
8
8
  import { activitySummary, compactAge } from "../omp/session-activity.js";
@@ -176,7 +176,10 @@ export async function runAgentsHub(cwd = process.cwd(), _args = [], env = proces
176
176
  await renameSession(action.session, action.nextId, env);
177
177
  else if (action.type === "delete") {
178
178
  preferredSessionName = action.nextSessionName;
179
- await deleteOmbSession(action.session.name, cwd, env);
179
+ if (action.session.hosted === false)
180
+ forgetOmbSession(action.session.name, env);
181
+ else
182
+ await deleteOmbSession(action.session.name, cwd, env);
180
183
  }
181
184
  }
182
185
  }