A web application for testing Agent-to-Agent (A2A) communication using the A2A Protocol.
This web app is in preview. Some features are missing and bugs may be found. For any remarks or issues, please create an issue on GitHub.
- 🤖 Agent Connection: Connect to A2A-compatible agents via URL
- 💬 Interactive Chat: Real-time conversation interface with agents
- 📋 Task Management: Visual task cards showing agent task execution
- 🎨 Dark/Light Theme: Toggle between dark and light modes
- 📱 Responsive Design: Works on desktop and mobile devices
- .NET 9.0 SDK
- Modern web browser
-
Clone the repository:
git clone https://github.com/vdekercd/a2a-studio.git cd a2a-studio -
Navigate to the project directory:
cd src/A2AStudio -
Restore dependencies:
dotnet restore
-
Run the application:
dotnet run
-
Open your browser and navigate to
http://localhost:5000orhttps://localhost:5001
cd src/A2AStudio
dotnet publish -c Release -o publish- Connect to an Agent: Enter the URL of an A2A-compatible agent in the connection form
- Start Chatting: Once connected, use the chat interface to communicate with the agent
- View Tasks: Task-based interactions will be displayed as interactive cards
- Switch Themes: Use the theme toggle in the top-right corner
- Frontend: Blazor WebAssembly (.NET 9)
- Styling: Custom CSS with CSS custom properties for theming
- A2A Integration: Uses the A2A NuGet package
- Deployment: Azure Static Web Apps
src/
├── A2AStudio/ # Main Blazor WebAssembly project
│ ├── Components/ # Blazor components
│ │ ├── Pages/ # Page components
│ │ └── Layout/ # Layout components
│ ├── Models/ # Data models
│ ├── Services/ # Business logic and A2A integration
│ └── wwwroot/ # Static files (CSS, images, etc.)
└── Samples/
└── EchoAgent/ # Sample A2A agent implementation
The project includes a sample Echo Agent in src/Samples/EchoAgent/ that you can run to test the application:
cd src/Samples/EchoAgent
dotnet runThis will start the echo agent at http://localhost:5050 by default.
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes and commit them:
git commit -am 'Add some feature' - Push to the branch:
git push origin feature/your-feature-name - Submit a pull request
- Blazor WebAssembly
- A2A Protocol
- Font Awesome for icons
- Azure Static Web Apps for hosting
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with the A2A Protocol for agent-to-agent communication
