把 AI 对话变成可整理、可复用的工作流,主流 AI 平台通用。
69.1/100
综合分
1,007
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/11/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add urzeye/ophel该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · browser
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 1 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包ophel(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/28 14:37:17
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 53 处,展示前 53 条)
- 发起网络请求src/adapters/aistudio.ts:1326
const response = await fetch(endpoint, { - 发起网络请求src/adapters/aistudio.ts:1821
const response = await platform.fetch(this.buildDriveDownloadUrl(fileId)) - 发起网络请求src/adapters/aistudio.ts:1831
const confirmed = await platform.fetch( - 发起网络请求src/adapters/chatglm.ts:656
const response = await fetch( - 发起网络请求src/adapters/chatgpt.ts:553
const response = await fetch("/api/auth/session", { - 发起网络请求src/adapters/chatgpt.ts:672
return fetch(endpoint, { - 发起网络请求src/adapters/chatgpt.ts:1924
let response = await fetch(url, { - 发起网络请求src/adapters/chatgpt.ts:1931
response = await fetch(url, { - 发起网络请求src/adapters/claude.ts:507
const response = await fetch(endpoint, { - 发起网络请求src/adapters/claude.ts:666
const response = await fetch("/api/organizations", { - 发起网络请求src/adapters/claude.ts:1895
const response = await fetch(this.buildConversationApiUrl(orgId, sessionId), { - 发起网络请求src/adapters/claude.ts:2739
const response = await fetch(this.buildConversationApiUrl(orgId, sessionId), { - 发起网络请求src/adapters/deepseek.ts:1128
const response = await fetch( - 发起网络请求src/adapters/deepseek.ts:2838
const response = await fetch( - 发起网络请求src/adapters/deepseek.ts:2872
const response = await fetch( - 发起网络请求src/adapters/deepseek.ts:3862
const response = await fetch(CHAT_DELETE_API_PATH, { - 发起网络请求src/adapters/gemini.ts:3579
const response = await platform.fetch(source) - 发起网络请求src/adapters/gemini.ts:3674
const response = await fetch(blobUrl) - 发起网络请求src/adapters/grok.ts:605
const response = await fetch(endpoint, { - 发起网络请求src/adapters/grok.ts:2279
const response = await fetch(`/rest/app-chat/share_links/${encodeURIComponent(shareId)}`, { - 发起网络请求src/adapters/grok.ts:2815
const treeResponse = await fetch( - 发起网络请求src/adapters/grok.ts:2837
const contentResponse = await fetch( - 发起网络请求src/adapters/kimi.ts:1115
const response = await fetch(deleteUrl, { - 发起网络请求src/adapters/qwen-studio.ts:468
const response = await fetch( - 发起网络请求src/adapters/qwen-studio.ts:1685
const response = await fetch(url.toString(), { - 发起网络请求src/adapters/qwen-studio.ts:2207
const response = await fetch(url.toString(), { - 发起网络请求src/adapters/qwen-studio.ts:2232
const response = await fetch(url.toString(), { - 发起网络请求src/adapters/qwen-studio.ts:3382
const response = await fetch("/api/v2/users/user/settings/update", { - 发起网络请求src/adapters/zai.ts:1177
const response = await fetch( - 发起网络请求src/adapters/zai.ts:1218
const response = await fetch(`/api/v1/chats/share/${encodeURIComponent(shareId)}`, { - 发起网络请求src/background.ts:602
const response = await fetch(message.url, { - 发起网络请求src/background.ts:642
const response = await fetch(url, { - 请求外部主机claude.aisrc/background.ts:1084
const response = await fetch("https://claude.ai/api/organizations", { - 发起网络请求src/background.ts:1084
const response = await fetch("https://claude.ai/api/organizations", { - 发起网络请求src/core/aistudio-rpc-bridge.ts:60
const response = await pageWindow.fetch( - 写入剪贴板src/core/assistant-mermaid-renderer.ts:1240
await navigator.clipboard.writeText(source) - 发起网络请求src/core/gemini-mystuff-bridge.ts:266
const response = await getPageWindow().fetch(buildRequestUrl(tokens), { - 写入剪贴板src/core/watermark-remover.ts:876
await navigator.clipboard.write([clipboardItem]) - 发起网络请求src/core/webdav-sync.ts:368
const response = await this.request("PROPFIND", this.config.remoteDir, null, { - 发起网络请求src/core/webdav-sync.ts:414
await this.request("MKCOL", this.config.remoteDir) - 发起网络请求src/core/webdav-sync.ts:422
const response = await this.request("PUT", remotePath, JSON.stringify(exportData, null, 2), { - 发起网络请求src/core/webdav-sync.ts:468
const response = await this.request("PROPFIND", this.config.remoteDir, body, { - 发起网络请求src/core/webdav-sync.ts:498
const response = await this.request("DELETE", remotePath) - 发起网络请求src/core/webdav-sync.ts:537
const response = await this.request("GET", remotePath) - 写入剪贴板src/hooks/useShortcuts.ts:513
await navigator.clipboard.writeText(text) - 写入剪贴板src/hooks/useShortcuts.ts:616
await navigator.clipboard.writeText(adapterCode) - 写入剪贴板src/hooks/useShortcuts.ts:647
await navigator.clipboard.writeText(code) - 发起网络请求src/platform/types.ts:188
fetch(url: string, options?: FetchOptions): Promise<FetchResponse> - 发起网络请求src/utils/exporter.ts:1818
const response = await fetch(candidate) - 发起网络请求src/utils/exporter.ts:1941
const response = await fetch(sourceUrl) - 发起网络请求src/utils/exporter.ts:1962
const response = await fetch(sourceUrl, { - 发起网络请求src/utils/exporter.ts:1982
platform.fetch(sourceUrl), - 写入剪贴板src/utils/exporter.ts:2238
await navigator.clipboard.writeText(content)
扫描于 2026/11/2(1 天前) · 范围 全包扫描 · 来源 GitHub 仓库
涉及外部主机:claude.ai
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
README
由 DeepSeek 最新模型翻译生成Ophel Atlas 🚀
把 AI 聊天变成可阅读、可导航、可复用的文档
语言:English | 简体中文
✨ 把对话变成知识,而不只是历史记录 ✨
再也不用在无尽的滚动里迷路。用实时大纲理清上下文,用聊天文件夹搭起你的体系,用提示词库打磨体验,让闪光的想法有序流动。
👇 演示:从「无限滚动」到「可导航的 AI 文档」
第一次让 AI 聊天成为真正可整理的工作流
不管你用下面哪个平台,Ophel 都能让你把对话整理成可复用的工作流,体验始终一致、统一。
📣
帮忙推广 Ophel Atlas
核心功能 • 快速开始 • 支持 Ophel Atlas • 参与共建
🌐 English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Deutsch | Français | Español | Português | Русский
✨ 核心功能
适合学习、研究、需求分析、代码讨论、内容创作——任何需要结构、秩序和复用的 AI 对话。
展开完整文档(README 剩余 1 节)
Ophel Atlas 🚀 把 AI 聊天变成可阅读、可导航、可复用的文档 语言:English | 简体中文 ✨ 把对话变成知识,而不只是历史记录 ✨ 再也不用在无尽的滚动里迷路。用实时大纲理清上下文,用聊天文件夹搭起你的体系,用提示词库打磨体验,让闪光的想法有序流动。 👇 演示:从「无限滚动」到「可导航的 AI 文档」 第一次让 AI 聊天成为真正可整理的工作流 不管你用下面哪个平台,Ophel 都能让你把对话整理成可复用的工作流,体验始终一致、统一。 📣 帮忙推广 Ophel Atlas 核心功能 • 快速开始 • 支持 Ophel Atlas • 参与共建 🌐 English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Deutsch | Français | Español | Português | Русский ✨ 核心功能 适合学习、研究、需求分析、代码讨论、内容创作——任何需要结构、秩序和复用的 AI 对话。 功能说明 🧭 智能大纲自动解析对话结构,生成可导航的目录,支持层级折叠、搜索、锚点、书签、大纲复制和字数统计 💬 会话文件夹 + 标签双维度管理,从来源站点自动同步,支持搜索、批量操作和拖拽排序 📤 导出多格式导出(Markdown/JSON/TXT),打包图片和附件为 zip,分段导出精准提取内容 💡 提示词库变量模板、分类、一键插入、提示词链和队列自动连续发送、选中引用操作 🧩 站点适配器内置 15 个主流 AI 站点适配器;从「站点包」区域安装适配器包,热插拔支持更多站点,云端更新自动修复内置适配器 🔍 全局搜索统一搜索会话、大纲、提示词和设置,支持 folder: tag: date: 语法过滤和模糊匹配 📖 阅读 Mermaid 图表渲染、LaTeX 公式支持、用户提问 Markdown 样式、滚动锁定 ⌨️ 效率阅读历史恢复、自定义快捷键、模型锁定、增强标签页命名、AI 完成通知 🎨 主题 20+ 主题、自定义 CSS、宽屏模式、禅模式,Option+D 切换深色/浅色 🔒 隐私与数据默认本地存储、WebDAV 多设备同步、文件导入/导出、零数据收集 📖 完整文档 → [!IMPORTANT] Ophel Atlas 把隐私放在第一位:默认本地,数据始终由你掌控。 - 默认本地: 设置、提示词、聊天管理数据都存在你的浏览器里 - 无需账号: 不用注册就能用 - 按需授权: 可选权限只在需要时申请,随时可以撤销(见扩展里的权限页面) - 可选 WebDAV 同步: 用你自己的 WebDAV 实现多设备一致(可控、可迁移) - 导出与备份: 支持导出和迁移,避免被锁定 _对具体 AI 站点的支持取决于站点匹配和页面结构变化_ 🚀 快速开始 [!tip] 强烈推荐使用浏览器扩展版本,功能更完整、体验更好、兼容性更高。用户脚本版本有局限。 手动安装(离线或访问受限) 浏览器扩展 1. 从 Releases 下载并解压 2. 打开浏览器扩展页面,启用开发者模式 3. 点击加载已解压的扩展程序,选择解压后的文件夹 用户脚本 1. 安装 Tampermonkey 2. 从 Releases 下载 .user.js 文件 3. 拖进浏览器,或点击链接安装 常见问题:用户脚本版里自定义 SitePack 域名怎么用? 用户脚本管理器不允许 Ophel 自动添加新的 @match 条目。在 Settings → Site Packs 下添加自定义站点后,复制用户脚本访问提示里列出的每条规则,再通过你的管理器添加: - Tampermonkey: 打开 Ophel 脚本,选择 Settings → Includes/Excludes → User matches,添加复制好的规则,然后保存。 - Violentmonkey: 打开 Ophel 脚本设置,在自定义 @match 规则下添加这些规则。 - ScriptCat: 打开脚本设置,在用户/自定义匹配规则下添加这些规则;标签名称可能因 ScriptCat 版本而异。 保存后重新加载每个目标站点。优先用管理器侧的自定义规则,不要直接改 Ophel 的元数据头:用户脚本更新时,自定义规则会保留。 🙌 支持 Ophel Atlas 💖 天使支持 treasuresure 🌟 支持者 Hugh 南 anonymous 狷客行舟🍜狂? 煜 Ice_wilderness Jeff Peng 火华兰樱 Lewu Gao Will Steel Maestro Count Basil anonymous 然 如果 Ophel Atlas 给你的工作流带来过乐趣,或者帮你省下了宝贵时间,不妨用一颗 Star 或一次 Sponsor 为它的旅程添把火。 ☕️ 分享同样有力量:如果你愿意在 Reddit、X、YouTube、Linux.do 或 Appinn 上分享你的使用体验,我们会非常开心。每一条反馈、每一次推荐,都在帮 Ophel 成长! 微信支付 支付宝 爱发电 🤝 参与共建 “If you want to go fast, go alone. If you want to go far, go together.” 感谢 Linux.do 社区的讨论与支持。项目里的很多想法和改进,都来自社区成员分享的反馈。 我们也期待更多开发者加入。如果你还不熟悉代码库,可以先看文档,或者借助 AI 助手快速上手: 💻 本地开发指南 环境要求:Node.js >= 18.x、pnpm >= 9.x 1. Clone the repo and enter the project directory git clone https://github.com/urzeye/ophel.git cd ophel 2. 安装依赖 pnpm install 3. 启动开发服务器(支持浏览器扩展 HMR) pnpm dev ======== 构建与打包 ======== 为各浏览器构建生产版本 pnpm build # 构建 Chrome 扩展 pnpm build:firefox # 构建 Firefox 扩展 pnpm build:all # 构建所有平台 打包成可分发的压缩包(.zip) pnpm package # 从已有构建打包 Chrome 扩展 pnpm package:firefox # 从已有构建打包 Firefox 扩展 pnpm package:all # 打包所有平台 ======== 用户脚本开发 ======== pnpm build:userscript:local # 构建用户脚本,用于本地调试 pnpm serve:userscript:assets # 在本地提供静态资源 [!TIP] 💡 贡献指南:提交 PR 前,建议先 fork 仓库、新建分支,并确保代码通过 pnpm lint:check 和 pnpm typecheck。 🌌 _开源由社区的每一颗星点亮。_ 衷心感谢以下每一位贡献者。你们的付出让这个仓库更加闪耀。 小 i 同学💻 🤔 🚇 treasuresure🎨 💵 去年夏天💻 Jianglang💻 🐛 Felix Liu💻 Madoka💻 Lin Zit Ting💻 joevalleyfield💻 hugo2233📣 t0ny-peng💻 mrpops2ko💻 Suxixihuanni📣 Ice-wilderness💻 🐛 Gitoffthelawn📖 Dr. Sri Harsha Guthikonda💻 crazyn2💻 Cola💻 ⭐ Star 历史 由 urzeye 用 ❤️ 打造 GPLv3 许可证
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
urzeye/ophel
把 AI 对话变成可整理、可复用的工作流,主流 AI 平台通用。
相关插件 · 浏览器
智能体插件框架deepseek-ai/deepseek-harness
DeepSeek Harnessdsh是由 DeepSeek AI 开发的开源 agent harness智能体框架。
★ 270,422已汉化DSH
71.9
多设备 Agent 看板YaoApp/yao
✨ 所有 Agent 和工作区集中管理,覆盖你的每一台设备。任务看板追踪进度,桌面端、移动端、浏览器、API…
★ 8,147已汉化DSH
71.2
可扩展侧边栏工作台omdsh-dev/DSH-better-sidebar
DSH 的双工作台:原生右侧栏 + 自绘底部面板,并把 ctx.betterSidebar 服务开放给所有插件
★ 4,761已汉化DSH
71.1
浏览器自动化桥Tencent/BrowserSkill
你的 Agent。你的浏览器。连接,就能协作。
★ 9,928已汉化DSH
71
AI 小说创作工作台EthanYoQ/AI-Novel-Writer
AI 小说作家 / AI Novel Writer
★ 1,591已汉化DSH
70.7
智能体浏览器引擎platonai/Browser4
DeepSeek Harness 集成
★ 1,175已汉化DSH
70.4