Skip to content

v1.3.91

Choose a tag to compare

@topcheer topcheer released this 29 Jun 09:20
· 6110 commits to main since this release

ggcode v1.3.91

Highlights

  • MCP protocol version upgraded to 2025-11-25 — the latest MCP specification version, with full backward compatibility for version negotiation.
  • LAN Chat tool results fully formatted — all 9 lanchat actions now render as human-readable output across TUI, Desktop, and Mobile surfaces.
  • Smarter auto-compaction — microcompact is now silent, thresholds raised, and a cooldown prevents tight compaction loops.
  • Fuzzy line matching for edit_file — whitespace-tolerant fallback when exact old_text matching fails.

Fixes and improvements

MCP client

  • Upgraded hardcoded protocol version from 2024-11-05 to 2025-11-25. The client now sends the latest version in the initialize request and accepts all known versions (2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25) when the server negotiates down. Unknown versions are rejected with a clear error. The negotiated version is stored in Client.negotiatedVersion.
  • Added PKCE parameters (code_challenge + code_challenge_method=S256) to the health check probe sent after Dynamic Client Registration (DCR). Some authorization servers (e.g., Railway) require PKCE on all authorize requests.
  • Health check retry loop is now infinite with a status display in the TUI MCP panel, so the user can see "waiting for server" instead of a silent failure.
  • Added client_id health check after DCR to prevent invalid_client errors when the authorization server hasn't propagated the registration yet.

LAN Chat tool formatting

  • list: renders as a formatted participant list with name, role, team, workspace, online status, and last-seen time — no more raw JSON.
  • send / broadcast / broadcast_all / send_team: shows the actual message content, recipients, delivery count (N/M delivered), and whether sent as agent or human.
  • history: renders as a chat log with timestamps, sender → recipient, and message content.
  • pending: renders pending @agent approvals with sender, role, content, and message_id for easy approve/reject.
  • lanchat tool always allowed: the lanchat tool is now allowed in all permission modes (including plan mode) without approval, since it has no local filesystem or system impact.

Auto-compaction improvements

  • Microcompact is silent: the low-level microcompact (triggered when context exceeds the soft limit) no longer shows a system message to the user. Only LLM-triggered precompact (explicit compaction request) shows a message.
  • Raised thresholds: auto-compact thresholds raised from 0.65/0.75 to 0.80/0.88 of the context window, giving more usable context before compaction triggers.
  • 2-minute cooldown: after a precompact, a 2-minute cooldown prevents a tight compaction loop where the context keeps hitting the threshold.

Editor

  • Fuzzy line matching: when edit_file exact old_text matching fails, a fuzzy fallback strips leading whitespace and compares line content. This handles common cases where the file has tabs vs spaces or different indentation levels.

Upgrade notes

  • No breaking changes. The MCP protocol version upgrade is backward-compatible — the client accepts older server versions.
  • The compaction threshold change means compaction triggers later, giving the agent more context to work with. Sessions that previously compacted frequently will now compact less often.

Compare