Skip to content

v1.3.82

Choose a tag to compare

@topcheer topcheer released this 23 Jun 01:44
· 6291 commits to main since this release

v1.3.82

A2A: Zero-Config LAN Team Discovery

Two or more ggcode instances on the same local network can now discover each
other and delegate tasks without any configuration.

  • LAN discovery is ON by default. mDNS broadcast (_ggcode._tcp) starts
    automatically when you launch ggcode. Set a2a.lan_discovery: false to opt out.
  • Built-in community API key (ggcode-lan-a2a-v1) authenticates connections
    between ggcode instances automatically. No manual key setup needed.
  • Desktop app now runs an A2A server. The Wails desktop app participates in
    LAN discovery alongside the CLI — three surfaces (CLI, desktop, another
    desktop) can discover and delegate to each other out of the box.

A2A Configuration

Scenario What happens
No config (default) Binds 0.0.0.0, broadcasts mDNS, uses built-in key
lan_discovery: false Binds 127.0.0.1 only, no mDNS
Custom auth.api_key Uses your key, all team members must share it

/inspector Slash Command

New unified /inspector command opens any inspector panel with a subcommand:

/inspector              → status panel (default)
/inspector sessions     → sessions panel
/inspector checkpoints  → checkpoints panel
/inspector memory       → memory panel
/inspector todos        → todo panel
/inspector plugins      → plugins panel
/inspector config       → config panel
/inspector status       → status panel

Also appears in tab-completion with <sessions|checkpoints|memory|plugins|config|status> hint.

gRPC Plugin System

Language-agnostic tool extensions via HashiCorp go-plugin. Plugins can be
written in Go, Python, or Node.js — they communicate with ggcode
over gRPC and expose custom tools that the agent can call.

  • CLI: ggcode plugin install <path>, ggcode plugin list, ggcode plugin test
  • Demo repositories: ggcode-plugin-demo-go, ggcode-plugin-demo-python, ggcode-plugin-demo-node

Other Changes

  • MCP OAuth token refresh fix: offline_access scope is now automatically
    requested so refresh tokens are issued. Previously tokens expired and required
    interactive re-authentication. Added lazy OIDC discovery for the token endpoint
    when the handler is restored from stored credentials.
  • Session lock fix for /restart: Acquire and release the session lock in
    loadSession to prevent race conditions on the restart path.
  • Plugin test fix: ggcode plugin test now reads the first handshake line
    and kills the process (was blocking forever because plugin processes are servers).
  • Documentation: Comprehensive audit and fix of docs, READMEs, CLI reference,
    and configuration guide.

Full Changelog: v1.3.81...v1.3.82