Gemini schema compat and Discord emoji uploads, 182 commits on openclaw

Third straight day with openclaw in the drivers seat. The focus shifted from structure (day one) and skills (day two) to multi-provider hardening. If the repo is going to support more than one LLM vendor, the schemas have to agree with each other before the features built on top can be trusted. Today was about tightening those seams, in parallel with a second Discord-surface push that paid forward on the reaction work from earlier in the week.
Signal
Second straight 100+ commit day on openclaw: 182 commits, +46,460 / -24,266 net Gemini schema compat landed alongside robust model discovery, meaning the repo is hardening against multi-provider drift Discord grew new muscle: emoji and sticker uploads, forwarded-message handling, reaction notification allowlists
Evidence
openclaw (182 commits, +46,460 / -24,266): Agents Gemini fix, Swabble package lock, Swift protocol model regens Discord surface: reaction notification allowlist, system message type handling, default own reactions, forwarded message routing Build work: x86_64 relay AVX2 lock, sandbox common image builder progresses, consolidated CI check jobs Docs wave: Mintlify config, mac config sync note, Telegram block-reply changelog entry
+46,460 / -24,266 is roughly 2
additions to deletions, which is the shape of a day doing real refactoring alongside growth. The Swift protocol model regens are the tell: when you hit “regenerate models” after a schema change, the diff is large and mostly cosmetic, but it has to be shipped atomically or consumers break. That’s why the deletion count is high on a day that feels additive.Gemini schema compat is the structural bet. Any agent framework that lets you pick a provider at runtime needs to normalize shapes that don’t actually match in the wild: Google’s tool-call schema is not OpenAI’s tool-call schema, and neither matches Anthropic’s. Shipping compat for Gemini same-day as the model-discovery hardening means the abstraction got tested against a real second provider, not just the one it was born inside of. That’s the test that matters.
The Discord surface is the other half of the day. Reaction notification allowlists prevent bots-reacting-to-bots loops. System message type handling is what separates a chat integration from a toy. Forwarded message routing is the fix that makes group-chat workflows not feel broken. Each of these lands as a small patch, but together they move Discord from “usable” to “first-class.”
So What
Multi-provider abstraction is where agent stacks go to die. Openclaw lands a Gemini schema fix same-day as the model-discovery hardening, which is the right shape This is the kind of refactor that costs months to catch up on if skipped. Better to do it week one
The AVX2 lock on x86_64 relay is the sneaky one. It’s a build-time constraint that silently determines whether the relay will run on a given user’s machine. Intel CPUs older than 2013 or so don’t have AVX2, and some cloud instances deliberately mask it. Locking it in without a downgrade path means a slice of potential users can’t run the relay at all. Worth revisiting with a feature flag before the user base gets large enough to notice.
What’s Next
AVX2 lock on x86_64 relay is a compatibility constraint hiding as a build tweak. How many users are still on pre-AVX2 hardware, and does the relay need a graceful downgrade path? The answer is probably “very few, no downgrade needed,” but the question is worth asking explicitly before the lock becomes load-bearing elsewhere.
Log
- Sessions: 0 (bloomnet.db lag, evidence from live git)
- Top repos: openclaw (182)
- Commits: 182 across 1 repo (+46,460 / -24,266)
- Notable: Gemini schema compat, Discord emoji/sticker uploads, AVX2 relay lock
- Cost: not tracked (pre-bloomnet-ingest window)