A Submission is created when a signed-in User runsDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/org-quicko/skillset/llms.txt
Use this file to discover all available pages before exploring further.
skillset install <url> — the CLI clones the repository, installs the Skill locally, and simultaneously forwards it to the Registry for admin review. Any authenticated User (even a reader) can submit, because submitting publishes nothing. The Skill only enters the Registry catalog — and becomes discoverable and installable by the whole team — when an Admin approves it. This page covers the full Submission lifecycle from initial install to catalog entry.
What a Submission Is
Not a Resource
A Submission is held separately from the catalog. No one can browse, search, or install it until an Admin approves it. It is pending — not published.
Carries a future identity
Every Submission records the
(kind, namespace, name) it would have as a Resource. The Namespace is derived from its source repository URL — the same way a direct publish derives it — so the final Resource lands exactly where a manual publish of the same source would have.Idempotent by identity
Submitting the same URL again replaces the existing pending Submission. Only the latest copy is reviewed; earlier submissions don’t accumulate.
Credited to the submitter
On approval, the new Resource is credited to whoever submitted it. The submitter’s email and display name are recorded as the publisher.
The Submission Lifecycle
Status during the Submission workflow
skillset update reports the status of every installed Skill by comparing the local copy against the Lockfile and the Registry. For a URL-installed Skill that has been submitted but not yet approved:
| State | What skillset update reports |
|---|---|
| Submitted, awaiting review | pending — no Registry revision to compare against |
| Approved | outdated — Registry revision now exists and local copy predates it |
| Rejected | pending — the Submission is gone but the local install is unchanged |
outdated, running skillset update replaces the locally-cloned copy with the Registry’s canonical copy, and the Lockfile is updated to point to the Registry revision.
Rejection does not remove the Skill from the submitter’s machine. The local copy remains installed and functional. The submitter can re-submit it, or keep using it as a URL-installed Skill indefinitely.
Reviewing Submissions
Admins review pending Submissions from Settings → Submissions. Each Submission shows:- The Skill’s name, description, and body content
- The source repository URL it was cloned from
- The Namespace and
(kind, namespace, name)it would occupy as a Resource - Who submitted it and when
Approving a Submission
Review the content
Read the Skill’s description and body. Check the source URL — it records where the bytes came from. Verify that the
(kind, namespace, name) identity is appropriate for your Registry.Approve
Click Approve. The Submission’s files are copied into the new Resource’s storage prefix, the Resource row is created, and the Submission is deleted.
Rejecting a Submission
Click Reject on the Submission. This deletes the Submission and its uploaded files. The submitter’s locally-installed copy is unaffected — they can continue using it or re-submit it.API
Reject a Submission
204 No Content.
Response fields
The Submission’s unique identifier (UUID).
Always
skill — only Skills can be submitted via URL install.The Namespace the Resource would occupy, derived from the source repository URL.
The Skill’s name, as parsed from the
SKILL.md frontmatter.The Skill’s description, as parsed from the
SKILL.md frontmatter.The repository URL the Skill was cloned from. Always a repository URL — a Submission can only exist because the bytes came from somewhere other than this Registry.
The
allowed-tools value parsed from the Skill’s SKILL.md frontmatter, or null if none was declared.The email address of the User who submitted the Skill.
The display name of the User who submitted the Skill.
ISO 8601 timestamp of when the Submission was created or last replaced.
Constraints and Edge Cases
What if a Resource with the same identity is published while a Submission is pending?
What if a Resource with the same identity is published while a Submission is pending?
Approval is refused with a conflict error if a Resource of the same
(kind, namespace, name) already exists at the time of approval. The Submission is left in place — an Admin can reject it manually once the conflict is resolved or understood.What if no files were uploaded before approval?
What if no files were uploaded before approval?
Approval is refused if none of the Skill’s files were uploaded to object storage. The CLI uploads files as part of
skillset install, so this should not occur in normal use — but a Submission created via direct API call may be in this state. Re-submit with the correct files to resolve it.Can a Submission be for a Plugin or MCP Server?
Can a Submission be for a Plugin or MCP Server?
No. Only Skills can be submitted via
skillset install <url>. Plugins and MCP Servers are published directly by Writers using the CLI or web interface.API Reference
All Submission management endpoints require anadmin role.
| Method | Path | Role required | Description |
|---|---|---|---|
GET | /api/submissions | admin | List all pending Submissions |
PUT | /api/submissions/:kind/:name | any authenticated | Submit a URL-installed Skill for review |
POST | /api/submissions/:id/approve | admin | Approve a Submission, creating a Resource |
DELETE | /api/submissions/:id | admin | Reject and delete a Submission |