HelmKeep

Roles & Permissions

HelmKeep uses a flexible, role-based permissions system. Every member is assigned one or more roles, and each role grants a set of permissions that control what the member can do. Roles are household-scoped, so they can differ between households.

Built-in Roles

When a household is created, four built-in roles are automatically set up:

Owner

Full control over the household. Has every permission, including managing roles and deleting the household. Cannot be deleted.

tasks.*auctions.*balances.*invitations.*members.*roles.managesettings.managehousehold.delete

Manager

Can manage tasks, members, auctions, and finances. Cannot manage roles, settings, or delete the household.

tasks.*auctions.*balances.*invitations.*members.*

Treasurer

Focused on financial operations. Can view and adjust balances, manage allowances, and approve tasks.

balances.viewbalances.adjustbalances.allowance.managetasks.approvetasks.submitauctions.bidmembers.view

Member

Default Role

The default role assigned to new members. Can submit task completions, bid in auctions, and view other members.

tasks.submitauctions.bidmembers.view

Permissions Breakdown

Permissions are dot-delimited strings organized into groups:

PermissionDescription
tasks.createCreate new tasks and task templates
tasks.editEdit any task (not just your own)
tasks.deleteDelete or cancel tasks
tasks.assignAssign tasks to members
tasks.submitSubmit task completions
tasks.approveApprove or reject task submissions (all categories)
auctions.createCreate and configure auctions
auctions.manageClose, cancel, or modify active auctions
auctions.bidPlace bids in auctions
balances.viewView all member balances
balances.adjustMake manual balance adjustments
balances.allowance.manageConfigure allowance settings for members
invitations.createCreate and send household invites
invitations.revokeRevoke pending invites
members.manageCreate managed accounts and remove members
members.viewView all member profiles and details
roles.manageCreate, edit, delete roles and assign them
settings.manageManage household-level settings
household.deletePermanently delete the household

Custom Roles

Members with the roles.managepermission can create custom roles with any combination of permissions. This allows you to tailor access for specific members — for example, a “Chore Captain” role that can create and assign tasks but cannot manage finances.

Custom roles are managed in the Settings page under the Roles section. Each role has a name, description, priority level, and a set of permissions selected from the full list above.

Category-Scoped Approvals

In addition to the global tasks.approvepermission, HelmKeep supports category-scoped approvals. This allows a member to approve tasks only within specific categories — for example, a member could be authorized to approve “Kitchen” tasks but not “Yard Work” tasks.

Category-scoped permissions follow the pattern tasks.approve.<categoryId> and are configured through the role management interface or the category approval scope settings.

HelmKeep

This documentation covers all features as of the current release. If you have questions or find something missing, please open an issue on GitHub.