Releases: DrobyshevDev/glia
Release list
glia v0.8.2 — logo & de-slop
A visual polish pass on the v0.8 GUI.
- New logo — a minimal 'glass box' mark (a transparent cube with a node), tying the identity directly to the glass-box concept. It now appears in the app (sidebar, message avatars, favicon), the README, and the animated hero.
- Removed all emoji and decorative glyphs from the app UI, README, and docs for a cleaner, more professional look — buttons use plain text or minimal line icons, and the empty-state copy is less generic.
No API changes. Fresh binaries attached.
Install/upgrade: pip install -U glia-agents
glia v0.8.1
Patch on top of the v0.8.0 GUI redesign.
Fixed: shell conversation IDs were millisecond-based and could collide when two conversations were created in the same millisecond. IDs are now unique (timestamp + a short uuid).
Everything from v0.8.0 (modern multi-conversation GUI: persistent sidebar history, Markdown/code rendering, theme toggle, glass-box drawer) carries over. Fresh binaries attached.
Install/upgrade: pip install -U glia-agents
glia v0.8.0 — a modern GUI
A full redesign of the desktop shell into a modern, professional chat app.
What's new
- Conversation sidebar with persistent history — your chats are saved (as glia trajectory checkpoints) and survive restarts. New / switch / delete from the sidebar.
- Markdown + code rendering — replies render bold, lists, links, headings, and fenced code blocks with copy buttons (safely escaped).
- Cleaner layout — a proper top bar, example-prompt chips on the empty state, a slide-in glass-box drawer, a light/dark theme toggle, and a refined settings panel with a segmented provider control.
- All four providers (Demo / Ollama / Claude / OpenAI), streaming, tools, and interactive approval carry over.
Fresh Windows/macOS/Linux binaries attached below. 167 offline tests, ~95% coverage, ruff + mypy + tests green.
Install/upgrade: pip install -U glia-agents · Docs: https://denisdrobyshev.github.io/glia/app/
glia v0.7.0 — OpenTelemetry + shell redesign
OpenTelemetry exporter
Turn the event stream into spans with one hook:
from glia.integrations.otel import OTelExporter
agent = Agent(llm, tools=[...], hooks=[OTelExporter()])Root glia.run span with child glia.model_call / glia.tool spans (model, token, and stop-reason attributes; tool errors marked; approvals + compaction as span events). pip install "glia-agents[otel]". It never raises into your run.
Redesigned desktop shell
A refreshed, more polished UI — warmer palette, refined typography, softer message bubbles with entrance animations, a cleaner glass-box panel, and a nicer composer. The README now has an animated hero that plays the shell in action. Fresh Windows/macOS/Linux binaries attached below.
163 offline tests, ~95% coverage, ruff + mypy + tests green.
Install/upgrade: pip install -U glia-agents · Docs: https://denisdrobyshev.github.io/glia/
glia v0.6.0 — record/replay cassettes
Record/replay cassettes — VCR for the LLM protocol.
Record a real provider's responses to a readable JSON cassette once, then replay them deterministically with no network and no API key:
from glia import Agent, use_cassette
from glia.providers import ClaudeLLM
# First run records (needs a key); later runs replay offline — identical output.
llm = use_cassette("tests/cassettes/weather.json", ClaudeLLM)
agent = Agent(llm, tools=[get_weather])RecordingLLM/ReplayLLM(request-key match + ordered fallback;strict=Truefor exact). Streaming both directions.use_cassetterecords if the cassette is missing, replays if it exists.
159 offline tests, ~95% coverage, ruff + mypy + tests green. Example: 09_record_replay.py.
Install/upgrade: pip install -U glia-agents
glia v0.5.0 — OpenAI, interactive approval, MCP
Four improvements in one release.
OpenAI provider
OpenAILLM works with OpenAI and any OpenAI-compatible endpoint (Groq, Together, OpenRouter, local vLLM) via base_url — zero dependencies, streaming + tools.
from glia.providers import OpenAILLM
agent = Agent(OpenAILLM("gpt-4o-mini", api_key="sk-..."))Interactive tool approval in the desktop shell
Turn on "Ask before running each tool" and the shell shows an Approve / Deny prompt in the window — the run pauses until you decide. The download now also has an OpenAI provider mode. Fresh binaries attached below.
MCP tool bridge
Use any MCP server's tools as glia tools:
from glia.integrations.mcp import mcp_stdio_tools
async with mcp_stdio_tools("npx", ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]) as tools:
agent = Agent(llm, tools=tools)(pip install "glia-agents[mcp]")
Rigor
mypy is now a CI gate; test suite at 151 offline tests, ~95% coverage; new README hero image.
Install/upgrade: pip install -U glia-agents · Docs: https://denisdrobyshev.github.io/glia/
glia v0.4.0 — local models via Ollama
Run local open models (Qwen, DeepSeek, Llama, …) with glia — free, offline, no API key.
New: OllamaLLM provider
# install Ollama from https://ollama.com, then:
ollama pull qwen2.5 # or: ollama pull deepseek-r1from glia import Agent
from glia.providers import OllamaLLM
agent = Agent(OllamaLLM("qwen2.5"), system="Be concise.")- Talks to a local Ollama server over stdlib HTTP — zero dependencies.
- Streaming + tool calling for models that support it.
Desktop shell
The downloadable app now has an Ollama provider mode in Settings (pick a local model like qwen2.5 or deepseek-r1). Fresh Windows/macOS/Linux binaries are attached below.
Also
- 129 offline tests; new example
08_ollama_local.py; docs updated (EN/RU).
Install/upgrade: pip install -U glia-agents · Docs: https://denisdrobyshev.github.io/glia/
glia v0.3.0 — desktop shell
A downloadable graphical shell for glia: a chat window that also shows the live glass box (streaming tokens, tool calls, approvals) as it happens.
Download (no Python needed)
Grab the standalone build for your OS below:
- Windows —
glia-shell-windows.exe - macOS —
glia-shell-macos - Linux —
glia-shell-linux
Double-click to run; it opens a local chat app in your browser. Works offline in demo mode out of the box — add an Anthropic API key in Settings to chat with real Claude.
Or install from PyPI (native window)
pip install "glia-agents[shell]"
glia-shellUnder the hood
- Runs a real
glia.Agent; streams every event to a self-contained single-page UI. - Pure-stdlib local server (no web framework); native window via pywebview with a browser fallback.
- Docs: https://denisdrobyshev.github.io/glia/app/ · 110→119 offline tests.
Full changelog: https://github.com/DenisDrobyshev/glia/blob/master/CHANGELOG.md
glia v0.2.1
Tests and docs release (no API changes to the agent loop).
Docs
- New bilingual (EN/RU) documentation site built with MkDocs Material + i18n — home, getting started, guide, and architecture in English and Русский, auto-deployed to GitHub Pages: https://denisdrobyshev.github.io/glia/
- Added
README.ru.mdand a language switcher.
Tests
- Expanded to 110 offline tests, ~98% coverage, including full offline coverage of the Claude adapter via a fake client. CI now enforces a coverage floor.
Fix
_stringify(tool-result rendering) JSON-encodes only containers and usesstr()otherwise — a plain object is no longer wrapped in quotes.
Install/upgrade: pip install -U glia-agents
glia v0.2.0
Refinements that deepen the glass-box thesis — every new capability is visible in the event stream and off by default.
Added
- Streaming output —
Agent(stream=True)re-emits provider text deltas asModelDeltaevents; newStreamChunktype and optionalStreamingLLMprotocol (ClaudeLLMviamessages.stream,EchoLLMdeterministic). Auto-falls back togeneratewhen a provider can't stream. - Parallel tool execution — a turn's tool calls run concurrently (
asyncio.gather, default on), withToolCalled/ToolReturnedevents and results kept in call order. - Human-in-the-loop approval —
approval=<policy>gates every tool behind an inspectable verdict (ApprovalRequested/ApprovalResolved). Denied calls never execute and return an error result the model can react to. Policies:approve_all,deny_all,allow_only,deny,prompt_in_terminal.
32 offline tests, green CI, new example (07_streaming_and_approval.py).
Install/upgrade: pip install -U glia-agents