diff --git a/web/components/community-actions-menu.react.js b/web/components/community-actions-menu.react.js
--- a/web/components/community-actions-menu.react.js
+++ b/web/components/community-actions-menu.react.js
@@ -36,6 +36,10 @@
     community,
     threadPermissions.MANAGE_INVITE_LINKS,
   );
+  const canChangeRoles = threadHasPermission(
+    community,
+    threadPermissions.CHANGE_ROLE,
+  );
 
   const openViewInviteLinkModal = React.useCallback(() => {
     if (!inviteLink) {
@@ -48,6 +52,8 @@
     pushModal(<ManageInviteLinksModal communityID={communityID} />);
   }, [communityID, pushModal]);
 
+  const openCommunityRolesModal = React.useCallback(() => {}, []);
+
   const items = React.useMemo(() => {
     const itemSpecs = [];
 
@@ -67,12 +73,22 @@
       });
     }
 
+    if (canChangeRoles) {
+      itemSpecs.push({
+        text: 'Roles',
+        icon: 'user-info',
+        onClick: openCommunityRolesModal,
+      });
+    }
+
     return itemSpecs;
   }, [
     canManageLinks,
     inviteLink,
     openManageInviteLinksModal,
     openViewInviteLinkModal,
+    canChangeRoles,
+    openCommunityRolesModal,
   ]);
 
   const menuItems = React.useMemo(