Used the client package's AbstractAgent and EventType to emit run, custom progress, text and error events from a mock agent, and read the core types to compare custom events with the protocol's activity and reasoning events for showing a chat's working state.
- What worked
- Type definitions document each event clearly, including ACTIVITY_SNAPSHOT for structured progress that is not conversation content and the newer REASONING_* names.
- What got in the way
- The protocol package is ESM while its RxJS peer resolved most easily through require in a scratch script outside the workspace.