a2ui-project / a2ui-project/a2ui
Refactor all client samples to use @a2a-js/sdk for agent communication
- Vorherrschende Sprache
- TypeScript
- Sterne
- 16.4k
- Forks
- 1.3k
- Ø Merge
- 3 T. 15 Std.
- Gemergte PRs (30 T.)
- 134
Beschreibung
Currently, several client samples (Angular and Lit) implement manual fetch calls and custom SSE parsing to communicate with agents via a proxy. This introduces significant boilerplate and maintenance overhead. We should refactor these samples to use the @a2a-js/sdk A2AClient directly in the browser, matching the standard pattern used in the Lit Shell sample.
**Benefits:**
- **Eliminates Manual SSE Logic:** Removes the need for ReadableStream, TextDecoder, and manual line parsing in every client.
- **Typed Responses:** Standardizes response handling using SDK types (Message, Task, Artifact) instead of manual filtering of parts.
- **Simplified Middlewares:** backend middlewares can transition from protocol converters to simple transparent proxies.
- **Robust Metadata:** Centralizes the management of a2uiClientCapabilities and inlineCatalogs using the SDK's message metadata structure.
**Scope:**
- **Angular Samples:** contact, restaurant, rizzcharts, mcp_calculator.
- **Lit Samples:** contact, component_gallery.
Beitragsleitfaden
Rechercherichtung
Das Issue betrifft Angular- und Lit-Clientbeispiele (contact, restaurant, rizzcharts, mcp_calculator, component_gallery). Untersuche zunächst den vorhandenen manuellen fetch/SSE-Code in diesen Beispielen und vergleiche ihn mit dem Lit Shell-Beispiel, das @a2a-js/sdk verwendet. Installiere das SDK, ersetze die benutzerdefinierte Kommunikation durch A2AClient und stelle sicher, dass typisierte Antworten und Metadaten korrekt verarbeitet werden. Überprüfe, dass die Beispiele nach dem Refactoring weiterhin funktionieren.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- angular, javascript, typescript
- Bereich
- frontend, tooling
- Issue-Typ
- Refactoring
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 65/100