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 -139, April 2, 2026

THE AI TOOLCHAIN NO. -139
Tail
THE DAILY RELEASE FIREHOSE
PUBLISHED APRIL 2, 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   # 12 tools matched
AI & LLM Tooling
◆  AI Agent Frameworks

Agno (formerly Phidata)

Sources Release notes → v2.5.14 NOTES

Agno v2.5.14 adds fallback model chains for Agents and Teams, SAS token auth for Azure Blob, and a Slack workspace search tool.

└──▷ GET THIS VERSION
$ git clone --branch v2.5.14 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:
$ git checkout v2.5.14
└──▷ USE IT
Route traffic to Claude automatically when a primary OpenAI-compatible endpoint is unavailable — useful for self-hosted or rate-limited model endpoints in production.
python
agent = Agent(
    model=OpenAIChat(id="gpt-4o", base_url="http://localhost:1/v1", retries=0),
    fallback_models=[Claude(id="claude-sonnet-4-20250514")],
)
  • Adds fallback_models parameter to Agent and Team constructors, letting you specify an ordered list of backup models (e.g. Claude) that are tried automatically when the primary model fails.
  • Adds SAS token authentication support to AzureBlobConfig for Azure Blob Storage connections.
  • Adds a workspace search tool to SlackTools.
Was this useful?

CrewAI

Sources Release notes → 1.13.0 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.13.0 adds unified runtime state serialization, richer telemetry spans, token usage events, and an A2UI extension.

└──▷ GET THIS VERSION
$ git clone --branch 1.13.0 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 1.13.0
└──▷ USE IT
Capture token usage from every LLM call — useful for cost attribution or rate-limit monitoring in a pipeline.
python
from crewai.events import LLMCallCompletedEvent
from crewai.event_bus import event_bus

@event_bus.on(LLMCallCompletedEvent)
def on_llm_done(event: LLMCallCompletedEvent):
    print(event.token_usage)
  • Adds RuntimeState RootModel for unified state serialization across crew runs.
  • Enhances the event listener with new telemetry spans covering skill and memory events.
  • Adds A2UI extension with v0.8/v0.9 support, schemas, and documentation.
  • Emits token usage data in LLMCallCompletedEvent for per-call cost and usage tracking.
  • Reduces framework overhead via a lazy event bus and skips tracing entirely when disabled.
Was this useful?

OpenClaw

Sources Release notes → v2026.4.2 NOTES

Your own personal AI assistant. Any OS.

OpenClaw v2026.4.2 adds Task Flow orchestration, a before_agent_reply plugin hook, Android assistant entrypoints, and new Feishu/Matrix collaboration features.

└──▷ GET THIS VERSION
$ git clone --branch v2026.4.2 https://github.com/openclaw/openclaw.git
# already have the repo? check out this version:
$ git checkout v2026.4.2
└──▷ TRY IT
Inspect and recover durable Task Flow state after a background orchestration run — useful when a long-running agent flow must be audited or restarted independently of the plugin layer.
$ openclaw flows
Silence the compaction notice in automated or quiet-mode deployments where the status message is noise.
yaml
# In your openclaw config
agents:
  defaults:
    compaction:
      notifyUser: false
Set a stable public proxy origin for diff viewer links so every tool call doesn't need to supply baseUrl manually.
yaml
# In your openclaw config
plugins:
  entries:
    diffs:
      config:
        viewerBaseUrl: "https://diffs.example.com"
  • Adds openclaw flows inspection and recovery primitives for durable Task Flow state and revision tracking, with managed-vs-mirrored sync modes for persistent background orchestration.
  • Adds managed child task spawning with sticky cancel intent, letting external orchestrators stop scheduling immediately and settle parent Task Flows to cancelled once active child tasks finish.
  • Adds api.runtime.taskFlow plugin seam so plugins and trusted authoring layers can create and drive managed Task Flows from host-resolved context without passing owner identifiers on each call.
  • Adds before_agent_reply plugin hook so plugins can short-circuit the LLM with synthetic replies after inline actions.
  • Adds Android assistant-role entrypoints and Google Assistant App Actions metadata so OpenClaw can be launched from the assistant trigger and receive prompts into the chat composer.
+9 moreshow less
  • Adds provider-owned replay hook surfaces for transcript policy, replay cleanup, and reasoning-mode dispatch.
  • Adds plugin-owned viewerBaseUrl config so diff viewer links can use a stable proxy/public origin without passing baseUrl on every tool call.
  • Adds agents.defaults.compaction.model resolution across manual /compact and other context-engine compaction paths, ensuring configured override models apply at all runtime entrypoints.
  • Adds agents.defaults.compaction.notifyUser config to make the compaction start notice opt-in rather than always displayed.
  • Adds a dedicated Feishu Drive comment-event flow with comment-thread context resolution, in-thread replies, and feishu_drive comment actions for document collaboration.
  • Adds spec-compliant m.mentions metadata to Matrix text sends, media captions, edits, poll fallback text, and action-driven edits for reliable mention notifications in clients like Element.
  • Adds reactionLevel guidance for WhatsApp agent reactions.
  • Moves provider-specific session conversation grammar into plugin-owned session-key surfaces, preserving Telegram topic routing and Feishu scoped inheritance across bootstrap, model override, restart, and tool-policy paths.
  • Auto-enables DM-first native chat approvals when supported channels can infer approvers from existing owner config, while keeping channel fanout explicit.
└──▷ BREAKING ON UPGRADE
  • !The xAI x_search settings have moved from tools.web.x_search.* to plugins.entries.xai.config.xSearch.*; auth is now standardized on plugins.entries.xai.config.webSearch.apiKey / XAI_API_KEY. Run openclaw doctor --fix to migrate.
  • !The Firecrawl web_fetch config has moved from tools.web.fetch.firecrawl.* to plugins.entries.firecrawl.config.webFetch.*, and the web_fetch fallback now routes through the new fetch-provider boundary instead of a Firecrawl-only core branch. Run openclaw doctor --fix to migrate.
  • !Gateway/node host exec now defaults to YOLO mode (security=full, ask=off); existing setups that relied on approval prompts from host exec will no longer receive them without explicit reconfiguration.
Was this useful?

PydanticAI

Sources Release notes → v1.76.0 NOTES

PydanticAI v1.76.0 adds agent self-reference in RunContext and automatic image-generation fallback via subagent.

└──▷ GET THIS VERSION
$ git clone --branch v1.76.0 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:
$ git checkout v1.76.0
└──▷ USE IT
Access the running agent from inside a tool via RunContext.agent — useful for dynamic dispatch or introspection without globals.
python
@agent.tool
async def my_tool(ctx: RunContext[MyDeps]) -> str:
    current_agent = ctx.agent  # newly available in v1.76.0
    return f"Running as: {current_agent.name}"
  • Adds agent attribute to RunContext, giving tools and callbacks direct access to the running agent instance.
  • Adds automatic fallback for ImageGeneration: when the main model lacks image-generation capability, PydanticAI transparently delegates to a subagent running a dedicated imagegen model.
  • Updates the Mistral integration to support mistralai SDK v2.
Was this useful?

browser-use

Sources Release notes → 0.12.6 NOTES

browser-use 0.12.6 adds CDP navigation timeout, model pricing URL override, and an install-lite CLI script.

└──▷ GET THIS VERSION
$ git clone --branch 0.12.6 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:
$ git checkout 0.12.6
  • Adds --connect/--cdp-url CDP navigation timeout support to prevent hung sessions when connecting to external browsers.
  • Adds ability to override the model pricing URL via the tokens module (feat(tokens): allow overriding model pricing URL).
  • Adds install-lite.sh script for a lighter-weight CLI installation path.
  • Adds option to disable SignalHandler so host applications retain control of signal handling.
Was this useful?
◆  AI Coding Agents

Anthropic Claude Code

Sources Release notes → v2.1.91 NOTES

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

Claude Code v2.1.91 adds MCP large-result passthrough, plugin executables, and multi-line deep link support.

└──▷ GET THIS VERSION
$ git clone --branch v2.1.91 https://github.com/anthropics/claude-code.git
# already have the repo? check out this version:
$ git checkout v2.1.91
└──▷ USE IT
Pass a large DB schema or other oversized MCP tool result through without truncation by annotating the result metadata.
json
{ "_meta": { "anthropic/maxResultSizeChars": 500000 }, "content": "<full schema here>" }
Open Claude Code from a browser or launcher with a multi-line prompt pre-filled — useful for scripted handoffs or automation.
$ open 'claude-cli://open?q=Summarize%20this%20file%0AHere%20is%20the%20context'
Lock down a shared or CI environment so plugin and slash commands cannot execute inline shell code.
json
# In your Claude Code settings.json
{ "disableSkillShellExecution": true }
  • Adds MCP tool result persistence override via _meta["anthropic/maxResultSizeChars"] annotation (up to 500K), allowing large results like DB schemas to pass through without truncation.
  • New disableSkillShellExecution setting to disable inline shell execution in skills, custom slash commands, and plugin commands.
  • Supports multi-line prompts in claude-cli://open?q= deep links — encoded newlines (%0A) are no longer rejected.
  • Plugins can now ship executables under bin/ and invoke them as bare commands from the Bash tool.
Was this useful?

Charm Crush

Sources Release notes → v0.55.0 NOTES

Glamourous agentic coding for all

Crush v0.55.0 adds a built-in self-configuration skill, skill disabling, and an experimental server-client architecture.

└──▷ GET THIS VERSION
$ git clone --branch v0.55.0 https://github.com/charmbracelet/crush.git
# already have the repo? check out this version:
$ git checkout v0.55.0
└──▷ USE IT
Disable the built-in crush-config skill (or any other skill) for a project that should not allow self-modification.
json
{
  "$schema": "https://charm.land/crush.json",
  "options": {
    "disabled_skills": ["crush-config"]
  }
}
Opt into the experimental server-client architecture to try the new RPC backend.
$ CRUSH_CLIENT_SERVER=1 crush
  • Adds built-in 'Crush config' skill so Crush can configure itself — add providers, MCPs, LSPs, or change settings via natural language without manual JSON editing.
  • Supports disabling any skill (built-in, global, or project) via the new disabled_skills array in crush.json.
  • Introduces experimental RPC server-client architecture, enabled with the CRUSH_CLIENT_SERVER=1 environment variable.
  • Serves generated Swagger API docs from the server when running in server-client mode.
Was this useful?

GitHub Copilot CLI

Sources Release notes → v1.0.16 NOTES

GitHub Copilot CLI v1.0.16 adds a PermissionRequest hook for scripted tool approval and MCP timeline visibility.

└──▷ GET THIS VERSION
$ git clone --branch v1.0.16 https://github.com/github/copilot-cli.git
# already have the repo? check out this version:
$ git checkout v1.0.16
  • Adds PermissionRequest hook to allow scripts to programmatically approve or deny tool permission requests.
  • MCP tool calls now display tool name and parameter summary in the timeline.
  • MCP servers now reconnect correctly with valid authentication when the working directory changes, and load correctly after login, user switch, and /mcp reload.
└──▷ BREAKING ON UPGRADE
  • !The marketplaces repository setting has been removed; use extraKnownMarketplaces instead.
Was this useful?
◆  Local LLM Runtimes

LocalAI

Sources Release notes → v4.1.0 NOTES

LocalAI 4.1 adds distributed clustering, built-in auth/quotas, local-ai agent run, fine-tuning, and min_p inference support.

└──▷ GET THIS VERSION
$ git clone --branch v4.1.0 https://github.com/mudler/LocalAI.git
# already have the repo? check out this version:
$ git checkout v4.1.0
└──▷ TRY IT
Run a standalone agent from the terminal with a single prompt, useful for scripted or CI-driven AI tasks.
$ local-ai agent run --prompt 'Summarize the top CVEs from this week'
Run agents with a pool-based configuration file, enabling multi-agent coordination across a defined node pool.
$ local-ai agent run pool.json
  • New local-ai agent run CLI subcommand runs standalone agents from the terminal, with single-turn --prompt mode and pool-based configurations loaded from pool.json.
  • Adds HF_ENDPOINT environment variable support so the downloader rewrites HuggingFace URIs to a corporate mirror or custom endpoint.
  • Adds min_p sampling parameter support wired through all inference endpoints.
  • Adds distributed cluster mode with smart VRAM-aware routing, node groups for workload isolation, min/max autoscaling, and drain/resume lifecycle management via API call.
  • Adds built-in multi-user platform with OIDC/OAuth SSO, invite-only registration, per-user API keys, admin impersonation, and per-user quota enforcement.
+15 moreshow less
  • Adds per-user usage quota system with predictive analytics and per-user breakdown dashboards.
  • Adds experimental fine-tuning support using Hugging Face TRL — trains LoRA adapters, auto-exports to GGUF, and imports results back into LocalAI, all from the UI.
  • Adds experimental quantization backend for on-the-fly model quantization.
  • Streaming tool calls now work in agent mode, delivering results in real-time.
  • Adds automatic tool parsing fallback: when native tool call parsing fails, an iterative fallback parser engages automatically.
  • Adds automatic inference defaults sourced from Unsloth, applied across all endpoints and gallery models.
  • New React UI model pipeline editor lets users visually wire up model pipelines without editing YAML.
  • New per-model backend log view in the React UI scopes log output to individual models.
  • Media history added to Studio pages, showing past generated images and audio.
  • Adds searchable model/backend selector with inline search and filtering in the React UI.
  • Structured error toasts in the UI now link directly to traces for one-click debugging.
  • Adds cluster status dashboard on the home page showing all node states at a glance.
  • Supports S3 and peer-to-peer model transfer in distributed mode.
  • Adds first-class NVIDIA Jetson/Tegra GPU platform detection.
  • Bumps HuggingFace Transformers to >5.0 with generic model loading support.
Was this useful?

llama.cpp

Sources Release notes → b8639 2 RELEASES · 2026-04-02 NOTES STABLE

llama.cpp b8639 adds vectorized flash attention for the WebGPU backend, with q4/q8 quantization support.

└──▷ GET THIS VERSION
$ git clone --branch b8639 https://github.com/ggml-org/llama.cpp.git
# already have the repo? check out this version:
$ git checkout b8639
  • Adds vectorized flash attention to the WebGPU (ggml-webgpu) backend, enabled when Q->ne[1] < 20, Q->ne[0] % 32 == 0, V->ne[0] % 4 == 0, and K->type == f16; also supports q4 and q8 quantized key/value types.
  • Introduces a fast single-workgroup (nwg=1) path for vectorized flash attention that skips temporary/reduce staging buffers, reducing overhead for small batch sizes.
  • Uses packed f16 K loads in the flash_attn_vec_split.wgsl shader for improved memory throughput on the WebGPU backend.
1 more release in this issue · 2026-04-02
b8634 NOTES STABLE

llama.cpp b8634 adds Granite 4.0 chat template with correct tool_call role mapping for agentic workflows.

└──▷ GET THIS VERSION
$ git clone --branch b8634 https://github.com/ggml-org/llama.cpp.git
# already have the repo? check out this version:
$ git checkout b8634
  • Adds LLM_CHAT_TEMPLATE_GRANITE_4_0 enum, map entry, and handler to support Granite 4.0 chat template, using <tool_call> XML tags and mapping the assistant_tool_call role to <|start_of_role|>assistant<|end_of_role|><|tool_call|> — fixing broken tool calling when --jinja is not used.
  • Auto-detects Granite model generation: presence of <|start_of_role|> plus <tool_call> or <tools> selects the 4.0 template; otherwise falls back to the 3.x template.
└──▷ BREAKING ON UPGRADE
  • !The existing LLM_CHAT_TEMPLATE_GRANITE enum value is renamed to LLM_CHAT_TEMPLATE_GRANITE_3_X; any code referencing LLM_CHAT_TEMPLATE_GRANITE by name must be updated.
Was this useful?
◆  AI Model & Data Infrastructure

Ollama

Sources Release notes → v0.20.0 NOTES

Get up and running with Kimi-K2.6, GLM-5.2, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.

Ollama v0.20.0 adds Google Gemma 4 model family support across four sizes including MoE and dense variants.

└──▷ GET THIS VERSION
$ git clone --branch v0.20.0 https://github.com/ollama/ollama.git
# already have the repo? check out this version:
$ git checkout v0.20.0
└──▷ TRY IT
Run the lightweight Gemma 4 E2B model for fast, resource-efficient local inference.
$ ollama run gemma4:e2b
Run the Gemma 4 26B Mixture-of-Experts model for stronger reasoning while keeping active parameters low.
$ ollama run gemma4:26b
  • Supports Google Gemma 4 models in four sizes: E2B, E4B, 26B (Mixture of Experts with 4B active parameters), and 31B (Dense).
  • Adds SentencePiece-style BPE tokenizer support.
Was this useful?
Other / Uncategorized
◆  AI OBSERVABILITY

Arize Phoenix

Sources Release notes → arize-phoenix-v13.23.0 NOTES

Arize Phoenix v13.23.0 bundles TypeScript SDK docs directly into npm packages.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v13.23.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v13.23.0
  • Bundles TypeScript SDK documentation into npm packages for offline/local access.
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 →