create-plugin

create-plugin is a skill for Claude Code, Codex from oneworks-ai/app. It costs 73 tokens per session (8,605 once invoked), scanned A, original, MIT.

A guide for creating or changing OneWorks plugins, including their interface entry points and local services. OneWorks is the plugin platform this guide targets.

In plain words
What is it for?
Use it when building or modifying OneWorks plugin manifests, user-interface entry points, server entry points or scoped local-service features.
Why use it?
It turns a requested button, tab, search result or service into the files and runtime connections a OneWorks plugin needs.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: reads ~/.codex paths; mentions Codex; $skill-name invocation.

Good fit Use it when building or modifying OneWorks plugin manifests, user-interface entry points, server entry points or scoped local-service features.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/oneworks-ai/app/create-plugin
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add oneworks-ai/app --skill create-plugin
Clone the repo
git clone --depth 1 https://github.com/oneworks-ai/app

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for create-plugin

README.md
[![agentmods](https://agentmods.dev/badge/skills/oneworks-ai/app/create-plugin/github.svg)](https://agentmods.dev/skills/oneworks-ai/app/create-plugin)
Your own site
<a href="https://agentmods.dev/skills/oneworks-ai/app/create-plugin"><img src="https://agentmods.dev/badge/skills/oneworks-ai/app/create-plugin/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for create-plugin

Your own site · 80×15
<a href="https://agentmods.dev/skills/oneworks-ai/app/create-plugin"><img src="https://agentmods.dev/badge/skills/oneworks-ai/app/create-plugin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 73 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 8,605 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00073 $0.08605
Opus 5.5 $0.00029 $0.03442
Sonnet 5.5 $0.00015 $0.01721
Haiku 4.5 $0.00007 $0.00860

Measured 1mo ago against content hash 36c279a24c96, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

create-plugin scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

packages/plugins/cli-skills/skills/create-plugin/SKILL.md · 416 lines

How it starts

The opening of the file, as written. The whole thing — 416 lines — stays where its author put it; the contents beside it link to each section on GitHub.

在用户描述“想创建一个插件”“想在界面里加一个入口 / 按钮 / tab / 搜索 / 调试面板 / 本地服务能力”,或明确要求“用 plugin 实现某个 UI 效果”时使用这个 skill。

工作目标

先理解用户真正想要的交互效果、入口位置和 runtime 能力,再把自然语言效果转换为一个可运行、可调试、可维护的 OneWorks plugin。优先落到 plugin manifest、前端 activatePlugin(ctx)、server activatePlugin(ctx) 和 scoped runtime 通道;不要把 plugin 需求改成宿主硬编码,除非现有 plugin 扩展点明显不足。

这是 OneWorks 内置的 create-plugin skill,只面向本仓库的 OneWorks plugin。不要套用 Codex 系统 $plugin-creator 的 .codex-plugin/plugin.json、.agents/plugins/marketplace.json、~/.codex/skills 或 marketplace 规则,也不要修改全局 Codex skill。

先读这些

开始写或改 plugin 前,先读取当前仓库里的插件规则和示例:

  • .oo/docs/usage/plugins.md
  • .oo/docs/usage/plugins/ui-runtime.md
  • .oo/docs/usage/plugins/server-runtime.md
  • packages/plugins/demo/package.json
  • packages/plugins/demo/plugin.json
  • packages/plugins/demo/README.md
  • packages/plugins/demo/README.zh-Hans.md

如果用户是在改已有 plugin,先读目标 plugin 自己的 plugin.json、README 多语言文件、client/ 和 server/ 入口,再决定最小修改点。

先理解效果

先把用户诉求拆成这些问题;用户已经给出时不要重复问:

  • 入口在哪里:左侧导航、左侧更多菜单、chat header、下方面板 + 菜单、右侧/下方 workbench tab、launcher 搜索、独立 plugin route。
  • 点击后发生什么:打开页面、创建新 tab、执行命令、调用本地服务、跳转外链或展示状态。
  • 展示在哪里:plugin route、可关闭 workbench tab、右侧抽屉 tab、toast、菜单项、launcher result。
  • 是否需要 runtime:只需要前端 DOM,还是要 server command、scoped API、loopback 本地服务、文件监听或 manager / workspace runtime 通信。
  • server 入口运行在哪里:普通工作区能力默认 workspace;设备级、launcher 级或跨 workspace 协调才使用 manager。一台设备可以同时有多个 workspace server,不要假设只有一个 workspace endpoint。
  • 是否需要开发态热更新:本地开发优先放在 packages/plugins/<name> 并通过 .oo.config.json 显式声明;临时开发目录才放在 .oo/plugins.dev/<name>,开启 watch。本地路径 plugin 的 client source 会通过宿主 Vite dev server 加载,不需要单独启动插件 Vite dev server。

如果缺失信息会改变入口、交互、数据来源、权限、本地服务、scope 或验证方式,先列出“不确定点”让用户确认。每个不确定点都要写清它会影响什么;可以给出推荐默认值,但不要在关键需求模糊时直接替用户拍板。只有名称、图标、文案这类低风险细节缺失时,才采用保守默认并在结果里说明。

扩展点选择

按效果选择 manifest 字段:

  • 左侧固定入口:plugin.contributions.navItems。默认路径是 /plugins/<scope>/<id>;也可以给 route 或 command。
  • 左侧更多菜单:navMoreMenu,支持 command、route、href。
  • 左侧底部「菜单」上方区域:navFooterBefore,支持 command、route、href。
  • chat header 右上角按钮:chatHeaderActions,用 command 触发 plugin 命令。
  • chat header 更多菜单:chatHeaderMoreMenu。
  • chat 新建面板默认页操作卡片:chatInteractionPanelEmptyActions,支持 command、route、href,额外支持展示用 shortcut。
  • 通用路由 header 按钮:routeHeaderActions,用 targetRoute / targetRoutes 限定宿主 route container,用 command 触发 plugin 命令。
  • 通用路由折叠态 window bar 按钮:routeWindowBarActions,通常和 routeHeaderActions 成对注册,也用 targetRoute / targetRoutes 限定宿主 route container。
  • 通用路由更多菜单:routeMoreMenuItems,支持 command、route、href;其中 route 是点击后的跳转目标,不是宿主显示条件。
  • 通用路由侧栏入口 / 列表右键菜单:routeSidebarContextMenu,支持 command、route、href;其中 route 是点击后的跳转目标,不是宿主显示条件。
  • 独立页面:routes + clientView,前端用 ctx.views.register(viewId, render) 提供内容。
  • 下方面板或右侧抽屉 tab:workbenchTabs 或 workspaceDrawerTabs,用 placement: "bottom" | "right" 决定位置。
  • 下方面板 + 菜单:workbenchAddMenu。如果要点击后创建 tab,设置 tab 指向 workbenchTabs[].id。
  • launcher 搜索:launcherSearchProviders,桌面 launcher 使用 server-backed command;workspace client 可以再用 ctx.launcher.registerSearchProvider 注册本地搜索。
  • chat 工具调用展示:toolUsePresentations,用纯声明配置工具匹配、Material Symbol、国际化标题、摘要目标、输入字段和结果格式;不要为单个插件在聊天组件里新增 renderer 或注入 JSX/HTML。
  • 插件间扩展点:拥有方用 extensionPoints 或 ctx.extensionPoints.register 暴露 <scope>/<id>;其他插件用 ctx.extensionPoints.onAvailable('<scope>/<id>', point => ctx.extensionPoints.contribute(...)) 监听目标点出现后补充结构化能力。只有 manifest 里声明的静态贡献才用 extensionContributions。
  • 插件间纯前端 API:拥有方用 ctx.pluginApis.register({ id, inputSchema, outputSchema, handler }) 暴露 in-client 过程调用;调用方用 await ctx.pluginApis.call('<scope>/<id>', input)。所有调用必须是 Promise,运行时会等待目标 API 注册并等待 handler 完成。
  • 本地能力:server ctx.registerCommand 或 ctx.registerApi;前端通过 ctx.commands.execute 或 ctx.api.fetch 调用。
  • manager / workspace 通信:server ctx.runtime.registerChannel 和 ctx.runtime.invokeChannel;前端通过 ctx.runtime.invokeChannel 调用当前 scope 的 server runtime channel。

Read the full file on GitHub · 416 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 416 lines · 73 tokens per session scan A 36c279a24c96

Subscribe to this mod's changes

create-plugin is a skill published in the GitHub repository oneworks-ai/app (20 stars, last pushed 1mo ago), licensed MIT. It adds 73 tokens to every session and 8,605 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

spec-kitty-charter-doctrine

Run charter interview, generation, context, and sync workflows for project governance in Spec Kitty 3.x. Access doctrine artifacts programmatically via DoctrineService. Resolve agent profiles. Load action-scoped governance context iteratively, not all at once. Triggers: "interview for charter", "generate charter"…

Priivacy-ai/spec-kitty · 135 tokens

chisle-audit

One-shot efficiency audit of a file, diff, or whole repo across BOTH axes at once: over-engineered code (reinvented stdlib, needless abstractions, speculative config) AND bloated prose (verbose comments, padded docstrings, redundant doc sections). Neither a pure code-minimizer nor a pure prose compressor does both in…

JayPokale/Chisle · 130 tokens

mongodb-query-optimizer

Help with MongoDB query optimization and indexing. Use only when the user asks for optimization or performance: "How do I optimize this query?", "How do I index this?", "Why is this query slow?", "Can you fix my slow queries?", "What are the slow queries on my cluster?", etc. Do not invoke for general MongoDB query…

fcakyon/claude-codex-settings · 98 tokens

polar-local-environment

This skill should be used when setting up or managing Polar local development environment with Docker.

fcakyon/claude-codex-settings · 22 tokens

execute

Execute an approved Maestro implementation plan using the shared session-state contract.

josstei/maestro-orchestrate · 14 tokens

neo4j-modeling-skill

Design, review, and refactor Neo4j graph data models. Use when choosing node labels vs relationship types vs properties, migrating relational/document schemas to graph, detecting anti-patterns (generic labels, supernodes, missing constraints), designing intermediate nodes for n-ary relationships, enforcing schema with…

neo4j-contrib/neo4j-skills · 152 tokens