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 auth logintessl logout
Sign out and clear authentication credentials.
Usage
tessl logoutAlternative
tessl auth logouttessl whoami
Show current authenticated user information.
Usage
tessl whoamiAlternative
tessl auth whoamitessl auth token
Generate a new Tessl API key for programmatic access.
Usage
tessl auth token [--expiry-date <date>]Flags
--expiry-date(string, optional): Expiration date for the API key in YYYY-MM-DD format (e.g., 2025-10-05)
Examples
# Generate an API key with default expiration
tessl auth token
# Generate an API key that expires on a specific date
tessl auth token --expiry-date 2025-12-31Setup and Initialization
tessl init
Authenticate and sync dependencies, optionally configure MCP client integration with coding agents.
Usage
tessl init [--agent <agent-name>] [--project-dependencies <mode>]Flags
--agent(string, optional): Configure coding agent integration. Supported values:cursor,claude-code. Can specify multiple agents.See Custom Agents for information on configuring additional agents.
--project-dependencies(string, optional): Configure project dependencies mode. Options:install(default),skip,ask
Notes
Configures MCP server settings for AI coding agents
Automatically syncs project dependencies when configured
Examples
# Basic initialization with default settings
tessl init
# Initialize and configure Cursor integration
tessl init --agent cursor
# Initialize with multiple agents
tessl init --agent cursor --agent claude-code
# Initialize but skip automatic dependency sync
tessl init --project-dependencies skipProject Dependencies
tessl install
Install tiles into your project. Tiles are usage specifications that help AI understand how to use libraries and frameworks.
Usage
tessl install <tile> [<tile>...] [--project-dependencies] [--yes]Arguments
tile(string, required): One or more tile names in the formatworkspace/tile[@version]. If version is omitted, the latest version will be installed.
Flags
--project-dependencies(boolean, optional): Scan and sync project dependencies with registry tiles--yes(boolean, optional): Automatically accept all installations (use with --project-dependencies)
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
Examples
# Install a specific tile
tessl install tessl/[email protected]
# Install multiple tiles
tessl install tessl/svelte tessl/react
# Install tiles for all project dependencies
tessl install --project-dependencies
# Install all project dependencies without prompts
tessl install --project-dependencies --yestessl search
Search for tiles in the Tessl registry by name, PURL, or HTTP URL.
Usage
tessl search [query]Arguments
query(string, optional): Search query. If omitted, you'll be prompted interactively.
Examples
# Search for tiles matching "svelte"
tessl search svelte
# Interactive search
tessl searchtessl uninstall
Uninstall tiles from your project.
Usage
tessl uninstall <name>Arguments
name(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
# Uninstall a tile
tessl uninstall tessl/svelteTile Management
tessl tile lint
Validate tile structure and contents
Usage
tessl tile lint <source>Arguments
source(string): Path to the tile directory to lint.
tessl tile pack
Package a tile into a .tgz file
Usage
tessl tile pack [--output path] <source>Arguments
source(string): Path to the tile directory to publish.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 directrory.
tessl tile publish
Publish tiles to the Tessl registry.
Usage
tessl tile publish [path]Arguments
path(string): Path to the tile directory to publish.
Examples
# Publish a tile from a specific directory
tessl tile publish path/to/my/tiletessl tile unpublish
Unpublish tiles from the registry.
Usage
tessl tile unpublish [--tile <tile-name>]Flags
--tile(string): Tile to unpublish in the formatworkspace/tile@version
Notes
Only available within 2 hours of publishing
Examples
# Unpublish a specific tile version
tessl tile unpublish --tile myworkspace/[email protected]tessl tile archive
Archive tiles in the registry.
Usage
tessl tile archive [--tile <tile-name>] [--reason <reason>]Flags
--tile(string, optional): Tile to archive in the formatworkspace/tile@version--reason(string, optional): Reason for archiving the tile
Notes
Prevents new installations while preserving existing installations
Examples
# Archive a tile with a reason
tessl tile archive --tile myworkspace/[email protected] --reason "Deprecated in favor of v2"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 Publish private Tiles for your libraries.
tessl workspace create
Create a new workspace.
Usage
tessl workspace create [name]Arguments
name(string, optional): Name for the workspace. The name must be lowercase. If omitted, you'll be prompted.
Examples
# Create a workspace
tessl workspace create myworkspace
# Interactive creation
tessl workspace createtessl workspace list
List all workspaces that you are a member of.
Usage
tessl workspace listtessl workspace delete
Delete an existing workspace.
Usage
tessl workspace delete [name]Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Examples
# Delete a workspace
tessl workspace delete myworkspace
# Interactive deletion
tessl workspace deletetessl workspace add-member
Add a member to a workspace with specified permissions.
Usage
tessl workspace add-member [--workspace <name>] [--user <user>] [--role <role>]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:viewer- Can install tilesmember- Can install and publish tilesowner- Can install, publish, archive, and unpublish tiles
Examples
# Add a member with viewer role
tessl workspace add-member --workspace myworkspace --user [email protected] --role viewer
# Add a member with owner role
tessl workspace add-member --workspace myworkspace --user [email protected] --role owner
# Interactive mode (prompts for all fields)
tessl workspace add-membertessl workspace remove-member
Remove a user from a workspace.
Usage
tessl workspace remove-member [--workspace <name>] [--user <user>]Flags
--workspace(string, optional): The name or ID of the workspace--user(string, optional): The username or ID of the user to remove
Examples
# Remove a member
tessl workspace remove-member --workspace myworkspace --user [email protected]
# Interactive mode
tessl workspace remove-membertessl workspace list-members
List all members of a workspace.
Usage
tessl workspace list-members [name]Arguments
name(string, optional): The name or ID of the workspace. If omitted, you'll be prompted.
Examples
# List members of a workspace
tessl workspace list-members myworkspace
# Interactive mode
tessl workspace list-membersConfiguration Management
tessl config get
Get a configuration value or show all configuration.
Usage
tessl config get [key]Arguments
key(string, optional): Configuration key to get. If omitted, shows all configuration.
Examples
# Show all configuration
tessl config get
# Get a specific configuration value
tessl config get analytics.enabledtessl config set
Set a configuration value.
Usage
tessl config set <key> <value>Arguments
key(string, required): Configuration key to setvalue(string, required): Value to set
Examples
# Set a configuration value
tessl config set analytics.enabled falseDiagnostics and Utilities
tessl doctor
Run authentication and manifest diagnostics to troubleshoot issues.
Usage
tessl doctor [--json]Flags
--json(boolean, optional): Output diagnostics as JSON for programmatic processing
Examples
# Run diagnostics with human-readable output
tessl doctor
# Output diagnostics as JSON
tessl doctor --jsontessl feedback
Send feedback to the Tessl team.
Usage
tessl feedback [message]Arguments
message(string, optional): Feedback message to send. If omitted, you'll be prompted interactively.
Examples
# Send feedback directly
tessl feedback "Great tool! Would love to see Python support."
# Interactive feedback
tessl feedbackCLI Self-Management
tessl cli update
Update the CLI to the latest or specified version.
Usage
tessl cli update [--target <version>] [--dry-run]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
# Update to the latest version
tessl cli update
# Update to a specific version
tessl cli update --target v1.0.0
# Preview update without executing
tessl cli update --dry-runModel Context Protocol (MCP)
tessl mcp start
Start the Tessl MCP (Model Context Protocol) server for integration with AI coding agents.
Usage
tessl mcp startLast updated

