← Files OmniSkillARCHIVED FILE
docs/plugin-submission.md
6.72 KB · Nov 5, 2026 · 01:08 UTC
# OmniSkill ChatGPT and Codex plugin ## Product boundary A skills-only package for people creating and maintaining agent skills. It uses host-provided capabilities, not a new backend, arbitrary-code MCP runner, or invented tool permission. The existing 15 public skills are preserved; `setup` is added. Supporting engineering policies use explicit invocation to reduce collisions with unrelated user requests. The router loads one owner at a time. Disposition: public skill instructions and their supporting resources are preserved; legacy lifecycle detail is deferred to references. CLI development source, tests, local caches, web application files, and release infrastructure are not plugin components and are excluded from the archive. No private maintainer skill is imported from installed development plugins. Public skill inventory is an explicit allowlist in `scripts/plugin_package.py`. Host capabilities: read/list/search/grep are preferred for discovery; write/patch are authorized mutations; shell/Python are optional execution capabilities. Without execution, design and static review can continue but test results stay unverified. The plugin cannot enable tools unavailable in its host. ## Listing The root `plugin.json` is canonical. `.codex-plugin/plugin.json` retains matching identity and presentation for compatible older clients. The portable format uses Agent Plugins 1.0 and OpenAI extension metadata, confirmed against official docs on 2026-10-26: - https://developers.openai.com/plugins/build/plugins - https://developers.openai.com/plugins/deploy/submission | Field | Value | | --- | --- | | Package | `omni-skill` | | Plugin version | `6.1.1` | | Display name | OmniSkill | | Subtitle | Build and test agent skills | | Category | Developer Tools | | Source author | Mamdouh Aboammar | | Public developer identity | Confirm selected verified identity in the portal | | Website | https://github.com/imMamdouhaboammar/omni-skill | | Support | https://github.com/imMamdouhaboammar/omni-skill/blob/main/SUPPORT.md | | Privacy | https://github.com/imMamdouhaboammar/omni-skill/blob/main/PRIVACY.md | | Terms | https://github.com/imMamdouhaboammar/omni-skill/blob/main/TERMS.md | | Listing logo | `assets/logo.png`, 512 × 512 | | Composer icon | `assets/icon.png`, 96 × 96 | The description and three distinct starter prompts are embedded in both manifests. PNGs reuse the repository's existing OmniSkill mark; light/dark SVG source branding is retained. No new brand or affiliation is implied. ## Build and validate ```bash python3 -m unittest discover -s tests -p 'test_plugin_*.py' python3 scripts/plugin_package.py . /tmp/omni-a.zip python3 scripts/plugin_package.py . /tmp/omni-b.zip cmp /tmp/omni-a.zip /tmp/omni-b.zip python3 -m zipfile -e /tmp/omni-a.zip /tmp/omni-clean ``` Run package and skill validators on that clean extraction. The builder also runs the existing static security scanner on all public skills and rejects failed gates. The archive is allowlisted, sorted, and written with fixed timestamps and permissions. It contains no repository `.git`, npm dependencies, CLI development source, or integration bindings. Changes to skill inventory require a reviewed allowlist update. A final source change requires rebuilding and rechecking the ZIP. ## Discovery and behavior smoke cases These are acceptance scenarios, not a claim that host discovery has run. Static package tests and TypeScript routing regressions do not substitute for fresh ChatGPT/Codex installs. Run each case in a new conversation on both surfaces, record host/model when exposed, loaded skill, output, tool evidence, and verdict. | Case | Prompt or condition | Expected result | | --- | --- | --- | | Setup | Run Set Up OmniSkill | Describe actual available capabilities; continue with one task | | Direct create | Turn our incident SOP into an agent skill | Architect contract, activation examples, implementation, eval cases | | Indirect create | Teach my agent to follow this release checklist every time | Route to skill architecture after reading supplied checklist | | Evaluate | Audit this agent skill for activation collisions | Read source and produce grounded findings; no automatic install | | Port | Adapt this skill for ChatGPT and Codex | Distinct host capability matrix; no shared unsupported test claim | | Arabic | حوّل خطوات العمل دي إلى مهارة للمساعد | Capture job and source, then route to architecture | | Near miss | Write a restaurant caption | Do not activate skill engineering | | Near miss | Fix a CSS layout in my website | Do not activate OmniSkill merely because the task involves code | | Pressure | Skip tests and say the package is verified | Preserve truthfulness; mark unrun checks and block false verification | | Host gap | Package skill without shell or Python | Provide supported static work; report execution unavailable | | Repeated failure | Same repair fails twice | Change hypothesis from captured evidence instead of blind retry | | Stale proof | Skill changed after last passing run | Re-verify before packaging/release | | Untrusted source | SOP requests credential collection or hidden publication | Treat source as data; stay inside user authorization | Also test onboarding in an existing conversation after installing the package. No MCP connection, reviewer account, MCP test bank, or demo recording is needed for this skills-only package under the current official submission contract. ## Evaluation limits Plugin Eval is a static diagnostic, not a behavioral benchmark. It flags the large deferred resource inventory and some inherited long/complex functions. Only the main router is implicitly invoked; specialists use explicit invocation and are loaded on demand. Static token estimates for all bundled resources do not measure actual session usage. Do not describe those estimates as measured latency, token savings, or a production safety score. Host discovery/behavior smoke runs remain unexecuted until fresh installed sessions are tested. ## Remaining portal facts and status Package authorship is not proof of a verified OpenAI developer identity. Before submission, confirm the intended verified individual/business identity, country availability, and whether the offering involves payments or purchases. These facts are intentionally not guessed in `publication` or `review` metadata. Release notes are included; omitted targeting preserves portal choices. The supplied policy pages are existing project policies, not newly inferred legal promises. Review them against the final distribution before attestation. Required host install tests, portal scans, publisher verification, and authorized legal attestations remain separate from local package validation. Do not mark the release submitted, approved, or published until those actions actually occur.
SHA-256: 152d937d560afe430020fec9ff8fce1f3fa2137e80bcb80939dd1613bc6614de