Skip to content

TUI is an in-process ACP client - #653

Closed
justrach wants to merge 3 commits into
mainfrom
cursor/tui-acp-4ffc
Closed

TUI is an in-process ACP client#653
justrach wants to merge 3 commits into
mainfrom
cursor/tui-acp-4ffc

Conversation

@justrach

Copy link
Copy Markdown
Owner

The fullscreen pager now speaks the same ACP envelopes as Zed and apps/native.

What changed

  • graff tui (and TTY graff repl) is an in-process ACP client: initialize / session/new / session/prompt / session/cancel through acp_engine.
  • Thought, tools, and answer text render from session/update. Catalog tool names stay on the update (name) so fold headers still say “Read 1 file” / “Running bash…”.
  • No child graff acp. One Agent, the existing ReplCtx turn (replTurnCb).
  • Meters, notices, raw bash tail, and failover stay on tui_sink (ACP does not name those).
  • Local slashes (/theme, /model picker, /rewind, …) stay local.
  • /debug prints the ACP session id.

ADR 0041.

Not in this slice

  • TUI /never still unknown (ACP advertises it; dispatch does not route it yet).
  • session/request_permission still off (--yolo / unattended).
  • No subprocess client.

Independent of the v0.0.280 leftover cut.

Tier 1 green locally: 1731 tests (floor 1715), TUI 448, 17 PTY probes.

Open in Web Open in Cursor 

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.
@justrach

Copy link
Copy Markdown
Owner Author

Already on main (ADR 0041). Closing as superseded.

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