2.0.0
2026-04-07
avacli open source — packages.avalynn.ai
-
New
Linux packages and tarballs are now the open-source **avacli** build (MIT): APT package `avacli`, binary `avacli`, config under `~/.avacli/`.
-
Update
Single binary with embedded WebIDE, tool forge, Vultr fleet UI, vault, and Grok tools; connect xAI from Settings in the web UI or `avacli --set-api-key`.
-
Update
Legacy `avalynnai` platform-relay client packages remain in the repo for older installs; new installs should use `avacli`.
1.3.2
2026-03-27
Reverse proxy tunnel & full rebrand
-
New
Reverse proxy tunnel — access any node's full web UI from the platform without opening ports. A new "Direct" tab in node-chat loads the node's interface in an iframe, proxied securely through the platform.
-
New
TunnelClient (C++) — 4 concurrent long-polling threads handle proxied HTTP requests, forwarding them to the local HTTP server and returning responses (including binary content via base64).
-
New
Bridge tunnel infrastructure — in-memory request queues with promise-based resolution for /tunnel/proxy, /tunnel/poll, /tunnel/response, and /tunnel/status endpoints.
-
New
Platform PHP proxy — node-proxy.php with <base> tag injection for HTML, plus tunnel/poll.php, tunnel/respond.php, and tunnel/status.php passthrough endpoints.
-
Update
Full rebrand: renamed project from textgrok-agent to avalynnai. All internal variables, functions, log categories, provider strings, and JSON keys updated across bridge, app.js, and API layer.
-
New
Tunnel status indicator — green dot in the Direct tab shows when the node's tunnel connection is active.
1.3.1
2026-03-26
Real-time streaming relay
-
New
Real-time SSE streaming relay — content, thinking, tool calls, and media events stream live from nodes to the platform web UI via new stream-event and stream endpoints.
-
New
Rich response rendering in node-chat — collapsible reasoning blocks, tool execution display with success/fail indicators, inline media grid, and token usage footer.
-
New
Node capability badges displayed in the node-chat sidebar (chat, file_ops, nodejs, python, web_search, etc).
-
Fix
messages.php now accepts role from POST body (user/assistant) instead of hardcoding assistant — fixes message sync from client nodes.
-
Update
Session list distinguishes relay-synced sessions from web-initiated ones with visual indicators.
-
Update
Upload button in node-chat now wired to context_media in the relay payload.
1.3.0
2026-03-26
Node-chat sync, 28 tools, media generation
-
New
Node-chat session and message sync — client nodes sync relay conversations back to the platform via sessions.php and messages.php endpoints.
-
New
28 agent tools including web_search, x_search, generate_image, edit_image, generate_video, and persistent memory (add_memory, search_memory, forget_memory).
-
New
Multi-node relay with relay_to_node tool — send tasks to other AvalynnAI instances linked to your platform account.
-
New
Reasoning model support — grok-4.20-*-reasoning models stream internal chain-of-thought as separate thinking_delta events.
-
Update
Headless / CI mode with --non-interactive and --format stream-json outputs NDJSON events for piping into other tools.
-
Update
Session memory, edit history, and pinned notes persist across runs under ~/.avalynnai/sessions/.
1.2.3
2026-03-25
Image/video generation settings, model sync, file uploads
-
New
Image generation settings: aspect ratio (1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3), resolution, and image count options for grok-imagine-image models.
-
New
Video generation settings: duration (5/10/15s), aspect ratio, and resolution for grok-imagine-video models.
-
New
Model selector now shows Chat, Image Generation, and Video Generation categories with proper model names.
-
New
Upload button: attach images or videos to chat messages on both client and platform node-chat.
-
Fix
Model changes in the toolbar now auto-save immediately (no longer requires clicking Save Settings).
-
Fix
Model sync from platform: heartbeat response now includes node-chat settings; model changes on the platform propagate to the client automatically.
-
Update
Disconnect button now shows a confirmation dialog before disconnecting and clearing the API key.
1.2.2
2026-03-25
WebIDE, logging, xAI-only models, settings sync
-
New
Logs page: terminal-style system log with color-coded levels/categories, filters, auto-scroll, and 3-second polling. Captures chat I/O, API calls, node events, relay, settings changes, and errors.
-
New
WebIDE: Files page reimagined as a full code editor with lazy directory loading, file tabs, line numbers, Tab key support, Ctrl+S save, and revert.
-
Fix
Files: replaced recursive 5-level tree scan with lazy single-level listing — directory browsing is now instant.
-
Fix
Fixed HTTP 401 "getBalance failed" error — balance endpoint now supports agent key auth (X-Agent-Key header) when no access token is available.
-
Update
Settings: removed duplicate Disconnect button from bottom of Settings page.
-
New
Platform node-chat: model selector now shows only xAI models (chat, image gen, video gen) grouped by type. Added latest grok-4.20 0309 models.
-
New
Settings sync: model selection, context toggle, notes, and Ctrl+Enter preference sync between platform node-chat and client via new settings API.
1.2.1
2026-03-24
API key auth only, login removed
-
Fix
Fix "verify response parse error" when connecting via web UI — Apache .htaccess now resolves .php extensions for extensionless API paths.
-
Update
Removed login/logout subcommands — authentication is now exclusively via platform API key (--set-platform-key or the web UI Settings page).
-
Update
Removed email/password login and register routes from the embedded HTTP server.
-
Update
Docs updated: web UI Settings page noted as the primary way to configure keys, billing, model, and workspace.
1.2.0
2026-03-23
Platform key sharing and cluster sync
-
New
Platform Settings page: store your xAI API key with AES-256-GCM encryption. Toggle sharing so all connected cluster clients auto-sync it.
-
New
Client: --share-key flag pushes a locally-set xAI key to the platform for cluster-wide sharing.
-
New
Client: background loop fetches platform user settings every 60s; when a shared xAI key is set, chat routes directly to api.x.ai (zero platform billing).
-
Update
Agent API (chat, images, videos) resolves user xAI key first, skips token billing when present.
-
Update
Platform: access gate removed — all logged-in users can view plans, servers, and tokens immediately.
-
New
Platform: checkout modal preview on Plans page (Stripe integration coming soon).
1.1.4
2026-03-23
Platform Clients page CSP fix; chat billing toggle
-
Fix
Website: /platform/clients.php loads its script from /platform/assets/clients.js so Generate key works under strict Content-Security-Policy (script-src self).
-
New
Client: Settings → Chat billing — use Avalynn platform tokens or your own xAI API key (direct to api.x.ai); store key in ~/.avalynnai/settings.json; clear button.
-
New
Client: Toolbar and sidebar show Platform vs xAI for the active chat route; Usage page splits session totals and labels history rows by billing source.
1.1.3
2026-03-23
Toolbar popovers, SSE flush, permission-safe files
-
Fix
History/Notes buttons: inline handlers no longer call the browser native HTMLElement.togglePopover (rename to avaOpenToolbarPopover + classList).
-
Fix
Chat History: final SSE chunk is decoded before the stream closes so the done event (and session id) is not dropped.
-
Fix
Files tree skips entries that throw permission denied or other stat errors instead of failing the whole workspace listing.
-
Fix
Session list API tolerates permission issues and uses non-throwing size/mtime where supported.
1.1.2
2026-03-23
Embedded UI: history, notes, files, model picker
-
Fix
Model dropdown no longer throws ReferenceError (inline handlers use setModelFromSelect instead of a non-global S).
-
Fix
Chat sessions persist: empty client session now gets a server-assigned id, saved under ~/.avalynnai/sessions, returned on stream done so History lists real threads.
-
Fix
Files tree skips broken symlinks (no more whole-tree failure on unreadable file_size).
-
Fix
Notes popover stays open after add/toggle/delete; corrupt ava_notes localStorage no longer breaks the app.
-
Update
History popover shows clearer empty and error states.
1.1.1
2026-03-23
Settings: correct API key help link
-
Fix
Embedded settings UI now links to https://avalynn.ai/platform/clients.php (generate platform API keys) instead of a non-existent /settings URL.
1.1.0
2026-03-23
Platform-linked nodes and relay
-
New
Stable device identity: clients should persist and resend the same node_id on reconnect so the platform updates one row instead of creating duplicates.
-
New
Agent APIs: verify-key, register, heartbeat, deregister, and relay send/poll/respond work with platform user API keys (avl_u_*) as well as server keys.
-
Update
Dashboard Clients page for generating keys and viewing linked devices; Download page shows a living changelog.
-
Fix
Platform: correct heartbeat parameter binding; key revoke removes dependent node rows reliably; relay resolves users from user_api_keys when no node row exists yet.
-
New
Native client: /api/auth/connect calls verify-key then register with a stable node_id in ~/.avalynnai/auth.json; heartbeat + relay poll loop; inbound relay runs the agent and POSTs respond.
-
New
Native client: relay_to_node tool (queue on platform, poll status until completed). Platform user keys use X-Agent-Key on /platform/api/agent/chat; chat picks up new credentials after linking without restart.
1.0.0
2026-03-01
Initial Linux distribution
-
New
APT repository (packages.avalynn.ai) and Linux x86_64 / ARM64 tarballs.
-
New
avalynnai login, serve, chat, and --local-mode with XAI_API_KEY.