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 -250, December 10, 2025

THE AI TOOLCHAIN NO. -250
Tail
THE DAILY RELEASE FIREHOSE
PUBLISHED DECEMBER 10, 2025 · 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   # 15 tools matched
AI & LLM Tooling
◆  AI Agent Frameworks

Agno (formerly Phidata)

Sources Release notes → v2.3.10 NOTES

Agno v2.3.10 adds ShopifyTools for store analytics and URL Context support for Gemini streaming.

└──▷ GET THIS VERSION
$ git clone --branch v2.3.10 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:
$ git checkout v2.3.10
└──▷ USE IT
Analyze Shopify sales and customer data from an agent using the new ShopifyTools toolkit.
python
from agno.tools.shopify import ShopifyTools

agent = Agent(tools=[ShopifyTools()], markdown=True)
agent.print_response('What were my top-selling products last month?')
  • Adds ShopifyTools toolkit to query Shopify store backends for sales analytics, customer insights, and related data.
  • Adds URL Context support for Gemini streaming requests.
Was this useful?

PydanticAI

Sources Release notes → v1.29.0 NOTES

PydanticAI v1.29.0 adds aspect ratio support for Gemini image generation and passes container_id to the Anthropic API.

└──▷ GET THIS VERSION
$ git clone --branch v1.29.0 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:
$ git checkout v1.29.0
  • Passes container_id back to the Anthropic API, enabling container-scoped tool interactions.
  • Adds aspect ratio support for Gemini image generation.
  • Removes the requirement for the anthropic dependency when using an Anthropic model through a third-party provider.
Was this useful?

browser-use

Sources Release notes → 0.11.0 NOTES

browser-use 0.11.0 adds cloud skills integration, Mistral support, and fallback LLM capability

└──▷ GET THIS VERSION
$ git clone --branch 0.11.0 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:
$ git checkout 0.11.0
└──▷ USE IT
Run an agent with specific cloud skills to let it leverage pre-built capabilities without manual tool wiring.
python
from browser_use import Agent, ChatBrowserUse

agent = Agent(
    task='Research the top 5 competitors and summarize their pricing',
    skills=['skill-uuid-1', 'skill-uuid-2'],
    llm=ChatBrowserUse()
)

await agent.run()
Grant the agent access to all available cloud skills when you want maximum capability without specifying individual skill UUIDs.
python
from browser_use import Agent, ChatBrowserUse

agent = Agent(
    task='Book the cheapest flight from NYC to London next month',
    skills=['*'],
    llm=ChatBrowserUse()
)

await agent.run()
  • Adds skills parameter to Agent — accepts a list of skill UUIDs (e.g. ['skill-uuid-1', 'skill-uuid-2']) or ['*'] for all skills, enabling cloud-hosted skill execution.
  • Adds ChatBrowserUse LLM class, importable from browser_use, as the provider for cloud-backed agent runs.
  • Adds Mistral as a supported chat provider via ChatMistral (with schema sanitization and model presets).
  • Adds fallback LLM support, allowing a secondary model to be specified when the primary LLM fails.
  • Adds gemini-3-pro-preview to the list of verified models.
+2 moreshow less
  • Introduces ai_step to replace extract_content on agent rerun, improving mid-run content handling.
  • Faster scroll action, improving page navigation performance.
Was this useful?
◆  AI Coding Agents

Continue

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

Continue 1.36.0 adds session-persistent chat history, usage metadata on assistant messages, and the Google GenAI SDK for Gemini/Vertex streaming.

└──▷ GET THIS VERSION
$ git clone --branch @continuedev/[email protected] https://github.com/continuedev/continue.git
# already have the repo? check out this version:
$ git checkout @continuedev/[email protected]
  • Adds session ID support to the serve command to persist chat history across runs.
  • Captures and attaches usage metadata (token counts) to assistant messages.
  • Switches Gemini and Vertex AI streaming responses to the google/genai SDK.
Was this useful?

Charm Crush

Sources Release notes → v0.22.2 NOTES

Glamourous agentic coding for all

Crush v0.22.2 sorts sessions by recent activity and improves Claude token refresh for long sessions.

└──▷ GET THIS VERSION
$ git clone --branch v0.22.2 https://github.com/charmbracelet/crush.git
# already have the repo? check out this version:
$ git checkout v0.22.2
  • Sorts sessions by most recently used activity instead of creation time in the Ctrl+S session dialog.
Was this useful?

Block Goose

Sources Release notes → v1.16.0 NOTES

an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM

Goose v1.16.0 adds native terminal support, remote access, slash commands, custom headers, and a new /agent/stop API endpoint.

└──▷ GET THIS VERSION
$ git clone --branch v1.16.0 https://github.com/block/goose.git
# already have the repo? check out this version:
$ git checkout v1.16.0
└──▷ TRY IT
Invoke Goose directly from your native terminal without launching the desktop UI.
$ @goose explain the CVEs in this repo's dependencies
Stop a running agent via the new API endpoint in a headless or CI environment.
$ curl -X POST http://localhost:<port>/agent/stop
  • Adds @goose native terminal support, enabling Goose interaction directly from your system terminal.
  • Adds Goose remote access capability for controlling Goose from external clients.
  • Adds slash commands in the chat interface for quick in-session actions.
  • Adds custom headers and toggle keyring CLI options for provider configuration.
  • Adds /agent/stop API endpoint and makes max active agents configurable.
+13 moreshow less
  • Adds support for loading sessions in ACP (Agent Communication Protocol).
  • Enables recipe deeplink parameters for pre-population of recipe inputs.
  • Adds SKILLS.md support for Claude compatibility.
  • Adds math and science symbology rendering via KaTeX.
  • Adds markdown export from URL.
  • Adds Firefox sidebar contextual information support.
  • Adds automatic update installation.
  • Adds MCP-UI proxy for better MCP message handling.
  • Adds scheduler information to diagnostics output.
  • Persists provider name and model config within the session.
  • Adds extension selector behind an ALPHA feature flag.
  • Adds multiple file popup support for simultaneous file interactions.
  • Supports onboarding auto-detection of provider from API key.
Was this useful?

OpenAI Codex CLI

Sources Release notes → rust-v0.69.0 NOTES

Lightweight coding agent that runs in your terminal

Codex CLI gains Skills injection, MCP in-session login, vim TUI navigation, shell snapshotting, and an experimental tui2 frontend.

└──▷ GET THIS VERSION
$ git clone --branch rust-v0.69.0 https://github.com/openai/codex.git
# already have the repo? check out this version:
$ git checkout rust-v0.69.0
  • Adds Skills support: explicitly selecting a skill now injects its SKILL.md content into the turn; skills load once per session and warn on unreadable files.
  • Adds MCP in-session login so users can authenticate to Model Context Protocol servers without leaving the CLI session.
  • Adds vim-style navigation keys (hjkl/arrow equivalents) for both option selection menus and the transcript pager.
  • Adds shell snapshotting in the exec/sandbox layer for safer and more reliable command execution.
  • Introduces an experimental tui2 frontend, available behind a feature flag.
+6 moreshow less
  • Elevates Linux sandbox allowances to permit sendmsg/recvmsg syscalls, unblocking more networked workloads.
  • Adds support for using a remote branch when performing reviews if the local branch trails, enabling review of unsynced work.
  • Rate-limit warnings now display as percentage of quota remaining for clearer visibility.
  • Config writes now preserve comments and key order; model field is optional to match real-world config files.
  • TUI log files now strip ANSI escape codes for cleaner plaintext logs.
  • Adds codex-max prompt and tools support for experimental models.
Was this useful?

SST OpenCode

Sources Release notes → v1.0.142 2 RELEASES · 2025-12-10 NOTES STABLE

The open source coding agent.

OpenCode v1.0.142 adds Windows shell mode support and scriptable agent creation via CLI flags.

└──▷ GET THIS VERSION
$ git clone --branch v1.0.142 https://github.com/sst/opencode.git
# already have the repo? check out this version:
$ git checkout v1.0.142
└──▷ TRY IT
Script agent creation non-interactively in a CI pipeline or setup script.
$ opencode agent create --path ./agents/triage --description "Triage incoming issues" --mode auto --tools read,write
  • Adds Windows support for shell mode (! command), including cmd.exe and PowerShell.
  • Adds CLI arguments (--path, --description, --mode, --tools) to the agent create command for scripting and automation.
1 more release in this issue · 2025-12-10
v1.0.141 NOTES STABLE

OpenCode v1.0.141 adds Biome LSP support, per-project colors/names/icons, and a configurable bash timeout env var.

└──▷ GET THIS VERSION
$ git clone --branch v1.0.141 https://github.com/sst/opencode.git
# already have the repo? check out this version:
$ git checkout v1.0.141
└──▷ TRY IT
Cap long-running bash tool calls to a custom timeout to avoid hung sessions in CI or restricted environments.
$ OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS=10000 opencode
  • Adds Biome LSP support for linting and formatting integration.
  • Enables setting custom colors for projects in the TUI.
  • Adds project names and icons to distinguish projects visually.
  • Adds automatic project icon discovery from favicon/logo files.
  • Adds OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS environment variable to configure bash command timeout.
+2 moreshow less
  • Enables project discovery for experimental builds.
  • Improves interleaved thinking support.
Was this useful?

Earendil Works Pi

Sources Release notes → v0.18.2 2 RELEASES · 2025-12-10 NOTES STABLE

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

Pi v0.18.2 adds auto-retry with exponential backoff for transient provider errors and line numbers in HTML exports.

└──▷ GET THIS VERSION
$ git clone --branch v0.18.2 https://github.com/earendil-works/pi.git
# already have the repo? check out this version:
$ git checkout v0.18.2
└──▷ USE IT
Tune retry behaviour for a slow or rate-limited provider without touching your workflow.
json
# In settings.json
{
  "retry": {
    "enabled": true,
    "maxRetries": 5,
    "baseDelayMs": 2000
  }
}
  • Adds auto-retry on transient provider errors (429, 500, 502–504) using exponential backoff (2s, 4s, 8s), with TUI retry status display and Escape-to-cancel support.
  • Exposes retry configuration via retry.enabled, retry.maxRetries, and retry.baseDelayMs in settings.json.
  • Emits auto_retry_start and auto_retry_end events in RPC mode for programmatic retry visibility.
  • HTML exports now show line number ranges (e.g., file.txt:10-20) for read tool calls when offset/limit parameters are used, with yellow highlighting.
1 more release in this issue · 2025-12-10
v0.18.1 NOTES STABLE

Pi v0.18.1 adds Mistral AI as a supported provider via MISTRAL_API_KEY.

└──▷ GET THIS VERSION
$ git clone --branch v0.18.1 https://github.com/earendil-works/pi.git
# already have the repo? check out this version:
$ git checkout v0.18.1
└──▷ TRY IT
Query a Mistral model by setting your API key before invoking Pi.
$ export MISTRAL_API_KEY=<your-key>
pi <your-prompt>
  • Supports Mistral AI models as a new provider — set the MISTRAL_API_KEY environment variable to enable.
Was this useful?

Zed

Sources Release notes → v0.216.0 NOTES

Zed v0.216.0 adds File History view, word-based diff highlighting, Git branch deletion UI, and direnv disable support.

└──▷ GET THIS VERSION
$ git clone --branch v0.216.0 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.216.0
└──▷ USE IT
Disable word-level diff highlighting inside expanded hunks when you prefer line-granularity only.
json
{
  "word_diff_enabled": false
}
Prevent Zed from loading direnv entirely in environments where direnv interferes with your toolchain.
json
{
  "load_direnv": "disabled"
}
Configure ESLint to resolve imports and rules from separate client/server package roots in a monorepo.
json
{
  "lsp": {
    "eslint": {
      "settings": {
        "workingDirectories": ["./client", "./server"]
      }
    }
  }
}
  • Adds word_diff_enabled language setting (defaults to true) to enable word-level diff highlighting inside expanded diff hunks of fewer than 5 lines.
  • Adds the ability to disable direnv integration entirely via "load_direnv": "disabled" in settings.
  • Adds ESLint working directory configuration via {"lsp":{"eslint":{"settings":{"workingDirectories":["./client","./server"]}}}} in settings.
  • Adds File History view accessible via right-click context menu on files in the editor, project panel, or git panel, showing commit history with author, timestamp, and commit message; clicking a commit opens a file-filtered diff view.
  • Adds UI for deleting Git branches.
+14 moreshow less
  • Adds ctrl-w x keybinding in Vim mode to swap the active window with the next adjacent one.
  • Adds a keybinding (cmd-, on macOS / ctrl-, on Windows/Linux) to open settings.json when the Settings UI is in focus.
  • Adds Show Tab Bar Buttons setting to the Settings UI to control visibility of New, Split Pane, and Zoom buttons in the tab bar.
  • Adds support for deleting entire agent thread history in the agent panel.
  • Adds support for @mentions after typing a slash command in ACP.
  • Git now checks pushRemote and pushDefault configurations before falling back to branch remote.
  • Increases the Git askpass timeout from 17 to 300 seconds.
  • Adds Doxygen grammar support for C/C++ files.
  • Adds Tailwind suggestions and validations for the Gleam programming language.
  • Adds JavaScript highlighting via YAML injections.scm for script blocks of actions/github-script.
  • Improves sorting order of pyright/basedpyright code completions for Python.
  • Adds file icon for the Odin programming language.
  • Improves performance for large multibuffer editors, large project searches, and project diffs.
  • Git blame now runs separately from the git job queue, unblocking staging, unstaging, and committing in repositories with large git histories.
Was this useful?
◆  Local LLM Runtimes

SGLang

Sources Release notes → gateway-v0.2.4 NOTES

SGLang Model Gateway v0.2.4 adds WASM middleware, full OpenTelemetry tracing, multimodal VL model support, and broad performance optimizations.

└──▷ GET THIS VERSION
$ git clone --branch gateway-v0.2.4 https://github.com/sgl-project/sglang.git
# already have the repo? check out this version:
$ git checkout gateway-v0.2.4
  • Adds WASM middleware support, enabling safe, isolated WebAssembly plugins for custom routing logic, request/response transformation, and proprietary system integration without touching core code.
  • Adds OpenTelemetry distributed tracing to the HTTP router with native trace context propagation across the inference stack.
  • Adds OpenTelemetry integration to the gRPC router, extending distributed tracing coverage to both HTTP and gRPC transports.
  • Makes the tokenizer builder aware of environment variables such as HF_ENDPOINT for flexible model loading configuration.
  • Adds a version command to the SGLang Model Gateway CLI, exposed via the Python binding.
+13 moreshow less
  • Adds support for routing Vision-Language (VL) models in the gateway router.
  • Adds image processors for LLaVA, Qwen2-VL, Qwen2.5-VL, Qwen3-VL, Phi3 Vision, Phi4 Vision, Llama4 Vision, and Mistral 3 multimodal models.
  • Adds a workflow for routing to external model providers.
  • Adds ModelCard and ProviderType support to worker metadata for richer model configuration.
  • Adds audio and moderation entries to the model card.
  • Adds HTTP response status code metrics to the router.
  • Implements TokenGuardBody for managing and controlling token return in responses.
  • Optimizes the radix tree used in cache-aware load balancing for lower routing overhead.
  • Optimizes the tokenizer for dramatically reduced CPU and memory footprint.
  • Supports numactl CPU and memory binding before the gateway process starts.
  • Allows the token refill rate to be set to zero.
  • Promotes conversation handling to first-class routing in the OpenAI router.
  • Renames the Rust package and binary from sgl-router to sgl-model-gateway.
└──▷ BREAKING ON UPGRADE
  • !The Rust package and binary have been renamed from sgl-router to sgl-model-gateway; any scripts, container images, or CI pipelines referencing sgl-router by name will break.
Was this useful?

llama.cpp

Sources Release notes → b7348 3 RELEASES · 2025-12-10 NOTES STABLE

llama.cpp b7348 ships a new interactive CLI with --show-timings, --image, --audio, /read, and speculative-decoding args.

└──▷ GET THIS VERSION
$ git clone --branch b7348 https://github.com/ggml-org/llama.cpp.git
# already have the repo? check out this version:
$ git checkout b7348
└──▷ TRY IT
Run an interactive session with a multimodal model, passing an image and displaying per-completion timings — useful for auditing inference latency during model evaluation.
$ llama-cli --model model.gguf --image screenshot.png --show-timings
Feed a large prompt from a file inside an interactive session without pasting it manually — handy for repeatable red-team prompt injection tests.
$ /read prompt.txt
  • Adds --show-timings flag to the new CLI (enabled by default) to display inference timing information after each completion.
  • Adds --image and --audio flags to the new CLI for passing media inputs directly on the command line.
  • Adds /read command in the interactive CLI session to read input from a file.
  • Adds arguments for speculative decoding in the new CLI experience.
  • Introduces a new interactive CLI experience (the old CLI is moved to llama-completion), with a loading animation, colored output (default auto), and reasoning_content support.
+1 moreshow less
  • Linux releases now ship as .tar.gz archives instead of .zip.
└──▷ BREAKING ON UPGRADE
  • !The old llama.cpp CLI binary is replaced by the new CLI; the previous CLI is now available as llama-completion — any scripts invoking the old CLI entry point will need to be updated.
  • !Linux release archives are changing from .zip to .tar.gz format — deployment scripts that unzip Linux builds will break and must be updated.
2 more releases in this issue · 2025-12-10
b7347 NOTES STABLE

llama.cpp b7347 adds support for the Qwen3-Next-80B-A3B model architecture with correct 48-layer configuration.

└──▷ GET THIS VERSION
$ git clone --branch b7347 https://github.com/ggml-org/llama.cpp.git
# already have the repo? check out this version:
$ git checkout b7347
  • Adds support for the Qwen3-Next-80B-A3B model architecture, correctly configured with 48 layers and a new 80B-A3B type name.
└──▷ BREAKING ON UPGRADE
  • !Linux releases will switch from .zip archives to .tar.gz archives — deployment scripts that fetch or unpack Linux builds will need to be updated.
b7342 NOTES STABLE

llama.cpp b7342 adds tokenizer/parser support for Ministral, Mistral Large 3, and Devstral 2 models.

└──▷ GET THIS VERSION
$ git clone --branch b7342 https://github.com/ggml-org/llama.cpp.git
# already have the repo? check out this version:
$ git checkout b7342
  • Adds parser support for Ministral, Mistral Large 3, and Devstral 2 model families, enabling correct tokenization and prompt formatting for these models.
└──▷ BREAKING ON UPGRADE
  • !Linux releases will switch from .zip archives to .tar.gz archives — deployment scripts that fetch or unpack Linux builds will need to be updated.
Was this useful?
Other / Uncategorized
◆  AI OBSERVABILITY

Arize Phoenix

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

Arize Phoenix 12.23.0 makes email optional for LDAP authentication.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v12.23.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v12.23.0
  • Makes email optional when configuring LDAP authentication, allowing LDAP users without a mapped email attribute to authenticate successfully.
Was this useful?

Langfuse

Sources Release notes → v3.139.0 NOTES

Langfuse v3.139.0 adds RTL language support in editors, unresolved prompt fetching for composition analysis, and v2/v1 metrics compatibility.

└──▷ GET THIS VERSION
$ git clone --branch v3.139.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v3.139.0
  • Adds unresolved prompt fetching for prompt composition analysis, enabling inspection of prompts before variable resolution.
  • Supports right-to-left (RTL) languages in editors and prompt editing views.
  • Makes v2 metrics completely compatible with v1, unifying metric behavior across API versions.
  • Adds dismissable documentation nudges in the trace peek view.
Was this useful?
◆  VECTOR DB RAG

Chroma

Sources Release notes → 1.3.6 NOTES

Chroma 1.3.6 adds sparse vector labels, CMEK storage support, getCollectionByCrn in JS, multi-key stats filtering, and a Python statistics wrapper API.

└──▷ GET THIS VERSION
$ git clone --branch 1.3.6 https://github.com/chroma-core/chroma.git
# already have the repo? check out this version:
$ git checkout 1.3.6
└──▷ USE IT
Look up a Chroma Cloud collection by its Cloud Resource Name (CRN) from the JS client.
javascript
const collection = await client.getCollectionByCrn('<crn>');
Detach an attached function directly from a collection object in the Python client.
python
collection.detach()
  • Adds getCollectionByCrn API to the JS client, enabling collection lookup by Cloud Resource Name.
  • Adds key parameter to get_statistics for filtering stats, and extends it to accept multiple filter keys simultaneously.
  • Adds Python wrapper API for the statistics function, with a required output collection argument.
  • Adds get_attached_function HTTP endpoint for retrieving attached function details.
  • Adds detach as a method directly on the Collection object in the Python client.
+15 moreshow less
  • Adds include_tokens option (previously store_tokens) for token storage in Chroma Cloud SPLADE sparse vectors.
  • Adds sparse vector label support in the Python client for sparse vector tokens stored in metadata values.
  • Adds CMEK (Customer-Managed Encryption Key) support across storage, the compactor, log service, and the collection schema.
  • Adds a collection blacklist capability to restrict which collections can run attached functions.
  • Enforces a one-attached-function-per-collection limit, preventing duplicate function attachments.
  • Adds blank_task support for the ChromaCloudQwenEmbeddingFunction.
  • Enables Chroma Cloud embedding functions to retrieve the API key from the client or from the request header automatically.
  • Exposes host and port parameters to the CloudClient constructor.
  • Makes cache types configurable in server deployments.
  • Adds ASAN (AddressSanitizer) support to the OSS build.
  • Adds GCS support via aws-sdk-go-v2, enabling unified SDK access to Google Cloud Storage.
  • Improves schema error handling on the read/write path, returning HTTP 400 for user errors and HTTP 500 for internal errors.
  • Adds prefetch-on-materialize optimization to improve read performance.
  • Deletes SPANN empty posting lists during cleanup to reduce index bloat.
  • Automatically deletes an attached function when its output collection is deleted, and cascades soft-deletes from the input collection.
└──▷ BREAKING ON UPGRADE
  • !The store_tokens parameter is renamed to include_tokens for token storage configuration in attached functions.
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 →