Skip to content

About

Extensions for Microsoft Agent Framework

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

maf-extensions

Package and Sandbox Validation Python License

Community extensions for Microsoft Agent Framework, maintained by SOKOLAI BV. Not affiliated with or endorsed by Microsoft. Everything here is experimental (0.x): each package warns on import, and every release before 1.0.0 may include breaking changes.

Daily image security — scope and failure policy

See the security documentation for release-specific scan results, artifact verification, tested configurations and remaining gaps, and the security policy for private reporting and supported versions.

Container images

Looking at this README from a GHCR package page? Use the image's consumer guide for its purpose, pull and verification instructions, runtime interface and support boundaries. A visible registry tag does not establish release completion; check the release status and evidence before use.

Image Purpose Consumer documentation
ghcr.io/sokolaidev/maf-extensions/graphviz (0.1.2) Render Graphviz DOT to PNG on Linux/amd64 Graphviz image guide

maf-sandbox

Sandboxed tool execution for agents: validate infrastructure, create diagrams, process files or run generated Python. Workload packages (kinds) describe what a tool needs; the router checks host policy and selects a compatible backend to run it. Backends provide the execution boundary, while the host owns identity, credentials, storage and cleanup policy.

The MAF integration exposes kinds as ordinary tools, keeping the outer tool call on the framework's middleware path for approvals, information-flow policy and budgets. Guest-to-host tools use a separately configured registry. Other frameworks can use the Deep Agents adapter or call the router directly, as the AutoGen sample does. The suite is the reference implementation of microsoft/agent-framework#7568.

Start here

  1. Read the sandbox overview for the architecture and application wiring.
  2. Choose a workload and a compatible backend. The router defaults to a MICROVM isolation floor; Docker, WSLC and Bubblewrap require an explicit CONTAINER floor. Hyperlight runs a packaged Python runtime, without a shell or package installation.
  3. Follow the package README for installation and prerequisites, then run a sample.

Packages

All packages require Python 3.12–3.14. Install the backend and workload or framework adapter your application needs; each package README documents its configuration and runtime requirements.

Package Released What it is Depends on
maf-sandbox PyPI Shared sandbox protocol, routing, policy and MAF integration agent-framework-core (protocol modules are import-clean; the glue imports lazily)
maf-sandbox-acas PyPI MicroVM backend using Azure Container Apps Sandboxes maf-sandbox, azure-core, azure-identity, azure-containerapps-sandbox (preview)
maf-sandbox-bicep PyPI Bicep compilation and linting maf-sandbox, agent-framework-core
maf-sandbox-bubblewrap PyPI Linux namespace and cgroup backend without a container engine maf-sandbox
maf-sandbox-codeact PyPI Python execution with optional files and host tools maf-sandbox, agent-framework-core
maf-sandbox-deepagents PyPI Sandbox integration for LangChain Deep Agents maf-sandbox, deepagents
maf-sandbox-docker PyPI Container backend for Docker-compatible engines maf-sandbox
maf-sandbox-docker-sbx PyPI MicroVM backend on Docker Sandboxes (sbx), local on Windows, macOS and Linux maf-sandbox
maf-sandbox-drawio PyPI Validation and layout of editable draw.io diagrams, with optional PNG/JPG/SVG export maf-sandbox, agent-framework-core
maf-sandbox-hyperlight PyPI Python microVM backend for Windows and Linux maf-sandbox, the matched Hyperlight 0.7.0 Python SDK, Wasm backend and guest
maf-sandbox-otel PyPI OpenTelemetry logs, traces and metrics for sandbox activity maf-sandbox, opentelemetry-api
maf-sandbox-terraform PyPI Offline Terraform and OpenTofu validation and formatting maf-sandbox, agent-framework-core
maf-sandbox-mcp not yet released Supervised MCP worker for closed-network Bicep validation maf-sandbox, Bicep, Docker, MCP
maf-sandbox-tui PyPI Terminal console to inspect and dispose application sandboxes maf-sandbox, textual
maf-sandbox-wslc PyPI Local container backend using WSL's container CLI maf-sandbox
maf-compaction not yet released Prompt-cache-aware compaction strategies, from the compaction family below agent-framework-core
maf-cachebench not yet released The benchmark the compaction strategies were measured with: cost, cache hits and facts kept, on a replayed conversation or a live agent maf-compaction, agent-framework-core, httpx; provider clients as extras
app  ->  maf_sandbox (router)  ->  a backend (maf_sandbox_acas, testing, ...)  ->  the sandbox
              ^ a kind (maf_sandbox_bicep) calls the router; kinds and backends never import each other
              |
              +--> events --> an observer (maf_sandbox_otel) --> OpenTelemetry
                   an observer serves no sandbox and implements no tool: it is registered on
                   the router and the host-tool registry, and only reads what already happened

Samples and integrations

The samples README lists runnable examples and their requirements. Useful entry points include Docker CodeAct, file inputs and artifacts, host tools, Deep Agents, and Terraform/OpenTofu validation.

Use OpenTelemetry to observe sandbox activity and the TUI to inspect application-owned sandboxes. The shared MCP workload service is experimental; its documentation records bounded two-session Gateway evidence and the lifecycle and recovery qualification still pending.

Compaction

maf-compaction is a set of compaction strategies shaped around the provider's prompt cache, and maf-cachebench the benchmark they were measured with. A prompt cache matches on an exact prefix, and every compaction rewrites history inside that prefix, so compaction breaks the cache by construction. These strategies keep a fixed head and tail of the conversation verbatim, change only the band between them, and change it by rules that produce the same bytes on every later turn. The record strategy has the model write the facts from its tool results into a record and drops the tool groups the record covers; the user-turn strategy summarises the user's turns; the composition runs both with a last-resort chain. They were measured against the framework's own strategies with a benchmark that plants facts in tool results and asks for them back after compaction; the compaction overview carries the findings and when to use which, and the package table above carries the release state.

Provenance

Extracted, with their history, from a production agent application where they run today: an advisor that delegates infrastructure work to sub-agents, and needed somewhere safe for those agents' tools to run. Everything here was shaped by that use — the minimum-isolation-floor rule, the label-based purge that survives a multi-replica host, and the compiler-truth validation loop are all answers to problems that showed up in production rather than in design.

About

Extensions for Microsoft Agent Framework

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages