CLI commands
Overview of Tessl's CLI commands for managing tiles, workspaces, and authentication.
The Tessl CLI provides commands for managing tiles, workspaces, authentication, and project configuration. This page provides a comprehensive reference for all available commands.
Getting started
tessl help
To see all available commands, run:
tessl --helpTo get detailed information about a specific command or command group, use the --help flag:
tessl <command> --help
tessl <command-group> <subcommand> --helpAuthentication
tessl login
Authenticate with Tessl using the WorkOS device flow.
Usage
tessl loginAlternative
tessl logout
Sign out and clear authentication credentials.
Usage
Alternative
tessl whoami
Show current authenticated user information.
Usage
Alternative
tessl auth token
Generate a new Tessl API key for programmatic access.
Usage
Flags
--expiry-date(string, optional): Expiration date for the API key in YYYY-MM-DD format (e.g., 2025-10-05)
Examples
Setup and initialization
tessl init
Authenticate and sync dependencies, optionally configure MCP client integration with coding agents.
Usage
Flags
--project-dependencies(string, optional): Configure project dependencies mode. Options:install(default),skip,ask--agent(string, optional, repeatable): Configure MCP for coding agent. Supported values:cursor,claude-code,gemini,codex. Can specify multiple agents. See Custom Agents for information on configuring additional agents.
Notes
Configures MCP server settings for AI coding agents
Automatically syncs project dependencies when configured
Important: Open source dependencies must be installed in your project (via
npm install,pip install, etc.) before runningtessl initso that Tessl can detect them and install the relevant tiles
Examples
Project dependencies
tessl install
Install tiles into your project. Tiles are versioned bundles of reusable, agent-agnostic context that make coding agents more effective. They can contain skills, documentation, and rules.
Alias: tessl i
Usage
Arguments
tile(string, required): Can be:Registry tile:
workspace/tile[@version](version optional, defaults to latest)GitHub repository:
Full URL:
https://github.com/owner/repoShorthand:
github:owner/repo(e.g.,github:softaworks/agent-toolkit)
File path:
file:<path>to install from local directory
Flags
--project-dependencies(boolean, optional): Scan and sync project dependencies with registry tiles. Dependencies should be installed locally via package manager prior to using this. When used in a monorepo, scans dependencies from the current working directory.--yes(boolean, optional): Automatically accept all installations (use with --project-dependencies)--skill(string, repeatable, optional): ** Specify which skill(s) to install by name (e.g.,pdf,pptx). Used when a repository contains multiple skills. If omitted, you'll be prompted interactively to select from available skills. Can be specified multiple times to install multiple skills from the same repository.
Notes
Tiles are installed to
.tessl/tiles/<workspace>/<tile>/in your projectYour project's
tessl.jsonis automatically updated with the tile referenceIf a tile is already installed and up-to-date, it will be skipped
GitHub URL formats:
https://github.com/owner/repo,github:owner/repo, or with branch/path:https://github.com/owner/repo/tree/main/skills/pdfFile system installation: Use
file:<path>to install from a local directory (tile.json expected in the path)Monorepo support: When using
--project-dependenciesin a monorepo, the command scans dependencies from your current working directory. This allows you to initialize Tessl at the monorepo root and then install project-specific dependencies from subfolders.
Examples
tessl search
Search for tiles in the Tessl registry by name, PURL, or HTTP URL.
Usage
Arguments
query(string, optional): Search query. If omitted, you'll be prompted interactively.
Examples
tessl uninstall
Uninstall tiles from your project.
Usage
Arguments
workspace/tile(string, required): Full tile name in the formatworkspace/tile
Notes
Removes the tile from
tessl.jsonand deletes files from.tessl/tiles/Does not require authentication (local operation only)
Examples
tessl list
List all installed tiles in your project.
Usage
Flags
--json/--no-json(boolean, optional): Output tiles as JSON instead of human-readable format
Notes
Lists all tiles installed in your project based on
tessl.jsonShows tile names in the format
workspace/tilewith their versionsDoes not require authentication (local operation only)
Examples
Skill management
tessl skill new
Create a new skill with an interactive wizard or using flags.
Usage
Flags
--name(string, optional): Name of the skill--description(string, optional): Description of the skill--workspace(string, optional): Workspace to create the skill in--path(string, optional): Local path where the skill directory will be created--install(boolean, optional): Install the skill locally after creation--public(boolean, optional): Make the skill public (default is private)
Notes
If flags are omitted, an interactive wizard will guide you through skill creation
The skill will be created as a directory with the proper Agent Skills specification structure
Use
--installto immediately add the skill to your local agent configuration
Examples
tessl skill import
Import an existing skill from a local path or GitHub repository.
Usage
Flags
--workspace(string, optional): Workspace to import the skill into--public(boolean, optional): Make the imported skill public (default is private)--force(boolean, optional): Force import even if validation warnings exist
Arguments
path(string, optional): Path to the skill directory or GitHub repository URL. Defaults to current directory if omitted.
Notes
Validates the skill structure against the Agent Skills specification
Can import from local directories or GitHub repositories
Use
--forceto bypass non-critical validation warnings
Examples
tessl skill lint
Validate a skill's structure and contents against the Agent Skills specification.
Usage
Arguments
source(string, optional): Path to skill folder which contains tile.json file. Defaults to current directory if omitted.
Notes
Checks for required files and proper structure
Validates frontmatter fields (name, description, etc.)
Verifies conformance to the Agent Skills specification at agentskills.io/specification
Returns validation errors and warnings
Examples
tessl skill publish
Publish a skill to the Tessl Registry.
Usage
Flags
--workspace(string, optional): Workspace to publish the skill to--public(boolean, optional): Make the skill public (default is private)--force(boolean, optional): Force publish even if validation warnings exist--skip-evals(boolean, optional): Skip publishing eval scenarios from evals/ directory
Arguments
path(string, optional): Path to the skill directory to publish. Defaults to current directory if omitted.
Notes
Skills are automatically linted before publishing
Published skills are versioned based on the version in the skill manifest
Eval scenarios from the
evals/directory are published by default; use--skip-evalsto exclude themAutomatic evaluation: When published, skills are automatically evaluated and review scores are calculated (see Evaluating skills)
Examples
tessl skill review
Review a skill's conformance to the Agent Skills specification.
Usage
Flags
--skill(string, optional): Specify which skill to review by name when the path contains multiple skills
Arguments
path-or-url(string, optional): Path to the skill directory or URL to review. Defaults to current directory if omitted.
Notes
Performs a comprehensive conformance review against the Agent Skills specification
Validates skill structure, formatting, and best practices
Provides detailed feedback on how to improve the skill
Similar to lint but with more detailed analysis and recommendations
Examples
tessl skill search
Search for skills and tiles with skills in the Tessl registry.
Usage
Arguments
query(string, optional): Search query for skills. If omitted, you'll be prompted interactively.
Notes
Searches specifically for skills and tiles containing skills
Use
tessl searchfor general tile search (docs, rules, skills)Use
tessl skill searchto focus specifically on skills
Examples
Tile management
tessl tile new
Create a new tile with an interactive wizard.
Usage
Flags
--name(string, optional): Tile name in formatworkspace/tile-name--summary(string, optional): Brief description of the tile--path(string, optional): Directory path where tile will be created--docs/--no-docs(boolean, optional): Include documentation--rules(string, repeatable, optional): Include rule by name (can be specified multiple times)--workspace(string, optional): Workspace for the tile--skill/--no-skill(boolean, optional): Include a skill in the tile--skill-name(string, optional): Skill name (implies--skill)--skill-description(string, optional): Skill description (required with--skillor--skill-name)--describes(string, optional): PURL of package this tile documents--install/--no-install(boolean, optional): Automatically install in current project--public/--no-public(boolean, optional): Make tile public (default: private)
Notes
Creates a new tile directory with a basic
tile.jsontemplateIf run without flags, launches an interactive wizard to guide you through tile creation
Use
--skillor--skill-nameto create a tile with a skill component
Examples
tessl tile lint
Validate tile structure and contents
Usage
Arguments
source(string, optional): Path to the tile directory to lint. Defaults to current directory if omitted.
tessl tile pack
Package a tile into a .tgz file
Usage
Arguments
source(string, optional): Path to the tile directory to pack. Defaults to current directory if omitted.output(string, optional): Path for the .tgz file that is generated. If omitted, uses the tile name and version to create a file in your current directory.
tessl tile publish
Publish tiles to the Tessl registry.
Usage
Flags
--skip-evals/--no-skip-evals(boolean, optional): Skip publishing eval scenarios from evals/ directory
Arguments
path(string, optional): Path to the tile directory to publish. Defaults to current directory if omitted.
Examples
Not sure what your published tile's URL will look like? See Workspaces to learn how workspace and tile names map to Registry URLs.
tessl tile unpublish
Unpublish tiles from the registry.
Usage
Flags
--tile(string, required): Tile to unpublish in the formatworkspace/tile@version
Notes
Only available within 2 hours of publishing
Examples
tessl tile archive
Archive tiles in the registry.
Usage
Flags
--tile(string, required): Tile to archive in the formatworkspace/tile@version--reason(string, required): Reason for archiving the tile
Notes
Prevents new installations while preserving existing installations
Examples
Workspace management
Workspaces enable you to create private collections of tiles that are restricted to yourself or your organization. You can control member access and permissions. To learn more, see Distributing via registry.
tessl workspace create
Create a new workspace.
Usage
Arguments
name(string, optional): Name for the workspace. The name must be lowercase. If omitted, you'll be prompted.
Examples
tessl workspace list
List all workspaces that you are a member of.
Usage
tessl workspace delete
Delete an existing workspace.
Usage
Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Examples
tessl workspace add-member
Add a user to a workspace with specified permissions.
Usage
Flags
--workspace(string, optional): The name or ID of the workspace--user(string, optional): The username or ID of the user to add--role(string, optional): The role of the user. Options:member*publishermanager*owner
See Roles for more information
Examples
tessl workspace remove-member
Remove a user from a workspace.
Usage
Flags
--workspace(string, optional): The name or ID of the workspace--user(string, optional): The username or ID of the user to remove
Examples
tessl workspace list-members
List all members of a workspace.
Usage
Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Examples
tessl workspace archive
Archive a workspace. An archived workspace won't be available to publish to or read from, but can be unarchived later.
Usage
Flags
--reason(string, required): Reason for archiving the workspace
Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Notes
Archiving is a safer alternative to deleting, as archived workspaces can be restored
Use
tessl workspace unarchiveto restore an archived workspace
Examples
tessl workspace unarchive
Unarchive an archived workspace, making it active again.
Usage
Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Examples
Configuration management
tessl config get
Get a configuration value or show all configuration.
Usage
Arguments
key(string, optional): Configuration key to get. If omitted, shows all configuration.
Examples
tessl config set
Set a configuration value.
Usage
Arguments
key(string, required): Configuration key to setvalue(string, required): Value to set
Examples
tessl config list
List all configuration values.
Usage
Arguments
key(string, optional): Configuration key to list. If omitted, lists all configuration.
Notes
Similar to
tessl config getbut specifically for listing configuration values
Examples
tessl config add
Add one or more values to a configuration array.
Usage
Arguments
key(string, required): Configuration key for the arrayvalue(string, required, repeatable): One or more values to add to the array
Notes
Use this command to add values to array-type configuration settings
Can specify multiple values in a single command
Examples
tessl config remove
Remove a value from a configuration array.
Usage
Arguments
key(string, required): Configuration key for the arrayvalue(string, required): Value to remove from the array
Notes
Use this command to remove values from array-type configuration settings
Only removes the specified value, not the entire configuration key
Examples
Diagnostics and utilities
tessl doctor
Run authentication and manifest diagnostics to troubleshoot issues.
Usage
Flags
--json(boolean, optional): Output diagnostics as JSON for programmatic processing
Examples
tessl feedback
Send feedback to the Tessl team.
Usage
Arguments
message(string, optional): Feedback message to send. If omitted, you'll be prompted interactively.
Examples
CLI self-management
tessl cli update
Update the CLI to the latest or specified version.
Usage
Note: --target can be shortened to -t
Flags
--targetor-t(string, optional): Target version to update to (e.g., v1.0.0)--dry-run(boolean, optional): Show what would be run without executing the update
Examples
Model Context Protocol (MCP)
tessl mcp start
Start the Tessl MCP (Model Context Protocol) server for integration with AI coding agents.
Usage
Last updated

