Skip to content

Release v0.1.18

Overview

G-Agent v0.1.18 is the first fully green public release after the project moved from the older 0.1.13 package metadata to the current runtime line. It rolls up the implemented work from 0.1.14 through 0.1.18, including session persistence, command routing, character profiles, context compression, MCP/toolset plumbing, local API surfaces, WebSocket channel work, owner-reviewed learning, Docker execution scaffolding, and the CI/release repairs needed to publish a clean tag.

This release intentionally preserves the already-pushed v0.1.16 and v0.1.17 tags instead of rewriting history. Those tags exposed CI issues; v0.1.18 is the verified green tag.

Highlights

  • SQLite-backed session memory: added durable session storage with JSONL dual-write behavior, FTS-backed search support, and regression coverage for message replacement and metadata preservation.
  • Shared command architecture: introduced a reusable command router plus owner-facing commands for history, sessions, logs, approvals, profiles, skills, learning review, and diagnostics.
  • Character profile system: added first-class character profiles, default owner/guest setup, dynamic prompt injection, and stricter guest tool boundaries.
  • Context engine and compression: added a pluggable context engine with deterministic prompt section ordering and reference-only conversation compression for long-running sessions.
  • Toolsets and MCP integration: added toolset resolution, MCP manager support, streamable HTTP transport aliases, and wrappers for remote MCP tools/resources.
  • Local product API: added token-authenticated API endpoints for health, status, sessions, approvals, learning candidates, profiles, routines, media uploads, OpenAI-compatible models/chat completions, and SSE chat responses.
  • WebSocket channel slice: added a local WebSocket channel path with token auth, inbound session mapping, outbound sends, and channel manager registration.
  • Owner-reviewed learning loop: added candidate generation/review surfaces for memory, tool quirks, skills, routines, profile, and relationship changes, with safer manual-review behavior for sensitive mutation paths.
  • Routines and execution hardening: added routine script pre-processing with bounded no-shell execution and introduced experimental transient Docker command execution scaffolding.
  • Channel reliability improvements: normalized channel delivery results, capability diagnostics, long-message splitting, Telegram Markdown-to-HTML hardening, WhatsApp bridge diagnostics, and Discord DM/thread metadata mapping.

Fixes and hardening

  • Fixed routine-step context rendering to use canonical RoutineStep fields instead of missing description metadata.
  • Fixed SQLite replace_messages() so omitted metadata preserves existing session metadata.
  • Fixed direct/API busy-session protection so user messages do not bypass active work by default while explicit internal bypass remains supported.
  • Fixed provider-safe title generation by avoiding unsupported provider methods.
  • Fixed OpenAI-compatible API route aliases, media helper usage, and route/auth whitelist alignment.
  • Fixed learning apply behavior so weak or sensitive profile, relationship, routine, and tool-quirk mutations require manual review or return unsupported instead of silently mutating state.
  • Fixed routine runner bus injection metadata and MCP wrapper abstract-property compatibility.
  • Fixed Docker execution wording and tests to classify the current backend as transient/stateless scaffolding rather than hardened persistent container parity.
  • Fixed CI dependency resolution by aligning package metadata with LiteLLM 1.83.x pins for httpx==0.28.1 and python-dotenv==1.0.1.
  • Fixed backend Web UI test portability by creating deterministic static index fixtures instead of relying on untracked local webui/dist artifacts.

Documentation and roadmap reconciliation

  • Reconciled roadmap, TODO, embedding, channel, and reference-audit documentation against verified source and test evidence.
  • Reclassified WebSocket, Web UI, memory, context compression, MCP/toolsets, Docker, and learning-loop claims as implemented, partial, broken, or not present based on connected runtime paths and regression tests.
  • Added release notes for v0.1.16, v0.1.17, and this verified v0.1.18 release.
  • Clarified that Docker remains an experimental transient execution backend, not a Hermes-equivalent persistent hardened runtime.
  • Clarified that static Web UI serving depends on a built webui/dist artifact; the backend test now covers this behavior without assuming the artifact exists in fresh checkouts.

Verification

  • backend/agent/.venv/bin/python -m pytest -q backend/agent/tests/test_webui.py passed with 2 tests.
  • backend/agent/.venv/bin/python -m pytest -q backend/agent/tests passed with 454 tests.
  • python -m ruff check backend/agent/g_agent backend/agent/tests --select F passed.
  • python -m compileall -q backend/agent/g_agent passed.
  • mkdocs build --strict passed.
  • GitHub Actions CI for main passed on run 25152049752.
  • GitHub Actions Release for tag v0.1.18 passed on run 25152051321.

Notes

  • This is a catch-up release from the older 0.1.13 package metadata line to the current 0.1.18 verified runtime state.
  • v0.1.16 was pushed before the dependency-resolution fix and failed backend install checks.
  • v0.1.17 fixed dependency installation but still failed backend tests because test_webui_index depended on untracked local Web UI build artifacts.
  • v0.1.18 is the first tag in this sequence with local verification and GitHub Actions verification both green.