> ## Documentation Index
> Fetch the complete documentation index at: https://manus.im/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 云浏览器

> Manus 的云端浏览器，操作起来就像真人一样

export const CodePrompt = ({children}) => {
  const [isCopied, setIsCopied] = useState(false);
  const textContent = useMemo(() => {
    const extractText = (children, depth = 0) => {
      const maxDepth = 10;
      if (depth > maxDepth) return '';
      if (children == null) return '';
      if (typeof children === 'string' || typeof children === 'number') {
        return String(children);
      }
      if (Array.isArray(children)) {
        return children.map(child => extractText(child, depth + 1)).join('');
      }
      if (typeof children === 'object' && children.props) {
        return extractText(children.props.children, depth + 1);
      }
      return '';
    };
    return extractText(children);
  }, [children]);
  const handleAskManus = useCallback(() => {
    const url = new URL('https://manus.im');
    if (textContent) {
      url.searchParams.set('q', textContent);
      url.searchParams.set('submit', '1');
    }
    window.open(url.toString(), '_blank');
  }, [textContent]);
  const handleCopy = useCallback(async () => {
    try {
      await navigator.clipboard.writeText(textContent);
      setIsCopied(true);
      setTimeout(() => {
        setIsCopied(false);
      }, 2000);
    } catch (err) {
      const textArea = document.createElement('textarea');
      textArea.value = textContent;
      textArea.style.position = 'fixed';
      textArea.style.opacity = '0';
      document.body.appendChild(textArea);
      textArea.select();
      try {
        document.execCommand('copy');
        setIsCopied(true);
        setTimeout(() => {
          setIsCopied(false);
        }, 2000);
      } catch (fallbackErr) {
        console.error(fallbackErr);
      }
      document.body.removeChild(textArea);
    }
  }, [textContent]);
  return <div className="code-block mt-5 mb-8 not-prose rounded-2xl relative group text-gray-950 dark:text-gray-50 codeblock-light border border-gray-950/10 dark:border-white/10 dark:twoslash-dark bg-transparent dark:bg-transparent">
      <div className="absolute top-3 right-4 flex items-center gap-1.5">
        <div className="z-10 relative">
          <button onClick={handleCopy} className="h-[26px] w-[26px] flex items-center justify-center rounded-md backdrop-blur peer group/copy-button " data-testid="copy-code-button" aria-label="Copy the contents from the code block">
            {isCopied ? <svg width="16" height="11" viewBox="0 0 16 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="fill-primary dark:fill-primary-light">
                <path d="M14.7813 1.21873C15.0751 1.51248 15.0751 1.98748 14.7813 2.2781L6.53135 10.5312C6.2376 10.825 5.7626 10.825 5.47197 10.5312L1.21885 6.28123C0.925098 5.98748 0.925098 5.51248 1.21885 5.22185C1.5126 4.93123 1.9876 4.9281 2.27822 5.22185L5.99697 8.9406L13.7188 1.21873C14.0126 0.924976 14.4876 0.924976 14.7782 1.21873H14.7813Z"></path>
              </svg> : <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg" className="w-4 h-4 text-gray-400 group-hover/copy-button:text-gray-500 dark:text-white/40 dark:group-hover/copy-button:text-white/60">
                <path d="M14.25 5.25H7.25C6.14543 5.25 5.25 6.14543 5.25 7.25V14.25C5.25 15.3546 6.14543 16.25 7.25 16.25H14.25C15.3546 16.25 16.25 15.3546 16.25 14.25V7.25C16.25 6.14543 15.3546 5.25 14.25 5.25Z" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"></path>
                <path d="M2.80103 11.998L1.77203 5.07397C1.61003 3.98097 2.36403 2.96397 3.45603 2.80197L10.38 1.77297C11.313 1.63397 12.19 2.16297 12.528 3.00097" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"></path>
              </svg>}
          </button>
          <div aria-hidden="true" className="absolute top-11 left-1/2 transform whitespace-nowrap -translate-x-1/2 -translate-y-1/2 peer-hover:opacity-100 opacity-0 text-white rounded-lg px-1.5 py-0.5 text-xs bg-primary-dark">
            {isCopied ? 'Copied' : 'Copy'}
          </div>
        </div>
        <div className="z-10 relative">
          <button onClick={handleAskManus} className="h-[26px] w-[26px] flex items-center justify-center rounded-md backdrop-blur peer group/ask-manus " id="ask-ai-code-block-button" aria-label="Ask Manus">
            <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" className="w-4 h-4 text-gray-400 group-hover/ask-manus:text-gray-500 dark:text-white/40 dark:group-hover/ask-manus:text-white/60">
              <path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z" />
              <path d="M12 8v6" />
              <path d="M9 11h6" />
            </svg>
          </button>
          <div aria-hidden="true" className="absolute top-11 left-1/2 transform whitespace-nowrap -translate-x-1/2 -translate-y-1/2 peer-hover:opacity-100 opacity-0 text-white rounded-lg px-1.5 py-0.5 text-xs bg-primary-dark">
            Ask Manus
          </div>
        </div>
      </div>

      <div className="w-0 min-w-full max-w-full py-3.5 px-4 h-full dark:bg-codeblock relative text-sm leading-6 children:!my-0 children:!shadow-none children:!bg-transparent transition-[height] duration-300 ease-in-out code-block-background [&_*]:ring-0 [&_*]:outline-0 [&_*]:focus:ring-0 [&_*]:focus:outline-0 [&_pre>code]:pr-[3rem] [&_pre>code>span.line-highlight]:min-w-[calc(100%+3rem)] [&_pre>code>span.line-diff]:min-w-[calc(100%+3rem)] rounded-2xl bg-white overflow-x-auto scrollbar-thin scrollbar-thumb-rounded scrollbar-thumb-black/15 hover:scrollbar-thumb-black/20 active:scrollbar-thumb-black/20 dark:scrollbar-thumb-white/20 dark:hover:scrollbar-thumb-white/25 dark:active:scrollbar-thumb-white/25" style={{
    fontVariantLigatures: 'none',
    height: 'auto',
    backgroundColor: 'rgb(255, 255, 255)'
  }}>
        <div className="font-mono whitespace-pre leading-6">{children}</div>
      </div>
    </div>;
};

## 什么是云浏览器？

云浏览器 是 Manus 专用的云端浏览器环境。与只能阅读文本的传统 AI 助手不同，Manus 实际上可以像真人一样操作此浏览器——访问网站、点击按钮、填写表单、提取数据以及完成多步骤工作流。

更重要的是，**您可以在此浏览器中登录您的个人或工作账户**，授权 Manus 执行需要身份验证的任务——例如检查您的电子邮件、更新您的 CRM、在社交媒体上发帖或访问高级研究工具。

这将 Manus 从一个基于文本的助手转变为一个可以在网络上代表您采取行动的 Agent。

## 为什么云浏览器很重要

大多数 AI 工具只能处理您提供的信息。它们无法访问网站、与 Web 应用程序交互或访问需要登录才能查看的内容。

云浏览器 使 Manus 能够：

* **自主浏览网页**以收集实时信息
* **登录您的账户**以执行经过身份验证的操作
* **与 Web 应用程序交互**就像人类一样
* **提取数据**来自没有 API 的网站
* **完成多步骤工作流**跨越多个网页

这就是 Manus 成为真正的 AI Agent，而不仅仅是聊天机器人的原因。

## 云浏览器如何工作

### 1. Manus 操作浏览器

<img src="https://mintcdn.com/docs-manus/5gZK3I5oeTh8gP_H/images/Screenshot2025-11-24at11.43.41AM.png?fit=max&auto=format&n=5gZK3I5oeTh8gP_H&q=85&s=830bb38915384ae486144dc815f6e9ae" alt="Screenshot2025 11 24at11 43 41AM Pn" width="2534" height="1688" data-path="images/Screenshot2025-11-24at11.43.41AM.png" />

当您给 Manus 一个需要网络访问的任务时，Manus 会自动打开云浏览器并导航到相关网站。

Manus：

* 打开云浏览器
* 访问相关新闻网站、数据库和初创企业目录
* 从多个来源提取信息
* 将结果编译成结构化报告

您可以实时查看 Manus 正在做的一切。

### 2. 您可以登录您的账户

对于需要身份验证的任务，您可以在云浏览器中登录您的账户。然后 Manus 将使用这些经过身份验证的会话来代表您执行操作。

**示例**:

<CodePrompt>
  "检查我本周 LinkedIn 账户中的合作咨询并起草回复"
</CodePrompt>

Manus：

* 打开云浏览器
* 访问您已登录的 LinkedIn 账户
* 起草个性化回复供您审核

### 3. 需要时接管

<img src="https://mintcdn.com/docs-manus/5gZK3I5oeTh8gP_H/images/Screenshot2025-11-24at11.46.27AM.png?fit=max&auto=format&n=5gZK3I5oeTh8gP_H&q=85&s=463b525aeaf2997a021247d3761ade80" alt="Screenshot2025 11 24at11 46 27AM Pn" width="2700" height="1328" data-path="images/Screenshot2025-11-24at11.46.27AM.png" />

当 Manus 遇到复杂的验证（短信验证码、验证码、多重身份验证）时，系统会提示您\*\*"接管"\*\*该浏览器。

**接管如何工作**:

1. Manus 遇到验证挑战
2. 您收到接管通知
3. 您完成验证（输入代码、解决 CAPTCHA 等）
4. 您将控制权交还给 Manus
5. Manus 继续执行任务

这确保了 Manus 即使在需要人工验证时也能完成任务。

### 4. 安全与隐私

您的登录凭据和浏览活动将受到严格的安全管理：

* **加密会话**: 所有浏览器会话都经过加密
* **隔离环境**: 每个用户都有一个独立、隔离的浏览器实例
* **不存储凭据**: Manus 不存储您的密码
* **访问控制**: 您可以控制 Manus 可以访问哪些账户
* **会话管理**: 您可以随时退出登录或清除会话

## 云浏览器设置

您可以在**Manus 设置 → 云浏览器**中配置云浏览器。

### 可用设置

| 设置          | 描述                |
| :---------- | :---------------- |
| **已登录账户**   | 查看和管理您在云浏览器中登录的账户 |
| **会话管理**    | 退出特定账户或清除所有会话     |
| **接管通知**    | 配置需要接管时如何通知您      |
| **浏览器历史记录** | 查看最近的云浏览器活动       |
| **安全设置**    | 管理访问权限和安全偏好       |

### 管理已登录账户

要查看您登录了哪些账户：

1. 前往**Settings → Cloud Browser → Logged-in Accounts**
2. 查看所有活动会话
3. 如果需要，退出特定账户
4. 清除所有会话以重新开始

## 登录网站以实现更好的自动化

登录以下类型的账户可以使 Manus 执行更强大的自动化：

### 生产力与通讯

* **Gmail / Outlook**: 阅读、发送和整理电子邮件
* **Slack**: 发送消息、创建频道、管理通知
* **Notion**: 创建页面、更新数据库、组织内容
* **Google Calendar**: 安排会议、查看空闲时间、发送邀请

### 商业与 CRM

* **Salesforce / HubSpot**: 更新潜在客户、创建联系人、记录活动
* **LinkedIn**: 发送连接请求、发布更新、发送消息给联系人
* **Stripe**: 检查付款、创建发票、管理订阅

### 研究与数据

* **Crunchbase**: 研究公司、资金数据和投资者
* **PitchBook**: 访问私人公司数据和市场研究
* **SimilarWeb**: 分析网站流量和竞争对手数据
* **金融时报 / 华尔街日报**: 访问付费新闻和分析

### 开发与工具

* **GitHub**: 创建问题、审查拉取请求、管理存储库
* **Jira**: 更新工单、跟踪进度、管理冲刺
* **Figma**: 查看设计、留下评论、导出资产

### 社交媒体

* **Twitter / X**: 发布更新、安排推文、监控提及
* **Instagram**: 发布内容、回复评论、分析互动
* **Facebook**: 管理页面、发布更新、回复消息

**工作流示例**:

* "检查我的 LinkedIn 消息并起草对连接请求的回复"
* "使用本周已完成的任务更新我们的 Notion 项目跟踪器"
* "在 Crunchbase 上研究这 20 家公司并创建一份资金摘要"
* "将此公告发布到我们公司的 Twitter 和 LinkedIn 账户"

## 重要提示：数据中心 IP 考量

### 云浏览器 使用数据中心 IP

云浏览器 从数据中心 IP 地址运行，而不是住宅 IP。这意味着：

* 某些网站可能会触发额外的验证（CAPTCHA、安全检查）
* 某些服务可能会将此活动标记为自动化行为
* 您可能会遇到更频繁的身份验证挑战

### 何时改用我的浏览器

对于需要住宅 IP 地址或经常遇到验证挑战的任务，请考虑使用[**我的浏览器（浏览器操作员）**](https://www.notion.so/Cloud-Browser-2b27ff657cfa8049ad05dba0e33d9dc5?pvs=21) 代替。

**我的浏览器** 使用您的本地浏览器和您的实际 IP 地址，这会：

* 避免数据中心 IP 检测
* 减少 CAPTCHA 和验证提示
* 更适用于安全敏感的网站
* 保持您现有的登录会话

### 在 云浏览器 和 我的浏览器 之间选择

| 何时使用 云浏览器  | 何时使用 我的浏览器    |
| :--------- | :------------ |
| 研究公共网站     | 登录到安全敏感的账户    |
| 规模化提取数据    | 在银行/金融网站上执行操作 |
| 运行长时间任务    | 避免 CAPTCHA 挑战 |
| 您不介意偶尔进行验证 | 您需要住宅 IP 地址   |
| 任务不需要登录    | 网站阻止数据中心 IP   |

**示例**：

* ✅ 云浏览器：“研究 50 个竞争对手并提取他们的定价”
* ✅ 我的浏览器：“登录我的银行并下载上个月的对账单”

## 有效使用云浏览器的技巧

### 提前登录账户

**✅ 推荐**：在分配任务之前，登录常用的账户（Gmail、Notion、LinkedIn）

**原因**：Manus 可以立即访问这些账户，而无需中断您的工作流程进行登录

***

### 明确指定操作

**✅ 推荐**：“查看我的 Gmail 中本周来自潜在客户的邮件。起草回复，强调我们第四季度的可用性。”

**❌ 模糊**：“查看我的邮件”

具体的指令有助于 Manus 执行完全正确的操作。

***

### 使用“接管”处理复杂的验证

当 Manus 提示接管时：

* 快速响应以保持任务继续进行
* 仅完成验证步骤
* 立即将控制权交还给 Manus

***

### 监控首次登录

首次在云浏览器中登录账户时：

* 观察过程以确保其正常工作
* 完成任何首次验证
* 确认 Manus 可以正常访问该账户

***

### 考虑使用“我的浏览器”处理敏感网站

对于银行、金融账户或经常触发 CAPTCHA 的网站：

* 使用**我的浏览器**而不是云浏览器
* 这可以避免数据中心 IP 检测
* 减少验证挑战

***

### 定期管理会话

定期查看并清除已登录的会话：

* 前往**设置 → 云浏览器 → 已登录账户**
* 退出 Manus 不再需要访问的账户
* 如果您要更改工作流程，请清除所有会话

## 常见问题

<AccordionGroup>
  <Accordion title="云浏览器登录我的账户安全吗？" icon="sparkles">
    是的。云浏览器使用加密会话、隔离环境，并且不存储您的密码。您可以控制 Manus 可以访问哪些账户。
  </Accordion>

  <Accordion title="如果我在云浏览器中登录我的账户会发生什么？" icon="sparkles">
    Manus 随后可以代表您执行经过身份验证的操作（阅读邮件、更新 CRM、发布内容等）。您始终拥有控制权，可以随时退出登录。
  </Accordion>

  <Accordion title="我可以看到 Manus 在云浏览器中做什么吗？">
    是的。您可以实时观看 Manus 浏览网站，就像观看某人使用浏览器一样
  </Accordion>

  <Accordion title="“接管”是什么？我什么时候需要它？">
    当 Manus 遇到验证（CAPTCHA, SMS codes, etc.）时，“接管”允许您暂时控制浏览器。您完成验证后，将控制权交还给 Manus。
  </Accordion>

  <Accordion title="云浏览器 和 我的浏览器 有什么区别？">
    云浏览器 在云端运行，使用数据中心 IPs。我的浏览器 使用您的本地浏览器和您的住宅 IP。对于安全敏感的网站或避免 CAPTCHA，请使用我的浏览器。
  </Accordion>

  <Accordion title="如何在 云浏览器 中退出账户？">
    前往 **设置 → 云浏览器 → 已登录账户** 并退出特定的账户。
  </Accordion>
</AccordionGroup>

***
