Promote or claim a skill you have created
Have you authored a skill in GitHub and want to promote it using Tessl? Tessl allows you to take a skill from a local repository or GitHub repository, and generate the tile.json, which is essential for Tessl Tiles and Skills. Once imported, you will publish the tile to make it available, publicly or privately, to your teams. The following section discusses organization of your skills and how to publish them. Additionally if you have authored a Tile on GitHub that appears in Tessl, there is a section on claiming that skill in Tessl.
Prerequisites
Mapping and importing your skills into Tessl tiles
If you've authored a number of skills and documents to help your agents, you can logically group the related files together and create individual skill tiles in Tessl. For example:
If you're developing a "data migration" skill, place all the files related to that skill and documentation in a single folder or repository. This would be a single tile.

Similarly if you've built a skill for "building a front end", that might contain best practices and design skills you would group them together into its own tile, create the tile.json,by running the import command, then lint, review, eval and publish the skill to your workplace.

Anti-patterns
To avoid performance issues and confusion of your agents, avoid throwing in the kitchen sink! Make your skill purpose built, providing the information for specific tasks.

Clone the Repository
Clone your repository locally.
Setup GitHub action
The following steps introduce the GitHub action to your repository. This action both publishes the plugin, and prevents the Tessl workspace from having a duplicate when Tessl indexes popular skills on GitHub. See Tessl's GitHub action for the additional options and information, such as enabling quality gates or directory changes.
Create
.github/workflows/publish-tile.ymlin your root folder of your skill, placing the following content within it:Log into Tessl on web UI, then navigate to https://tessl.io/account/api-keys. Create a new API key. Copy the value as it will only be shown once.

In GitHub, navigate to your repo Settings, select Secrets and variables , under actions, find New Repository Secret. Provide the name:
TESSL_API_TOKENand the Tessl API key you procured in the earlier step.Commit and push these changes into your Git repo.
Create a tile.json
Create a tile.json (metadata describing it) by running the following command, with your workspace and folder location values:

You can create an eval file in
/evalor request one through the web interface. More on this coming soon!
Improve your skill with Lint, Review, and Evaluate your Skill
Review your Skill against best practices
Before publishing, validate your skill structure and contents:
This command checks:
SKILL.mdformat and structureRequired frontmatter fields (name, description)
Conformance to the Agent Skills specification
Markdown validity
To optimize your skill, run the following:
Fix any errors before proceeding.
Evaluate quality using Scenarios
Once you've built your skill the final step before publishing is to create scenarios your skill can be evaluated against. The following document illustrates how you would accomplish this:
Approaches to publishing
There are two approaches to publishing
1) Use the GitHub action to publish for a skill you want to claim, or for automation purposes. You set this up in the previous step: Setup the GitHub Action, however the CLI instructions are provided below for completeness.
2) Use the CLI to publish it to the Tessl platform (usually for a new skill you just created, not indexed by Tessl registry)
Cli Publishing (something new to your workspace, not indexed by Tessl)
The following illustrates how to use the CLI to publish

Publishing a Tile/Skill that you are claiming
For this scenario, Tessl indexed a skill that you found and you created a skill in your workspace that you will follow the claim process below. Going forward, as you make changes to the tile, you will want your tile to be the search result, and not reindexed under the Tessl workspace. You'll also want it to reside in your workspace that you control. You've achieved this by following the steps above for the GitHub action to publish , which will manage both the publishing and ensuring it's not reindexed.
Claim a Tessl Skill
Found a skill in Tessl that is created/indexed from your Skill/GitHub repository of skills? You'll want to claim ownership and disable indexing by Tessl. To do this, you will:
Recreate the skill in your workspace by importing it locally, update the workspace in
tile.json.Use the GitHub action to publish , which will manage the Skill and ensure changes to the repo are reflected in your Tessl workspace and not reindexed by Tessl.
Note that a
tile.jsonmust be placed in the directory in the git repository.
If you accidentally use the CLI to publish a skill to your workspace, and the skill was already indexed by Tessl in the Tessl workspace, you would find two versions, in two different workspaces, when searching for that skill. You can contact Tessl support to claim your tile and address the duplicate. Be sure to set up the GitHub action as part of this.
Last updated

