Skip to content

v0.5.6

Choose a tag to compare

@EditUndo EditUndo released this 29 Aug 23:41
· 130 commits to main since this release
21f5378

Version 0.5.6 of the artinet SDK comes loaded with new features:

Added

  • New Service-Based Architecture: Complete refactoring with dedicated service layer for better modularity and maintainability
    • src/services/a2a/ - A2A protocol service implementation with factory pattern
    • src/services/core/ - Core execution and management services
    • New A2AServiceInterface for standardized service contracts
  • New Express Server Implementation: Modern Express-based server replacing the legacy A2A server
    • createAgentServer() function for simplified server creation
    • Custom JSON-RPC middleware for Express (jsonRPCMiddleware)
    • Enhanced error handling with dedicated error middleware
    • Support for tRPC integration (commented example provided)
  • Enhanced Type Organization: Comprehensive type restructuring under schemas/a2a/ directory using Zod
    • Authentication types (auth/auth.ts, auth/oauth.ts, etc.)
    • Enhanced message, task, and parameter schemas
    • New deployment-specific type definitions
  • New Deployment Export Path: Added ./deployment export in package.json for deployment utilities
  • Path Alias Support: Added ~/ path alias for cleaner imports throughout the codebase
  • New Core Managers: Command, event, and stream managers for better resource management
  • Enhanced Factory Pattern: Builder pattern implementation for creating A2A services and agents

Changed

  • BREAKING: Updated package description from "TypeScript SDK for Agentic Communication" to "TypeScript SDK for the Agent2Agent (A2A) Protocol"
  • BREAKING: Major refactoring of server architecture - A2AServer is now removed in favor of the new Express-based createAgentServer()
  • BREAKING: Reorganized exports in main index - services now exported before utils
  • BREAKING: Updated Agent Card endpoint from /.well-known/agent.json to /.well-known/agent-card.json
  • Updated dependencies:
    • Added @trpc/server: ^11.4.3 for tRPC integrations
    • Added ts-patch: ^3.3.0 for TypeScript transformations
    • Added typescript-transform-paths: ^3.5.5 for path transformation
  • Enhanced project structure with better separation of concerns
  • Improved JSON-RPC method handling with dedicated middleware
  • Enhanced error handling with more specific error types and better context

Deprecated

  • A2AServer class: The legacy A2A server implementation is deprecated. Use the new createAgentServer() function instead
  • Legacy server interfaces and parameter types in favor of the new service-based architecture

Removed

  • Legacy Server Components: Removed outdated server interfaces and implementations
    • src/server/interfaces/params.ts
    • src/server/interfaces/server.ts
    • src/server/interfaces/store.ts
    • Legacy Express server utilities
  • Outdated Manager: Removed src/services/manager.ts in favor of new core managers

Improved

  • Development Experience:
    • Added prepare script for automatic ts-patch installation
    • Added rebuild script for clean rebuilds
    • Enhanced Jest configuration with path mapping support
  • Code Organization: Better separation between client, server, services, and utilities
  • Type Safety: Enhanced type definitions with more specific interfaces and better error handling
  • Modularity: Service-based architecture allows for better testing and extensibility
  • Documentation: Added comprehensive project structure documentation

Technical Notes

  • This release represents a major architectural shift towards a service-oriented design
  • The new architecture provides better separation of concerns and improved testability
  • Legacy A2AServer has been removed developers should migrate to the new createAgentServer() approach
  • Enhanced support for different transport layers (Express, tRPC, WebSockets, etc.)
  • Improved factory patterns for creating and configuring A2A services and agents

What's Changed

Full Changelog: v0.5.5...v0.5.6