For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt, and this page is available as Markdown at /creating-skills-and-plugins/publish-and-update.md.

Publish and update

Info

Takeaway Publish a skill or plugin with tessl skill publish or tessl plugin publish. It goes to your workspace as private by default. Bump the version to ship an update, and request public visibility only when you want anyone to install it.

Publishing puts a skill or plugin on the Tessl Registry so it can be installed by name. This page covers the publish command, visibility, and versioning. Rolling context out across many repositories, and the GitHub-based publishing flow, are covered in Distribute.

Info

Your agent can run this step too: tessl install tessl/plugin-creator

Publish

From the skill or plugin directory, or with a path:

tessl plugin publish ./api-conventions --workspace engteam

engteam is a stand-in workspace. Run tessl workspace list and use one of yours.

A single skill uses the same flow through tessl skill publish. Both publish to your workspace as private: only workspace members can install it.

FlagPurpose
--workspaceWorkspace to publish under. Required when non-interactive.
--dry-runRun every pre-publish check without publishing. Use it first.
--bump patch|minor|majorBump the version automatically if the current one already exists on the registry.
--skip-evalsSkip publishing the eval scenarios in evals/.
--versionPublish a specific version (plugin publish).

On publish, Tessl lints and reviews the content automatically, and the review score appears on the registry. See Check a skill's quality using review.

Publication checks and blocked versions

An accepted upload is not necessarily available to install yet. Tessl runs publication checks asynchronously after the upload. The publish command tells you whether the version is available, blocked, still being checked, or could not be checked.

Check the exact version that you uploaded:

tessl plugin info engteam/api-conventions@1.2.0

If your organization or workspace enables a minimum skill review score policy, every skill in the plugin version must meet that score. Tessl does not average scores across the skills. For example, with a minimum score of 80, scores of 91 and 78 block the version, while scores of 91 and 85 pass this check. A score equal to the minimum passes.

The version must also pass every other publication check that applies to it. A version is unavailable while blocked and cannot be overwritten. Use tessl plugin info to check its publication status and the reported reason. For a score below the threshold, open the exact version in the Tessl Registry, select Quality, and use the per-skill findings to improve the failing skill. Then bump the version and publish the higher version.

If the publication or moderation status is pending and the version is unavailable, wait and check the same version again. An available version can still have quality or security reviews running in the background; those reviews do not delay its use.

Skill reviews are free, so a lack of credits does not stop a quality review from running. If a review completed without a score, contact Tessl support before publishing a higher version. This outcome does not mean that the skill itself needs improvement. For other system errors, contact Tessl support.

Versions blocked by policy are not available for distribution, including Claude marketplace sync. The policy provides a publish-time quality gate without requiring a CI step.

Install it

Once published, you or your workspace can install it in any project:

tessl install engteam/api-conventions
tessl install engteam/api-conventions@1.2.0

To let teammates install a private plugin, add them to the workspace with tessl workspace add-member. See Workspaces.

Ship an update

  1. Make your changes.
  2. Bump version in .tessl-plugin/plugin.json following semantic versioning: patch for fixes, minor for backward-compatible additions, major for breaking changes.
  3. Validate with tessl plugin lint.
  4. Publish again.
tessl plugin publish ./api-conventions --workspace engteam

Anyone who installed it updates by running tessl install engteam/api-conventions again, which fetches the latest version.

Make it public

Public means anyone can discover and install it. It is irreversible, so it needs approval first:

  1. Open your plugin or skill in the Tessl Registry and sign in.
  2. Select Actions then Make Public, and confirm the request.

Once approved, set the visibility and publish again:

  • A plugin takes its visibility from the private field in .tessl-plugin/plugin.json. Set "private": false and publish.
  • A skill can be published public directly with --public:
tessl skill publish ./my-skill --workspace engteam --public

See Sharing with your team and publicly for more.

Remove or deprecate

Published something you should not have, or no longer want it installed? There is no hard delete, but two options cover it. Both use tessl plugin whether you published a skill or a plugin.

To drop one skill from a plugin that contains others, delete the skill file and publish a new version with tessl plugin publish. The old version remains on the registry; the new version simply omits the skill.

  • Unpublish removes a version as if it was never published. Once a public plugin has 500 or more downloads, you can only unpublish versions published in the last 48 hours:
tessl plugin unpublish --plugin engteam/api-conventions@0.1.0
  • Archive hides it from search but keeps it working for anyone who already references it, so existing installs do not break:
tessl plugin archive --plugin engteam/api-conventions --reason "superseded"

To simply stop new people finding it, you can also make it private again: set "private": true in the manifest and republish, or change visibility from the registry UI.

Next