Skip to content

TUI ACP client + grok-build inset onto release/v0.0.280 - #654

Merged
justrach merged 7 commits into
release/v0.0.280from
cursor/tui-acp-280-4ffc
Aug 28, 2026
Merged

TUI ACP client + grok-build inset onto release/v0.0.280#654
justrach merged 7 commits into
release/v0.0.280from
cursor/tui-acp-280-4ffc

Conversation

@justrach

@justrach justrach commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Same in-process ACP pager as #653, cherry-picked onto release/v0.0.280 so the leftover cut can take it, plus the grok-build pager inset the TUI was missing.

graff tui speaks initialize / session/new / session/prompt / session/cancel. Thought, tools, and answer text render from session/update. No child graff acp. /tell /peek, schedule idle wake, and the rest of the 280 leftovers stay.

Inset (this update). Copied grok-build LayoutConfig defaults from xai-org/grok-build (crates/codegen/xai-grok-pager-render/src/appearance/config.rs):

  • outer_hpad_left/right = 2 (compact: MIN_HPAD 1)
  • outer_vpad = 1 (compact: 0) — one blank row between transcript and composer
  • Overlay / slash panels stay full-width and docked on the composer

Colors stay ours (emerald accent; coral only for errors). No OSC 50.

ADR 0041. Catalog tool names stay on the update so fold headers still say “Read 1 file” / “Running bash…”.

#653 remains the main PR. This one is only for the release branch.

Tier 1 green: 1753 tests (floor 1745), TUI 459. All 17 PTY probes passed (hover included).

graff tui speaks initialize / session/new / prompt / cancel through
acp_engine. Thought, tools, and answer text render from session/update
the same way Zed and the native app do. No child graff acp — one Agent
and the existing ReplCtx turn. Meters, notices, and raw bash stay on
tui_sink. ADR 0041.
Zig 0.17 has no std.time.milliTimestamp; graff acp already seeds
session ids from the Io clock.
Fold headers classify read_file / bash by name. ACP title is the path
or command — that must stay detail, not replace the catalog name.
Keep ADRs 0037–0040 and the 280 test-root imports; add 0041 / tui_acp.
Copy grok-build's LayoutConfig defaults (outer_hpad 2/2, outer_vpad 1;
compact drops to MIN_HPAD 1 and no vpad) so transcript rows, the
composer, and the footer sit off the terminal edges.
Horizontal grok-build gutter stays on transcript/composer/footer. Overlay
and slash boxes remain edge-to-edge so they still dock on the composer.
Settle-tint probes ignore the outer pad; wrap-width hit tests use inner.
The model picker stays a full-width closed box. The composer under it
now carries grok-build's 2-cell left gutter, so the dock probe must
lstrip before looking for the top rule.
@justrach justrach changed the title TUI ACP client onto release/v0.0.280 TUI ACP client + grok-build inset onto release/v0.0.280 Aug 28, 2026
@justrach
justrach marked this pull request as ready for review August 28, 2026 01:10
@justrach
justrach merged commit b126786 into release/v0.0.280 Aug 28, 2026
6 checks passed
@justrach
justrach deleted the cursor/tui-acp-280-4ffc branch August 28, 2026 01:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants