SuperAPI AI 工具集

Workspace SOP

办公与效率

查看项目

更新于 10-16 06:26

技能介绍

用途

Workspace SOP 是 Research-Claw 工作区的操作标准流程(SOP),用于规范工作区内的文件管理、Git 版本控制、目录约定以及命令行执行的安全规则。它面向使用 Research-Claw 工作区的用户与智能体,确保文件读写、版本追踪和格式转换行为一致且可追溯。

架构

工作区是一个本地 Git 仓库,首次使用时自动初始化。每次 workspace_save 都会创建一次 Git 提交(对快速批量操作有 5 秒防抖)。超过 10 MB 的文件会自动加入 .gitignore。该仓库仅存于本地,从不推送到任何远程。

仪表盘展示文件树、最近提交和文件预览,但不提供回滚功能——回滚与差异查看由用户通过智能体界面完成。

目录约定

两个顶层用户目录(系统目录 .ResearchClaw/ 对仪表盘隐藏):

  • sources/:用户上传、导入的 PDF、数据集、参考资料
  • sources/chat/:用户直接拖入聊天输入框的原始文件(图片存放在 sources/chat/images/)
  • outputs/:智能体生成的草稿、图表、导出文件、报告
  • .ResearchClaw/:系统提示文件(隐藏)

可选子目录(按需创建,非必需):sources/papers/、sources/data/、sources/references/、outputs/drafts/、outputs/figures/、outputs/exports/、outputs/reports/。

sources/ 表示用户输入,outputs/ 表示智能体生成的文件。当用户要求整理文件时,应将 sources/chat/ 中的文件归档到 sources/papers/ 等目录。

提交信息前缀

  • Add: 新建文件
  • Update: 修改已有文件
  • Upload: 保存用户上传的文件
  • Restore: 从历史恢复文件
  • Delete: 删除文件
  • Export: 从文本源转换出的二进制格式

工具链(11 个工具)

  • workspace_save:写入文本文件并自动提交
  • workspace_read:读取文件内容
  • workspace_list:列出文件(支持 glob 过滤与 git 状态)
  • workspace_diff:显示变更(无范围参数时比较未提交内容与 HEAD)
  • workspace_history:列出某文件或路径的提交历史
  • workspace_restore:检出历史版本并以 Restore: 提交
  • workspace_move:重命名/移动文件并提交
  • workspace_export:将文本转换为二进制格式(md→docx/pdf,csv→xlsx)
  • workspace_delete:删除文件并自动提交(需 confirm=true),可通过 workspace_restore 恢复
  • workspace_append:向已有文件追加内容(或创建),自动投影文件
  • workspace_download:从 URL 下载并将二进制文件保存到工作区

版本控制操作

  • 撤销/回滚:workspace_history → 展示提交 → 用户选择 → workspace_restore → 用普通文本报告恢复后的路径。
  • 差异:workspace_diff(默认比较未提交内容与 HEAD)。
  • 主动提示:覆盖文件后提及 git 历史;删除时说明可用 workspace_restore 恢复。
  • 删除:workspace_delete(需 confirm=true),始终说明 workspace_restore 可作为恢复手段。

写入纪律

  • 强制预检:任何 workspace_save(覆盖)之前,必须先调用 workspace_read 或 workspace_list 确认文件是否存在及其内容,防止意外数据丢失。
  • 追加与覆盖:当意图是“向文件添加内容”时,先读取现有内容再拼接,绝不能用新片段覆盖多段文件。
  • 优先追加:向已有文件添加内容时,使用 workspace_append 而非读取+拼接+保存,可防止意外覆盖并减少 token 消耗。
  • 仅限根目录范围:所有 workspace_* 工具严格操作工作区根目录内的相对路径。
  • 越界(OOB)规则:对于工作区之外的路径,workspace_save 会失败或丢失版本控制。不要对系统级文件使用 workspace 工具;如确有必要,使用标准 CLI(配合 approval_card),但需注意这些操作没有 Git/历史支持。

二进制格式导出

workspace_save 仅写入 UTF-8 文本。要输出 Word/Excel/PDF:

  1. 将内容保存为 Markdown/CSV:workspace_save("outputs/drafts/paper.md", content)
  2. 转换:workspace_export({ source: "outputs/drafts/paper.md", format: "docx" })

转换引擎:

  • .md/.txt → .docx:pandoc
  • .md/.txt → .pdf:pandoc + xelatex(支持中日韩文字)
  • .csv/.json → .xlsx:Python pandas + openpyxl

输出默认到 outputs/exports/{name}.{format},可用 output 参数覆盖。

绝不要用二进制扩展名(.docx、.xlsx、.pdf、.pptx 等)调用 workspace_save——工具会拒绝写入并引导使用 workspace_export。

原生安装依赖

Docker 镜像已预装所有依赖。对于原生(非 Docker)安装,workspace_export 需要外部工具。若转换失败并报 ENOENT 或 command not found,引导用户安装:

macOS(Homebrew):

# 如未安装 Homebrew,先安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 然后安装转换依赖:
brew install pandoc            # md → docx
brew install --cask basictex   # md → pdf(xelatex 引擎)
pip3 install openpyxl          # csv → xlsx(pandas 通常已存在)

Windows:从 https://pandoc.org/installing.html 下载 pandoc 安装程序,安装 MiKTeX 以支持 PDF。

注意:workspace_export 不支持 .pptx 生成。PPT 创建通过专用 PPT 扩展(ExtensionsPanel → PPT Master)完成。

下载与导入

使用 workspace_download 从 URL 保存 PDF、图片等二进制文件:

workspace_download({ url: "https://arxiv.org/pdf/2301.00001", path: "sources/papers/paper.pdf" })

将 PDF 下载到 sources/papers/ 后,可提供 library_add_paper 以建立索引。

CLI 执行安全

无需审批(不需要 approval_card):

wc、du、grep、find、pandoc、pdftotext、python3、xelatex、jq

需要 approval_card:

pip install、brew install、curl、wget、任何工作区之外的操作。

跨模块触发

  • PDF 保存/下载到 sources/papers/ → 提供 library_add_paper
  • 论文加入库 → 建议通过 workspace_append 将 BibTeX 保存到 sources/references/refs.bib
  • 创建代码文件 → 建议 task_create 跟踪工作
  • 生成分析输出 → 报告其相对路径,如有关联则 task_complete

相关 Research-Plugins 技能

  • tools/document/:PDF 解析、GROBID、格式转换、markdown 工作流
  • tools/diagram/:Mermaid、PlantUML、用于工作区输出的科学插图

限制

  • 仓库仅本地,不推送远程。
  • 仪表盘不提供回滚,回滚与差异需通过智能体界面完成。
  • workspace_save 仅支持 UTF-8 文本,不支持二进制扩展名。
  • workspace_export 不支持 .pptx 生成。
  • 原生安装需自行安装 pandoc、basictex、openpyxl 等外部依赖。
  • 工作区工具仅限根目录内相对路径,越界路径无版本控制支持。