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.
Agno v1.5.6 adds Team Evals, async Workflow support via arun, and an Anthropic MCP connector tool.
└──▷ GET THIS VERSION
$ git clone --branch v1.5.6 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:$ git checkout v1.5.6
└──▷ USE IT
Cap the total number of tool calls an agent may make across a full run to prevent runaway loops.
python
from agno.agent import Agent
from my_tools import search_tool
agent = Agent(
tools=[search_tool],
tool_call_limit=10,
)
agent.run('Research the latest CVEs in OpenSSL')
›Adds arun method to Workflows, enabling async Python usage of the Workflow class.
›Revamps tool_call_limit to enforce the limit across an entire agent run, not per-call.
›Adds evaluation (Evals) support for Teams, extending the existing eval framework to multi-agent team configurations.
›Adds team_session_state management on the Team class, propagating shared state to all members and sub-teams.
›Improves performance of user memory updates and session summary generation by parallelising writes.
└──▷ BREAKING ON UPGRADE
!Managing team_session_state now requires setting it on the Team object directly instead of via session_state; existing code using session_state for this purpose will no longer propagate team session state correctly.
10 more releases in this issue
· 2025-05-04 → 2025-05-29
Set a TTL on Redis-backed agent storage so stale session data expires automatically.
python
storage = RedisStorage(
...
expire=3600,
)
›Adds search_previous_sessions_history to enable a get_previous_session_messages(number_of_sessions: int) tool that lets agents retrieve and analyse messages from the last N sessions.
›Adds expire key to Redis storage configuration to set TTL on Redis keys.
›Adds cache_creation_input_tokens to agent session metrics for tracking Anthropic prompt-cache write statistics.
›Supports direct file upload to Anthropic for use as agent input (Claude File Upload).
›Enables Python code execution in a secure, sandboxed environment via the Claude 4 Code Execution Tool.
+6 moreshow less
›Adds prompt caching for Anthropic models, allowing resumption from specific prompt prefixes to reduce processing time and cost on repetitive tasks.
›Adds support for Vercel v0 models.
›Adds Qdrant hybrid search support.
›Adds native MarkdownKnowledgeBase support for Markdown-based knowledge bases.
›Integrates the AI/ML API platform, providing access to 300+ models including DeepSeek, Gemini, and ChatGPT at enterprise-grade rate limits.
›Adds support for Pydantic and dataclass objects as direct inputs to agent tool functions.
Give every tool in a toolkit a consistent stop-after-call and show-result behaviour without decorating each function individually.
python
from agno.tools import Toolkit
class MyTools(Toolkit):
def __init__(self):
super().__init__(
stop_after_tool_call_tools=["run_query"],
show_result_tools=["run_query", "fetch_report"],
)
›Adds FastAPIApp class — a convenience wrapper that spins up a FastAPI server exposing an agent or team with minimal boilerplate.
›Adds WhatsappAPIApp class — implements the WhatsApp protocol so an Agno agent can run on WhatsApp, with image/audio/video input, image response generation, and reasoning support.
›Adds stop_after_tool_call_tools and show_result_tools properties to the base Toolkit class, mirroring the per-tool behavior previously only available via the @tool decorator.
›Enables cosmos_compatibility=True on the MongoDB vector DB class to add Azure Cosmos DB for MongoDB (vCore) as a supported vector store backend.
›Adds Couchbase as a supported vector DB for knowledge bases.
+4 moreshow less
›Adds async support for pdf and text S3 readers.
›Adds a Google BigQuery toolkit for querying BigQuery from agents.
›Extends knowledge-base filters (manual and agentic) to work with Teams, not just individual agents.
›72% speed improvement to WebsiteReader._extract_main_content, unlocking faster large-scale web knowledge ingestion.
$ git clone --branch v.1.5.0 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:$ git checkout v.1.5.0
›Adds hybrid_search support to the Milvus vector DB integration.
›Adds streamable-HTTP transport support for MCP servers via MCPTools.
›Adds an OpenInference auto-instrumentor for Agno agents, enabling tracing to any OpenTelemetry-compatible provider (Arize, Langfuse, Langsmith).
›Adds Azure OpenAI image generation via DALL-E through Azure AI Foundry.
›Adds ability to run accuracy evaluations with pre-generated answers; agent, prompt, and expected_answer are now accepted fields on the accuracy eval class.
└──▷ BREAKING ON UPGRADE
!The performance evaluation class PerfEval is renamed to PerformanceEval; any code referencing PerfEval will break.
!The accuracy evaluation class now requires three fields — agent, prompt, and expected_answer — that were not previously required; existing instantiations omitting these fields will break.
!Duplicate information has been removed from streaming events when stream=True during concurrent agent runs; consumers that relied on that duplicated data in individual events will need to update their handling.
$ git clone --branch v1.4.7 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:$ git checkout v1.4.7
└──▷ USE IT
Enable hybrid search on a Milvus vector DB to combine dense and sparse retrieval for higher-recall knowledge base queries.
python
from agno.vectordb.milvus import Milvus
vdb = Milvus(
collection="my_collection",
hybrid_search=True,
)
›Adds hybrid_search support to the Milvus vector DB integration.
›Adds streamable-HTTP transport support for MCP servers via MCPTools.
›Adds an auto-instrumentor for Agno agents contributed to the OpenInference project, enabling tracing with any OpenTelemetry-compatible provider (Arize, Langfuse, Langsmith).
›Adds Azure OpenAI image generation tool backed by DALL-E via Azure AI Foundry.
›Extends accuracy evaluations to run against pre-generated answers across all evals classes.
└──▷ BREAKING ON UPGRADE
!The PerfEval class is renamed to PerformanceEval; any code importing or instantiating PerfEval will break.
!The accuracy evaluation class now requires three new mandatory fields: agent, prompt, and expected_answer; existing instantiations that omit these will raise errors.
!Duplicate information has been removed from streaming events when stream=True during concurrent agent runs; code that parsed or depended on the previous event shape will need to be updated.
›Adds knowledge_filters parameter to Agent(...) initialization and to agent.run(...) calls for explicit metadata-based document filtering in knowledge bases.
›Adds enable_agentic_knowledge_filters=True on Agent to let the agent automatically detect and apply knowledge filters extracted from user queries.
›Adds metadata parameter to PDFKnowledgeBase path entries and to knowledge_base.load_document(path=..., metadata=...) for attaching filterable metadata at ingest time.
›Adds current_user_id and current_session_id as default variables in session_data for tools, making user and session context available inside tool execution.
›Adds Cerebras as a model provider (both OpenAILike and SDK integrations).
+2 moreshow less
›Adds support for Claude's web search tool.
›Knowledge Base metadata filtering (beta) supports PDF, Text, DOCX, JSON, and PDF_URL knowledge base types, and Qdrant, LanceDB, and MongoDB vector databases.
Agno v1.4.4 adds async retrievers, OpenAI File uploads, Gemini video URLs, and expanded Llama model capabilities.
└──▷ GET THIS VERSION
$ git clone --branch v1.4.4 https://github.com/agno-agi/agno.git
# already have the repo? check out this version:$ git checkout v1.4.4
└──▷ USE IT
Use an async retriever to integrate non-blocking document lookup into an agent pipeline.
python
async def my_retriever(query: str, **kwargs):
results = await async_search(query)
return results
agent = Agent(retriever=my_retriever, ...)
await agent.arun('What does the policy say about data retention?')
Attach a PDF file directly to an OpenAIChat agent prompt for in-context document analysis.
python
from agno.models.openai import OpenAIChat
from agno.agent import Agent
from agno.media import File
agent = Agent(model=OpenAIChat(id='gpt-4o'))
agent.run('Summarize this report.', files=[File(filepath='report.pdf')])
Pass a video URL to a Gemini agent for multimodal video analysis.
python
from agno.models.google import Gemini
from agno.agent import Agent
from agno.media import Video
agent = Agent(model=Gemini(id='gemini-2.0-flash'))
agent.run('Describe what happens in this video.', videos=[Video(url='https://example.com/incident.mp4')])
›The retriever parameter now accepts an async function, enabling async custom retrieval with agent.arun and agent.aprint_response.
›Adds support for attaching File objects to prompts for agents using OpenAIChat models, including PDF and document uploads.
›Adds Video(url=...) input support for Gemini models.
›Expands Llama and LlamaOpenAI model classes with structured output and image input support.
AutoGPT Platform adds Claude 4 Sonnet and Opus models, a 'Run 10 agents' wallet task, and WebSocket status notifications.
└──▷ GET THIS VERSION
$ git clone --branch autogpt-platform-beta-v0.6.11 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:$ git checkout autogpt-platform-beta-v0.6.11
›Adds Claude 4 Sonnet and Opus models as available LLM options on the platform.
›Adds toast notifications to surface WebSocket connection status changes in the UI.
›Adds page-specific browser titles for improved navigation context.
›Improves graph creation and update performance.
2 more releases in this issue
· 2025-05-09 → 2025-05-28
AutoGPT Platform beta v0.6.10 adds Google Calendar integration and Llama API support.
└──▷ GET THIS VERSION
$ git clone --branch autogpt-platform-beta-v0.6.10 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:$ git checkout autogpt-platform-beta-v0.6.10
›Adds initial Google Calendar integration block for use in AutoGPT platform workflows.
›Adds Llama API support as a new LLM provider option.
›Changes email notifications from an hourly to a daily schedule.
AutoGPT Platform v0.6.9 adds agent execution continuity, scheduled late-execution checks, and CAPTCHA on auth pages.
└──▷ GET THIS VERSION
$ git clone --branch autogpt-platform-beta-v0.6.9 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:$ git checkout autogpt-platform-beta-v0.6.9
›Agents that were aborted or broken can now be continued rather than requiring a full retry, preserving execution state.
›Sub-graphs are now included in graph-level credentials support, extending credential scoping to nested graph structures.
›Introduces a scheduled job that performs late execution checks, with immediate alerting on job failure.
›Adds CAPTCHA to login, signup, and password reset pages to protect authentication flows.
›Requires a discriminator value on graph save, enforcing stricter graph validation at save time.
+2 moreshow less
›Updated Marketplace Agent listing buttons for improved agent discovery UX.
›Onboarding design and UX updated for new users.
└──▷ BREAKING ON UPGRADE
!Graph save now requires a discriminator value — graphs that omit this field will be rejected on save.
Framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.
CrewAI 0.121.0 adds markdown rendering for Tasks, reasoning for Agents, automatic date injection, and a HallucinationGuardrail.
└──▷ GET THIS VERSION
$ git clone --branch 0.121.0 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:$ git checkout 0.121.0
└──▷ USE IT
Enable markdown output for a task so results are returned as formatted markdown.
python
from crewai import Task
task = Task(
description="Summarize the latest threat intelligence report.",
expected_output="A structured summary of key findings.",
markdown=True
)
Enable reasoning on an agent and inject today's date automatically for time-sensitive analysis workflows.
python
from crewai import Agent
analyst = Agent(
role="Threat Analyst",
goal="Identify emerging threats from recent feeds.",
backstory="Expert in cyber threat intelligence.",
reasoning=True,
inject_date=True
)
›Adds markdown attribute to the Task class for controlling markdown-formatted output.
›Adds reasoning attribute to the Agent class to enable or configure agent reasoning behavior.
›Adds inject_date flag to Agent for automatic date injection into agent context.
›Implements HallucinationGuardrail for detecting and guarding against hallucinated outputs.
2 more releases in this issue
· 2025-05-08 → 2025-05-22
DSPy 2.6.24 adds the GRPO optimizer and a new AdapterParseError exception class.
└──▷ GET THIS VERSION
$ git clone --branch 2.6.24 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:$ git checkout 2.6.24
└──▷ USE IT
Catch adapter parse failures separately from other errors when running a DSPy module.
python
import dspy
try:
result = my_module(question="What is the capital of France?")
except dspy.AdapterParseError as e:
print(f"Adapter failed to parse LM output: {e}")
›Adds AdapterParseError exception class to dspy for catching adapter parsing failures programmatically.
›Adds GRPO optimizer to DSPy for reinforcement-learning-style prompt/weight optimization.
›Improves sync streaming ergonomics, making it easier to consume streamed LM responses without async.
›Adds better defaults and warnings around LM max_tokens to surface misconfiguration earlier.
1 more release in this issue
· 2025-05-05 → 2025-05-17
Haystack v2.14.0 adds async tool streaming, a new SentenceTransformers ranker, SuperComponent pipeline visualization expansion, and agent last_message output.
└──▷ GET THIS VERSION
$ git clone --branch v2.14.0 https://github.com/deepset-ai/haystack.git
# already have the repo? check out this version:$ git checkout v2.14.0
└──▷ USE IT
Stream tool call results in real time from an Agent using the updated streaming_callback parameter with print_streaming_chunk.
python
from haystack.components.agents import Agent
from haystack.components.generators.chat import OpenAIChatGenerator
from haystack.components.generators.utils import print_streaming_chunk
from haystack.tools import ComponentTool
from haystack.components.websearch import SerperDevWebSearch
from haystack.dataclasses import ChatMessage
web_search = ComponentTool(name="web_search", component=SerperDevWebSearch(top_k=5))
agent = Agent(
chat_generator=OpenAIChatGenerator(model="gpt-4o-mini"),
tools=[web_search],
streaming_callback=print_streaming_chunk
)
result = agent.run(messages=[ChatMessage.from_user("What happened in AI news today?")])
print(result["last_message"].text)
Rank documents using the new SentenceTransformersSimilarityRanker with the ONNX backend for faster CPU inference.
python
from haystack.components.rankers import SentenceTransformersSimilarityRanker
from haystack.utils.device import ComponentDevice
from haystack.dataclasses import Document
ranker = SentenceTransformersSimilarityRanker(
model="sentence-transformers/all-MiniLM-L6-v2",
device=ComponentDevice.from_str("cpu"),
backend="onnx",
)
ranker.warm_up()
docs = [Document(content="Berlin"), Document(content="Sarajevo")]
output = ranker.run(query="City in Germany", documents=docs)
print(output["documents"])
Expand SuperComponents in a pipeline diagram to see all internal components when debugging or documenting complex pipelines.
python
from pathlib import Path
from haystack import Pipeline
from haystack.components.converters import MultiFileConverter
from haystack.components.preprocessors import DocumentPreprocessor
pipeline = Pipeline()
pipeline.add_component("converter", MultiFileConverter())
pipeline.add_component("preprocessor", DocumentPreprocessor())
pipeline.connect("converter", "preprocessor")
pipeline.draw(path=Path("expanded_pipeline.png"), super_component_expansion=True)
›Adds streaming_callback parameter to ToolInvoker and Agent to emit tool results in real time during tool invocation (results emitted after tool execution completes, not incrementally).
›Adds run_async method to ToolInvoker class to support asynchronous tool invocations, including streaming tool results.
›Adds last_message output field to the Agent component for direct access to the final generated ChatMessage.
›Adds last_message_only parameter to AnswerBuilder to process only the final reply while preserving full conversation history in metadata.
›Adds all_messages key to the meta field of GeneratedAnswer objects in AnswerBuilder, storing all generated messages for traceability.
+11 moreshow less
›Adds super_component_expansion=True parameter to pipeline.draw() and pipeline.show() to expand SuperComponents into their constituent components in pipeline diagrams.
›Introduces new SentenceTransformersSimilarityRanker component supporting PyTorch, ONNX, and OpenVINO inference backends via a backend parameter; requires sentence-transformers>=4.1.0.
›Adds serialize_value and deserialize_value utility methods for consistent value serialization across modules.
›Moves State class to agents.state module and adds serialization and deserialization capabilities.
›Adds support for multiple outputs in ConditionalRouter.
›Updates print_streaming_chunk to print ToolCall information when present in a chunk's metadata.
›Adds a py.typed marker file to Haystack, enabling PEP 561 type information for downstream projects and type checkers such as mypy.
›Adds token usage metadata (prompt and completion token counts) to ChatMessage returned by HuggingFaceAPIChatGenerator when streaming.
›Adds a Protocol for TextEmbedder to simplify creation of custom components or SuperComponents that accept any TextEmbedder as an init parameter.
›Adds Component signature validation method that reports mismatches between run and run_async method signatures to aid debugging of custom components.
›Adds type hints to the component decorator, improving Pyright/Pylance support and IDE docstring display.
└──▷ BREAKING ON UPGRADE
!The deprecated deserialize_tools_inplace utility function has been removed; replace all usages with deserialize_tools_or_toolset_inplace imported from haystack.tools.
langchain-anthropic 0.3.14 adds code execution, MCP connector, and Files API support for Anthropic models.
└──▷ GET THIS VERSION
$ git clone --branch langchain-anthropic==0.3.14 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-anthropic==0.3.14
›Adds support for Anthropic code execution tool use, enabling LLM-driven code running within LangChain chains.
›Adds support for the Anthropic MCP (Model Context Protocol) connector, allowing models to interact with MCP-compatible tool servers.
›Adds support for the Anthropic Files API, enabling file uploads and references within Anthropic-backed LangChain calls.
7 more releases in this issue
· 2025-05-01 → 2025-05-27
langchain-openai 0.3.18 adds support for built-in code interpreter and remote MCP tools, plus async embedding performance improvements.
└──▷ GET THIS VERSION
$ git clone --branch langchain-openai==0.3.18 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-openai==0.3.18
›Supports OpenAI built-in code interpreter and remote MCP tools as callable tool types.
›Runs _tokenize in a background thread during async embedding invocations, enabling non-blocking embedding calls in async contexts.
›Adds compatibility with Bedrock Converse for OpenAI-style LLM interactions.
LangChain Core 0.3.61 adds Union type support in strict OpenAI structured output mode and improves Runnable typing.
└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.61 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-core==0.3.61
›Supports Union type args in strict mode of OpenAI function calling and structured output, enabling more expressive type annotations in constrained response schemas.
›Improves typing annotations on the Runnable __or__ method for better IDE and type-checker support when chaining runnables.
›Allows async indexing code to work with vectorstores that only define a synchronous delete method, broadening async compatibility.
langchain-ollama 0.3.3 adds async-client kwargs and arbitrary-role ChatMessage support for Ollama.
└──▷ GET THIS VERSION
$ git clone --branch langchain-ollama==0.3.3 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-ollama==0.3.3
›Adds a separate kwargs parameter for the async Ollama client, enabling independent configuration of async vs. sync client calls.
›Supports passing ChatMessage objects with arbitrary roles directly to Ollama, enabling custom role definitions beyond the standard user/assistant/system set.
langchain-anthropic 0.3.13 adds web search support, URL inputs to ChatAnthropic, and kwargs pass-through for token counting
└──▷ GET THIS VERSION
$ git clone --branch langchain-anthropic==0.3.13 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-anthropic==0.3.13
›Adds web search support to ChatAnthropic via Anthropic's web search tool integration.
›Enables ChatAnthropic to accept URLs as message content inputs.
›Allows kwargs to pass through when calling the token-counting method on ChatAnthropic, enabling additional parameters to reach the underlying API.
›Makes the description field optional on AnthropicTool, removing a previously required constraint.
langchain-huggingface 0.2 adds Inference Provider support for chat and embeddings, IPEX model acceleration, and required tool_choice for ChatHuggingFace.
└──▷ GET THIS VERSION
$ git clone --branch langchain-huggingface==0.2.0 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-huggingface==0.2.0
└──▷ USE IT
Enforce that the model must call a tool (no free-text response) using the new required tool_choice in ChatHuggingFace.
python
from langchain_huggingface import ChatHuggingFace, HuggingFaceEndpoint
llm = HuggingFaceEndpoint(repo_id="mistralai/Mistral-7B-Instruct-v0.3")
chat = ChatHuggingFace(llm=llm)
chat_with_tools = chat.bind_tools([my_tool], tool_choice="required")
response = chat_with_tools.invoke("What is the weather in Paris?")
Use an Inference Provider backend for embeddings without managing local model weights.
LangChain 0.3.25 adds DB column comments retrieval, attachment returns, and removes Python version upper bound.
└──▷ GET THIS VERSION
$ git clone --branch langchain==0.3.25 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain==0.3.25
›Adds get_col_comments option to the community database integration for retrieving column-level comments from database schemas.
›Adds explicit service_tier attribute to the OpenAI integration for controlling OpenAI service tier selection.
›Returns attachments in _get_response, enabling downstream access to message attachments.
›Removes the beta decorator from init_embeddings, marking it as stable.
›Removes the Python version upper bound from langchain and related libraries, allowing installation on future Python releases.
langchain-openai 0.3.15 adds explicit service_tier attribute, reasoning summary streaming, and multi-modal/PDF/audio support in OpenAI message conversion.
└──▷ GET THIS VERSION
$ git clone --branch langchain-openai==0.3.15 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:$ git checkout langchain-openai==0.3.15
└──▷ USE IT
Route requests to OpenAI's flex (lower-cost, slower) processing tier by setting service_tier explicitly on the chat model.
python
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="o3-mini", service_tier="flex")
response = llm.invoke("Summarize the risks in this contract.")
print(response.content)
›Adds explicit service_tier attribute to chat completion requests, enabling direct control over OpenAI flex vs. default processing tiers.
›Supports streaming of OpenAI reasoning summaries, allowing incremental consumption of chain-of-thought output in streaming workflows.
›Supports PDF and audio input in the Chat Completions message format via core and langchain-openai.
›Supports standard multi-modal blocks in convert_to_openai_messages, unifying how image, audio, and document content is serialized for the OpenAI API.
›Removes Python upper bound version constraint for langchain and related libraries, broadening compatibility with newer Python releases.
LangGraph prebuilt 0.2.0 adds a post_model_hook, HumanInterruptNode, parallel tool calls via Send, and a SqliteStore with namespace search.
└──▷ GET THIS VERSION
$ git clone --branch prebuilt==0.2.0 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout prebuilt==0.2.0
└──▷ USE IT
Inject a post-model validation or logging step into a ReAct agent without subclassing.
python
from langgraph.prebuilt import create_react_agent
def my_post_model_hook(state):
# inspect or mutate state after each model call
print("Model output:", state["messages"][-1].content)
return state
agent = create_react_agent(
model=llm,
tools=[...],
post_model_hook=my_post_model_hook,
)
Persist agent memory across sessions using the new SqliteStore backend.
python
from langgraph.store.sqlite import SqliteStore
store = SqliteStore("agent_memory.db")
# list namespaces up to 2 levels deep
namespaces = store.list_namespaces(max_depth=2)
print(namespaces)
›Adds post_model_hook parameter to inject custom logic after model responses in create_react_agent.
›Introduces HumanInterruptNode for structured human-in-the-loop interruption handling in prebuilt agents.
›Switches parallel tool call execution to use Send by default, enabling concurrent tool dispatch in the ReAct agent.
›Releases SqliteStore as a persistent key-value store backend with namespace search and list_namespaces supporting max_depth filtering.
└──▷ BREAKING ON UPGRADE
!The state_modifier parameter has been removed from create_react_agent; existing code passing state_modifier will break on upgrade.
LangGraph SQLite checkpoint adds SqliteStore and InMemoryCache for persistent and in-memory state storage.
└──▷ GET THIS VERSION
$ git clone --branch checkpointsqlite==2.0.8 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout checkpointsqlite==2.0.8
└──▷ USE IT
Clear all entries from a store in one call, useful for resetting state between test runs.
python
store = SqliteStore("./agent_state.db")
# ... populate store ...
store.clear() # deletes all entries when called without arguments
›New SqliteStore provides a SQLite-backed key-value store for persisting LangGraph state across runs.
›New InMemoryCache (moved into the sqlite package alongside FileCache) enables fast, non-persistent caching without a database.
›Adds SqliteStore release as the official sqlite store integration for LangGraph checkpointing.
›Overloaded clear() method on the store now deletes all entries when called without arguments.
LangGraph checkpoint 2.0.26 adds InMemoryCache, namespace-scoped cache keys, TTL support, and pickle fallback for the JSON serializer.
└──▷ GET THIS VERSION
$ git clone --branch checkpoint==2.0.26 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout checkpoint==2.0.26
›Adds InMemoryCache as a new cache backend alongside the existing file-based cache.
›Moves FileCache to the sqlite package and re-implements it using SQLite for more reliable storage.
›Adds namespace support to cache keys, enabling isolated cache spaces across different workloads.
LangGraph 0.4.4 adds update_state for the functional API, a caching layer with InMemoryCache, and deferred node execution.
└──▷ GET THIS VERSION
$ git clone --branch 0.4.4 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout 0.4.4
└──▷ USE IT
Apply a state update inside a functional-API entrypoint, the same way you would in a StateGraph.
python
from langgraph.func import entrypoint, task
from langgraph.types import Command
from langgraph.checkpoint.memory import MemorySaver
checkpointer = MemorySaver()
@entrypoint(checkpointer=checkpointer)
def my_graph(state):
return state
# Update state for a specific thread mid-run
my_graph.update_state({"configurable": {"thread_id": "thread-1"}}, {"key": "new_value"})
›Implements update_state for the functional API, enabling state updates mid-graph in entrypoint-based workflows.
›Introduces a cache interface with InMemoryCache and FileCache (moved to sqlite package), including clear methods and namespace-scoped cache keys.
›Adds cache_policy acceptance on graph, entrypoint, and pregel for default caching configuration.
›Adds support for Deferred Nodes, enabling nodes whose execution can be deferred within a graph.
LangGraph Python SDK adds customizable client timeouts, loop-safe ASGI transport, and a new 'running' RunStatus.
└──▷ GET THIS VERSION
$ git clone --branch sdk==0.1.69 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout sdk==0.1.69
└──▷ USE IT
Set per-request timeouts when initializing the LangGraph client to avoid hung calls in production.
python
from langgraph_sdk import get_client
client = get_client(url="http://localhost:8123", timeout=30)
›Supports customizable timeouts in get_client() for fine-grained control over request lifecycle.
›Adds optional loop-safe ASGI transport to avoid event-loop conflicts in async environments.
›Adds missing 'running' value to RunStatus enum, enabling accurate status checks on in-progress runs.
└──▷ BREAKING ON UPGRADE
!Private SDK functions are now prefixed with _; any code calling these functions by their former unprefixed names will break.
LangGraph checkpoint-sqlite 2.0.7 adds a delete_thread method to the Checkpointer class.
└──▷ GET THIS VERSION
$ git clone --branch checkpointsqlite==2.0.7 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout checkpointsqlite==2.0.7
└──▷ USE IT
Delete all checkpoint state for a specific thread to free storage or reset a conversation.
python
checkpointer.delete_thread(thread_id)
›Adds delete_thread method to the Checkpointer class for removing thread state from SQLite checkpoints.
LangGraph CLI 0.2.8 adds custom base image support and configurable headers schema for Docker workflows.
└──▷ GET THIS VERSION
$ git clone --branch cli==0.2.8 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:$ git checkout cli==0.2.8
›Supports specifying a custom base image in Docker commands.
LlamaIndex v0.12.39 adds Workflow dependency injection, tool_required for function-calling LLMs, and multi-language Milvus analyzer support.
└──▷ GET THIS VERSION
$ git clone --branch v0.12.39 https://github.com/run-llama/llama_index.git
# already have the repo? check out this version:$ git checkout v0.12.39
›Adds tool_required param to function-calling LLMs in llama-index-core, letting callers force the model to invoke a tool rather than return plain text.
›Introduces a Resource primitive to llama-index-core Workflows for structured dependency injection across workflow steps.
›Adds multi-language analyzer support in llama-index-vector-stores-milvus (v0.8.3), enabling language-aware tokenization for Milvus full-text search.
›Adds non-persisted composite retrieval to llama-index-indices-managed-llama-cloud (v0.7.2) for in-memory combined index queries without writing to LlamaCloud.
›Updates llama-index-llms-ollama (v0.6.1) to support the Ollama 0.5.0 SDK.
3 more releases in this issue
· 2025-05-08 → 2025-05-30
LlamaIndex v0.12.35 adds memory revamp, Gel storage integrations, prefill tool kwargs, Anthropic citations, and new SlideNodeParser
└──▷ GET THIS VERSION
$ git clone --branch v0.12.35 https://github.com/run-llama/llama_index.git
# already have the repo? check out this version:$ git checkout v0.12.35
›Adds prefilling partial tool kwargs support on FunctionTool, allowing callers to pre-bind arguments before the model completes the call.
›Adds indexed metadata fields to llama-index-vector-stores-postgres for faster filtered queries against document metadata.
›Adds FaissMapVectorStore to llama-index-vector-stores-faiss, providing a map-backed Faiss vector store variant.
›Introduces a memory revamp in llama-index-core with a new base class and prebuilt memory blocks for agent memory management.
›Adds four new Gel integrations at version 0.1.0: llama-index-storage-chat-store-gel, llama-index-storage-docstore-gel, llama-index-storage-kvstore-gel, and llama-index-storage-index-store-gel.
+7 moreshow less
›Adds llama-index-vector-stores-gel [0.1.0] as a new Gel-backed vector store integration.
›Adds SlideNodeParser integration in the new llama-index-node-parser-slide [0.1.0] package for parsing slide-format documents.
›Adds Anthropic citations and tool calls support to llama-index-llms-anthropic [0.6.12].
›Adds AutoEmbeddings integration from Chonkie in the new llama-index-embeddings-autoembeddings [0.1.0] package.
›Adds support for Meta Llama API as an LLM provider via llama-index-llms-meta [0.1.1].
›Adds Oxylabs readers in llama-index-readers-oxylabs [0.1.2] and llama-index-readers-web [0.4.1].
›Adds Cortex authentication enhancements to llama-index-llms-cortex [0.3.0].
AutoGen 0.5.7 unifies Azure AI Search methods, adds model context to SelectorGroupChat, and enriches OTEL tracing.
└──▷ GET THIS VERSION
$ git clone --branch python-v0.5.7 https://github.com/microsoft/autogen.git
# already have the repo? check out this version:$ git checkout python-v0.5.7
└──▷ USE IT
Run a semantic search over an Azure AI Search index using the new unified method instead of the removed create_keyword_search().
Limit the message history sent to the selector model in a long-running SelectorGroupChat to avoid exceeding context limits.
python
from autogen_agentchat.teams import SelectorGroupChat
from autogen_core.model_context import BufferedChatCompletionContext
team = SelectorGroupChat(
participants=[agent1, agent2, agent3],
model_client=model_client,
model_context=BufferedChatCompletionContext(buffer_size=10)
)
›Adds unified AzureAISearchTool factory methods: create_full_text_search() (supporting "simple", "full", and "semantic" query types), create_vector_search(), and create_hybrid_search().
›Adds client-side embeddings support to AzureAISearchTool, falling back to service embeddings when client embeddings are not provided.
›Adds model_context parameter to SelectorGroupChat to customize which messages are sent to the model client when selecting the next speaker, enabling long-context speaker selection.
›Adds new metadata and message content fields to OTEL traces emitted by SingleThreadedAgentRuntime.
›Adds ability to register Agent instances directly with the Agent Runtime.
└──▷ BREAKING ON UPGRADE
!The create_keyword_search() method on AzureAISearchTool is replaced by create_full_text_search() with "simple" query type; code using create_keyword_search() must be updated.
1 more release in this issue
· 2025-05-02 → 2025-05-14
AutoGen v0.5.6 adds GraphFlow for directed-graph agent workflows, Bing grounding citations, and Bedrock/Anthropic support.
└──▷ GET THIS VERSION
$ git clone --branch python-v0.5.6 https://github.com/microsoft/autogen.git
# already have the repo? check out this version:$ git checkout python-v0.5.6
└──▷ USE IT
Build a fan-out/fan-in pipeline where a writer feeds two parallel editors whose outputs are consolidated by a final reviewer — useful for parallel critique workflows.
python
from autogen_agentchat.teams import DiGraphBuilder, GraphFlow
builder = DiGraphBuilder()
builder.add_node(writer).add_node(editor1).add_node(editor2).add_node(final_reviewer)
builder.add_edge(writer, editor1)
builder.add_edge(writer, editor2)
builder.add_edge(editor1, final_reviewer)
builder.add_edge(editor2, final_reviewer)
graph = builder.build()
flow = GraphFlow(
participants=builder.get_participants(),
graph=graph,
)
await Console(flow.run_stream(task="Write a short biography of Steve Jobs."))
›Adds GraphFlow team class and DiGraphBuilder to AgentChat, enabling directed-graph agent workflows including fan-out, fan-in, and concurrent agent execution.
›Adds Bing grounding citation URL support to the Azure AI Agent integration.
›Adds Amazon Bedrock chat completion support for Anthropic models via a new provider in autogen_ext.
OpenAI Agents SDK v0.0.15 adds Streamable HTTP transport for MCP servers and extra_body pass-through to LiteLLM.
└──▷ GET THIS VERSION
$ git clone --branch v0.0.15 https://github.com/openai/openai-agents-python.git
# already have the repo? check out this version:$ git checkout v0.0.15
›Passes extra_body through to LiteLLM acompletion calls, enabling custom request body fields when using LiteLLM as a model provider.
›Adds Streamable HTTP transport support for MCP servers, enabling agents to connect to MCP servers over streamable HTTP in addition to existing transports.
PydanticAI v0.2.12 adds function output types, ModelProfile config, Together/Fireworks/Grok providers, and Claude 4 on Bedrock.
└──▷ GET THIS VERSION
$ git clone --branch v0.2.12 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:$ git checkout v0.2.12
└──▷ USE IT
Use a plain function as an agent's output type so the model's response directly invokes structured tool-like logic.
python
from pydantic_ai import Agent
def send_alert(message: str, severity: str) -> None:
... # your implementation
agent = Agent('openai:gpt-4o', output_type=send_alert)
result = await agent.run('Notify me if CPU exceeds 90%')
Route agent calls to Together AI or Fireworks AI using the new dedicated provider classes with automatic model profile selection.
python
from pydantic_ai import Agent
from pydantic_ai.providers.together import TogetherProvider
agent = Agent(TogetherProvider(), model='meta-llama/Llama-3-70b-chat-hf')
result = await agent.run('Summarize this incident report: ...')
›Adds ModelProfile class to configure model-specific behaviors independently of the model class, enabling fine-grained control over provider quirks without subclassing.
›Adds new provider classes for Together AI, Fireworks AI, and Grok with automatic model profile selection.
›Adds vendor_id and vendor_details.finish_reason fields to Gemini/Google model response objects.
›Supports functions as output_type in agents, including lists of functions mixed with other types.
›Adds support for Claude 4 Sonnet and Opus models via the Bedrock provider.
+1 moreshow less
›Enhances Gemini usage tracking to collect comprehensive token data beyond basic prompt/completion counts.
12 more releases in this issue
· 2025-05-02 → 2025-05-29
PydanticAI v0.2.7 adds MCP tool_prefix namespacing, real-time Anthropic streaming, and a customizable prog_name for CLI agents.
└──▷ GET THIS VERSION
$ git clone --branch v0.2.7 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:$ git checkout v0.2.7
└──▷ USE IT
Namespace tools from two MCP servers that might share names to avoid conflicts and make tool origins clear in logs.
python
from pydantic_ai.mcp import MCPServerStdio
search_server = MCPServerStdio('npx', ['-y', '@modelcontextprotocol/server-brave-search'], tool_prefix='search')
fs_server = MCPServerStdio('npx', ['-y', '@modelcontextprotocol/server-filesystem', '/tmp'], tool_prefix='fs')
# Tools are now exposed as 'search_<name>' and 'fs_<name>', and duplicate bare names raise an error.
›Adds tool_prefix option to MCP servers to namespace tool names and raises an error on conflicting tool names across servers.
›Makes prog_name customizable on CLI agents, allowing teams to brand or script against a consistent program name.
›Removes the hardcoded n parameter from OpenAIModel requests, unlocking use of endpoints and deployments that reject that field.
›Streams tool calls and structured output from Anthropic incrementally as tokens arrive instead of buffering the full response.
›Supports streaming tool calls from models that pass args as None when a function has no parameters.
PydanticAI v0.2.5 adds OpenRouter and Google GenAI providers, logprobs support, and new instrumentation controls.
└──▷ GET THIS VERSION
$ git clone --branch v0.2.5 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:$ git checkout v0.2.5
└──▷ USE IT
Suppress binary content (images, files) from being sent to your OTel backend to reduce trace payload size.
python
from pydantic_ai.settings import InstrumentationSettings
settings = InstrumentationSettings(include_binary_content=False)
›Adds include_binary_content flag to InstrumentationSettings to control whether binary content is captured in traces; renames the OTel attribute key from content to binary_content for BinaryParts.
›Adds logprobs to OpenAI model settings and response objects, exposing token-level log probability data.
›Adds vendor_id field to model response objects.
›Adds ability to specify the evaluation name for all built-in Evaluators.
›Adds OpenRouter provider for routing requests across LLM backends.
+2 moreshow less
›Adds Google GenAI provider for direct integration with Google's generative AI APIs.
›Makes capabilities a required field on AgentCard in the fasta2a integration.
└──▷ BREAKING ON UPGRADE
!The OTel attribute key for BinaryParts is renamed from content to binary_content; any dashboards, queries, or processors filtering on the old key will stop matching.
!capabilities is now required on AgentCard in fasta2a; existing AgentCard instantiations that omit capabilities will raise a validation error.
›Adds usage field to ModelResponse (defaults to Usage() for backward-compatible deserialization), making token/cost usage directly accessible on every model response and in message history sequences.
›Adds support for non-string enums in Gemini model integrations.
└──▷ BREAKING ON UPGRADE
!The return type of Model.request changed from tuple[ModelResponse, Usage] to ModelResponse — callers that unpack the two-element tuple will break; usage is now accessed via response.usage.
Semantic Kernel Python 1.32.0 adds structured outputs for Azure AI inference and Declarative Spec support for OpenAI agents.
└──▷ GET THIS VERSION
$ git clone --branch python-1.32.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout python-1.32.0
›Adds missing fields to AzureAIAgentSettings for more complete agent configuration.
›Allows configuration of parameters for BingGroundingTool.
›Includes Bing Grounding Tool call results in invoke_stream responses.
›Relaxes agent invocation methods to allow positional or keyword arguments for messages.
›Supports structured outputs with Azure AI inference chat completion.
+1 moreshow less
›Supports Declarative Spec for OpenAIAssistantAgent and OpenAIResponsesAgent.
9 more releases in this issue
· 2025-05-08 → 2025-05-28
Semantic Kernel .NET 1.54.0 adds AIContextProvider support and a Summary property on OpenApiOperation.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.54.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.54.0
›Adds AIContextProvider support to Semantic Kernel, enabling context injection into AI interactions.
›Adds Summary property to the OpenApiOperation model class, exposing operation summaries from OpenAPI specs.
›Removes the Kusto and DuckDB integrations from the .NET SDK.
└──▷ BREAKING ON UPGRADE
!The Kusto and DuckDB integrations have been removed from the .NET SDK; any code depending on these packages will break on upgrade.
Semantic Kernel .NET 1.53.0 exposes ToJson on FoundryProcessBuilder, integrates MEAI Abstractions, and updates the Azure Foundry Agent SDK.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.53.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.53.0
›Exposes ToJson method on FoundryProcessBuilder, allowing serialization of a Foundry process definition to JSON.
›Integrates Semantic Kernel with MEAI (Microsoft Extensions for AI) Abstractions, enabling interoperability with the MEAI abstraction layer.
›Updates the Azure Foundry Agent SDK backing AzureAIAgent, with GA Foundry Projects (created on or after May 19th, 2025) now accessed via endpoint URI instead of connection-string.
└──▷ BREAKING ON UPGRADE
!Developers using AzureAIAgent must now target a GA Azure AI Foundry Project. Projects created before May 19th, 2025 are accessed via a connection-string; projects created on or after May 19th, 2025 are accessed via their endpoint URI — existing code pointing to pre-GA projects will require migration per the Azure Agent Foundry GA Migration Guide.
Semantic Kernel Python 1.31.0 adds Magentic multi-agent orchestration and WebRTC support for Azure OpenAI Realtime.
└──▷ GET THIS VERSION
$ git clone --branch python-1.31.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout python-1.31.0
›Adds Magentic multi-agent orchestration strategy, enabling coordinated multi-agent workflows via the new MagenticOrchestration pattern.
›Adds WebRTC support for Azure OpenAI Realtime, enabling real-time audio/video communication through the Azure OpenAI Realtime connector.
›Preserves citation title in AnnotationContent from Azure AI Foundry annotations.
└──▷ BREAKING ON UPGRADE
!Planners have been marked deprecated and all related items removed — any code relying on Semantic Kernel planners will break on upgrade.
Semantic Kernel dotnet-1.52.0 adds Magentic multi-agent orchestration and MEVD feature updates for .NET, plus Magentic orchestration and planner deprecation for Python.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.52.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.52.0
›Adds Magentic Agent Orchestration for .NET (Microsoft.SemanticKernel.Agents) enabling multi-agent coordination via the Magentic pattern.
›Adds Magentic multi-agent orchestration support for Python, aligning orchestration capabilities across both SDK surfaces.
›Updates .NET codebase to the latest MCP (Model Context Protocol) NuGet package, keeping MCP integration current.
›Updates Microsoft.Extensions.AI dependency to its stable release version in the .NET SDK.
›Ships MEVD (Memory and Vector Data) Feature Branch 3 for .NET, advancing the vector/memory subsystem.
+5 moreshow less
›Updates the Foundry process builder to the latest format in .NET.
›Removes HTTPS validation requirements in AzureClientCore, allowing more flexible Azure endpoint configurations.
›Python now preserves Citation Title in AnnotationContent from Azure AI Foundry annotations.
›Python adds validation for missing or unexpected parameters received from models.
›Python planners are marked deprecated and all related items removed from the codebase.
└──▷ BREAKING ON UPGRADE
!Python planners are deprecated and all related planner items have been removed — code relying on Python planner classes will break on upgrade.
Semantic Kernel vectordata-dotnet-9.5.0 adds Magentic agent orchestration, MCP Streamable HTTP, Copilot Studio Agent, and IEmbeddingGenerator support for VectorStoreTextSearch.
└──▷ GET THIS VERSION
$ git clone --branch vectordata-dotnet-9.5.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout vectordata-dotnet-9.5.0
└──▷ USE IT
Use the M.E.AIIEmbeddingGenerator abstraction with VectorStoreTextSearch instead of the now-obsolete ITextEmbeddingGenerator.
csharp
var textSearch = new VectorStoreTextSearch<MyRecord>(vectorStore, embeddingGenerator);
Pass vendor-specific parameters through to the OpenAI chat API without waiting for first-class SDK support.
Semantic Kernel .NET 1.51.0 adds FoundryProcessBuilder for local runtime and multi-agent orchestration support.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.51.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.51.0
›Adds FoundryProcessBuilder for local runtime process execution in .NET.
›Adds .NET Agent Orchestration support, enabling coordination of multiple agents.
›Obsoletes ITextEmbeddingGenerator in .NET, signaling a migration path away from the interface.
Semantic Kernel .NET 1.50.0 adds URL citation support for Azure Agents and serialized Python code execution results.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.50.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.50.0
›Adds URL citation support on AzureAgent in .NET, surfacing source links from Azure AI agent responses.
›Serializes Python code execution results in .NET, making interpreter output available as structured data.
›Updates Microsoft.Extensions.AI (MEAI) dependency and migrates away from deprecated schema APIs.
Semantic Kernel Python 1.30.0 adds Copilot Studio Agent, MCP Streamable HTTP, and four multi-agent orchestration patterns
└──▷ GET THIS VERSION
$ git clone --branch python-1.30.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout python-1.30.0
└──▷ USE IT
Pass custom OpenAI request body fields (e.g. reasoning effort or provider-specific params) through to the API without subclassing.
Semantic Kernel .NET 1.49.0 adds IEmbeddingGenerator support in vector search, graduates Plugins.Core to preview, and introduces BinaryContent in OpenAI.
└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.49.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:$ git checkout dotnet-1.49.0
└──▷ USE IT
Pass arbitrary provider-specific fields through OpenAI chat completions in Python without subclassing the settings object.
›Adds IEmbeddingGenerator support to VectorStoreTextSearch, enabling the Microsoft.Extensions.AI embedding abstraction as a drop-in source for vector store text search.
›Supports BinaryContent in the .NET OpenAI Connector, allowing binary payloads to be passed through OpenAI requests.
›Graduates Microsoft.SemanticKernel.Plugins.Core package from 'alpha' to 'preview' status, signalling increased API stability.
›Removes the experimental attribute from core plugins in Plugins.Core, making them part of the stable surface.
›Migrates the Python code interpreter C# plugin (SessionsPythonPlugin) to the latest Azure code interpreter API version.
+7 moreshow less
›Updates SessionsPythonPlugin with additional capabilities alongside the API migration.
›Adds extra_body attribute to Python OpenAI Chat settings, enabling pass-through of arbitrary request body fields.
›Introduces the Copilot Studio Agent in the Python SDK, adding a new agent type for Microsoft Copilot Studio integration.
›Ports the Python Agent Runtime to the SK repo, making it available directly within the Semantic Kernel Python distribution.
›Removes the Functions.Markdown package from the .NET distribution.
›Removes the math and wait built-in plugins from the .NET distribution.
›Adds cancellation token support and custom header injection to HTTP requests in the .NET layer.
└──▷ BREAKING ON UPGRADE
!The Functions.Markdown package has been removed and is no longer available in the .NET distribution.
!The math and wait plugins have been removed from the .NET distribution; code referencing them will break on upgrade.
!Python: add_chat_message has been removed from AzureAIAgent and OpenAIAssistantAgent per its deprecation notice.
browser-use 0.2.5 adds a one-shot CLI mode via browser-use -p for running browser tasks directly from the command line.
└──▷ GET THIS VERSION
$ git clone --branch 0.2.5 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:$ git checkout 0.2.5
└──▷ TRY IT
Fetch a live data point from the web and return structured JSON output in a single terminal command — no script required.
$ browser-use -p 'get todays DOW stock price and return it as JSON, e.g.: {"dow_price": 40000.00}'
›Adds browser-use -p '<prompt>' one-shot CLI mode to run a browser-use task directly from the command line and return a result without writing any Python code.
7 more releases in this issue
· 2025-05-02 → 2025-05-28
browser-use 0.2.1 ships BrowserProfile/BrowserSession, per-domain sensitive data, Patchright support, and expanded vector store providers
└──▷ GET THIS VERSION
$ git clone --branch 0.2.1 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:$ git checkout 0.2.1
└──▷ USE IT
Share a single Playwright browser between browser-use and another tool, injecting an existing Page so no second browser is launched.
python
from playwright.async_api import async_playwright
from browser_use import Agent
async with async_playwright() as p:
browser = await p.chromium.launch()
page = await browser.new_page()
await page.goto('https://example.com')
agent = Agent(task='fill out this form', llm=llm, page=page)
await agent.run()
Write a custom action that manipulates the live page directly via the injected Playwright Page object, scoped to a specific domain.
python
from browser_use import Controller
from playwright.async_api import Page
controller = Controller()
@controller.registry.action(
description='Highlight all cells in the selection',
allowed_domains=['https://docs.google.com']
)
async def highlight_cells(cell_range: str, page: Page):
await page.evaluate(f"document.querySelector('{cell_range}').style.background = 'yellow'")
›Introduces BrowserProfile and BrowserSession classes, replacing Browser, BrowserConfig, BrowserContext, and BrowserContextConfig with a unified API that accepts all standard Playwright launch_persistent_context() arguments directly on BrowserProfile.
›Adds allowed_domains parameter to BrowserSession, now defaulting to enforcing https:// unless http:// or http*:// is explicitly included; supports globs and full scheme matching (e.g. https://*.google.com, chrome-extension://*).
›Changes Agent(sensitive_data) to accept a new per-domain format {domain: {key: val, ...}} instead of the flat {key: value} format, restricting credential exposure to matching domains using the same glob/scheme system as allowed_domains.
›Allows passing existing Playwright (or Patchright) Page, BrowserContext, and Browser objects directly into BrowserSession or Agent (e.g. Agent(task='...', llm=llm, page=page)).
›Adds support for using Patchright as a stealth browser backend via playwright=awaitasync_patchright().start() on BrowserSession.
+5 moreshow less
›Custom action functions decorated with @controller.registry.action(...) can now declare page: Page or browser_session as parameters to receive the live Playwright Page object directly, eliminating the need for a separate get_current_page() call.
›Local browsers now launch with a dedicated persistent empty profile stored at ~/.config/browseruse/profiles/default, isolated from the system default browser profile.
›Expands the range of supported vector store providers for agent memory.
›Adds support for multi-threaded agent execution including pause and resume operations.
›Adds new LLM model support and improved element detection methods including accessibility tree enhancements and custom event-listener detection.
└──▷ BREAKING ON UPGRADE
!Browser, BrowserConfig, BrowserContext, and BrowserContextConfig are replaced by BrowserProfile and BrowserSession; existing code constructing those objects will break.
!Agent(sensitive_data) now requires the format {domain: {key: val, ...}} instead of the flat {key: value} format; agents using the old flat format will no longer have credentials correctly scoped.
!BrowserSession(allowed_domains=[...]) now enforces https:// by default unless http:// or http*:// is explicitly listed; setups that relied on unqualified domain globs matching plain HTTP will be blocked.
!Local browsers now refuse to start with the system default browser profile; they require the dedicated profile at ~/.config/browseruse/profiles/default, which may break setups that previously relied on ambient system cookies.
browser-use 0.1.47 renames GEMINI_API_KEY to GOOGLE_API_KEY and moves CLI deps to an optional install group.
└──▷ GET THIS VERSION
$ git clone --branch 0.1.47 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:$ git checkout 0.1.47
›Renames the GEMINI_API_KEY environment variable to GOOGLE_API_KEY for Google model authentication.
›Moves CLI dependencies to an optional browser-use[cli] install group, keeping the core library lighter for non-CLI users.
›Adds LLaMA model to the built-in pricing table for cost tracking.
└──▷ BREAKING ON UPGRADE
!The GEMINI_API_KEY environment variable is renamed to GOOGLE_API_KEY; any working setup that sets GEMINI_API_KEY will stop authenticating to Google models after upgrading.
!CLI dependencies are no longer installed by default; users who rely on the CLI must now install browser-use[cli] explicitly or the CLI will fail to run.
browser-use 0.1.45 adds an interactive CLI, Google Sheets support, Azure OpenAI, and improved anti-bot fingerprint evasion.
└──▷ GET THIS VERSION
$ git clone --branch 0.1.45 https://github.com/browser-use/browser-use.git
# already have the repo? check out this version:$ git checkout 0.1.45
└──▷ USE IT
Set browser window and viewport dimensions using the new flat config attributes after removing BrowserWindowContextSize.
python
from browser_use import BrowserContextConfig
config = BrowserContextConfig(window_width=1280, window_height=900, no_viewport=False)
›Adds flat window_width and window_height attributes to BrowserContextConfig (replacing the removed BrowserWindowContextSize object), also used as viewport dimensions when no_viewport=False.
›New interactive CLI for browser-use, styled like the claude code CLI, for running browser-use tasks directly from the terminal.
›Adds Google Sheets support directly in the main controller.
›Adds support for Azure OpenAI API GPT-4 as a model provider.
›Improves anti-bot fingerprint detection for compatibility with Cloudflare-protected sites and Google logins.
└──▷ BREAKING ON UPGRADE
!The BrowserWindowContextSize object is removed: replace BrowserContextConfig(window_size=BrowserWindowContextSize(width=1280, height=900)) with BrowserContextConfig(window_width=1280, window_height=900).
›Adds force_new_context=True flag to browser config so custom context configuration is applied when connecting to existing browsers.
›Adds chrome_remote_debugging_port setting in browser config to support launching user-provided Chrome browsers.
›Adds GEMINI_API_KEY environment variable, replacing GOOGLE_API_KEY for Gemini LLM authentication.
›Adds Playwright script generation from agent history, enabling replay of recorded agent sessions.
›Adds anti-bot detection support by integrating patchright as the underlying browser automation backend, replacing playwright.
+5 moreshow less
›Adds embedder config support in Mem0 (MemoryConfig) to allow different LLMs for memory embeddings.
›Adds option to disable mem0 telemetry.
›Adds extended system prompt capability for the planner agent.
›Adds support for gemma instruction-tuned models.
›Adds source tracking and error tracking to agent telemetry.
└──▷ BREAKING ON UPGRADE
!playwright is replaced by patchright as the underlying browser automation dependency; any code or configuration that directly references the playwright package may be affected.
camel-ai v0.2.61 adds FAISS vector storage, Claude 4, MCP agent export, Mistral OCR, and LaTeX-to-PDF tooling
└──▷ GET THIS VERSION
$ git clone --branch v0.2.61 https://github.com/camel-ai/camel.git
# already have the repo? check out this version:$ git checkout v0.2.61
└──▷ USE IT
Generate a polished PDF report from LaTeX source produced by an agent, using the updated FileWriteToolkit.
python
from camel.toolkits import FileWriteToolkit
toolkit = FileWriteToolkit()
toolkit.latex_to_pdf(latex_content=r"\documentclass{article}\begin{document}Hello, CAMEL!\end{document}", output_path="report.pdf")
›Adds FAISSStorage as a new vector storage backend, giving practitioners a local, high-performance embedding index option alongside existing cloud stores.
›Adds ModelManager as an accepted input to ChatAgent, enabling dynamic model routing and fallback strategies at the agent level.
›Adds Agent-to-MCP export capability, allowing ChatAgent instances to be exposed as Model Context Protocol servers for interoperability with MCP-compatible clients.
camel-ai v0.2.53 adds Gemini embeddings, ACI tool interface, MCP for non-function-calling models, and richer ChatAgent control.
└──▷ GET THIS VERSION
$ git clone --branch v0.2.53 https://github.com/camel-ai/camel.git
# already have the repo? check out this version:$ git checkout v0.2.53
›Adds termination parameter to ChatAgent.step() and ChatAgent.astep() to allow callers to inject custom termination conditions at call time.
›Enables ModelFactory to accept and pass through additional keyword arguments when constructing model instances.
›Adds Gemini embedding support via the existing embeddings interface.
›Introduces ACI tool interface (ACI_Tool_interface) for interacting with ACI-based tools.
›Enables MCP (Model Context Protocol) for models that do not natively support function calling, expanding MCP compatibility beyond function-calling-capable backends.
smolagents v1.17.0 adds structured generation in CodeAgent, RunResult from Agent.run(), and streamable HTTP MCP server support.
└──▷ GET THIS VERSION
$ git clone --branch v1.17.0 https://github.com/huggingface/smolagents.git
# already have the repo? check out this version:$ git checkout v1.17.0
└──▷ USE IT
Capture rich execution metadata after an agent run to inspect results programmatically.
python
from smolagents import CodeAgent
agent = CodeAgent(model=model, tools=[...])
run_result = agent.run('Find the top 5 CVEs disclosed this week.')
print(run_result)
›Adds optional structured generation to CodeAgent via use_structured_outputs_internally, enabling more reliable and consistent code generation patterns.
›Agent.run() now returns a RunResult object, providing richer metadata about agent execution.
›Adds support for streamable HTTP MCP servers, expanding compatibility beyond standard MCP implementations.
›Improves LaTeX rendering in GradioUI with extended delimiter support.
└──▷ BREAKING ON UPGRADE
!The deprecated from_hf_api methods have been removed.
2 more releases in this issue
· 2025-05-07 → 2025-05-27
›Adds executor_kwargs parameter to LocalPythonExecutor for initialization customization of the local Python executor.
›Adds timeout mechanism for code execution in the local Python executor.
›Enables local web agents via api_base and api_key CLI arguments.
›Supports passing custom functions to the local Python executor.
›Adds Bing as a supported search engine in WebSearchTool.
+1 moreshow less
›Changes the default value of the provider argument in InferenceClientModel from 'hf-inference' to 'auto', automatically selecting the first available provider per the user's configured priority.
└──▷ BREAKING ON UPGRADE
!The default value of the provider argument in InferenceClientModel has changed from 'hf-inference' to 'auto'; existing setups relying on the hf-inference provider by default will now use whichever provider is ranked first in the user's inference-provider settings at https://hf.co/settings/inference-providers.
›Adds support for gemini-2.5-pro-preview-05-06 and qwen3-235b models.
›Adds repo-map support for OCaml and OCaml interface files.
›Introduces --attribute-co-authored-by flag to add a co-author trailer to commit messages, with --attribute-author/--attribute-committer overrides for fine-grained control.
›Adds --disable-playwright flag to prevent Playwright installation prompts and usage.
Cline v3.14.0 adds custom AWS Bedrock model IDs, LaTeX rendering, configurable API timeouts, batch history deletion, and a /newrule slash command.
└──▷ GET THIS VERSION
$ git clone --branch v3.14.0 https://github.com/cline/cline.git
# already have the repo? check out this version:$ git checkout v3.14.0
└──▷ HOW TO FIND IT
Set a longer API timeout when working with slow Ollama models to prevent premature request cancellation.
📍Open Cline Settings → API Configuration → set 'API Request Timeout' to your desired value (e.g. 120 s) for the Ollama provider.
Quickly scaffold a new project rule without leaving the chat, keeping your workflow uninterrupted.
$ /newrule
Use an AWS Bedrock Application Inference Profile by supplying its custom model ID in the provider settings.
📍Open Cline Settings → Provider: AWS Bedrock → Model ID → enter your Application Inference Profile ARN or custom model ID (e.g. arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/my-profile).
›Supports custom model IDs in the AWS Bedrock provider, enabling use of Application Inference Profiles.
›Adds Amazon Nova Premier model to AWS Bedrock.
›Supports LaTeX rendering in chat output.
›Enables configurable API request timeouts for OpenRouter/Cline and Ollama providers (previously hard-coded at 15–30 s).
›Adds a configurable timeout for terminal connection startup.
+10 moreshow less
›Adds a /newrule slash command to create a new rules file directly from the chat input.
›Supports cursorrules and windsurfrules rule file formats.
›Supports batch deletion of task history.
›Adds copy buttons to code blocks and markdown blocks.
›Adds cache UI for OpenRouter and Cline providers, plus more robust caching and cache tracking for Gemini and Vertex providers.
›Enables pricing calculation for Gemini and Vertex providers.
›Adds checkpoints to more message types.
›Adds a truncation notice when context is manually truncated.
›Automatically creates the .clinerules folder when adding a new rule if it does not already exist.
›Improves drag-and-drop experience for file/image attachment.
Continue v1.0.11 adds SSE MCP support, markdown rules, embedding prefixes, prompt caching, OpenRouter tool support, and a full theme colors framework.
└──▷ GET THIS VERSION
$ git clone --branch v1.0.11-vscode https://github.com/continuedev/continue.git
# already have the repo? check out this version:$ git checkout v1.0.11-vscode
›Adds promptCaching to Default Completion Options in config.yaml, enabling prompt caching including Bedrock Tools Caching.
›Adds embedding prefixes support to config-yaml for embedding model configuration.
›Adds markdown rules capability, allowing rules to be authored in Markdown format.
›Enables OpenRouter tool support by default.
›Adds seed coder FIM (fill-in-the-middle) template.
+13 moreshow less
›Automatically respects HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environment variables in the continuedev/fetch package.
›Reads custom environment configuration from macOS plist files and Linux /etc/ files.
›Adds a setting for auto-accepting agent mode edits.
›Adds display of rules used in the active session, giving visibility into which rules are applied.
›Adds support for Claude Sonnet 4.
›Adds Devstral as a model that supports tools.
›Adds full Theme Colors Framework for UI theming.
›Adds showFile implementation in JetBrains IDE.
›Opens prompt file or slug directly on edit click.
›Cancels autocomplete requests after a timeout is reached.
›Opens config when clicking 'edit the prompt'.
›Adds error message when an MCP argument contains an unsubstituted variable.
›Matches all context to rules.
4 more releases in this issue
· 2025-05-02 → 2025-05-31
Continue v1.0.21 for JetBrains adds SSE/Streamable-HTTP MCP, markdown rules, requestRule tool, alwaysApply rule property, and Claude Sonnet 4 support.
└──▷ GET THIS VERSION
$ git clone --branch v1.0.21-jetbrains https://github.com/continuedev/continue.git
# already have the repo? check out this version:$ git checkout v1.0.21-jetbrains
└──▷ USE IT
Force a rule to always apply in every session, regardless of context, by setting alwaysApply in a markdown rule file.
yaml
---
name: Security Baseline
description: Always-on security coding guidelines
alwaysApply: true
---
Never log secrets. Sanitize all user input before use.
Enable streaming and cap stop words in your model config so completions respect your latency budget.
Continue v1.0.10 adds custom MCP timeouts, SSE custom headers, Watsonx Messages API, and Llama 4/Codestral model support.
└──▷ GET THIS VERSION
$ git clone --branch v1.0.10-vscode https://github.com/continuedev/continue.git
# already have the repo? check out this version:$ git checkout v1.0.10-vscode
›Adds custom MCP timeout configuration, letting users override the default connection timeout for MCP servers.
›Adds support for custom headers in SSE transport, enabling authenticated or enterprise SSE MCP connections.
›Adds Watsonx Messages API integration as a supported provider.
›Adds Llama 4 Scout Cerebras to the model definition schema.
›Adds a Codestral prompt template.
+8 moreshow less
›Re-exports a configured openai object from the Continue SDK, simplifying client construction.
›Makes assistant optional on the Continue SDK.
›Adds a keyboard shortcut to the autocomplete quickpick.
›Includes rules in edit requests, applying configured rule sets during inline edits.
›Adds ghost text display for removed lines during apply, making streaming diffs more visible.
›Adds more visible assistant refresh controls and submenus in the UI.
›Marks all gpt- and o-series models as chat-only (routed to chat endpoints, not /v1/completions).
›Updates Qwen3 tool-use support.
└──▷ BREAKING ON UPGRADE
!All gpt- and o-series models are now marked as chat-only and will no longer use the /v1/completions endpoint.
Continue v1.0.9 adds globs to rules, Mistral/DeepSeek agent support, new providers, and a Lazy Edit tool.
└──▷ GET THIS VERSION
$ git clone --branch v1.0.9-vscode https://github.com/continuedev/continue.git
# already have the repo? check out this version:$ git checkout v1.0.9-vscode
└──▷ USE IT
Scope a rule to only TypeScript files so the agent applies it exclusively when working in .ts contexts.
yaml
globs: ["**/*.ts"]
name: typescript-style
description: Enforce TypeScript conventions
content: Always use strict null checks and explicit return types.
Enable extended reasoning for a model by capping its reasoning token budget in config.
Continue v1.0.8 adds a create_rule_block tool, autocomplete prompt templates, HuggingFace/Voyage re-additions, and Azure o3/o4 tool support.
└──▷ GET THIS VERSION
$ git clone --branch v1.0.8-vscode https://github.com/continuedev/continue.git
# already have the repo? check out this version:$ git checkout v1.0.8-vscode
›Adds create_rule_block tool, enabling AI agents to programmatically create rule blocks during a session.
›Adds autocomplete prompt template configuration, giving users control over how autocomplete suggestions are generated.
›Re-adds HuggingFace and Voyage as supported provider integrations.
›Adds tool-calling support for Azure-hosted o3 and o4 models.
›Introduces the Continue SDK (feat: continue sdk), exposing a programmatic interface for extending Continue.
+6 moreshow less
›Enhances the terminal tool with an improved UI for agent-driven terminal interactions.
›Adds a 'Clear session history' button to the chat UI.
›Supports multiple edit ranges being highlighted simultaneously for improved text selection in edit mode.
›Adds 'instant apply' check for diff rejection, giving immediate feedback when a code diff is declined.
›Allows optional naming of context blocks in configuration.
›Clarifies that uses blocks in config are pulled from hub.continue.dev.
OpenCode v0.0.52 adds Codex Mini support, arrow-key message history navigation, and switches the default model to Claude Sonnet 4.
└──▷ GET THIS VERSION
$ git clone --branch v0.0.52 https://github.com/sst/opencode.git
# already have the repo? check out this version:$ git checkout v0.0.52
›Adds support for OpenAI Codex Mini as a model option.
›Adds message history navigation using arrow keys in the input.
›Switches the default model to Claude Sonnet 4.
└──▷ BREAKING ON UPGRADE
!The default model is now Claude Sonnet 4; existing workflows that relied on the previous default model will use Claude Sonnet 4 after upgrading unless explicitly overridden.
5 more releases in this issue
· 2025-05-14 → 2025-05-22
OpenHands 0.39.0 adds UI-based custom secret management and nested runtime API support for scalable agent deployments.
└──▷ GET THIS VERSION
$ git clone --branch 0.39.0 https://github.com/All-Hands-AI/OpenHands.git
# already have the repo? check out this version:$ git checkout 0.39.0
└──▷ HOW TO FIND IT
Store a custom API key or credential so the agent can securely access it during task execution — no code change required.
📍In the console, go to Settings › Secrets and add a new custom secret (name + value) to make it available to the agent at runtime.
›Adds ability to save custom secrets for agents directly through the UI settings panel.
›Adds API support for nested runtimes, enabling more flexible and scalable agent deployments.
└──▷ BREAKING ON UPGRADE
!Only volumes explicitly mounted to /workspace will be treated as workspace mounts; other volume mounts no longer receive workspace treatment on upgrade.
3 more releases in this issue
· 2025-05-01 → 2025-05-20
Zed v0.188.3 adds SSH config import, inline code action indicators, IME support in terminal, and new keybinds.
└──▷ GET THIS VERSION
$ git clone --branch v0.188.3 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:$ git checkout v0.188.3
└──▷ USE IT
Exclude generated or vendored files from a project-wide search to reduce noise in results.
json
// In Zed's action palette, invoke pane::DeploySearch with excluded_files set
// Example keybinding in keymap.json:
{
"context": "Workspace",
"bindings": {
"cmd-shift-f": ["pane::DeploySearch", { "excluded_files": "vendor/**,*.generated.rs" }]
}
}
Disable the inline code action indicator if you prefer a cleaner editor gutter.
json
{
"inline_code_actions": false
}
Disable automatic asterisk continuation in multiline comments across Go, Rust, C, C++, and JSDoc.
json
{
"extend_comment_on_newline": false
}
›Adds excluded_files to pane::DeploySearch to filter files from project search.
›Adds from_existing_connection flag to the OpenRemote action to open the path picker for the current connection directly, bypassing the Remote Projects modal.
›Adds inline_code_actions setting (set to false to disable) that shows a code action indicator inline at the start of each row.
›Adds extend_comment_on_newline setting (set to false to disable) controlling automatic asterisk insertion for new lines in multiline comments for Go, Rust, C, C++, and JSDoc.
›Adds dedicated keybinds cmd-alt-shift-f / ctrl-alt-shift-f for 'Find in Folder...' from the project panel.
+8 moreshow less
›Adds ability to import SSH host names from the SSH config into remote project setup.
›Adds icons to the file finder.
›Adds tool call support for existing Mistral models in the Agent.
›Adds Emacs keymap bindings for Ctrl/Alt-V in selection mode to extend the selection one page up/down.
›Adds Vim gM motion to go to the middle of a line.
›Terminal: Adds basic support for Japanese Input Method Editors (IMEs) on macOS, with pre-edit (marked) text display and Enter-key confirmation.
›Git: Project diff now autosaves the targeted buffer after resolving a merge conflict.
›Rust: Run ignored tests when the user targets one specific test.
10 more releases in this issue
· 2025-05-07 → 2025-05-28
Zed v0.187.7 adds Claude 4 support on AWS Bedrock and handles Claude 4 refusal stop reasons.
└──▷ GET THIS VERSION
$ git clone --branch v0.187.7 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:$ git checkout v0.187.7
›Changes the default value of diagnostics_max_severity from warning to hint.
›Adds support for Claude 4 models via AWS Bedrock.
›Adds handling for "stop_reason": "refusal" responses from Claude 4 models.
└──▷ BREAKING ON UPGRADE
!diagnostics_max_severity now defaults to hint instead of warning, which may surface more diagnostics in projects that previously relied on the warning default.
Zed v0.187.4 adds a minimap, image support in hover docs, new UI settings, and agent image support for Gemini and OpenAI.
└──▷ GET THIS VERSION
$ git clone --branch v0.187.4 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:$ git checkout v0.187.4
└──▷ USE IT
Enable the minimap for a persistent high-level view of large files — useful when reviewing long config or source files.
json
{
"minimap": {
"show": "always"
}
}
Reduce hover tooltip noise by increasing the delay before the hover popover appears while reading code.
json
{
"hover_popover_delay": 600
}
›Adds minimap for high-level overview and quick navigation; enable with "minimap": {"show": "always"} in settings.
›Adds hover_popover_delay setting to control the delay in milliseconds before the informational hover box appears.
›Adds "search": {"button": false}, "diagnostics": {"button": false}, "title_bar": {"show_project_items": false}, and "title_bar": {"show_branch_name": false} settings to hide UI buttons.
›Adds included_files field to the DeploySearch action to pre-fill file inclusion filters, enabling keybindings scoped to specific folders or file sets.
›Adds terminal::RerunTask action to re-run the last terminal task.
+13 moreshow less
›Adds OpenDocs action to open Zed's docs in a browser, aliased to :h[elp] in Vim mode.
›Adds scrollbar.thumb.active_background theme color property for customizing scrollbar thumb color while hovered or dragged.
›Adds workspace: close active dock action to close the currently focused dock.
›Adds ability to temporarily toggle diagnostics in the editor and set the maximum allowed diagnostics level in settings.
›Adds default_width setting influencing initial panel width for project, outline, and collab panels in new windows.
›Supports rendering images with data URLs in markdown, enabling image display in language server hover documentation.
›Supports tool result image input for Gemini models in the agent panel.
›Supports input image for OpenAI models in the agent panel.
›Linux: Adds initial support for font_features setting.
›Vim: Adds support for :w[rite] <filename> to write a buffer to a named file.
›Adds syntax highlighting for TypeScript and JavaScript shebang lines.
›Enables scrollbar marker rendering for small files.
›Unrecognized keys in Zed settings now show inline warnings while editing.
└──▷ BREAKING ON UPGRADE
!Removed the code actions indicator from the editor gutter; code actions remain accessible via right-click menu or keyboard shortcut.
!Internal dev actions renamed from debug: prefix to dev: prefix: debug::OpenDebugAdapterLogs → dev::OpenDebugAdapterLogs, debug::OpenSyntaxTreeView → dev::OpenSyntaxTreeView, debug::OpenThemePreview → dev::OpenThemePreview, debug::OpenLanguageServerLogs → dev::OpenLanguageServerLogs, debug::OpenKeyContextView → dev::OpenKeyContextView.
Keep the file finder focused on the active file instead of skipping it during search.
json
{
"skip_focus_for_active_in_search": false
}
›Adds workspace.title_bar.show_onboarding_banner preference to hide onboarding banners.
›Adds skip_focus_for_active_in_search setting for the file finder, allowing users to turn off the default behavior of skipping focus on the active file during searches.
›Relocates workspace.show_user_picture preference to workspace.title_bar.show_user_picture.
›Adds ctrl-r keybinding to refresh diagnostics in the project diagnostics editor context.
›Adds editor::GoToParentModule action for rust-analyzer-backed Rust projects.
+8 moreshow less
›Adds support for SOCKS proxy identification and authorization.
›Launches beta for a new integrated debugger (waitlist at zed.dev/debugger).
›Allows Rust diagnostics from Cargo and rust-analyzer to run without mutually locking each other.
›Adds hover state to editor scrollbars.
›Adds icon for the branch switcher in the title bar.
›Adds the ability to dismiss workspace notifications and clear the activity indicator.
›Vim: r enter now maintains indentation, matching Vim behavior.
›Vim: Bash word-based delimiters (do <-> done, then <-> fi, etc.) can now be toggled with %.
└──▷ BREAKING ON UPGRADE
!The workspace.show_user_picture preference is relocated to workspace.title_bar.show_user_picture; configs using the old key must be updated.
Zed v0.185.9 adds an Agent Panel for AI editing, merge conflict resolution, VS Code settings import, and new Git/tab controls.
└──▷ GET THIS VERSION
$ git clone --branch v0.185.9 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:$ git checkout v0.185.9
└──▷ HOW TO FIND IT
Import your existing VS Code settings into Zed without manual re-configuration.
📍zed::ImportVsCodeSettings
Mix untracked and tracked files together in the Git panel diff list, sorted by path.
json
{
"git_panel": {
"sort_by_path": true
}
}
Search across tabs open in all panes and jump to the one you need.
📍tab_switcher::ToggleAll
›Adds zed::ImportVsCodeSettings action to import settings from VS Code.
›Adds tab_switcher::ToggleAll action to search open tabs across all panes and focus the selected one.
›Adds git_panel.sort_by_path setting to mix untracked and tracked files together in the diff list.
›Increases the default value of expand_excerpt_lines from 3 to 5 in the git diff view for more context.
›Introduces the Agent Panel for agentic AI-powered editing.
+7 moreshow less
›Implements initial support for resolving merge conflicts in the editor.
›Adds support for SOCKS4a proxies.
›Linux (X11): Adds support for pasting images from the clipboard.
›Linux: Adds support for F10 toggling of menus.
›Diagnostics now show the diagnostic code when available, display Rust code snippets in monospace font, and no longer merge diagnostics on the same line.
›Vim mode gains AnyQuotes, AnyBrackets, MiniQuotes, and MiniBrackets text objects.
›Allows creating new project panel entries when nothing is selected.
└──▷ BREAKING ON UPGRADE
!Vim: 'Replace with register' is remapped from gr to gR.
KoboldCpp v1.92.1 adds SWA KV-cache mode, DDIM image sampler, Llama4 vision, and broad Kobold Lite enhancements.
└──▷ GET THIS VERSION
$ git clone --branch v1.92.1 https://github.com/LostRuins/koboldcpp.git
# already have the repo? check out this version:$ git checkout v1.92.1
└──▷ TRY IT
Run KoboldCpp with SWA mode to reduce KV cache memory on large context loads, useful when VRAM is a bottleneck.
$ koboldcpp.exe --model mymodel.gguf --useswa
Share a Kobold Lite story as a single URL so collaborators can load it instantly without file transfers.
📍In Kobold Lite, go to Save/Load › Share › Export Share as Web URL to generate a dPaste.org-hosted link.
›Adds --useswa flag to enable Sliding Window Attention (SWA) mode, which significantly reduces KV cache memory usage — note: incompatible with ContextShifting and may degrade output with FastForwarding.
›Disables --showgui automatically when --skiplauncher is used.
›Adds DDIM sampler for image generation.
›Merges Vision support for Llama4 models.
›Adds integrated dPaste.org (open-source pastebin) support in Kobold Lite for sharing save files as a single URL via Save/Load > Share > Export Share as Web URL; self-hosted instances supported by changing the endpoint URL.
+14 moreshow less
›Adds support for RisuAI V3 character cards (.charx archive format) in Kobold Lite.
›Adds TTS option via Pollinations API (routing through OpenAI TTS models) in Kobold Lite.
›Adds ST-based randomizer macros such as {{roll:3d6}} in Kobold Lite.
›SSE streaming is now the default for all cases in Kobold Lite, with an opt-out in Advanced Settings.
›Enables threadpools, delivering a speedup for Qwen3MoE inference.
›Greatly improved tool calling by enforcing grammar on output field names and performing automatic tool selection as a separate pass.
›Adds model size information display in the HF Huggingface Search and download menu.
›Adds a simple optional Python requirements install script in launch.cmd for launching from unpacked directories.
›Adds an option for horizontal stacking of multiple images in one row in Kobold Lite.
›Adds a new Immortal sampler preset in Kobold Lite.
›Adds a debug option to change the connected API at runtime in Kobold Lite.
›In polled streaming mode, Kobold Lite can now fetch the last generated text if a request fails halfway.
›clip_skip value is now stored inside image metadata; actual random seed number is also displayed.
›AI Horde default advertised context now matches the main max context by default.
1 more release in this issue
· 2025-05-10 → 2025-05-24
›Adds --enableguidance flag (or Enable Guidance checkbox in UI) to enable Classifier-Free Guidance (CFG); configure a negative prompt and CFG scale via the lite tokens menu — note CFG doubles KV usage and halves generation speed.
›New Hugging Face Model Search Tool lets users search, browse, and download GGUF models directly from Hugging Face within KoboldCpp before launch.
›Embeds aria2c downloader in Windows builds for high-speed model downloads when using provided URLs.
›Adds CUDA compute capability 3.5 target, potentially enabling GPU acceleration on K6000, GTX 780, and K80 hardware.
›Removes flash attention limits and warnings for Vulkan backends.
+5 moreshow less
›Improved ComfyUI emulation now adapts to any workflow containing a KSampler node connected to a text prompt.
›Corpo mode in Kobold Lite now supports Text mode and Adventure mode in addition to existing modes, making it available across all 4 modes.
›Adds quick save and delete buttons for Corpo mode in Kobold Lite.
›Adds Pollinations.ai as an optional online service for TTS and Image Generation in Kobold Lite.
›Adds a new built-in scenario: Nemesis, in Kobold Lite.
└──▷ BREAKING ON UPGRADE
!KoboldCppAuto replaces the previous default instruct preset in Kobold Lite; existing users relying on the old default instruct format may see different instruct tags applied automatically — switch manually to a preferred format (e.g. Alpaca) if needed.
!Chat 'match any name' is no longer enabled by default in Kobold Lite.
LocalAI v2.29.0 adds video generation endpoint, Qwen3 support, Whisper.cpp GPU acceleration, and auto GPU offload for llama.cpp
└──▷ GET THIS VERSION
$ git clone --branch v2.29.0 https://github.com/mudler/LocalAI.git
# already have the repo? check out this version:$ git checkout v2.29.0
└──▷ TRY IT
Run LocalAI with NVIDIA CUDA 12 GPU support using the new slim image tag (without extra Python deps).
$ docker run -ti--name local-ai -p 8080:8080 --gpus all localai/localai:latest-gpu-nvidia-cuda-12
Run LocalAI with NVIDIA CUDA 12 and extra Python dependencies (e.g., diffusers) using the new -extras image tag.
$ docker run -ti--name local-ai -p 8080:8080 --gpus all localai/localai:latest-gpu-nvidia-cuda-12-extras
›Adds --uninstall flag to install.sh for removing LocalAI installations.
›Introduces experimental /video/generations endpoint for video generation.
›Adds GPU auto-detection and automatic layer offloading for llama.cpp and CLIP backends.
›Enables GPU acceleration for whisper.cpp via cuBLAS (NVIDIA) and Vulkan; SYCL and HIPblas support in progress.
›Adds -extras suffix image tags (e.g., latest-gpu-nvidia-cuda-12-extras) for images carrying extra Python dependencies such as diffusers; default tags are now slim.
+6 moreshow less
›Bundles FFmpeg in all core images, replacing the former -ffmpeg tagged variants.
›Adds new latest-* image tags: latest-gpu-hipblas, latest-gpu-intel-f16, latest-gpu-intel-f32, latest-gpu-nvidia-cuda-12, and latest-gpu-vulkan.
›Adds official support for the Qwen3 model family.
›Expands HIPblas AMD GPU architecture targets to include gfx803, gfx900, gfx906, gfx908, gfx90a, gfx942, gfx1010, gfx1030, gfx1032, gfx1100, gfx1101, and gfx1102.
›Increases gRPC message size limits to 50 MB.
›Adds VRAM usage estimation for llama.cpp.
└──▷ BREAKING ON UPGRADE
!Images with extra Python dependencies (e.g., for diffusers) now require the -extras suffix (e.g., latest-gpu-nvidia-cuda-12-extras); the former default tags no longer include those libraries.
!The separate -ffmpeg image tags have been removed; switch to the corresponding base tag (e.g., latest-gpu-hipblas-ffmpeg becomes latest-gpu-hipblas).
›Automatically estimates VRAM usage for GGUF models and sets gpu-layers based on free VRAM on NVIDIA GPUs; recalculates in real time when ctx-size or cache-type changes in the UI.
›When loading a GGUF model via CLI (e.g. --model model.gguf --ctx-size 32768 --cache-type q4_0), --gpu-layers is now calculated automatically — no manual flag required.
›Adds Tools support for the OpenAI-compatible API.
›Adds the top_n_sigma sampler to the llama.cpp loader.
›Renders max_updates_second obsolete with a new dynamic Chat Message UI update speed that substantially reduces CPU usage in Chat mode.
+4 moreshow less
›Simplifies the Model tab by splitting settings into 'Main options' and 'Other options', with 'Other options' hidden in a closed accordion by default.
›Streamlines the UI in portable builds: hides non-functional items such as training, shows only the llama.cpp loader, and excludes non-working extensions to reduce build size.
›Shows the list of available files when a user attempts to download an entire GGUF repository instead of a specific file.
›Handles short arguments (e.g. ot) in the --extra-flags option for the llama.cpp loader.
oobabooga textgen v3.2 adds Qwen3 thinking toggle, auto API port selection, and verbose llama-server logging
└──▷ GET THIS VERSION
$ git clone --branch v3.2 https://github.com/oobabooga/textgen.git
# already have the repo? check out this version:$ git checkout v3.2
›Adds enable_thinking checkbox under Parameters to enable or disable thinking for Qwen3 models (and future models with the feature); thinking is enabled by default and works via the Jinja2 template.
›Automatically finds a new API port if the default one is already taken.
›Makes --verbose print the llama-server launch command to the console.
›Makes <think> UI blocks closed by default, reducing visual noise from reasoning model output.
›Adds CUDA Graph support for V1 GGUF quantization.
›Supports cache salting to prevent side-channel attacks.
›Adds default local directory LoRA resolver plugin.
›Adds new models: MiMo-7B, MiniMax-VL-01, Ovis 1.6, Ovis 2, GraniteMoeHybrid 4.0, FalconH1 (requires dev transformers), LlamaGuard4.
›Adds embedding models: nomic-embed-text-v2-moe, new class of GTE models.
›Adds DeepSeek Function Call support.
›Adds Multi-Token Prediction (MTP) in V1 for DeepSeek.
›Implements dual-chunk-flash-attn backend for Qwen2.5-1M with sparse attention support.
›Adds video input support for InternVL models with Qwen2.5 backbone.
›Adds Multi-LoRA support on TPU.
›Adds top-logprobs support on TPU.
›Adds NeuronxDistributedInference support, Speculative Decoding, dynamic on-device sampling, Mistral model, and Multi-LoRA for Neuron.
›Enables FP8 KV cache on AMD V1 backend.
›Adds MLA support on AMD.
›Adds Block-Scaled GEMM on AMD.
›Upgrades default wheel from CUDA 12.4 to CUDA 12.8; CUDA 12.6 wheel distributed via GitHub artifact.
›Migrates docs from Sphinx to MkDocs.
└──▷ BREAKING ON UPGRADE
!PyTorch upgraded to 2.7 — existing environment dependencies must be updated; CUDA 12.4 support is removed.
!Default wheel now targets CUDA 12.8 (previously CUDA 12.4); environments pinned to CUDA 12.4 will break on upgrade.
!top_k is now disabled with 0 instead of -1; callers passing -1 still work for now but the canonical value has changed.
!The V1 Engine now defaults to seed 0, changing output determinism behavior for runs that previously relied on non-deterministic sampling across restarts.
ONNX Runtime v1.22.0 adds Model Editor, Compile, and Auto EP APIs plus a new TensorRT RTX execution provider.
└──▷ GET THIS VERSION
$ git clone --branch v1.22.0 https://github.com/microsoft/onnxruntime.git
# already have the repo? check out this version:$ git checkout v1.22.0
›New OrtCompileApi struct enables explicit AOT compilation of ONNX models via a dedicated Compile API.
›New OrtModelEditorApi struct exposes an API for programmatically creating and editing ONNX models in-process.
›Adds Auto EP Selection infrastructure that automatically chooses Execution Providers via configurable selection policies, reducing manual EP configuration.
›Introduces the NV TensorRT RTX Execution Provider, a new EP targeting Nvidia RTX GPUs via TensorRT.
›Adds support for MatMulNBits (8-bit weight-only quantization) in both the CPU/MLAS and CUDA EPs.
+7 moreshow less
›Integrates KleidiAI into ONNX Runtime/MLAS for improved performance on Arm architectures.
›Adds constrained decoding support for generative AI models, giving finer control over output token selection.
›QNN EP gains support for QNN SDK 2.33.2, operator coverage for Sum, Softmax, Upsample, Expand, ScatterND, and Einsum, QnnGpu backend, and the ability to build as a shared or static library.
›TensorRT EP adds support for TensorRT 10.9, a new EP option to enable TRT Preview Features, and support for loading TensorRT V3 plugins.
›OpenVINO EP adds support up to OpenVINO 2025.1, Intel compiler-level optimizations for QDQ models, device selection by LUID, and Load_config support for AUTO, HETERO, and MULTI plugins.
›WebGPU support extended to the Node.js package on Windows and macOS, and enabled when building from source on macOS, Linux, and Windows.
›QNN NuGet package is now built as ARM64x.
└──▷ BREAKING ON UPGRADE
!CUDA 11.x GPU packages are no longer published; only CUDA 12.x packages are available.
!The minimum supported Windows version is now 10.0.19041.
Triton v2.58.0 adds tool calling for Llama 3/Mistral, TensorRT memory strategy config, and expanded GenAI-Perf GPU metrics.
└──▷ GET THIS VERSION
$ git clone --branch v2.58.0 https://github.com/triton-inference-server/server.git
# already have the repo? check out this version:$ git checkout v2.58.0
›Adds execution_context_allocation_strategy optional parameter to TensorRT backend configuration to control memory allocation behavior.
›GenAI-Perf now supports a configuration file as an alternative to command-line arguments.
›GenAI-Perf collects GPU metrics from the /metrics endpoint exposed by DCGM Exporter.
›GenAI-Perf adds support for Power, Utilization, ECC, Errors, and PCIe metrics.
›Adds tool calling support for Llama 3 and Mistral models via the OpenAI frontend.
1 more release in this issue
· 2025-05-12 → 2025-05-31
Triton v2.57.0 adds gRPC infer thread count exposure, BLS decoupled cancellation, and major GenAI-Perf enhancements including config file support and TPS/user metric.
└──▷ GET THIS VERSION
$ git clone --branch v2.57.0 https://github.com/triton-inference-server/server.git
# already have the repo? check out this version:$ git checkout v2.57.0
›Exposes gRPC infer thread count as a configurable server option.
›Adds BLS decoupled request cancellation support in the Python Backend.
›GenAI-Perf now supports a configuration file as an alternative to command-line arguments.
›GenAI-Perf adds support for the Hugging Face TGI (Text Generation Inference) generated endpoint.
›GenAI-Perf adds a Token per Second per User (TPS/user) metric.
+1 moreshow less
›GenAI-Perf metric parsing speed increased by 60%, unlocking faster benchmarking at scale.
Phoenix client 1.9.0 adds a Users REST API and xAI model support in the Playground.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.9.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.9.0
›Adds a Users REST API under the admin surface for programmatic user management.
›Adds xAI as a supported model provider in the Playground for interactive LLM testing.
21 more releases in this issue
· 2025-05-01 → 2025-05-31
Arize Phoenix v10.5.0 adds xAI as a supported provider in the Playground.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.5.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.5.0
›Adds xAI as a supported LLM provider in the Playground for interactive prompt testing.
Phoenix 10.4.0 adds a Helm chart release and a tool-choice selector in the UI.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.4.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.4.0
›Adds a Helm chart release for deploying Arize Phoenix via Kubernetes.
›Adds a tool choice selector (toolChoiceSelect) to the UI for configuring tool-use behavior in the playground.
Arize Phoenix 10.3.0 adds a users REST API for admin management.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.3.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.3.0
›Adds a users REST API under the admin surface for programmatic user management.
Arize Phoenix client v1.8.0 adds DeepSeek model support to the Playground.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.8.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.8.0
›Adds DeepSeek as a supported model provider in the Playground for prompt testing and experimentation.
Phoenix 10.2.0 adds a Helm chart, DeepSeek in Playground, tool-call query presets, and version ID from dataset upload.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.2.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.2.0
›The POST /v1/datasets/upload endpoint now returns a version ID in its response, enabling downstream workflows to reference the exact dataset version just uploaded.
›Adds an initial Helm chart for deploying Phoenix to Kubernetes clusters.
›Adds DeepSeek as a supported model provider in the Playground.
›Adds a predefined query for extracting tool calls from traces, reducing manual query construction.
Phoenix 10.1.0 adds audio/cache token cost visibility, Annotation Summaries, and a new span search route.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.1.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.1.0
›Adds a span search route for querying spans directly.
›Displays audio, cache read, and cache write token counts on the span token tooltip for finer cost visibility.
›Replaces 'My Annotations' with Annotation Summaries, providing aggregated annotation views.
arize-phoenix-otel v0.10.0 adds an option to preserve the default span processor on initialization.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-otel-v0.10.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-otel-v0.10.0
›Adds an option to prevent Phoenix OTel setup from replacing the existing default span processor, allowing custom processors to coexist.
Phoenix v10 adds OAuth2-only authentication mode, requiring a database migration on upgrade.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v10.0.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v10.0.0
›Adds OAuth2-only authentication mode, allowing deployments to enforce OAuth2 as the sole login mechanism.
└──▷ BREAKING ON UPGRADE
!Enabling the OAuth2-only mode requires a database migration — run migrations before starting Phoenix v10.0.0.
Phoenix client v1.7.0 adds a GraphQL query for hourly span count timeseries data.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.7.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.7.0
›Adds a GraphQL query for hourly span count timeseries, enabling time-bucketed span volume analysis.
Phoenix 9.6.0 adds a model cost lookup table and token prompt details on span nodes.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.6.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.6.0
›Adds a model cost lookup table for resolving LLM token costs across models.
›Adds a token prompt details resolver on the span node, exposing cost-related prompt token breakdowns in tracing.
›Adds a TypeScript experiment example demonstrating how to run experiments from TypeScript.
Phoenix 9.5.0 adds dashboard panels and a GraphQL hourly span count timeseries query.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.5.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.5.0
›Adds a GraphQL query for hourly span count timeseries, enabling time-bucketed volume analysis of spans directly via the API.
›Adds dashboard panel support, allowing observability metrics to be composed into panels within Phoenix dashboards.
Arize Phoenix 9.4.0 adds rudimentary dashboard routing to the UI.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.4.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.4.0
›Introduces initial dashboard routes, enabling navigation to dedicated dashboard views within the Phoenix UI.
Arize Phoenix client v1.6.0 exposes experiment API routes in the client library.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.6.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.6.0
›Exposes experiment routes via the client API, enabling programmatic access to experiment functionality.
Phoenix v9.3.0 adds Claude 3.7 support and exposes experiment routes via the API.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.3.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.3.0
›Exposes experiment routes via the API, making experiment data programmatically accessible.
Phoenix 9.2.0 adds UI integrations for Agno, MCP, and Gemini.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.2.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.2.0
›Adds UI integrations for Agno, MCP, and Gemini, enabling trace visualization and observability for these frameworks and services.
Arize Phoenix 9.1.0 adds project list/sort/filter in the UI and hotkey navigation for span details.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.1.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.1.0
›Adds hotkey support in the UI to open individual span details sections directly from the keyboard.
›Adds list, sort, and filter controls for projects in the UI.
Phoenix client v1.5.0 adds span annotation read and write methods for programmatic trace review.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.5.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.5.0
└──▷ USE IT
Pull all annotations for a project's spans into a DataFrame for offline analysis or reporting.
python
import phoenix as px
client = px.Client()
df = client.get_span_annotations_dataframe(project_name="my-project")
›Adds get_span_annotations_dataframe method to the Phoenix client for retrieving span annotations as a DataFrame.
›Adds span annotation POST methods to the Phoenix client, enabling programmatic creation of span annotations.
Phoenix v9.0.0 adds span annotation APIs, trace data retention policies, annotation configs, and JSON dataset uploads.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v9.0.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v9.0.0
└──▷ USE IT
Pull all span annotations for a project into a DataFrame for offline analysis or export.
Phoenix 8.32.0 adds a demo agent project with traces, datasets onboarding improvements, and message_contents support in the playground.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v8.32.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v8.32.0
›Adds support for message_contents span content in the playground, enabling richer message inspection.
›Adds a demo_agent project with pre-loaded traces for onboarding and exploration.
›Adds an empty-state onboarding experience for the datasets section.
Arize Phoenix client v1.4.0 adds SpanQuery DSL and get_spans_dataframe for programmatic span retrieval.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-client-v1.4.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-client-v1.4.0
└──▷ USE IT
Pull filtered spans into a DataFrame for offline analysis or model evaluation pipelines.
python
from phoenix.client import Client
from phoenix.client.resources.spans import SpanQuery
client = Client()
query = SpanQuery().where("span_kind == 'LLM'")
df = client.get_spans_dataframe(query=query)
›Adds SpanQuery DSL to the Phoenix client for building structured span queries programmatically.
›Adds get_spans_dataframe method to the Phoenix client to retrieve spans as a DataFrame.
Arize Phoenix 8.31.0 adds video tutorials to the UI components.
└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v8.31.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:$ git checkout arize-phoenix-v8.31.0
›Adds video support to the tutorials UI component.
Langfuse v3.64.0 adds model prices to the public API, host credentials for S3, and dashboard improvements.
└──▷ GET THIS VERSION
$ git clone --branch v3.64.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:$ git checkout v3.64.0
›Exposes model prices on the public API, so callers can retrieve pricing data alongside model metadata.
›Supports host credentials for the blob storage S3 integration, enabling IAM role-based or instance-profile authentication without explicit key configuration.
›Adds validation and 'run now' actions for blob storage integrations, so operators can test and trigger exports on demand.
›Improves dashboards with mobile view support, a big-number chart type, title/description truncation, and enforced minimum widget height/width.
12 more releases in this issue
· 2025-05-01 → 2025-05-30
Langfuse v3.62.0 adds OpenTelemetry 'event' observation support and AWS S3 SSE configuration for storage interactions.
└──▷ GET THIS VERSION
$ git clone --branch v3.62.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:$ git checkout v3.62.0
›Adds AWS S3 Server-Side Encryption (SSE) configuration support for all S3 interactions, enabling encrypted-at-rest storage for self-hosted deployments.
›Adds support for OpenTelemetry observations of type event, expanding OTEL trace ingestion coverage.
Langfuse v3.59.0 adds Langfuse attribute parsing for OpenTelemetry and raises the default dashboard timeframe to 7 days.
└──▷ GET THIS VERSION
$ git clone --branch v3.59.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:$ git checkout v3.59.0
›Adds Langfuse attribute parsing to the OpenTelemetry (OTEL) ingestion pipeline, enabling richer trace data extraction from OTEL-instrumented applications.
›Increases the default timeframe in custom dashboards to 7 days, giving a broader out-of-the-box view of LLM observability data.
Langfuse v3.58.0 adds dashboard cloning, auto-add widgets on save, and a new env var to show/hide product modules in the UI.
└──▷ GET THIS VERSION
$ git clone --branch v3.58.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:$ git checkout v3.58.0
›Adds LANGFUSE_UI_VISIBLE_PRODUCT_MODULES and LANGFUSE_UI_HIDDEN_PRODUCT_MODULES environment variables to show or hide product modules in the main navigation menu.
›New dashboard widgets are automatically added to the dashboard immediately upon saving, eliminating a manual placement step.
›Adds the ability to clone existing dashboards from the dashboard UI.
›Adds inline documentation hovers on widget properties in the dashboard editor to surface contextual help.
Weave v0.51.48 adds smolagents integration, OTEL chat view, evaluation comparison reports, and a WEAVE_LOG_LEVEL setting.
└──▷ GET THIS VERSION
$ git clone --branch v0.51.48 https://github.com/wandb/weave.git
# already have the repo? check out this version:$ git checkout v0.51.48
└──▷ USE IT
Automatically trace a smolagents agent run and send spans to Weave for inspection.
python
import weave
from weave.integrations.smolagents import WeaveInstrumentor
WeaveInstrumentor().instrument()
weave.init('my-project')
# your smolagents agent code here
›Adds WEAVE_LOG_LEVEL environment variable to control logging verbosity and consolidates terminal output into a common module.
›Implements smolagents integration for tracing smolagents-based workflows.
›Adds first-class descendant_error state to surface errors that occur in child/descendant calls.
›Supports chat view rendering for OpenTelemetry (OTEL) traces in the UI.
›New Evaluation Report feature lets users compare and analyze evaluation results in tabular (pivot) form with regression filters and a callout area on the eval compare page.
+1 moreshow less
›TypeScript SDK: call handles can now be returned from traced functions.
3 more releases in this issue
· 2025-05-07 → 2025-05-23
Weave v0.51.46 adds Mistral chat integration, a saved models frontend, project stats API backend, and an option to disable auto-summarize in imperative evals.
└──▷ GET THIS VERSION
$ git clone --branch v0.51.46 https://github.com/wandb/weave.git
# already have the repo? check out this version:$ git checkout v0.51.46
›Adds option to disable auto-summarize in imperative evaluations via a new parameter on the evaluation call.
›Adds Mistral chat integration (feat(weave): Mistral chat) with tool-calling support including streaming.
›Adds Mistral as a provider option in the playground UI.
Chroma 1.0.8 adds collection forking, Together AI and Cloudflare Worker AI embeddings, pandas export, regex filters, and subset-ID queries in Python and JS.
└──▷ GET THIS VERSION
$ git clone --branch 1.0.8 https://github.com/chroma-core/chroma.git
# already have the repo? check out this version:$ git checkout 1.0.8
└──▷ USE IT
Use the Together AI embedding function when creating a collection.
python
from chromadb.utils.embedding_functions import TogetherAIEmbeddingFunction
ef = TogetherAIEmbeddingFunction(api_key="<YOUR_TOGETHER_API_KEY>", model_name="togethercomputer/m2-bert-80M-8k-retrieval")
collection = client.get_or_create_collection("my_collection", embedding_function=ef)
›Adds query support for filtering on a subset of IDs in both Python and JS clients.
›Adds Together AI embedding function in Python and JS clients.
›Adds Cloudflare Worker AI embedding function.
›Adds to_pandas() (or equivalent) conversion of Get/QueryResult to pandas DataFrames.
›Adds collection forking to the JS client (JS client v2.3.0 / v2.4.0).
+6 moreshow less
›Wires up regex filter from client through to the query node.
›Adds authorization support for the HuggingFace Embedding Server.
›Enables authentication for collection forking operations.
›Turns on SPANN (sparse approximate nearest-neighbor) index by default.
›Adds a browse subcommand to the CLI (CLI v1.1.0).
LanceDB python-v0.22.1 adds tag management, table stats, merge stats, per-write versioning, and a merge_insert timeout parameter.
└──▷ GET THIS VERSION
$ git clone --branch python-v0.22.1 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:$ git checkout python-v0.22.1
└──▷ USE IT
Prevent a long-running merge_insert from hanging indefinitely in a pipeline by setting an explicit timeout.
LanceDB v0.19.1-beta.4 adds a timeout parameter to merge_insert operations.
└──▷ GET THIS VERSION
$ git clone --branch v0.19.1-beta.4 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:$ git checkout v0.19.1-beta.4
›Adds timeout parameter to merge_insert to cap how long a merge-insert operation may run.
LanceDB python-v0.22.1-beta.4 adds a timeout parameter to merge_insert.
└──▷ GET THIS VERSION
$ git clone --branch python-v0.22.1-beta.4 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:$ git checkout python-v0.22.1-beta.4
└──▷ USE IT
Set a timeout on a merge_insert operation to avoid indefinitely blocking pipelines when upserting large batches.
LanceDB v0.19.1-beta.2 adds merge stats from merge operations and version numbers from all write operations.
└──▷ GET THIS VERSION
$ git clone --branch v0.19.1-beta.2 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:$ git checkout v0.19.1-beta.2
›Returns merge statistics from merge operations via new bindings.
›Returns the resulting version number from all write operations.
LanceDB python-v0.22.1-beta.2 adds merge stats and version numbers on all write operations.
└──▷ GET THIS VERSION
$ git clone --branch python-v0.22.1-beta.2 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:$ git checkout python-v0.22.1-beta.2
›Returns the resulting dataset version number for all write operations, enabling callers to track dataset lineage after every write.
›Adds GET /v1/replication/replicate/{id} endpoint to query the status of a replica movement operation by UUID.
›Adds DELETE /replications/replicate endpoint to cancel or delete replication operations.
›Adds transferType parameter to replication API to distinguish between copy and move operations.
›Adds replicate domain to RBAC, enabling access control over replica movement operations.
›Adds minimumOrTokensMatch argument to BM25 keyword search, supporting AND/OR operator semantics via minimum-should-match logic.
+6 moreshow less
›Introduces MUVERA encoding for multi-vector representation, with configurable repetitions.
›Introduces HNSW periodic snapshotting to accelerate index recovery and reduce WAL replay on restart.
›Adds Prometheus metrics for FSM state transitions and replication engine lifecycle callbacks, plus a Grafana dashboard for monitoring the replication engine.
›Adds a shard filter to the node/class status internal and HTTP endpoints for scoped status queries.
›Enables adding new named vectors to existing collections by default, with auto-schema now producing named vectors.
›Allows legacy vector to be referenced as the default named vector in mixed collections.
1 more release in this issue
· 2025-05-07 → 2025-05-30