Skip to content

User Management

NimbleBrain supports multi-user environments where each person has their own identity, conversations, and workspace memberships. User management is available in dev mode (the built-in local identity store) and with the oidc adapter.

How users are managed depends on your authentication configuration in instance.json:

AdapterUser managementDescription
devVia nb__manage_users toolNo instance.json. Identities live in the built-in local store under users/. Network authentication is not enforced (see Security), but users, roles, and ownership still apply.
oidcExternal providerUsers are managed in your OIDC provider. NimbleBrain creates local records on first login.
workosExternal provider (WorkOS)Identities and sign-in are managed in WorkOS / AuthKit.

In dev mode, ask the agent to create users:

Create a user for sarah@example.com with the name Sarah

The agent uses nb__manage_users with action: "create". The new user is created with an org role (member by default; admin or owner if you specify) and stored in the local identity store.

nb__manage_users supports these actions:

ActionWhat it does
createCreate a user (requires email and displayName; optional orgRole)
updateChange a user’s email, displayName, or orgRole
deleteDeactivate a user (soft delete) — revokes sign-in, keeps the record
restoreRe-enable a previously deactivated user
listList all users

Every user has one org-level role:

Org roleCan manage usersDescription
ownerYesFull administrative control. The last active owner cannot be demoted or deactivated.
adminYesCan create, update, and deactivate users.
memberStandard user. Chats and uses tools; cannot manage other users.

Set the role at creation with orgRole, or change it later:

Make sarah@example.com an admin
Delete the user sarah@example.com

delete is a soft delete: it deactivates the user (they can no longer sign in) but keeps their record so they still appear as deactivated and can be restored. It does not hard-delete the underlying provider identity — that would be irreversible and would orphan their workspace memberships.

Restore the user sarah@example.com

Org roles control who can manage users. Workspace membership controls who can use a given workspace’s apps and tools. A user can belong to multiple workspaces, with a per-workspace role of admin or member.

Manage membership through the agent (it uses the manage_workspaces tool):

“Add sarah@example.com to the Engineering workspace as a member”

Workspace member management requires admin membership in that workspace. Workspace roles:

Workspace roleManage membersInstall connectorsChat & use tools
adminYesYesYes
memberYes

See Workspaces for more on creating workspaces and assigning members.

User management is controlled by the userManagement feature flag, which defaults to true. To disable:

nimblebrain.json
{
"features": {
"userManagement": false
}
}

When disabled, the nb__manage_users tool is not registered and returns an error if called.

  • Workspaces — assign users to workspaces with roles
  • Connectors — shared services within a workspace