Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Python authoring package and CLI launcher for Managed Deep Agents.

[!IMPORTANT] Active development / private beta. Managed Deep Agents is in active development and currently in private beta. The PyPI package API and managed runtime contract may change. Join the waitlist for access and updates.

managed-deepagents is the PyPI package for authoring Managed Deep Agents in Python. It includes:

  • define_deep_agent, the Python authoring contract for managed agents.
  • define_schedule, the Python contract for managed cron schedules.
  • mda, the CLI used to build and deploy your agent to LangSmith.
  • managed_deepagents.runtime, the runtime helper used by generated managed entry modules.

Install

uv tool install managed-deepagents

[!NOTE] Private beta: dev releases only. We currently publish only PEP 440 pre-release (dev) versions and no stable version yet. uv skips pre-releases by default unless they are allowed explicitly:

uv tool install --prerelease allow managed-deepagents

This package requires Python 3.9 or newer. Each platform wheel bundles the prebuilt mda binary for its OS and CPU architecture and exposes it through the mda console script. This PyPI-installed CLI scaffolds and compiles Python projects only and vendors the Python runtime bundled with this wheel.

To start a new project:

mda init my-agent
cd my-agent
uv sync

Define an Agent

Create an agent.py that defines an agent:

from managed_deepagents import define_deep_agent

# The system prompt comes from instructions.md next to this file.
agent = define_deep_agent(
    name="research-assistant",
    model="openai:gpt-5.5",
    tools=[query_db],
)

define_deep_agent requires a static name (LangGraph assistant id and default LangSmith deployment name) and otherwise accepts the create_deep_agent keyword surface minus the managed keys: backend, store, checkpointer, memory, skills, and system_prompt. Those are provided by the managed runtime when your agent is deployed. Write the system prompt in instructions.md next to agent.py; the CLI embeds it at deploy time.

On deploy, Context Hub stores harness files (instructions.md, skills/**) plus a shared agent memory template and optional org-memory/** in the deployment Hub repo. When identity scopes memory to an actor or tenant, the runtime opens a dedicated Hub repo per caller (lazy-created) and mounts it at /memories/user/; shared agent memory still remounts a path in the deployment repo. Hot memory (/memories/user/AGENTS.md) is injected every turn. Optional org facts mount read-only at /memories/org/. Deploy never overwrites existing memories.

Project Shape

my-agent/
  agent.py              # named `agent` variable
  instructions.md       # managed system prompt
  pyproject.toml
  .env                  # local deploy secrets, never committed
  schedules/            # optional managed cron schedules
  tools/                # optional custom tools
  middleware/           # optional middleware
  skills/               # optional skills synced to Context Hub
  sandbox/              # LangSmith sandbox (`mda init` includes this; delete to opt out)
  connectors/mcp.py     # optional MCP server declaration

The CLI copies your project files into the managed build and generates the entry module that connects your definition to the hosted runtime.

The agent entry must live at the project root as agent.py.

Define a Schedule

Create one file per schedule under schedules/ and define a named schedule:

# schedules/daily_digest.py
from managed_deepagents import define_schedule

schedule = define_schedule(
    cron="0 8 * * 1-5",
    timezone="America/Los_Angeles",
    prompt="Write the daily digest.",
)

mda deploy reconciles schedules as LangSmith cron jobs after the deployment is live. Declarations must be statically serializable literals or top-level constants; prompt schedules become user-message input, and stateless runs clean up their temporary thread after completion.

Sandbox

mda init scaffolds sandbox/__init__.py with a LangSmith sandbox. MDA only enables the sandbox when that declaration is present — delete sandbox/ to opt out:

from deepagents.backends import LangSmithSandbox
from managed_deepagents import define_sandbox

sandbox = define_sandbox(
    LangSmithSandbox,
    scope="thread",
    idle_ttl_seconds=600,
)

If sandbox/setup.sh exists, MDA embeds it and runs it once when the sandbox is first provisioned. MDA owns sandbox naming, image/snapshot selection, reuse, and lifecycle.

MCP Connectors

Add connectors/mcp.py to attach MCP servers. The file must define a named mcp declaration. By default, MDA exposes every tool loaded from each declared server:

from managed_deepagents.connectors import define_mcp_servers

mcp = define_mcp_servers(
    mcp_servers={
        "langchainDocs": {
            "transport": "http",
            "url": "https://docs.langchain.com/mcp",
            "include_tools": ["search", "fetch"],
        },
    },
)

Use include_tools or exclude_tools inside a server config to select a subset. Tool names are raw MCP tool names before the managed {server}__ prefix is applied, so "include_tools": ["search"] on server langchainDocs exposes langchainDocs__search when prefixing is enabled.

CLI

Create a new project:

mda init my-agent

Build locally:

mda build ./my-agent

Run on the local LangGraph dev server:

mda dev ./my-agent

mda dev requires uv on PATH, but it resolves the local LangGraph dev server automatically; you do not need to install a global langgraph command.

Deploy to LangSmith:

mda deploy ./my-agent

The generated build is written to <root>/.mda/build by default.

Common deploy options:

mda deploy ./my-agent --name my-agent-dev --deployment-type dev
mda deploy ./my-agent --tenant-id "$LANGSMITH_TENANT_ID"
mda deploy ./my-agent --no-wait

Before deploying, make sure LANGSMITH_API_KEY and your model provider key such as OPENAI_API_KEY or ANTHROPIC_API_KEY are available in the project .env, the process environment, or LangSmith workspace secrets. Use LANGSMITH_TENANT_ID or --tenant-id when your LangSmith API key requires a workspace/tenant selection.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

managed_deepagents-0.5.0.dev79-py3-none-win_arm64.whl (3.7 MB view details)

Uploaded Python 3Windows ARM64

managed_deepagents-0.5.0.dev79-py3-none-win_amd64.whl (3.8 MB view details)

Uploaded Python 3Windows x86-64

managed_deepagents-0.5.0.dev79-py3-none-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

managed_deepagents-0.5.0.dev79-py3-none-macosx_10_12_x86_64.whl (1.9 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-win_arm64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 34beda346057bf47f5bfe13f5054aeba254f516d079c8f0ae09d4c9028f61012
MD5 cd047019d9cb2b92a972a4d2bb08903e
BLAKE2b-256 1bd27b1a97e53dbcb3e7aa7c457df92cb3b5652bdf2f7b492695c87d643e5085

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-win_arm64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 b5265ffbdd9ff30d03c9bbcbf5df7e0bdc6039f80cf8e44826a111a5121dad94
MD5 a0e40dc17a9b1f3634f0e23c49a41b64
BLAKE2b-256 0eb4790045bbcd8213cdade477912f17be56b9205d74bf8ece29207e3ff64406

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-win_amd64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa3dbfc63424bbbe3f79583b83b3880eaef135affd07e14f148aa9e99cd06c23
MD5 14b435c571ece0aca039c75411e0f27d
BLAKE2b-256 e376fd4f6062bb39bc078c7be408e1ffacb3f4095344b7ce2a660603a2349ffa

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_x86_64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8267e9010e6a164c85fe60dd9286e883a7d874bac8b90eef725bf174a8ea881d
MD5 129e57054daf79b297f153c0714f5512
BLAKE2b-256 b3596aa032f03803d9ab0af810c9dbcdec1789a726d2c50ce6fd1d76d78661cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-manylinux2014_aarch64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 959aa1afaf087464319a83213e1b0041f100caeb9bc08c20bc171ed25b155e08
MD5 7201bbeaab4243476f57da66b21561a2
BLAKE2b-256 46d76465b760657e8dce6aa5bc2acc162d14f96da4d03d6e8f4d6213242081b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file managed_deepagents-0.5.0.dev79-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for managed_deepagents-0.5.0.dev79-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 02746890091fd7455b43250da8521dca052d0823605f3c35b95953e359ce544a
MD5 978d309dfd1a3b5e9e1d63cfe9c96d3b
BLAKE2b-256 d7e09ce7eb5b544e22dc9c65367f91e4538812c6e0703275bc3f6b568d36a162

See more details on using hashes here.

Provenance

The following attestation bundles were made for managed_deepagents-0.5.0.dev79-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on langchain-ai/managed-deepagents-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page