Integration with Azure AI Search for RAG (Retrieval-Augmented Generation) and vector storage. The package depends on azure-search-documents>=12.0.0,<13, which spans both channels, and auto-detects which build is installed — there is no api_version parameter: The provider never pins an api-version; the installed build picks its own default, so newer releases work without code changes (single source of truth = the install). Capability gating keys off previewagenticfeaturesavailable — whether the preview build's agentic symbols (KnowledgeRetrieval{Low,Medium}ReasoningEffort, KnowledgeRetrievalOutputMode) can be imported. Agentic output mode…
agent-framework-azure-contentunderstanding integrates Azure Content Understanding (CU) into the Agent Framework as a context provider. It automatically analyzes file attachments (documents, images, audio, video) and injects structured results into the LLM context. - **contextprovider.py** — Main provider implementation. Overrides before_run() to detect file attachments, call the CU API, manage session state with multi-document tracking, and auto-register retrieval tools for follow-up turns. - Analyzer auto-detection — When analyzer_id=None (default), resolveanalyzer_id() selects the CU analyzer based on media type prefix: audio/ → prebuilt-audioSearch,…
Azure Cosmos DB for NoSQL integrations for Agent Framework. Container name is configured on the provider. session_id is used as the partition key. Vector collections require an application-provided string key stored as id and a container partition key of /id. Container vector and indexing policies are created only by ensurecollectionexists() and validated before use. Existing incompatible containers are never updated or recreated. Supported vector element types are float32, int8, and uint8. Euclidean search is supported, but Euclidean score thresholds fail…
Long-term semantic memory for agents, backed by Azure Cosmos DB via the Azure Cosmos DB Agent Memory Toolkit. - CosmosMemoryContextProvider - Context provider that integrates Cosmos DB-backed semantic memory (facts, procedural/episodic memories, and user/thread summaries) into agents. - Requires the azure-cosmos-agent-memory toolkit and an AI Foundry endpoint (used for both embeddings and fact extraction). - Set a stable userid in state["userid"] or session.state["user_id"] for long-term, cross-session memory. Without it, memory scopes to the ephemeral session id and the provider logs…
Integration with Anthropic Claude as a managed agent (Claude Agent SDK). This package is for Claude's managed agent functionality. For basic Claude chat, use agent-framework-anthropic instead.
The foundation package containing all core abstractions, types, and built-in OpenAI/Azure OpenAI support. - agentframework.init_ uses lazy module-level getattr for most public exports to keep cold import agent_framework lightweight. - Keep LAZYMODULE_EXPORTS, LAZYEXPORTS, the explicit runtime all, and init.pyi synchronized whenever adding, removing, or moving a root public export. - Runtime all is still required for from agent_framework import *; the .pyi file is for type checkers and editors and does not replace runtime exports. - Public deprecation behavior for…
YAML/JSON-based declarative agent and workflow definitions. DefaultMCPToolHandler caches/coalesces sessions only without a client_provider. With a provider, every invocation (including tools/list) gets a fresh tool/session, even if the provider returns None or a shared HTTP client. Invocation cleanup closes the session and any internally owned fallback client, never caller-owned HTTP clients. Shutdown waits for active provider-backed invocations to clean up. Calling aclose() from an active invocation's context (including inherited child tasks and cleanup) raises RuntimeError before changing handler state; shutdown must…
Interactive developer UI for testing and debugging agents and workflows. Text content carrying additionalproperties["modeloutput_kind"] == "refusal" is mapped to native Responses refusal parts and events. Mapper aggregation, live rendering, and recovery state retain text/refusal boundaries by item and content index. DevUI is a development-only sample app, not a production hosting surface. Authentication is enabled by default. Unauthenticated mode is allowed only on localhost / 127.0.0.1; 0.0.0.0, LAN IPs, and hostnames require DEVUIAUTHTOKEN or --auth-token.
Integration with GitHub Copilot extensions. buildsessionkwargs forwards options to the SDK verbatim except for a few keys that get an explicit default: onpermissionrequest (deny-all) and enablefilehooks (False, so a session behaves the same way in every working directory). Callers opt in through defaultoptions or per-run options. Keep such defaults to options the working directory controls: options that only shape prompt context (for example enablehostgit_operations) are deliberately left alone. When the agent applies the enablefilehooks default and the working directory actually…
Conversion and native card-generation helpers for hosting Agent Framework agents and workflows through an application-owned A2A server. - a2atorun(message, *, stream=False) converts an A2A Message to AgentRunArgs; pass inputmodes for optional advertised-mode validation. - a2afromrun(result) converts an Agent Framework response, message, or streaming update to A2A Part values; pass outputmodes for optional advertised-mode validation. - await AgentA2AAdapter(target, ...).getcard() creates a native AgentCard from an agent or AgentState, target metadata, and explicit A2A discovery policy. The adapter also re-exposes a2atorun(...) and…
Side-effect-free adapters and conversion helpers for hosting Agent Framework agents and workflows through the native MCP SDK. - AgentMCPTool(target, ...) generates one native MCP Tool from an agent, converts and executes calls, and optionally persists sessions through an existing AgentState. - WorkflowMCPTool(target, ...) derives one native MCP Tool from a workflow's single start-executor input type and converts completed workflow outputs. - mcptorun(arguments, *, argumentname="task", chatoptionarguments=()) converts MCP tool arguments to AgentRunArgs and copies only explicitly selected arguments into chat options.…
Experimental packages for cutting-edge features including benchmarking, reinforcement learning, and research initiatives. This package contains experimental sub-packages: Lab packages are experimental and may change frequently. They are not included in the standard agent-framework[all] installation. Lab is a standalone uv project, excluded from the root python workspace so its experimental dependencies do not constrain released provider packages. It resolves released Core and provider distributions by default. Run dependency and validation commands from python/packages/lab. Lab code must use APIs available in published…
Integration with Mem0 for agent memory management. - applicationid / agentid / user_id are the storage scope stamped on written memories. - searchapplicationid / searchagentid / searchuserid are the retrieval scope. - Retrieval scope never defaults to the storage scope. With no search* value set, beforerun retrieves nothing and logs a warning. This prevents memories written under a shared agent_id from being retrieved for every user of that agent. Mem0 telemetry is disabled by default. Set MEM0_TELEMETRY=true to enable.
Monty-backed CodeAct integrations for the Microsoft Agent Framework. [!NOTE] Beta package. Included in agent-framework[all] and available through the lazy-loading namespace agent_framework.monty. - MontyCodeActProvider — ContextProvider that injects a run-scoped execute_code tool plus dynamic CodeAct instructions. Mirrors the HyperlightCodeActProvider API for the parts that apply to a non-sandboxed Python interpreter. - MontyExecuteCodeTool — FunctionTool that wraps the Monty interpreter. Use directly for mixed-tool agents or manual static wiring. Mirrors HyperlightExecuteCodeTool. MontyCodeActProvider and MontyExecuteCodeTool both accept: - tools — host tool callables…