dsh-ego-browser

DSH PLUGIN记忆与知识

仓库 dshworks/dsh-ego-browser · npm @dshworks/dsh-ego-browser

记忆与知识 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

dsh-ego-browser 为 DeepSeek Harness 带来带记忆的浏览器自动化,让代理记住站点技能、将可用脚本提升为新工具,并支持人工接管。

一句话选型结论

按资料字段整理

dsh-ego-browser 是记忆与知识类的 DSH 可安装插件,验证等级 L5 · 运行验证通过,安全审查为低风险,列出 5 项功能,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类记忆与知识 收录类型可安装插件 验证等级L5 · 运行验证通过 安全审查低风险
验证等级 L5 L5 · 运行验证通过
GitHub 星标 1 复刻 0 · 未关闭 issue 0
最近更新 2026-09-30 创建于 2026-08-24
README 19.8 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add @dshworks/dsh-ego-browser@0.1.4
  1. 1
    确认版本与运行环境

    兼容的 DSH 版本为 0.2.0-rc.2 等 12 个;版本不匹配时安装会报错。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本0.2.0-rc.2 等 12 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名@dshworks/dsh-ego-browser可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-ego-browser:为 DeepSeek Harness 浏览器代理提供站点技能记忆的 DSH plugin

  • 行动前回忆站点技能
  • 单脚本执行整个任务
  • 将有效步骤提升为工具
  • 按名调用已学工具
  • 真实人工接管控制权

适用场景

记忆联网搜索

上游标签

agent-memoryai-agentsbrowser-automationchromiumcordisdeepseekdeepseek-harnessdshdsh-pluginego-browserego-litellm-toolsnodejssite-skillsweb-automation

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L5:安装和运行都在沙盒里跑通过,装完能直接用的概率高。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。
  • 标注了兼容的 DSH 版本(0.2.0-rc.2 等 12 个),按版本装不容易报错。
  • 列出了 5 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在记忆与知识场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-ego-browser当前 L5 · 运行验证通过 低风险 1 0.2.0-rc.2 等 12 个 有
ruflo L3 · 安装规范通过 低风险 7.4 万 未标注 无
OpenViking L3 · 安装规范通过 低风险 3.9 万 未标注 无
WeKnora L4 · 沙盒安装通过 低风险 3.3 万 未标注 有
distilly L4 · 沙盒安装通过 低风险 2.5 万 未标注 有
EverOS L4 · 沙盒安装通过 低风险 1.3 万 未标注 有

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方dshworks仓库 dsh-ego-browser · 默认分支 main
分类记忆与知识memory
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue1 / 0 / 0收录时的数值,非实时
创建 / 更新2026-08-24 · 2026-09-30最后推送 2026-09-30
本站收录2026-08-25首次进入本站目录的时间

README 全文

19.8 KB
作者原文,中文版优先;只做安全转义,不改内容
___  __ _  ___
/ _ \/ _` |/ _ \    dsh-ego-browser
|  __/ (_| | (_) |
\___|\__, |\___/    ego lite for DeepSeek Harness,
|___/          with a memory it keeps

The site-skill memory for dsh browser agents.

7 tools · a store in ego lite's own learnings/ format · verified on dsh 0.1.7-rc.2 · 81 tests, no browser needed · host-only · MIT

= 20">

What it does ·
60-second start ·
Proof ·
When to skip ·
Prior art ·
llms.txt ·
中文

AI agents / LLMs: read llms.txt in this repo — it carries the tool signatures, the store layout, and the three wire facts about ego that the docs get wrong.


ego lite is one browser a human and an agent share: the agent works in its own
Space with the user's real logins, the user's tabs stay theirs. This plugin
brings it into dsh — and adds the half ego's own README still lists as coming
soon.

> "Experience accumulation that makes your agent faster the more you use it
>
(coming soon)" — ego lite README

The reader already ships. site.learnContext, site.runTool and
site.runBrowserTool load a learnings/ directory out of whatever
EGO_BROWSER_AGENT_WORKSPACE points at. What was missing is the half that
fills it.

ego_recall  ──▶  ego_run  ──▶  ego_learn  ──▶  ego_site_run
what this       one script     promote the      one call, next
agent already   for the whole  step that        session, instead
learned about   browser task   worked           of rediscovering
the site
│
└──▶  ego_handoff — the page needs a human;
ask them for real, then take control back

The loop closes. The second time you scrape that dashboard, the agent calls a
tool it wrote last week instead of rediscovering the page.

What it does

  • Recalls before it acts — ego_recall returns the notes and tool
    signatures for a hostname off disk. No browser, no page load, no tokens spent
    rediscovering what worked last month.
  • Writes one script per task — ego_run hands the whole browser task to
    ego's runtime in a single script, which is the design ego's own benchmark is
    built on.
  • Promotes what worked — ego_learn turns a working step into a real site
    tool, in ego's format, and refuses the ones that will not survive to tomorrow.
  • Runs what it learned — ego_site_run calls a stored tool by name and
    counts the call, so a tool nobody uses is visible as unused.
  • Hands you the keyboard for real — ego_handoff raises a genuine dsh
    Continue / Finish task prompt, which is what ego's own hard-stop message
    asks the harness to do, and takes control back only when you say so.
  • Tells the model which ego you have — ego_doctor probes the installed
    command instead of trusting the docs, because there are two incompatible
    runtimes behind one command name.
  • Starts non-empty — on first boot the store inherits the learnings/ from
    the ego skill already on your machine.

How it works (30 seconds)

dsh agent
│  ego_run / ego_site_run                    ego_recall / ego_learn
▼                                                      │
┌──────────────────────────────┐                          ▼
│ dsh-ego-browser (host half)  │              ┌──────────────────────────┐
│  · argv + surface probes     │              │ learnings//        │
│  · script wrap + classify    │─────────────▶│   manifest.json          │
│  · promotion gate            │   writes     │   notes/*.md             │
└──────────────┬───────────────┘              │   tools/*.js             │
│ stdin heredoc                │   browser-tools/*.js     │
▼                              └──────────┬───────────────┘
`ego-browser`                                    │ EGO_BROWSER_
│                                         │ AGENT_WORKSPACE
▼                                         ▼
ego lite app  ◀───────── the same store, read back by ego itself
(your logins, its own Space)

The only wire is the ego-browser command the ego lite app installs. Nothing
here vendors, patches, or launches a browser.

Get started (60 seconds)

Needs ego lite installed and onboarded on the machine running dsh
(lite.ego.app), so ego-browser is on the PATH.

# 1. install
dsh plugin --profile web add -w @dshworks/dsh-ego-browser

# 2. restart dsh

# 3. verify it took — seven names, or [] if it did not
curl -s localhost:8090/dsh-ego-browser/memory | jq .tools

Running dsh inside a deva container with
the ego bridge? dsh strips every credential-shaped variable (KEY, SECRET,
TOKEN, PASSWORD) from the processes it spawns, so the bridge token has to be
forwarded on purpose, in the profile's cordis.patch.yml:

- id: dsh-ego-browser
config:
env:
DEVA_EGO_TOKEN: !!js process.env.DEVA_EGO_TOKEN

add registers the bundle in the profile roster for you. Then ask the agent to
run ego_doctor once — it is how it finds out whether to write cliLog() or
console.log() for the ego you installed:

command: ego-browser   invoked as: ego-browser <<'JS'
ego runtime surface: facades (console.log / page / browser / taskSpaces); 7 helper names visible.
store: ~/.dsh/ego-browser/workspace (3 sites)
github — github.com, *.github.com — 3 tool(s): search_repos (0x), get_open_issues (0x), get_repo_stats (0x)
google — google.com, *.google.com, www.google.com — 2 tool(s): search_and_extract (0x), get_autocomplete_suggestions (0x)
x-com — x.com, *.x.com, twitter.com, *.twitter.com — 3 tool(s): get_timeline_posts (0x), search_users (0x), post_from_active_element (0x)

Three sites and eight tools before the agent has browsed anything — that is the
store inheriting what ego already shipped.

Proof

On a real dsh boot (0.1.7-rc.2, and again on 0.2.0-rc.1: packed, added to a fresh profile with dsh plugin add, booted):

Claim How it was checked
It installs through dsh's own plugin path adding the packed package with dsh plugin add exits 0, so dsh's compatibility gate admits it, and the profile holds no @deepseek-ai/* package of its own to shadow the host's harness. scripts/check-dsh-release.mjs repeats this on every pull request and daily
All seven tools register GET /dsh-ego-browser/memory lists them; [] when the tools service never arrived
A call goes through the host into a real ego a headless turn called ego_doctor, ego_recall and ego_run through dsh's tool pipeline and its subprocess seam. ego lite 0.5.1.13 on a Mac, reached from a Linux container through the deva bridge, answered: nodejs argv, flat globals, ego runtime v24.18.1
The store self-seeds came up holding google (2 tools) and x-com (3) from ego's own shipped skills/ego-browser/learnings/
Our validator agrees with ego's format zero problems reported against ego's own shipped sites — the useful direction of that check
The route is fenced 200 on loopback, 403 for a Host header naming anywhere else

Against the genuine built ego-browser bundle and a real subprocess seam:

Claim How it was checked
The argv probe finds the working shape picks bare on the current CLI, nodejs on the older one, and reports both transcripts when neither runs
The surface probe is accurate returns facade with page, browser, taskSpaces, site, fetch, cdp, help against the real bundle — matching its source exactly
Output survives a failure a thrown error does not swallow what the script printed first; a top-level return still produces a verdict
A takeover is named as a takeover not as a missing result — see Two runtimes
The promotion gate holds snapshot refs, bad schemas, missing exports, and unparseable source are all refused, writing nothing
npm install && npm test    # 81 tests, no browser needed, ~2s

The CLI fixtures in fixtures/ are transcribed from ego's own source — argv
handling from src/run.ts, the output sink from src/output-sink.ts, the
helper surface from src/helpers.ts — with the upstream file named in each
header, because a double weaker than production tests nothing.

Not verified. Every path that touches a page: an actual page load, a real
task space, a real user takeover. ego lite is a macOS app and this was built in a
Linux container. The wire into it is exercised end to end against the real CLI
bundle, and against a real ego install through the deva bridge, but only with
scripts that open no page; what is on the far side of that is not. Run ego_doctor
on a real install and open an issue
with its output if anything below the wire disagrees with this page.

The gate that makes the memory worth keeping

ego_learn refuses code containing a snapshot ref:

this is not storable yet:
- code contains a snapshot ref (@21 / ref=21). Those are rebuilt on every
snapshotText() call and mean nothing on the next run — re-express the step
with a stable locator (a CSS selector, or the loc=... value from the
snapshot) before promoting it.

This is the whole difference between a memory and a pile of dead selectors. The
script that just worked is full of @21s, because that is how the agent found
the element five seconds ago. Storing it verbatim stores nothing. The rule is
ego's own — its validator rejects the same pattern — and enforcing it at write
time is what turns "it worked once" into "it works again".

Two runtimes, one command name

Worth stating plainly, because it will bite anyone writing against ego.

The argv shape is not stable. The shipped skill documents
ego-browser nodejs <<'EOF'. The CLI in citrolabs/ego-lite@main takes no argv
at all and answers a stray nodejs with its usage banner and exit 2. The
community Linux port swallows nodejs as a no-op prefix. One command name,
three behaviours.

The helper surface is not stable either. One generation installs flat
globals — cliLog, snapshotText, useOrCreateTaskSpace. The other installs
Playwright-shaped facades — page, browser, taskSpaces, site — and drops
cliLog for console.log. A script written for one throws ReferenceError on
the other, and no amount of documentation fixes it because both documents are
true somewhere. Even inside ego's own repo at HEAD, SKILL.md and
references/install.md disagree.

Neither is the output stream. ego's runtime flushes a script's output to
stdout. ego 0.5.1.13 reached through the deva bridge returns every byte on
stderr instead, --version included. The plugin reads each run from whichever
stream carries the marker the script printed, stdout first.

So this plugin does not assume. It asks, once per boot, and hands the answer
to the model.

And the output sink can eat your result. When the user takes a task space
back, ego marks a hard stop and discards every line the script logged,
printing only its own guidance. Any integration that parses a result sentinel
out of stdout finds nothing there and reports a parse failure. Here the
sentinel's absence is itself the signal, and the run comes back classified:

hardStop: true — the user has taken control of this task space; ego paused the
agent. Do not retry and do not take control back on your own — ask the user, and
resume with ego_handoff only after they say to continue.

When to use · When to skip

Use it if you want browser work that gets cheaper the second time; you are
on macOS with ego lite installed; you want the agent to reach sites you are
already logged into; or you want the login wall to become a prompt you can
answer instead of a dead turn.

Skip it if:

  • You want to watch the agent browse. This plugin has no viewer. Use
    Fisfzy/dsh-ego-browser — a live
    screencast panel you can click through, and a vendored Linux port so it works
    without the macOS app.
  • You are not on macOS. ego lite ships for macOS today. Same recommendation.
  • You want granular click / fill / scroll tools. Deliberately absent:
    ego's own benchmark attributes its speed to one-script-per-task, so thirty
    small verbs would spend that advantage to look thorough. If your model writes
    poor JavaScript, the granular design will serve you better.
  • You do browser work once and never again. The memory is the point. Without
    repetition it is overhead over the plain ego-browser skill.
  • You need this in CI, headless. ego lite is a desktop app with a real
    profile. A Playwright plugin is the right tool.

The seven tools

tool what it does
ego_run Run one script in ego's runtime. Pass url and it prepends everything already learned about that site. Pass taskSpace and it opens the space first, in the right dialect.
ego_recall Notes and tool signatures for a URL, read off disk.
ego_site_run Call a learned tool by site and name, and count the call.
ego_learn Promote a working step into a real site tool — and refuse it when it will not survive.
ego_forget Remove a tool or a whole site. A memory that is wrong is worse than none.
ego_handoff Hand the browser over with a real Continue / Finish task prompt, and take control back on Continue.
ego_doctor Which ego, which argv shape, which helper surface, which store, and what is in it.

The store is ego's format, not ours

/learnings//manifest.json          id, name, domains, notes, tools
/learnings//notes/*.md             what the agent figured out, in prose
/learnings//tools/*.js             node tool: export async function f(ctx, args)
/learnings//browser-tools/*.js     page tool: evaluated in the tab

Anything learned here loads in the stock ego-browser skill outside dsh, and in
any other agent pointed at the same workspace. There is no private format and
nothing to migrate out of.

On first boot the store inherits an existing ego skill workspace's learnings/
if it finds one, so it starts with the sites ego ships rather than empty. Once.
A site you delete stays deleted.

Everything is validated before a byte is written, so a refused promotion leaves
the store exactly as it was: manifest shape, domain patterns, argument and
return schemas, the declared export, and the source's syntax — parsed
out-of-process with node --check, never imported, because that code is written
for the browser runtime and has no business running in the harness.

Read the store at any time:

curl -s localhost:8090/dsh-ego-browser/memory | jq

Configuration

Every field is optional.

field default what it is
bin ego-browser The command. An absolute path when it is not on the PATH.
workspace $DSH_HOME/ego-browser/workspace (~/.dsh when DSH_HOME is unset) Where learned sites live. Point it at an existing ego skill directory to share that store instead of keeping a copy.
seed true Inherit an existing ego workspace's learnings/ on first boot.
cwd harness cwd Working directory for the ego-browser process.
extraArgs / env [] / {} Appended to every invocation.
timeoutMs 120000 How long one script may run.
probeTimeoutMs 20000 How long a capability probe may take.
maxOutputBytes 1048576 Script output retained; overflow keeps the tail.
route true Serve the store at /dsh-ego-browser/memory.
trustedHosts [] Authorities besides loopback that may read that route.

subprocess is the only required service. tools and webServer are picked up
when present, so a headless profile loads cleanly and simply has no route.

The handoff, in full

ego's own hard-stop message asks the harness for this, in as many words:

> "Offer the user choices like "Continue" or "Finish task" if your harness
> supports it"

dsh supports it. ego_handoff hands the space over, raises a genuine dsh
question with those two options, and on Continue takes control back so the
next ego_run resumes — no "reply continue and I'll try again" dance, no agent
grabbing the keyboard back from a user who is still typing their password.

Where nobody can be asked — headless, no question UI, or the caller is a
subagent, which the harness refuses with DELEGATED_CALLER rather than blocking
forever — it says so plainly rather than pretending an answer arrived.

Prior art

Two other people wired ego into dsh first, and both are worth your time:

  • Fisfzy/dsh-ego-browser — 32
    granular ego_* tools plus a live screencast panel you can click through,
    with a vendored Linux port of the ego runtime so it works without the macOS
    app. Genuinely ambitious work, honest about its own limits, and the one to
    pick if you want to watch the agent browse. This plugin does not compete
    with it and ships no viewer.
  • Da1dr1em/dsh-ego-browser —
    three tools around the Windows preview host: run, help, status. The smallest
    honest thing that works.

Neither fills the learnings store, and neither turns ego's hard stop into a real
prompt. That is the gap this one is for.

And the thing itself: ego lite by
CitroLabs is the good idea here — one browser
for the human and the agent, instead of a framework driving a second one. The
store format, the temp-ref rule, and the handoff protocol are all theirs; this
plugin only fills them in.

Contributing · Security · License

CONTRIBUTING.md — what needs a real browser, and what does
not. If you have ego lite on a Mac, ego_doctor output from a real install is
the most useful thing you can send.

SECURITY.md — the agent drives your real logged-in sessions.
Worth two minutes before you install.

MIT. ego lite is a separate, free download under its own MIT license; nothing
from it is vendored here. Not affiliated with DeepSeek or CitroLabs.

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-ego-browser 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add @dshworks/dsh-ego-browser@0.1.4` 即可。对应的 npm 包名是 `@dshworks/dsh-ego-browser`。

dsh-ego-browser 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-ego-browser 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-ego-browser 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-ego-browser 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.7-alpha.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2。版本较多,只列出前 8 个。

dsh-ego-browser 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-ego-browser 有哪些功能?

行动前回忆站点技能、单脚本执行整个任务、将有效步骤提升为工具、按名调用已学工具、真实人工接管控制权。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

2 条
不同作者的仓库分开列,请确认你要装的是哪一个
记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

dshworks 的其它插件

5 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。