{
  "video": {
    "id": "FGftGOzfohc",
    "title": "Build a Research Agent with Claude Managed Agents (Part 2 of 4) — Anthropic",
    "duration": 2136,
    "upload_date": null,
    "channel": "AI Engineer",
    "source": "AI Engineer",
    "event_format": ""
  },
  "analysis": {
    "video_id": "FGftGOzfohc",
    "title": "Build a Research Agent with Claude Managed Agents (Part 2 of 4) — Anthropic",
    "one_liner": "Claude Managed Agents gives you a hosted harness, sandbox, event log and scaling. You create an agent and an environment, start a session, then send and receive events. Add sub-agents, skills, shared memory stores and rubric-graded 'outcomes' to turn a chat bot into a long-running research desk.",
    "summary": "Anthropic's Priyanka and Gabe demo Claude Managed Agents (CMA). They first create a jokes agent from a single prompt in the console. Then they build 'research desk', an app that analyses SEC filings, driven step by step by a Claude Code workshop skill. The app starts as a chat interface over the session event stream (SSE). It is then upgraded with specialised sub-agents, an SEC skill, a shared memory store, self-supervised 'outcomes' with rubrics, and a custom dispatch tool for map-reduce orchestration across many sessions. Most of the Q&A covers credential vaults, how CMA relates to the Agent SDK, guardrails, session forking, memory lock-in, private data access, and environment dependencies.",
    "key_points": [
      "Basic flow: create an agent (v1 agents endpoint), configure an environment (the sandbox template: network access, packages), start a session, send events and get events back. Anthropic manages the infrastructure, hosting, harness, sandbox management, scaling and event-log storage.",
      "Chat-like apps run over the session event stream. The backend sends a user message event and re-streams the SSE events to the browser. The speakers pitch CMA for long-running async tasks lasting 'hours, days, weeks, and even months'.",
      "An upgraded agent version gets specialised sub-agents (e.g. a financial extractor and a risk evaluator) plus a self-reference, so the agent can spawn copies of itself. A spawned copy gets the prompt, tool descriptions and schemas, but not the session transcript. Each sub-agent appears as its own thread in the console for observability.",
      "'Outcomes' are self-supervision. You give a task, a rubric and max iterations. When Claude thinks it is done, a grader sub-agent checks the work and artifacts against the rubric, and Claude retries if the check fails. Outcomes are defined only at the session level; there is no sub-outcome support yet.",
      "Skills are live artifacts. Updating one, for example to handle a new SEC form, propagates to any new session that references it.",
      "Memory stores persist across sessions and can be shared. You can attach several per session, e.g. a user-level store and an org-wide store. 'Dreaming' consolidates memories by analysing transcripts and memories across sessions, but currently only for memory stores, not skills, prompts or agent definitions.",
      "Vaults handle credentials. The sandbox only sees a placeholder environment variable, and Anthropic swaps in the real secret at egress, only for host domains you allow. Vaults also support OAuth for MCPs.",
      "Private data can be reached by an MCP with a vault, by MCP tunnels (no internet exposure), or by self-hosted sandboxes peered with your network (providers such as Vercel, Modal and Daytona, plus Google Cloud and AWS)."
    ],
    "takeaways": [
      "Tighten the environment's network access in production (allowed domains, specific MCP servers) rather than using 'unrestricted'.",
      "Use outcomes with an explicit rubric and max iterations for async deliverables, such as a structured JSON scorecard plus a memory note, so a grader sub-agent checks completion.",
      "For fan-out work over many items (e.g. tickers), define a custom tool such as dispatch_analysis and orchestrate multiple sessions from your own server harness, then aggregate the results.",
      "Keep secrets out of prompts. Put them in vaults scoped to specific domains, and pass the vault ID when creating sessions.",
      "Build your own budget and loop guardrails. Per-session token or cost caps are still being explored and are not offered today."
    ],
    "topics": [
      "agents",
      "multi-agent orchestration",
      "agent memory",
      "self-supervision",
      "sandboxing",
      "credential management",
      "managed infrastructure"
    ],
    "tools": [
      "Claude Managed Agents",
      "Claude Code",
      "Claude Agent SDK",
      "Anthropic Console",
      "SEC EDGAR",
      "Bun",
      "npm",
      "AWS",
      "AWS Bedrock",
      "Google Cloud",
      "Vercel",
      "Modal",
      "Daytona",
      "MCP",
      "Notion",
      "Google Workspace CLI",
      "PagerDuty",
      "pip",
      "cargo",
      "GitHub"
    ],
    "quotes": [
      {
        "text": "All you have to do is start a session with the agent, send events, get back events. Everything else is managed by us.",
        "at": "03:13",
        "url": "https://www.youtube.com/watch?v=FGftGOzfohc&t=193s"
      },
      {
        "text": "Outcomes is how we've created self-supervision.",
        "at": "18:00",
        "url": "https://www.youtube.com/watch?v=FGftGOzfohc&t=1080s"
      },
      {
        "text": "I don't think anybody's writing code by hand, so I'm not going to do that either.",
        "at": "06:19",
        "url": "https://www.youtube.com/watch?v=FGftGOzfohc&t=379s"
      },
      {
        "text": "none of this is locked in. You can like take your data and go anywhere else if you wanted to. Everything is an API call.",
        "at": "31:22",
        "url": "https://www.youtube.com/watch?v=FGftGOzfohc&t=1882s"
      }
    ],
    "words": 7322
  },
  "summary_url": "/#FGftGOzfohc",
  "transcript": {
    "html": "/transcripts/FGftGOzfohc.html",
    "txt": "/transcripts/FGftGOzfohc.txt",
    "vtt": "/transcripts/FGftGOzfohc.vtt"
  }
}