plugin-workbench SKILL.md skillA
plugin-workbench from maomaochong-ai/open-astravia is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add maomaochong-ai/open-astravia/plugin-workbench@git:20261001.0ce1911Pins git:20261001.0ce1911 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- maomaochong-ai/open-astravia
- Path
packages/plugins/presets/plugin-workbench/agent/skills/plugin-workbench/SKILL.md- Versions recorded
- 5
- Latest version
- git:20261001.0ce1911, committed Oct 1, 2026
- First version recorded
- Sep 14, 2026
- Size
- 12,362 bytes
- Repository stars
- 39
- License
- Apache-2.0
Create, implement, build, pack, install, reload, and manage Astravia desktop plugins for non-developers. Use whenever the user wants a Astravia plugin, plugin scaffolding, apply a `.astraviapkg` package to Astravia, edit plugin.json name/guidingWords, or debug plugin load/install. Requires the Plugin Workbench input-bar toggle (hard isolation). The plugin handbook ships inside the project's own @astravia-org/plugin-sdk; locate it with the bundled CLI's docs command.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# 制作插件(完整流水线)
面向**不懂开发的用户**:你读规范、写代码、跑标准脚本、装进本机;用户只回答问题与点确认。
**质量底线**:没有读过插件手册就动手写实现 = 禁止。凭记忆编造 SDK API 很容易装上不能用。
---
## 0. 解析工作台根目录(先做)
```
workbenchRoot = listPlugins() 中 id === "plugin-workbench" 的 rootPath
```
若拿不到:用宿主 `plugins.query` list,或面板/会话上下文;失败则 AskUserQuestion 请用户确认 App 已启用系统插件「制作插件」。
| 资源 | 绝对路径 |
| --- | --- |
| **插件 CLI(内置)** | `{workbenchRoot}/agent/cli/astravia-plugin-cli.js` |
| 文档索引(本 skill 附件) | 本 skill 目录 `references/doc-index.md` |
| 实现模板摘要 | 本 skill 目录 `references/templates.md` |
| 标准脚本 | `{workbenchRoot}/scripts/*.mjs` |
**手册不在工作台里**,它随 `@astravia-org/plugin-sdk` 装进**被编辑工程自己的** `node_modules`。
这是刻意的:那份手册与该工程实际编译的 SDK 版本一致,而随 App 发版的内嵌副本做不到。用内置
CLI 解析它的位置(工程 `npm install` 之后):
```bash
node "{workbenchRoot}/agent/cli/astravia-plugin-cli.js" docs --json
```
返回 `manualDir`(手册目录绝对路径)、`entry`(README.md)、`sdkVersion`,以及当前命中的插件工程。
**不要硬编码 node_modules 路径**:工作区可能把依赖提升到上层,一仓多插件时各插件还可能钉不同版本。
---
## 1. 强制读文档(不可跳过)
用 **read 工具**打开文件(绝对路径),不要只 skim 本 skill。
### 1.1 每次创建或大改插件
先用上面的 `docs --json` 拿到 `manualDir`,然后(`{manualDir}` 代指它):
1. `read {manualDir}/README.md` — 能力矩阵与导航
2. `read {manualDir}/getting-started.md` — 工程结构、MF、构建安装
…Read the whole file at its exact version.
How to install
mdr add maomaochong-ai/open-astravia/plugin-workbench@sha256:91574ba81af02803The line at the top of this page pins the label git:20261001.0ce1911, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_ncx3pkyijzyabmpp)
0 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 5 versions of this file, between Sep 14, 2026 and Oct 1, 2026, about one every 4 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20261001.0ce1911 latest | 2026-10-01 | 0ce1911 | 12,362 B | A | view · diff |
| git:20260919.c82cd04 | 2026-09-19 | c82cd04 | 12,296 B | A | view · diff |
| git:20260916.6d1edbd | 2026-09-16 | 6d1edbd | 12,276 B | A | view · diff |
| git:20260914.0734940 | 2026-09-14 | 0734940 | 12,054 B | A | view · diff |
| git:20260914.2d2b1ba | 2026-09-14 | 2d2b1ba | 11,147 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (12362 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
maomaochong-ai/open-astravia · 39 stars · license Apache-2.0 · pushed 2026-11-01 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_ncx3pkyijzyabmpp GET https://markdownregistry.com/api/v1/resolve?ref=maomaochong-ai/open-astravia/plugin-workbench GET https://markdownregistry.com/api/v1/blob/91574ba81af02803d39f000b76f7a31ef7214b1e754f2bf554222cb3c476292d
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.