What problem does it solve? Securing an AI agent's HTTP surface is easy to get wrong: tools leak to unauthorized roles, governance routes expose every actor's data, and header-based identity lets anyone impersonate an admin. This Skill guides you through @adonis-agora/agent's three fail-closed layers — actor identity resolution, role/ability tool authorization, and object-level ownership — so misconfigurations fail safe instead of failing open. ## Core Features & Use Cases - Identity resolution: Wire AuthActorResolver over ctx.auth.user with a toActor mapper, understand why HeaderActorResolver is only safe behind a gateway, and avoid per-agent resolver identity mismatches. - Tool authorization: Apply DefaultToolAuthorizer role intersection at both the offered-tools filter and invoke-time re-check, or swap to ability-based checks via authzToolAuthorizer. - Governance gating: Mount /agent/governance/* routes only behind governanceAuthorize, keep unknown ids answering 404 via evaluateOwnership, and configure the dashboard's shell gate versus data gate correctly. - Use Case: Your /agent/governance/* routes all return 404 after configuring the store — this Skill explains that mounting is conditional on governanceAuthorize and shows the exact config to fix it. ## Quick Start Ask the agent to configure AuthActorResolver and an ADMIN-only governanceAuthorize gate in config/agent.ts so governance routes mount securely.