@kenkaiiii/gg-boss 4.3.99 → 4.3.101

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 (44) hide show
  1. package/dist/banner.d.ts +7 -1
  2. package/dist/banner.d.ts.map +1 -1
  3. package/dist/banner.js +2 -2
  4. package/dist/banner.js.map +1 -1
  5. package/dist/boss-store.d.ts +24 -1
  6. package/dist/boss-store.d.ts.map +1 -1
  7. package/dist/boss-store.js +33 -4
  8. package/dist/boss-store.js.map +1 -1
  9. package/dist/boss-system-prompt.d.ts.map +1 -1
  10. package/dist/boss-system-prompt.js +110 -45
  11. package/dist/boss-system-prompt.js.map +1 -1
  12. package/dist/boss-tasks-overlay.d.ts +22 -0
  13. package/dist/boss-tasks-overlay.d.ts.map +1 -0
  14. package/dist/boss-tasks-overlay.js +149 -0
  15. package/dist/boss-tasks-overlay.js.map +1 -0
  16. package/dist/cli.js +9 -8
  17. package/dist/cli.js.map +1 -1
  18. package/dist/orchestrator-app.d.ts.map +1 -1
  19. package/dist/orchestrator-app.js +121 -27
  20. package/dist/orchestrator-app.js.map +1 -1
  21. package/dist/orchestrator.d.ts +25 -0
  22. package/dist/orchestrator.d.ts.map +1 -1
  23. package/dist/orchestrator.js +87 -13
  24. package/dist/orchestrator.js.map +1 -1
  25. package/dist/settings.d.ts +10 -0
  26. package/dist/settings.d.ts.map +1 -0
  27. package/dist/settings.js +38 -0
  28. package/dist/settings.js.map +1 -0
  29. package/dist/slash-commands.d.ts.map +1 -1
  30. package/dist/slash-commands.js +1 -0
  31. package/dist/slash-commands.js.map +1 -1
  32. package/dist/task-tools.d.ts +18 -0
  33. package/dist/task-tools.d.ts.map +1 -0
  34. package/dist/task-tools.js +154 -0
  35. package/dist/task-tools.js.map +1 -0
  36. package/dist/tasks-store.d.ts +52 -0
  37. package/dist/tasks-store.d.ts.map +1 -0
  38. package/dist/tasks-store.js +153 -0
  39. package/dist/tasks-store.js.map +1 -0
  40. package/dist/tools.d.ts +16 -0
  41. package/dist/tools.d.ts.map +1 -1
  42. package/dist/tools.js +4 -1
  43. package/dist/tools.js.map +1 -1
  44. package/package.json +3 -3
@@ -0,0 +1,149 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import React, { useCallback, useEffect, useRef, useState } from "react";
3
+ import { Box, Text, useInput } from "ink";
4
+ import { useTheme } from "@kenkaiiii/ggcoder/ui/theme";
5
+ import { useTasksState, tasksStore } from "./tasks-store.js";
6
+ import { bossStore } from "./boss-store.js";
7
+ import { projectColor } from "./colors.js";
8
+ import { COLORS } from "./branding.js";
9
+ function statusGlyph(status) {
10
+ switch (status) {
11
+ case "done":
12
+ return "✓";
13
+ case "in_progress":
14
+ return "~";
15
+ case "blocked":
16
+ return "✗";
17
+ case "skipped":
18
+ return "—";
19
+ default:
20
+ return " ";
21
+ }
22
+ }
23
+ /**
24
+ * Multi-project task overlay for gg-boss. Read-mostly: tasks are added by the
25
+ * boss agent (via add_task tool), so the overlay is just a backlog viewer with
26
+ * two actions — delete a stuck task, or run all pending across idle workers.
27
+ *
28
+ * Keybinds (all the user actually needs):
29
+ * ↑↓ / k j navigate
30
+ * d delete selected task
31
+ * r dispatch_pending across all idle workers (parallel fan-out)
32
+ * Esc close
33
+ */
34
+ export function BossTasksOverlay({ boss, workers, onClose, }) {
35
+ const theme = useTheme();
36
+ const tasksState = useTasksState();
37
+ const tasks = tasksState.tasks;
38
+ const [selectedIndex, setSelectedIndex] = useState(0);
39
+ const [status, setStatusMsg] = useState("");
40
+ const statusTimer = useRef(null);
41
+ const showStatus = useCallback((msg) => {
42
+ setStatusMsg(msg);
43
+ if (statusTimer.current)
44
+ clearTimeout(statusTimer.current);
45
+ statusTimer.current = setTimeout(() => setStatusMsg(""), 2500);
46
+ }, []);
47
+ // Group tasks by project (in worker order).
48
+ const groupedTasks = workers.map((w) => ({
49
+ project: w.name,
50
+ tasks: tasks
51
+ .filter((t) => t.project === w.name)
52
+ .sort((a, b) => a.createdAt.localeCompare(b.createdAt)),
53
+ }));
54
+ const flatTasks = groupedTasks.flatMap((g) => g.tasks);
55
+ // Clamp selection.
56
+ useEffect(() => {
57
+ if (flatTasks.length === 0) {
58
+ setSelectedIndex(0);
59
+ }
60
+ else if (selectedIndex >= flatTasks.length) {
61
+ setSelectedIndex(flatTasks.length - 1);
62
+ }
63
+ }, [flatTasks.length, selectedIndex]);
64
+ const selected = flatTasks[selectedIndex];
65
+ // Cap how many tasks render at once so the live-area height stays bounded.
66
+ // Ink's log-update mispositions the cursor when the live area is much
67
+ // larger than the next frame — going from a 30-line tasks pane back to a
68
+ // 5-line chat chrome was clipping the user's scrollback above on close.
69
+ // Mirrors ggcoder's `maxVisible = 15` cap. Selection stays visible by
70
+ // scrolling the window when the cursor reaches the bottom.
71
+ const MAX_VISIBLE = 12;
72
+ const startIdx = Math.max(0, Math.min(flatTasks.length - MAX_VISIBLE, selectedIndex - MAX_VISIBLE + 1, selectedIndex));
73
+ const endIdx = Math.min(flatTasks.length, startIdx + MAX_VISIBLE);
74
+ const visibleIdSet = new Set(flatTasks.slice(startIdx, endIdx).map((t) => t.id));
75
+ const showingTop = startIdx > 0;
76
+ const showingBottom = endIdx < flatTasks.length;
77
+ useInput((input, key) => {
78
+ if (key.escape) {
79
+ onClose();
80
+ return;
81
+ }
82
+ if (key.upArrow || input === "k") {
83
+ setSelectedIndex((i) => Math.max(0, i - 1));
84
+ return;
85
+ }
86
+ if (key.downArrow || input === "j") {
87
+ setSelectedIndex((i) => Math.min(flatTasks.length - 1, i + 1));
88
+ return;
89
+ }
90
+ if (input === "d" && selected) {
91
+ void tasksStore.remove(selected.id).then(() => showStatus("Deleted"));
92
+ return;
93
+ }
94
+ if (input === "r") {
95
+ // Close immediately so the user lands back in the chat view and can
96
+ // watch worker activity stream in. Dispatch fires in the background;
97
+ // worker_turn_complete events flow into history as normal.
98
+ onClose();
99
+ void (async () => {
100
+ const dispatched = [];
101
+ for (const w of workers) {
102
+ const next = tasksStore.nextPending(w.name);
103
+ if (!next)
104
+ continue;
105
+ const res = await boss.dispatchTaskById(next.id);
106
+ if (res.ok)
107
+ dispatched.push({ project: w.name, title: next.title });
108
+ }
109
+ if (dispatched.length === 0) {
110
+ bossStore.appendInfo("No pending tasks to run.", "info");
111
+ }
112
+ else {
113
+ bossStore.appendTaskDispatch(dispatched);
114
+ }
115
+ })();
116
+ return;
117
+ }
118
+ });
119
+ const doneCount = tasks.filter((t) => t.status === "done").length;
120
+ const inProgressCount = tasks.filter((t) => t.status === "in_progress").length;
121
+ const pendingCount = tasks.filter((t) => t.status === "pending").length;
122
+ const blockedCount = tasks.filter((t) => t.status === "blocked").length;
123
+ return (_jsxs(Box, { flexDirection: "column", marginTop: 1, paddingX: 1, children: [_jsxs(Box, { children: [_jsx(Text, { color: COLORS.primary, bold: true, children: "Tasks" }), _jsx(Text, { color: theme.textDim, children: ` · ${tasks.length} total · ` }), _jsx(CountsRow, { theme: theme, done: doneCount, active: inProgressCount, pending: pendingCount, blocked: blockedCount })] }), flatTasks.length === 0 && (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: theme.textDim, children: [" No tasks yet. Ask the boss to plan some — e.g. ", _jsx(Text, { color: theme.text, children: "\"plan some work\"" }), "."] }) })), showingTop && _jsx(Text, { color: theme.textDim, children: ` ↑ ${startIdx} more above` }), groupedTasks.map((group, gIdx) => {
124
+ const startInFlat = groupedTasks.slice(0, gIdx).reduce((acc, g) => acc + g.tasks.length, 0);
125
+ const visibleInSection = group.tasks.filter((t) => visibleIdSet.has(t.id));
126
+ if (visibleInSection.length === 0)
127
+ return null;
128
+ return (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsxs(Text, { children: [_jsx(Text, { color: projectColor(group.project), bold: true, children: group.project }), _jsx(Text, { color: theme.textDim, children: ` · ${group.tasks.length}` })] }), visibleInSection.map((task) => {
129
+ const realIdx = startInFlat + group.tasks.indexOf(task);
130
+ const isSelected = realIdx === selectedIndex;
131
+ const prefix = isSelected ? "❯ " : " ";
132
+ const glyph = statusGlyph(task.status);
133
+ const color = isSelected
134
+ ? theme.primary
135
+ : task.status === "done"
136
+ ? theme.success
137
+ : task.status === "in_progress"
138
+ ? theme.warning
139
+ : task.status === "blocked"
140
+ ? theme.error
141
+ : theme.text;
142
+ return (_jsxs(Text, { color: color, bold: isSelected, children: [prefix, "[", glyph, "] ", task.title] }, task.id));
143
+ })] }, group.project));
144
+ }), showingBottom && (_jsx(Text, { color: theme.textDim, children: ` ↓ ${flatTasks.length - endIdx} more below` })), status && (_jsx(Box, { marginTop: 1, children: _jsx(Text, { color: theme.success, children: " " + status }) })), _jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: theme.textDim, children: [_jsx(Text, { color: theme.primary, children: "\u2191\u2193" }), " move · (", _jsx(Text, { color: theme.primary, children: "d" }), ")elete · (", _jsx(Text, { color: theme.primary, children: "r" }), ")un pending · ", _jsx(Text, { color: theme.primary, children: "ESC" }), " close"] }) })] }));
145
+ }
146
+ function CountsRow({ theme, done, active, pending, blocked, }) {
147
+ return (_jsxs(Text, { children: [_jsxs(Text, { color: theme.success, children: [done, " done"] }), _jsx(Text, { color: theme.textDim, children: " \u00B7 " }), _jsxs(Text, { color: theme.warning, children: [active, " active"] }), _jsx(Text, { color: theme.textDim, children: " \u00B7 " }), _jsxs(Text, { color: theme.text, children: [pending, " pending"] }), blocked > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { color: theme.textDim, children: " \u00B7 " }), _jsxs(Text, { color: theme.error, children: [blocked, " blocked"] })] }))] }));
148
+ }
149
+ //# sourceMappingURL=boss-tasks-overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boss-tasks-overlay.js","sourceRoot":"","sources":["../src/boss-tasks-overlay.tsx"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -6,6 +6,7 @@ import { loadLinks } from "./links.js";
6
6
  import { runLinkCommand } from "./link-command.js";
7
7
  import { COLORS, clearScreen } from "./branding.js";
8
8
  import { renderBossApp } from "./orchestrator-app.js";
9
+ import { loadSettings } from "./settings.js";
9
10
  function parseProjectSpec(raw) {
10
11
  const eq = raw.indexOf("=");
11
12
  if (eq > 0) {
@@ -18,10 +19,6 @@ function parseProjectSpec(raw) {
18
19
  }
19
20
  function parseArgs(argv) {
20
21
  const args = {
21
- bossProvider: "anthropic",
22
- bossModel: "claude-opus-4-7",
23
- workerProvider: "anthropic",
24
- workerModel: "claude-sonnet-4-6",
25
22
  projects: [],
26
23
  };
27
24
  for (let i = 0; i < argv.length; i++) {
@@ -117,11 +114,15 @@ async function runOrchestrator(args) {
117
114
  process.stdout.write(chalk.hex(COLORS.textDim)(" Initializing ") +
118
115
  chalk.hex(COLORS.primary)("GG Boss") +
119
116
  chalk.hex(COLORS.textDim)(`…\n Spinning up ${args.projects.length} worker${args.projects.length === 1 ? "" : "s"}.\n`));
117
+ // Resolve final boss/worker models: CLI flags > saved settings > defaults.
118
+ // Settings persist user choices made via /model boss / /model workers across
119
+ // restarts so the user doesn't have to re-pick every session.
120
+ const settings = await loadSettings();
120
121
  const boss = new GGBoss({
121
- bossProvider: args.bossProvider,
122
- bossModel: args.bossModel,
123
- workerProvider: args.workerProvider,
124
- workerModel: args.workerModel,
122
+ bossProvider: args.bossProvider ?? settings.bossProvider ?? "anthropic",
123
+ bossModel: args.bossModel ?? settings.bossModel ?? "claude-opus-4-7",
124
+ workerProvider: args.workerProvider ?? settings.workerProvider ?? "anthropic",
125
+ workerModel: args.workerModel ?? settings.workerModel ?? "claude-sonnet-4-6",
125
126
  projects: args.projects,
126
127
  continueRecent: args.continueRecent,
127
128
  resumeSessionId: args.resumeSessionId,
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator-app.d.ts","sourceRoot":"","sources":["../src/orchestrator-app.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAsCpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAQhD,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,YAAY,GAAG,KAAK,CAAC,YAAY,CAWlE;AAijBD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG;IACzD,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAYA"}
1
+ {"version":3,"file":"orchestrator-app.d.ts","sourceRoot":"","sources":["../src/orchestrator-app.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAyCjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAQhD,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,YAAY,GAAG,KAAK,CAAC,YAAY,CAWlE;AAktBD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG;IACzD,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAYA"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import React, { useEffect, useMemo, useRef, useState } from "react";
3
- import { Box, Static, Text, render, useApp, useInput } from "ink";
2
+ import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
3
+ import { Box, Static, Text, render, useApp, useInput, useStdout } from "ink";
4
4
  import { ThemeContext, loadTheme, useTheme } from "@kenkaiiii/ggcoder/ui/theme";
5
- import { ActivityIndicator, AnimationProvider, AssistantMessage, CompactionDone, CompactionSpinner, InputArea, MessageResponse, ModelSelector, StreamingArea, ToolExecution, ToolUseLoader, UserMessage, } from "@kenkaiiii/ggcoder/ui";
5
+ import { ActivityIndicator, AnimationProvider, AssistantMessage, CompactionDone, CompactionSpinner, InputArea, MessageResponse, ModelSelector, StreamingArea, ToolExecution, ToolUseLoader, UserMessage, useAnimationActive, useAnimationTick, } from "@kenkaiiii/ggcoder/ui";
6
6
  import { useDoublePress } from "@kenkaiiii/ggcoder/ui/hooks/double-press";
7
7
  import { TerminalSizeProvider, useTerminalSize } from "@kenkaiiii/ggcoder/ui/hooks/terminal-size";
8
8
  import { BossFooter } from "./boss-footer.js";
@@ -13,6 +13,7 @@ import { bossToolFormatters } from "./tool-formatters.js";
13
13
  import { projectColor } from "./colors.js";
14
14
  import { BOSS_PHRASES } from "./boss-phrases.js";
15
15
  import { COLORS, PULSE_COLORS as BOSS_PULSE_COLORS } from "./branding.js";
16
+ import { BossTasksOverlay } from "./boss-tasks-overlay.js";
16
17
  export function BossApp({ boss }) {
17
18
  const theme = loadTheme("dark");
18
19
  return (_jsx(TerminalSizeProvider, { children: _jsx(ThemeContext.Provider, { value: theme, children: _jsx(AnimationProvider, { children: _jsx(BossAppInner, { boss: boss }) }) }) }));
@@ -20,6 +21,8 @@ export function BossApp({ boss }) {
20
21
  function BossAppInner({ boss }) {
21
22
  const state = useBossState();
22
23
  const { exit } = useApp();
24
+ const { stdout } = useStdout();
25
+ const { resizeKey, columns } = useTerminalSize();
23
26
  const runStartRef = useRef(null);
24
27
  runStartRef.current = state.runStartMs;
25
28
  // Live char count of the current streaming text — drives ActivityIndicator's
@@ -34,7 +37,49 @@ function BossAppInner({ boss }) {
34
37
  // selection has something to riff on (when not using BOSS_PHRASES override).
35
38
  const [lastUserMessage, setLastUserMessage] = useState("");
36
39
  const [overlay, setOverlay] = useState(null);
40
+ // Terminal title — mirrors ggcoder's useTerminalTitle pattern. OSC 0
41
+ // sets BOTH the window and tab title in most terminals (Ghostty,
42
+ // Terminal.app, iTerm2, Kitty). "GG Boss" idle, "● GG Boss" any time the
43
+ // boss is reasoning OR any worker is running so the user sees activity at
44
+ // a glance even when ggboss is in the background.
45
+ const anyWorkerRunning = state.workers.some((w) => w.status === "working");
46
+ const titleActive = state.phase === "working" || anyWorkerRunning;
47
+ const titlePrevRef = useRef("");
48
+ useEffect(() => {
49
+ if (!stdout)
50
+ return;
51
+ const title = titleActive ? "● GG Boss" : "GG Boss";
52
+ if (title !== titlePrevRef.current) {
53
+ titlePrevRef.current = title;
54
+ stdout.write(`\x1b]0;${title}\x1b\\`);
55
+ }
56
+ }, [stdout, titleActive]);
57
+ useEffect(() => {
58
+ return () => {
59
+ stdout?.write(`\x1b]0;GG Boss\x1b\\`);
60
+ };
61
+ }, [stdout]);
37
62
  const staticItems = useMemo(() => [{ kind: "banner", id: "banner" }, ...state.history], [state.history]);
63
+ /**
64
+ * No screen clears, no Static remounts. Just toggle React state.
65
+ *
66
+ * Banner is emitted ONCE on initial mount (Static's natural behavior — items
67
+ * by id are emitted exactly once per Static instance lifetime). It lives in
68
+ * scrollback forever after that, never re-emitted. So duplicate banners are
69
+ * structurally impossible.
70
+ *
71
+ * The remaining concern is Ink's log-update cursor math when the live area
72
+ * shrinks (tasks pane → chat chrome). log-update only clears within the
73
+ * previous frame's footprint at the bottom of the viewport — it cannot
74
+ * reach into scrollback. So banner + history in scrollback stay intact.
75
+ */
76
+ const openOverlay = useCallback((next) => {
77
+ setOverlay(next);
78
+ }, []);
79
+ const closeOverlay = useCallback(() => {
80
+ setOverlay(null);
81
+ }, []);
82
+ void stdout;
38
83
  // ggcoder's double-press pattern: 800ms window. First press shows
39
84
  // "Press Ctrl+C again to exit" in the footer; second within 800ms exits.
40
85
  const handleDoubleExit = useDoublePress((pending) => bossStore.setExitPending(pending), () => exit());
@@ -46,11 +91,17 @@ function BossAppInner({ boss }) {
46
91
  bossStore.commitPendingFlush();
47
92
  }
48
93
  }, [state.flushGeneration, state.pendingFlush.length]);
49
- // ── ESC interrupt ───────────────────────────────────────
50
- // Listen at the App level. When the boss is running, ESC aborts its current
51
- // LLM call. When idle, InputArea handles ESC (clear input / clear selection)
52
- // and our handler is a no-op since `state.phase !== "working"`.
53
- useInput((_input, key) => {
94
+ // ── App-level keyboard ──────────────────────────────────
95
+ // ESC: abort current boss call when working (InputArea handles otherwise).
96
+ // Ctrl+T: toggle the Tasks overlay (matches ggcoder's keybind).
97
+ useInput((input, key) => {
98
+ if (key.ctrl && input === "t") {
99
+ if (overlay === "tasks")
100
+ closeOverlay();
101
+ else
102
+ openOverlay("tasks");
103
+ return;
104
+ }
54
105
  if (key.escape && state.phase === "working") {
55
106
  boss.abort();
56
107
  }
@@ -79,15 +130,18 @@ function BossAppInner({ boss }) {
79
130
  bossStore.appendInfo(formatWorkerList(state.workers), "info");
80
131
  return true;
81
132
  case "model-boss":
82
- setOverlay("model-boss");
133
+ openOverlay("model-boss");
83
134
  return true;
84
135
  case "model-workers":
85
- setOverlay("model-workers");
136
+ openOverlay("model-workers");
86
137
  return true;
87
138
  case "compact":
88
139
  bossStore.appendUser(value);
89
140
  await boss.manualCompact();
90
141
  return true;
142
+ case "tasks":
143
+ openOverlay("tasks");
144
+ return true;
91
145
  case "new":
92
146
  bossStore.clearHistory();
93
147
  await boss.newSession();
@@ -101,7 +155,7 @@ function BossAppInner({ boss }) {
101
155
  const handleModelSelect = (value) => {
102
156
  const colon = value.indexOf(":");
103
157
  if (colon < 0) {
104
- setOverlay(null);
158
+ closeOverlay();
105
159
  return;
106
160
  }
107
161
  const provider = value.slice(0, colon);
@@ -112,7 +166,7 @@ function BossAppInner({ boss }) {
112
166
  else if (overlay === "model-workers") {
113
167
  void boss.switchWorkerModel(provider, model);
114
168
  }
115
- setOverlay(null);
169
+ closeOverlay();
116
170
  };
117
171
  const handleSubmit = (value) => {
118
172
  const trimmed = value.trim();
@@ -139,9 +193,9 @@ function BossAppInner({ boss }) {
139
193
  // Boss is idle → double-press to exit, with footer pending message.
140
194
  handleDoubleExit();
141
195
  };
142
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Static, { items: staticItems, children: (item) => _jsx(StaticRowView, { row: item }, item.id) }), state.streaming && (_jsx(StreamingTurnView, { turn: state.streaming, isRunning: state.phase === "working" })), state.phase === "working" && (_jsx(Box, { marginTop: 1, children: _jsx(ActivityIndicator, { phase: state.activityPhase, elapsedMs: state.runStartMs ? Date.now() - state.runStartMs : 0, runStartRef: runStartRef, thinkingMs: state.streaming?.thinkingMs ?? 0, isThinking: state.activityPhase === "thinking", tokenEstimate: state.bossInputTokens, charCountRef: charCountRef, realTokensAccumRef: realTokensAccumRef, userMessage: lastUserMessage, activeToolNames: (state.streaming?.tools ?? [])
143
- .filter((t) => t.status === "running")
144
- .map((t) => t.name), retryInfo: state.retryInfo, phrases: BOSS_PHRASES, pulseColors: BOSS_PULSE_COLORS }) })), state.compaction?.state === "running" && _jsx(CompactionSpinner, {}), state.compaction?.state === "done" && (_jsx(CompactionDone, { originalCount: state.compaction.originalCount, newCount: state.compaction.newCount, tokensBefore: state.compaction.tokensBefore, tokensAfter: state.compaction.tokensAfter })), _jsx(InputArea, { onSubmit: handleSubmit, onAbort: handleAbort, disabled: state.phase === "working", isActive: !overlay, cwd: process.cwd(), commands: BOSS_SLASH_COMMANDS, scopeBadge: _jsx(ScopePill, { scope: state.scope }), onTab: () => bossStore.cycleScope() }), overlay ? (_jsx(ModelSelector, { onSelect: handleModelSelect, onCancel: () => setOverlay(null), loggedInProviders: state.loggedInProviders, currentModel: overlay === "model-boss" ? state.bossModel : state.workerModel, currentProvider: overlay === "model-boss" ? state.bossProvider : state.workerProvider })) : (_jsxs(_Fragment, { children: [_jsx(BossFooter, { bossModel: state.bossModel, workerModel: state.workerModel, tokensIn: state.bossInputTokens, exitPending: state.exitPending }), !state.exitPending && (_jsx(WorkerStatusBar, { workers: state.workers, pendingMessages: state.pendingUserMessages }))] }))] }));
196
+ return (_jsxs(Box, { flexDirection: "column", width: columns, children: [_jsx(Static, { items: staticItems, style: { width: "100%" }, children: (item) => (_jsx(Box, { flexDirection: "column", paddingRight: 1, children: _jsx(StaticRowView, { row: item }) }, item.id)) }, resizeKey), overlay === "tasks" ? (_jsx(BossTasksOverlay, { boss: boss, workers: state.workers, onClose: closeOverlay })) : (_jsxs(_Fragment, { children: [state.streaming && (_jsx(StreamingTurnView, { turn: state.streaming, isRunning: state.phase === "working" })), state.phase === "working" && (_jsx(Box, { marginTop: 1, children: _jsx(ActivityIndicator, { phase: state.activityPhase, elapsedMs: state.runStartMs ? Date.now() - state.runStartMs : 0, runStartRef: runStartRef, thinkingMs: state.streaming?.thinkingMs ?? 0, isThinking: state.activityPhase === "thinking", tokenEstimate: state.bossInputTokens, charCountRef: charCountRef, realTokensAccumRef: realTokensAccumRef, userMessage: lastUserMessage, activeToolNames: (state.streaming?.tools ?? [])
197
+ .filter((t) => t.status === "running")
198
+ .map((t) => t.name), retryInfo: state.retryInfo, phrases: BOSS_PHRASES, pulseColors: BOSS_PULSE_COLORS }) })), state.compaction?.state === "running" && _jsx(CompactionSpinner, {}), state.compaction?.state === "done" && (_jsx(CompactionDone, { originalCount: state.compaction.originalCount, newCount: state.compaction.newCount, tokensBefore: state.compaction.tokensBefore, tokensAfter: state.compaction.tokensAfter })), _jsx(InputArea, { onSubmit: handleSubmit, onAbort: handleAbort, disabled: state.phase === "working", isActive: !overlay, cwd: process.cwd(), commands: BOSS_SLASH_COMMANDS, scopeBadge: _jsx(ScopePill, { scope: state.scope }), onTab: () => bossStore.cycleScope() }), overlay === "model-boss" || overlay === "model-workers" ? (_jsx(ModelSelector, { onSelect: handleModelSelect, onCancel: closeOverlay, loggedInProviders: state.loggedInProviders, currentModel: overlay === "model-boss" ? state.bossModel : state.workerModel, currentProvider: overlay === "model-boss" ? state.bossProvider : state.workerProvider })) : (_jsxs(_Fragment, { children: [_jsx(BossFooter, { bossModel: state.bossModel, workerModel: state.workerModel, tokensIn: state.bossInputTokens, exitPending: state.exitPending }), !state.exitPending && (_jsx(WorkerStatusBar, { workers: state.workers, pendingMessages: state.pendingUserMessages }))] }))] }))] }));
145
199
  }
146
200
  // ── Scope pill (gg-boss specific) ──────────────────────────
147
201
  function ScopePill({ scope }) {
@@ -165,27 +219,60 @@ function scopePrefix(scope) {
165
219
  return `[scope:${scope}] `;
166
220
  }
167
221
  // ── Worker status row (gg-boss specific) ───────────────────
222
+ const SHIMMER_WIDTH = 3;
168
223
  const WORKER_GLYPH = {
169
224
  idle: "○",
170
225
  working: "●",
171
226
  error: "✗",
172
227
  };
228
+ function formatElapsed(ms) {
229
+ const total = Math.floor(ms / 1000);
230
+ const m = Math.floor(total / 60);
231
+ const s = total % 60;
232
+ return `${m}:${s.toString().padStart(2, "0")}`;
233
+ }
234
+ /**
235
+ * Mount this when (and only when) the shimmer needs to tick. AnimationProvider
236
+ * stops the global timer when its subscriber count hits zero, so unmounting
237
+ * this sentinel halts the 10Hz re-render loop while every worker is idle.
238
+ */
239
+ function AnimationActiveSentinel() {
240
+ useAnimationActive();
241
+ return null;
242
+ }
243
+ /**
244
+ * Same shimmer pattern used by ggcoder's ActivityIndicator phrases — a bright
245
+ * highlight band of width `SHIMMER_WIDTH` slides across the text while the
246
+ * rest stays dim. Driven by the global animation tick.
247
+ */
248
+ function ShimmerName({ name, color, tick, }) {
249
+ // Cycle covers the name length plus a SHIMMER_WIDTH-wide pre-roll/post-roll
250
+ // so the bright band fully exits one side before re-entering the other.
251
+ const cycle = name.length + SHIMMER_WIDTH * 2;
252
+ const shimmerPos = (tick % cycle) - SHIMMER_WIDTH;
253
+ return (_jsx(Text, { children: name.split("").map((ch, i) => {
254
+ const isBright = Math.abs(i - shimmerPos) <= SHIMMER_WIDTH;
255
+ return (_jsx(Text, { color: color, bold: isBright, dimColor: !isBright, children: ch }, i));
256
+ }) }));
257
+ }
173
258
  function WorkerStatusBar({ workers, pendingMessages, }) {
174
259
  const theme = useTheme();
260
+ const anyWorking = workers.some((w) => w.status === "working");
261
+ // Passive tick consumer — when no Sentinel is mounted (no working worker),
262
+ // the global timer is paused and the tick value stops changing, so this
263
+ // component doesn't re-render at 10Hz when everything is idle.
264
+ const tick = useAnimationTick();
265
+ const now = Date.now();
175
266
  if (workers.length === 0)
176
267
  return null;
177
- return (_jsxs(Box, { paddingX: 1, children: [workers.map((w, i) => {
178
- // Glyph color tracks status. Name color tracks PROJECT — same hue as
179
- // the worker event row + scope pill — so each project is instantly
180
- // identifiable. Errored workers turn red entirely.
268
+ return (_jsxs(Box, { paddingX: 1, children: [anyWorking && _jsx(AnimationActiveSentinel, {}), workers.map((w, i) => {
181
269
  const errored = w.status === "error";
182
- const glyphColor = errored
183
- ? theme.error
184
- : w.status === "working"
185
- ? projectColor(w.name)
186
- : theme.textDim;
187
- const nameColor = errored ? theme.error : projectColor(w.name);
188
- return (_jsxs(React.Fragment, { children: [i > 0 && _jsx(Text, { color: theme.textDim, children: " " }), _jsxs(Text, { color: glyphColor, children: [WORKER_GLYPH[w.status], " "] }), _jsx(Text, { color: nameColor, bold: w.status === "working", dimColor: w.status === "idle", children: w.name })] }, w.name));
270
+ const working = w.status === "working";
271
+ const glyph = WORKER_GLYPH[w.status];
272
+ const projectHue = projectColor(w.name);
273
+ const glyphColor = errored ? theme.error : working ? projectHue : theme.textDim;
274
+ const elapsed = working && w.workStartedAt ? formatElapsed(now - w.workStartedAt) : null;
275
+ return (_jsxs(React.Fragment, { children: [i > 0 && _jsx(Text, { color: theme.textDim, children: " " }), _jsxs(Text, { color: glyphColor, children: [glyph, " "] }), working ? (_jsx(ShimmerName, { name: w.name, color: projectHue, tick: tick })) : (_jsx(Text, { color: errored ? theme.error : projectHue, dimColor: w.status === "idle", children: w.name })), elapsed && _jsxs(Text, { color: theme.textDim, children: [" ", elapsed] })] }, w.name));
189
276
  }), pendingMessages > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { color: theme.textDim, children: " " }), _jsxs(Text, { color: theme.warning, children: [pendingMessages, " message", pendingMessages === 1 ? "" : "s", " queued"] })] }))] }));
190
277
  }
191
278
  function formatWorkerList(workers) {
@@ -200,7 +287,7 @@ function formatWorkerList(workers) {
200
287
  // ── Row dispatch ───────────────────────────────────────────
201
288
  function StaticRowView({ row }) {
202
289
  if (row.kind === "banner") {
203
- return (_jsx(Box, { paddingX: 1, children: _jsx(BossBanner, { subtitle: "Orchestrator", hint: "talking to all linked projects from one chat" }) }));
290
+ return (_jsx(Box, { paddingX: 1, children: _jsx(BossBanner, { subtitle: "Orchestrator", showShortcuts: true }) }));
204
291
  }
205
292
  if (row.kind === "user")
206
293
  return _jsx(UserMessage, { text: row.text });
@@ -214,8 +301,15 @@ function StaticRowView({ row }) {
214
301
  return _jsx(WorkerErrorRow, { item: row });
215
302
  if (row.kind === "info")
216
303
  return _jsx(InfoRow, { text: row.text, level: row.level ?? "info" });
304
+ if (row.kind === "task_dispatch")
305
+ return _jsx(TaskDispatchRow, { tasks: row.tasks });
217
306
  return null;
218
307
  }
308
+ function TaskDispatchRow({ tasks, }) {
309
+ const theme = useTheme();
310
+ const count = tasks.length;
311
+ return (_jsxs(Box, { flexDirection: "column", paddingX: 1, marginTop: 1, children: [_jsxs(Text, { children: [_jsx(Text, { color: COLORS.primary, bold: true, children: "⏺ " }), _jsxs(Text, { color: theme.text, bold: true, children: ["Running ", count, " task", count === 1 ? "" : "s", ":"] })] }), tasks.map((t, i) => (_jsxs(Text, { children: [_jsx(Text, { color: theme.textDim, children: " • " }), _jsx(Text, { color: projectColor(t.project), bold: true, children: t.project }), _jsx(Text, { color: theme.textDim, children: ": " }), _jsx(Text, { color: theme.text, children: t.title })] }, `${t.project}-${i}`)))] }));
312
+ }
219
313
  function AssistantRow({ item }) {
220
314
  return (_jsx(AssistantMessage, { text: item.text, thinking: item.thinking, thinkingMs: item.thinkingMs }));
221
315
  }
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator-app.js","sourceRoot":"","sources":["../src/orchestrator-app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator-app.js","sourceRoot":"","sources":["../src/orchestrator-app.tsx"],"names":[],"mappings":"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"}