№ 0043GitHub
Zero-backend Muse Glimmer agent console
A browser-only agent console for Muse Glimmer 30B that renders the model's ATEM tool-call format client-side, streams from a local server and runs every tool inside the tab across seven capability tracks.
Muse Glimmer — local agent console
Try it live: carlosrymer.github.io/muse-glimmer-local-agent-console
An agent scaffold for Meta's Muse Glimmer 30B that has no backend at all. It renders the
model's prompt format in your browser, streams from a server running on your own machine, and
executes every tool inside the tab — so the records it reasons over never leave your device.
The site is useful with or without the weights. Without them you get a live protocol inspector
and the conformance results. With them you get seven capability tracks — five scored mechanically
from an action ledger, two observational.
What this showcases
Technology: Muse Glimmer 30B (Meta Superintelligence Labs, released 10 August 2026) — a
~29.6B-parameter open-weight agentic model under Apache 2.0, distilled from Muse Spark, that fits
in 16.76 GB at 4-bit and is built to run local agent workflows on one consumer GPU.
I picked it up expecting the interesting part to be whether a 30B model can hold an agent loop
together. It wasn't. The interesting part turned out to be one layer lower.
Muse Glimmer does not emit OpenAI-style JSON tool calls. Its chat template builds a
channel-token transcript and asks for tool calls in a dialect the template itself calls ATEM:
<|start|>assistant to=self<|message|>Search first, then escalate.<|eom|>
<|start|>assistant to=workspace.search_tickets<|message|><atem:function_calls>
<atem:invoke name="workspace.search_tickets">
<atem:parameter name="query">billing</atem:parameter>
<atem:parameter name="limit">20</atem:parameter>
</atem:invoke>
</atem:function_calls><|eot|>
Four things I found building against it:
Reasoning is a routing target, not a tag. Chain-of-thought is addressed
to=selfand closed
with<|eom|>; the visible answer goesto=userand closes with<|eot|>. There is no<think>block to strip — if your scaffold doesn't understand recipients, the model's private
reasoning lands in front of the user.ATEM is not XML, and the template says so out loud. Verbatim, in the tool preamble the
model is shown on every single turn: "The output is not expected to be valid XML and is parsed
with regular expressions." Parameter bodies carry raw<,&and unbalanced quotes. I wrote
the parser with regexe






