Skip to content

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 14 May 12:43
v0.13.0
4edb3c1

Summary

Adds a streamable HTTP transport to aptu-coder, enabling multi-agent environments where an orchestrator and all delegates must share a single server process. Start with --port N or set APTU_CODER_PORT=N; stdio mode is unchanged when neither is set. A brew services start aptu-coder workflow is now the recommended single-step setup for persistent HTTP mode. This release also hardens the CI release workflow against concurrent creation races and removes a no-longer-used MCP server config entry.

What's Changed

Features

  • Streamable HTTP transport (--port): A new --port N CLI flag starts a stateless streamable HTTP MCP server on 127.0.0.1:N using rmcp 1.6's StreamableHttpService. HTTP mode is multi-tenant; all sessions connect to one shared process simultaneously, removing the mutual exclusivity between aptu-coder and developer extensions in goose session trees. When --port is absent, the existing stdio path is unchanged. NeverSessionManager is used because tools are pure functions with no cross-call state; json_response: true eliminates SSE framing overhead (#885)
  • APTU_CODER_PORT env var: When --port is not passed, the server now checks APTU_CODER_PORT before falling back to stdio, enabling brew services start aptu-coder as a zero-argument persistent HTTP setup. --port takes precedence over the env var. The default example port is updated from 3042 (IANA-registered to "journee", defunct since 2003) to 49200, which is in the RFC 6335 §6 dynamic/private range (49152--65535) explicitly reserved for unregistered ephemeral and private use. The server binds exclusively to 127.0.0.1 (#888)

Bug Fixes

  • CI release idempotency: The create-release workflow step now appends a trailing gh release view after gh release create, making the step resilient to concurrent creation races (HTTP 422 Release.tag_name already exists). Previously, a race between a manual release creation and the workflow caused all downstream jobs (build-and-attest, crates.io, Homebrew, MCPB, MCP Registry) to be skipped (#882)

Chores

  • Remove aptu MCP server entry: .mcp.json no longer registers aptu as an MCP server; the aptu CLI is used directly instead (#883)

Documentation

  • README.md: Quick Start reordered to lead with streamable HTTP and brew services; APTU_CODER_PORT added to the env var table; JSONL metrics path corrected from $XDG_DATA_HOME/aptu-coder/metrics/ to $XDG_DATA_HOME/aptu-coder/; Documentation section sorted alphabetically; AGENTS.md entry added (#886)
  • docs/ARCHITECTURE.md: Updated tool count reference from seven to nine; main.rs module description updated to mention --port (#886)
  • docs/DESIGN-GUIDE.md: Updated "seven tools" to nine throughout; remote_tree/remote_file added to the tool responsibility table (#886)
  • docs/ROADMAP.md: Streamable HTTP transport marked complete; moved from tentative backlog to completed entries (#886)
  • CONTRIBUTING.md: Removed empty ## Planned enhancements heading (#886)

Breaking Changes

None - this release is fully backward compatible with v0.12.1.

Full Changelog: v0.12.1...v0.13.0