跳到主要内容

Agent 智能助手

测试阶段

Agent 功能目前仍处于测试阶段,以下 API 和行为可能会在正式发布前进行调整。

概述

ScriptCat v1.4 引入了 Agent 智能助手系统,它为用户脚本提供了 AI 对话、浏览器自动化、文件管理、定时任务等一系列能力。

脚本通过 CAT.agent.* 命名空间调用这些能力,所有 API 均需要通过 @grant 声明对应权限。

功能模块

模块权限声明说明
对话@grant CAT.agent.conversation创建 AI 对话、发送消息、流式接收、自定义工具
DOM 操作@grant CAT.agent.dom页面导航、截图、点击、填充、滚动、DOM 监控
Skill@grant CAT.agent.skills安装/卸载/调用 Skill 扩展包
定时任务@grant CAT.agent.taskCron 定时任务、事件监听
模型@grant CAT.agent.model查询已配置的模型信息(只读)
OPFS 文件@grant CAT.agent.opfs读写 Agent 工作区文件
MCP@grant CAT.agent.mcp管理 MCP 服务器连接
Skill 开发SKILL.md + SkillScript 开发指南

快速上手

一个最简单的 Agent 脚本:

// ==UserScript==
// @name Hello Agent
// @match *://*/*
// @grant CAT.agent.conversation
// ==/UserScript==

const conv = await CAT.agent.conversation.create();
const reply = await conv.chat("你好,请介绍一下你自己");
console.log(reply.content);

架构简述

Agent 系统跨越浏览器扩展的多个隔离上下文:

用户脚本 → Sandbox(隔离执行)
↓ WindowMessage
Offscreen(DOM 访问)
↓ ExtensionMessage
Service Worker(核心调度)
├── LLM Provider(OpenAI / Anthropic)
├── ToolRegistry(工具注册与执行)
├── SkillScriptExecutor(Skill 脚本执行)
├── MCPClient(MCP 协议客户端)
└── TaskScheduler(定时任务调度)

存储结构

Agent 使用浏览器 OPFS(Origin Private File System)存储数据:

agents/
├── conversations/ # 对话历史
├── attachments/ # 附件(图片、文件)
├── skills/{name}/ # Skill 包文件
│ ├── SKILL.md
│ ├── scripts/
│ └── references/
├── tasks/ # 定时任务配置和执行记录
└── workspace/ # 用户工作区文件(opfs_* 工具操作的目录)

支持的模型

Provider格式特性
OpenAI 兼容OpenAI Chat Completions API支持 GPT-4o、DeepSeek 等兼容模型
AnthropicAnthropic Messages API支持 Claude 系列,Prompt Caching

在管理页面的「模型配置」中添加 Provider 和 API Key 即可使用。