diff --git a/packages/frontend/src/scripts/get-note-menu.ts b/packages/frontend/src/scripts/get-note-menu.ts
index f732c259f..9c0ff3d1b 100644
--- a/packages/frontend/src/scripts/get-note-menu.ts
+++ b/packages/frontend/src/scripts/get-note-menu.ts
@@ -9,6 +9,7 @@ import copyToClipboard from '@/scripts/copy-to-clipboard';
 import { url } from '@/config';
 import { noteActions } from '@/store';
 import { miLocalStorage } from '@/local-storage';
+import { getUserMenu } from '@/scripts/get-user-menu';
 
 export function getNoteMenu(props: {
 	note: misskey.entities.Note;
@@ -284,6 +285,15 @@ export function getNoteMenu(props: {
 				text: i18n.ts.pin,
 				action: () => togglePin(true),
 			} : undefined,
+			appearNote.userId !== $i.id ? {
+				type: 'parent',
+				icon: 'ti ti-user',
+				text: i18n.ts.user,
+				children: async () => {
+					const user = await os.api('users/show', { userId: appearNote.userId });
+					return getUserMenu(user);
+				},
+			} : undefined,
 			/*
 		...($i.isModerator || $i.isAdmin ? [
 			null,
diff --git a/packages/frontend/src/scripts/get-user-menu.ts b/packages/frontend/src/scripts/get-user-menu.ts
index 313dddc5b..e8b708ec8 100644
--- a/packages/frontend/src/scripts/get-user-menu.ts
+++ b/packages/frontend/src/scripts/get-user-menu.ts
@@ -1,4 +1,5 @@
 import { defineAsyncComponent } from 'vue';
+import * as misskey from 'misskey-js';
 import { i18n } from '@/i18n';
 import copyToClipboard from '@/scripts/copy-to-clipboard';
 import { host } from '@/config';
@@ -8,7 +9,7 @@ import { $i, iAmModerator } from '@/account';
 import { mainRouter } from '@/router';
 import { Router } from '@/nirax';
 
-export function getUserMenu(user, router: Router = mainRouter) {
+export function getUserMenu(user: misskey.entities.UserDetailed, router: Router = mainRouter) {
 	const meId = $i ? $i.id : null;
 
 	async function pushList() {
@@ -168,12 +169,6 @@ export function getUserMenu(user, router: Router = mainRouter) {
 
 		if (iAmModerator) {
 			menu = menu.concat([null, {
-				icon: 'ti ti-user-exclamation',
-				text: i18n.ts.moderation,
-				action: () => {
-					router.push('/user-info/' + user.id + '#moderation');
-				},
-			}, {
 				icon: 'ti ti-badges',
 				text: i18n.ts.roles,
 				action: async () => {