Kunkun
参考

清单参考

Kunkun 清单的每个字段,以及交互式验证器。

您的扩展清单是 package.json 中的 kunkun 字段。它由 @kunkunsh/sdk/manifest 中提供的 Valibot 模式验证——下面的验证器也使用相同的模式。

交互式验证器

粘贴或编辑 package.json,它将根据实际模式实时检查:

Manifest validator● valid

这会验证整个 package.json(顶层字段加上 kunkun)。错误会显示字段路径和消息。

顶层 package.json

字段类型说明
namestringnpm 包名称(必填)
versionstringsemver 版本(必填)
licensestring必填
$schemastringhttps://schema.kunkun.sh/ 用于编辑器提示
author, contributors, repository, description标准 npm 字段
filesstring[]tarball 中包含的文件(例如 ["dist"]
kunkunobject清单(见下方)

kunkun 清单

字段类型说明
identifierstring必填。 稳定的唯一 ID(例如 com.you.tool)。影响安装、存储、授权——切勿更改。
namestring显示名称(回退到包名称)
shortDescription / longDescriptionstring商店列表
iconIcon见下方
commandsCommand[]必填。 每个命令一个条目
permissionsPermission[]权限
preferencesPreference[]扩展级偏好设置
demoImagesstring[]商店截图
categoriesCategory[]商店分类
platforms("linux"|"macos"|"windows")[]限制平台
servicesService[]暴露的服务
serviceDependenciesServiceDependency[]您消费的服务
bindingsobject主机 LLM/资源绑定
binaryDependenciesBinaryDependency[]主机托管的三进制依赖

图标

{ "type": "iconify", "value": "mdi:puzzle", "invert": true }

type: "iconify" 使用 Iconify ID;invert 为深色模式反转颜色。

命令

字段类型说明
namestring内部命令 ID
titlestring在命令面板中显示
descriptionstring
modeCommandMode见下方
mainstring入口:路由(/)、dist/App.jsdist/node/App.js
diststring构建输出目录(自定义视图)
devMainstring开发服务器 URL(HMR)
iconIcon每个命令的图标
windowWindowConfig自定义/节点视图窗口选项
runtime"auto"|"deno"|"node"节点模式运行时覆盖
intervalnumber | "5m"计划任务(无头模式)
cronstringcron 计划(无头模式)
argumentsArgument[]用户输入参数
preferencesPreference[]每个命令的偏好设置
keywordsstring[]额外搜索词
platformsOSPlatform[]限制此命令的平台

mode — 取以下之一:

运行时说明
custom-viewBrowserWindow您自己的 SPA
worker-viewWeb Worker通过 Uniview 使用 React
node-viewNode/DenoReact + 系统访问
worker-headlessWeb Worker无 UI
node-headlessNode/Deno无 UI + 系统访问
menu-barTray菜单栏命令
quicklink导航到 link
view / no-viewRaycast 别名 → node-view / node-headless

窗口配置(自定义/节点视图)

{ "titleBarStyle": "overlay", "transparent": true, "vibrancy": "sidebar", "width": 700, "height": 550 }

服务

{
  "name": "math",
  "description": "数学运算",
  "main": "dist/node/MathService.js",
  "serviceMode": "node-headless",
  "methods": [
    { "name": "add", "description": "加法", "inputSchema": { /* JSON Schema */ }, "outputSchema": { /* JSON Schema */ } }
  ]
}

完整模式见服务

权限

简单字符串或作用域对象——完整目录和作用域形状见权限。快速形状提醒:

{
  "permissions": [
    "clipboard-read",
    { "permission": "fs-read", "allow": ["$EXTENSION_SUPPORT/**"] },
    { "permission": "network", "domains": ["*.github.com"] },
    { "permission": "shell", "commands": [{ "program": "git", "args": ["status"] }] },
    { "permission": "backend", "allow": [{ "script": "$EXTENSION/dist/backend.js", "runtime": "node" }] }
  ]
}

最小有效清单

{
  "name": "hello",
  "version": "0.1.0",
  "license": "MIT",
  "kunkun": {
    "identifier": "com.you.hello",
    "commands": [{ "name": "main", "title": "Hello", "mode": "worker-view", "main": "dist/App.js" }]
  }
}

On this page