I’m working on a small AI project that’s somewhat similar in spirit to Grok Bot. One of the first things I needed was a character/avatar, so I started there. After spending more time on the avatar than I expected, I realized it didn’t really need to stay tied to that project. So I pulled it out and turned it into Agent Robot Avatar, a standalone open-source component. The component itself is pretty simple: vanilla JavaScript + SVG, wrapped as a native Web Component. No runtime dependencies. You can drop it into a page: <agent-robot-avatar id="avatar"></agent-robot-avatar> and control it from your app: avatar.play('waiting'); avatar.play('success'); avatar.play('failure'); There are also states for things like warning, inspect, blocked, error, s