使用 Mework

本页按你每天实际接触它们的顺序,介绍应用的各个部分。这里说明当前版本的行为;如有刻意设置的限制,也会明确指出。

工作区与对话

工作区是磁盘上的一个文件夹。文件工具受其边界约束,Shell 从其中启动,项目记忆和项目说明从其 .mework/ 目录读取,并会发现其中的 hooks.json / tool-descriptions/。在侧边栏中通过添加工作区添加(会打开原生文件夹选择器;宿主仅信任你通过此方式选择的文件夹)。没有文件夹的工作区是应用数据目录下的临时暂存区域。

对话(侧边栏中称为“任务”)属于某个工作区,并有自己的设置、历史记录和后台任务。创建方式有三种:

对话历史可编辑:你可以插入或编辑用户消息和模型回复、删除上下文,以及创建分支。编辑会持久化到宿主,下一次请求会从持久化的历史记录重新构建,绝不会依据渲染器当前碰巧显示的内容。

预设与对话设置

预设是可复用的模板(设置 → 对话预设)。应用预设会将其字段复制到对话中,之后二者互不关联:编辑预设绝不会更改已有对话,编辑对话也绝不会回写预设。“设为默认”会将该预设标记为新对话的起始预设。

预设字段也是每个对话抽屉(输入框旁的滑块图标)中的字段:

字段 含义
系统提示词 系统提示词的基础,也是唯一的基础——Mework 没有自己的默认值。留时,组装出的提示词直接从能力段落(技能、MCP 服务器、钩子、应用数据行)开始。
启用工具 模型可调用的 27 个工具。记忆工具、task_waittask_listskill 由开关派生,不在此处列出。
代理角色 命名的子代理角色:它们运行的模型、可用工具、使用的搜索后端,以及模型看到的说明。
技能、MCP 服务器、钩子 从已安装或已发现的项目中直接选择;悬空 id 会保持选中,但不会激活。
工具描述 此对话使用的提示词档案(工具描述文件)。默认使用内置英文档案。参见提示词档案
联网搜索 原生提供商搜索或目录中的某个提供商,以及每次调用的搜索上限。
记忆 两个相互独立的开关:全局记忆(~/.mework)和项目记忆(<workspace>/.mework)。
技能传递 关闭:选定技能的正文会粘贴到系统提示词中。开启:skill 工具会按需加载它们。
安全策略 request_approvalallow_editsplanfull_access —— 见下文。
包含应用数据目录 仅限对话:在系统提示词中公开绝对应用数据路径。
推理强度 仅限对话:模型支持时会传递给提供商。

工具与批准

按组划分的 27 个内置工具:

安全层级决定哪些调用会先向你询问:

层级 读取工作区内内容 写入工作区内内容 读取外部内容 写入外部内容 子代理 分叉 Shell、网络、工作流
request_approval 允许 询问 询问 询问 询问 询问 询问
allow_edits 允许 允许 允许 询问 允许 询问 询问
plan 同手动 拒绝 询问 拒绝 询问 询问 询问
full_access 允许 允许 允许 允许 允许 询问 允许

计划模式

计划模式是只读的规划阶段:工作区读取与手动相同,而任何文件系统写入或编辑都会被直接拒绝,不会显示批准卡。Shell、联网搜索与抓取、浏览器交互、工作流、MCP 调用和子代理派生仍和手动一样询问;截图仍可使用。宿主会自动提供三个派生工具,它们不会出现在工具选择器或预设中:处于计划模式时,plan 可读取或整体替换宿主存储的 Markdown 计划,exit_plan_mode 可提交计划供审阅;在计划模式外,enter_plan_mode 可请求切换进入。子代理会继承只读的计划模式,且永远不会获得这些工具。

调用 exit_plan_mode 会打开批准卡,并直接将消息区带到计划预览页面,不会展开任务容器。卡片提供是,自动接受编辑是,手动批准编辑否,继续规划三个选项;最后一项需要反馈文本,并让模型留在计划模式。已保存的计划会以任务容器中的实施计划行出现,点击即可打开 Markdown 计划页。任一“是”都会在同一回合中分别把对话切换到允许编辑或手动,输入框会立即显示新的层级。

有些确认无法由任何层级或钩子关闭:触及根目录、主目录或系统路径的递归删除;写入全局记忆;声明 anthropic/requiresUserInteraction 的 MCP 工具;以及接管你亲自登录过的浏览器页面。

批准卡会显示工具、最终参数(任何钩子重写之后)、风险级别以及触发的规则。始终允许会记住该对话中对此工具的决定,但上限为你所回答卡片的风险级别;Shell 工具和 playwright 永远不能获得长期许可。后台任务发出的卡片会在回合结束后继续保留,并在重新加载后再次出现。

fork 在包括完全访问在内的每个安全级别都会提出一张非阻塞请求卡,绝不自动创建子对话。除非模型显式传入 inherit_context: true,子对话只带自己的 prompt 开始;批准和拒绝的决定会留在任务容器中,但永远不会报告给模型。

运行环境

输入框上方的运行地点标签决定 bash / powershell 在何处执行:此计算机、某个 WSL 发行版,或你注册的 SSH 计算机。每个地点都可以携带注入这些命令的环境变量;行上的齿轮可编辑它们。文件工具始终操作本地工作区——在 WSL 中,相同文件可通过自动挂载访问;通过 SSH 时远程端是独立世界,选择器只会将命令发送到那里。批准会连同环境生成指纹,因此更改环境会使待处理的批准失效。

子代理、工作流与任务

持续运行的一切都是任务,并显示在任务面板中且带有停止按钮:子代理、工作流运行、后台 Shell 命令、终端和浏览器标签页。

网络搜索与抓取

web_search 有两个后端:原生(对话自身的模型在隔离请求中运行其提供商侧搜索,不使用客户端工具)和目录提供商(Tavily、Exa、SearXNG、Jina、Firecrawl、Bocha、Zhipu、……),后者由宿主自行调用。web_fetch 始终使用在设置 → 搜索提供商下配置的目录抓取提供商。两者都是异步工具:一次批准覆盖该调用的全部网络操作,结果以标记为 untrustedWebContent 的工具结果返回,并且系统提示词会告知模型网络文本是证据,绝非指令。

内置浏览器

playwright 通过无障碍快照(snapshot)、来自这些快照的引用(clicktypefill_formselect、……)、导航、截图、控制台和网络读取以及标签页管理来驱动内置浏览器。每个标签页都是一次性、隔离的 WebView2 配置文件:不共享 Cookie,不会导入日常浏览器中的内容,关闭时即销毁。如果你亲自在标签页中登录网站,模型必须先请求批准才能在该页面上操作。远程内容永远无法访问应用的 IPC 表面。

长期记忆

两层纯 Markdown,每层都有相同的布局:

~/.mework/                       <workspace>/.mework/
  MEWORK.md                        MEWORK.md        standing instructions (you write these)
  memory/MEMORY.md                 memory/MEMORY.md index (the host maintains it)
  memory/<topic>.md                memory/<topic>.md memory documents (the model writes these)

启用某层的开关后,其 MEWORK.mdMEMORY.md 会粘贴到请求中,并且其三个工具可用;需要时按名称获取文档正文。写入全局记忆始终需要确认。记忆是模型的低优先级上下文,不是策略:必须始终成立的规则应写在钩子或安全层级中。

项目说明文件(工作区中 MEWORK.mdAGENTS.mdCLAUDE.md 风格的文件)也会在启动时发现,并作为不受信任的文件上下文块注入,独立于记忆开关。

图像

将图像拖入或粘贴到输入框中;每张图像都会在你的消息中获得一个模型可引用的 [Image #N] 占位符。产生图像的工具结果(对图像文件执行 read、浏览器截图)也会获得编号,playwright upload_image 可将其中一张发送到页面。图像会以内容寻址方式存储在应用数据目录下。

Git 与终端

Git 审查面板显示工作区的状态、差异和分支,并且在你配置 GitHub 写入身份后,可以提交、推送和打开拉取请求。对话也可以在专用的工作树中工作(输入框上方的标签)。终端面板会打开一个由你亲自操作的 PowerShell;模型只将它视为可等待的任务。

键盘、外观与依赖

设置 → 快捷键列出每项命令,并让你重新绑定它们(缩放快捷键固定)。外观涵盖主题、强调色、字体、缩放、消息布局和自定义 CSS。环境依赖会在你的 PATH 中探测 gitnodepythonrgfdghuvbun——仅检测,不会安装。

数据与重置

设置文档带有版本。来自较新或较旧架构的数据会被隔离并重建,绝不会静默迁移。若要在开发期间重新开始:

npm run reset:data           # wipe app data (add --keys to also remove stored API keys)

卸载应用不会删除 %APPDATA%\com.mework.app%LOCALAPPDATA%\com.mework.app、凭据管理器条目或 ~/.mework