Populars: Dades actualitzades el 26 d’octubre del 2026

Categories

Internet1.355
Comunicació321
Àudio i vídeo898
Gràfics i disseny539
Ofimàtica i productivitat1.120
Eines per a desenvolupadors3.132
Eines d’IA527
Seguretat i privadesa385
Eines del sistema3.113
Jocs523
Educació i ciència239
Xarxa i TI284

OpenFang: baixar versions anteriors

Open-source Agent Operating System

RightNow AI, Inc. Assistents d’IA i LLM #74 Assistents d’IA i LLM

Aquí hi ha 66 versions d’OpenFang, des de 1 de març del 2026 fins a l’actual, 0.6.9. Cadascuna enllaça amb els instal·ladors del mateix desenvolupador.

2026: 66 66 26
VersióDataMidaFitxers
0.6.9Darrera versió 12 de maig del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Security patches (RUSTSEC advisories that broke v0.6.8 CI):
- rustls-webpki 0.103.10 → 0.103.13:
- RUSTSEC-2026-0104 — reachable panic in CRL parsing
- RUSTSEC-2026-0098 — name constraints for URI names incorrectly accepted
- RUSTSEC-2026-0099 — wildcard name constraints accepted incorrectly
- wasmtime 43.0.1 → 43.0.2:
- RUSTSEC-2026-0114 — panic allocating a table exceeding host address space
Maintenance:
- cargo fmt applied workspace-wide (CI Format gate green)
All v0.6.8 fixes carried forward:
- #1097 workspace state_dir split
- #1085 dashboard WS auth aligned with HTTP middleware
- #1038 skill_list / skill_describe / skill_execute agent tools
- #995 Requesty provider added
- #1154 OLLAMA_HOST / LMSTUDIO_HOST env override
- #1170 require_signed wired through POST /api/skills/install
- #1174 POST /api/audit/append endpoint
- #1172 HAND.toml SHA-256 to Merkle audit chain
- #780 Telegram message_thread_id routing
- Codex installer findings: CRLF/BOM, package.json, symlink, TOCTOU all closed
0.6.7 12 de maig del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Resolves 7 community issues. 2657 tests passing, zero clippy warnings, zero regressions.
Web Dashboard
- #1179 WebSocket reconnects to the active agent after page refresh. localStorage persists the agent id, init restores it, history hydrates from /api/agents/{id}/session.
- #1163 Uninstall an agent from chat. New DELETE /api/agents/{id}/uninstall removes the in-memory entry plus the ~/.openfang/agents/<name>/ directory. Red Uninstall button next to Stop in both the chat header and the agent detail modal. Path-traversal rejected.
Kernel
- #1164 Agent Stop now deactivates the owning hand. Hand-owned agents no longer hit "Hand already active" on re-activation. WS /stop command mirrors the same path.
Runtime
- #1169 shell_exec env passthrough. New exec_policy.shell_env_passthrough Vec with aliases env_passthrough and env_allowlist. Wildcard "*" forwards every parent env var. Tested across the merge helper and 10 deser cases.
- #1051 TTS and image generation base URLs configurable. media.tts_openai_base_url, media.tts_elevenlabs_base_url, media.image_gen_base_url. Same pattern as audio_base_url from v0.6.4. Local OpenAI-compat services for Whisper, TTS, and DALL-E flavors all swappable now. 8 new tests.
Skills
- #1170 Backend InstallOptions::require_signed enforces Ed25519 signature verification at install time. Allowed-signer pubkey allowlist supported. CLI wiring pending follow-up.
Docs
- #1173 Docker host-gateway and curl-equipped reference image documented in troubleshooting.md and getting-started.md. docker-compose.yml has a commented extra_hosts: baseline.
PR review activity
- 4 PRs merged in round 7-8 (#1147 channel_id binding, #1143 Discord images, #1176 Shift+Enter, #1168 LaTeX render).
- 8 PRs closed as abandoned or unfit (#1115, #1116, #1117, #1066, #1057, #1030, #1050, #1056, #1046).
- #1055 caught smuggling an X-Frame-Options regression in a metering-named PR. Request-changes posted.
Stats
- 2657 tests passing (+32 from v0.6.6)
- Zero clippy warnings (--workspace --all-targets)
- Zero regressions
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.6.6...v0.6.7
0.6.4 1 de maig del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
This release resolves 4 community-reported issues. 2543 tests passing, zero clippy warnings, zero regressions.
Web Dashboard
- #1036 Sidebar opens in Firefox. Replaced template x-if + div x-transition pattern (broken in Firefox) with x-show + x-cloak. All five nav sections now render correctly. CSS x-cloak rule prevents flash of unstyled content during Alpine init.
Providers
- #1032 OpenRouter free now usable. The openrouter/free alias pointed to llama-3.1-8b-instruct:free which OpenRouter does not route to tool-supporting backends, so requests failed with "No endpoints found that support tool use". Repointed to llama-3.3-70b-instruct:free. Added 5 verified tool-capable free models: llama-3.3-70b-instruct:free, qwen3-coder:free, gpt-oss-120b:free, gpt-oss-20b:free, glm-4.5-air:free. Added openrouter/free-coder and openrouter/free-large aliases.
Installer
- #1107 Fish shell config no longer wedged on CachyOS / Arch. Installer writes to ~/.config/fish/conf.d/openfang.fish (drop-in dir, auto-sourced) instead of appending bash syntax to config.fish. Wraps PATH line in if test -d so a missing install dir cannot break fish startup. Self-heals legacy lines from config.fish if present. Same root cause as #261, #319, #372.
Docs
- #1037 docs/configuration.md and openfang.toml.example expanded. New "Exposing the Dashboard" section with working docker-compose example, OPENFANG_HOME path resolution, port-must-match note, and security warning about non-loopback binds with the OPENFANG_ALLOW_NO_AUTH opt-in.
Stats
- 2543 tests passing (+3 from v0.6.3)
- Zero clippy warnings (--workspace --all-targets)
- Zero regressions
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.6.3...v0.6.4
0.6.3 1 de maig del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
This release resolves 4 bugs across LLM drivers, channels, and kernel hot-reload, plus a CI tooling bump. 2540 tests passing, zero clippy warnings, zero regressions.
LLM Drivers
- #1098 Reasoning models retain state across turns. Thinking blocks are now parsed, persisted, and replayed across all three drivers (Anthropic with thinking_signature, Gemini reasoning, OpenAI o1/o3). Round-trip tests added. Models like Claude Sonnet extended thinking, Gemini 2.5 Flash, DeepSeek R1, Qwen, GPT o1 no longer lose reasoning state between turns.
Channels
- #1103 Slack envelope_id deduplication. Socket Mode events now dedup against a 60s TTL cache (10000-entry soft cap). Connection rotation no longer causes double-processing of the same event.
- #1133 Telegram REACTION_TOO_MANY removed from terminal-error list. The transient rate-limit reaction error is no longer cached as permanent rejection. Future reactions land once the cap clears.
Kernel
- #1129 Subprocess timeout hot-reload. Edits to subprocess_timeout_secs in default_model and fallback_providers now propagate without restart. Follow-up to #1128 in v0.6.1.
CI
- #1061 softprops/action-gh-release bumped from v2 to v3 (Node 24 runtime).
Stats
- 2540 tests passing (+23 from v0.6.2)
- Zero clippy warnings (--workspace --all-targets)
- Zero regressions
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.6.2...v0.6.3
0.6.2 29 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
This release resolves 8 community-reported issues and ships 4 dependency bumps. All changes verified with cargo clippy clean and 2517 tests passing.
Security
- #1060 SSRF protection unified for WASM host calls. IPv6 bracket form parsed correctly. Adds Alibaba and Azure metadata IP blocks. Honours ssrf_allowed_hosts on the WASM path. CIDR allowlist support.
- #1132 exec_policy.mode = "full" now actually takes effect. Edits to ~/.openfang/config.toml propagate to existing agents on restart instead of being silently ignored by the cached DB value.
Channels
- #1100 Telegram errors propagate. send_message, send_photo, send_document, send_voice, send_location all return Err on HTTP failure instead of warn-and-Ok. Terminal reaction errors cached per chat to avoid retry loops.
- #1095 MCP stdio servers get HOME, TMP, TEMP env vars on Linux and macOS. Fixes EACCES errors with npx-based MCP servers.
- #1058 Trader hand dashboard CSS fixed. position: relative on .trader-chart-panel confines the empty-state overlay correctly.
- #1127 BindingMatchRule.channel_id field added with serde(default). Channel-scoped routing now supported. Struct also gains deny_unknown_fields.
Code Quality
- #1091 Five clippy warnings fixed. collapsible_match in gemini, openai drivers and 13 CLI files. sort_by replaced with sort_by_key + Reverse in session_repair.
- #1126 Provider env tests stabilised. New EnvVarGuard with shared mutex prevents the cross-test race that flaked NOVITA_API_KEY assertions.
Dependencies
- uuid 1.23.0 to 1.23.1
- rustls 0.23.37 to 0.23.39
- libc 0.2.183 to 0.2.185
- lettre 0.11.20 to 0.11.21
Stats
- 2517 tests passing
- Zero clippy warnings (--workspace --all-targets)
- Zero regressions
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.6.1...v0.6.2
0.6.1 29 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
This release resolves 12 community-reported issues across kernel, channels, runtime, and the dashboard. All fixes verified with cargo clippy clean and 2497 tests passing.
Kernel & Heartbeat
- #1102 Heartbeat now exempts idle reactive agents. No more false Crashed transitions for agents waiting on input.
- #1089 Streaming agent loop stamps last_active before the LLM call. Prevents heartbeat false-positives on slow local models.
- #1087 Agent config syncs the full set of fields from agent.toml on restart. Kernel-assigned workspace and inherited exec_policy are preserved when the TOML omits them.
Channels
- #1120 Router default-agent map keyed on user_id instead of channel_id. Fixes Discord and Slack multi-tenancy collision.
- #1081 Lark websocket respects the region setting. International users no longer hit the wrong server.
- #1088, #1064 Cron job results now broadcast to chat WebSocket clients in real time.
Runtime
- #1128 claude-code driver subprocess timeout is configurable via DriverConfig.subprocess_timeout_secs and the OPENFANG_SUBPROCESS_TIMEOUT_SECS env var.
- #1051 Audio transcription base URL is configurable via media.audio_base_url. Works with local OpenAI-compatible Whisper backends. TTS and image-gen URL overrides are still pending.
Init & Build
- #1079 MiniMax now appears in openfang init provider list.
- #1092 NixOS flake build fixed. Adds nativeBuildInputs, wrapGAppsHook3, and libayatana-appindicator runtime closure.
Code Quality
- #1121 Workspace passes cargo fmt --all --check. CI gate strengthened to enforce it across all crates.
Stats
- 2497 tests passing
- Zero clippy warnings (--workspace --all-targets)
- All fixes live-tested with a running daemon and real Groq calls where applicable
- Tauri desktop config bumped so .dmg and .msi filenames track the release version
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.6.0...v0.6.1
0.6.0 19 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Three Hermes-inspired capabilities ported to OpenFang's Rust architecture. Each wired end-to-end: backend + API + dashboard + (where applicable) TUI. 51 new tests, zero clippy warnings, zero regressions across 2460+ workspace tests.
Features
Multi-destination cron delivery
Cron jobs fan out results to multiple targets in one declaration:
- Channel — any of the 40 existing channel adapters (Telegram, Slack, Discord, WhatsApp, Matrix, Teams, …)
- Webhook — POST JSON {job, output, timestamp} with optional Authorization header
- LocalFile — path + append/overwrite flag
- Email — with subject template support
Per-target failures log but never abort the job. Edit targets through the Scheduler dashboard page or the new PUT /api/schedules/{id} endpoint.
Skill config injection
Skills are now templates. Declare config vars in SKILL.md frontmatter:
config:
github_token:
description: GitHub personal access token
env: GITHUB_TOKEN
required: true
default_branch:
description: Default branch name
default: main
required: false
Resolver order per var: user config.toml → env var → default → error if required missing. Secrets auto-redacted in the rendered skill prompt (*_token, *_key, *_secret, password). Manage through the new Skills page Configure modal, or [skills.<name>] in config.toml.
Unified slash command registry
All 32 slash commands live in one source of truth with categories, aliases, and per-surface filtering (CLI / Channel / Web). Auto-generated help, autocomplete, and the new GET /api/commands endpoint for dashboard consumption. Prevents command drift across CLI, web chat, Telegram, Slack, Discord, and 37 other channels.
API additions
- GET /api/commands?surface=web|cli|channel|all
- GET/POST/PUT /api/schedules now round-trip delivery_targets
- GET /api/schedules/{id}/delivery-log
- GET /api/skills/{id}/config
- PUT /api/skills/{id}/config
- DELETE /api/skills/{id}/config/{var_name}
Improvements
- Atomic config.toml writer (tempfile + rename) prevents corruption on crash
- Kernel skill_config_overrides enables live config updates without restart
- Fixed 4 pre-existing clippy warnings (manual_contains)
- Tauri desktop config bumped so .dmg / .msi filenames now match the release version (no more OpenFang_0.5.9_… on a 0.6.0 release)
Testing
- 51 new tests (cron_delivery 16, commands 18, config_injection 10, API integration 7)
- All 2460+ workspace tests pass
- cargo clippy --workspace --all-targets -- -D warnings — zero warnings
- Live daemon integration verified for each feature
Full diff: v0.5.10...v0.6.0
0.5.10 17 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Follow-up patch to v0.5.9. Seven real bugs off the tracker.
Security
Auth fail-closed. When no api_key is configured, non-loopback requests are rejected with 401 by default. Loopback still goes through with no config so single user local setups keep the zero-config UX. To run a no-auth server on a LAN address, set OPENFANG_ALLOW_NO_AUTH=1. The startup log now prints loudly which mode the server is in. Closes the B1 and B2 findings on #1034.
Runtime
Agent context.md is re-read on every turn. If a cron job rewrites context.md with fresh market data, trading agents pick it up on the next message instead of waiting for a session restart. Opt back into the old cache-at-start behavior per agent with cache_context = true in the manifest. Closes #843.
Multimodal user messages now combine text and attached image blocks into a single user_with_blocks message. The old path dropped the text when images were attached, so vision models received images with no prompt. Closes #1043.
Scheduler
Schedule tools and HTTP routes now actually fire. schedule_create, schedule_list, schedule_delete, and the matching /api/schedules* endpoints were writing to a shared memory key that no executor read. They now go through the kernel cron scheduler that the tick loop already uses. A one-shot idempotent migration at startup imports legacy entries from the old key, marks the migration done, and never writes to the old key again. Closes #1069.
CLI
openfang config get default_model.base_url prints the configured URL again. The lookup was extracted into a pure function pinned by 8 new unit tests, so a regression on any scalar under [default_model] is caught. Missing keys now return a clear "not found" error instead of an empty line. Closes #905.
openfang hand config <id> is wired up. The docs promised it, the command did not exist. Now supports --get, --set KEY=VALUE (repeatable), --unset KEY, and --list. Empty keys are rejected loudly, settings persist across daemon restarts. Closes #809.
Channels
Optional per-channel agent name prefix on outbound messages. Set prefix_agent_name = "bracket" or "bold_bracket" in a channel override and responses are wrapped with [agent] so multi-agent channels show who replied. Default is off, byte identical to prior output. Idempotent, never double wraps. Closes #980.
Housekeeping
Two issues closed as invalid. #818 and #819 referenced a knowledge-domain API that does not live on main, filed against an unmerged feature branch. The proposed source path validation and stale-timestamp surfacing are still the right shape and should be built into that feature when it lands.
Numbers
7 fixes. 7 PRs merged. 9 issues closed. 17 new unit tests on scheduler alone. All gated by cargo check, cargo test, cargo clippy --all-targets -- -D warnings, and cargo fmt --check on every affected crate.
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.9...v0.5.10
0.5.9 10 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
The zero-bug release. Every open bug on the tracker has been fixed.
Config persistence finally works
Dashboard changes to agent model, provider, fallback chain, system prompt, and identity settings now write back to agent.toml on disk. Your config survives daemon restarts. This was the single most reported pain point across Discord and GitHub.
Security
PowerShell command bypass closed. When the outer command is a shell wrapper (powershell, cmd, bash), OpenFang now extracts and validates the inner commands against the exec allowlist. powershell -Command "Remove-Item ..." is blocked when Remove-Item is not in allowed_commands.
Dashboard auth upgraded to Argon2id with random salts, replacing the old SHA-256 hash. New openfang auth hash-password CLI command for migration.
Stability
WebSocket 404 race condition fixed. The upgrade handler now retries agent lookup up to 5 times before giving up, handling the spawn-to-register timing gap.
Feishu webhook panic paths eliminated. Poisoned mutex recovery, regex fallback, bounds-checked indexing, and malformed paragraph skip.
rustls CryptoProvider initialized at kernel boot. Fixes TLS panics on Discord, Mattermost, and Feishu WebSocket connections.
Revolt adapter now supports self-hosted instances with configurable ws_url and allowed_channels.
Community contributions
Copilot OAuth device flow by @dmbutko. Full token lifecycle with persistence, refresh rotation, and HTTPS validation.
AWS Bedrock provider by @smitb. Native Converse API with bearer auth and streaming.
Russian localization by @AlexZander85. Complete i18n framework with English and Russian out of the box.
SearXNG search provider by @norci. Self-hosted metasearch with category validation and pagination.
Gemini compatibility improvements by @nldhuyen0047. History ordering fix and array schema injection.
Novita AI provider by @Alex-wuhu. armv7 target by @Myshkouski.
Signal defaults to plain text. New agents use your configured model instead of hardcoded Groq. Cron jobs preserved across Hand reactivation. Intermediate tool text no longer dropped. UTF-8 boundary panics fixed. Alpine SVG rendering errors resolved. Dozens of UI polish fixes from @lc-soft.
Numbers
45 bugs fixed. 86 issues closed. 85 PRs merged. 55 PRs rejected after strict security audit. 8 releases shipped. Zero open bugs remaining.
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.8...v0.5.9
0.5.8 10 d’abril del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Dozens of community contributions merged in this release. Every PR was audited for correctness, security, and code quality before landing.
What's new
GitHub Copilot OAuth rewrite by @dmbutko. Full device flow authentication with token persistence, refresh rotation, and HTTPS validation. Replaces the old PAT-based auth that stopped working.
Russian localization by @AlexZander85. Complete i18n framework with language detection, localStorage persistence, and textContent-only rendering (no innerHTML, no XSS surface). English and Russian ship out of the box.
AWS Bedrock provider by @smitb. Native Converse API driver with bearer token auth, streaming support, and proper error mapping.
WeCom Stream mode by @felix307253927. WebSocket long-connection channel adapter with protobuf framing, heartbeat, and dedup.
Session interaction endpoints by @miguelangarano. Target specific agent sessions for messaging, enabling per-user conversation isolation in multi-tenant setups.
Gemini embedding driver by @chethanuk. Native batch embedding with automatic fallback to single-document mode.
SearXNG improvements by @norci. Simplified config, new list_searxng_categories tool, better error handling.
armv7 target by @Myshkouski. Raspberry Pi and embedded ARM board support in CI releases.
Bug fixes
WebSocket auth (#962). API keys with +/=/ characters now work for streaming. The server URL-decodes the token query parameter before comparison.
Moonshot Kimi K2.5 (#970). Kimi models now route to api.moonshot.cn/v1 instead of the legacy .ai domain.
Nextcloud chat polling (#987). Corrected from api/v4/room/{token}/chat to api/v1/chat/{token}/.
Docker build (#983). Added perl and make to the builder stage for openssl-sys compilation.
Clippy lint (#939). Fixed bool comparison in web_fetch tests.
Gemini compatibility. History now starts with a user turn after context trimming (#1011). Array parameters get default items schema (#1010). Alpine SVG rendering errors in cost charts fixed (#1004).
Cron job preservation (#1019). Jobs no longer silently disappear when a Hand is reactivated.
Signal output (#1020). Defaults to plain text since Signal doesn't render Markdown.
New agent defaults (#968). Agents created from the dashboard now use your configured provider instead of hardcoded Groq.
Intermediate tool text (#989). Text from tool_use iterations is no longer silently dropped.
Copilot OAuth (#1017). Device flow replaces broken PAT auth.
UI fixes. Modal centering (#1027), bar chart styles (#1022), baseUrl undefined (#1006), duplicate message keys (#1002), UTF-8 char boundary safety (#1029), Nix perl build input (#966).
PRs closed
13 duplicate or stale PRs closed. 10 approved PRs waiting on contributor rebases. 2 dependabot bumps (wasmtime, hmac) flagged for testing before merge.
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.7...v0.5.8
0.5.6 30 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Critical Fix
- Version sync: Desktop app and workspace version now correctly report v0.5.5+. Users stuck on v0.5.1 should be able to update. Tauri config was hardcoded at 0.1.0 since initial commit.
New Features
- SSRF allowlist: Self-hosted/K8s users can now configure ssrf_allowed_hosts in config.toml to allow agents to reach internal services. Metadata endpoints (169.254.169.254, etc.) remain unconditionally blocked.
[tools.web_fetch]
ssrf_allowed_hosts = ["*.olares.com", "10.0.0.0/8"]
- Expanded embedding auto-detection: Now probes 6 API key providers (OpenAI, Groq, Mistral, Together, Fireworks, Cohere) before falling back to local providers (Ollama, vLLM, LM Studio). Clear warning when no embedding provider is available.
Bug Fixes
- Ollama context window: Discovered models now default to 128K context / 16K output (was 32K/4K). Better reflects modern models like Qwen 3.5.
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.5...v0.5.6
0.5.5 27 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Bug Fixes
- #771 Qwen/OpenAI-compat tool_calls orphaning after context overflow. Smart drain boundaries + streaming repair.
- #811 LINE webhook signature validation. Raw bytes for HMAC, secret trimming, debug logging.
- #752 Local skill install: TUI parsing fix, hot-reload via /api/skills/reload, ClawHub reload.
- #772 exec_policy mode=full now bypasses approval gate for shell_exec.
- #661 Chat streaming interrupts (closed as resolved by v0.5.3 reactivity fixes).
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.4...v0.5.5
0.5.4 27 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Bug Fixes
- #875 Install script now correctly fetches latest release version
- #872 Session endpoint returns full tool results (removed 2000-char truncation)
- #867 agent_send/agent_spawn timeout increased to 600s (was 120s)
- #824 Doctor correctly counts workspace skills that override bundled skills
- #833 Model switching respects explicit provider via find_model_for_provider()
- #766 Closed as resolved by heartbeat fixes
Stats
- All tests passing
- Live tested with daemon
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.3...v0.5.4
0.5.3 27 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
What's Changed
This release resolves 19 bugs across runtime, kernel, CLI, Web UI, and hands — all verified with live daemon testing.
Runtime & Drivers
- #834 Remove 3 decommissioned Groq models (gemma2-9b-it, llama-3.2-1b/3b-preview)
- #805 Ollama streaming parser handles both reasoning_content and reasoning fields
- #845 Model fallback chain retries with fallback_models on ModelNotFound (404)
- #785 Gemini streaming SSE parser handles \r\n line endings — fixes infinite empty retry loop
- #774 tool_use.input always normalized to JSON object — fixes Anthropic API "invalid dictionary" errors
- #856 Custom model names preserved — user-defined models take priority over builtins (vLLM, etc.)
Kernel & Heartbeat
- #844 Heartbeat skips idle agents that never received a message — no more crash-recover loops
- #848 Hand continuous interval changed from 60s to 3600s — prevents credit waste
- #851/#808 Global ~/.openfang/skills/ loaded for all agents; workspace skills properly override globals
CLI
- #826 openfang doctor reports all_ok=false when provider key is rejected (401/403)
- #823 doctor --json outputs clean JSON to stdout, tracing to stderr, BrokenPipe handled
- #825 Doctor surfaces blocked workspace skills count in injection scan (no more false "all clean")
- #828 skill install detects Git URLs (https://, git@) and clones before installing
Web Dashboard
- #767 Workflows page scrollable (flex layout fix)
- #802 Model dropdown handles object options — no more [object Object] for Ollama
- #816 Spawn wizard provider dropdown loads dynamically from /api/providers (43 providers)
- #770 Chat streaming renders in real-time (Alpine.js splice reactivity + stale WS guard)
WebSocket & API
- #836 Tool events include id field for concurrent call correlation
Hands
- #820 Browser Hand checks python3 before python — works on modern Linux distros
Stats
- 2,186+ tests passing, zero clippy warnings
- All fixes verified with live daemon testing
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.1...v0.5.3
0.5.2 26 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
What's Changed
Bug Fixes (12 issues resolved)
Runtime & Drivers
- #834 Remove 3 decommissioned Groq models (gemma2-9b-it, llama-3.2-1b-preview, llama-3.2-3b-preview)
- #805 Ollama streaming parser now handles both reasoning_content and reasoning fields for thinking models (Qwen 3.5, etc.)
- #845 Model fallback chain now retries with configured fallback_models on ModelNotFound (404) instead of panicking
Kernel & Heartbeat
- #844 Heartbeat monitor skips idle agents that never received a message — no more infinite crash-recover loops
- #848 Hand continuous mode interval changed from 60s to 3600s to prevent credit waste on idle polling
CLI (Doctor)
- #826 openfang doctor now reports all_ok=false when a provider key is rejected (401/403)
- #823 openfang doctor --json outputs clean JSON to stdout (tracing goes to stderr), BrokenPipe handled gracefully
Web Dashboard
- #767 Workflows list page is now scrollable (flex layout fix)
- #802 Model dropdown no longer renders [object Object] for Ollama models
- #816 Agent spawn wizard provider dropdown loads dynamically from /api/providers (43 providers, was hardcoded 18)
- #836 WebSocket tool events now include tool call ID for correct concurrent call correlation
Hands
- #820 Browser Hand requirements check now tries python3 before python, fixing detection on modern Linux distros
Stats
- All 829+ tests passing
- Zero clippy warnings
- Live tested with daemon
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.5.1...v0.5.2
0.5.1 20 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
9 community PRs merged after strict review (24 PRs reviewed, 11 rejected, 4 closed).
Fixes
- Dashboard settings page loading state fix (#750)
- KaTeX loaded on demand to prevent first-paint blocking (#748)
- Provider model normalization — display names resolve through catalog (#714)
- Invisible approval requests now visible with history, badge, and polling (#713)
- Matrix auto_accept_invites now configurable, defaults to false (security) (#711)
Dependencies
- docker/build-push-action 6 → 7 (#741)
- docker/setup-buildx-action 3 → 4 (#740)
- roxmltree 0.20 → 0.21 (#744)
- zip 2.4 → 4.6 (#742)
Full diff: v0.5.0...v0.5.1
0.5.0 19 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
29 bugs fixed, 6 features shipped, 100+ PRs reviewed, 65+ issues resolved.
Features
- Image generation pipeline (DALL-E/GPT-Image)
- WeCom channel adapter
- Docker sandbox runtimes
- Shell skill runtime
- Slack unfurl links support
- Release-fast build profile
Improvements
- Channel agent re-resolution
- Stable hand agent IDs
- Async session save
- Vault wiring for credentials
- Telegram formatting improvements
- Mastodon polling fix
- Chromium no-sandbox root support
- Tool error guidance in agent loop
- Agent rename fix
- Codex id_token support
Community
- Community docs and fixes (multiple rounds)
- WhatsApp setup documentation
- CI action bumps
- Docker build args
- Lockfile sync
- Docs link fixes
Full diff: v0.4.3...v0.5.0
0.4.9 18 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
v0.4.9
Bug Fixed
- Image pipeline (#686): REST API and WebSocket now pass image attachments as content_blocks directly to the LLM via send_message_with_handle_and_blocks() / send_message_streaming(). Previously images were injected as a separate session message and never reached vision models in the current turn. All 3 API entry points (REST, WebSocket, channels) now use the same flow.
Docs
- Added community troubleshooting FAQ: Docker setup, Caddy basicauth, embedding model config, email allowed_senders, Z.AI/GLM-5 config, Kimi 2.5, OpenRouter free models, Claude Code integration, trader hand permissions, multiple Telegram bots workaround.
Full changelog since v0.4.4
26 bugs fixed, 6 features shipped, 100+ PRs reviewed, 65+ issues resolved across v0.4.4–v0.4.9.
0.4.8 18 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
v0.4.8
Bugs Fixed
- Fix HandCategory TOML parse error — added Finance + catch-all Other variant (#717)
- Fix LINE token detection heuristic — long tokens (>80 chars) recognized as direct values (#729)
- Fix General Assistant max_iterations too low — bumped from 50 to 100 (#719)
- Fix knowledge_query SQL parameter binding mismatch (#638)
- Fix WhatsApp Cloud API silently swallowing send errors (#707)
- Fix dashboard provider dropdown missing local providers (#683)
Previous (v0.4.5–v0.4.7)
- Fix Gemini infinite loop on Thinking-only responses (#704)
- Fix tool_blocklist not detected on daemon restart (#666)
- Fix MCP credentials from .env/vault (#660)
- Fix image base64 compaction storms (#648)
- Fix phantom action hallucination (#688)
- Fix desktop app .env loading (#687)
- Fix duplicate sessions (#651)
- Fix Anthropic null tool_use input (#636)
- Fix temperature for reasoning models (#640)
- Fix OpenRouter prefix on fallbacks (#630)
- Fix streaming metering persistence (#627)
- Fix MCP dash names (#616)
- Fix deepseek-reasoner multi-turn (#618)
- Fix NO_REPLY leak to channels (#614)
- Fix skill install button (#625)
- Fix cron delivery (#601)
Features
- Azure OpenAI provider (#631)
- LaTeX rendering in chat (#622)
- PWA support (#621)
- WeCom channel adapter (#629)
- Shell/Bash skill runtime (#624)
- DingTalk Stream adapter (#353)
- Feishu/Lark unified adapter (#329)
- Parakeet MLX speech-to-text (#607)
- Codex GPT-5.4 (#608)
- 100+ community PRs reviewed and merged
0.4.7 18 de març del 2026 — 64 bits ZIPARM64 ZIP
0.4.6 18 de març del 2026 — 64 bits ZIPARM64 ZIP
0.4.4 15 de març del 2026 — 64 bits ZIPARM64 ZIP
0.4.3 14 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Bug Fixes
- Open links in new tab (#612): External links in markdown agent responses now open in a new tab with target="_blank".
- Browser hand install (#611): Homebrew "already an App at" message now correctly recognized as success instead of failure.
- "FREE is not a valid model" (#610): Added "free", "openrouter/free", and "free-reasoning" aliases for OpenRouter free-tier models.
- WhatsApp drops media (#605): Gateway now handles images, voice notes, videos, documents, and stickers with descriptive placeholders instead of silently dropping them.
- WhatsApp sender metadata (#597): Sender identity (phone, name) now flows end-to-end from API → kernel → system prompt. Agents know who sent each message.
- Config overwrite warning (#578): Web dashboard shows a warning toast when saving an API key triggers an auto-provider-switch.
- Linux libssl error (#582): OpenSSL is now statically compiled via vendored feature — no runtime libssl dependency.
Enhancements
- Minimax global URL (#576): Default URL switched to global endpoint (api.minimax.io/v1). China users can override via [provider_urls] in config.toml.
0.4.2 14 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Bug Fixes
- LoopGuard poll detection (#603): Removed fragile cmd.len() < 50 heuristic. Poll detection is now purely keyword-based — long kubectl/docker commands are correctly identified.
- Custom model provider display (#581): Model switcher dropdown now shows provider:model format instead of just the display name.
- Telegram typing indicator (#571): Typing indicator now refreshes every 4 seconds continuously during LLM processing, instead of expiring after 5 seconds.
- "No agent selected" error (#569): Agents created via API are now immediately registered in the channel router's name cache.
- Tool calls denied by approval (#537): Denial message now includes guidance to use auto_approve = true in config.toml or --yolo flag.
- WhatsApp sender metadata (#597): MessageRequest and PromptContext now have sender_id/sender_name fields for identity-aware agents.
- LLM auth boot failure (#572): Already fixed in v0.4.0 (auto-detect fallback). Commented for users on older versions.
Enhancements
- NVIDIA NIM provider (#579): Added as OpenAI-compatible provider with 5 models (nemotron-70b, llama-3.1-405b/70b, mistral-large, nemotron-4-340b). Set NVIDIA_API_KEY to use.
- YOLO mode (#573): openfang start --yolo auto-approves all tool calls. Also configurable via auto_approve = true in [approval] section.
- Skill output persistence (#596): Tool/skill output cards in dashboard now default to expanded instead of collapsed, keeping results visible.
0.4.1 14 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Bug Fixes
- Memory recall loop (#583): build_memory_section() no longer tells the model to call memory_recall when memories are already injected into the prompt. Models now use provided memories directly.
- Raw errors in channels (#584): Channel bridge sanitizes LLM error messages before sending to users. Rate limits, auth errors, and JSON dumps are replaced with clean user-friendly messages.
- HAND.toml format (#588): Parser now accepts both flat root-level format and the documented [hand] table format.
- Token quota exceeded (#591): Pre-emptive quota-aware compaction triggers before LLM calls when session token count approaches remaining hourly quota headroom.
- log_level config (#594): log_level in config.toml now takes effect. Priority: RUST_LOG env var > config.toml log_level > default "info".
- Max iterations error (#599): Error message now includes guidance on configuring [autonomous] max_iterations in agent.toml.
- Config backup (#578): config.toml is backed up to config.toml.bak before any auto-rewrite (provider key save, config set/unset).
Enhancements
- Default model in Web UI (#593): Spawn wizard fetches default_provider/default_model from /api/status instead of hardcoding groq/llama-3.3-70b-versatile.
0.4.0 12 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.49 12 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.48 12 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
v0.3.48 — Community Issue Fixes
Bug Fixes
- Fix Chromium detection for Browser hand — now checks env vars, PATH, well-known install paths, and Playwright cache (#549)
- Fix Gemini 2.5 Flash empty responses — handle thinking model thought: true parts correctly (#550)
- Fix Twitter hand textbox not editable — API key inputs are now proper password fields (#551)
- Fix Slack threading — extract thread_ts, implement send_in_thread(), add was_mentioned metadata (#552)
- Fix EOF parse error classified as non-retryable — empty response bodies now retry as Overloaded (#535)
- Fix tool calls still showing as text — add 4 new recovery patterns: plugin blocks, Action/Action Input, bare name+JSON, tool_use tags (#537)
- Fix WhatsApp gateway silent disconnects — all disconnect reasons except loggedOut now auto-reconnect with backoff, auto-connect on startup if credentials exist (#555)
- Fix OPENFANG_API_KEY env var not picked up — works in both kernel and CLI as fallback (#557)
Features
- Add Qwen Code CLI as LLM provider with 3 models, auth detection, and full streaming support (#558)
Stats: 2,103 tests, 0 clippy warnings, 17 files changed
0.3.47 11 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix 11 Community Issues
Bug Fixes
#532 — Agent tool filtering — Only send tools declared in agent.toml to the LLM, not all available tools. Massively reduces token usage for agents with specific tool sets. Backwards compatible (empty tools list = all tools).
#531 — Streaming display bug — "streaming" text no longer leaks into chat responses. Fixed phase event handling in dashboard UI so tool-use loops don't show lifecycle signals as content.
#528 — Telegram image MIME detection — Added magic-byte detection (JPEG/PNG/GIF/WebP) so Telegram's application/octet-stream Content-Type no longer breaks vision. Three-tier detection: trusted image/* header → magic bytes → URL extension.
#527 — Custom provider misidentification — Explicit provider names in config are now preserved instead of being overridden by auto-detection. Fixes Tencent/custom base_url setups.
#506 — Gemini 3.x thoughtSignature — Captured at part level for both text and functionCall parts. Fixes INVALID_ARGUMENT: Function call is missing a thought_signature on Gemini 3.x thinking models.
#507 — Telegram group message drops — Added sender_chat fallback when from is absent, and populated was_mentioned metadata so GroupPolicy::MentionOnly works for Telegram groups. Debug logging on all dropped updates.
#519 — Trigger reassignment after restart — Triggers now survive agent restarts via take/restore mechanism, mirroring the existing cron job reassignment pattern.
#523 — Hand re-activation tool profile — tool_allowlist and profile are now correctly set from hand definition on re-activation, preventing tool surface drift.
#524 — Hand readiness API — Enriched with active, degraded, and per-requirement optional fields. Browser's chromium requirement marked optional since Playwright can auto-install it.
#515 — Claude Code agent permissions — Added skip_permissions config (default: true) so Claude Code agents work in daemon mode without blocking on terminal approval prompts.
#509 — Proactive channel_send — Added thread_id parameter for Telegram topic targeting and file_path for local file attachments with MIME detection.
Stats
- 27 files changed, +1730/-252 lines
- 2074 tests passing, 0 clippy warnings
- 14 crates, all clean
0.3.46 11 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Community Contributions
11 PRs reviewed, labeled, commented, and implemented from scratch following our architecture. All PR authors credited.
Bug Fixes
- #438 — IME composition guard prevents Enter from sending during CJK input (@pandego)
- #433 — Default User-Agent: openfang/0.3.46 on all LLM drivers — fixes 403s from Moonshot/Qwen (@ozekimasaki)
- #417 / #392 — Default token quota changed to unlimited (was 1M/hour, caused immediate quota errors on fresh installs) (@f-liva, @cryptonahue)
- #410 — Safe string slicing in channel bridge (9 instances) + desktop server shutdown race condition (@hobostay)
- #413 / #275 — Embedding driver respects provider_urls config + auto-selects correct model per provider (@castorinop, @woodcoal)
- #464 — Wizard generates proper multi-line TOML strings for system_prompt with escaping (@citadelgrad)
New Models & Providers
- #419 / #480 / #439 — Added Z.AI Coding models (glm-5-coding, glm-4.7-coding), Kimi for Code (Anthropic-compatible), fixed Moonshot base URL, added kimi-k2.5-0711 alias (@shipdocs, @skeltavik, @modship)
Internal
- XML-attribute tool call recovery (Pattern 9) for Groq/Llama models that emit <function name="..." parameters="..." />
- 187 models, 40+ providers, 2040+ tests, 0 clippy warnings
Full Changelog: https://github.com/RightNow-AI/openfang/compare/v0.3.45...v0.3.46
0.3.42 10 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix Gemini tool schema rejection (#483) + temperature fix + OpenRouter free models + Claude Code CLI fix
Gemini schema fix (#483):
Gemini rejects JSON Schema fields like $defs, $ref, additionalProperties, default, title, $id, $comment, examples. The schema normalizer now strips all of these and resolves $ref references by inlining definitions from $defs. This fixes "400 INVALID_ARGUMENT" errors on Gemini agent turns with tools/MCP enabled. 3 new tests.
Temperature fix (v0.3.41):
Reasoning models (gpt-5-mini, o1, o3, o4) reject custom temperature. Driver now omits it for these models with runtime fallback retry. 11 new tests.
OpenRouter free models (v0.3.41):
Added 6 free model variants to the catalog: gemma-2-9b-it:free, llama-3.1-8b-instruct:free, qwen-2.5-7b-instruct:free, mistral-7b-instruct:free, zephyr-7b-beta:free, deepseek-r1:free.
Claude Code CLI fix (v0.3.40):
Replaced env_clear() with targeted env_remove() so Node.js runtime works. Removed --dangerously-skip-permissions. Actionable error messages.
Tool schema fix (#481, v0.3.39):
String/null/non-object input_schema values now parsed or defaulted to valid empty schemas.
All live tested with real Groq LLM calls.
0.3.40 9 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix OpenAI tool parameter type error (#481) + Fix Claude Code CLI driver
Tool schema fix (#481):
OpenAI and other providers require tool parameters to be a JSON object. When MCP servers or skill definitions provided input_schema as a JSON string, null, or other non-object type, it was passed through unchanged causing "Invalid type for tools[N].function.parameters: expected an object, but got a string instead." Now normalize_schema_for_provider() parses string schemas into JSON objects and falls back to a valid empty schema for any non-object type. 5 new tests.
Claude Code CLI driver fix:
The driver used env_clear() which wiped the entire environment, breaking the Node.js-based Claude CLI (missing NVM, SSL certs, proxy vars, etc.). Replaced with targeted env_remove() that only strips 21 known sensitive API keys from other providers while preserving the full runtime environment. Removed --dangerously-skip-permissions flag which required prior interactive acceptance. Error messages now show actionable instructions (e.g. "run claude auth") instead of generic "Check your API key."
0.3.37 9 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fixes
- Tool name mapping (#349): LLM-hallucinated aliases (fs-write, fsRead, writeFile, etc.) normalize to canonical names before both capability check and dispatch
- Provider keys not loading (#465, #458, #355): Fresh drivers created on every request reading current env vars. Dashboard key saves take effect immediately without restart
- Moonshot/kimi (#428): Fixed model catalog IDs (kimi-k2, kimi-k2.5) and provider inference from model name
- Telegram reactions (#435): Fire-and-forget lifecycle emoji (⏳→🤔→⚙️→✅/❌)
- Telegram proxy (#477): Configurable api_url for custom API mirrors/proxies
- Discord ignore_bots (#403): Config option to allow bot-to-bot interactions, self-loop prevention
- Linux init crash (#389): 7-browser fallback cascade, always prints URL for manual open
- Text tool call parsing (#354, #332): Fallback parser for models without native function calling — [TOOL_CALL], <tool_call>, bare JSON patterns with 25 tests
Also closed
- #358, #388, #420, #319, #261 — stale/already-fixed issues
Stats
14 files changed, 1180 insertions, 94 deletions, 1948 tests pass, 0 clippy warnings
0.3.36 9 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fixes
- Empty LLM response after ~4 rounds (#460): Re-validate message pairs after history trim to prevent orphaned ToolUse/ToolResult blocks. Retry on silent 0-token failures.
- MCP tools "Permission denied" (#352): Extension tools (MCP/skills) now bypass ToolInvoke capability filter since they have their own security allowlists.
- Telegram photos silently dropped (#362): Incoming photos, docs, and voice messages are now downloaded, base64 encoded, and passed as ContentBlock::Image for LLM vision processing.
- Workflow visual builder (#357): Manual double-click detection for node editing (SVG re-renders destroy DOM). Editor panel inputs live-update the canvas.
- Claude Code provider card (#376): Detects actual CLI installation and auth status. Shows "Configured" or "Not Installed" dynamically.
- Python 3 detection (#405): Runs actual python3 --version command instead of PATH lookup. Handles Windows Store shims and Python 2.
- Hand state lost on restart (#402): agent_id now persisted in hand_state.json so cron jobs are properly reassigned on reboot.
- CLI auth on all commands (#478): daemon_client() now sends Authorization header globally, not just for stop.
Also closed (already fixed)
- #368 — Dashboard version (already returns CARGO_PKG_VERSION)
- #370 — Logo light theme (CSS filter: invert(1) already in place)
- #397, #351 — Custom providers (fixed in v0.3.35)
Stats
20 files changed, 832 insertions, 111 deletions, 1921 tests pass, 0 clippy warnings
0.3.35 9 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fixes
- SSE streaming: add stream_options for accurate token counts in OpenAI-compatible drivers
- UTF-8 safety (#472): fix 7 byte-slicing panics on multi-byte characters
- Cron timezone (#473): chrono-tz for IANA timezone-aware scheduling
- TOML multiline (#463): triple-quoted strings for system_prompt in manifest generation
- Dashboard auth (#468): 401 interceptor clears stale tokens, all tabs use OpenFangAPI client
- Custom providers (#471, #476, #446): auto-detect {PROVIDER}_API_KEY env vars, clear error on missing base_url
- Cron stale agent (#461): reassign_agent_jobs() on hand reactivation
- Provider probing (#474): concurrent health checks with 60s cache
- Model switch sync (#466, #387): server-resolved provider propagated to dashboard
- OpenRouter models (#385): 10 real models replacing placeholders
- Embedding URL (#395): auto-append /v1, read provider_urls config
- ZHIPU format (#384): non-null content on tool_call messages
- Fish shell (#372): detect target file for correct PATH syntax
Stats
39 files changed, 1194 insertions, 254 deletions, 1915 tests pass, 0 clippy warnings
0.3.34 9 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix streaming responses showing empty text and 0 token counts on dashboard.
- Add stream_options: { include_usage: true } for accurate streaming token counts (Groq, OpenAI, OpenRouter, DeepSeek)
- Auto-fallback for providers that don't support stream_options
- SSE stream diagnostic logging for debugging
0.3.33 8 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
- Fix Bluesky notification poll returning 400 due to invalid seenAt datetime format
- Fix OpenClaw migration failing on nested maps in openclaw.json
- Fix local LLM providers (LM Studio/Ollama) breaking when api_key_env is empty
- Fix Gemini key saved via dashboard not being used (auto-switch default provider)
- Allow localhost dashboard access without api_key configured
0.3.32 8 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix CSP header blocking Alpine.js v3 on the dashboard. The unlock button and all interactive UI elements now work correctly. Completes the fix for #444 where users reported the dashboard was unresponsive after upgrading to v0.3.30+.
0.3.30 8 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Security Hardening
Comprehensive security audit and fixes in response to responsible disclosure:
Shell Injection Defense (CRITICAL)
- contains_shell_metacharacters() now blocks semicolons, pipes, redirects, braces, null bytes, and all ampersand operators
- Docker sandbox delegates to the same comprehensive check
- Metacharacter check runs before exec policy in all modes (Full, Allowlist, Deny)
API Auth Hardening (CRITICAL)
- All public endpoints are now GET-only — POST/PUT/DELETE always require authentication
- Prevents unauthenticated cron job creation, skill installation, integration reload, and agent spawning
OFP Wire Protocol (HIGH)
- send_to_peer() now derives a session key and uses per-message HMAC authenticated I/O
- broadcast_notification() requires shared secret and uses authenticated writes
- Eliminates plaintext agent messages after handshake
Audit Trail Persistence (MEDIUM)
- V8 migration adds audit_entries SQLite table with Merkle chain fields
- Entries persisted immediately on every write, not just in-memory
- Boot-time integrity verification detects tampering
Bug Fixes
- #437 Gemini API key now sent as query parameter (fixes auth failures)
- #437 Enhanced Gemini error parsing with proper AuthenticationFailed/ModelNotFound classification
- #429 CJK IME composition no longer triggers message send on Enter key
- #434 OpenClaw migration handles nested JSON objects in tool config fields
- #403 Discord ignore_bots config option (defaults to true)
- #407 Browser Hand requires chromium instead of obsolete python3/playwright
Stats
- 22 files changed, 874 insertions, 179 deletions
- 1,886 tests passing, 0 clippy warnings
- 26/26 live security endpoint tests passed
0.3.29 8 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
9 Bug Fixes
- #420 Doctor command shows ✔ for connected database (was showing ✘ despite healthy status)
- #385 Remove fake OpenRouter models (optimus/nitro/auto) — replaced with real model IDs like openrouter/anthropic/claude-sonnet-4
- #387 Model change via /model command now correctly updates the provider in the dashboard UI
- #380 Gemini 2.5+ thinking models: parse thoughtSignature field on functionCall parts
- #384 ZHIPU/GLM API: empty tool result content replaced with "(empty)" to avoid format rejection
- #389 Linux: suppress Chromium sandbox EPERM error on xdg-open, always print dashboard URL as fallback
- #388 model_studio recognized as DashScope/Qwen provider alias — custom provider_urls work again
- #408 IMAP email channel: fallback to AUTHENTICATE PLAIN when server rejects LOGIN (fixes Lark/Larksuite)
- #402 Hand activation state persists across daemon restarts — no more manual reactivation after reboot
Stats: 1863 tests passing, 0 clippy warnings, 13 files changed across 9 crates
0.3.28 7 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.27 7 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.26 7 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.25 6 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.24 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.23 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.22 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.20 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.19 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.17 5 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.16 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.15 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.14 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.13 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.12 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.11 4 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.9 3 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.8 3 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.6 3 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
v0.3.6
Fix #265: Telegram messages now sanitize HTML tags before sending. Unsupported tags are escaped so Telegram's API no longer rejects them with 400 errors.
Fix #236: Tool JSON schemas for memory_store.value and event_publish.payload now include explicit "type" fields. Strict schema validators (like llama.cpp) no longer reject these tool definitions.
Fix #226: The web wizard now generates correct TOML with model = "..." (was name = "...") and puts system_prompt under [model] (was [prompt] system = "..."). Generated configs now actually work.
Fix #237: Hand install is now supported via CLI (openfang hand install <path>) and API (POST /api/hands/install). Custom hands can be installed from a HAND.toml file on disk or via JSON payload. The hand registry uses DashMap for concurrent access.
Fix #255: All hardcoded ~/.openfang paths now respect the OPENFANG_HOME environment variable. Set OPENFANG_HOME=/your/path to use a custom config/data directory. Updated across CLI, TUI wizards, dotenv loader, templates, kernel config, and types config — 18 files total.
0.3.5 3 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix #256: Zhipu coding base URL was missing the /coding/ path segment
Fix #258: Config integer values like Discord intents were written as strings instead of integers
Fix #247: Telegram formatter now escapes HTML entities before converting markdown
Fix #259 and #238: All 30 bundled agent templates now inherit the kernel default_model instead of using hardcoded providers
Fix #252 and #260: Kernel boots with a StubDriver when no API keys are configured so the dashboard stays accessible
Fix #262: Autonomous hands now spawn with Continuous schedule mode and start their background loops immediately
0.3.4 3 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.3 2 de març del 2026 — 64 bits ZIPARM64 ZIP
0.3.2 2 de març del 2026 — 64 bits ZIPARM64 ZIP
0.2.7 2 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fixes
- #174 Fix Unicode byte offset panic in HTML→Markdown conversion — replaced to_lowercase() pattern with ASCII case-insensitive find to prevent panics on multi-byte Unicode (İ, ẞ)
- #173 Fix dashboard hands status badge — all 4 status variants (Active/Paused/Error/Inactive) now show correct badge colors with action hints
- #172 Add X-API-Key header support — auth middleware now accepts X-API-Key as fallback alongside Authorization: Bearer
- #171 Fix hand deactivation orphan agent cleanup — orphaned agents (from failed activations) are now found by hand: tag and killed on deactivate
- #155 Improve shell_exec error messages — blocked commands now show the current exec_policy mode and how to fix it; shell_exec removed from tool list when mode=Deny
- #128, #64 Duplicate ClawHub parse errors — already fixed in v0.2.6
0.2.6 2 de març del 2026 — 64 bits ZIPARM64 ZIP
Notes de la versió
Fix #153: Model switch now clears canonical session to prevent memory poisoning across providers
Fix #154: SOUL.md code blocks stripped before system prompt injection to prevent LLM copying raw code
Fix #157: Workspace paths use agent name only instead of name-UUID format
Fix #112 #146: ClawHub TUI parser handles {"items": [...]} API response wrapper
Fix #72: Per-agent tool allowlist and blocklist with GET/PUT /api/agents//tools endpoints
Fix #108: Model prefix normalization strips provider from model ID (openrouter/deepseek/chat becomes provider=openrouter model=deepseek/chat)
Fix #159: DELETE /api/agents//history endpoint clears all conversation history
Fix #150: PUT /api/budget/agents/ endpoint for runtime budget updates
Fix #151: default_model from config.toml now applied to agents on restart
Fix #160: Rate-limited LLM drivers fall through to next fallback instead of failing immediately
Fix #86: CLI agent set subcommand for changing model via command line
WebUI: Model switch button, Clear History button, and Tool Filters panel added to agent detail modal
0.2.3 1 de març del 2026 — 64 bits ZIPARM64 ZIP

El més popular a Assistents d’IA i LLM

Mostra-ho tot
  1. Claude CodeAssistents d’IA i LLM · Anthropic PBC
  2. Codex CLIAssistents d’IA i LLM · OpenAI, Inc.
  3. ChatGPTAssistents d’IA i LLM · lencx
  4. GPT4AllAssistents d’IA i LLM · Nomic
  5. JanAssistents d’IA i LLM · Jan
  6. WSL ManagerAssistents d’IA i LLM · Bostrot
  7. oh-my-piAssistents d’IA i LLM · Can Bölük
  8. T3 CodeAssistents d’IA i LLM · T3 Tools
  9. CC SwitchAssistents d’IA i LLM · farion1231
  10. LobeHubAssistents d’IA i LLM · LobeHub

Etiquetes

Comparteix