瀏覽代碼

Show input_preview only for Bash permission prompts

Bash commands are the security decision — the user needs to see the
actual command. Other tools (Write, Edit, etc.) have bulky payloads
that flood a phone screen; the description line is enough.
Claude 6 月之前
父節點
當前提交
a7c291aca7
共有 1 個文件被更改,包括 6 次插入3 次删除
  1. 6 3
      external_plugins/imessage/server.ts

+ 6 - 3
external_plugins/imessage/server.ts

@@ -530,15 +530,18 @@ mcp.setNotificationHandler(
       request_id: z.string(),
       tool_name: z.string(),
       description: z.string(),
+      input_preview: z.string(),
     }),
   }),
   async ({ params }) => {
-    const { request_id, tool_name, description } = params
+    const { request_id, tool_name, description, input_preview } = params
     const access = loadAccess()
+    const preview = tool_name === 'Bash' ? `\n${input_preview}` : ''
     const text =
       `🔐 Permission request [${request_id}]\n` +
-      `${tool_name}: ${description}\n\n` +
-      `Reply "yes ${request_id}" to allow or "no ${request_id}" to deny.`
+      `${tool_name}: ${description}` +
+      preview +
+      `\n\nReply "yes ${request_id}" to allow or "no ${request_id}" to deny.`
     // allowFrom holds handle IDs, not chat GUIDs — resolve via qChatsForHandle.
     // Include SELF addresses so the owner's self-chat gets the prompt even
     // when allowFrom is empty (default config).