[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-langchain-managed-deep-agents":3,"mdc-9f2xax-key":37,"related-org-langchain-managed-deep-agents":3947,"related-repo-langchain-managed-deep-agents":4122},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":27,"repoUrl":28,"updatedAt":29,"license":30,"forks":31,"topics":32,"repo":33,"sourceUrl":35,"mdContent":36},"managed-deep-agents","operate managed deep agents via LangSmith","INVOKE THIS SKILL when building, testing, or deploying Managed Deep Agents in LangSmith with the mda CLI. Covers the code-first, file-based project layout; define_deep_agent \u002F defineDeepAgent; authored tools and middleware; MCP connectors; cron schedules; skills; sandboxes; mda init\u002Fdev\u002Fdeploy; Context Hub; and human-in-the-loop interrupts in Python and TypeScript.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"langchain","LangChain","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Flangchain.png","langchain-ai",[13,15,18,21,24],{"name":9,"slug":8,"type":14},"tag",{"name":16,"slug":17,"type":14},"REST API","rest-api",{"name":19,"slug":20,"type":14},"Agents","agents",{"name":22,"slug":23,"type":14},"LangSmith","langsmith",{"name":25,"slug":26,"type":14},"Multi-Agent","multi-agent",877,"https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Flangchain-skills","2026-05-22T06:55:12.042022",null,77,[],{"repoUrl":28,"stars":27,"forks":31,"topics":34,"description":30},[],"https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Flangchain-skills\u002Ftree\u002FHEAD\u002Fconfig\u002Fskills\u002Fmanaged-deep-agents","---\nname: managed-deep-agents\ndescription: \"INVOKE THIS SKILL when building, testing, or deploying Managed Deep Agents in LangSmith with the mda CLI. Covers the code-first, file-based project layout; define_deep_agent \u002F defineDeepAgent; authored tools and middleware; MCP connectors; cron schedules; skills; sandboxes; mda init\u002Fdev\u002Fdeploy; Context Hub; and human-in-the-loop interrupts in Python and TypeScript.\"\n---\n\n# Managed Deep Agents\n\n## Overview\n\nManaged Deep Agents is a hosted runtime for deploying and operating code-first Deep Agents in LangSmith. You author an agent in Python or TypeScript, then use the `mda` CLI to test it locally and deploy it to the managed runtime. It pairs the open-source Deep Agents harness (see [[deep-agents-core]]) with managed infrastructure: durable runs, LangSmith sandboxes, Context Hub-backed instructions, skills, memory, traces, and hosted LangGraph deployment.\n\nThe core idea is that **an agent is a directory**. A file's location determines its role, and the CLI compiles that directory into a managed LangGraph app. There is no API-driven create\u002Fupdate\u002Finvoke flow during private beta: you write code and run `mda deploy`.\n\n## When to use\n\nUse this skill when the user wants to:\n\n- Build a Deep Agent in code (Python or TypeScript) and deploy it to LangSmith without standing up their own server.\n- Add authored tools, middleware, MCP connectors, cron schedules, skills, or a sandbox to a managed agent.\n- Test an agent locally with `mda dev` and deploy it with `mda deploy`.\n- Understand what the managed runtime owns versus what the author configures.\n\nUse a standard LangSmith Deployment (see [[langgraph-cli]], `langgraph deploy`) instead when the user needs custom application code, custom routes, advanced authentication, stronger isolation, maximum scalability, or a region other than US LangSmith Cloud.\n\n## Prerequisites\n\n- Managed Deep Agents private beta access in the target LangSmith workspace.\n- A LangSmith API key for that workspace.\n- Python and `uv` for Python projects, or Node.js and npm for TypeScript projects.\n- A model provider API key.\n\nInstall the `mda` CLI. Both packages ship the same CLI:\n\n```bash\npip install --pre managed-deepagents        # Python\nnpm install -g managed-deepagents@dev        # TypeScript\n```\n\nSet the LangSmith API key in the project `.env` or the shell:\n\n```bash\nexport LANGSMITH_API_KEY=\"\u003CLANGSMITH_API_KEY>\"\n```\n\nManaged Deep Agents is CLI-first during private beta and runs on US LangSmith Cloud only. Self-hosted and Hybrid are not supported.\n\n## Project layout\n\nThe path passed to `mda dev` or `mda deploy` is the project root. A file's location determines its role:\n\n```text\nmy-agent\u002F\n  agent.py | agent.ts | agent.tsx          # Required: exports the named `agent`\n  instructions.md                          # Managed system prompt, synced to Context Hub\n  pyproject.toml | package.json            # Project dependencies\n  .env                                     # Deploy auth + runtime secrets (never archived)\n  tools\u002F                                   # Authored LangChain tools the agent imports\n  middleware\u002F                              # Authored middleware the agent imports\n  connectors\u002Fmcp.py | connectors\u002Fmcp.ts    # Remote MCP server declarations\n  schedules\u002F\u003Cname>.py | \u003Cname>.ts          # Managed cron schedules\n  skills\u002F\u003Cname>\u002FSKILL.md                   # Deploy-owned skills, synced to Context Hub\n  sandbox\u002F__init__.py | sandbox\u002Findex.ts   # Managed sandbox configuration\n  sandbox\u002Fsetup.sh                         # Sandbox provisioning script (runs once)\n```\n\nOnly the agent entry is required. It must export a named `agent` created with `define_deep_agent` \u002F `defineDeepAgent`. The `tools\u002F` and `middleware\u002F` folders are conventions, not special registries: MDA copies project files verbatim, so any local module the agent imports works. The other files take on managed meanings when present.\n\nScaffold a project with `mda init \u003Cname>`; the CLI detects the language from `pyproject.toml` or `package.json`, or prompts.\n\n## Define the agent\n\nThe agent entry returns a pre-runtime spec, not a compiled graph. The managed runtime injects the backend, store, checkpointer, memory, skills, and system prompt at deploy time, so do not set those.\n\n```python\n# agent.py\nfrom managed_deepagents import define_deep_agent\n\nfrom tools.query_db import query_db\n\nagent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    tools=[query_db],\n)\n```\n\n```ts\n\u002F\u002F agent.ts\nimport { defineDeepAgent } from \"managed-deepagents\";\n\nimport { queryDB } from \".\u002Ftools\u002Fquery-db\";\n\nexport const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  tools: [queryDB],\n});\n```\n\n**Author-set fields:** `model`, `tools`, `middleware`, `subagents`, `permissions`, `interrupt_on` \u002F `interruptOn`, `response_format` \u002F `responseFormat`, `context_schema` \u002F `contextSchema`, `name`, `cache`, `debug`, `disable_memory` \u002F `disableMemory`.\n\n**Managed fields (do not set):** `backend`, `store`, `checkpointer`, `memory`, `skills`, `system_prompt` \u002F `systemPrompt`. Configure the system prompt in `instructions.md`, connectors in `connectors\u002Fmcp.*`, schedules in `schedules\u002F**`, skills in `skills\u002F**`, and the sandbox under `sandbox\u002F`.\n\nModel identifiers use the `{provider}:{model_id}` form, for example `openai:gpt-5.5`. The runtime resolves them with `init_chat_model`, so any `init_chat_model` provider works.\n\n## Instructions\n\nPut the system prompt in `instructions.md` next to the agent entry:\n\n```markdown\n# Research assistant\n\nYou are a careful research assistant. Find sources, keep notes, and return\nconcise answers with citations.\n```\n\n`mda dev` embeds it into the generated local entry. `mda deploy` syncs it to Context Hub, and the deployed runtime reads it from there.\n\n## Authored tools\n\nDefine tools in the project and import them into the agent entry. The runtime keeps authored tools in the bounded agent execution surface.\n\n```python\n# tools\u002Fquery_db.py\nfrom langchain.tools import tool\n\n\n@tool(parse_docstring=True)\ndef query_db(query: str) -> str:\n    \"\"\"Run a read-only SQL query against the application database.\n\n    Args:\n        query: A read-only SQL query to execute.\n    \"\"\"\n    return f\"Ran query: {query}\"\n```\n\n```ts\n\u002F\u002F tools\u002Fquery-db.ts\nimport { tool } from \"langchain\";\nimport { z } from \"zod\";\n\nexport const queryDB = tool(\n  async ({ query }) => `Ran query: ${query}`,\n  {\n    name: \"query_db\",\n    description: \"Run a read-only SQL query against the application database.\",\n    schema: z.object({ query: z.string().describe(\"A read-only SQL query.\") }),\n  },\n);\n```\n\nTools read deployment secrets from environment variables. Put local values in `.env`; deploy forwards non-reserved `.env` values as hosted secrets.\n\n## Middleware\n\nMiddleware wraps model and tool calls for cross-cutting behavior (logging, PII redaction, retries, limits). Order is explicit in the `middleware` list; MDA never infers it. Pass prebuilt LangChain middleware or author your own (see [[langchain-middleware]]).\n\n```python\n# agent.py\nfrom langchain.agents.middleware import ModelCallLimitMiddleware, PIIMiddleware\nfrom managed_deepagents import define_deep_agent\n\nagent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    middleware=[\n        PIIMiddleware(\"email\", strategy=\"redact\"),\n        ModelCallLimitMiddleware(run_limit=50),\n    ],\n)\n```\n\n```ts\n\u002F\u002F agent.ts\nimport { defineDeepAgent } from \"managed-deepagents\";\nimport { modelCallLimitMiddleware, piiMiddleware } from \"langchain\";\n\nexport const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  middleware: [\n    piiMiddleware(\"email\", { strategy: \"redact\" }),\n    modelCallLimitMiddleware({ runLimit: 50 }),\n  ],\n});\n```\n\n## MCP connectors\n\nDeclare remote MCP servers in `connectors\u002Fmcp.py` or `connectors\u002Fmcp.ts` with a named `mcp` export. MDA loads their tools at runtime and appends them to authored tools, prefixing tool names with the server name by default.\n\n```python\n# connectors\u002Fmcp.py\nfrom managed_deepagents.connectors import define_mcp_servers\n\nmcp = define_mcp_servers(\n    mcp_servers={\n        \"langchainDocs\": {\"transport\": \"http\", \"url\": \"https:\u002F\u002Fdocs.langchain.com\u002Fmcp\"},\n    },\n)\n```\n\n```ts\n\u002F\u002F connectors\u002Fmcp.ts\nimport { defineMcpServers } from \"managed-deepagents\";\n\nexport const mcp = defineMcpServers({\n  mcpServers: {\n    langchainDocs: { transport: \"http\", url: \"https:\u002F\u002Fdocs.langchain.com\u002Fmcp\" },\n  },\n});\n```\n\nOnly remote `http` and `sse` transports are supported. Stdio servers are rejected. Configuration is validated eagerly at build or dev startup. Store any OAuth or header tokens in `.env` and reference them from the connector.\n\n## Schedules\n\nDeclare managed cron schedules under `schedules\u002F`, one named `schedule` export per file. Deploy reconciles them into LangSmith cron jobs after the deployment is live.\n\n```python\n# schedules\u002Fdaily_digest.py\nfrom managed_deepagents import define_schedule\n\nschedule = define_schedule(\n    cron=\"0 8 * * 1-5\",\n    timezone=\"America\u002FLos_Angeles\",\n    prompt=\"Summarize what you learned yesterday and list open questions.\",\n)\n```\n\n```ts\n\u002F\u002F schedules\u002Fdaily-digest.ts\nimport { defineSchedule } from \"managed-deepagents\";\n\nexport const schedule = defineSchedule({\n  cron: \"0 8 * * 1-5\",\n  timezone: \"America\u002FLos_Angeles\",\n  prompt: \"Summarize what you learned yesterday and list open questions.\",\n});\n```\n\nProvide either `prompt` or a structured `input`, not both. Set `thread.mode` to `ephemeral` (cleaned up after the run) or `persistent` (reuses a stable `thread.id` so state accumulates). Schedule declarations must be static literals, not values computed from env vars or function calls.\n\n## Sandboxes\n\nConfigure a sandbox when the agent needs isolated code execution or filesystem work. Export `sandbox` from `sandbox\u002Findex.ts` or `sandbox\u002F__init__.py`.\n\n```python\n# sandbox\u002F__init__.py\nfrom managed_deepagents import define_sandbox\nfrom deepagents.backends import LangSmithSandbox\n\nsandbox = define_sandbox(\n    LangSmithSandbox,\n    scope=\"thread\",\n    idle_ttl_seconds=600,\n    default_timeout=600,\n)\n```\n\n```ts\n\u002F\u002F sandbox\u002Findex.ts\nimport { defineSandbox } from \"managed-deepagents\";\nimport { LangSmithSandbox } from \"deepagents\";\n\nexport const sandbox = defineSandbox(LangSmithSandbox, {\n  scope: \"thread\",\n  idleTtlSeconds: 600,\n  defaultTimeout: 600,\n});\n```\n\n`scope` is `thread` (one sandbox per conversation) or `agent`. If `sandbox\u002Fsetup.sh` exists, MDA runs it once when a new sandbox is provisioned. During `mda dev`, the runtime falls back to a local temp-directory sandbox when provider credentials are unavailable; the fallback is for development only.\n\n## Skills\n\nPut deploy-owned skills under `skills\u002F\u003Cname>\u002FSKILL.md`. Deploy syncs `skills\u002F**` to Context Hub and deletes deployed skills that no longer exist locally. Each skill is a markdown file with `name` and `description` frontmatter that the agent loads on demand.\n\n## CLI commands\n\n| Command | Use |\n| --- | --- |\n| `mda init \u003Cname>` | Scaffold a Python or TypeScript project. |\n| `mda dev [path]` | Compile into `.mda\u002Fbuild` and run the local LangGraph dev server in LangSmith Studio. Flags: `--port`, `--hostname`, `--browser`, `--no-reload`. |\n| `mda deploy [path]` | Compile, sync Context Hub, upload, and deploy. Flags: `--name`, `--deployment-type dev\\|prod`, `--tenant-id`, `--host-url`, `--no-wait`. |\n\nFor Python projects, run `uv sync` inside the generated project before `mda dev`. Authentication resolves in order: `LANGGRAPH_HOST_API_KEY`, `LANGSMITH_API_KEY`, `LANGCHAIN_API_KEY`, read from `.env` first, then the shell.\n\n## Deploy and Context Hub\n\n`mda deploy` compiles the project into `.mda\u002Fbuild` (copying your code verbatim, generating a managed LangGraph entry, excluding `node_modules`, `.git`, `.mda`, `memories`, `dist`, `build`, and `.env*`), then:\n\n1. Resolves the LangSmith key and verifies the model provider key is available.\n2. Forwards non-reserved `.env` values (provider keys, MCP tokens, database URLs) as hosted deployment secrets. The `.env` file is never uploaded.\n3. Syncs `instructions.md` and `skills\u002F**` to the deployment's Context Hub repo, preserving runtime memory.\n4. Uploads the build, triggers a hosted build, and waits until the revision is `DEPLOYED` (unless `--no-wait`).\n5. Reconciles managed cron jobs from `schedules\u002F**`.\n\nContext Hub stores `\u002Finstructions.md` and `\u002Fskills\u002F**` (deploy-owned) and `\u002Fmemories\u002FAGENTS.md` (runtime-owned, durable across deploys). Set `disable_memory=True` \u002F `disableMemory: true` to turn off managed agent memory.\n\nInspect build status, revisions, and traces on the deployment page in LangSmith.\n\n## Human-in-the-loop\n\nPause before sensitive tool calls with `interrupt_on` \u002F `interruptOn` (and gate access with `permissions`). See [[langgraph-human-in-the-loop]] for interrupt and resume semantics.\n\n```python\nagent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    tools=[query_db],\n    interrupt_on={\"query_db\": True},\n)\n```\n\n```ts\nexport const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  tools: [queryDB],\n  interruptOn: { query_db: true },\n});\n```\n\nWhen a run hits an interrupt, it pauses. During `mda dev`, respond to it in LangSmith Studio. On a deployed agent, resume through the LangGraph server API with a `Command(resume=...)` payload. During private beta, programmatic invocation from your own application is contact-your-team.\n\n## Gotchas\n\n- **Use the `mda` CLI**, not the older `deepagents` CLI or the removed `Client` SDK \u002F `\u002Fv1\u002Fdeepagents` REST surface. During private beta there is no public create\u002Fupdate\u002Finvoke API.\n- **Do not set managed fields** (`backend`, `store`, `checkpointer`, `memory`, `skills`, system prompt) in the agent definition; the runtime owns them.\n- **Model IDs need the provider prefix**: `openai:gpt-5.5`, not a bare model name.\n- **MCP connectors support `http` and `sse` only**; stdio is rejected, and misconfiguration surfaces at build or dev startup.\n- **`.env` is never archived**; deploy forwards non-reserved values as hosted secrets. Do not commit real secrets.\n- **Schedule declarations must be static literals**; the compiler extracts them without running your code.\n- **Private beta scope**: US LangSmith Cloud only, CLI-first. Self-hosted and Hybrid are not supported.\n",{"data":38,"body":39},{"name":4,"description":6},{"type":40,"children":41},"root",[42,50,57,72,93,99,104,143,156,162,193,205,278,291,334,339,345,364,374,419,447,453,458,546,772,895,993,1028,1034,1046,1091,1108,1114,1119,1222,1600,1619,1624,1636,1725,2047,2053,2081,2150,2352,2378,2384,2405,2474,2670,2723,2729,2756,2841,3066,3106,3111,3145,3151,3300,3349,3355,3423,3500,3543,3548,3554,3579,3622,3756,3776,3782,3941],{"type":43,"tag":44,"props":45,"children":46},"element","h1",{"id":4},[47],{"type":48,"value":49},"text","Managed Deep Agents",{"type":43,"tag":51,"props":52,"children":54},"h2",{"id":53},"overview",[55],{"type":48,"value":56},"Overview",{"type":43,"tag":58,"props":59,"children":60},"p",{},[61,63,70],{"type":48,"value":62},"Managed Deep Agents is a hosted runtime for deploying and operating code-first Deep Agents in LangSmith. You author an agent in Python or TypeScript, then use the ",{"type":43,"tag":64,"props":65,"children":67},"code",{"className":66},[],[68],{"type":48,"value":69},"mda",{"type":48,"value":71}," CLI to test it locally and deploy it to the managed runtime. It pairs the open-source Deep Agents harness (see [[deep-agents-core]]) with managed infrastructure: durable runs, LangSmith sandboxes, Context Hub-backed instructions, skills, memory, traces, and hosted LangGraph deployment.",{"type":43,"tag":58,"props":73,"children":74},{},[75,77,83,85,91],{"type":48,"value":76},"The core idea is that ",{"type":43,"tag":78,"props":79,"children":80},"strong",{},[81],{"type":48,"value":82},"an agent is a directory",{"type":48,"value":84},". A file's location determines its role, and the CLI compiles that directory into a managed LangGraph app. There is no API-driven create\u002Fupdate\u002Finvoke flow during private beta: you write code and run ",{"type":43,"tag":64,"props":86,"children":88},{"className":87},[],[89],{"type":48,"value":90},"mda deploy",{"type":48,"value":92},".",{"type":43,"tag":51,"props":94,"children":96},{"id":95},"when-to-use",[97],{"type":48,"value":98},"When to use",{"type":43,"tag":58,"props":100,"children":101},{},[102],{"type":48,"value":103},"Use this skill when the user wants to:",{"type":43,"tag":105,"props":106,"children":107},"ul",{},[108,114,119,138],{"type":43,"tag":109,"props":110,"children":111},"li",{},[112],{"type":48,"value":113},"Build a Deep Agent in code (Python or TypeScript) and deploy it to LangSmith without standing up their own server.",{"type":43,"tag":109,"props":115,"children":116},{},[117],{"type":48,"value":118},"Add authored tools, middleware, MCP connectors, cron schedules, skills, or a sandbox to a managed agent.",{"type":43,"tag":109,"props":120,"children":121},{},[122,124,130,132,137],{"type":48,"value":123},"Test an agent locally with ",{"type":43,"tag":64,"props":125,"children":127},{"className":126},[],[128],{"type":48,"value":129},"mda dev",{"type":48,"value":131}," and deploy it with ",{"type":43,"tag":64,"props":133,"children":135},{"className":134},[],[136],{"type":48,"value":90},{"type":48,"value":92},{"type":43,"tag":109,"props":139,"children":140},{},[141],{"type":48,"value":142},"Understand what the managed runtime owns versus what the author configures.",{"type":43,"tag":58,"props":144,"children":145},{},[146,148,154],{"type":48,"value":147},"Use a standard LangSmith Deployment (see [[langgraph-cli]], ",{"type":43,"tag":64,"props":149,"children":151},{"className":150},[],[152],{"type":48,"value":153},"langgraph deploy",{"type":48,"value":155},") instead when the user needs custom application code, custom routes, advanced authentication, stronger isolation, maximum scalability, or a region other than US LangSmith Cloud.",{"type":43,"tag":51,"props":157,"children":159},{"id":158},"prerequisites",[160],{"type":48,"value":161},"Prerequisites",{"type":43,"tag":105,"props":163,"children":164},{},[165,170,175,188],{"type":43,"tag":109,"props":166,"children":167},{},[168],{"type":48,"value":169},"Managed Deep Agents private beta access in the target LangSmith workspace.",{"type":43,"tag":109,"props":171,"children":172},{},[173],{"type":48,"value":174},"A LangSmith API key for that workspace.",{"type":43,"tag":109,"props":176,"children":177},{},[178,180,186],{"type":48,"value":179},"Python and ",{"type":43,"tag":64,"props":181,"children":183},{"className":182},[],[184],{"type":48,"value":185},"uv",{"type":48,"value":187}," for Python projects, or Node.js and npm for TypeScript projects.",{"type":43,"tag":109,"props":189,"children":190},{},[191],{"type":48,"value":192},"A model provider API key.",{"type":43,"tag":58,"props":194,"children":195},{},[196,198,203],{"type":48,"value":197},"Install the ",{"type":43,"tag":64,"props":199,"children":201},{"className":200},[],[202],{"type":48,"value":69},{"type":48,"value":204}," CLI. Both packages ship the same CLI:",{"type":43,"tag":206,"props":207,"children":212},"pre",{"className":208,"code":209,"language":210,"meta":211,"style":211},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pip install --pre managed-deepagents        # Python\nnpm install -g managed-deepagents@dev        # TypeScript\n","bash","",[213],{"type":43,"tag":64,"props":214,"children":215},{"__ignoreMap":211},[216,250],{"type":43,"tag":217,"props":218,"children":221},"span",{"class":219,"line":220},"line",1,[222,228,234,239,244],{"type":43,"tag":217,"props":223,"children":225},{"style":224},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[226],{"type":48,"value":227},"pip",{"type":43,"tag":217,"props":229,"children":231},{"style":230},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[232],{"type":48,"value":233}," install",{"type":43,"tag":217,"props":235,"children":236},{"style":230},[237],{"type":48,"value":238}," --pre",{"type":43,"tag":217,"props":240,"children":241},{"style":230},[242],{"type":48,"value":243}," managed-deepagents",{"type":43,"tag":217,"props":245,"children":247},{"style":246},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[248],{"type":48,"value":249},"        # Python\n",{"type":43,"tag":217,"props":251,"children":253},{"class":219,"line":252},2,[254,259,263,268,273],{"type":43,"tag":217,"props":255,"children":256},{"style":224},[257],{"type":48,"value":258},"npm",{"type":43,"tag":217,"props":260,"children":261},{"style":230},[262],{"type":48,"value":233},{"type":43,"tag":217,"props":264,"children":265},{"style":230},[266],{"type":48,"value":267}," -g",{"type":43,"tag":217,"props":269,"children":270},{"style":230},[271],{"type":48,"value":272}," managed-deepagents@dev",{"type":43,"tag":217,"props":274,"children":275},{"style":246},[276],{"type":48,"value":277},"        # TypeScript\n",{"type":43,"tag":58,"props":279,"children":280},{},[281,283,289],{"type":48,"value":282},"Set the LangSmith API key in the project ",{"type":43,"tag":64,"props":284,"children":286},{"className":285},[],[287],{"type":48,"value":288},".env",{"type":48,"value":290}," or the shell:",{"type":43,"tag":206,"props":292,"children":294},{"className":208,"code":293,"language":210,"meta":211,"style":211},"export LANGSMITH_API_KEY=\"\u003CLANGSMITH_API_KEY>\"\n",[295],{"type":43,"tag":64,"props":296,"children":297},{"__ignoreMap":211},[298],{"type":43,"tag":217,"props":299,"children":300},{"class":219,"line":220},[301,307,313,319,324,329],{"type":43,"tag":217,"props":302,"children":304},{"style":303},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[305],{"type":48,"value":306},"export",{"type":43,"tag":217,"props":308,"children":310},{"style":309},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[311],{"type":48,"value":312}," LANGSMITH_API_KEY",{"type":43,"tag":217,"props":314,"children":316},{"style":315},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[317],{"type":48,"value":318},"=",{"type":43,"tag":217,"props":320,"children":321},{"style":315},[322],{"type":48,"value":323},"\"",{"type":43,"tag":217,"props":325,"children":326},{"style":230},[327],{"type":48,"value":328},"\u003CLANGSMITH_API_KEY>",{"type":43,"tag":217,"props":330,"children":331},{"style":315},[332],{"type":48,"value":333},"\"\n",{"type":43,"tag":58,"props":335,"children":336},{},[337],{"type":48,"value":338},"Managed Deep Agents is CLI-first during private beta and runs on US LangSmith Cloud only. Self-hosted and Hybrid are not supported.",{"type":43,"tag":51,"props":340,"children":342},{"id":341},"project-layout",[343],{"type":48,"value":344},"Project layout",{"type":43,"tag":58,"props":346,"children":347},{},[348,350,355,357,362],{"type":48,"value":349},"The path passed to ",{"type":43,"tag":64,"props":351,"children":353},{"className":352},[],[354],{"type":48,"value":129},{"type":48,"value":356}," or ",{"type":43,"tag":64,"props":358,"children":360},{"className":359},[],[361],{"type":48,"value":90},{"type":48,"value":363}," is the project root. A file's location determines its role:",{"type":43,"tag":206,"props":365,"children":369},{"className":366,"code":368,"language":48,"meta":211},[367],"language-text","my-agent\u002F\n  agent.py | agent.ts | agent.tsx          # Required: exports the named `agent`\n  instructions.md                          # Managed system prompt, synced to Context Hub\n  pyproject.toml | package.json            # Project dependencies\n  .env                                     # Deploy auth + runtime secrets (never archived)\n  tools\u002F                                   # Authored LangChain tools the agent imports\n  middleware\u002F                              # Authored middleware the agent imports\n  connectors\u002Fmcp.py | connectors\u002Fmcp.ts    # Remote MCP server declarations\n  schedules\u002F\u003Cname>.py | \u003Cname>.ts          # Managed cron schedules\n  skills\u002F\u003Cname>\u002FSKILL.md                   # Deploy-owned skills, synced to Context Hub\n  sandbox\u002F__init__.py | sandbox\u002Findex.ts   # Managed sandbox configuration\n  sandbox\u002Fsetup.sh                         # Sandbox provisioning script (runs once)\n",[370],{"type":43,"tag":64,"props":371,"children":372},{"__ignoreMap":211},[373],{"type":48,"value":368},{"type":43,"tag":58,"props":375,"children":376},{},[377,379,385,387,393,395,401,403,409,411,417],{"type":48,"value":378},"Only the agent entry is required. It must export a named ",{"type":43,"tag":64,"props":380,"children":382},{"className":381},[],[383],{"type":48,"value":384},"agent",{"type":48,"value":386}," created with ",{"type":43,"tag":64,"props":388,"children":390},{"className":389},[],[391],{"type":48,"value":392},"define_deep_agent",{"type":48,"value":394}," \u002F ",{"type":43,"tag":64,"props":396,"children":398},{"className":397},[],[399],{"type":48,"value":400},"defineDeepAgent",{"type":48,"value":402},". The ",{"type":43,"tag":64,"props":404,"children":406},{"className":405},[],[407],{"type":48,"value":408},"tools\u002F",{"type":48,"value":410}," and ",{"type":43,"tag":64,"props":412,"children":414},{"className":413},[],[415],{"type":48,"value":416},"middleware\u002F",{"type":48,"value":418}," folders are conventions, not special registries: MDA copies project files verbatim, so any local module the agent imports works. The other files take on managed meanings when present.",{"type":43,"tag":58,"props":420,"children":421},{},[422,424,430,432,438,439,445],{"type":48,"value":423},"Scaffold a project with ",{"type":43,"tag":64,"props":425,"children":427},{"className":426},[],[428],{"type":48,"value":429},"mda init \u003Cname>",{"type":48,"value":431},"; the CLI detects the language from ",{"type":43,"tag":64,"props":433,"children":435},{"className":434},[],[436],{"type":48,"value":437},"pyproject.toml",{"type":48,"value":356},{"type":43,"tag":64,"props":440,"children":442},{"className":441},[],[443],{"type":48,"value":444},"package.json",{"type":48,"value":446},", or prompts.",{"type":43,"tag":51,"props":448,"children":450},{"id":449},"define-the-agent",[451],{"type":48,"value":452},"Define the agent",{"type":43,"tag":58,"props":454,"children":455},{},[456],{"type":48,"value":457},"The agent entry returns a pre-runtime spec, not a compiled graph. The managed runtime injects the backend, store, checkpointer, memory, skills, and system prompt at deploy time, so do not set those.",{"type":43,"tag":206,"props":459,"children":463},{"className":460,"code":461,"language":462,"meta":211,"style":211},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# agent.py\nfrom managed_deepagents import define_deep_agent\n\nfrom tools.query_db import query_db\n\nagent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    tools=[query_db],\n)\n","python",[464],{"type":43,"tag":64,"props":465,"children":466},{"__ignoreMap":211},[467,475,483,493,502,510,519,528,537],{"type":43,"tag":217,"props":468,"children":469},{"class":219,"line":220},[470],{"type":43,"tag":217,"props":471,"children":472},{},[473],{"type":48,"value":474},"# agent.py\n",{"type":43,"tag":217,"props":476,"children":477},{"class":219,"line":252},[478],{"type":43,"tag":217,"props":479,"children":480},{},[481],{"type":48,"value":482},"from managed_deepagents import define_deep_agent\n",{"type":43,"tag":217,"props":484,"children":486},{"class":219,"line":485},3,[487],{"type":43,"tag":217,"props":488,"children":490},{"emptyLinePlaceholder":489},true,[491],{"type":48,"value":492},"\n",{"type":43,"tag":217,"props":494,"children":496},{"class":219,"line":495},4,[497],{"type":43,"tag":217,"props":498,"children":499},{},[500],{"type":48,"value":501},"from tools.query_db import query_db\n",{"type":43,"tag":217,"props":503,"children":505},{"class":219,"line":504},5,[506],{"type":43,"tag":217,"props":507,"children":508},{"emptyLinePlaceholder":489},[509],{"type":48,"value":492},{"type":43,"tag":217,"props":511,"children":513},{"class":219,"line":512},6,[514],{"type":43,"tag":217,"props":515,"children":516},{},[517],{"type":48,"value":518},"agent = define_deep_agent(\n",{"type":43,"tag":217,"props":520,"children":522},{"class":219,"line":521},7,[523],{"type":43,"tag":217,"props":524,"children":525},{},[526],{"type":48,"value":527},"    model=\"openai:gpt-5.5\",\n",{"type":43,"tag":217,"props":529,"children":531},{"class":219,"line":530},8,[532],{"type":43,"tag":217,"props":533,"children":534},{},[535],{"type":48,"value":536},"    tools=[query_db],\n",{"type":43,"tag":217,"props":538,"children":540},{"class":219,"line":539},9,[541],{"type":43,"tag":217,"props":542,"children":543},{},[544],{"type":48,"value":545},")\n",{"type":43,"tag":206,"props":547,"children":551},{"className":548,"code":549,"language":550,"meta":211,"style":211},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F agent.ts\nimport { defineDeepAgent } from \"managed-deepagents\";\n\nimport { queryDB } from \".\u002Ftools\u002Fquery-db\";\n\nexport const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  tools: [queryDB],\n});\n","ts",[552],{"type":43,"tag":64,"props":553,"children":554},{"__ignoreMap":211},[555,563,611,618,659,666,702,734,755],{"type":43,"tag":217,"props":556,"children":557},{"class":219,"line":220},[558],{"type":43,"tag":217,"props":559,"children":560},{"style":246},[561],{"type":48,"value":562},"\u002F\u002F agent.ts\n",{"type":43,"tag":217,"props":564,"children":565},{"class":219,"line":252},[566,572,577,582,587,592,597,602,606],{"type":43,"tag":217,"props":567,"children":569},{"style":568},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[570],{"type":48,"value":571},"import",{"type":43,"tag":217,"props":573,"children":574},{"style":315},[575],{"type":48,"value":576}," {",{"type":43,"tag":217,"props":578,"children":579},{"style":309},[580],{"type":48,"value":581}," defineDeepAgent",{"type":43,"tag":217,"props":583,"children":584},{"style":315},[585],{"type":48,"value":586}," }",{"type":43,"tag":217,"props":588,"children":589},{"style":568},[590],{"type":48,"value":591}," from",{"type":43,"tag":217,"props":593,"children":594},{"style":315},[595],{"type":48,"value":596}," \"",{"type":43,"tag":217,"props":598,"children":599},{"style":230},[600],{"type":48,"value":601},"managed-deepagents",{"type":43,"tag":217,"props":603,"children":604},{"style":315},[605],{"type":48,"value":323},{"type":43,"tag":217,"props":607,"children":608},{"style":315},[609],{"type":48,"value":610},";\n",{"type":43,"tag":217,"props":612,"children":613},{"class":219,"line":485},[614],{"type":43,"tag":217,"props":615,"children":616},{"emptyLinePlaceholder":489},[617],{"type":48,"value":492},{"type":43,"tag":217,"props":619,"children":620},{"class":219,"line":495},[621,625,629,634,638,642,646,651,655],{"type":43,"tag":217,"props":622,"children":623},{"style":568},[624],{"type":48,"value":571},{"type":43,"tag":217,"props":626,"children":627},{"style":315},[628],{"type":48,"value":576},{"type":43,"tag":217,"props":630,"children":631},{"style":309},[632],{"type":48,"value":633}," queryDB",{"type":43,"tag":217,"props":635,"children":636},{"style":315},[637],{"type":48,"value":586},{"type":43,"tag":217,"props":639,"children":640},{"style":568},[641],{"type":48,"value":591},{"type":43,"tag":217,"props":643,"children":644},{"style":315},[645],{"type":48,"value":596},{"type":43,"tag":217,"props":647,"children":648},{"style":230},[649],{"type":48,"value":650},".\u002Ftools\u002Fquery-db",{"type":43,"tag":217,"props":652,"children":653},{"style":315},[654],{"type":48,"value":323},{"type":43,"tag":217,"props":656,"children":657},{"style":315},[658],{"type":48,"value":610},{"type":43,"tag":217,"props":660,"children":661},{"class":219,"line":504},[662],{"type":43,"tag":217,"props":663,"children":664},{"emptyLinePlaceholder":489},[665],{"type":48,"value":492},{"type":43,"tag":217,"props":667,"children":668},{"class":219,"line":512},[669,673,678,683,687,692,697],{"type":43,"tag":217,"props":670,"children":671},{"style":568},[672],{"type":48,"value":306},{"type":43,"tag":217,"props":674,"children":675},{"style":303},[676],{"type":48,"value":677}," const",{"type":43,"tag":217,"props":679,"children":680},{"style":309},[681],{"type":48,"value":682}," agent ",{"type":43,"tag":217,"props":684,"children":685},{"style":315},[686],{"type":48,"value":318},{"type":43,"tag":217,"props":688,"children":690},{"style":689},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[691],{"type":48,"value":581},{"type":43,"tag":217,"props":693,"children":694},{"style":309},[695],{"type":48,"value":696},"(",{"type":43,"tag":217,"props":698,"children":699},{"style":315},[700],{"type":48,"value":701},"{\n",{"type":43,"tag":217,"props":703,"children":704},{"class":219,"line":521},[705,711,716,720,725,729],{"type":43,"tag":217,"props":706,"children":708},{"style":707},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[709],{"type":48,"value":710},"  model",{"type":43,"tag":217,"props":712,"children":713},{"style":315},[714],{"type":48,"value":715},":",{"type":43,"tag":217,"props":717,"children":718},{"style":315},[719],{"type":48,"value":596},{"type":43,"tag":217,"props":721,"children":722},{"style":230},[723],{"type":48,"value":724},"openai:gpt-5.5",{"type":43,"tag":217,"props":726,"children":727},{"style":315},[728],{"type":48,"value":323},{"type":43,"tag":217,"props":730,"children":731},{"style":315},[732],{"type":48,"value":733},",\n",{"type":43,"tag":217,"props":735,"children":736},{"class":219,"line":530},[737,742,746,751],{"type":43,"tag":217,"props":738,"children":739},{"style":707},[740],{"type":48,"value":741},"  tools",{"type":43,"tag":217,"props":743,"children":744},{"style":315},[745],{"type":48,"value":715},{"type":43,"tag":217,"props":747,"children":748},{"style":309},[749],{"type":48,"value":750}," [queryDB]",{"type":43,"tag":217,"props":752,"children":753},{"style":315},[754],{"type":48,"value":733},{"type":43,"tag":217,"props":756,"children":757},{"class":219,"line":539},[758,763,768],{"type":43,"tag":217,"props":759,"children":760},{"style":315},[761],{"type":48,"value":762},"}",{"type":43,"tag":217,"props":764,"children":765},{"style":309},[766],{"type":48,"value":767},")",{"type":43,"tag":217,"props":769,"children":770},{"style":315},[771],{"type":48,"value":610},{"type":43,"tag":58,"props":773,"children":774},{},[775,780,782,788,790,796,797,803,804,810,811,817,818,824,825,831,832,838,839,845,846,852,853,859,860,866,867,873,874,880,881,887,888,894],{"type":43,"tag":78,"props":776,"children":777},{},[778],{"type":48,"value":779},"Author-set fields:",{"type":48,"value":781}," ",{"type":43,"tag":64,"props":783,"children":785},{"className":784},[],[786],{"type":48,"value":787},"model",{"type":48,"value":789},", ",{"type":43,"tag":64,"props":791,"children":793},{"className":792},[],[794],{"type":48,"value":795},"tools",{"type":48,"value":789},{"type":43,"tag":64,"props":798,"children":800},{"className":799},[],[801],{"type":48,"value":802},"middleware",{"type":48,"value":789},{"type":43,"tag":64,"props":805,"children":807},{"className":806},[],[808],{"type":48,"value":809},"subagents",{"type":48,"value":789},{"type":43,"tag":64,"props":812,"children":814},{"className":813},[],[815],{"type":48,"value":816},"permissions",{"type":48,"value":789},{"type":43,"tag":64,"props":819,"children":821},{"className":820},[],[822],{"type":48,"value":823},"interrupt_on",{"type":48,"value":394},{"type":43,"tag":64,"props":826,"children":828},{"className":827},[],[829],{"type":48,"value":830},"interruptOn",{"type":48,"value":789},{"type":43,"tag":64,"props":833,"children":835},{"className":834},[],[836],{"type":48,"value":837},"response_format",{"type":48,"value":394},{"type":43,"tag":64,"props":840,"children":842},{"className":841},[],[843],{"type":48,"value":844},"responseFormat",{"type":48,"value":789},{"type":43,"tag":64,"props":847,"children":849},{"className":848},[],[850],{"type":48,"value":851},"context_schema",{"type":48,"value":394},{"type":43,"tag":64,"props":854,"children":856},{"className":855},[],[857],{"type":48,"value":858},"contextSchema",{"type":48,"value":789},{"type":43,"tag":64,"props":861,"children":863},{"className":862},[],[864],{"type":48,"value":865},"name",{"type":48,"value":789},{"type":43,"tag":64,"props":868,"children":870},{"className":869},[],[871],{"type":48,"value":872},"cache",{"type":48,"value":789},{"type":43,"tag":64,"props":875,"children":877},{"className":876},[],[878],{"type":48,"value":879},"debug",{"type":48,"value":789},{"type":43,"tag":64,"props":882,"children":884},{"className":883},[],[885],{"type":48,"value":886},"disable_memory",{"type":48,"value":394},{"type":43,"tag":64,"props":889,"children":891},{"className":890},[],[892],{"type":48,"value":893},"disableMemory",{"type":48,"value":92},{"type":43,"tag":58,"props":896,"children":897},{},[898,903,904,910,911,917,918,924,925,931,932,938,939,945,946,952,954,960,962,968,970,976,978,984,986,992],{"type":43,"tag":78,"props":899,"children":900},{},[901],{"type":48,"value":902},"Managed fields (do not set):",{"type":48,"value":781},{"type":43,"tag":64,"props":905,"children":907},{"className":906},[],[908],{"type":48,"value":909},"backend",{"type":48,"value":789},{"type":43,"tag":64,"props":912,"children":914},{"className":913},[],[915],{"type":48,"value":916},"store",{"type":48,"value":789},{"type":43,"tag":64,"props":919,"children":921},{"className":920},[],[922],{"type":48,"value":923},"checkpointer",{"type":48,"value":789},{"type":43,"tag":64,"props":926,"children":928},{"className":927},[],[929],{"type":48,"value":930},"memory",{"type":48,"value":789},{"type":43,"tag":64,"props":933,"children":935},{"className":934},[],[936],{"type":48,"value":937},"skills",{"type":48,"value":789},{"type":43,"tag":64,"props":940,"children":942},{"className":941},[],[943],{"type":48,"value":944},"system_prompt",{"type":48,"value":394},{"type":43,"tag":64,"props":947,"children":949},{"className":948},[],[950],{"type":48,"value":951},"systemPrompt",{"type":48,"value":953},". Configure the system prompt in ",{"type":43,"tag":64,"props":955,"children":957},{"className":956},[],[958],{"type":48,"value":959},"instructions.md",{"type":48,"value":961},", connectors in ",{"type":43,"tag":64,"props":963,"children":965},{"className":964},[],[966],{"type":48,"value":967},"connectors\u002Fmcp.*",{"type":48,"value":969},", schedules in ",{"type":43,"tag":64,"props":971,"children":973},{"className":972},[],[974],{"type":48,"value":975},"schedules\u002F**",{"type":48,"value":977},", skills in ",{"type":43,"tag":64,"props":979,"children":981},{"className":980},[],[982],{"type":48,"value":983},"skills\u002F**",{"type":48,"value":985},", and the sandbox under ",{"type":43,"tag":64,"props":987,"children":989},{"className":988},[],[990],{"type":48,"value":991},"sandbox\u002F",{"type":48,"value":92},{"type":43,"tag":58,"props":994,"children":995},{},[996,998,1004,1006,1011,1013,1019,1021,1026],{"type":48,"value":997},"Model identifiers use the ",{"type":43,"tag":64,"props":999,"children":1001},{"className":1000},[],[1002],{"type":48,"value":1003},"{provider}:{model_id}",{"type":48,"value":1005}," form, for example ",{"type":43,"tag":64,"props":1007,"children":1009},{"className":1008},[],[1010],{"type":48,"value":724},{"type":48,"value":1012},". The runtime resolves them with ",{"type":43,"tag":64,"props":1014,"children":1016},{"className":1015},[],[1017],{"type":48,"value":1018},"init_chat_model",{"type":48,"value":1020},", so any ",{"type":43,"tag":64,"props":1022,"children":1024},{"className":1023},[],[1025],{"type":48,"value":1018},{"type":48,"value":1027}," provider works.",{"type":43,"tag":51,"props":1029,"children":1031},{"id":1030},"instructions",[1032],{"type":48,"value":1033},"Instructions",{"type":43,"tag":58,"props":1035,"children":1036},{},[1037,1039,1044],{"type":48,"value":1038},"Put the system prompt in ",{"type":43,"tag":64,"props":1040,"children":1042},{"className":1041},[],[1043],{"type":48,"value":959},{"type":48,"value":1045}," next to the agent entry:",{"type":43,"tag":206,"props":1047,"children":1051},{"className":1048,"code":1049,"language":1050,"meta":211,"style":211},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Research assistant\n\nYou are a careful research assistant. Find sources, keep notes, and return\nconcise answers with citations.\n","markdown",[1052],{"type":43,"tag":64,"props":1053,"children":1054},{"__ignoreMap":211},[1055,1068,1075,1083],{"type":43,"tag":217,"props":1056,"children":1057},{"class":219,"line":220},[1058,1063],{"type":43,"tag":217,"props":1059,"children":1060},{"style":315},[1061],{"type":48,"value":1062},"# ",{"type":43,"tag":217,"props":1064,"children":1065},{"style":224},[1066],{"type":48,"value":1067},"Research assistant\n",{"type":43,"tag":217,"props":1069,"children":1070},{"class":219,"line":252},[1071],{"type":43,"tag":217,"props":1072,"children":1073},{"emptyLinePlaceholder":489},[1074],{"type":48,"value":492},{"type":43,"tag":217,"props":1076,"children":1077},{"class":219,"line":485},[1078],{"type":43,"tag":217,"props":1079,"children":1080},{"style":309},[1081],{"type":48,"value":1082},"You are a careful research assistant. Find sources, keep notes, and return\n",{"type":43,"tag":217,"props":1084,"children":1085},{"class":219,"line":495},[1086],{"type":43,"tag":217,"props":1087,"children":1088},{"style":309},[1089],{"type":48,"value":1090},"concise answers with citations.\n",{"type":43,"tag":58,"props":1092,"children":1093},{},[1094,1099,1101,1106],{"type":43,"tag":64,"props":1095,"children":1097},{"className":1096},[],[1098],{"type":48,"value":129},{"type":48,"value":1100}," embeds it into the generated local entry. ",{"type":43,"tag":64,"props":1102,"children":1104},{"className":1103},[],[1105],{"type":48,"value":90},{"type":48,"value":1107}," syncs it to Context Hub, and the deployed runtime reads it from there.",{"type":43,"tag":51,"props":1109,"children":1111},{"id":1110},"authored-tools",[1112],{"type":48,"value":1113},"Authored tools",{"type":43,"tag":58,"props":1115,"children":1116},{},[1117],{"type":48,"value":1118},"Define tools in the project and import them into the agent entry. The runtime keeps authored tools in the bounded agent execution surface.",{"type":43,"tag":206,"props":1120,"children":1122},{"className":460,"code":1121,"language":462,"meta":211,"style":211},"# tools\u002Fquery_db.py\nfrom langchain.tools import tool\n\n\n@tool(parse_docstring=True)\ndef query_db(query: str) -> str:\n    \"\"\"Run a read-only SQL query against the application database.\n\n    Args:\n        query: A read-only SQL query to execute.\n    \"\"\"\n    return f\"Ran query: {query}\"\n",[1123],{"type":43,"tag":64,"props":1124,"children":1125},{"__ignoreMap":211},[1126,1134,1142,1149,1156,1164,1172,1180,1187,1195,1204,1213],{"type":43,"tag":217,"props":1127,"children":1128},{"class":219,"line":220},[1129],{"type":43,"tag":217,"props":1130,"children":1131},{},[1132],{"type":48,"value":1133},"# tools\u002Fquery_db.py\n",{"type":43,"tag":217,"props":1135,"children":1136},{"class":219,"line":252},[1137],{"type":43,"tag":217,"props":1138,"children":1139},{},[1140],{"type":48,"value":1141},"from langchain.tools import tool\n",{"type":43,"tag":217,"props":1143,"children":1144},{"class":219,"line":485},[1145],{"type":43,"tag":217,"props":1146,"children":1147},{"emptyLinePlaceholder":489},[1148],{"type":48,"value":492},{"type":43,"tag":217,"props":1150,"children":1151},{"class":219,"line":495},[1152],{"type":43,"tag":217,"props":1153,"children":1154},{"emptyLinePlaceholder":489},[1155],{"type":48,"value":492},{"type":43,"tag":217,"props":1157,"children":1158},{"class":219,"line":504},[1159],{"type":43,"tag":217,"props":1160,"children":1161},{},[1162],{"type":48,"value":1163},"@tool(parse_docstring=True)\n",{"type":43,"tag":217,"props":1165,"children":1166},{"class":219,"line":512},[1167],{"type":43,"tag":217,"props":1168,"children":1169},{},[1170],{"type":48,"value":1171},"def query_db(query: str) -> str:\n",{"type":43,"tag":217,"props":1173,"children":1174},{"class":219,"line":521},[1175],{"type":43,"tag":217,"props":1176,"children":1177},{},[1178],{"type":48,"value":1179},"    \"\"\"Run a read-only SQL query against the application database.\n",{"type":43,"tag":217,"props":1181,"children":1182},{"class":219,"line":530},[1183],{"type":43,"tag":217,"props":1184,"children":1185},{"emptyLinePlaceholder":489},[1186],{"type":48,"value":492},{"type":43,"tag":217,"props":1188,"children":1189},{"class":219,"line":539},[1190],{"type":43,"tag":217,"props":1191,"children":1192},{},[1193],{"type":48,"value":1194},"    Args:\n",{"type":43,"tag":217,"props":1196,"children":1198},{"class":219,"line":1197},10,[1199],{"type":43,"tag":217,"props":1200,"children":1201},{},[1202],{"type":48,"value":1203},"        query: A read-only SQL query to execute.\n",{"type":43,"tag":217,"props":1205,"children":1207},{"class":219,"line":1206},11,[1208],{"type":43,"tag":217,"props":1209,"children":1210},{},[1211],{"type":48,"value":1212},"    \"\"\"\n",{"type":43,"tag":217,"props":1214,"children":1216},{"class":219,"line":1215},12,[1217],{"type":43,"tag":217,"props":1218,"children":1219},{},[1220],{"type":48,"value":1221},"    return f\"Ran query: {query}\"\n",{"type":43,"tag":206,"props":1223,"children":1225},{"className":548,"code":1224,"language":550,"meta":211,"style":211},"\u002F\u002F tools\u002Fquery-db.ts\nimport { tool } from \"langchain\";\nimport { z } from \"zod\";\n\nexport const queryDB = tool(\n  async ({ query }) => `Ran query: ${query}`,\n  {\n    name: \"query_db\",\n    description: \"Run a read-only SQL query against the application database.\",\n    schema: z.object({ query: z.string().describe(\"A read-only SQL query.\") }),\n  },\n);\n",[1226],{"type":43,"tag":64,"props":1227,"children":1228},{"__ignoreMap":211},[1229,1237,1277,1318,1325,1354,1412,1420,1449,1478,1581,1589],{"type":43,"tag":217,"props":1230,"children":1231},{"class":219,"line":220},[1232],{"type":43,"tag":217,"props":1233,"children":1234},{"style":246},[1235],{"type":48,"value":1236},"\u002F\u002F tools\u002Fquery-db.ts\n",{"type":43,"tag":217,"props":1238,"children":1239},{"class":219,"line":252},[1240,1244,1248,1253,1257,1261,1265,1269,1273],{"type":43,"tag":217,"props":1241,"children":1242},{"style":568},[1243],{"type":48,"value":571},{"type":43,"tag":217,"props":1245,"children":1246},{"style":315},[1247],{"type":48,"value":576},{"type":43,"tag":217,"props":1249,"children":1250},{"style":309},[1251],{"type":48,"value":1252}," tool",{"type":43,"tag":217,"props":1254,"children":1255},{"style":315},[1256],{"type":48,"value":586},{"type":43,"tag":217,"props":1258,"children":1259},{"style":568},[1260],{"type":48,"value":591},{"type":43,"tag":217,"props":1262,"children":1263},{"style":315},[1264],{"type":48,"value":596},{"type":43,"tag":217,"props":1266,"children":1267},{"style":230},[1268],{"type":48,"value":8},{"type":43,"tag":217,"props":1270,"children":1271},{"style":315},[1272],{"type":48,"value":323},{"type":43,"tag":217,"props":1274,"children":1275},{"style":315},[1276],{"type":48,"value":610},{"type":43,"tag":217,"props":1278,"children":1279},{"class":219,"line":485},[1280,1284,1288,1293,1297,1301,1305,1310,1314],{"type":43,"tag":217,"props":1281,"children":1282},{"style":568},[1283],{"type":48,"value":571},{"type":43,"tag":217,"props":1285,"children":1286},{"style":315},[1287],{"type":48,"value":576},{"type":43,"tag":217,"props":1289,"children":1290},{"style":309},[1291],{"type":48,"value":1292}," z",{"type":43,"tag":217,"props":1294,"children":1295},{"style":315},[1296],{"type":48,"value":586},{"type":43,"tag":217,"props":1298,"children":1299},{"style":568},[1300],{"type":48,"value":591},{"type":43,"tag":217,"props":1302,"children":1303},{"style":315},[1304],{"type":48,"value":596},{"type":43,"tag":217,"props":1306,"children":1307},{"style":230},[1308],{"type":48,"value":1309},"zod",{"type":43,"tag":217,"props":1311,"children":1312},{"style":315},[1313],{"type":48,"value":323},{"type":43,"tag":217,"props":1315,"children":1316},{"style":315},[1317],{"type":48,"value":610},{"type":43,"tag":217,"props":1319,"children":1320},{"class":219,"line":495},[1321],{"type":43,"tag":217,"props":1322,"children":1323},{"emptyLinePlaceholder":489},[1324],{"type":48,"value":492},{"type":43,"tag":217,"props":1326,"children":1327},{"class":219,"line":504},[1328,1332,1336,1341,1345,1349],{"type":43,"tag":217,"props":1329,"children":1330},{"style":568},[1331],{"type":48,"value":306},{"type":43,"tag":217,"props":1333,"children":1334},{"style":303},[1335],{"type":48,"value":677},{"type":43,"tag":217,"props":1337,"children":1338},{"style":309},[1339],{"type":48,"value":1340}," queryDB ",{"type":43,"tag":217,"props":1342,"children":1343},{"style":315},[1344],{"type":48,"value":318},{"type":43,"tag":217,"props":1346,"children":1347},{"style":689},[1348],{"type":48,"value":1252},{"type":43,"tag":217,"props":1350,"children":1351},{"style":309},[1352],{"type":48,"value":1353},"(\n",{"type":43,"tag":217,"props":1355,"children":1356},{"class":219,"line":512},[1357,1362,1367,1373,1378,1383,1388,1393,1398,1403,1408],{"type":43,"tag":217,"props":1358,"children":1359},{"style":303},[1360],{"type":48,"value":1361},"  async",{"type":43,"tag":217,"props":1363,"children":1364},{"style":315},[1365],{"type":48,"value":1366}," ({",{"type":43,"tag":217,"props":1368,"children":1370},{"style":1369},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[1371],{"type":48,"value":1372}," query",{"type":43,"tag":217,"props":1374,"children":1375},{"style":315},[1376],{"type":48,"value":1377}," })",{"type":43,"tag":217,"props":1379,"children":1380},{"style":303},[1381],{"type":48,"value":1382}," =>",{"type":43,"tag":217,"props":1384,"children":1385},{"style":315},[1386],{"type":48,"value":1387}," `",{"type":43,"tag":217,"props":1389,"children":1390},{"style":230},[1391],{"type":48,"value":1392},"Ran query: ",{"type":43,"tag":217,"props":1394,"children":1395},{"style":315},[1396],{"type":48,"value":1397},"${",{"type":43,"tag":217,"props":1399,"children":1400},{"style":309},[1401],{"type":48,"value":1402},"query",{"type":43,"tag":217,"props":1404,"children":1405},{"style":315},[1406],{"type":48,"value":1407},"}`",{"type":43,"tag":217,"props":1409,"children":1410},{"style":315},[1411],{"type":48,"value":733},{"type":43,"tag":217,"props":1413,"children":1414},{"class":219,"line":521},[1415],{"type":43,"tag":217,"props":1416,"children":1417},{"style":315},[1418],{"type":48,"value":1419},"  {\n",{"type":43,"tag":217,"props":1421,"children":1422},{"class":219,"line":530},[1423,1428,1432,1436,1441,1445],{"type":43,"tag":217,"props":1424,"children":1425},{"style":707},[1426],{"type":48,"value":1427},"    name",{"type":43,"tag":217,"props":1429,"children":1430},{"style":315},[1431],{"type":48,"value":715},{"type":43,"tag":217,"props":1433,"children":1434},{"style":315},[1435],{"type":48,"value":596},{"type":43,"tag":217,"props":1437,"children":1438},{"style":230},[1439],{"type":48,"value":1440},"query_db",{"type":43,"tag":217,"props":1442,"children":1443},{"style":315},[1444],{"type":48,"value":323},{"type":43,"tag":217,"props":1446,"children":1447},{"style":315},[1448],{"type":48,"value":733},{"type":43,"tag":217,"props":1450,"children":1451},{"class":219,"line":539},[1452,1457,1461,1465,1470,1474],{"type":43,"tag":217,"props":1453,"children":1454},{"style":707},[1455],{"type":48,"value":1456},"    description",{"type":43,"tag":217,"props":1458,"children":1459},{"style":315},[1460],{"type":48,"value":715},{"type":43,"tag":217,"props":1462,"children":1463},{"style":315},[1464],{"type":48,"value":596},{"type":43,"tag":217,"props":1466,"children":1467},{"style":230},[1468],{"type":48,"value":1469},"Run a read-only SQL query against the application database.",{"type":43,"tag":217,"props":1471,"children":1472},{"style":315},[1473],{"type":48,"value":323},{"type":43,"tag":217,"props":1475,"children":1476},{"style":315},[1477],{"type":48,"value":733},{"type":43,"tag":217,"props":1479,"children":1480},{"class":219,"line":1197},[1481,1486,1490,1494,1498,1503,1507,1512,1516,1520,1524,1528,1533,1538,1542,1547,1551,1555,1560,1564,1569,1573,1577],{"type":43,"tag":217,"props":1482,"children":1483},{"style":707},[1484],{"type":48,"value":1485},"    schema",{"type":43,"tag":217,"props":1487,"children":1488},{"style":315},[1489],{"type":48,"value":715},{"type":43,"tag":217,"props":1491,"children":1492},{"style":309},[1493],{"type":48,"value":1292},{"type":43,"tag":217,"props":1495,"children":1496},{"style":315},[1497],{"type":48,"value":92},{"type":43,"tag":217,"props":1499,"children":1500},{"style":689},[1501],{"type":48,"value":1502},"object",{"type":43,"tag":217,"props":1504,"children":1505},{"style":309},[1506],{"type":48,"value":696},{"type":43,"tag":217,"props":1508,"children":1509},{"style":315},[1510],{"type":48,"value":1511},"{",{"type":43,"tag":217,"props":1513,"children":1514},{"style":707},[1515],{"type":48,"value":1372},{"type":43,"tag":217,"props":1517,"children":1518},{"style":315},[1519],{"type":48,"value":715},{"type":43,"tag":217,"props":1521,"children":1522},{"style":309},[1523],{"type":48,"value":1292},{"type":43,"tag":217,"props":1525,"children":1526},{"style":315},[1527],{"type":48,"value":92},{"type":43,"tag":217,"props":1529,"children":1530},{"style":689},[1531],{"type":48,"value":1532},"string",{"type":43,"tag":217,"props":1534,"children":1535},{"style":309},[1536],{"type":48,"value":1537},"()",{"type":43,"tag":217,"props":1539,"children":1540},{"style":315},[1541],{"type":48,"value":92},{"type":43,"tag":217,"props":1543,"children":1544},{"style":689},[1545],{"type":48,"value":1546},"describe",{"type":43,"tag":217,"props":1548,"children":1549},{"style":309},[1550],{"type":48,"value":696},{"type":43,"tag":217,"props":1552,"children":1553},{"style":315},[1554],{"type":48,"value":323},{"type":43,"tag":217,"props":1556,"children":1557},{"style":230},[1558],{"type":48,"value":1559},"A read-only SQL query.",{"type":43,"tag":217,"props":1561,"children":1562},{"style":315},[1563],{"type":48,"value":323},{"type":43,"tag":217,"props":1565,"children":1566},{"style":309},[1567],{"type":48,"value":1568},") ",{"type":43,"tag":217,"props":1570,"children":1571},{"style":315},[1572],{"type":48,"value":762},{"type":43,"tag":217,"props":1574,"children":1575},{"style":309},[1576],{"type":48,"value":767},{"type":43,"tag":217,"props":1578,"children":1579},{"style":315},[1580],{"type":48,"value":733},{"type":43,"tag":217,"props":1582,"children":1583},{"class":219,"line":1206},[1584],{"type":43,"tag":217,"props":1585,"children":1586},{"style":315},[1587],{"type":48,"value":1588},"  },\n",{"type":43,"tag":217,"props":1590,"children":1591},{"class":219,"line":1215},[1592,1596],{"type":43,"tag":217,"props":1593,"children":1594},{"style":309},[1595],{"type":48,"value":767},{"type":43,"tag":217,"props":1597,"children":1598},{"style":315},[1599],{"type":48,"value":610},{"type":43,"tag":58,"props":1601,"children":1602},{},[1603,1605,1610,1612,1617],{"type":48,"value":1604},"Tools read deployment secrets from environment variables. Put local values in ",{"type":43,"tag":64,"props":1606,"children":1608},{"className":1607},[],[1609],{"type":48,"value":288},{"type":48,"value":1611},"; deploy forwards non-reserved ",{"type":43,"tag":64,"props":1613,"children":1615},{"className":1614},[],[1616],{"type":48,"value":288},{"type":48,"value":1618}," values as hosted secrets.",{"type":43,"tag":51,"props":1620,"children":1621},{"id":802},[1622],{"type":48,"value":1623},"Middleware",{"type":43,"tag":58,"props":1625,"children":1626},{},[1627,1629,1634],{"type":48,"value":1628},"Middleware wraps model and tool calls for cross-cutting behavior (logging, PII redaction, retries, limits). Order is explicit in the ",{"type":43,"tag":64,"props":1630,"children":1632},{"className":1631},[],[1633],{"type":48,"value":802},{"type":48,"value":1635}," list; MDA never infers it. Pass prebuilt LangChain middleware or author your own (see [[langchain-middleware]]).",{"type":43,"tag":206,"props":1637,"children":1639},{"className":460,"code":1638,"language":462,"meta":211,"style":211},"# agent.py\nfrom langchain.agents.middleware import ModelCallLimitMiddleware, PIIMiddleware\nfrom managed_deepagents import define_deep_agent\n\nagent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    middleware=[\n        PIIMiddleware(\"email\", strategy=\"redact\"),\n        ModelCallLimitMiddleware(run_limit=50),\n    ],\n)\n",[1640],{"type":43,"tag":64,"props":1641,"children":1642},{"__ignoreMap":211},[1643,1650,1658,1665,1672,1679,1686,1694,1702,1710,1718],{"type":43,"tag":217,"props":1644,"children":1645},{"class":219,"line":220},[1646],{"type":43,"tag":217,"props":1647,"children":1648},{},[1649],{"type":48,"value":474},{"type":43,"tag":217,"props":1651,"children":1652},{"class":219,"line":252},[1653],{"type":43,"tag":217,"props":1654,"children":1655},{},[1656],{"type":48,"value":1657},"from langchain.agents.middleware import ModelCallLimitMiddleware, PIIMiddleware\n",{"type":43,"tag":217,"props":1659,"children":1660},{"class":219,"line":485},[1661],{"type":43,"tag":217,"props":1662,"children":1663},{},[1664],{"type":48,"value":482},{"type":43,"tag":217,"props":1666,"children":1667},{"class":219,"line":495},[1668],{"type":43,"tag":217,"props":1669,"children":1670},{"emptyLinePlaceholder":489},[1671],{"type":48,"value":492},{"type":43,"tag":217,"props":1673,"children":1674},{"class":219,"line":504},[1675],{"type":43,"tag":217,"props":1676,"children":1677},{},[1678],{"type":48,"value":518},{"type":43,"tag":217,"props":1680,"children":1681},{"class":219,"line":512},[1682],{"type":43,"tag":217,"props":1683,"children":1684},{},[1685],{"type":48,"value":527},{"type":43,"tag":217,"props":1687,"children":1688},{"class":219,"line":521},[1689],{"type":43,"tag":217,"props":1690,"children":1691},{},[1692],{"type":48,"value":1693},"    middleware=[\n",{"type":43,"tag":217,"props":1695,"children":1696},{"class":219,"line":530},[1697],{"type":43,"tag":217,"props":1698,"children":1699},{},[1700],{"type":48,"value":1701},"        PIIMiddleware(\"email\", strategy=\"redact\"),\n",{"type":43,"tag":217,"props":1703,"children":1704},{"class":219,"line":539},[1705],{"type":43,"tag":217,"props":1706,"children":1707},{},[1708],{"type":48,"value":1709},"        ModelCallLimitMiddleware(run_limit=50),\n",{"type":43,"tag":217,"props":1711,"children":1712},{"class":219,"line":1197},[1713],{"type":43,"tag":217,"props":1714,"children":1715},{},[1716],{"type":48,"value":1717},"    ],\n",{"type":43,"tag":217,"props":1719,"children":1720},{"class":219,"line":1206},[1721],{"type":43,"tag":217,"props":1722,"children":1723},{},[1724],{"type":48,"value":545},{"type":43,"tag":206,"props":1726,"children":1728},{"className":548,"code":1727,"language":550,"meta":211,"style":211},"\u002F\u002F agent.ts\nimport { defineDeepAgent } from \"managed-deepagents\";\nimport { modelCallLimitMiddleware, piiMiddleware } from \"langchain\";\n\nexport const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  middleware: [\n    piiMiddleware(\"email\", { strategy: \"redact\" }),\n    modelCallLimitMiddleware({ runLimit: 50 }),\n  ],\n});\n",[1729],{"type":43,"tag":64,"props":1730,"children":1731},{"__ignoreMap":211},[1732,1739,1778,1828,1835,1866,1893,1910,1977,2020,2032],{"type":43,"tag":217,"props":1733,"children":1734},{"class":219,"line":220},[1735],{"type":43,"tag":217,"props":1736,"children":1737},{"style":246},[1738],{"type":48,"value":562},{"type":43,"tag":217,"props":1740,"children":1741},{"class":219,"line":252},[1742,1746,1750,1754,1758,1762,1766,1770,1774],{"type":43,"tag":217,"props":1743,"children":1744},{"style":568},[1745],{"type":48,"value":571},{"type":43,"tag":217,"props":1747,"children":1748},{"style":315},[1749],{"type":48,"value":576},{"type":43,"tag":217,"props":1751,"children":1752},{"style":309},[1753],{"type":48,"value":581},{"type":43,"tag":217,"props":1755,"children":1756},{"style":315},[1757],{"type":48,"value":586},{"type":43,"tag":217,"props":1759,"children":1760},{"style":568},[1761],{"type":48,"value":591},{"type":43,"tag":217,"props":1763,"children":1764},{"style":315},[1765],{"type":48,"value":596},{"type":43,"tag":217,"props":1767,"children":1768},{"style":230},[1769],{"type":48,"value":601},{"type":43,"tag":217,"props":1771,"children":1772},{"style":315},[1773],{"type":48,"value":323},{"type":43,"tag":217,"props":1775,"children":1776},{"style":315},[1777],{"type":48,"value":610},{"type":43,"tag":217,"props":1779,"children":1780},{"class":219,"line":485},[1781,1785,1789,1794,1799,1804,1808,1812,1816,1820,1824],{"type":43,"tag":217,"props":1782,"children":1783},{"style":568},[1784],{"type":48,"value":571},{"type":43,"tag":217,"props":1786,"children":1787},{"style":315},[1788],{"type":48,"value":576},{"type":43,"tag":217,"props":1790,"children":1791},{"style":309},[1792],{"type":48,"value":1793}," modelCallLimitMiddleware",{"type":43,"tag":217,"props":1795,"children":1796},{"style":315},[1797],{"type":48,"value":1798},",",{"type":43,"tag":217,"props":1800,"children":1801},{"style":309},[1802],{"type":48,"value":1803}," piiMiddleware",{"type":43,"tag":217,"props":1805,"children":1806},{"style":315},[1807],{"type":48,"value":586},{"type":43,"tag":217,"props":1809,"children":1810},{"style":568},[1811],{"type":48,"value":591},{"type":43,"tag":217,"props":1813,"children":1814},{"style":315},[1815],{"type":48,"value":596},{"type":43,"tag":217,"props":1817,"children":1818},{"style":230},[1819],{"type":48,"value":8},{"type":43,"tag":217,"props":1821,"children":1822},{"style":315},[1823],{"type":48,"value":323},{"type":43,"tag":217,"props":1825,"children":1826},{"style":315},[1827],{"type":48,"value":610},{"type":43,"tag":217,"props":1829,"children":1830},{"class":219,"line":495},[1831],{"type":43,"tag":217,"props":1832,"children":1833},{"emptyLinePlaceholder":489},[1834],{"type":48,"value":492},{"type":43,"tag":217,"props":1836,"children":1837},{"class":219,"line":504},[1838,1842,1846,1850,1854,1858,1862],{"type":43,"tag":217,"props":1839,"children":1840},{"style":568},[1841],{"type":48,"value":306},{"type":43,"tag":217,"props":1843,"children":1844},{"style":303},[1845],{"type":48,"value":677},{"type":43,"tag":217,"props":1847,"children":1848},{"style":309},[1849],{"type":48,"value":682},{"type":43,"tag":217,"props":1851,"children":1852},{"style":315},[1853],{"type":48,"value":318},{"type":43,"tag":217,"props":1855,"children":1856},{"style":689},[1857],{"type":48,"value":581},{"type":43,"tag":217,"props":1859,"children":1860},{"style":309},[1861],{"type":48,"value":696},{"type":43,"tag":217,"props":1863,"children":1864},{"style":315},[1865],{"type":48,"value":701},{"type":43,"tag":217,"props":1867,"children":1868},{"class":219,"line":512},[1869,1873,1877,1881,1885,1889],{"type":43,"tag":217,"props":1870,"children":1871},{"style":707},[1872],{"type":48,"value":710},{"type":43,"tag":217,"props":1874,"children":1875},{"style":315},[1876],{"type":48,"value":715},{"type":43,"tag":217,"props":1878,"children":1879},{"style":315},[1880],{"type":48,"value":596},{"type":43,"tag":217,"props":1882,"children":1883},{"style":230},[1884],{"type":48,"value":724},{"type":43,"tag":217,"props":1886,"children":1887},{"style":315},[1888],{"type":48,"value":323},{"type":43,"tag":217,"props":1890,"children":1891},{"style":315},[1892],{"type":48,"value":733},{"type":43,"tag":217,"props":1894,"children":1895},{"class":219,"line":521},[1896,1901,1905],{"type":43,"tag":217,"props":1897,"children":1898},{"style":707},[1899],{"type":48,"value":1900},"  middleware",{"type":43,"tag":217,"props":1902,"children":1903},{"style":315},[1904],{"type":48,"value":715},{"type":43,"tag":217,"props":1906,"children":1907},{"style":309},[1908],{"type":48,"value":1909}," [\n",{"type":43,"tag":217,"props":1911,"children":1912},{"class":219,"line":530},[1913,1918,1922,1926,1931,1935,1939,1943,1948,1952,1956,1961,1965,1969,1973],{"type":43,"tag":217,"props":1914,"children":1915},{"style":689},[1916],{"type":48,"value":1917},"    piiMiddleware",{"type":43,"tag":217,"props":1919,"children":1920},{"style":309},[1921],{"type":48,"value":696},{"type":43,"tag":217,"props":1923,"children":1924},{"style":315},[1925],{"type":48,"value":323},{"type":43,"tag":217,"props":1927,"children":1928},{"style":230},[1929],{"type":48,"value":1930},"email",{"type":43,"tag":217,"props":1932,"children":1933},{"style":315},[1934],{"type":48,"value":323},{"type":43,"tag":217,"props":1936,"children":1937},{"style":315},[1938],{"type":48,"value":1798},{"type":43,"tag":217,"props":1940,"children":1941},{"style":315},[1942],{"type":48,"value":576},{"type":43,"tag":217,"props":1944,"children":1945},{"style":707},[1946],{"type":48,"value":1947}," strategy",{"type":43,"tag":217,"props":1949,"children":1950},{"style":315},[1951],{"type":48,"value":715},{"type":43,"tag":217,"props":1953,"children":1954},{"style":315},[1955],{"type":48,"value":596},{"type":43,"tag":217,"props":1957,"children":1958},{"style":230},[1959],{"type":48,"value":1960},"redact",{"type":43,"tag":217,"props":1962,"children":1963},{"style":315},[1964],{"type":48,"value":323},{"type":43,"tag":217,"props":1966,"children":1967},{"style":315},[1968],{"type":48,"value":586},{"type":43,"tag":217,"props":1970,"children":1971},{"style":309},[1972],{"type":48,"value":767},{"type":43,"tag":217,"props":1974,"children":1975},{"style":315},[1976],{"type":48,"value":733},{"type":43,"tag":217,"props":1978,"children":1979},{"class":219,"line":539},[1980,1985,1989,1993,1998,2002,2008,2012,2016],{"type":43,"tag":217,"props":1981,"children":1982},{"style":689},[1983],{"type":48,"value":1984},"    modelCallLimitMiddleware",{"type":43,"tag":217,"props":1986,"children":1987},{"style":309},[1988],{"type":48,"value":696},{"type":43,"tag":217,"props":1990,"children":1991},{"style":315},[1992],{"type":48,"value":1511},{"type":43,"tag":217,"props":1994,"children":1995},{"style":707},[1996],{"type":48,"value":1997}," runLimit",{"type":43,"tag":217,"props":1999,"children":2000},{"style":315},[2001],{"type":48,"value":715},{"type":43,"tag":217,"props":2003,"children":2005},{"style":2004},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[2006],{"type":48,"value":2007}," 50",{"type":43,"tag":217,"props":2009,"children":2010},{"style":315},[2011],{"type":48,"value":586},{"type":43,"tag":217,"props":2013,"children":2014},{"style":309},[2015],{"type":48,"value":767},{"type":43,"tag":217,"props":2017,"children":2018},{"style":315},[2019],{"type":48,"value":733},{"type":43,"tag":217,"props":2021,"children":2022},{"class":219,"line":1197},[2023,2028],{"type":43,"tag":217,"props":2024,"children":2025},{"style":309},[2026],{"type":48,"value":2027},"  ]",{"type":43,"tag":217,"props":2029,"children":2030},{"style":315},[2031],{"type":48,"value":733},{"type":43,"tag":217,"props":2033,"children":2034},{"class":219,"line":1206},[2035,2039,2043],{"type":43,"tag":217,"props":2036,"children":2037},{"style":315},[2038],{"type":48,"value":762},{"type":43,"tag":217,"props":2040,"children":2041},{"style":309},[2042],{"type":48,"value":767},{"type":43,"tag":217,"props":2044,"children":2045},{"style":315},[2046],{"type":48,"value":610},{"type":43,"tag":51,"props":2048,"children":2050},{"id":2049},"mcp-connectors",[2051],{"type":48,"value":2052},"MCP connectors",{"type":43,"tag":58,"props":2054,"children":2055},{},[2056,2058,2064,2065,2071,2073,2079],{"type":48,"value":2057},"Declare remote MCP servers in ",{"type":43,"tag":64,"props":2059,"children":2061},{"className":2060},[],[2062],{"type":48,"value":2063},"connectors\u002Fmcp.py",{"type":48,"value":356},{"type":43,"tag":64,"props":2066,"children":2068},{"className":2067},[],[2069],{"type":48,"value":2070},"connectors\u002Fmcp.ts",{"type":48,"value":2072}," with a named ",{"type":43,"tag":64,"props":2074,"children":2076},{"className":2075},[],[2077],{"type":48,"value":2078},"mcp",{"type":48,"value":2080}," export. MDA loads their tools at runtime and appends them to authored tools, prefixing tool names with the server name by default.",{"type":43,"tag":206,"props":2082,"children":2084},{"className":460,"code":2083,"language":462,"meta":211,"style":211},"# connectors\u002Fmcp.py\nfrom managed_deepagents.connectors import define_mcp_servers\n\nmcp = define_mcp_servers(\n    mcp_servers={\n        \"langchainDocs\": {\"transport\": \"http\", \"url\": \"https:\u002F\u002Fdocs.langchain.com\u002Fmcp\"},\n    },\n)\n",[2085],{"type":43,"tag":64,"props":2086,"children":2087},{"__ignoreMap":211},[2088,2096,2104,2111,2119,2127,2135,2143],{"type":43,"tag":217,"props":2089,"children":2090},{"class":219,"line":220},[2091],{"type":43,"tag":217,"props":2092,"children":2093},{},[2094],{"type":48,"value":2095},"# connectors\u002Fmcp.py\n",{"type":43,"tag":217,"props":2097,"children":2098},{"class":219,"line":252},[2099],{"type":43,"tag":217,"props":2100,"children":2101},{},[2102],{"type":48,"value":2103},"from managed_deepagents.connectors import define_mcp_servers\n",{"type":43,"tag":217,"props":2105,"children":2106},{"class":219,"line":485},[2107],{"type":43,"tag":217,"props":2108,"children":2109},{"emptyLinePlaceholder":489},[2110],{"type":48,"value":492},{"type":43,"tag":217,"props":2112,"children":2113},{"class":219,"line":495},[2114],{"type":43,"tag":217,"props":2115,"children":2116},{},[2117],{"type":48,"value":2118},"mcp = define_mcp_servers(\n",{"type":43,"tag":217,"props":2120,"children":2121},{"class":219,"line":504},[2122],{"type":43,"tag":217,"props":2123,"children":2124},{},[2125],{"type":48,"value":2126},"    mcp_servers={\n",{"type":43,"tag":217,"props":2128,"children":2129},{"class":219,"line":512},[2130],{"type":43,"tag":217,"props":2131,"children":2132},{},[2133],{"type":48,"value":2134},"        \"langchainDocs\": {\"transport\": \"http\", \"url\": \"https:\u002F\u002Fdocs.langchain.com\u002Fmcp\"},\n",{"type":43,"tag":217,"props":2136,"children":2137},{"class":219,"line":521},[2138],{"type":43,"tag":217,"props":2139,"children":2140},{},[2141],{"type":48,"value":2142},"    },\n",{"type":43,"tag":217,"props":2144,"children":2145},{"class":219,"line":530},[2146],{"type":43,"tag":217,"props":2147,"children":2148},{},[2149],{"type":48,"value":545},{"type":43,"tag":206,"props":2151,"children":2153},{"className":548,"code":2152,"language":550,"meta":211,"style":211},"\u002F\u002F connectors\u002Fmcp.ts\nimport { defineMcpServers } from \"managed-deepagents\";\n\nexport const mcp = defineMcpServers({\n  mcpServers: {\n    langchainDocs: { transport: \"http\", url: \"https:\u002F\u002Fdocs.langchain.com\u002Fmcp\" },\n  },\n});\n",[2154],{"type":43,"tag":64,"props":2155,"children":2156},{"__ignoreMap":211},[2157,2165,2205,2212,2244,2261,2330,2337],{"type":43,"tag":217,"props":2158,"children":2159},{"class":219,"line":220},[2160],{"type":43,"tag":217,"props":2161,"children":2162},{"style":246},[2163],{"type":48,"value":2164},"\u002F\u002F connectors\u002Fmcp.ts\n",{"type":43,"tag":217,"props":2166,"children":2167},{"class":219,"line":252},[2168,2172,2176,2181,2185,2189,2193,2197,2201],{"type":43,"tag":217,"props":2169,"children":2170},{"style":568},[2171],{"type":48,"value":571},{"type":43,"tag":217,"props":2173,"children":2174},{"style":315},[2175],{"type":48,"value":576},{"type":43,"tag":217,"props":2177,"children":2178},{"style":309},[2179],{"type":48,"value":2180}," defineMcpServers",{"type":43,"tag":217,"props":2182,"children":2183},{"style":315},[2184],{"type":48,"value":586},{"type":43,"tag":217,"props":2186,"children":2187},{"style":568},[2188],{"type":48,"value":591},{"type":43,"tag":217,"props":2190,"children":2191},{"style":315},[2192],{"type":48,"value":596},{"type":43,"tag":217,"props":2194,"children":2195},{"style":230},[2196],{"type":48,"value":601},{"type":43,"tag":217,"props":2198,"children":2199},{"style":315},[2200],{"type":48,"value":323},{"type":43,"tag":217,"props":2202,"children":2203},{"style":315},[2204],{"type":48,"value":610},{"type":43,"tag":217,"props":2206,"children":2207},{"class":219,"line":485},[2208],{"type":43,"tag":217,"props":2209,"children":2210},{"emptyLinePlaceholder":489},[2211],{"type":48,"value":492},{"type":43,"tag":217,"props":2213,"children":2214},{"class":219,"line":495},[2215,2219,2223,2228,2232,2236,2240],{"type":43,"tag":217,"props":2216,"children":2217},{"style":568},[2218],{"type":48,"value":306},{"type":43,"tag":217,"props":2220,"children":2221},{"style":303},[2222],{"type":48,"value":677},{"type":43,"tag":217,"props":2224,"children":2225},{"style":309},[2226],{"type":48,"value":2227}," mcp ",{"type":43,"tag":217,"props":2229,"children":2230},{"style":315},[2231],{"type":48,"value":318},{"type":43,"tag":217,"props":2233,"children":2234},{"style":689},[2235],{"type":48,"value":2180},{"type":43,"tag":217,"props":2237,"children":2238},{"style":309},[2239],{"type":48,"value":696},{"type":43,"tag":217,"props":2241,"children":2242},{"style":315},[2243],{"type":48,"value":701},{"type":43,"tag":217,"props":2245,"children":2246},{"class":219,"line":504},[2247,2252,2256],{"type":43,"tag":217,"props":2248,"children":2249},{"style":707},[2250],{"type":48,"value":2251},"  mcpServers",{"type":43,"tag":217,"props":2253,"children":2254},{"style":315},[2255],{"type":48,"value":715},{"type":43,"tag":217,"props":2257,"children":2258},{"style":315},[2259],{"type":48,"value":2260}," {\n",{"type":43,"tag":217,"props":2262,"children":2263},{"class":219,"line":512},[2264,2269,2273,2277,2282,2286,2290,2295,2299,2303,2308,2312,2316,2321,2325],{"type":43,"tag":217,"props":2265,"children":2266},{"style":707},[2267],{"type":48,"value":2268},"    langchainDocs",{"type":43,"tag":217,"props":2270,"children":2271},{"style":315},[2272],{"type":48,"value":715},{"type":43,"tag":217,"props":2274,"children":2275},{"style":315},[2276],{"type":48,"value":576},{"type":43,"tag":217,"props":2278,"children":2279},{"style":707},[2280],{"type":48,"value":2281}," transport",{"type":43,"tag":217,"props":2283,"children":2284},{"style":315},[2285],{"type":48,"value":715},{"type":43,"tag":217,"props":2287,"children":2288},{"style":315},[2289],{"type":48,"value":596},{"type":43,"tag":217,"props":2291,"children":2292},{"style":230},[2293],{"type":48,"value":2294},"http",{"type":43,"tag":217,"props":2296,"children":2297},{"style":315},[2298],{"type":48,"value":323},{"type":43,"tag":217,"props":2300,"children":2301},{"style":315},[2302],{"type":48,"value":1798},{"type":43,"tag":217,"props":2304,"children":2305},{"style":707},[2306],{"type":48,"value":2307}," url",{"type":43,"tag":217,"props":2309,"children":2310},{"style":315},[2311],{"type":48,"value":715},{"type":43,"tag":217,"props":2313,"children":2314},{"style":315},[2315],{"type":48,"value":596},{"type":43,"tag":217,"props":2317,"children":2318},{"style":230},[2319],{"type":48,"value":2320},"https:\u002F\u002Fdocs.langchain.com\u002Fmcp",{"type":43,"tag":217,"props":2322,"children":2323},{"style":315},[2324],{"type":48,"value":323},{"type":43,"tag":217,"props":2326,"children":2327},{"style":315},[2328],{"type":48,"value":2329}," },\n",{"type":43,"tag":217,"props":2331,"children":2332},{"class":219,"line":521},[2333],{"type":43,"tag":217,"props":2334,"children":2335},{"style":315},[2336],{"type":48,"value":1588},{"type":43,"tag":217,"props":2338,"children":2339},{"class":219,"line":530},[2340,2344,2348],{"type":43,"tag":217,"props":2341,"children":2342},{"style":315},[2343],{"type":48,"value":762},{"type":43,"tag":217,"props":2345,"children":2346},{"style":309},[2347],{"type":48,"value":767},{"type":43,"tag":217,"props":2349,"children":2350},{"style":315},[2351],{"type":48,"value":610},{"type":43,"tag":58,"props":2353,"children":2354},{},[2355,2357,2362,2363,2369,2371,2376],{"type":48,"value":2356},"Only remote ",{"type":43,"tag":64,"props":2358,"children":2360},{"className":2359},[],[2361],{"type":48,"value":2294},{"type":48,"value":410},{"type":43,"tag":64,"props":2364,"children":2366},{"className":2365},[],[2367],{"type":48,"value":2368},"sse",{"type":48,"value":2370}," transports are supported. Stdio servers are rejected. Configuration is validated eagerly at build or dev startup. Store any OAuth or header tokens in ",{"type":43,"tag":64,"props":2372,"children":2374},{"className":2373},[],[2375],{"type":48,"value":288},{"type":48,"value":2377}," and reference them from the connector.",{"type":43,"tag":51,"props":2379,"children":2381},{"id":2380},"schedules",[2382],{"type":48,"value":2383},"Schedules",{"type":43,"tag":58,"props":2385,"children":2386},{},[2387,2389,2395,2397,2403],{"type":48,"value":2388},"Declare managed cron schedules under ",{"type":43,"tag":64,"props":2390,"children":2392},{"className":2391},[],[2393],{"type":48,"value":2394},"schedules\u002F",{"type":48,"value":2396},", one named ",{"type":43,"tag":64,"props":2398,"children":2400},{"className":2399},[],[2401],{"type":48,"value":2402},"schedule",{"type":48,"value":2404}," export per file. Deploy reconciles them into LangSmith cron jobs after the deployment is live.",{"type":43,"tag":206,"props":2406,"children":2408},{"className":460,"code":2407,"language":462,"meta":211,"style":211},"# schedules\u002Fdaily_digest.py\nfrom managed_deepagents import define_schedule\n\nschedule = define_schedule(\n    cron=\"0 8 * * 1-5\",\n    timezone=\"America\u002FLos_Angeles\",\n    prompt=\"Summarize what you learned yesterday and list open questions.\",\n)\n",[2409],{"type":43,"tag":64,"props":2410,"children":2411},{"__ignoreMap":211},[2412,2420,2428,2435,2443,2451,2459,2467],{"type":43,"tag":217,"props":2413,"children":2414},{"class":219,"line":220},[2415],{"type":43,"tag":217,"props":2416,"children":2417},{},[2418],{"type":48,"value":2419},"# schedules\u002Fdaily_digest.py\n",{"type":43,"tag":217,"props":2421,"children":2422},{"class":219,"line":252},[2423],{"type":43,"tag":217,"props":2424,"children":2425},{},[2426],{"type":48,"value":2427},"from managed_deepagents import define_schedule\n",{"type":43,"tag":217,"props":2429,"children":2430},{"class":219,"line":485},[2431],{"type":43,"tag":217,"props":2432,"children":2433},{"emptyLinePlaceholder":489},[2434],{"type":48,"value":492},{"type":43,"tag":217,"props":2436,"children":2437},{"class":219,"line":495},[2438],{"type":43,"tag":217,"props":2439,"children":2440},{},[2441],{"type":48,"value":2442},"schedule = define_schedule(\n",{"type":43,"tag":217,"props":2444,"children":2445},{"class":219,"line":504},[2446],{"type":43,"tag":217,"props":2447,"children":2448},{},[2449],{"type":48,"value":2450},"    cron=\"0 8 * * 1-5\",\n",{"type":43,"tag":217,"props":2452,"children":2453},{"class":219,"line":512},[2454],{"type":43,"tag":217,"props":2455,"children":2456},{},[2457],{"type":48,"value":2458},"    timezone=\"America\u002FLos_Angeles\",\n",{"type":43,"tag":217,"props":2460,"children":2461},{"class":219,"line":521},[2462],{"type":43,"tag":217,"props":2463,"children":2464},{},[2465],{"type":48,"value":2466},"    prompt=\"Summarize what you learned yesterday and list open questions.\",\n",{"type":43,"tag":217,"props":2468,"children":2469},{"class":219,"line":530},[2470],{"type":43,"tag":217,"props":2471,"children":2472},{},[2473],{"type":48,"value":545},{"type":43,"tag":206,"props":2475,"children":2477},{"className":548,"code":2476,"language":550,"meta":211,"style":211},"\u002F\u002F schedules\u002Fdaily-digest.ts\nimport { defineSchedule } from \"managed-deepagents\";\n\nexport const schedule = defineSchedule({\n  cron: \"0 8 * * 1-5\",\n  timezone: \"America\u002FLos_Angeles\",\n  prompt: \"Summarize what you learned yesterday and list open questions.\",\n});\n",[2478],{"type":43,"tag":64,"props":2479,"children":2480},{"__ignoreMap":211},[2481,2489,2529,2536,2568,2597,2626,2655],{"type":43,"tag":217,"props":2482,"children":2483},{"class":219,"line":220},[2484],{"type":43,"tag":217,"props":2485,"children":2486},{"style":246},[2487],{"type":48,"value":2488},"\u002F\u002F schedules\u002Fdaily-digest.ts\n",{"type":43,"tag":217,"props":2490,"children":2491},{"class":219,"line":252},[2492,2496,2500,2505,2509,2513,2517,2521,2525],{"type":43,"tag":217,"props":2493,"children":2494},{"style":568},[2495],{"type":48,"value":571},{"type":43,"tag":217,"props":2497,"children":2498},{"style":315},[2499],{"type":48,"value":576},{"type":43,"tag":217,"props":2501,"children":2502},{"style":309},[2503],{"type":48,"value":2504}," defineSchedule",{"type":43,"tag":217,"props":2506,"children":2507},{"style":315},[2508],{"type":48,"value":586},{"type":43,"tag":217,"props":2510,"children":2511},{"style":568},[2512],{"type":48,"value":591},{"type":43,"tag":217,"props":2514,"children":2515},{"style":315},[2516],{"type":48,"value":596},{"type":43,"tag":217,"props":2518,"children":2519},{"style":230},[2520],{"type":48,"value":601},{"type":43,"tag":217,"props":2522,"children":2523},{"style":315},[2524],{"type":48,"value":323},{"type":43,"tag":217,"props":2526,"children":2527},{"style":315},[2528],{"type":48,"value":610},{"type":43,"tag":217,"props":2530,"children":2531},{"class":219,"line":485},[2532],{"type":43,"tag":217,"props":2533,"children":2534},{"emptyLinePlaceholder":489},[2535],{"type":48,"value":492},{"type":43,"tag":217,"props":2537,"children":2538},{"class":219,"line":495},[2539,2543,2547,2552,2556,2560,2564],{"type":43,"tag":217,"props":2540,"children":2541},{"style":568},[2542],{"type":48,"value":306},{"type":43,"tag":217,"props":2544,"children":2545},{"style":303},[2546],{"type":48,"value":677},{"type":43,"tag":217,"props":2548,"children":2549},{"style":309},[2550],{"type":48,"value":2551}," schedule ",{"type":43,"tag":217,"props":2553,"children":2554},{"style":315},[2555],{"type":48,"value":318},{"type":43,"tag":217,"props":2557,"children":2558},{"style":689},[2559],{"type":48,"value":2504},{"type":43,"tag":217,"props":2561,"children":2562},{"style":309},[2563],{"type":48,"value":696},{"type":43,"tag":217,"props":2565,"children":2566},{"style":315},[2567],{"type":48,"value":701},{"type":43,"tag":217,"props":2569,"children":2570},{"class":219,"line":504},[2571,2576,2580,2584,2589,2593],{"type":43,"tag":217,"props":2572,"children":2573},{"style":707},[2574],{"type":48,"value":2575},"  cron",{"type":43,"tag":217,"props":2577,"children":2578},{"style":315},[2579],{"type":48,"value":715},{"type":43,"tag":217,"props":2581,"children":2582},{"style":315},[2583],{"type":48,"value":596},{"type":43,"tag":217,"props":2585,"children":2586},{"style":230},[2587],{"type":48,"value":2588},"0 8 * * 1-5",{"type":43,"tag":217,"props":2590,"children":2591},{"style":315},[2592],{"type":48,"value":323},{"type":43,"tag":217,"props":2594,"children":2595},{"style":315},[2596],{"type":48,"value":733},{"type":43,"tag":217,"props":2598,"children":2599},{"class":219,"line":512},[2600,2605,2609,2613,2618,2622],{"type":43,"tag":217,"props":2601,"children":2602},{"style":707},[2603],{"type":48,"value":2604},"  timezone",{"type":43,"tag":217,"props":2606,"children":2607},{"style":315},[2608],{"type":48,"value":715},{"type":43,"tag":217,"props":2610,"children":2611},{"style":315},[2612],{"type":48,"value":596},{"type":43,"tag":217,"props":2614,"children":2615},{"style":230},[2616],{"type":48,"value":2617},"America\u002FLos_Angeles",{"type":43,"tag":217,"props":2619,"children":2620},{"style":315},[2621],{"type":48,"value":323},{"type":43,"tag":217,"props":2623,"children":2624},{"style":315},[2625],{"type":48,"value":733},{"type":43,"tag":217,"props":2627,"children":2628},{"class":219,"line":521},[2629,2634,2638,2642,2647,2651],{"type":43,"tag":217,"props":2630,"children":2631},{"style":707},[2632],{"type":48,"value":2633},"  prompt",{"type":43,"tag":217,"props":2635,"children":2636},{"style":315},[2637],{"type":48,"value":715},{"type":43,"tag":217,"props":2639,"children":2640},{"style":315},[2641],{"type":48,"value":596},{"type":43,"tag":217,"props":2643,"children":2644},{"style":230},[2645],{"type":48,"value":2646},"Summarize what you learned yesterday and list open questions.",{"type":43,"tag":217,"props":2648,"children":2649},{"style":315},[2650],{"type":48,"value":323},{"type":43,"tag":217,"props":2652,"children":2653},{"style":315},[2654],{"type":48,"value":733},{"type":43,"tag":217,"props":2656,"children":2657},{"class":219,"line":530},[2658,2662,2666],{"type":43,"tag":217,"props":2659,"children":2660},{"style":315},[2661],{"type":48,"value":762},{"type":43,"tag":217,"props":2663,"children":2664},{"style":309},[2665],{"type":48,"value":767},{"type":43,"tag":217,"props":2667,"children":2668},{"style":315},[2669],{"type":48,"value":610},{"type":43,"tag":58,"props":2671,"children":2672},{},[2673,2675,2681,2683,2689,2691,2697,2699,2705,2707,2713,2715,2721],{"type":48,"value":2674},"Provide either ",{"type":43,"tag":64,"props":2676,"children":2678},{"className":2677},[],[2679],{"type":48,"value":2680},"prompt",{"type":48,"value":2682}," or a structured ",{"type":43,"tag":64,"props":2684,"children":2686},{"className":2685},[],[2687],{"type":48,"value":2688},"input",{"type":48,"value":2690},", not both. Set ",{"type":43,"tag":64,"props":2692,"children":2694},{"className":2693},[],[2695],{"type":48,"value":2696},"thread.mode",{"type":48,"value":2698}," to ",{"type":43,"tag":64,"props":2700,"children":2702},{"className":2701},[],[2703],{"type":48,"value":2704},"ephemeral",{"type":48,"value":2706}," (cleaned up after the run) or ",{"type":43,"tag":64,"props":2708,"children":2710},{"className":2709},[],[2711],{"type":48,"value":2712},"persistent",{"type":48,"value":2714}," (reuses a stable ",{"type":43,"tag":64,"props":2716,"children":2718},{"className":2717},[],[2719],{"type":48,"value":2720},"thread.id",{"type":48,"value":2722}," so state accumulates). Schedule declarations must be static literals, not values computed from env vars or function calls.",{"type":43,"tag":51,"props":2724,"children":2726},{"id":2725},"sandboxes",[2727],{"type":48,"value":2728},"Sandboxes",{"type":43,"tag":58,"props":2730,"children":2731},{},[2732,2734,2740,2742,2748,2749,2755],{"type":48,"value":2733},"Configure a sandbox when the agent needs isolated code execution or filesystem work. Export ",{"type":43,"tag":64,"props":2735,"children":2737},{"className":2736},[],[2738],{"type":48,"value":2739},"sandbox",{"type":48,"value":2741}," from ",{"type":43,"tag":64,"props":2743,"children":2745},{"className":2744},[],[2746],{"type":48,"value":2747},"sandbox\u002Findex.ts",{"type":48,"value":356},{"type":43,"tag":64,"props":2750,"children":2752},{"className":2751},[],[2753],{"type":48,"value":2754},"sandbox\u002F__init__.py",{"type":48,"value":92},{"type":43,"tag":206,"props":2757,"children":2759},{"className":460,"code":2758,"language":462,"meta":211,"style":211},"# sandbox\u002F__init__.py\nfrom managed_deepagents import define_sandbox\nfrom deepagents.backends import LangSmithSandbox\n\nsandbox = define_sandbox(\n    LangSmithSandbox,\n    scope=\"thread\",\n    idle_ttl_seconds=600,\n    default_timeout=600,\n)\n",[2760],{"type":43,"tag":64,"props":2761,"children":2762},{"__ignoreMap":211},[2763,2771,2779,2787,2794,2802,2810,2818,2826,2834],{"type":43,"tag":217,"props":2764,"children":2765},{"class":219,"line":220},[2766],{"type":43,"tag":217,"props":2767,"children":2768},{},[2769],{"type":48,"value":2770},"# sandbox\u002F__init__.py\n",{"type":43,"tag":217,"props":2772,"children":2773},{"class":219,"line":252},[2774],{"type":43,"tag":217,"props":2775,"children":2776},{},[2777],{"type":48,"value":2778},"from managed_deepagents import define_sandbox\n",{"type":43,"tag":217,"props":2780,"children":2781},{"class":219,"line":485},[2782],{"type":43,"tag":217,"props":2783,"children":2784},{},[2785],{"type":48,"value":2786},"from deepagents.backends import LangSmithSandbox\n",{"type":43,"tag":217,"props":2788,"children":2789},{"class":219,"line":495},[2790],{"type":43,"tag":217,"props":2791,"children":2792},{"emptyLinePlaceholder":489},[2793],{"type":48,"value":492},{"type":43,"tag":217,"props":2795,"children":2796},{"class":219,"line":504},[2797],{"type":43,"tag":217,"props":2798,"children":2799},{},[2800],{"type":48,"value":2801},"sandbox = define_sandbox(\n",{"type":43,"tag":217,"props":2803,"children":2804},{"class":219,"line":512},[2805],{"type":43,"tag":217,"props":2806,"children":2807},{},[2808],{"type":48,"value":2809},"    LangSmithSandbox,\n",{"type":43,"tag":217,"props":2811,"children":2812},{"class":219,"line":521},[2813],{"type":43,"tag":217,"props":2814,"children":2815},{},[2816],{"type":48,"value":2817},"    scope=\"thread\",\n",{"type":43,"tag":217,"props":2819,"children":2820},{"class":219,"line":530},[2821],{"type":43,"tag":217,"props":2822,"children":2823},{},[2824],{"type":48,"value":2825},"    idle_ttl_seconds=600,\n",{"type":43,"tag":217,"props":2827,"children":2828},{"class":219,"line":539},[2829],{"type":43,"tag":217,"props":2830,"children":2831},{},[2832],{"type":48,"value":2833},"    default_timeout=600,\n",{"type":43,"tag":217,"props":2835,"children":2836},{"class":219,"line":1197},[2837],{"type":43,"tag":217,"props":2838,"children":2839},{},[2840],{"type":48,"value":545},{"type":43,"tag":206,"props":2842,"children":2844},{"className":548,"code":2843,"language":550,"meta":211,"style":211},"\u002F\u002F sandbox\u002Findex.ts\nimport { defineSandbox } from \"managed-deepagents\";\nimport { LangSmithSandbox } from \"deepagents\";\n\nexport const sandbox = defineSandbox(LangSmithSandbox, {\n  scope: \"thread\",\n  idleTtlSeconds: 600,\n  defaultTimeout: 600,\n});\n",[2845],{"type":43,"tag":64,"props":2846,"children":2847},{"__ignoreMap":211},[2848,2856,2896,2937,2944,2981,3010,3031,3051],{"type":43,"tag":217,"props":2849,"children":2850},{"class":219,"line":220},[2851],{"type":43,"tag":217,"props":2852,"children":2853},{"style":246},[2854],{"type":48,"value":2855},"\u002F\u002F sandbox\u002Findex.ts\n",{"type":43,"tag":217,"props":2857,"children":2858},{"class":219,"line":252},[2859,2863,2867,2872,2876,2880,2884,2888,2892],{"type":43,"tag":217,"props":2860,"children":2861},{"style":568},[2862],{"type":48,"value":571},{"type":43,"tag":217,"props":2864,"children":2865},{"style":315},[2866],{"type":48,"value":576},{"type":43,"tag":217,"props":2868,"children":2869},{"style":309},[2870],{"type":48,"value":2871}," defineSandbox",{"type":43,"tag":217,"props":2873,"children":2874},{"style":315},[2875],{"type":48,"value":586},{"type":43,"tag":217,"props":2877,"children":2878},{"style":568},[2879],{"type":48,"value":591},{"type":43,"tag":217,"props":2881,"children":2882},{"style":315},[2883],{"type":48,"value":596},{"type":43,"tag":217,"props":2885,"children":2886},{"style":230},[2887],{"type":48,"value":601},{"type":43,"tag":217,"props":2889,"children":2890},{"style":315},[2891],{"type":48,"value":323},{"type":43,"tag":217,"props":2893,"children":2894},{"style":315},[2895],{"type":48,"value":610},{"type":43,"tag":217,"props":2897,"children":2898},{"class":219,"line":485},[2899,2903,2907,2912,2916,2920,2924,2929,2933],{"type":43,"tag":217,"props":2900,"children":2901},{"style":568},[2902],{"type":48,"value":571},{"type":43,"tag":217,"props":2904,"children":2905},{"style":315},[2906],{"type":48,"value":576},{"type":43,"tag":217,"props":2908,"children":2909},{"style":309},[2910],{"type":48,"value":2911}," LangSmithSandbox",{"type":43,"tag":217,"props":2913,"children":2914},{"style":315},[2915],{"type":48,"value":586},{"type":43,"tag":217,"props":2917,"children":2918},{"style":568},[2919],{"type":48,"value":591},{"type":43,"tag":217,"props":2921,"children":2922},{"style":315},[2923],{"type":48,"value":596},{"type":43,"tag":217,"props":2925,"children":2926},{"style":230},[2927],{"type":48,"value":2928},"deepagents",{"type":43,"tag":217,"props":2930,"children":2931},{"style":315},[2932],{"type":48,"value":323},{"type":43,"tag":217,"props":2934,"children":2935},{"style":315},[2936],{"type":48,"value":610},{"type":43,"tag":217,"props":2938,"children":2939},{"class":219,"line":495},[2940],{"type":43,"tag":217,"props":2941,"children":2942},{"emptyLinePlaceholder":489},[2943],{"type":48,"value":492},{"type":43,"tag":217,"props":2945,"children":2946},{"class":219,"line":504},[2947,2951,2955,2960,2964,2968,2973,2977],{"type":43,"tag":217,"props":2948,"children":2949},{"style":568},[2950],{"type":48,"value":306},{"type":43,"tag":217,"props":2952,"children":2953},{"style":303},[2954],{"type":48,"value":677},{"type":43,"tag":217,"props":2956,"children":2957},{"style":309},[2958],{"type":48,"value":2959}," sandbox ",{"type":43,"tag":217,"props":2961,"children":2962},{"style":315},[2963],{"type":48,"value":318},{"type":43,"tag":217,"props":2965,"children":2966},{"style":689},[2967],{"type":48,"value":2871},{"type":43,"tag":217,"props":2969,"children":2970},{"style":309},[2971],{"type":48,"value":2972},"(LangSmithSandbox",{"type":43,"tag":217,"props":2974,"children":2975},{"style":315},[2976],{"type":48,"value":1798},{"type":43,"tag":217,"props":2978,"children":2979},{"style":315},[2980],{"type":48,"value":2260},{"type":43,"tag":217,"props":2982,"children":2983},{"class":219,"line":512},[2984,2989,2993,2997,3002,3006],{"type":43,"tag":217,"props":2985,"children":2986},{"style":707},[2987],{"type":48,"value":2988},"  scope",{"type":43,"tag":217,"props":2990,"children":2991},{"style":315},[2992],{"type":48,"value":715},{"type":43,"tag":217,"props":2994,"children":2995},{"style":315},[2996],{"type":48,"value":596},{"type":43,"tag":217,"props":2998,"children":2999},{"style":230},[3000],{"type":48,"value":3001},"thread",{"type":43,"tag":217,"props":3003,"children":3004},{"style":315},[3005],{"type":48,"value":323},{"type":43,"tag":217,"props":3007,"children":3008},{"style":315},[3009],{"type":48,"value":733},{"type":43,"tag":217,"props":3011,"children":3012},{"class":219,"line":521},[3013,3018,3022,3027],{"type":43,"tag":217,"props":3014,"children":3015},{"style":707},[3016],{"type":48,"value":3017},"  idleTtlSeconds",{"type":43,"tag":217,"props":3019,"children":3020},{"style":315},[3021],{"type":48,"value":715},{"type":43,"tag":217,"props":3023,"children":3024},{"style":2004},[3025],{"type":48,"value":3026}," 600",{"type":43,"tag":217,"props":3028,"children":3029},{"style":315},[3030],{"type":48,"value":733},{"type":43,"tag":217,"props":3032,"children":3033},{"class":219,"line":530},[3034,3039,3043,3047],{"type":43,"tag":217,"props":3035,"children":3036},{"style":707},[3037],{"type":48,"value":3038},"  defaultTimeout",{"type":43,"tag":217,"props":3040,"children":3041},{"style":315},[3042],{"type":48,"value":715},{"type":43,"tag":217,"props":3044,"children":3045},{"style":2004},[3046],{"type":48,"value":3026},{"type":43,"tag":217,"props":3048,"children":3049},{"style":315},[3050],{"type":48,"value":733},{"type":43,"tag":217,"props":3052,"children":3053},{"class":219,"line":539},[3054,3058,3062],{"type":43,"tag":217,"props":3055,"children":3056},{"style":315},[3057],{"type":48,"value":762},{"type":43,"tag":217,"props":3059,"children":3060},{"style":309},[3061],{"type":48,"value":767},{"type":43,"tag":217,"props":3063,"children":3064},{"style":315},[3065],{"type":48,"value":610},{"type":43,"tag":58,"props":3067,"children":3068},{},[3069,3075,3077,3082,3084,3089,3091,3097,3099,3104],{"type":43,"tag":64,"props":3070,"children":3072},{"className":3071},[],[3073],{"type":48,"value":3074},"scope",{"type":48,"value":3076}," is ",{"type":43,"tag":64,"props":3078,"children":3080},{"className":3079},[],[3081],{"type":48,"value":3001},{"type":48,"value":3083}," (one sandbox per conversation) or ",{"type":43,"tag":64,"props":3085,"children":3087},{"className":3086},[],[3088],{"type":48,"value":384},{"type":48,"value":3090},". If ",{"type":43,"tag":64,"props":3092,"children":3094},{"className":3093},[],[3095],{"type":48,"value":3096},"sandbox\u002Fsetup.sh",{"type":48,"value":3098}," exists, MDA runs it once when a new sandbox is provisioned. During ",{"type":43,"tag":64,"props":3100,"children":3102},{"className":3101},[],[3103],{"type":48,"value":129},{"type":48,"value":3105},", the runtime falls back to a local temp-directory sandbox when provider credentials are unavailable; the fallback is for development only.",{"type":43,"tag":51,"props":3107,"children":3108},{"id":937},[3109],{"type":48,"value":3110},"Skills",{"type":43,"tag":58,"props":3112,"children":3113},{},[3114,3116,3122,3124,3129,3131,3136,3137,3143],{"type":48,"value":3115},"Put deploy-owned skills under ",{"type":43,"tag":64,"props":3117,"children":3119},{"className":3118},[],[3120],{"type":48,"value":3121},"skills\u002F\u003Cname>\u002FSKILL.md",{"type":48,"value":3123},". Deploy syncs ",{"type":43,"tag":64,"props":3125,"children":3127},{"className":3126},[],[3128],{"type":48,"value":983},{"type":48,"value":3130}," to Context Hub and deletes deployed skills that no longer exist locally. Each skill is a markdown file with ",{"type":43,"tag":64,"props":3132,"children":3134},{"className":3133},[],[3135],{"type":48,"value":865},{"type":48,"value":410},{"type":43,"tag":64,"props":3138,"children":3140},{"className":3139},[],[3141],{"type":48,"value":3142},"description",{"type":48,"value":3144}," frontmatter that the agent loads on demand.",{"type":43,"tag":51,"props":3146,"children":3148},{"id":3147},"cli-commands",[3149],{"type":48,"value":3150},"CLI commands",{"type":43,"tag":3152,"props":3153,"children":3154},"table",{},[3155,3174],{"type":43,"tag":3156,"props":3157,"children":3158},"thead",{},[3159],{"type":43,"tag":3160,"props":3161,"children":3162},"tr",{},[3163,3169],{"type":43,"tag":3164,"props":3165,"children":3166},"th",{},[3167],{"type":48,"value":3168},"Command",{"type":43,"tag":3164,"props":3170,"children":3171},{},[3172],{"type":48,"value":3173},"Use",{"type":43,"tag":3175,"props":3176,"children":3177},"tbody",{},[3178,3195,3248],{"type":43,"tag":3160,"props":3179,"children":3180},{},[3181,3190],{"type":43,"tag":3182,"props":3183,"children":3184},"td",{},[3185],{"type":43,"tag":64,"props":3186,"children":3188},{"className":3187},[],[3189],{"type":48,"value":429},{"type":43,"tag":3182,"props":3191,"children":3192},{},[3193],{"type":48,"value":3194},"Scaffold a Python or TypeScript project.",{"type":43,"tag":3160,"props":3196,"children":3197},{},[3198,3207],{"type":43,"tag":3182,"props":3199,"children":3200},{},[3201],{"type":43,"tag":64,"props":3202,"children":3204},{"className":3203},[],[3205],{"type":48,"value":3206},"mda dev [path]",{"type":43,"tag":3182,"props":3208,"children":3209},{},[3210,3212,3218,3220,3226,3227,3233,3234,3240,3241,3247],{"type":48,"value":3211},"Compile into ",{"type":43,"tag":64,"props":3213,"children":3215},{"className":3214},[],[3216],{"type":48,"value":3217},".mda\u002Fbuild",{"type":48,"value":3219}," and run the local LangGraph dev server in LangSmith Studio. Flags: ",{"type":43,"tag":64,"props":3221,"children":3223},{"className":3222},[],[3224],{"type":48,"value":3225},"--port",{"type":48,"value":789},{"type":43,"tag":64,"props":3228,"children":3230},{"className":3229},[],[3231],{"type":48,"value":3232},"--hostname",{"type":48,"value":789},{"type":43,"tag":64,"props":3235,"children":3237},{"className":3236},[],[3238],{"type":48,"value":3239},"--browser",{"type":48,"value":789},{"type":43,"tag":64,"props":3242,"children":3244},{"className":3243},[],[3245],{"type":48,"value":3246},"--no-reload",{"type":48,"value":92},{"type":43,"tag":3160,"props":3249,"children":3250},{},[3251,3260],{"type":43,"tag":3182,"props":3252,"children":3253},{},[3254],{"type":43,"tag":64,"props":3255,"children":3257},{"className":3256},[],[3258],{"type":48,"value":3259},"mda deploy [path]",{"type":43,"tag":3182,"props":3261,"children":3262},{},[3263,3265,3271,3272,3278,3279,3285,3286,3292,3293,3299],{"type":48,"value":3264},"Compile, sync Context Hub, upload, and deploy. Flags: ",{"type":43,"tag":64,"props":3266,"children":3268},{"className":3267},[],[3269],{"type":48,"value":3270},"--name",{"type":48,"value":789},{"type":43,"tag":64,"props":3273,"children":3275},{"className":3274},[],[3276],{"type":48,"value":3277},"--deployment-type dev|prod",{"type":48,"value":789},{"type":43,"tag":64,"props":3280,"children":3282},{"className":3281},[],[3283],{"type":48,"value":3284},"--tenant-id",{"type":48,"value":789},{"type":43,"tag":64,"props":3287,"children":3289},{"className":3288},[],[3290],{"type":48,"value":3291},"--host-url",{"type":48,"value":789},{"type":43,"tag":64,"props":3294,"children":3296},{"className":3295},[],[3297],{"type":48,"value":3298},"--no-wait",{"type":48,"value":92},{"type":43,"tag":58,"props":3301,"children":3302},{},[3303,3305,3311,3313,3318,3320,3326,3327,3333,3334,3340,3342,3347],{"type":48,"value":3304},"For Python projects, run ",{"type":43,"tag":64,"props":3306,"children":3308},{"className":3307},[],[3309],{"type":48,"value":3310},"uv sync",{"type":48,"value":3312}," inside the generated project before ",{"type":43,"tag":64,"props":3314,"children":3316},{"className":3315},[],[3317],{"type":48,"value":129},{"type":48,"value":3319},". Authentication resolves in order: ",{"type":43,"tag":64,"props":3321,"children":3323},{"className":3322},[],[3324],{"type":48,"value":3325},"LANGGRAPH_HOST_API_KEY",{"type":48,"value":789},{"type":43,"tag":64,"props":3328,"children":3330},{"className":3329},[],[3331],{"type":48,"value":3332},"LANGSMITH_API_KEY",{"type":48,"value":789},{"type":43,"tag":64,"props":3335,"children":3337},{"className":3336},[],[3338],{"type":48,"value":3339},"LANGCHAIN_API_KEY",{"type":48,"value":3341},", read from ",{"type":43,"tag":64,"props":3343,"children":3345},{"className":3344},[],[3346],{"type":48,"value":288},{"type":48,"value":3348}," first, then the shell.",{"type":43,"tag":51,"props":3350,"children":3352},{"id":3351},"deploy-and-context-hub",[3353],{"type":48,"value":3354},"Deploy and Context Hub",{"type":43,"tag":58,"props":3356,"children":3357},{},[3358,3363,3365,3370,3372,3378,3379,3385,3386,3392,3393,3399,3400,3406,3407,3413,3415,3421],{"type":43,"tag":64,"props":3359,"children":3361},{"className":3360},[],[3362],{"type":48,"value":90},{"type":48,"value":3364}," compiles the project into ",{"type":43,"tag":64,"props":3366,"children":3368},{"className":3367},[],[3369],{"type":48,"value":3217},{"type":48,"value":3371}," (copying your code verbatim, generating a managed LangGraph entry, excluding ",{"type":43,"tag":64,"props":3373,"children":3375},{"className":3374},[],[3376],{"type":48,"value":3377},"node_modules",{"type":48,"value":789},{"type":43,"tag":64,"props":3380,"children":3382},{"className":3381},[],[3383],{"type":48,"value":3384},".git",{"type":48,"value":789},{"type":43,"tag":64,"props":3387,"children":3389},{"className":3388},[],[3390],{"type":48,"value":3391},".mda",{"type":48,"value":789},{"type":43,"tag":64,"props":3394,"children":3396},{"className":3395},[],[3397],{"type":48,"value":3398},"memories",{"type":48,"value":789},{"type":43,"tag":64,"props":3401,"children":3403},{"className":3402},[],[3404],{"type":48,"value":3405},"dist",{"type":48,"value":789},{"type":43,"tag":64,"props":3408,"children":3410},{"className":3409},[],[3411],{"type":48,"value":3412},"build",{"type":48,"value":3414},", and ",{"type":43,"tag":64,"props":3416,"children":3418},{"className":3417},[],[3419],{"type":48,"value":3420},".env*",{"type":48,"value":3422},"), then:",{"type":43,"tag":3424,"props":3425,"children":3426},"ol",{},[3427,3432,3451,3469,3489],{"type":43,"tag":109,"props":3428,"children":3429},{},[3430],{"type":48,"value":3431},"Resolves the LangSmith key and verifies the model provider key is available.",{"type":43,"tag":109,"props":3433,"children":3434},{},[3435,3437,3442,3444,3449],{"type":48,"value":3436},"Forwards non-reserved ",{"type":43,"tag":64,"props":3438,"children":3440},{"className":3439},[],[3441],{"type":48,"value":288},{"type":48,"value":3443}," values (provider keys, MCP tokens, database URLs) as hosted deployment secrets. The ",{"type":43,"tag":64,"props":3445,"children":3447},{"className":3446},[],[3448],{"type":48,"value":288},{"type":48,"value":3450}," file is never uploaded.",{"type":43,"tag":109,"props":3452,"children":3453},{},[3454,3456,3461,3462,3467],{"type":48,"value":3455},"Syncs ",{"type":43,"tag":64,"props":3457,"children":3459},{"className":3458},[],[3460],{"type":48,"value":959},{"type":48,"value":410},{"type":43,"tag":64,"props":3463,"children":3465},{"className":3464},[],[3466],{"type":48,"value":983},{"type":48,"value":3468}," to the deployment's Context Hub repo, preserving runtime memory.",{"type":43,"tag":109,"props":3470,"children":3471},{},[3472,3474,3480,3482,3487],{"type":48,"value":3473},"Uploads the build, triggers a hosted build, and waits until the revision is ",{"type":43,"tag":64,"props":3475,"children":3477},{"className":3476},[],[3478],{"type":48,"value":3479},"DEPLOYED",{"type":48,"value":3481}," (unless ",{"type":43,"tag":64,"props":3483,"children":3485},{"className":3484},[],[3486],{"type":48,"value":3298},{"type":48,"value":3488},").",{"type":43,"tag":109,"props":3490,"children":3491},{},[3492,3494,3499],{"type":48,"value":3493},"Reconciles managed cron jobs from ",{"type":43,"tag":64,"props":3495,"children":3497},{"className":3496},[],[3498],{"type":48,"value":975},{"type":48,"value":92},{"type":43,"tag":58,"props":3501,"children":3502},{},[3503,3505,3511,3512,3518,3520,3526,3528,3534,3535,3541],{"type":48,"value":3504},"Context Hub stores ",{"type":43,"tag":64,"props":3506,"children":3508},{"className":3507},[],[3509],{"type":48,"value":3510},"\u002Finstructions.md",{"type":48,"value":410},{"type":43,"tag":64,"props":3513,"children":3515},{"className":3514},[],[3516],{"type":48,"value":3517},"\u002Fskills\u002F**",{"type":48,"value":3519}," (deploy-owned) and ",{"type":43,"tag":64,"props":3521,"children":3523},{"className":3522},[],[3524],{"type":48,"value":3525},"\u002Fmemories\u002FAGENTS.md",{"type":48,"value":3527}," (runtime-owned, durable across deploys). Set ",{"type":43,"tag":64,"props":3529,"children":3531},{"className":3530},[],[3532],{"type":48,"value":3533},"disable_memory=True",{"type":48,"value":394},{"type":43,"tag":64,"props":3536,"children":3538},{"className":3537},[],[3539],{"type":48,"value":3540},"disableMemory: true",{"type":48,"value":3542}," to turn off managed agent memory.",{"type":43,"tag":58,"props":3544,"children":3545},{},[3546],{"type":48,"value":3547},"Inspect build status, revisions, and traces on the deployment page in LangSmith.",{"type":43,"tag":51,"props":3549,"children":3551},{"id":3550},"human-in-the-loop",[3552],{"type":48,"value":3553},"Human-in-the-loop",{"type":43,"tag":58,"props":3555,"children":3556},{},[3557,3559,3564,3565,3570,3572,3577],{"type":48,"value":3558},"Pause before sensitive tool calls with ",{"type":43,"tag":64,"props":3560,"children":3562},{"className":3561},[],[3563],{"type":48,"value":823},{"type":48,"value":394},{"type":43,"tag":64,"props":3566,"children":3568},{"className":3567},[],[3569],{"type":48,"value":830},{"type":48,"value":3571}," (and gate access with ",{"type":43,"tag":64,"props":3573,"children":3575},{"className":3574},[],[3576],{"type":48,"value":816},{"type":48,"value":3578},"). See [[langgraph-human-in-the-loop]] for interrupt and resume semantics.",{"type":43,"tag":206,"props":3580,"children":3582},{"className":460,"code":3581,"language":462,"meta":211,"style":211},"agent = define_deep_agent(\n    model=\"openai:gpt-5.5\",\n    tools=[query_db],\n    interrupt_on={\"query_db\": True},\n)\n",[3583],{"type":43,"tag":64,"props":3584,"children":3585},{"__ignoreMap":211},[3586,3593,3600,3607,3615],{"type":43,"tag":217,"props":3587,"children":3588},{"class":219,"line":220},[3589],{"type":43,"tag":217,"props":3590,"children":3591},{},[3592],{"type":48,"value":518},{"type":43,"tag":217,"props":3594,"children":3595},{"class":219,"line":252},[3596],{"type":43,"tag":217,"props":3597,"children":3598},{},[3599],{"type":48,"value":527},{"type":43,"tag":217,"props":3601,"children":3602},{"class":219,"line":485},[3603],{"type":43,"tag":217,"props":3604,"children":3605},{},[3606],{"type":48,"value":536},{"type":43,"tag":217,"props":3608,"children":3609},{"class":219,"line":495},[3610],{"type":43,"tag":217,"props":3611,"children":3612},{},[3613],{"type":48,"value":3614},"    interrupt_on={\"query_db\": True},\n",{"type":43,"tag":217,"props":3616,"children":3617},{"class":219,"line":504},[3618],{"type":43,"tag":217,"props":3619,"children":3620},{},[3621],{"type":48,"value":545},{"type":43,"tag":206,"props":3623,"children":3625},{"className":548,"code":3624,"language":550,"meta":211,"style":211},"export const agent = defineDeepAgent({\n  model: \"openai:gpt-5.5\",\n  tools: [queryDB],\n  interruptOn: { query_db: true },\n});\n",[3626],{"type":43,"tag":64,"props":3627,"children":3628},{"__ignoreMap":211},[3629,3660,3687,3706,3741],{"type":43,"tag":217,"props":3630,"children":3631},{"class":219,"line":220},[3632,3636,3640,3644,3648,3652,3656],{"type":43,"tag":217,"props":3633,"children":3634},{"style":568},[3635],{"type":48,"value":306},{"type":43,"tag":217,"props":3637,"children":3638},{"style":303},[3639],{"type":48,"value":677},{"type":43,"tag":217,"props":3641,"children":3642},{"style":309},[3643],{"type":48,"value":682},{"type":43,"tag":217,"props":3645,"children":3646},{"style":315},[3647],{"type":48,"value":318},{"type":43,"tag":217,"props":3649,"children":3650},{"style":689},[3651],{"type":48,"value":581},{"type":43,"tag":217,"props":3653,"children":3654},{"style":309},[3655],{"type":48,"value":696},{"type":43,"tag":217,"props":3657,"children":3658},{"style":315},[3659],{"type":48,"value":701},{"type":43,"tag":217,"props":3661,"children":3662},{"class":219,"line":252},[3663,3667,3671,3675,3679,3683],{"type":43,"tag":217,"props":3664,"children":3665},{"style":707},[3666],{"type":48,"value":710},{"type":43,"tag":217,"props":3668,"children":3669},{"style":315},[3670],{"type":48,"value":715},{"type":43,"tag":217,"props":3672,"children":3673},{"style":315},[3674],{"type":48,"value":596},{"type":43,"tag":217,"props":3676,"children":3677},{"style":230},[3678],{"type":48,"value":724},{"type":43,"tag":217,"props":3680,"children":3681},{"style":315},[3682],{"type":48,"value":323},{"type":43,"tag":217,"props":3684,"children":3685},{"style":315},[3686],{"type":48,"value":733},{"type":43,"tag":217,"props":3688,"children":3689},{"class":219,"line":485},[3690,3694,3698,3702],{"type":43,"tag":217,"props":3691,"children":3692},{"style":707},[3693],{"type":48,"value":741},{"type":43,"tag":217,"props":3695,"children":3696},{"style":315},[3697],{"type":48,"value":715},{"type":43,"tag":217,"props":3699,"children":3700},{"style":309},[3701],{"type":48,"value":750},{"type":43,"tag":217,"props":3703,"children":3704},{"style":315},[3705],{"type":48,"value":733},{"type":43,"tag":217,"props":3707,"children":3708},{"class":219,"line":495},[3709,3714,3718,3722,3727,3731,3737],{"type":43,"tag":217,"props":3710,"children":3711},{"style":707},[3712],{"type":48,"value":3713},"  interruptOn",{"type":43,"tag":217,"props":3715,"children":3716},{"style":315},[3717],{"type":48,"value":715},{"type":43,"tag":217,"props":3719,"children":3720},{"style":315},[3721],{"type":48,"value":576},{"type":43,"tag":217,"props":3723,"children":3724},{"style":707},[3725],{"type":48,"value":3726}," query_db",{"type":43,"tag":217,"props":3728,"children":3729},{"style":315},[3730],{"type":48,"value":715},{"type":43,"tag":217,"props":3732,"children":3734},{"style":3733},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[3735],{"type":48,"value":3736}," true",{"type":43,"tag":217,"props":3738,"children":3739},{"style":315},[3740],{"type":48,"value":2329},{"type":43,"tag":217,"props":3742,"children":3743},{"class":219,"line":504},[3744,3748,3752],{"type":43,"tag":217,"props":3745,"children":3746},{"style":315},[3747],{"type":48,"value":762},{"type":43,"tag":217,"props":3749,"children":3750},{"style":309},[3751],{"type":48,"value":767},{"type":43,"tag":217,"props":3753,"children":3754},{"style":315},[3755],{"type":48,"value":610},{"type":43,"tag":58,"props":3757,"children":3758},{},[3759,3761,3766,3768,3774],{"type":48,"value":3760},"When a run hits an interrupt, it pauses. During ",{"type":43,"tag":64,"props":3762,"children":3764},{"className":3763},[],[3765],{"type":48,"value":129},{"type":48,"value":3767},", respond to it in LangSmith Studio. On a deployed agent, resume through the LangGraph server API with a ",{"type":43,"tag":64,"props":3769,"children":3771},{"className":3770},[],[3772],{"type":48,"value":3773},"Command(resume=...)",{"type":48,"value":3775}," payload. During private beta, programmatic invocation from your own application is contact-your-team.",{"type":43,"tag":51,"props":3777,"children":3779},{"id":3778},"gotchas",[3780],{"type":48,"value":3781},"Gotchas",{"type":43,"tag":105,"props":3783,"children":3784},{},[3785,3825,3866,3883,3906,3921,3931],{"type":43,"tag":109,"props":3786,"children":3787},{},[3788,3800,3802,3807,3809,3815,3817,3823],{"type":43,"tag":78,"props":3789,"children":3790},{},[3791,3793,3798],{"type":48,"value":3792},"Use the ",{"type":43,"tag":64,"props":3794,"children":3796},{"className":3795},[],[3797],{"type":48,"value":69},{"type":48,"value":3799}," CLI",{"type":48,"value":3801},", not the older ",{"type":43,"tag":64,"props":3803,"children":3805},{"className":3804},[],[3806],{"type":48,"value":2928},{"type":48,"value":3808}," CLI or the removed ",{"type":43,"tag":64,"props":3810,"children":3812},{"className":3811},[],[3813],{"type":48,"value":3814},"Client",{"type":48,"value":3816}," SDK \u002F ",{"type":43,"tag":64,"props":3818,"children":3820},{"className":3819},[],[3821],{"type":48,"value":3822},"\u002Fv1\u002Fdeepagents",{"type":48,"value":3824}," REST surface. During private beta there is no public create\u002Fupdate\u002Finvoke API.",{"type":43,"tag":109,"props":3826,"children":3827},{},[3828,3833,3835,3840,3841,3846,3847,3852,3853,3858,3859,3864],{"type":43,"tag":78,"props":3829,"children":3830},{},[3831],{"type":48,"value":3832},"Do not set managed fields",{"type":48,"value":3834}," (",{"type":43,"tag":64,"props":3836,"children":3838},{"className":3837},[],[3839],{"type":48,"value":909},{"type":48,"value":789},{"type":43,"tag":64,"props":3842,"children":3844},{"className":3843},[],[3845],{"type":48,"value":916},{"type":48,"value":789},{"type":43,"tag":64,"props":3848,"children":3850},{"className":3849},[],[3851],{"type":48,"value":923},{"type":48,"value":789},{"type":43,"tag":64,"props":3854,"children":3856},{"className":3855},[],[3857],{"type":48,"value":930},{"type":48,"value":789},{"type":43,"tag":64,"props":3860,"children":3862},{"className":3861},[],[3863],{"type":48,"value":937},{"type":48,"value":3865},", system prompt) in the agent definition; the runtime owns them.",{"type":43,"tag":109,"props":3867,"children":3868},{},[3869,3874,3876,3881],{"type":43,"tag":78,"props":3870,"children":3871},{},[3872],{"type":48,"value":3873},"Model IDs need the provider prefix",{"type":48,"value":3875},": ",{"type":43,"tag":64,"props":3877,"children":3879},{"className":3878},[],[3880],{"type":48,"value":724},{"type":48,"value":3882},", not a bare model name.",{"type":43,"tag":109,"props":3884,"children":3885},{},[3886,3904],{"type":43,"tag":78,"props":3887,"children":3888},{},[3889,3891,3896,3897,3902],{"type":48,"value":3890},"MCP connectors support ",{"type":43,"tag":64,"props":3892,"children":3894},{"className":3893},[],[3895],{"type":48,"value":2294},{"type":48,"value":410},{"type":43,"tag":64,"props":3898,"children":3900},{"className":3899},[],[3901],{"type":48,"value":2368},{"type":48,"value":3903}," only",{"type":48,"value":3905},"; stdio is rejected, and misconfiguration surfaces at build or dev startup.",{"type":43,"tag":109,"props":3907,"children":3908},{},[3909,3919],{"type":43,"tag":78,"props":3910,"children":3911},{},[3912,3917],{"type":43,"tag":64,"props":3913,"children":3915},{"className":3914},[],[3916],{"type":48,"value":288},{"type":48,"value":3918}," is never archived",{"type":48,"value":3920},"; deploy forwards non-reserved values as hosted secrets. Do not commit real secrets.",{"type":43,"tag":109,"props":3922,"children":3923},{},[3924,3929],{"type":43,"tag":78,"props":3925,"children":3926},{},[3927],{"type":48,"value":3928},"Schedule declarations must be static literals",{"type":48,"value":3930},"; the compiler extracts them without running your code.",{"type":43,"tag":109,"props":3932,"children":3933},{},[3934,3939],{"type":43,"tag":78,"props":3935,"children":3936},{},[3937],{"type":48,"value":3938},"Private beta scope",{"type":48,"value":3940},": US LangSmith Cloud only, CLI-first. Self-hosted and Hybrid are not supported.",{"type":43,"tag":3942,"props":3943,"children":3944},"style",{},[3945],{"type":48,"value":3946},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":3948,"total":4121},[3949,3970,3981,3998,4011,4026,4041,4055,4069,4079,4090,4108],{"slug":3950,"name":3950,"fn":3951,"description":3952,"org":3953,"tags":3954,"stars":3967,"repoUrl":3968,"updatedAt":3969},"analyze-market","perform market analysis and size estimation","Perform a market analysis for a product category or segment. Trigger on: market analysis, market size, TAM SAM SOM, market opportunity, industry analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3955,3958,3961,3964],{"name":3956,"slug":3957,"type":14},"Marketing","marketing",{"name":3959,"slug":3960,"type":14},"Research","research",{"name":3962,"slug":3963,"type":14},"Sales","sales",{"name":3965,"slug":3966,"type":14},"Strategy","strategy",26592,"https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Fdeepagents","2026-04-18T04:46:54.557115",{"slug":3971,"name":3971,"fn":3972,"description":3973,"org":3974,"tags":3975,"stars":3967,"repoUrl":3968,"updatedAt":3980},"arxiv-search","search arXiv for academic research papers","Searches arXiv for preprints and academic papers, retrieves abstracts, and filters by topic. Use when the user asks to find research papers, search arXiv, look up preprints, find academic articles in physics, math, CS, biology, statistics, or related fields.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3976,3977],{"name":3959,"slug":3960,"type":14},{"name":3978,"slug":3979,"type":14},"Search","search","2026-05-13T06:11:01.203061",{"slug":3982,"name":3982,"fn":3983,"description":3984,"org":3985,"tags":3986,"stars":3967,"repoUrl":3968,"updatedAt":3997},"blog-post","write SEO-optimized blog posts","Write long-form blog posts with SEO optimization and clear structure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[3987,3990,3991,3994],{"name":3988,"slug":3989,"type":14},"Content Creation","content-creation",{"name":3956,"slug":3957,"type":14},{"name":3992,"slug":3993,"type":14},"SEO","seo",{"name":3995,"slug":3996,"type":14},"Writing","writing","2026-04-15T05:00:54.149813",{"slug":3999,"name":3999,"fn":4000,"description":4001,"org":4002,"tags":4003,"stars":3967,"repoUrl":3968,"updatedAt":4010},"competitor-analysis","analyze competitors and market positioning","Analyze competitors in a given market segment. Trigger on: competitive landscape, competitor analysis, market comparison, competitive positioning.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4004,4007,4008,4009],{"name":4005,"slug":4006,"type":14},"Competitive Intelligence","competitive-intelligence",{"name":3956,"slug":3957,"type":14},{"name":3959,"slug":3960,"type":14},{"name":3965,"slug":3966,"type":14},"2026-04-18T04:46:55.79306",{"slug":4012,"name":4012,"fn":4013,"description":4014,"org":4015,"tags":4016,"stars":3967,"repoUrl":3968,"updatedAt":4025},"deepagents-thread-inspector","inspect local Deep Agents conversation threads","Inspect and explain conversations in the local Deep Agents Code SQLite session store. Use as a fallback when LangSmith trace tooling is unavailable, for offline or untraced sessions, or when asked to identify or summarize a local dcode thread, inspect checkpoint metadata, list recent local threads, or parse ~\u002F.deepagents\u002F.state\u002Fsessions.db and a thread UUID or prefix.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4017,4018,4021,4022],{"name":19,"slug":20,"type":14},{"name":4019,"slug":4020,"type":14},"Debugging","debugging",{"name":9,"slug":8,"type":14},{"name":4023,"slug":4024,"type":14},"SQLite","sqlite","2026-07-24T06:08:57.102689",{"slug":4027,"name":4027,"fn":4028,"description":4029,"org":4030,"tags":4031,"stars":3967,"repoUrl":3968,"updatedAt":4040},"langgraph-docs","build stateful agents with LangGraph","Fetches and references LangGraph Python documentation to build stateful agents, create multi-agent workflows, and implement human-in-the-loop patterns. Use when the user asks about LangGraph, graph agents, state machines, agent orchestration, LangGraph API, or needs LangGraph implementation guidance.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4032,4033,4036,4039],{"name":19,"slug":20,"type":14},{"name":4034,"slug":4035,"type":14},"Documentation","documentation",{"name":4037,"slug":4038,"type":14},"LangGraph","langgraph",{"name":25,"slug":26,"type":14},"2026-05-13T06:11:03.650877",{"slug":4042,"name":4042,"fn":4043,"description":4044,"org":4045,"tags":4046,"stars":3967,"repoUrl":3968,"updatedAt":4054},"remember","capture knowledge into persistent memory","Review the current conversation and capture valuable knowledge — best practices, coding conventions, architecture decisions, workflows, and user feedback — into persistent memory (AGENTS.md) or reusable skills. Use when the user says: (1) remember this, (2) save what we learned, (3) update memory, (4) capture learnings.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4047,4048,4049,4052],{"name":19,"slug":20,"type":14},{"name":4034,"slug":4035,"type":14},{"name":4050,"slug":4051,"type":14},"Knowledge Management","knowledge-management",{"name":4053,"slug":930,"type":14},"Memory","2026-05-13T06:10:58.510037",{"slug":4056,"name":4056,"fn":4057,"description":4058,"org":4059,"tags":4060,"stars":3967,"repoUrl":3968,"updatedAt":4068},"skill-creator","create agent skills and tool integrations","Guide for creating effective skills that extend agent capabilities with specialized knowledge, workflows, or tool integrations. Use this skill when the user asks to: (1) create a new skill, (2) make a skill, (3) build a skill, (4) set up a skill, (5) initialize a skill, (6) scaffold a skill, (7) update or modify an existing skill, (8) validate a skill, (9) learn about skill structure, (10) understand how skills work, or (11) get guidance on skill design patterns. Trigger on phrases like \"create a skill\", \"new skill\", \"make a skill\", \"skill for X\", \"how do I create a skill\", or \"help me build a skill\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4061,4062,4065],{"name":19,"slug":20,"type":14},{"name":4063,"slug":4064,"type":14},"Engineering","engineering",{"name":4066,"slug":4067,"type":14},"Plugin Development","plugin-development","2026-05-13T06:10:59.88449",{"slug":4070,"name":4070,"fn":4071,"description":4072,"org":4073,"tags":4074,"stars":3967,"repoUrl":3968,"updatedAt":4078},"social-media","create optimized social media posts","Create social media posts optimized for engagement across platforms.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4075,4076,4077],{"name":3988,"slug":3989,"type":14},{"name":3956,"slug":3957,"type":14},{"name":3995,"slug":3996,"type":14},"2026-04-15T05:00:55.37452",{"slug":4080,"name":4080,"fn":4081,"description":4082,"org":4083,"tags":4084,"stars":3967,"repoUrl":3968,"updatedAt":4089},"web-research","conduct and synthesize web research","Searches multiple web sources, synthesizes findings, and produces cited research reports using delegated subagents. Use when the user asks to research a topic online, search the web, look something up, find current information, compare options, or produce a research report.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4085,4086,4087,4088],{"name":19,"slug":20,"type":14},{"name":25,"slug":26,"type":14},{"name":3959,"slug":3960,"type":14},{"name":3978,"slug":3979,"type":14},"2026-05-13T06:11:04.930044",{"slug":4091,"name":4091,"fn":4092,"description":4093,"org":4094,"tags":4095,"stars":4105,"repoUrl":4106,"updatedAt":4107},"mermaid-diagrams","embed Mermaid diagrams in documentation","Embed Mermaid diagrams in generated wiki pages. Use whenever documenting a runtime or request flow, a call sequence, a state machine or lifecycle, a data model or entity relationships, or non-trivial control flow, since these are clearer as a diagram than as prose. Also use when an update run touches a page that already contains a mermaid fence, or a page that contains a text fence a previous run degraded.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4096,4099,4100,4102],{"name":4097,"slug":4098,"type":14},"Diagrams","diagrams",{"name":4034,"slug":4035,"type":14},{"name":4101,"slug":1050,"type":14},"Markdown",{"name":4103,"slug":4104,"type":14},"Technical Writing","technical-writing",12181,"https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Fopenwiki","2026-07-24T06:09:01.089597",{"slug":4109,"name":4109,"fn":4110,"description":4111,"org":4112,"tags":4113,"stars":4105,"repoUrl":4106,"updatedAt":4120},"write-connector","implement OpenWiki source connectors","Add a new built-in OpenWiki source connector. Use when a user asks to create or implement an OpenWiki connector.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4114,4117],{"name":4115,"slug":4116,"type":14},"API Development","api-development",{"name":4118,"slug":4119,"type":14},"Integrations","integrations","2026-07-18T05:48:23.961804",41,{"items":4123,"total":4223},[4124,4139,4152,4168,4179,4191,4205],{"slug":4125,"name":4125,"fn":4126,"description":4127,"org":4128,"tags":4129,"stars":27,"repoUrl":28,"updatedAt":4138},"deep-agents-core","build applications with LangChain Deep Agents","INVOKE THIS SKILL when building ANY Deep Agents application. Covers create_deep_agent(), harness architecture, SKILL.md format, and configuration options.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4130,4131,4134,4135],{"name":19,"slug":20,"type":14},{"name":4132,"slug":4133,"type":14},"Architecture","architecture",{"name":9,"slug":8,"type":14},{"name":4136,"slug":4137,"type":14},"LLM","llm","2026-04-06T18:26:24.822592",{"slug":4140,"name":4140,"fn":4141,"description":4142,"org":4143,"tags":4144,"stars":27,"repoUrl":28,"updatedAt":4151},"deep-agents-memory","implement memory and persistence for Deep Agents","INVOKE THIS SKILL when your Deep Agent needs memory, persistence, or filesystem access. Covers StateBackend (ephemeral), StoreBackend (persistent), FilesystemMiddleware, and CompositeBackend for routing.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4145,4146,4147,4148],{"name":19,"slug":20,"type":14},{"name":9,"slug":8,"type":14},{"name":4053,"slug":930,"type":14},{"name":4149,"slug":4150,"type":14},"Storage","storage","2026-04-06T18:26:26.065654",{"slug":4153,"name":4153,"fn":4154,"description":4155,"org":4156,"tags":4157,"stars":27,"repoUrl":28,"updatedAt":4167},"deep-agents-orchestration","orchestrate subagents and tasks in Deep Agents","INVOKE THIS SKILL when using subagents, task planning, or human approval in Deep Agents. Covers SubAgentMiddleware, TodoList for planning, and HITL interrupts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4158,4159,4162,4163,4164],{"name":19,"slug":20,"type":14},{"name":4160,"slug":4161,"type":14},"Approvals","approvals",{"name":9,"slug":8,"type":14},{"name":25,"slug":26,"type":14},{"name":4165,"slug":4166,"type":14},"Workflow Automation","workflow-automation","2026-04-06T18:26:32.280463",{"slug":4169,"name":4169,"fn":4170,"description":4171,"org":4172,"tags":4173,"stars":27,"repoUrl":28,"updatedAt":4178},"deepagents-python-quickstart","scaffold local Deep Agents","Scaffold a minimal local Deep Agent in Python by following the official quickstart, using provider-native web search instead of Tavily. Use when the user wants to quickly build or try a Deep Agent locally.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4174,4175,4176],{"name":19,"slug":20,"type":14},{"name":9,"slug":8,"type":14},{"name":4177,"slug":462,"type":14},"Python","2026-07-24T06:09:00.291108",{"slug":4180,"name":4180,"fn":4181,"description":4182,"org":4183,"tags":4184,"stars":27,"repoUrl":28,"updatedAt":4190},"deepagents-typescript-quickstart","build Deep Agents in TypeScript","Scaffold a minimal local Deep Agent in TypeScript by following the official quickstart, using provider-native web search instead of Tavily. Use when the user wants to quickly build or try a Deep Agent locally.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4185,4186,4187],{"name":19,"slug":20,"type":14},{"name":9,"slug":8,"type":14},{"name":4188,"slug":4189,"type":14},"TypeScript","typescript","2026-07-24T06:09:00.673714",{"slug":4192,"name":4192,"fn":4193,"description":4194,"org":4195,"tags":4196,"stars":27,"repoUrl":28,"updatedAt":4204},"ecosystem-primer","select frameworks for LangChain and LangGraph agents","INVOKE FIRST for any LangChain \u002F LangGraph \u002F Deep Agents agent building project before consulting other skills or writing any agent code. Required starting point for up to date info on framework selection (LangChain vs LangGraph vs Deep Agents vs hybrid composition), agent patterns, install, environment setup, and which skill to load next.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4197,4198,4201,4202,4203],{"name":19,"slug":20,"type":14},{"name":4199,"slug":4200,"type":14},"AI Infrastructure","ai-infrastructure",{"name":4132,"slug":4133,"type":14},{"name":9,"slug":8,"type":14},{"name":4037,"slug":4038,"type":14},"2026-07-24T05:42:48.348966",{"slug":4206,"name":4206,"fn":4207,"description":4208,"org":4209,"tags":4210,"stars":27,"repoUrl":28,"updatedAt":4222},"eval-engineering","create and audit Harbor agent evals","Iteratively inspect an agent repository and optional user-provided traces, interview the user, and create, run, and audit Harbor evals one at a time. Use for agent evals, Harbor tasks, benchmark cases, verifier design, or controlled agent environments.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[4211,4212,4215,4218,4219],{"name":19,"slug":20,"type":14},{"name":4213,"slug":4214,"type":14},"Code Analysis","code-analysis",{"name":4216,"slug":4217,"type":14},"Evals","evals",{"name":9,"slug":8,"type":14},{"name":4220,"slug":4221,"type":14},"Testing","testing","2026-07-31T05:53:29.552458",22]