Description
Agent Identities and Authority Profiles make automated actors visible and governable as first-class workspace principals. Creating an agent produces a kind: agent identity with zero default permissions, then requires an explicit grant step before useful authority is added. Administrators can attach per-Dotabase grants and configure a profile containing denied native tools, denied vault tools, web-access posture, and an optional blocking daily spend cap.
The profile is consumed at enforcement points rather than remaining descriptive metadata. Chat dispatch combines tool deny sets before a run, and the cost-cap path reads the stored daily ceiling. Agents use the same role and grant algebra as humans but cannot become Owner, which preserves shared administration concepts without pretending automated actors have identical risk or recovery characteristics.
Selling Points
- Starts every new agent at zero authority, preventing accidental inheritance of the creator’s full workspace access.
- Gives agents named identities that appear in directories, approvals, and audit attribution instead of blending into a human account.
- Combines data permissions, tool restrictions, web access, and spend control in one manageable profile.
- Reuses the familiar role and grant model, so administrators do not learn a second policy language for automation.
- Applies profile settings at runtime enforcement seams, making them operational controls rather than advisory labels.
User Story
An owner creates a research agent, grants read access to two Dotabases, denies shell-like tools, allows web access, and sets a modest daily budget. The agent appears beside people in Access settings and performs only the authorized research workflow. The owner walks away with a named automated worker whose data, tool, and cost boundaries can be reviewed and changed independently.
Extension Surface
This capability is configurable. Administrators set the profile through apps/web/src/modules/access/management/AgentCreateFlow.tsx and the API service in packages/access/src/service.ts. The supported policy shape is fixed in packages/access/src/agent-profile.ts; it accepts tool-name lists and values but does not expose a third-party policy-engine or agent-kind registration interface.
Capabilities & Limits
- Creates agent principals at zero permissions with optional initial Dotabase grants.
- Stores and enforces tool deny lists, web access, and a daily spend cap.
- Resolves agent profile defaults safely when no explicit profile row exists.
- Agents cannot hold the Owner system role.
- Hourly mutation caps and configurable cap behavior are roadmap-only, not part of the shipped profile.
Implementation Map
packages/access/src/agent-profile.tspackages/access/src/service.tspackages/db/src/schema/access-agent-profiles.tsapps/web/src/modules/access/management/AgentCreateFlow.tsx