I built an interface for reviewing which automated assistants own credentials, what they can access, and when they need human approval.
I explored ownership and access for six automated assistants. Each has an owner and limited credentials. The interface shows credential requests, approvals, password changes, and account retirement. These software accounts are called non-human identities, or NHIs.
I explored how to make software-account permissions and approval decisions easier to inspect.
Discovery, classification, scope check, intake, approval, credential issued, action taken, credential decommissioned.
Recorded against the live backend. The same experience is playable in the browser — open the interactive demo →
Every action is scoped, metered, and logged. Privilege escalation surfaces as a permission check failing inside the agent loop — not a hardcoded pause. Governance is enforced where the credential is used.
Each agent has a standing scope, a credential type (service account, API key, or short-lived token), and an accountable owner. Discovery, classification, and lifecycle state are visible in the surface.
Remediation needs to revoke a compromised credential. Its standing scope doesn't allow it. The system routes an intake request, attaches the assessment, and waits for the operator. New agent credentials use the same workflow.
The pause isn’t hardcoded — it’s a permission check failing inside the agent loop. What happens after approval is logged the same way:
Nine events · one credential · ~16 minutes. Every line is the system's own record — not commentary. Approval, action, expiry, and the receipt are all in the same trail, so an access review sees the whole chain of custody in one query.
The backend emits a structured event stream of identities, scopes, credentials, and approvals. The control room renders against it — real-time posture visibility with no interface coupling to any one agent.