{
  "video": {
    "id": "uTrY8slys0w",
    "title": "How to Let AI Agents Sign Up for Your App Safely — Isabelle Williams, WorkOS",
    "duration": 1113,
    "upload_date": null,
    "channel": "AI Engineer",
    "source": "AI Engineer",
    "event_format": ""
  },
  "analysis": {
    "video_id": "uTrY8slys0w",
    "title": "How to Let AI Agents Sign Up for Your App Safely — Isabelle Williams, WorkOS",
    "one_liner": "Let agents sign up for your app by hosting an auth.md file. Then tie them to real users, either with a claim-code flow or with an ID-JAG identity assertion signed by the agent provider. Never hand an agent the user's own token: issue a separate agent token whose scopes are the intersection of the user's permissions and a per-agent blueprint ceiling.",
    "summary": "Isabelle Williams, a PM at WorkOS, argues that 'your next user is an agent': personal agents will take over product discovery, signup and the path to the 'aha moment', so apps must let them in safely. Her demo app is Waypoint, a travel planner she vibe-coded with Cursor. She answers three questions with it: how to let agents in (the Auth.md open protocol, with an anonymous trial mode), how to connect them to real customers (a one-time-code claim flow, or ID-JAG assertions from the agent provider that create an account with no user action), and how to limit and revoke what agents do (scoped agent tokens built from agent blueprints). Live demos show an agent harness signing a new user up and booking dinner with no manual steps, and a fund agent rebalancing a corporate travel budget that is blocked from changing the budget itself.",
    "key_points": [
      "Auth.md is an open protocol: a markdown file hosted with your app that tells agents how to get access, create an account and call your API. It describes access and operations, but the application itself enforces auth on its API.",
      "Waypoint's Auth.md has two modes. In anonymous mode agents can take limited actions to prove the app's value without an account. Actions expand once the agent is tied back to a real user.",
      "Claim flow: the agent gets an access token plus a claim token. When the user wants ownership, the agent gives them a link and a one-time code. The user signs up or signs in on Waypoint, enters the code, the agent's work moves under their account, and the authorization server issues an OAuth access token on the user's behalf. Her caveat: links, signup and email verification are 'where you lose your user' in product-led growth terms.",
      "ID-JAG (Identity Assertion JWT Authorization Grant) is an IETF spec. It is a signed assertion of the user's identity from an issuer (the agent provider) for a specific audience (your app). The header carries the type, algorithm and signing key. The payload carries the issuer, the user's name, email and whether the email is verified, the audience and client ID, and the validity period. Anthropic's enterprise-managed authorization in the MCP spec and Okta's cross-app access use the same spec.",
      "ID-JAG flow: the agent discovers the protected resource and the OAuth authorization server, then asks the user's consent to share identity and email. It gets an ID-JAG from the provider (e.g. Claude) and sends it to the app's authorization server. The app verifies the signature and decides alone whether to create or link an account and which scopes to grant.",
      "Demo 1: an agent harness logged in as a brand-new user, Sam Rivera, is asked to plan a NYC itinerary. It skips tools that need a browser signup or an API key (TripIt needs an API key) and picks the one that allows agent signup. After consent for name, verified email and an elevated dinner-booking permission, it creates the account, books dinner at Quality Bistro and returns a shareable itinerary link, all with no manual action.",
      "Agent tokens instead of the user's token, for three reasons: auditing and attribution, revocation without affecting the user's session, and limiting scopes. The token's subject is the agent ID, it records that it acts on behalf of the user, and its permissions are the intersection of the user's permissions and the agent blueprint's ceiling.",
      "Demo 2: Jordan controls company travel funds and is the only one who can approve the budget and approval rules. A read-only chatbot agent has one permission. A fund agent can move money between users but cannot change the budget or rules. Asked to fix Alex's $250 shortfall, it moves the $70 available. Jordan then raises the budget to 2,000 with their own user token (the agent couldn't), and the agent finishes the fix."
    ],
    "takeaways": [
      "Host an Auth.md file so agents can find out how to get started with your app, and consider an anonymous mode with limited actions so agents can prove its value before anyone signs up.",
      "Accept ID-JAG assertions from agent providers to skip the signup, code-entry and email-verification steps where product-led growth loses users. Verify the signature and keep account-creation and scope decisions on your side.",
      "Never give an agent the user's token or an API key. Issue agent tokens with the agent ID as subject, the user as 'on behalf of', and scopes set to the intersection of the user's permissions and a per-agent blueprint ceiling.",
      "Design agents so sensitive controls such as budgets and approval rules stay outside their ceiling and need the human's own token. This matters most where real corporate money and compliance are involved.",
      "Build agent access on open standards (Auth.md, OAuth, ID-JAG); she argues that agents signing up, paying and acting can only be safe and trusted if they do."
    ],
    "topics": [
      "agents",
      "auth",
      "oauth",
      "identity",
      "agent-signup",
      "permissions",
      "product-led-growth",
      "open-standards"
    ],
    "tools": [
      "WorkOS",
      "WorkOS Agent Auth",
      "Auth.md",
      "ID-JAG",
      "OAuth",
      "MCP",
      "IETF",
      "Cursor",
      "Claude",
      "Claude Code",
      "Anthropic",
      "Okta",
      "OpenAI",
      "Propel",
      "TripIt",
      "Muse",
      "Instinct"
    ],
    "quotes": [
      {
        "text": "you might have noticed there is a link and a sign-up flow and entering a code and verifying my email. And if you know anything about product-led growth, you know this is where you lose your user.",
        "at": "04:57",
        "url": "https://www.youtube.com/watch?v=uTrY8slys0w&t=297s"
      },
      {
        "text": "doesn't my agent already know who I am?",
        "at": "05:10",
        "url": "https://www.youtube.com/watch?v=uTrY8slys0w&t=310s"
      },
      {
        "text": "it's really important to me that I don't just hand an agent Jordan's user token.",
        "at": "13:45",
        "url": "https://www.youtube.com/watch?v=uTrY8slys0w&t=825s"
      },
      {
        "text": "we are all going to need open standards for agents to talk to services to do things to pay to sign up for accounts.",
        "at": "11:50",
        "url": "https://www.youtube.com/watch?v=uTrY8slys0w&t=710s"
      }
    ],
    "words": 3650
  },
  "summary_url": "/#uTrY8slys0w",
  "transcript": {
    "html": "/transcripts/uTrY8slys0w.html",
    "txt": "/transcripts/uTrY8slys0w.txt",
    "vtt": "/transcripts/uTrY8slys0w.vtt"
  }
}