agentgui 1.0.1015 → 1.0.1017

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.
package/AGENTS.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # AgentGUI — Agent Notes
2
2
 
3
+ ## Visual-polish pass — shell depth, composer weight, chat gutter (2026-07-03) — twenty-eighth run
4
+
5
+ User feedback: the shipped GUI "looks very diy". A live-browser screenshot audit (not a full agent fan-out) named 3 concrete, high-leverage causes and fixed all 3 in the kit. (1) `.ws-sessions` used flat `--bg`, identical to the main content column — `.ws-rail` and `.ws-pane` both already use `--bg-2` (a recessed plane framing the elevated content column) for exactly this reason; sessions was the one column breaking that pattern, so the conversation list and chat thread read as ONE continuous surface with only a 1px hairline between them — the single flattest tell in the shell. Now consistent. (2) `.chat-composer` — the box the user types into every turn — had zero elevation at rest, a flat hairline box on a flat background; added the kit's own already-defined-but-unused `--shadow-1` token (the existing focus-within ring still overrides it on focus). (3) The chat tab opts out of `.ws-main`'s padding via `mainFlush` (so the thread can center at `--measure`), but that left the controls row, heading, empty-state, and composer all flush against the column edge on both sides with zero gutter — the crumb bar above kept its own padding, so everything below visibly touched the edge the crumb text did not. Added a uniform inline gutter to `.agentchat` itself; `--measure` centering is unaffected (it centers within the now-padded box). **Standing rule: `.ws-rail`/`.ws-sessions`/`.ws-pane` must all three use `--bg-2` for consistent shell depth — a future column added flat `--bg` would repeat this exact regression.** Also landed inherited uncommitted community-app reply/delete-message work sitting dirty in the kit tree. Browser-witnessed at 1280px and 420px before/after: visible depth/weight/gutter improvement, no wrap/overlap regression, 0 console errors. Kit pushed `anentrypoint-design` `53c8464`, agentgui pushed `42708ea`. `agentgui`'s Deploy GH Pages flaked once (the known "Deployment cancelled" pattern — see the 26th-run note) and succeeded on rerun after patient wait.
6
+
3
7
  ## Negative-space + attention sweep (2026-07-03) — twenty-seventh run
4
8
 
5
9
  Scoped to the specific ask (negative space / attention), not a full agent fan-out: a live-browser review (screenshots + DOM measurement at 1280px and 420px) across chat/files/settings. Chat/settings visual balance was already reasonable from the prior 26 runs; found and fixed 2 real issues. (1) Files filter placeholder "Filter files in this directory" clipped against its intentionally-compact 220px input (no ellipsis, last character cut off at the box edge) — shortened to "Filter files", which fits without widening the control (the kit's own comment already states the compact width is deliberate: a full-width filter "reads as a search page and costs fold height"). (2) Settings SERVER panel rendered 4 short facts (version/uptime/connected clients/projects folder) each as its own `.lede` div — `.lede` is the `fs-xl`/tall-line-height INTRO-PARAGRAPH style, not a metadata style, so 4 short facts read as 4 oversized paragraphs with real dead vertical space between them, and inconsistent density vs the "allowed roots" rows directly below (already using the compact `SessionMeta` strip). Folded all 4 facts into one `SessionMeta` call alongside the roots — same information, denser, one consistent style for every fact in the panel. Browser-witnessed at both viewport widths, no wrap/overlap regression. No kit changes needed (both fixes are app-only copy/wiring). Pushed `b0b38fb`.
@@ -28,13 +32,7 @@ Small, targeted run landing the 22nd-run's deferred perceived-perf findings. `in
28
32
 
29
33
  ## GUI cohesion sweep (2026-07-02) — twenty-first run
30
34
 
31
- `gui-cohesion` workflow wf_6b9f1890-320 (25 agents, 12 confirmed). Kit (`../design`): `WorkspaceRail` items gain an optional `rail` attention-dot tone (a background surface, e.g. an errored Live session, can flag its nav item even while the user is elsewhere) — new `.ws-rail-item-flag` CSS. `WorkspaceShell` extends the pane-track `stableFrame` treatment to the sessions column (`keepSessionsTrack`, mirrors `keepPaneTrack`) so navigating chat/history/files/live/settings no longer reflows the 4-column grid to 3 and back. Mobile `ws-sessions`/`ws-pane` drawers now trap Tab/Shift+Tab focus (exported `trapTab` from `overlay-primitives.js`, reused in `shell.js`'s `toggleWsDrawer`) previously Tab could walk focus out into the scrim. `ConversationList` rows accept a richer optional `status` ('error'|'stale'|'running'|'stopping') mirroring `SessionCard`'s `STATUS_DISC`, so a session pinned to the rail's "Running" group shows stuck-vs-busy. `ContextPane` gains a `recentFiles`/`onOpenFile` "recent files" panel. Also picked up inherited uncommitted 19th/20th-run work sitting dirty in the kit tree (agent-chat/chat/files-modals/files a11y+dropzone fixes) — commit and push before starting new work if `git status --porcelain` is non-empty at PLAN entry.
32
-
33
- App (`site/app/js/app.js`): new `computeLiveSessions()` is the single source of truth for the live session set (owned `chat.active` rows + external SSE-observed sessions) — shared by the `WorkspaceRail` Live badge count/error-flame tone AND `liveMain()`'s dashboard, closing a prior gap where the nav badge undercounted external sessions the dashboard showed. Sessions rail now renders on the Live tab too (previously only chat/history), so the "jump between conversations" rail and "all sessions at once" oversight view coexist. Follow-up chip "Open X in files" relabeled "Explain X" — it only ever called `sendChat`, never navigated, so the label lied about its behavior. `recentSessionFiles()` scans Edit/Write/MultiEdit/Read/NotebookEdit tool-call args for `file_path`/`path`/`notebook_path`, deduped, most-recent-first, feeding `ContextPane`. "disconnected" -> "offline" in two remaining spots (live-stream reconnect banner, ACP agent status) to match the connected/connecting/offline vocabulary used everywhere else. `refreshActive()` now skips its network poll while `document.hidden` (resumes immediately on `visibilitychange`) instead of polling every ~3.3s from backgrounded tabs.
34
-
35
- Server (`lib/http-handler.js`): `/health` now reports `corsWildcardOpen` (true when `CORS_ORIGIN=*` and no `PASSWORD`); the settings panel renders a persistent error `Alert` from it instead of relying on the console-only boot warning an operator not tailing logs would never see.
36
-
37
- Witnessed: kit build (`node scripts/build.mjs`) — lint-tokens/lint-glyphs/lint-null-children/lint-classes all OK; `test.js` 28/28; browser localhost:3010/gm/ chat/live/settings tabs, 0 console errors, sessions column confirmed present on Live tab post-fix. Kit pushed `anentrypoint-design` `6cfd115` (rebased onto concurrent-writer `fe50db5`, dist regenerated rather than hand-merging the conflicting minified bundle). agentgui pushed `3410178`. Both repos' CI (Test/Publish/Deploy GH Pages) green.
35
+ 25-agent audit, 12 confirmed. WorkspaceRail attention-dot tone, WorkspaceShell keepSessionsTrack (stable column count across tabs), mobile drawer focus-trap, ConversationList richer status, ContextPane recentFiles panel. **Standing rule: commit and push any inherited uncommitted work found dirty in the tree BEFORE starting new work at PLAN entry never leave it stranded under a fresh, disjoint cover.** Full detail in rs-learn (recall "agentgui 21st run cohesion sweep").
38
36
 
39
37
  ## CRITICAL — ACP is managed ONLY by `lib/acp-sdk-manager.js`
40
38
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentgui",
3
- "version": "1.0.1015",
3
+ "version": "1.0.1017",
4
4
  "description": "Multi-agent ACP client with real-time communication",
5
5
  "type": "module",
6
6
  "main": "electron/main.js",
@@ -3996,7 +3996,11 @@
3996
3996
  /* Expand/collapse is meaningless on the icon strip. */
3997
3997
  .ds-247420 .ws-rail-toggle { display: none; }
3998
3998
  .ds-247420 .ws-rail-foot { display: flex; justify-content: center; }
3999
- .ds-247420 .ws-sessions { inset: 0 auto 0 var(--ws-rail-w-collapsed); }
3999
+ /* The 1100px rule's closed-state translateX(-110%) was sized for left:0;
4000
+ once left shifts to the collapsed rail width, -110% no longer clears the
4001
+ viewport and leaves a sliver of the "closed" drawer visible on screen. */
4002
+ .ds-247420 .ws-sessions { inset: 0 auto 0 var(--ws-rail-w-collapsed); transform: translateX(calc(-100% - var(--ws-rail-w-collapsed))); }
4003
+ .ds-247420 .ws-shell.ws-sessions-open .ws-sessions { transform: translateX(0); }
4000
4004
  .ds-247420 .ws-content { grid-area: content; padding-left: var(--ws-rail-w-collapsed); }
4001
4005
  /* The Crumb's narrow collapse elsewhere keys on the .app @container, which
4002
4006
  does not exist inside WorkspaceShell - mirror it here so the crumb bar