> For the complete documentation index, see [llms.txt](https://docs.tessl.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tessl.io/support/faqs.md).

# FAQs

The following lists a set of questions that we have been asked about Tessl in the past. If you have a different question which isn’t answered here, talk to the community on the [Discord Server](https://discord.com/channels/1233374481364418570/1417176126207426760).

## Getting Started

### How can I install a skill with Tessl?

You can install skills using the Tessl CLI. Search for available skills with `tessl search <skill-name>` and install them with `tessl install <skill-name>`. Tessl automatically evaluates skills to ensure they improve agent behavior.

For detailed instructions, see the [Quick start guide](/introduction-to-tessl/quickstart-skills-docs-rules.md).

## Core Concepts

### What is a Plugin?

Plugins are Tessl packages, which are bundles of reusable context that capture knowledge you want to use across your team and projects. Common plugin content includes:

* Agent skills
* Usage documentation for libraries, APIs, tools, etc.
* Common, repeatable workflows
* Styleguides
* Policies
* ...

### What is the difference between a plugin and a skill?

A plugin is a bundle of agent context. A plugin is a container for context - it's what you install and manage via the package manager.

A skill is one type of context that can be included inside a Tessl package (along with docs and rules).

A helpful analogy is:

* Tessl package/plugin = the npm package
* Skills, rules = different types of files inside that package

Just like npm packages, plugins are versioned and can be updated safely as libraries and dependencies evolve.

For detailed definitions, see our [Glossary](/reference/glossary.md).

### What is a Tessl project?

A Tessl project is the stable home for Tessl in a Git repository.

It identifies that repository and acts as the anchor for the eval runs and other repository-connected data attached to it.

See [Projects overview](/projects/overview.md).

### What is the difference between a repository and a Tessl project?

A repository is your Git repo.

A Tessl project is the stable home for Tessl in that repository.

## Platform

### What agents does Tessl support?

Skills are agent and model-agnostic, allowing teams to maintain consistent behavior across tools without locking into a single ecosystem.

Tessl installs skills to the appropriate agent-specific directory:

* **Claude Code**: `.claude/skills/`
* **Cursor**: `.cursor/skills/`
* **Codex**: `.codex/skills/`
* **Gemini**: `.gemini/skills/`
* **Copilot CLI**: `.copilot/skills/`
* **Copilot in VSCode**: `.copilot-vscode/skills/`

Docs: full support for Claude Code, Cursor, Gemini, Codex, Copilot CLI, and Copilot in VSCode.

See the [Supported platforms](/support/supported-platforms.md#agents) reference for the most up-to-date list of supported agents.

### How does Tessl compare to other marketplaces like skills.sh?

[skills.sh](https://skills.sh) is a directory and an easy way to browse and copy individual skills. Tessl is a fully fledged package manager and registry for agent context: you install, version, and update skills as dependencies rather than duplicating them to your codebase.

Comparing the two:

* **skills.sh** – Browse and copy skills from a catalog; no built-in versioning or dependency management. You manually keep skills in sync.
* **Tessl** – Install skills with `tessl install <skill-name>`; skills are versioned, tracked in a manifest, and updates are controlled and repeatable across your team.

Tessl also adds:

* **Evaluation** – Measure whether skills are structured well and if they improve agent behavior
* **Lifecycle managemenet** – Ensure skills stay correct and up to date as systems change

So Tessl treats skills as software with a full lifecycle (build, evaluate, distribute, optimize), which helps teams move from ad‑hoc agent usage to long-lived, production systems where agent behavior can be inspected, measured, and reasoned about.

## Evaluations

### Why do I need a Tessl project to run an eval?

Evals need a Tessl project so Tessl knows which repository the eval belongs to.

Without that link, the run is just a one-off local action. With a Tessl project, Tessl can keep the run attached to the right repository, find it later, and compare it with future runs.

See [Projects for evals](/projects/evals.md).

### How does Tessl evaluate skills?

Tessl evaluates skills using both task evaluations and conformance reviews:

**Task evaluation:** Measure whether agents can successfully complete real-world coding tasks when using the skill.

* Creates a representative set of coding tasks that require using the skill
* Runs each task with the agent both with and without the skill installed
* Scores each task using task-specific success criteria
* Compares baseline performance against performance with the skill over all tasks
* Reports improvement as a multiplier (e.g., 2× improvement)

**Conformance review:** Assess whether the skill conforms to the Agent Skills specification created by Anthropic.

* Validates that the skill conforms to the official specification at [agentskills.io/specification](https://agentskills.io/specification)
* Checks proper file structure and formatting
* Verifies required frontmatter fields (name, description)
* Ensures the skill follows best practices defined in the specification

## Publishing & Sharing

### How can I publish a skill?

To publish a skill:

* Create an account and workspace on Tessl
* Define visibility (public or private) at the Tessl package level
* Use the Tessl CLI to publish:
  * `tessl skill publish` - If you have a standalone `SKILL.md` file (skill-first workflow)
  * `tessl plugin publish` - If you've created a plugin structure with `.tessl-plugin/plugin.json` that contains a skill (plugin-first workflow)

Published skills are evaluated and versioned, so users can see quality metrics and choose versions that match their dependencies. See [Creating skills](/create/creating-skills.md) for a complete tutorial.

### Can I share these with my team?

Yes! The Tessl Registry has workspaces which let you share Tessl packages for your own libraries with your team members. Skills and context can be kept private to your workspace or published publicly.

This allows teams to onboard agents the same way they onboard developers: with shared assumptions, behavior, and clear expectations about how internal systems should be used.

## Advanced

### Does Tessl support monorepos?

Yes! Tessl supports monorepo workflows. Run `tessl init` at the monorepo root to create `tessl.json` and configure your coding agent. From there, use `tessl search` to find plugins and `tessl install` to add them. You can run `tessl install` from any subfolder to add plugins relevant to that part of the repo — all installed plugins are tracked in the single `tessl.json` at the root.

**Example:**

```sh
# Initialize Tessl at the monorepo root
tessl init

# Search for and install plugins relevant to a subfolder
cd backend
tessl search fastapi
tessl install tessl/pypi-fastapi
```

## Support & Help

### How can I check if Tessl services are experiencing issues?

Visit the [Tessl Status Page](https://tesslstatus.io/) to check the current status of all Tessl services, view any ongoing incidents, and see historical uptime data.

For other support options, see [Giving feedback](/support/giving-feedback.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tessl.io/support/faqs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
