Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI



01



什么是Manus?


Manus 是由 中国创业公司Monica.im 团队开发的全球首款真正通用且自主的AI智能代理(Agent),于2025年3月正式发布。它不仅能理解用户指令,还能自主规划、分解行复杂任务,并利用工具执行任务,最终直接交付高质量的成果,如文档、PPT、图表等。

02



工作原理

Manus 不同于仅依赖LLM进行对话问答或内容生成,而是将大语言模型与云端虚拟机环境、命令行交互、以及强大的编程能力(如Python/JS等)深度融合,实现更高效、更智能的综合解决方案。

LLM:LLM负责对用户意图的精准理解、复杂任务的规划拆解,以及多步流程执行的结果归纳与整,Manus整合Claude、ChatGpt、Gemini等多个大语言模型。

命令行接口:让AI不仅能“写”,还能直接“操作”:如下载处理文件、调用数据分析脚本,实现真正从指令到执行自动闭环。

代码生成与前端交互LLM负责生产脚本或前端JS代码,云端沙盒安全运行,自动执行流程任务。如自动分析表格、批量生成内容或已完成的web自动化操作。

浏览器操作:Manus具备类人操作浏览器的能力,可自动输入、点击、滚动、抓取页面数据,完成如表单填写、信息采集、网上预约、比价等一系列真实网络操作,与人类行为高度一致。

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI

03



自主规划、分解

Manus会先对用户输入的问题进行自主规划,分解成多个”步骤“,并创建todo list,每一步完成后todo list会更新,完成了那些,就打勾,这样就让用户清晰的知道任务当前的执行过程和进展。

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI

04



任务执行

在任务执行的过程中,LLM会根据每个“规划”的步骤,去拆解更细粒度的“子步骤”,这个过程是增量式的规划,就是一步一步的规划,不会一下子规划出全局,并且执行过程中生成的文件都会保存下来。

比如:执行dig查询命令

在需要执行dig命令的时候,Manus就会实例化一台云端虚拟机沙盒环境,然后调用命令行工具执行dig命令。

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI

除了调用命令行以外,Manus可以可以根据用户的自然语言需求自动生成对应的代码片段(如Python、JavaScript、SQL等),并在安全的云端环境中直接运行。

这一能力让Manus不再局限于受限的工具范围,而是能调用各种现成的python库和工具,这极大的拓展了Manus的应用空间。

例如:

  • 自动分析表格或数据库中的数据并用Python绘制成可视化图表

  • 用代码自动清洗、拆分、合并数据文件

  • 根据输入自动生成交互式前端组件或数据仪表盘

此外,Manus能够真正模拟人类手动操作浏览器的全过程。通过专用的浏览器自动化引擎,Manus可以:

  • 输入关键词(如在搜索框、表单填写等)

  • 定位元素并点击(如按钮、链接、菜单项)

  • 页面滚动、标签切换、悬停操作

  • 采集和读取页面内容,自动复制整理

  • 智能填写复杂网页表单、提交查询

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI

执行的命令行、代码、浏览器操作均在这台虚拟机沙盒环境中运行,用户也可以登录沙盒环境进行一些干预,比如一些网站验证码校验无法自动完成,人工也可以手动完成验证。

05



任务反思

在执行命令的时候,出现报错,比如缺少环境、命令不合法、模型会进行相应调整,然后重新执行、更换命令

这一部分的技术思想是来自CodeAct,也就是大模型可以自主写命令和代码,然后自主观察代码的运行结果,并且进行反思和调整,有兴趣的朋友可以去读一下论文原文。

在环境ready之后,模型决策再次执行之前的命令,这次就拿到了准确、不报错的结果:

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI

06



Manus Prompt设计

SYSTEM_PROMPT:定义了 AI 的角色、能力范围以及交互方式,明确了manus是万能助手,能利用很多工具解决用户问题,描述相对模糊和宽泛,保证不会太限制模型的行为。

NEXT_STEP_PROMPT:定义的能力的执行范围和操作细则,只在特定任务上下文中触发,指导模型 如何选择工具并逐步解决复杂任务,同时优化对用户需求的响应和任务执行的透明性。

SYSTEM_PROMPT = "You are OpenManus, an all-capable AI assistant, aimed at solving any task presented by the user. You have various tools at your disposal that you can call upon to efficiently complete complex requests. Whether it's programming, information retrieval, file processing, or web browsing, you can handle it all.”NEXT_STEP_PROMPT = """You can interact with the computer using PythonExecute, save important content and information files through FileSaver, open browsers with BrowserUseTool, and retrieve information using GoogleSearch.PythonExecute: Execute Python code to interact with the computer system, data processing, automation tasks, etc.FileSaver: Save files locally, such as txt, py, html, etc.BrowserUseTool: Open, browse, and use web browsers.If you open a local HTML file, you must provide the absolute path to the file.GoogleSearch: Perform web information retrievalBased on user needs, proactively select the most appropriate tool or combination of tools. For complex tasks, you can break down the problem and use different tools step by step to solve it. After using each tool, clearly explain the execution results and suggest the next steps.

USER PROMPT:用户直接提问的问题,如:上面截图中的问题,这个testcase@aliyun.com邮箱无法收发信,请帮我实际诊断一下这个邮箱域名的MX解析、TXT解析、CNAME解析是否有问题?

当用户提交后,Manus会生成Assistant prompt(要诊断一个邮箱域名的MX…),向用户提供解决问题的方法和建议,也就是think()+act()的过程,然后模型开始调用工具,生成第二个Assistant prompt,并对结果进行解读,得出结论,也就是observe() 和 reflect()的过程。

[  {    "role": "system",    "content": "You are OpenManus, an all-capable AI assistant, aimed at solving any task presented by the user. You have various tools at your disposal that you can call upon to efficiently complete complex requests. Whether it's programming, information retrieval, file processing, or web browsing, you can handle it all."  },  {    "role": "user",    "content": "这个testcase@aliyun.com邮箱无法收发信,请帮我实际诊断一下这个邮箱域名的MX解析、TXT解析、CNAME解析是否有问题"  },  {    "role": "user",    "content": "You can interact with the computer using PythonExecute, save important content and information files through FileSaver, open browsers with BrowserUseTool, and retrieve information using GoogleSearch.nnPythonExecute: Execute Python code to interact with the computer system, data processing, automation tasks, etc.nnFileSaver: Save files locally, such as txt, py, html, etc.nnBrowserUseTool: Open, browse, and use web browsers.If you open a local HTML file, you must provide the absolute path to the file.nnGoogleSearch: Perform web information retrievalnnBased on user needs, proactively select the most appropriate tool or combination of tools. For complex tasks, you can break down the problem and use different tools step by step to solve it. After using each tool, clearly explain the execution results and suggest the next steps.n"  },  {    "role": "assistant",    "content": "要诊断一个邮箱域名的MX解析、TXT解析和CNAME解析是否有问题,我们可以通过执行DNS查询来获取相关信息。我们可以使用Python中的`dns.resolver`模块来执行这些查询。nn我们将使用`dnspython`库来执行DNS查询。然后,我们将编写并执行一段代码来分别查询MX记录、TXT记录和CNAME记录,并打印出结果。nn让我们开始吧。",    "tool_calls": [      {        "id": "call_362e5954bc614652b98971",        "type": "function",        "function": {          "name": "python_execute",          "arguments": "{"code":"import dns.resolver\n\ndef query_dns_records(domain, record_type):\n    try:\n        answers = dns.resolver.resolve(domain, record_type)\n        records = [str(rdata) for rdata in answers]\n        return records\n    except Exception as e:\n        return str(e)\n\ndomain = \"aliyun.com\"\nmx_records = query_dns_records(domain, 'MX')\ntxt_records = query_dns_records(domain, 'TXT')\ncname_records = query_dns_records(domain, 'CNAME')\n\nprint(\"MX Records:\", mx_records)\nprint(\"TXT Records:\", txt_records)\nprint(\"CNAME Records:\", cname_records)"}"        }      }    ]  },  {    "role": "tool",    "content": "Observed output of cmd `python_execute` executed:nMX Records: ['10 mx2.mail.aliyun.com.']\nTXT Records: ['"kqpmfrf0schjrfhv52j66tgl1dn2pb01"', '"_globalsign-domain-verification=RslTn-OhDMh5TgCw7-aKKz3IY25h2UwWfwG0TbplyM"', '"v=spf1 ip4:115.124.30.0/24  ip4:121.0.18.0/23 ip4:121.0.30.0/24  ip4:42.120.70.0/23 ip4:47.88.44.32/27 ip4:59.82.0.0/23 ip4:47.90.199.0/24  -all"', '"google-site-verification=zEkDfQfI5fc3VhAFyUCbLxv2vCyoo4wJjiLgfV-UG8k"']\nCNAME Records: The DNS response does not contain an answer to the question: aliyun.com. IN CNAME",    "name": "python_execute",    "tool_call_id": "call_362e5954bc614652b98971"  },  {    "role": "user",    "content": "You can interact with the computer using PythonExecute, save important content and information files through FileSaver, open browsers with BrowserUseTool, and retrieve information using GoogleSearch.nnPythonExecute: Execute Python code to interact with the computer system, data processing, automation tasks, etc.nnFileSaver: Save files locally, such as txt, py, html, etc.nnBrowserUseTool: Open, browse, and use web browsers.If you open a local HTML file, you must provide the absolute path to the file.nnGoogleSearch: Perform web information retrievalnnBased on user needs, proactively select the most appropriate tool or combination of tools. For complex tasks, you can break down the problem and use different tools step by step to solve it. After using each tool, clearly explain the execution results and suggest the next steps.n"  },  {    "role": "assistant",    "content": "根据DNS查询的结果,我们可以看到以下信息:nnMX记录(邮件交换记录,用于指定处理该域名邮件的服务器):n- `10 mx2.mail.aliyun.com.`nnTXT记录(文本记录,通常用于验证域名所有权或设置SPF记录以防止邮件被标记为垃圾邮件):n- `"kqpmfrf0schjrfhv52j66tgl1dn2pb01"`n- `"_globalsign-domain-verification=RslTn-OhDMh5TgCw7-aKKz3IY25h2UwWfwG0TbplyM"`n- `"v=spf1 ip4:115.124.30.0/24  ip4:121.0.18.0/23 ip4:121.0.30.0/24  ip4:42.120.70.0/23 ip4:47.88.44.32/27 ip4:59.82.0.0/23 ip4:47.90.199.0/24  -all"`n- `"google-site-verification=zEkDfQfI5fc3VhAFyUCbLxv2vCyoo4wJjiLgfV-UG8k"`nn对于CNAME记录(规范名称记录,用于将一个域名作为另一个域名的别名),我们得到的响应是该DNS响应不包含问题的答案,这意味着`aliyun.com`没有设置CNAME记录。nn根据这些信息,我们可以得出结论:n- MX记录存在,指向`mx2.mail.aliyun.com`,所以从DNS解析的角度来看,邮箱服务器配置正确。n- 存在多个TXT记录,包括SPF记录,这表明域名所有者已经采取措施来保护其域名不被滥用发送垃圾邮件。n- 没有找到CNAME记录,这说明`aliyun.com`没有被设置为其他域名的别名。nn如果testcase@aliyun.com邮箱仍然无法收发信,那么问题可能不在DNS记录上,而是可能与邮件服务器配置、网络连接性、防火墙规则、或者邮箱账户本身的设置有关。在这种情况下,建议联系域名服务提供商或邮件服务管理员进一步排查问题。"  }]

07



用户体验创新

Manus在用户体验方面着力创新,重点如下:

任务回放与操作可追溯性

  • 支持用户随时回放过往任务操作记录,每一个执行步骤的细节(输入、思考、调用的工具或API、输出等)皆可逐帧追溯。

  • 让所有智能体决策流程和任务完成链路清晰透明,便于成果复用和经验迁移,极大提升工作连贯性和协作复用价值。

文件生成、解压、格式转换与一键下载

  • 自动化过程中,每一个子任务或全流程都可生成结构化文件成果,如报告、表格、代码包、图片等。

  • 支持ZIP压缩包生成/解压,多种格式(PDF、DOCX、CSV、Markdown等)一键转换与下载。

  • 让数据和成果流转更无缝,满足二次编辑、归档和外部分享需求。

任务完成主动通知

  • 执行任务期间,无需反复刷新页面或盯住屏幕,系统可通过Notification弹窗/气泡等方式主动第一时间推送进展或完成状态。

  • 支持桌面推送、移动端提醒等多终端消息同步,极大优化等待体验,提高多任务并行下的使用效率。

一键跳转至最新任务/操作结果

  • 用户无需繁琐滚动查询或在历史面板中冗余检索,一键即可定位到当前最新或正在进行的任务节点及成果。

  • 防止在长流水线场景下用户迷失,大幅简化操作路径,提升焦点切换效率。

 推理链可视化与进度透明

  • 将智能体推理/决策链清晰可视化,每一步推理逻辑、操作内容、工具调用、状态变更都透明展现。

  • 用户可实时洞察Agent工作状态、剩余任务、过程瓶颈,既能“看到AI如何想”,也便于过程知识的沉淀和复查。

 支持私有平台与垂直渠道数据接入(知乎、Twitter等)

  • 不局限于传统通用Web和公开数据库,同时支持对知乎、Twitter等私有化/半开放内容平台的数据抓取与交互。

  • 覆盖本地社群、行业社区、社交平台等定向知识源,保证信息来源多元丰富,并为用户获取首发观点、热点分析提供更多维度的参考。


08



与Perplexity、Cursor等产品的区别

和Manus最相关的两种产品形式,一个是Agentic调研类产品,比如Gemini、Perplexity和OpenAI的Deep Research。他们可以让你输入一个简单的主题或者要求,接着帮你调研全网的数据,并且生成一个详实且有深度的报告。

另一种相关的形式是Cursor、Devin或者Gamma之类的Agentic生成类产品。你给它一个要求,它可以帮你写作代码、文稿或者幻灯片,直接交付你想要的产出形式。

在2024年,这两种类型的产品都有了长足的发展,并且跨过了可用性的门坎,出现了病毒式的爆发增长。但是,还有一大痛点是:我要不然只能做调研,要不然只能生成内容。二者之间并没有有效打通,这其实是个非常微妙的痛点。

举个例子:

Prompt:我要准备一份关于“2024年AI+网络安全行业机会分析”的40页PPT路演材料

需要按照如下步骤执行

  1. 用Perplexity、Gemini等工具做行业深度调研,导出报告文档

  2. 手动摘抄/剪切粘贴论据和数据到本地

  3. 再用Cursor、Devin写自动化数据分析脚本、生成若干数据可视化图表

  4. 再把这些报告块、图表分别复制到Gamma中生成PPT

  5. 所有流程靠人力衔接,逻辑链容易断、上下文容易丢失


Manus让人觉得惊艳的地方就在于它打通了整条链路,极大的拓展了应用场景。一方面,它可以以Agentic的形式进行调研,通过浏览互联网来收集全面详实的资料。

另一方面,它也可以根据这些资料,进行更多的分析、可视化,从而生成最终的产出,比如网站、图文报告或者幻灯片。

此外,Manus本身产品特性打磨得也很好,完整度很高。作为一个思路精准又好用的产品,自然就引发了爆款。

Manus 启发下的 Agent产品设计:如何构建能思考、多步操作的 AI


相关文章