Skip to content

v2.0.0: A2A Protocol Standardization

Choose a tag to compare

@jeffkit jeffkit released this 26 Jan 10:58
· 1 commit to main since this release

πŸŽ‰ v2.0.0: A2A Protocol Standardization

Major release implementing standard A2A protocol format and adding powerful management features.

⚠️ Breaking Changes

This is a breaking change release. All clients must update their configuration.

URL Structure Changes

  • Old format (deprecated): /messages/:projectId
  • New format (standard A2A): /:projectId/messages

Migration Required

Update your client configuration:

{
  "name": "cursor-agent-project",
  "url": "http://localhost:4300/{projectId}",
  "apiKey": "ca2a_..."
}

✨ New Features

1. Standard A2A Protocol Compliance

  • βœ… /:projectId/messages - Send messages
  • βœ… /:projectId/tasks - Create async tasks
  • βœ… /:projectId/tasks/:taskId - Query/cancel tasks
  • βœ… /:projectId/.well-known/agent-card.json - Project Agent Card
  • βœ… /.well-known/agent-card.json - Service Agent Card (lists all projects)

2. API Key Management

  • View current API key (masked for security)
  • Copy full API key to clipboard
  • Reset/Generate new API key
  • Accessible via management UI and REST API

3. Chat Testing Interface

  • Test messages directly in management page
  • Select project from dropdown
  • Support both sync and streaming responses
  • Real-time response display

4. Project-Level Agent Cards

  • Each project has its own Agent Card
  • Contains project-specific metadata
  • Includes workspace path and capabilities

5. Service Discovery

  • Service-level Agent Card lists all available projects
  • Simplifies multi-project management
  • Compatible with standard A2A clients (AgentStudio, etc.)

πŸ”§ API Enhancements

New Endpoints

# Config Management
GET /config                 # View current config (masked API key)
POST /config/reset-key      # Generate new API key

# Agent Cards
GET /:projectId/.well-known/agent-card.json   # Project Agent Card
GET /.well-known/agent-card.json              # Service Agent Card

πŸ“Š Testing

  • βœ… 55 test cases passing
  • βœ… Full TypeScript type checking
  • βœ… Comprehensive route and service tests
  • βœ… Project mapping tests
  • βœ… API key management tests

πŸ“š Documentation Updates

  • Updated API endpoint documentation
  • Added migration guide
  • Updated curl examples
  • Improved management UI

πŸ› Bug Fixes

  • Fixed Agent Card URL generation
  • Improved error handling for invalid project IDs
  • Enhanced session management

πŸš€ Installation

NPM

npm install -g cursor-agent-a2a@2.0.0

From Source

git clone https://github.com/jeffkit/cursor-agent-a2a.git
cd cursor-agent-a2a
pnpm install
pnpm run build
npm install -g .

System Service

cursor-agent-a2a install --port 4300
cursor-agent-a2a start

πŸ“ Migration Guide

  1. Update Client URLs

    • Change from /messages/:projectId to /:projectId/messages
    • Update Agent URL to project root: http://host/{projectId}
  2. Test New Format

    curl -X POST "http://localhost:4300/{projectId}/messages" \
      -H "Authorization: Bearer your-api-key" \
      -H "Content-Type: application/json" \
      -d '{"message": "test"}'
  3. Verify Agent Card

    curl "http://localhost:4300/{projectId}/.well-known/agent-card.json"

πŸ™ Credits

Thanks to all contributors and users who provided feedback for this release!


Full Changelog: v1.4.0...v2.0.0