Skip to content

v2.6.0: JSON-RPC 2.0 Protocol Migration and Model Consolidation

Choose a tag to compare

@github-actions github-actions released this 08 Aug 20:26
· 11 commits to main since this release

πŸš€ Major Release: JSON-RPC 2.0 Protocol Migration

This is a major release with breaking changes to the stdio transport, migrating from custom message types to industry-standard JSON-RPC 2.0 protocol.

⚠️ Breaking Changes

  • Stdio Protocol Migration: StdioAgentClient and StdioAgentServer now use JSON-RPC 2.0 instead of custom message types
  • Protocol Change: Custom agent_request/agent_response replaced with JSON-RPC dispatch method calls
  • Request Format: All stdio communication now follows JSON-RPC 2.0 specification

🎯 New Features

  • JSON-RPC 2.0 Support: Complete stdio transport migration to industry standard
  • Unified Models: Consolidated agent request/response types into single agent.ts file
  • Logger Infrastructure: Transport-specific logging system (SilentLogger for stdio, ConsoleLogger for HTTP/SSE)
  • Enhanced Builder Pattern: Improved fluent API with better type safety
  • JSON-RPC Types: New stdio.ts model with complete JSON-RPC 2.0 protocol structures

πŸ”§ Improvements

  • Model Architecture: Consolidated separate model files into unified structure
  • Request ID System: Incremental request IDs instead of UUIDs for better JSON-RPC compliance
  • Error Handling: JSON-RPC 2.0 compliant error responses with proper error codes
  • Code Organization: Removed duplicate type definitions and improved maintainability
  • Protocol Standardization: Aligned stdio transport with industry standards

πŸ“š Documentation

  • STDIO_AGENT.md: Complete rewrite with JSON-RPC 2.0 examples and updated Python samples
  • README.md: Added "Recent Updates" section highlighting architectural improvements
  • Protocol Documentation: Updated message protocol examples with JSON-RPC format
  • Migration Guide: Clear documentation of breaking changes and upgrade path

βœ… Quality Assurance

  • All 362 tests passing after major refactoring
  • Full backward compatibility maintained for HTTP and SSE transports
  • Comprehensive test coverage for new JSON-RPC functionality
  • Zero breaking changes for existing HTTP/SSE agent implementations

πŸ”„ Migration Guide

For Stdio Agent Users (Breaking Changes)

Before (v2.5.x):

{"type":"agent_request","data":{"agent":{...},"messages":[...]}}

After (v2.6.0):

{"jsonrpc":"2.0","id":1,"method":"dispatch","params":{"agent":{...},"messages":[...]}}

For HTTP/SSE Agent Users (No Changes)

No code changes required - all HTTP and SSE functionality remains exactly the same.

πŸ“¦ Installation

npm install @cubicler/cubicagentkit@2.6.0

This release represents a significant architectural improvement while maintaining full backward compatibility for existing HTTP and SSE agents. The stdio transport is now aligned with industry standards, making it easier to integrate with other JSON-RPC 2.0 compatible systems.