Heads up This site is currently under heavy development.
Subscribe Get it delivered — the daily firehose, filtered to the tools you run, plus the documentation changes vendors never announce. Compare plans →

The AI Toolchain — issue -111, April 30, 2026

THE AI TOOLCHAIN NO. -111
Tail
THE DAILY RELEASE FIREHOSE
PUBLISHED APRIL 30, 2026 · EVERY WEEKDAY
EDITIONS tail grep head diff uniq

The daily firehose — everything the toolchain shipped today, already filtered.

// HOW THIS ISSUE IS MADE

We read every release from the 174 tools on our watchlist at the source — GitHub and GitLab release notes, vendor release pages and changelogs, project blogs and feeds, vendor press releases, and the source code behind the tag. Bug-fix-only releases and non-product newsroom noise are dropped; what's left is summarized down to the new capability, how to try it, and any screenshots or videos the release itself published. Every entry links to the sources it was built from.

VIEW
ISSUE VIEW full issue
Do you prefer this view?
$ tct list   # 9 tools matched
AI & LLM Tooling
◆  AI Agent Frameworks

CrewAI

Sources Release notes → 1.14.4 NOTES

Framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.

CrewAI 1.14.4 adds custom persist keys, Azure OpenAI Responses API, Vertex AI workload identity, Tavily Research, and You.com MCP tools.

└──▷ GET THIS VERSION
$ git clone --branch 1.14.4 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 1.14.4
  • Supports custom persistence keys in the @persist decorator for fine-grained checkpoint control.
  • Adds Responses API support for the Azure OpenAI provider.
  • Forwards credential_scopes to the Azure AI Inference client for scoped authentication.
  • Adds Vertex AI workload identity setup for credential-free GCP deployments.
  • Adds Tavily Research and Get Research tools for AI-powered web research workflows.
+1 moreshow less
  • Adds You.com MCP tools covering search, research, and content extraction.
Was this useful?

Nous Research Hermes

Sources Release notes → v2026.4.30 NOTES

The agent that grows with you

Hermes v2026.4.30 adds autonomous skill curation, 5 new inference providers, 2 new messaging platforms, Spotify/Google Meet integrations, one-shot mode, and ~57% faster TUI cold start.

└──▷ GET THIS VERSION
$ git clone --branch v2026.4.30 https://github.com/NousResearch/hermes-agent.git
# already have the repo? check out this version:
$ git checkout v2026.4.30
└──▷ TRY IT
Run a quick, non-interactive prompt against a specific model without entering the TUI — useful in CI pipelines or shell scripts.
$ hermes -z "Summarize the top 3 CVEs from today's NVD feed" --provider openrouter --model nous-hermes-3
Check whether an update is available and back up your HERMES_HOME before applying it.
$ hermes update --check
Inspect which skills the Curator considers most- and least-used before manually pruning or after a curation cycle.
$ hermes curator status
  • Adds hermes curator autonomous background agent that grades, prunes, and consolidates your skill library on a 7-day cron cycle, writing per-run reports to logs/curator/run.json and REPORT.md.
  • Adds hermes curator status to rank skills by usage, showing most-used and least-used entries.
  • Upgrades the self-improvement review fork to class-first (rubric-based) grading with active-update bias, proper provider/model/credential inheritance, and clean memory-provider shutdown.
  • Promotes ComfyUI v5 (official CLI + REST + hardware-gated local install) from optional to built-in by default.
  • Promotes TouchDesigner-MCP from optional to built-in by default, expanded with GLSL, post-FX, audio, geometry, and 9 new reference docs.
+20 moreshow less
  • Adds new Humanizer skill that strips AI-isms from text output.
  • Adds /reload-skills slash command and direct-URL skill install support.
  • Upgrades LM Studio from a custom-endpoint alias to a full native inference provider with dedicated auth, hermes doctor checks, reasoning transport, and live /models listing.
  • Adds four new inference providers: GMI Cloud, Azure AI Foundry (with auto-detection), MiniMax (OAuth with PKCE browser flow), and Tencent Tokenhub.
  • Makes the gateway a plugin host with drop-in messaging adapters; ships Microsoft Teams as the first plugin-delivered platform.
  • Adds Tencent 元宝 (Yuanbao) as the 18th native gateway messaging platform with text and media delivery.
  • Adds native Spotify integration: 7 tools (play, search, queue, playlists, devices) behind PKCE OAuth, interactive setup wizard, bundled skill, and cron usage.
  • Adds Google Meet plugin for joining calls, transcribing, speaking, and following up via realtime OpenAI transport and a bundled Node bot server.
  • Adds hermes -z <prompt> non-interactive one-shot mode with --model, --provider, and HERMES_INFERENCE_MODEL support.
  • Adds hermes update --check preflight check and opt-in pre-update HERMES_HOME backup.
  • Adds a Models dashboard tab with per-model analytics and in-browser switching of main and auxiliary models.
  • Adds remote model catalog manifest so new OpenRouter and Nous Portal models appear without a release.
  • Adds native multimodal image routing based on each model's actual vision capability rather than provider defaults.
  • Adds native multi-image sending across Telegram, Discord, Slack, Mattermost, Email, and Signal; adds centralized audio routing with FLAC support and Telegram document fallback.
  • Adds LaTeX rendering, /reload .env hot-reload, pluggable busy-indicator styles, opt-in auto-resume of last session, session delete from /resume picker with d, modified mouse-wheel line scroll, and a /mouse toggle to suppress ConPTY phantom mouse injection in the TUI.
  • Bundles Langfuse observability plugin and hermes-achievements plugin that scans full session history.
  • Adds a pluggable tts.providers.<name> registry and ships Piper as a native local TTS provider.
  • Adds Vercel Sandbox as an execute_code/terminal backend.
  • Adds configurable prompt_caching.cache_ttl (5-minute default, 1-hour opt-in) for cost savings on bursty sessions.
  • Cuts visible TUI cold start by ~57% via lazy agent init, lazy imports, mtime-cached load_config(), memoized get_tool_definitions() with TTL-cached check_fn results, and precompiled dangerous-command patterns.
└──▷ BREAKING ON UPGRADE
  • !Secret redaction is now off by default; working setups that relied on automatic secret redaction must explicitly opt in via redaction.enabled: true.
Was this useful?

LangChain LangGraph

Sources Release notes → 1.2.0a2 3 RELEASES · 2026-04-30 NOTES STABLE

Build resilient agents.

LangGraph 1.2.0a2 adds node-level error handlers for fine-grained fault control in graphs.

└──▷ GET THIS VERSION
$ git clone --branch 1.2.0a2 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 1.2.0a2
  • Adds node-level error handlers, enabling per-node fault handling logic directly in graph definitions.
2 more releases in this issue · 2026-04-30
checkpointpostgres==3.1.0a1 NOTES STABLE

checkpoint-postgres 3.1.0a1 adds DeltaChannel sentinel storage in blobs with checkpoint_writes reconstruction.

└──▷ GET THIS VERSION
$ git clone --branch checkpointpostgres==3.1.0a1 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout checkpointpostgres==3.1.0a1
  • Adds DeltaChannel support: stores sentinel values in blobs and reconstructs state from checkpoint_writes, enabling more efficient incremental checkpointing.
prebuilt==1.0.13 NOTES STABLE

LangGraph prebuilt 1.0.13 adds alpha timer support and streaming transformer infrastructure.

└──▷ GET THIS VERSION
$ git clone --branch prebuilt==1.0.13 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout prebuilt==1.0.13
  • Introduces alpha timer support for scheduling and time-based graph behaviors.
  • Adds streaming transformer infrastructure enabling new streaming pipeline patterns in graphs.
Was this useful?

OpenClaw

Sources Release notes → v2026.4.29 NOTES

Your own personal AI assistant. Any OS.

OpenClaw v2026.4.29 adds NVIDIA provider, people-aware memory wiki, opt-in follow-up commitments, OpenGrep scanning, and SQLite plugin state store.

└──▷ GET THIS VERSION
$ git clone --branch v2026.4.29 https://github.com/openclaw/openclaw.git
# already have the repo? check out this version:
$ git checkout v2026.4.29
└──▷ USE IT
Enable opt-in follow-up commitments with a daily cap so the agent proactively follows up on action items via heartbeat.
yaml
commitments.enabled: true
commitments.maxPerDay: 5
Restrict Active Memory recall to specific direct-message conversations, keeping broad group sessions skipped.
yaml
memory:
  active:
    allowedChatIds:
      - "dm:alice"
      - "dm:bob"
  • Adds NVIDIA provider with API-key onboarding, static catalog metadata, and literal model-ref picker so NVIDIA hosted models can be selected with their provider prefix intact.
  • Adds agent-facing people wiki with canonical aliases, person cards, relationship graphs, privacy/provenance reports, evidence-kind drilldown, and search modes for person lookup, question routing, source evidence, and raw claims.
  • Adds opt-in inferred follow-up commitments with hidden batched extraction, per-agent/per-channel scoping, heartbeat delivery, CLI management, and commitments.enabled/commitments.maxPerDay config.
  • Introduces steer as the default active-run queue mode, draining all pending steering messages at the next model boundary, with a 500ms followup fallback debounce; legacy one-at-a-time steering remains available as queue.
  • Adds global messages.visibleReplies so operators can require visible output to go through message(action=send) for any source chat, with messages.groupChat.visibleReplies as the group/channel override.
+11 moreshow less
  • Surfaces spawnedBy on subagent chat and agent broadcast payloads so clients can route child session events without an extra session lookup.
  • Adds optional per-conversation allowedChatIds and deniedChatIds filters to Active Memory so recall can be scoped to selected conversations.
  • Returns bounded partial recall summaries when the hidden memory sub-agent times out, including the default temporary-transcript path, so recovered context is not discarded.
  • Adds read-only doctor.memory.remHarness RPC so operator clients can preview bounded REM dreaming output without running mutation paths.
  • Adds SQLite-backed plugin state store (api.runtime.state.openKeyedStore) for restart-safe keyed registries with TTL, eviction, and automatic plugin isolation.
  • Adds OPENCLAW_SKIP_ONBOARDING environment variable so automated Docker installs can skip interactive onboarding while still applying gateway defaults.
  • Adds OpenGrep rulepack, source-rule compiler, provenance metadata check, and PR/full scan workflows that upload SARIF to GitHub Code Scanning.
  • Adds opt-in startup diagnostics timeline that records gateway lifecycle and plugin-load phases behind a config flag for slow-start diagnosis.
  • Extends Control UI locale registry with Persian (fa), Dutch (nl), Vietnamese (vi), Italian (it), Arabic (ar), and Thai (th) entries.
  • Adds Tencent Yuanbao channel to the channel listing and sidebar navigation.
  • Runs pnpm gateway:watch through a named tmux session by default, with gateway:watch:raw and OPENCLAW_GATEWAY_WATCH_TMUX=0 for foreground mode.
└──▷ BREAKING ON UPGRADE
  • !Configured tool sections (tools.exec, tools.fs) no longer implicitly widen restrictive profiles (messaging, minimal); users who need those tools under a restricted profile must add explicit alsoAllow entries — a startup warning identifies affected configs.
Was this useful?
◆  AI Coding Agents

OpenAI Codex CLI

Sources Release notes → rust-v0.128.0 NOTES

Lightweight coding agent that runs in your terminal

Codex CLI gains persisted /goal workflows, codex update, configurable keymaps, plugin marketplace, and richer MultiAgentV2 controls.

└──▷ GET THIS VERSION
$ git clone --branch rust-v0.128.0 https://github.com/openai/codex.git
# already have the repo? check out this version:
$ git checkout rust-v0.128.0
└──▷ TRY IT
Keep the CLI up to date without manually downloading a new binary.
$ codex update
Check or update the active status line without interrupting an in-progress agent turn.
$ codex /statusline "Running recon phase…"
  • Adds persisted /goal workflows with app-server APIs, model tools, runtime continuation, and TUI controls for create, pause, resume, and clear.
  • Adds codex update command for in-place CLI self-update.
  • Adds configurable TUI keymaps, plan-mode nudges, and action-required terminal titles.
  • Enables /statusline and /title slash commands during active turns.
  • Expands permission profiles with built-in defaults, sandbox CLI profile selection, cwd controls, and active-profile metadata for clients.
+3 moreshow less
  • Adds plugin marketplace installation, remote bundle caching, remote uninstall, plugin-bundled hooks, hook enablement state, and external-agent config import.
  • Adds external agent session import, including background imports and imported-session title handling.
  • Makes MultiAgentV2 configuration more explicit with thread caps, wait-time controls, root/subagent context hints, and v2-specific depth handling.
└──▷ BREAKING ON UPGRADE
  • !--full-auto is deprecated; users must migrate to explicit permission profiles and trust flows.
  • !GNU Linux binaries are no longer published as release artifacts.
Was this useful?

Earendil Works Pi

Sources Release notes → v0.71.0 NOTES

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

Pi v0.71.0 adds Cloudflare AI Gateway and Moonshot AI providers, Mistral Medium 3.5, and new extension APIs.

└──▷ GET THIS VERSION
$ git clone --branch v0.71.0 https://github.com/earendil-works/pi.git
# already have the repo? check out this version:
$ git checkout v0.71.0
└──▷ TRY IT
Pin session storage to a specific directory without passing a flag every invocation, useful in CI or containerised workflows.
$ PI_CODING_AGENT_SESSION_DIR=/var/pi/sessions pi
  • Adds Cloudflare AI Gateway as a built-in provider, configured via CLOUDFLARE_API_KEY, CLOUDFLARE_ACCOUNT_ID, and CLOUDFLARE_GATEWAY_ID.
  • Adds Moonshot AI as a built-in provider, configured via MOONSHOT_API_KEY.
  • Adds built-in support for the Mistral Medium 3.5 model.
  • Adds PI_CODING_AGENT_SESSION_DIR environment variable as an equivalent to --session-dir for configuring session storage.
  • Extension APIs can now replace finalized message_end messages, enabling overrides of assistant usage cost reporting.
+4 moreshow less
  • Adds ctx.ui.getEditorComponent() so extensions can wrap the currently configured custom editor factory.
  • Adds a thinking_level_select extension event for observing thinking level changes.
  • Adds top-level name support to pi.registerProvider() so extension-registered providers display a friendly name in /login.
  • Exposes routed OpenAI-compatible response model metadata in assistant messages so providers like OpenRouter can surface the concrete model used.
└──▷ BREAKING ON UPGRADE
  • !Built-in Google Gemini CLI and Google Antigravity providers have been removed; existing configurations using those providers must switch to another supported provider.
Was this useful?
◆  Local LLM Runtimes

vMLX

Sources Release notes → v1.4.1-swift 2 RELEASES · 2026-04-30 NOTES STABLE

vMLX - JANGTQ Uber Compressed MLX Models - L2 Disk Cache (survives restart) + L1 Paged (super fast ttft) + Hybrid SSM Scheduler + Cont Batching + etc!

vMLX v1.4.1-swift adds MCP HTTP/SSE transport and NemotronHOmni VLM support alongside UI and cache improvements.

└──▷ GET THIS VERSION
$ git clone --branch v1.4.1-swift https://github.com/jjang-ai/vmlx.git
# already have the repo? check out this version:
$ git checkout v1.4.1-swift
  • Adds MCP HTTP/SSE transport (real implementation) via mlxstudio#31, enabling Model Context Protocol over HTTP and Server-Sent Events.
  • Adds NemotronHOmni VLM factory wiring and capability detector, bringing support for the NemotronHOmni vision-language model.
  • Adds 'Delete model files…' context menu item in the chat picker for in-app model file management.
1 more release in this issue · 2026-04-30
v1.4.1 NOTES STABLE

vMLX v1.4.1 adds model deletion API, image-gen cancellation, MCP HTTP+SSE transport, and vmlx[mxtq] install extras.

└──▷ GET THIS VERSION
$ git clone --branch v1.4.1 https://github.com/jjang-ai/vmlx.git
# already have the repo? check out this version:
$ git checkout v1.4.1
└──▷ TRY IT
Install vMLX with MXTQ/JANG/DSV4/Nemotron-Omni bundle support in one step.
$ pip install -U "vmlx[mxtq]==1.4.1"
Abort a running image generation job server-side — useful when the client disconnects or the user clicks Stop.
$ curl -X POST http://localhost:8080/v1/images/cancel
  • Adds POST /api/delete endpoint for model deletion with model-directory bounding (refuses paths outside the model root and path-traversal attempts).
  • Adds POST /v1/images/cancel endpoint and ImageGenEngine.cancel() method, plus a disconnect-watchdog so browser close or the Stop button truly aborts image generation instead of OOM-after-cancel.
  • Adds [mxtq] and [jang] install extras (pip install vmlx[mxtq]) for JANG/MXTQ/DSV4/MiniMax-JANG/Nemotron-Omni bundles.
  • Accepts Anthropic-style reasoning: {effort: ...} and reasoning: {type:'enabled', budget_tokens:N} request bodies, normalizing them into reasoning_effort / enable_thinking internally.
  • Replaces the stdio-only MCP guard with a full HTTP+SSE transport implementation on the Swift side: streaming via URLSession.bytes(for:), legacy endpoint-event handling, and Streamable-HTTP inline-JSON-RPC fallback.
+2 moreshow less
  • Adds 'Delete model files…' context menu in the Swift app chat picker, backed by the new POST /api/delete endpoint.
  • Registers NemotronH-Omni in VLMModelFactory and the processor registry; auto-promotes nemotron_hnemotron_h_omni when config_omni.json is present alongside config.json.
└──▷ BREAKING ON UPGRADE
  • !macOS 14.4.x is no longer supported — the bundled MLX wheel requires libc++ symbols added in macOS 14.5 (Sonoma/Sequoia/Tahoe); running on 14.4.x will exit with an actionable error.
Was this useful?
Other / Uncategorized
◆  AI OBSERVABILITY

Arize Phoenix

Sources Release notes → arize-phoenix-v15.1.0 NOTES

Phoenix 15.1.0 adds named CLI auth profiles, session annotations, REST annotation filtering by identifier, and TypeScript trace annotations.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v15.1.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v15.1.0
  • Adds named auth profile management to the phoenix CLI, enabling teams to store and switch between multiple authentication configurations.
  • Adds session annotations and notes via the phoenix CLI for tagging and commenting on trace sessions from the command line.
  • Enables querying annotations by identifier on REST GET endpoints, allowing more targeted annotation retrieval via the API.
  • Adds TypeScript trace annotations to the phoenix-client library with clarified note semantics.
Was this useful?
◆  MCP TOOLING

Composio

Sources Release notes → @composio/[email protected] NOTES

Composio core 0.8.1 adds allowMultiple guard to connectedAccounts.link() and a workbench.sandboxSize compute-tier selector for Tool Router sessions.

└──▷ GET THIS VERSION
$ git clone --branch @composio/[email protected] https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout @composio/[email protected]
└──▷ USE IT
Initiate a linked connection while allowing multiple active connections for the same auth config — useful when a user legitimately needs more than one account connected.
javascript
await composio.connectedAccounts.link(userId, authConfigId, { allowMultiple: true });
Provision a Tool Router session with an xlarge sandbox when your workbench tasks need more compute headroom.
javascript
await composio.toolRouter.createSession({
  workbench: {
    sandboxSize: 'xlarge'
  }
});
  • Adds allowMultiple option to connectedAccounts.link(userId, authConfigId, { allowMultiple }): when false (default) and the user already has an ACTIVE connection on the auth config, throws ComposioMultipleConnectedAccountsError — matching the existing initiate() guard. Pass allowMultiple: true to intentionally create multiple connections per auth config.
  • Adds workbench.sandboxSize field (type 'standard' | 'medium' | 'large' | 'xlarge') to ToolRouterCreateSessionConfig, letting callers select the workbench sandbox compute tier. Tiers: standard (1 vCPU / 1 GB), medium (2 vCPU / 2 GB), large (4 vCPU / 4 GB), xlarge (8 vCPU / 8 GB). Forwarded to the API as snake_case workbench.sandbox_size; defaults to 'standard' when omitted.
  • Exports SandboxSize literal union and SandboxSizeSchema zod enum from @composio/core so callers can reference tier values without stringly-typing them.
  • Python SDK gains parity: allow_multiple: bool = False option and the same ACTIVE-connection guard added to composio.connected_accounts.link().
└──▷ BREAKING ON UPGRADE
  • !connectedAccounts.link() now performs a pre-flight connectedAccounts.list({ userIds, authConfigIds, statuses: ['ACTIVE'] }) before calling client.link.create. Callers that intentionally create multiple connections per auth config must now pass allowMultiple: true or the call will throw ComposioMultipleConnectedAccountsError.
Was this useful?
my-toolchain — 0 tools
paste an install list to detect your tools

A brew list, a Brewfile, requirements.txt, a Dockerfile — or just the product names, free-form. Nothing leaves your browser.

    browse all tools →