Changelog
What shipped
Synced from the repository’s CHANGELOG.md. Artifacts for every release live on GitHub Releases.
All notable changes to G-Rump are documented here. The format follows Keep a Changelog and versions follow Semantic Versioning.
2.0.0 - 2026-07-09
G-Rump 2.0 is the multi-provider release. The app is no longer tied to a single AI vendor: bring your own key for Anthropic (default), OpenAI, Google, or OpenRouter, and G-Rump speaks each provider's native wire format with full streaming tool calls. The release also lands the cognitive-memory engine, the brain subsystems, and a large platform cleanup that removes the SaaS billing layer entirely — G-Rump is now a local-first app with your keys in the macOS Keychain and no accounts.
Added
- Multi-provider AI. Anthropic (default), OpenAI, Google, and OpenRouter. Anthropic and Gemini use native wire formats with streaming tool calls; OpenAI and OpenRouter ride a shared parameterized OpenAI-compatible transport.
- 2026 model catalog. Claude Opus 4.8 (default), Claude Fable 5 (premium, manual select only), Claude Sonnet 5, Claude Haiku 4.5, GPT-5.2, GPT-5.3-Codex, Gemini 3 Pro, Gemini 2.5 Flash, plus OpenRouter routes (Claude Sonnet 5, GPT-5.3-Codex, Gemini 3 Pro, Qwen3 Coder).
- API key validation on save. Each saved key gets a cheap authenticated probe with inline verified / rejected / could-not-verify feedback in both Settings and onboarding. Keys always save first; a failed probe warns and never blocks.
- Provider-aware model routing. Task routing picks sensible heavy/light chains within the active provider. Fable 5 is never auto-selected.
- Automatic settings migration. One-shot migration of Qwen-era configuration: provider and model IDs are remapped and stray keys are hoisted into the Keychain. No manual steps.
- Cognitive memory (Track 1: MemoryAgent). Cross-session memory with relevance x recency x salience ranking, recall within a fixed token budget, and deliberate forgetting of stale context.
- Brain subsystems. Vault, voice, eyes, mind, and daemon fused into the app.
- Richer chat rendering. Task lists, inline code pills, images, H4-H6 headings, improved streaming code blocks, expandable tool timeline with line counts and copy buttons, per-message word count, and copy-as-markdown.
- Keyboard shortcuts, conversation search, collapsible messages, and diff copy.
- Expanded syntax highlighting. SQL, YAML, HTML, CSS, and Dockerfile, plus decorator support.
- Code signing and notarization pipeline.
make sign/make package/make notarizefor signed, notarized distribution builds. - Evaluation harness.
scripts/judge-verify.mjs(chat, multi-turn tool calling, embeddings) andscripts/agent-eval.mjs(4-task agent battery on a real tool loop). - CI hardening. SwiftLint strict configuration; green pipeline across tests, lint, backend tests, and release build. Suite currently at 1,449 tests.
Changed
- Default model is Claude Opus 4.8 (was Qwen Coder Plus).
- API keys live exclusively in the macOS Keychain, one account per provider. Keys are never written to UserDefaults or any config file.
- Agent modes consolidated from seven to three: Plan, Build, Spec.
- The Node.js backend is now an optional stateless proxy; the app calls providers directly by default.
- Anthropic requests pin
anthropic-version: 2023-06-01and omit temperature (Claude 4.7+/5 models reject it). - Themes renamed to neutral names: Snow, Linen, Graphite, Amethyst, Ink.
- Relicensed under MIT.
Fixed
- Anthropic tool arguments now stream.
input_json_deltachunks were dropped, so every Anthropic tool call arrived with empty arguments. - Anthropic multi-turn tool loops no longer 400. System prompts ride the
top-level
systemfield, assistant turns emittool_useblocks, and max-tokens is set per request. - Gemini tool loops work past turn one. Tool results are now sent as
functionResponseparts. - Stop-reason normalization. All providers normalize to the same
tool_calls/stopsignals so the agent loop drives identically everywhere. - Settings key foot-gun removed. The Account tab's "OpenRouter API key" field silently wrote to whichever provider was active; per-provider keys live in the Providers tab.
- Headless test crash and all pre-existing test failures; the suite runs green.
- 48 deployment gaps closed across security, legal, features, backend, and accessibility ahead of distribution.
Removed
- Billing / platform SaaS layer. JWT auth replaced by an optional
APP_API_KEYgate on the proxy. - OpenClaw chat-routing subsystem.
- GRumpServer SaaS target.
- Ollama, on-device CoreML, and model-mode dead code.
- "Local Only Mode" privacy toggle and "Fully Local" badge (they gated nothing).
- Legacy
AIModelenum; the typed model catalog is the single source of truth.
Security
- Shell-injection vectors eliminated — subprocess calls use
Process()argument arrays instead of interpolated shell strings. - MCP hardening: path-traversal protection and authentication on
tools/list. ProviderConfigurationexcludes the API key from serialization, so keys cannot leak into UserDefaults backups.- Key-validation probes send keys in headers only (Google via
x-goog-api-key), never in URLs where they could reach logs.
1.0.0 - 2026-02-24
Initial release: a native macOS/iOS autonomous AI coding agent — chat with streaming responses, 100+ local tools (file, shell, git, Docker, browser, Apple-native), MCP client and server, skills and SOUL.md personality systems, approval-gated autonomous daemon, and dual-mode persistence (SwiftData/JSON).